Update layout building code in misc. apps (GCI 2011 task).

Replace the use of old-style BGroupLayoutBuilder and BGridLayoutBuilder with new, templatized BLayoutBuilder::Group<> etc.. in the following apps:

* CharacterMap
* Installer
* Mediaplayer
* Screenshot

This work was done for GCI 2011 by Hannah Boneß. Thanks Hannah!
This commit is contained in:
Hannah Boneß
2011-12-22 13:20:26 -07:00
committed by Alex Wilson
parent 4ad0585ebc
commit 5dcd3cd1f3
5 changed files with 74 additions and 97 deletions
+13 -15
View File
@@ -15,7 +15,7 @@
#include <Catalog.h> #include <Catalog.h>
#include <File.h> #include <File.h>
#include <FindDirectory.h> #include <FindDirectory.h>
#include <GroupLayoutBuilder.h> #include <LayoutBuilder.h>
#include <ListView.h> #include <ListView.h>
#include <Menu.h> #include <Menu.h>
#include <MenuBar.h> #include <MenuBar.h>
@@ -25,7 +25,6 @@
#include <Roster.h> #include <Roster.h>
#include <ScrollView.h> #include <ScrollView.h>
#include <Slider.h> #include <Slider.h>
#include <SplitLayoutBuilder.h>
#include <StringView.h> #include <StringView.h>
#include <TextControl.h> #include <TextControl.h>
#include <UnicodeChar.h> #include <UnicodeChar.h>
@@ -137,9 +136,6 @@ CharacterWindow::CharacterWindow()
} }
// create GUI // create GUI
SetLayout(new BGroupLayout(B_VERTICAL));
BMenuBar* menuBar = new BMenuBar("menu"); BMenuBar* menuBar = new BMenuBar("menu");
fFilterControl = new BTextControl(B_TRANSLATE("Filter:"), NULL, NULL); fFilterControl = new BTextControl(B_TRANSLATE("Filter:"), NULL, NULL);
@@ -205,21 +201,23 @@ CharacterWindow::CharacterWindow()
fCodeView->SetExplicitMaxSize(BSize(B_SIZE_UNLIMITED, fCodeView->SetExplicitMaxSize(BSize(B_SIZE_UNLIMITED,
fCodeView->PreferredSize().Height())); fCodeView->PreferredSize().Height()));
AddChild(BGroupLayoutBuilder(B_VERTICAL) BLayoutBuilder::Group<>(this, B_VERTICAL)
.Add(menuBar) .Add(menuBar)
.Add(BGroupLayoutBuilder(B_HORIZONTAL, 10)//BSplitLayoutBuilder() .AddGroup(B_HORIZONTAL, 10)
.Add(BGroupLayoutBuilder(B_VERTICAL, 10) .SetInsets(10)
.Add(BGroupLayoutBuilder(B_HORIZONTAL, 10) .AddGroup(B_VERTICAL, 10)
.AddGroup(B_HORIZONTAL, 10)
.Add(fFilterControl) .Add(fFilterControl)
.Add(clearButton)) .Add(clearButton)
.Add(unicodeScroller)) .End()
.Add(BGroupLayoutBuilder(B_VERTICAL, 10) .Add(unicodeScroller)
.End()
.AddGroup(B_VERTICAL, 10)
.Add(characterScroller) .Add(characterScroller)
.Add(fFontSizeSlider) .Add(fFontSizeSlider)
.Add(BGroupLayoutBuilder(B_HORIZONTAL, 0) .AddGroup(B_HORIZONTAL, 0)
.Add(fGlyphView) .Add(fGlyphView)
.Add(fCodeView))) .Add(fCodeView);
.SetInsets(10, 10, 10, 10)));
// Add menu // Add menu
+5 -8
View File
@@ -8,7 +8,7 @@
#include <Alert.h> #include <Alert.h>
#include <Button.h> #include <Button.h>
#include <GroupLayoutBuilder.h> #include <LayoutBuilder.h>
#include <Locale.h> #include <Locale.h>
#include <ScrollView.h> #include <ScrollView.h>
#include <TextView.h> #include <TextView.h>
@@ -244,16 +244,13 @@ InstallerApp::ReadyToRun()
B_MODAL_WINDOW, B_NOT_ZOOMABLE | B_NOT_MINIMIZABLE B_MODAL_WINDOW, B_NOT_ZOOMABLE | B_NOT_MINIMIZABLE
| B_AUTO_UPDATE_SIZE_LIMITS); | B_AUTO_UPDATE_SIZE_LIMITS);
fEULAWindow->SetLayout(new BGroupLayout(B_HORIZONTAL)); BLayoutBuilder::Group<>(fEULAWindow, B_VERTICAL, 10)
fEULAWindow->AddChild(BGroupLayoutBuilder(B_VERTICAL, 10) .SetInsets(10)
.Add(scrollView) .Add(scrollView)
.Add(BGroupLayoutBuilder(B_HORIZONTAL, 10) .AddGroup(B_HORIZONTAL, 10)
.AddGlue() .AddGlue()
.Add(cancelButton) .Add(cancelButton)
.Add(continueButton) .Add(continueButton);
)
.SetInsets(10, 10, 10, 10)
);
fEULAWindow->CenterOnScreen(); fEULAWindow->CenterOnScreen();
fEULAWindow->Show(); fEULAWindow->Show();
+8 -13
View File
@@ -19,8 +19,7 @@
#include <ControlLook.h> #include <ControlLook.h>
#include <Directory.h> #include <Directory.h>
#include <FindDirectory.h> #include <FindDirectory.h>
#include <GridLayoutBuilder.h> #include <LayoutBuilder.h>
#include <GroupLayoutBuilder.h>
#include <LayoutUtils.h> #include <LayoutUtils.h>
#include <Locale.h> #include <Locale.h>
#include <MenuBar.h> #include <MenuBar.h>
@@ -248,13 +247,12 @@ InstallerWindow::InstallerWindow()
float spacing = be_control_look->DefaultItemSpacing(); float spacing = be_control_look->DefaultItemSpacing();
SetLayout(new BGroupLayout(B_HORIZONTAL)); BLayoutBuilder::Group<>(this, B_VERTICAL, 0)
AddChild(BGroupLayoutBuilder(B_VERTICAL, 0)
.Add(mainMenu) .Add(mainMenu)
.Add(logoGroup) .Add(logoGroup)
.Add(new BSeparatorView(B_HORIZONTAL, B_PLAIN_BORDER)) .Add(new BSeparatorView(B_HORIZONTAL, B_PLAIN_BORDER))
.Add(BGroupLayoutBuilder(B_VERTICAL, spacing) .AddGroup(B_VERTICAL, spacing)
.Add(BGridLayoutBuilder(0, spacing) .AddGrid(new BGridView(0.0f, spacing))
.Add(fSrcMenuField->CreateLabelLayoutItem(), 0, 0) .Add(fSrcMenuField->CreateLabelLayoutItem(), 0, 0)
.Add(fSrcMenuField->CreateMenuBarLayoutItem(), 1, 0) .Add(fSrcMenuField->CreateMenuBarLayoutItem(), 1, 0)
.Add(fDestMenuField->CreateLabelLayoutItem(), 0, 1) .Add(fDestMenuField->CreateLabelLayoutItem(), 0, 1)
@@ -266,16 +264,13 @@ InstallerWindow::InstallerWindow()
.Add(packagesScrollView, 0, 4, 2) .Add(packagesScrollView, 0, 4, 2)
.Add(fProgressBar, 0, 5, 2) .Add(fProgressBar, 0, 5, 2)
.Add(fSizeView, 0, 6, 2) .Add(fSizeView, 0, 6, 2)
) .End()
.Add(BGroupLayoutBuilder(B_HORIZONTAL, spacing) .AddGroup(B_HORIZONTAL, spacing)
.SetInsets(spacing)
.Add(fLaunchDriveSetupButton) .Add(fLaunchDriveSetupButton)
.AddGlue() .AddGlue()
.Add(fBeginButton) .Add(fBeginButton);
)
.SetInsets(spacing, spacing, spacing, spacing)
)
);
// Make the optional packages and progress bar invisible on start // Make the optional packages and progress bar invisible on start
fPackagesLayoutItem = layout_item_for(packagesScrollView); fPackagesLayoutItem = layout_item_for(packagesScrollView);
@@ -16,8 +16,7 @@
#include <Button.h> #include <Button.h>
#include <Catalog.h> #include <Catalog.h>
#include <CheckBox.h> #include <CheckBox.h>
#include <GridLayoutBuilder.h> #include <LayoutBuilder.h>
#include <GroupLayoutBuilder.h>
#include <Locale.h> #include <Locale.h>
#include <OptionPopUp.h> #include <OptionPopUp.h>
#include <SpaceLayoutItem.h> #include <SpaceLayoutItem.h>
@@ -139,61 +138,56 @@ SettingsWindow::SettingsWindow(BRect frame)
// Build the layout // Build the layout
SetLayout(new BGroupLayout(B_HORIZONTAL)); BLayoutBuilder::Group<>(this, B_VERTICAL, 0)
.AddGroup(settingsLayout)
AddChild(BGroupLayoutBuilder(B_VERTICAL, 0) .SetInsets(5, 5, 15, 5)
.Add(BGroupLayoutBuilder(settingsLayout)
.Add(playModeLabel) .Add(playModeLabel)
.Add(BGroupLayoutBuilder(B_HORIZONTAL, 0) .AddGroup(B_HORIZONTAL, 0)
.Add(BSpaceLayoutItem::CreateHorizontalStrut(10)) .AddStrut(10)
.Add(BGroupLayoutBuilder(B_VERTICAL, 0) .AddGroup(B_VERTICAL, 0)
.Add(fAutostartCB) .Add(fAutostartCB)
.Add(BGridLayoutBuilder(5, 0) .AddGrid(5, 0)
.Add(BSpaceLayoutItem::CreateHorizontalStrut(10), 0, 0) .Add(BSpaceLayoutItem::CreateHorizontalStrut(10), 0, 0)
.Add(fCloseWindowMoviesCB, 1, 0) .Add(fCloseWindowMoviesCB, 1, 0)
.Add(BSpaceLayoutItem::CreateHorizontalStrut(10), 0, 1) .Add(BSpaceLayoutItem::CreateHorizontalStrut(10), 0, 1)
.Add(fCloseWindowSoundsCB, 1, 1) .Add(fCloseWindowSoundsCB, 1, 1)
) .End()
.Add(fLoopMoviesCB) .Add(fLoopMoviesCB)
.Add(fLoopSoundsCB) .Add(fLoopSoundsCB)
) .End()
) .End()
.Add(BSpaceLayoutItem::CreateVerticalStrut(5)) .AddStrut(5)
.Add(viewOptionsLabel) .Add(viewOptionsLabel)
.Add(BGroupLayoutBuilder(B_HORIZONTAL, 0) .AddGroup(B_HORIZONTAL, 0)
.Add(BSpaceLayoutItem::CreateHorizontalStrut(10)) .AddStrut(10)
.Add(BGroupLayoutBuilder(B_VERTICAL, 0) .AddGroup(B_VERTICAL, 0)
.Add(fUseOverlaysCB) .Add(fUseOverlaysCB)
.Add(fScaleBilinearCB) .Add(fScaleBilinearCB)
.Add(fScaleFullscreenControlsCB) .Add(fScaleFullscreenControlsCB)
.Add(fSubtitleSizeOP) .Add(fSubtitleSizeOP)
.Add(fSubtitlePlacementOP) .Add(fSubtitlePlacementOP)
) .End()
) .End()
.Add(BSpaceLayoutItem::CreateVerticalStrut(5)) .AddStrut(5)
.Add(bgMoviesModeLabel) .Add(bgMoviesModeLabel)
.Add(BGroupLayoutBuilder(B_HORIZONTAL, 0) .AddGroup(B_HORIZONTAL, 0)
.Add(BSpaceLayoutItem::CreateHorizontalStrut(10)) .AddStrut(10)
.Add(BGroupLayoutBuilder(B_VERTICAL, 0) .AddGroup(B_VERTICAL, 0)
.Add(fFullVolumeBGMoviesRB) .Add(fFullVolumeBGMoviesRB)
.Add(fHalfVolumeBGMoviesRB) .Add(fHalfVolumeBGMoviesRB)
.Add(fMutedVolumeBGMoviesRB) .Add(fMutedVolumeBGMoviesRB)
) .End()
) .End()
.Add(BSpaceLayoutItem::CreateVerticalStrut(5)) .AddStrut(5)
.End()
.SetInsets(5, 5, 15, 5) .AddGroup(buttonLayout)
) .SetInsets(5)
.Add(BGroupLayoutBuilder(buttonLayout)
.Add(fRevertB) .Add(fRevertB)
.AddGlue() .AddGlue()
.Add(cancelButton) .Add(cancelButton)
.Add(okButton) .Add(okButton);
.SetInsets(5, 5, 5, 5)
)
);
} }
+20 -27
View File
@@ -26,8 +26,7 @@
#include <File.h> #include <File.h>
#include <FilePanel.h> #include <FilePanel.h>
#include <FindDirectory.h> #include <FindDirectory.h>
#include <GridLayoutBuilder.h> #include <LayoutBuilder.h>
#include <GroupLayoutBuilder.h>
#include <Locale.h> #include <Locale.h>
#include <Menu.h> #include <Menu.h>
#include <MenuField.h> #include <MenuField.h>
@@ -195,36 +194,33 @@ ScreenshotWindow::ScreenshotWindow(const Utility& utility, bool silent,
const float kLabelSpacing = be_control_look->DefaultLabelSpacing(); const float kLabelSpacing = be_control_look->DefaultLabelSpacing();
fPreview = new PreviewView(); fPreview = new PreviewView();
BGridLayout* gridLayout = BGridLayoutBuilder(0.0, kSpacing / 2)
.Add(fDelayControl->CreateLabelLayoutItem(), 0, 0)
.Add(fDelayControl->CreateTextViewLayoutItem(), 1, 0)
.Add(BSpaceLayoutItem::CreateHorizontalStrut(kLabelSpacing), 2, 0)
.Add(seconds, 3, 0)
.Add(fNameControl->CreateLabelLayoutItem(), 0, 1)
.Add(fNameControl->CreateTextViewLayoutItem(), 1, 1, 3, 1)
.Add(menuLocation->CreateLabelLayoutItem(), 0, 2)
.Add(menuLocation->CreateMenuBarLayoutItem(), 1, 2, 3, 1)
.Add(menuFormat->CreateLabelLayoutItem(), 0, 3)
.Add(menuFormat->CreateMenuBarLayoutItem(), 1, 3, 3, 1);
gridLayout->SetMinColumnWidth(1,
menuFormat->StringWidth("SomethingLongHere"));
SetLayout(new BGroupLayout(B_HORIZONTAL, 0)); BLayoutBuilder::Group<>(this, B_VERTICAL, 0)
.SetInsets(kSpacing)
AddChild(BGroupLayoutBuilder(B_VERTICAL, 0) .AddGroup(B_HORIZONTAL, kSpacing)
.Add(BGroupLayoutBuilder(B_HORIZONTAL, kSpacing)
.Add(fPreview) .Add(fPreview)
.AddGroup(B_VERTICAL, 0) .AddGroup(B_VERTICAL, 0)
.Add(fActiveWindow) .Add(fActiveWindow)
.Add(fWindowBorder) .Add(fWindowBorder)
.Add(fShowCursor) .Add(fShowCursor)
.AddStrut(kSpacing) .AddStrut(kSpacing)
.Add(gridLayout) .AddGrid(0.0, kSpacing/2)
.Add(fDelayControl->CreateLabelLayoutItem(), 0, 0)
.Add(fDelayControl->CreateTextViewLayoutItem(), 1, 0)
.Add(BSpaceLayoutItem::CreateHorizontalStrut(kLabelSpacing),
2, 0)
.Add(seconds, 3, 0)
.Add(fNameControl->CreateLabelLayoutItem(), 0, 1)
.Add(fNameControl->CreateTextViewLayoutItem(), 1, 1, 3, 1)
.Add(menuLocation->CreateLabelLayoutItem(), 0, 2)
.Add(menuLocation->CreateMenuBarLayoutItem(), 1, 2, 3, 1)
.Add(menuFormat->CreateLabelLayoutItem(), 0, 3)
.Add(menuFormat->CreateMenuBarLayoutItem(), 1, 3, 3, 1)
.End()
.Add(showSettings) .Add(showSettings)
.AddGlue() .AddGlue()
.End()) .End()
.End()
.AddStrut(kSpacing) .AddStrut(kSpacing)
.Add(divider) .Add(divider)
.AddStrut(kSpacing) .AddStrut(kSpacing)
@@ -234,10 +230,7 @@ ScreenshotWindow::ScreenshotWindow(const Utility& utility, bool silent,
.Add(new BButton("", B_TRANSLATE("New screenshot"), .Add(new BButton("", B_TRANSLATE("New screenshot"),
new BMessage(kNewScreenshot))) new BMessage(kNewScreenshot)))
.AddGlue() .AddGlue()
.Add(saveScreenshot) .Add(saveScreenshot);
.End()
.SetInsets(kSpacing, kSpacing, kSpacing, kSpacing)
);
saveScreenshot->MakeDefault(true); saveScreenshot->MakeDefault(true);