void FadeView::UpdateTurnOffScreen() { bool enabled = (fSettings.TimeFlags() & ENABLE_DPMS_MASK) != 0; BScreen screen(Window()); uint32 dpmsCapabilities = screen.DPMSCapabilites(); fTurnOffScreenFlags = 0; if (dpmsCapabilities & B_DPMS_OFF) fTurnOffScreenFlags |= ENABLE_DPMS_OFF; if (dpmsCapabilities & B_DPMS_STAND_BY) fTurnOffScreenFlags |= ENABLE_DPMS_STAND_BY; if (dpmsCapabilities & B_DPMS_SUSPEND) fTurnOffScreenFlags |= ENABLE_DPMS_SUSPEND; fTurnOffCheckBox->SetValue(enabled && fTurnOffScreenFlags != 0 ? 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(); } }
void MyWidgetAction::propagate_enabled(bool b) { QList<QWidget *> l = createdWidgets(); for (int n=0; n < l.count(); n++) { TimeSlider *s = (TimeSlider*) l[n]; s->setEnabled(b);; } setEnabled(b); }
void TimeSliderAction::setDragDelay(int d) { drag_delay = d; QList<QWidget *> l = createdWidgets(); for (int n=0; n < l.count(); n++) { TimeSlider *s = (TimeSlider*) l[n]; s->setDragDelay(drag_delay); } }
int TimeSliderAction::pos() { QList<QWidget *> l = createdWidgets(); if (l.count() >= 1) { TimeSlider *s = (TimeSlider*) l[0]; return s->pos(); } else { return -1; } }
void TimeSliderAction::setPos(int v) { QList<QWidget *> l = createdWidgets(); for (int n=0; n < l.count(); n++) { TimeSlider *s = (TimeSlider*) l[n]; bool was_blocked= s->blockSignals(true); s->setPos(v); s->blockSignals(was_blocked); } }
QWidget * TimeSliderAction::createWidget ( QWidget * parent ) { TimeSlider *t = new TimeSlider(parent); t->setEnabled( isEnabled() ); if (custom_style) t->setStyle(custom_style); if (!custom_stylesheet.isEmpty()) t->setStyleSheet(custom_stylesheet); connect( t, SIGNAL(posChanged(int)), this, SIGNAL(posChanged(int)) ); connect( t, SIGNAL(draggingPos(int)), this, SIGNAL(draggingPos(int)) ); #if ENABLE_DELAYED_DRAGGING t->setDragDelay(drag_delay); connect( t, SIGNAL(delayedDraggingPos(int)), this, SIGNAL(delayedDraggingPos(int)) ); #endif return t; }
void FadeView::UpdateStatus() { Window()->DisableUpdates(); bool enabled = fEnableCheckBox->Value() == B_CONTROL_ON; fPasswordCheckBox->SetEnabled(enabled); fTurnOffCheckBox->SetEnabled(enabled && fTurnOffScreenFlags != 0); fRunSlider->SetEnabled(enabled); fTurnOffSlider->SetEnabled(enabled && fTurnOffCheckBox->Value()); fPasswordSlider->SetEnabled(enabled && fPasswordCheckBox->Value()); fPasswordButton->SetEnabled(enabled && fPasswordCheckBox->Value()); Window()->EnableUpdates(); // Update the saved preferences fSettings.SetWindowFrame(Frame()); fSettings.SetTimeFlags((enabled ? ENABLE_SAVER : 0) | (fTurnOffCheckBox->Value() ? fTurnOffScreenFlags : 0)); fSettings.SetBlankTime(fRunSlider->Time()); bigtime_t offTime = fTurnOffSlider->Time() - fSettings.BlankTime(); fSettings.SetOffTime(offTime); fSettings.SetSuspendTime(offTime); fSettings.SetStandByTime(offTime); fSettings.SetBlankCorner(fFadeNow->Corner()); fSettings.SetNeverBlankCorner(fFadeNever->Corner()); fSettings.SetLockEnable(fPasswordCheckBox->Value()); fSettings.SetPasswordTime(fPasswordSlider->Time()); // TODO - Tell the password window to update its stuff }
void FadeView::AttachedToWindow() { fEnableCheckBox->SetTarget(this); fRunSlider->SetTarget(this); fTurnOffCheckBox->SetTarget(this); fTurnOffSlider->SetTarget(this); fFadeNow->SetTarget(this); fFadeNever->SetTarget(this); fPasswordCheckBox->SetTarget(this); fPasswordSlider->SetTarget(this); fEnableCheckBox->SetValue( fSettings.TimeFlags() & ENABLE_SAVER ? B_CONTROL_ON : B_CONTROL_OFF); fRunSlider->SetTime(fSettings.BlankTime()); fTurnOffSlider->SetTime(fSettings.OffTime() + fSettings.BlankTime()); fFadeNow->SetCorner(fSettings.BlankCorner()); fFadeNever->SetCorner(fSettings.NeverBlankCorner()); fPasswordCheckBox->SetValue(fSettings.LockEnable()); fPasswordSlider->SetTime(fSettings.PasswordTime()); _UpdateColors(); UpdateTurnOffScreen(); UpdateStatus(); }
void FadeView::MessageReceived(BMessage *message) { switch (message->what) { case kMsgRunSliderChanged: case kMsgRunSliderUpdate: if (fRunSlider->Value() > fTurnOffSlider->Value()) fTurnOffSlider->SetValue(fRunSlider->Value()); if (fRunSlider->Value() > fPasswordSlider->Value()) fPasswordSlider->SetValue(fRunSlider->Value()); break; case kMsgTurnOffSliderChanged: case kMsgTurnOffSliderUpdate: if (fRunSlider->Value() > fTurnOffSlider->Value()) fRunSlider->SetValue(fTurnOffSlider->Value()); break; case kMsgPasswordSliderChanged: case kMsgPasswordSliderUpdate: if (fPasswordSlider->Value() < fRunSlider->Value()) fRunSlider->SetValue(fPasswordSlider->Value()); break; case kMsgTurnOffCheckBox: fTurnOffSlider->SetEnabled( fTurnOffCheckBox->Value() == B_CONTROL_ON); break; } switch (message->what) { case kMsgRunSliderChanged: case kMsgTurnOffSliderChanged: case kMsgPasswordSliderChanged: case kMsgPasswordCheckBox: case kMsgEnableScreenSaverBox: case kMsgFadeCornerChanged: case kMsgNeverFadeCornerChanged: UpdateStatus(); fSettings.Save(); break; default: BView::MessageReceived(message); } }