Debugger: Use StringWidth()+DefaultLabelSpacing() to determine column widths.

Much less cut off text in the default layout.
This commit is contained in:
Augustin Cavalier
2022-09-28 17:13:07 -04:00
parent 2bfacb1a20
commit 00c4575238
4 changed files with 19 additions and 13 deletions
@@ -392,13 +392,12 @@ RegistersView::_Init()
AddChild(fRegisterTable->ToView());
// columns
const float padding = be_control_look->DefaultLabelSpacing() * 2;
fRegisterTable->AddColumn(new StringTableColumn(0, "Register",
be_plain_font->StringWidth("Register")
+ be_control_look->DefaultLabelSpacing() * 2 + 5, 40, 1000,
be_plain_font->StringWidth("Register") + padding, 40, 1000,
B_TRUNCATE_END, B_ALIGN_LEFT));
fRegisterTable->AddColumn(new RegisterValueColumn(1, "Value",
be_plain_font->StringWidth("0x00000000")
+ be_control_look->DefaultLabelSpacing() * 2 + 5, 40, 1000,
be_fixed_font->StringWidth("0xffffffff00000000") + padding, 40, 1000,
B_TRUNCATE_END, B_ALIGN_RIGHT));
fRegisterTableModel = new RegisterTableModel(fArchitecture);
@@ -437,5 +436,3 @@ RegistersView::_AddFormatItem(BMenu* menu, int32 format)
return B_OK;
}
@@ -235,8 +235,8 @@ StackTraceView::_Init()
AddChild(fFramesTable->ToView());
fFramesTable->SetSortingEnabled(false);
float addressWidth = be_plain_font->StringWidth("0x00000000")
+ be_control_look->DefaultLabelSpacing() * 2 + 5;
float addressWidth = be_fixed_font->StringWidth("0xffffffff00000000")
+ be_control_look->DefaultLabelSpacing();
// columns
fFramesTable->AddColumn(new TargetAddressTableColumn(0, "Frame",
@@ -13,6 +13,7 @@
#include <Message.h>
#include <AutoLocker.h>
#include <ControlLook.h>
#include <ObjectList.h>
#include <ToolTip.h>
@@ -366,9 +367,12 @@ ThreadListView::_Init()
AddChild(fThreadsTable->ToView());
// columns
fThreadsTable->AddColumn(new Int32TableColumn(0, "ID", 60, 20, 1000,
const float padding = be_control_look->DefaultLabelSpacing() * 2;
fThreadsTable->AddColumn(new Int32TableColumn(0, "ID",
be_plain_font->StringWidth("12345") + padding, 20, 1000,
B_TRUNCATE_MIDDLE, B_ALIGN_RIGHT));
fThreadsTable->AddColumn(new StringTableColumn(1, "State", 80, 40, 1000,
fThreadsTable->AddColumn(new StringTableColumn(1, "State",
be_plain_font->StringWidth("Debugged") + padding, 40, 1000,
B_TRUNCATE_END, B_ALIGN_LEFT));
fThreadsTable->AddColumn(new StringTableColumn(2, "Name", 200, 40, 1000,
B_TRUNCATE_END, B_ALIGN_LEFT));
@@ -13,6 +13,7 @@
#include <Alert.h>
#include <Clipboard.h>
#include <ControlLook.h>
#include <Looper.h>
#include <PopUpMenu.h>
#include <ToolTip.h>
@@ -2559,11 +2560,15 @@ VariablesView::_Init(ValueNodeManager* manager)
fVariableTable->SetSortingEnabled(false);
// columns
fVariableTable->AddColumn(new StringTableColumn(0, "Variable", 80, 40, 1000,
const float padding = be_control_look->DefaultLabelSpacing();
fVariableTable->AddColumn(new StringTableColumn(0, "Variable",
be_fixed_font->StringWidth("VariableName") + padding, 40, 1000,
B_TRUNCATE_END, B_ALIGN_LEFT));
fVariableTable->AddColumn(new VariableValueColumn(1, "Value", 80, 40, 1000,
fVariableTable->AddColumn(new VariableValueColumn(1, "Value",
be_fixed_font->StringWidth("0xffffffff00000000") + padding, 40, 1000,
B_TRUNCATE_END, B_ALIGN_RIGHT));
fVariableTable->AddColumn(new StringTableColumn(2, "Type", 80, 40, 1000,
fVariableTable->AddColumn(new StringTableColumn(2, "Type",
be_fixed_font->StringWidth("std::vector<int32_t>") + padding, 40, 1000,
B_TRUNCATE_END, B_ALIGN_LEFT));
fVariableTableModel = new VariableTableModel(manager);