Tracker Settings: Use BLayoutBuilder template and refactor

... instead of using the less flexable BGroupLayoutBuilder.

* Reduce Group levels used by eliminating the uneeded top
  level group.
* Use font relative spacing units in a few places instead of
  hard coding 20 pixels.
* By using the layout builder template I can use the single
  parameter version of SetInsets().
This commit is contained in:
John Scipione
2013-06-02 21:39:24 -04:00
parent 38a0042248
commit 64c6122863
+27 -35
View File
@@ -45,7 +45,7 @@ All rights reserved.
#include <Button.h> #include <Button.h>
#include <Catalog.h> #include <Catalog.h>
#include <ControlLook.h> #include <ControlLook.h>
#include <GroupLayoutBuilder.h> #include <LayoutBuilder.h>
#include <Locale.h> #include <Locale.h>
#include <MenuField.h> #include <MenuField.h>
#include <ColorControl.h> #include <ColorControl.h>
@@ -193,21 +193,19 @@ DesktopSettingsView::DesktopSettingsView()
const float spacing = be_control_look->DefaultItemSpacing(); const float spacing = be_control_look->DefaultItemSpacing();
BGroupLayoutBuilder(this) BLayoutBuilder::Group<>(this, B_VERTICAL, 0)
.Add(fShowDisksIconRadioButton)
.Add(fMountVolumesOntoDesktopRadioButton)
.AddGroup(B_VERTICAL, 0) .AddGroup(B_VERTICAL, 0)
.Add(fShowDisksIconRadioButton) .Add(fMountSharedVolumesOntoDesktopCheckBox)
.Add(fMountVolumesOntoDesktopRadioButton) .SetInsets(spacing * 2, 0, 0, 0)
.AddGroup(B_VERTICAL, 0)
.Add(fMountSharedVolumesOntoDesktopCheckBox)
.SetInsets(20, 0, 0, 0)
.End() .End()
.AddGlue()
.AddGroup(B_HORIZONTAL)
.Add(fMountButton)
.AddGlue() .AddGlue()
.AddGroup(B_HORIZONTAL)
.Add(fMountButton)
.AddGlue()
.End() .End()
.End() .SetInsets(spacing);
.SetInsets(spacing, spacing, spacing, spacing);
fMountButton->SetTarget(be_app); fMountButton->SetTarget(be_app);
} }
@@ -439,24 +437,22 @@ WindowsSettingsView::WindowsSettingsView()
const float spacing = be_control_look->DefaultItemSpacing(); const float spacing = be_control_look->DefaultItemSpacing();
BGroupLayoutBuilder(this) BLayoutBuilder::Group<>(this, B_VERTICAL, 0)
.AddGroup(B_VERTICAL, 0) .AddGroup(B_VERTICAL, 0)
.AddGroup(B_VERTICAL, 0) .Add(fShowFullPathInTitleBarCheckBox)
.Add(fShowFullPathInTitleBarCheckBox) .Add(fSingleWindowBrowseCheckBox)
.Add(fSingleWindowBrowseCheckBox)
.End() .End()
.AddGroup(B_VERTICAL) .AddGroup(B_VERTICAL)
.Add(fShowNavigatorCheckBox) .Add(fShowNavigatorCheckBox)
.SetInsets(20, 0, 0, 0) .SetInsets(spacing * 2, 0, 0, 0)
.End() .End()
.AddGroup(B_VERTICAL, 0) .AddGroup(B_VERTICAL, 0)
.Add(fOutlineSelectionCheckBox) .Add(fOutlineSelectionCheckBox)
.Add(fSortFolderNamesFirstCheckBox) .Add(fSortFolderNamesFirstCheckBox)
.Add(fTypeAheadFilteringCheckBox) .Add(fTypeAheadFilteringCheckBox)
.End() .End()
.AddGlue() .AddGlue()
.End() .SetInsets(spacing);
.SetInsets(spacing, spacing, spacing, spacing);
} }
@@ -733,27 +729,23 @@ SpaceBarSettingsView::SpaceBarSettingsView()
B_TRANSLATE("Warning space color"), B_TRANSLATE("Warning space color"),
new BMessage(kSpaceBarSwitchColor))); new BMessage(kSpaceBarSwitchColor)));
BBox* box = new BBox("box"); fColorPicker = new BMenuField("menu", NULL, menu);
box->SetLabel(fColorPicker = new BMenuField("menu", NULL, menu));
fColorControl = new BColorControl(BPoint(8, fColorControl = new BColorControl(BPoint(8,
fColorPicker->Bounds().Height() + 8 + kItemExtraSpacing), fColorPicker->Bounds().Height() + 8 + kItemExtraSpacing),
B_CELLS_16x16, 1, "SpaceColorControl", B_CELLS_16x16, 1, "SpaceColorControl",
new BMessage(kSpaceBarColorChanged)); new BMessage(kSpaceBarColorChanged));
fColorControl->SetValue(TrackerSettings().UsedSpaceColor()); fColorControl->SetValue(TrackerSettings().UsedSpaceColor());
BBox* box = new BBox("box");
box->SetLabel(fColorPicker);
box->AddChild(fColorControl); box->AddChild(fColorControl);
const float spacing = be_control_look->DefaultItemSpacing(); BLayoutBuilder::Group<>(this, B_VERTICAL)
BGroupLayout* layout = GroupLayout();
layout->SetOrientation(B_VERTICAL);
layout->SetSpacing(0);
BGroupLayoutBuilder(layout)
.Add(fSpaceBarShowCheckBox) .Add(fSpaceBarShowCheckBox)
.Add(box) .Add(box)
.AddGlue() .AddGlue()
.SetInsets(spacing, spacing, spacing, spacing); .SetInsets(B_USE_DEFAULT_SPACING);
} }