Patch by mt (ticket #5149): Applied BGridLayout to BMenuFields in the

preferences window. Thanks! 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34734 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Stefano Ceccherini 2009-12-21 19:39:24 +00:00
parent 685d6ae32b
commit 1a7f5cb95d
1 changed files with 53 additions and 38 deletions

View File

@ -13,6 +13,7 @@
#include <Button.h>
#include <ColorControl.h>
#include <GridLayoutBuilder.h>
#include <GroupLayoutBuilder.h>
#include <LayoutBuilder.h>
#include <Menu.h>
@ -66,17 +67,28 @@ AppearancePrefView::AppearancePrefView(const char *name,
BMenu* sizeMenu = _MakeSizeMenu(MSG_HALF_SIZE_CHANGED,
PrefHandler::Default()->getInt32(PREF_HALF_FONT_SIZE));
fFont = new BMenuField("Font:", fontMenu);
fFontSize = new BMenuField("Size:", sizeMenu);
fColorField = new BMenuField("Color:",
_MakeMenu(MSG_COLOR_FIELD_CHANGED, kColorTable,
kColorTable[0]));
BView* layoutView = BLayoutBuilder::Group<>()
.SetInsets(5, 5, 5, 5)
.AddGroup(B_VERTICAL, 5)
.Add(fFont = new BMenuField("font", "Font:", fontMenu))
.Add(fFontSize = new BMenuField("size", "Size:", sizeMenu))
.Add(fColorField = new BMenuField("color", "Color:",
_MakeMenu(MSG_COLOR_FIELD_CHANGED, kColorTable,
kColorTable[0])))
.Add(BSpaceLayoutItem::CreateGlue())
.Add(BGridLayoutBuilder(5, 5)
.Add(fFont->CreateLabelLayoutItem(), 0, 0)
.Add(fFont->CreateMenuBarLayoutItem(), 1, 0)
.Add(fFontSize->CreateLabelLayoutItem(), 0, 1)
.Add(fFontSize->CreateMenuBarLayoutItem(), 1, 1)
.Add(fColorField->CreateLabelLayoutItem(), 0, 2)
.Add(fColorField->CreateMenuBarLayoutItem(), 1, 2)
)
.AddGroup(B_VERTICAL, 5)
.AddGlue()
.Add(fColorControl = new BColorControl(BPoint(10, 10),
B_CELLS_32x8, 8.0, "", new BMessage(MSG_COLOR_CHANGED)))
.End()
.End();
AddChild(layoutView);
@ -112,10 +124,13 @@ void
AppearancePrefView::Revert()
{
fColorField->Menu()->ItemAt(0)->SetMarked(true);
fColorControl->SetValue(PrefHandler::Default()->getRGB(PREF_TEXT_FORE_COLOR));
fColorControl->SetValue(PrefHandler::Default()->
getRGB(PREF_TEXT_FORE_COLOR));
fFont->Menu()->FindItem(PrefHandler::Default()->getString(PREF_HALF_FONT_FAMILY))->SetMarked(true);
fFontSize->Menu()->FindItem(PrefHandler::Default()->getString(PREF_HALF_FONT_FAMILY))->SetMarked(true);
fFont->Menu()->FindItem(PrefHandler::Default()->getString(
PREF_HALF_FONT_FAMILY))->SetMarked(true);
fFontSize->Menu()->FindItem(PrefHandler::Default()->getString(
PREF_HALF_FONT_FAMILY))->SetMarked(true);
}