Tell user why Turn Off feature is not available.

Close #3274.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40530 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Philippe Houdoin
2011-02-16 15:36:05 +00:00
parent 1d8dff0197
commit edda6e98b9
2 changed files with 29 additions and 1 deletions
@@ -32,6 +32,7 @@
#include <Slider.h> #include <Slider.h>
#include <StringView.h> #include <StringView.h>
#include <TabView.h> #include <TabView.h>
#include <TextView.h>
#include <BuildScreenSaverDefaultSettingsView.h> #include <BuildScreenSaverDefaultSettingsView.h>
@@ -734,6 +735,21 @@ ScreenSaverWindow::_SetupFadeTab(BRect rect)
fTurnOffSlider->ResizeTo(fTurnOffSlider->Bounds().Width(), height); fTurnOffSlider->ResizeTo(fTurnOffSlider->Bounds().Width(), height);
box->AddChild(fTurnOffSlider); box->AddChild(fTurnOffSlider);
rgb_color textColor = tint_color(ui_color(B_PANEL_BACKGROUND_COLOR),
B_DISABLED_LABEL_TINT);
BRect textRect(0, 0, fTurnOffSlider->Bounds().Width(), height);
textRect.InsetBy(0, 3);
fTurnOffNotSupported = new BTextView(rect, "not_supported",
textRect, be_plain_font, &textColor, B_FOLLOW_ALL, B_WILL_DRAW);
fTurnOffNotSupported->SetViewColor(ui_color(B_PANEL_BACKGROUND_COLOR));
fTurnOffNotSupported->MakeEditable(false);
fTurnOffNotSupported->MakeSelectable(false);
fTurnOffNotSupported->SetText(
B_TRANSLATE("Display Power Management Signaling not available"));
fTurnOffNotSupported->ResizeTo(fTurnOffSlider->Bounds().Width(), height);
box->AddChild(fTurnOffNotSupported);
// Password // Password
rect.left = 8; rect.left = 8;
rect.OffsetBy(0, fTurnOffSlider->Bounds().Height() + 4.0f); rect.OffsetBy(0, fTurnOffSlider->Bounds().Height() + 4.0f);
@@ -835,6 +851,16 @@ ScreenSaverWindow::_UpdateTurnOffScreen()
fTurnOffCheckBox->SetValue(enabled && fTurnOffScreenFlags != 0 fTurnOffCheckBox->SetValue(enabled && fTurnOffScreenFlags != 0
? B_CONTROL_ON : B_CONTROL_OFF); ? B_CONTROL_ON : B_CONTROL_OFF);
enabled = fEnableCheckBox->Value() == B_CONTROL_ON;
fTurnOffCheckBox->SetEnabled(enabled && fTurnOffScreenFlags != 0);
if (fTurnOffScreenFlags != 0) {
fTurnOffNotSupported->Hide();
fTurnOffSlider->Show();
} else {
fTurnOffSlider->Hide();
fTurnOffNotSupported->Show();
}
} }
@@ -23,6 +23,7 @@
class BButton; class BButton;
class BTabView; class BTabView;
class BTextView;
class ModulesView; class ModulesView;
class ScreenCornerSelector; class ScreenCornerSelector;
@@ -62,6 +63,7 @@ private:
BCheckBox* fTurnOffCheckBox; BCheckBox* fTurnOffCheckBox;
TimeSlider* fTurnOffSlider; TimeSlider* fTurnOffSlider;
BTextView* fTurnOffNotSupported;
BCheckBox* fPasswordCheckBox; BCheckBox* fPasswordCheckBox;
TimeSlider* fPasswordSlider; TimeSlider* fPasswordSlider;