kalarm
resourceselector.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef RESOURCESELECTOR_H
00026 #define RESOURCESELECTOR_H
00027
00028 #include <QModelIndex>
00029 #include <QFrame>
00030 #include <QSize>
00031 #include "alarmresource.h"
00032 #include "alarmresources.h"
00033
00034 class QPushButton;
00035 class QResizeEvent;
00036 class KAction;
00037 class KActionCollection;
00038 class KToggleAction;
00039 class KComboBox;
00040 class KMenu;
00041 class ResourceView;
00042 using KCal::ResourceCalendar;
00043
00044
00048 class ResourceSelector : public QFrame
00049 {
00050 Q_OBJECT
00051 public:
00052 explicit ResourceSelector(AlarmResources*, QWidget* parent = 0);
00053 AlarmResources* calendar() const { return mCalendar; }
00054 void initActions(KActionCollection*);
00055 void setContextMenu(KMenu*);
00056
00057 signals:
00058 void resized(const QSize& oldSize, const QSize& newSize);
00059
00060 protected:
00061 virtual void resizeEvent(QResizeEvent*);
00062
00063 private slots:
00064 void alarmTypeSelected();
00065 void addResource();
00066 void editResource();
00067 void removeResource();
00068 void selectionChanged();
00069 void contextMenuRequested(const QPoint&);
00070 void reloadResource();
00071 void saveResource();
00072 void setStandard();
00073 void setColour();
00074 void clearColour();
00075 void importCalendar();
00076 void showInfo();
00077 void archiveDaysChanged(int days);
00078
00079 private:
00080 AlarmResource* currentResource() const;
00081
00082 AlarmResources* mCalendar;
00083 KComboBox* mAlarmType;
00084 ResourceView* mListView;
00085 QPushButton* mAddButton;
00086 QPushButton* mDeleteButton;
00087 QPushButton* mEditButton;
00088 QList<AlarmResource*> mResourcesToClose;
00089 AlarmResource::Type mCurrentAlarmType;
00090 KMenu* mContextMenu;
00091 KAction* mActionReload;
00092 KAction* mActionSave;
00093 KAction* mActionShowDetails;
00094 KAction* mActionSetColour;
00095 KAction* mActionClearColour;
00096 KAction* mActionEdit;
00097 KAction* mActionRemove;
00098 KAction* mActionImport;
00099 KToggleAction* mActionSetDefault;
00100 };
00101
00102 #endif