kalarm/lib
timeperiod.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef TIMEPERIOD_H
00022 #define TIMEPERIOD_H
00023
00024 #include <qhbox.h>
00025 #include <qstring.h>
00026
00027 class QWidgetStack;
00028 class ComboBox;
00029 class SpinBox;
00030 class TimeSpinBox;
00031
00032
00050 class TimePeriod : public QHBox
00051 {
00052 Q_OBJECT
00053 public:
00059 enum Units { HOURS_MINUTES, DAYS, WEEKS };
00060
00068 TimePeriod(bool allowHourMinute, QWidget* parent, const char* name = 0);
00070 bool isReadOnly() const { return mReadOnly; }
00075 virtual void setReadOnly(bool readOnly);
00077 int minutes() const;
00083 void setMinutes(int minutes, bool dateOnly, Units defaultUnits);
00088 void setDateOnly(bool dateOnly) { setDateOnly(minutes(), dateOnly, true); }
00092 void setMaximum(int hourmin, int days);
00096 void setSelectOnStep(bool select);
00098 void setFocusOnCount();
00102 void setWhatsThis(const QString& units, const QString& dayWeek, const QString& hourMin = QString::null);
00103
00104 static QString i18n_hours_mins();
00105 static QString i18n_Hours_Mins();
00106 static QString i18n_days();
00107 static QString i18n_Days();
00108 static QString i18n_weeks();
00109 static QString i18n_Weeks();
00110
00111 signals:
00115 void valueChanged(int minutes);
00116
00117 private slots:
00118 void slotUnitsSelected(int index);
00119 void slotDaysChanged(int);
00120 void slotTimeChanged(int minutes);
00121
00122 private:
00123 Units setDateOnly(int minutes, bool dateOnly, bool signal);
00124 void setUnitRange();
00125 void showHourMin(bool hourMin);
00126 void adjustDayWeekShown();
00127
00128 QWidgetStack* mSpinStack;
00129 SpinBox* mSpinBox;
00130 TimeSpinBox* mTimeSpinBox;
00131 ComboBox* mUnitsCombo;
00132 int mMaxDays;
00133 int mDateOnlyOffset;
00134 Units mMaxUnitShown;
00135 bool mNoHourMinute;
00136 bool mReadOnly;
00137 bool mHourMinuteRaised;
00138 };
00139
00140 #endif // TIMEPERIOD_H
|