Some more work on the font sensitivity - not yet complete by any means, though,

but it's shaping up.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17758 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler
2006-06-07 14:04:03 +00:00
parent 3d4dfe403c
commit 7c434cc5a0
@@ -502,10 +502,10 @@ ModulesView::_OpenSaver()
fSaverRunner = new ScreenSaverRunner(Window(), view, true, fSettings); fSaverRunner = new ScreenSaverRunner(Window(), view, true, fSettings);
BScreenSaver* saver = _ScreenSaver(); BScreenSaver* saver = _ScreenSaver();
BRect rect = fSettingsBox->Bounds().InsetByCopy(4, 4);
#ifdef __HAIKU__ #ifdef __HAIKU__
rect.top += fSettingsBox->TopBorderOffset(); BRect rect = fSettingsBox->InnerFrame().InsetByCopy(4, 4);
#else #else
BRect rect = fSettingsBox->Bounds().InsetByCopy(4, 4);
rect.top += 14; rect.top += 14;
#endif #endif
fSettingsView = new BView(rect, "SettingsView", B_FOLLOW_ALL, B_WILL_DRAW); fSettingsView = new BView(rect, "SettingsView", B_FOLLOW_ALL, B_WILL_DRAW);
@@ -645,11 +645,15 @@ ScreenSaverWindow::_SetupFadeTab(BRect rect)
{ {
fFadeView = new FadeView(rect, "Fade", fSettings); fFadeView = new FadeView(rect, "Fade", fSettings);
/* float labelWidth = be_plain_font->StringWidth("Turn off screen") + 20.0f;
font_height fontHeight; font_height fontHeight;
be_plain_font->GetHeight(&fontHeight); be_plain_font->GetHeight(&fontHeight);
float lineHeight = ceilf(fontHeight.ascent + fontHeight.descent); float textHeight = ceilf(fontHeight.ascent + fontHeight.descent);
*/
// taken from BRadioButton:
float radioButtonOffset = 2 * floorf(textHeight / 2 - 2) + floorf(textHeight / 2);
fEnableCheckBox = new BCheckBox(BRect(0, 0, 1, 1), "EnableCheckBox", fEnableCheckBox = new BCheckBox(BRect(0, 0, 1, 1), "EnableCheckBox",
"Enable Screen Saver", new BMessage(kMsgEnableScreenSaverBox)); "Enable Screen Saver", new BMessage(kMsgEnableScreenSaverBox));
fEnableCheckBox->ResizeToPreferred(); fEnableCheckBox->ResizeToPreferred();
@@ -660,46 +664,50 @@ ScreenSaverWindow::_SetupFadeTab(BRect rect)
fFadeView->AddChild(box); fFadeView->AddChild(box);
// Run Module // Run Module
rect.left += radioButtonOffset;
rect.top = fEnableCheckBox->Bounds().bottom + 8.0f; rect.top = fEnableCheckBox->Bounds().bottom + 8.0f;
rect.right = box->Bounds().right - 8;
BStringView* stringView = new BStringView(rect, NULL, "Run module"); BStringView* stringView = new BStringView(rect, NULL, "Run module");
stringView->ResizeToPreferred(); stringView->ResizeToPreferred();
box->AddChild(stringView); box->AddChild(stringView);
float topEdge = rect.top; rect.left += labelWidth;
fRunSlider = new TimeSlider(BRect(135, topEdge, 420, topEdge + 20), fRunSlider = new TimeSlider(rect, "RunSlider", kMsgRunSliderChanged);
"RunSlider", kMsgRunSliderChanged);
float width, height; float width, height;
fRunSlider->GetPreferredSize(&width, &height); fRunSlider->GetPreferredSize(&width, &height);
fRunSlider->ResizeTo(fRunSlider->Bounds().Width(), height); fRunSlider->ResizeTo(fRunSlider->Bounds().Width(), height);
box->AddChild(fRunSlider); box->AddChild(fRunSlider);
// Turn Off // Turn Off
topEdge += fRunSlider->Bounds().Height() + 4.0f; rect.left = 8;
fTurnOffCheckBox = new BCheckBox(BRect(20, topEdge-2, 127, topEdge + 20), rect.OffsetBy(0, fRunSlider->Bounds().Height() + 4.0f);
"TurnOffScreenCheckBox", "Turn off screen", new BMessage(kMsgTurnOffCheckBox)); fTurnOffCheckBox = new BCheckBox(rect, "TurnOffScreenCheckBox",
"Turn off screen", new BMessage(kMsgTurnOffCheckBox));
fTurnOffCheckBox->ResizeToPreferred(); fTurnOffCheckBox->ResizeToPreferred();
box->AddChild(fTurnOffCheckBox); box->AddChild(fTurnOffCheckBox);
fTurnOffSlider = new TimeSlider(BRect(135, topEdge, 420, topEdge + 20), rect.left += radioButtonOffset + labelWidth;
"TurnOffSlider", kMsgTurnOffSliderChanged); fTurnOffSlider = new TimeSlider(rect, "TurnOffSlider", kMsgTurnOffSliderChanged);
fTurnOffSlider->ResizeTo(fTurnOffSlider->Bounds().Width(), height); fTurnOffSlider->ResizeTo(fTurnOffSlider->Bounds().Width(), height);
box->AddChild(fTurnOffSlider); box->AddChild(fTurnOffSlider);
// Password // Password
topEdge += fTurnOffSlider->Bounds().Height() + 4.0f; rect.left = 8;
fPasswordCheckBox = new BCheckBox(BRect(20, topEdge - 2, 127, topEdge + 20), rect.OffsetBy(0, fTurnOffSlider->Bounds().Height() + 4.0f);
"PasswordCheckbox", "Password lock", new BMessage(kMsgPasswordCheckBox)); fPasswordCheckBox = new BCheckBox(rect, "PasswordCheckbox",
"Password lock", new BMessage(kMsgPasswordCheckBox));
fPasswordCheckBox->ResizeToPreferred(); fPasswordCheckBox->ResizeToPreferred();
box->AddChild(fPasswordCheckBox); box->AddChild(fPasswordCheckBox);
fPasswordSlider = new TimeSlider(BRect(135, topEdge, 420, topEdge + 20), rect.left += radioButtonOffset + labelWidth;
"PasswordSlider", kMsgPasswordSliderChanged); fPasswordSlider = new TimeSlider(rect, "PasswordSlider", kMsgPasswordSliderChanged);
fPasswordSlider->ResizeTo(fPasswordSlider->Bounds().Width(), height); fPasswordSlider->ResizeTo(fPasswordSlider->Bounds().Width(), height);
box->AddChild(fPasswordSlider); box->AddChild(fPasswordSlider);
topEdge += fPasswordSlider->Bounds().Height() + 4.0f; rect.OffsetBy(0, fTurnOffSlider->Bounds().Height() + 4.0f);
fPasswordButton = new BButton(BRect(390, topEdge, 410, topEdge + 24), "PasswordButton", rect.left = rect.right;
"Password" B_UTF8_ELLIPSIS, new BMessage(kMsgChangePassword)); fPasswordButton = new BButton(rect, "PasswordButton", "Password" B_UTF8_ELLIPSIS,
new BMessage(kMsgChangePassword), B_FOLLOW_TOP | B_FOLLOW_RIGHT);
fPasswordButton->ResizeToPreferred(); fPasswordButton->ResizeToPreferred();
fPasswordButton->MoveBy(-fPasswordButton->Bounds().Width(), 0); fPasswordButton->MoveBy(-fPasswordButton->Bounds().Width(), 0);
box->AddChild(fPasswordButton); box->AddChild(fPasswordButton);
@@ -711,20 +719,28 @@ ScreenSaverWindow::_SetupFadeTab(BRect rect)
box->AddChild(fFadeNever = new ScreenCornerSelector(BRect(220,205,280,260),"fadeNever", box->AddChild(fFadeNever = new ScreenCornerSelector(BRect(220,205,280,260),"fadeNever",
B_FOLLOW_LEFT | B_FOLLOW_BOTTOM)); B_FOLLOW_LEFT | B_FOLLOW_BOTTOM));
stringView = new BStringView(BRect(90,215,193,230), rect = BRect(90,215,193,230);
"FadeNowString", "Fade now when", B_FOLLOW_LEFT | B_FOLLOW_BOTTOM); stringView = new BStringView(rect, NULL, "Fade now when",
B_FOLLOW_LEFT | B_FOLLOW_BOTTOM);
stringView->ResizeToPreferred();
box->AddChild(stringView); box->AddChild(stringView);
stringView = new BStringView(BRect(90,233,193,248), rect.OffsetBy(0, stringView->Bounds().Height());
"FadeNowString2","mouse is here", B_FOLLOW_LEFT | B_FOLLOW_BOTTOM); stringView = new BStringView(rect, NULL, "mouse is here",
B_FOLLOW_LEFT | B_FOLLOW_BOTTOM);
stringView->ResizeToPreferred();
box->AddChild(stringView); box->AddChild(stringView);
stringView = new BStringView(BRect(290,215,387,230), rect = BRect(290,215,387,230);
"DontFadeString","Don't fade when", B_FOLLOW_LEFT | B_FOLLOW_BOTTOM); stringView = new BStringView(rect, NULL,"Don't fade when",
B_FOLLOW_LEFT | B_FOLLOW_BOTTOM);
stringView->ResizeToPreferred();
box->AddChild(stringView); box->AddChild(stringView);
stringView = new BStringView(BRect(290,233,387,248), rect.OffsetBy(0, stringView->Bounds().Height());
"DontFadeString2","mouse is here", B_FOLLOW_LEFT | B_FOLLOW_BOTTOM); stringView = new BStringView(rect, NULL, "mouse is here",
B_FOLLOW_LEFT | B_FOLLOW_BOTTOM);
stringView->ResizeToPreferred();
box->AddChild(stringView); box->AddChild(stringView);
} }