Diffstat (limited to 'libopie2/opiepim/ui/opimmainwindow.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | libopie2/opiepim/ui/opimmainwindow.h | 65 |
1 files changed, 60 insertions, 5 deletions
diff --git a/libopie2/opiepim/ui/opimmainwindow.h b/libopie2/opiepim/ui/opimmainwindow.h index abad630..4aed8b8 100644 --- a/libopie2/opiepim/ui/opimmainwindow.h +++ b/libopie2/opiepim/ui/opimmainwindow.h @@ -30,9 +30,16 @@ #define OPIE_PIM_MAINWINDOW_H +#include <opie2/opimrecord.h> + +#include <qpe/categories.h> +#include <qpe/config.h> + #include <qmainwindow.h> -#include <opie2/opimrecord.h> +class QAction; +class QActionGroup; class QCopChannel; class QDateTime; +class QPopupMenu; namespace Opie { @@ -57,6 +64,10 @@ public: IrDa }; - OPimMainWindow( const QString& service, QWidget *parent = 0, const char* name = 0, - WFlags f = WType_TopLevel); + OPimMainWindow( const QString &serviceName, + const QString &appName = QString::null, + const QString &catName = QString::null, + const QString &itemName = QString::null, + const QString &configName = QString::null, + QWidget *parent = 0l, const char* name = 0l, WFlags f = WType_TopLevel ); virtual ~OPimMainWindow(); @@ -91,4 +102,13 @@ protected slots: QCopChannel* channel(); + /** UI-related slots */ + virtual void slotItemNew() = 0; + virtual void slotItemEdit() = 0; + virtual void slotItemDuplicate() = 0; + virtual void slotItemDelete() = 0; + virtual void slotItemBeam() = 0; + virtual void slotItemFind() = 0; + virtual void slotConfigure() = 0; + protected: /** @@ -96,13 +116,24 @@ protected: * @param count How many times the alarm is played */ - void startAlarm(int count = 10); + void startAlarm( int count = 10 ); void killAlarm(); void timerEvent( QTimerEvent* ); + /** UI-related functions */ + QPopupMenu *itemContextMenu(); + + void insertItemMenuItems( QActionGroup *items ); + void insertViewMenuItems( QActionGroup *items ); + + void setViewCategory( const QString &category ); + void reloadCategories(); + private slots: void appMessage( const QCString&, const QByteArray& ); void setDocument( const QString& ); - + /** UI-related slots */ + void slotViewCategory( QAction *category ); + private: class Private; @@ -117,4 +148,22 @@ private: int m_playedCount; int m_timerId; + + QString m_appName; // Name of application for title bar + QString m_catGroupName; // Name of category group + Config m_config; // Configuration settings file + + // Menu bar data + QPopupMenu *m_itemContextMenu; // Pointer to context-sensitive menu + QPopupMenu *m_itemMenu; // Pointer to item menu + QPopupMenu *m_viewMenu; // Pointer to view menu + QActionGroup *m_itemMenuGroup1; // Action group containing default items in Item menu + QActionGroup *m_itemMenuGroup2; // Action group containing default items in Item menu + QActionGroup *m_viewMenuAppGroup; // Action group containing application items in View menu + QActionGroup *m_viewMenuGroup; // Action group containing default items in View menu + QActionGroup *m_viewMenuCategories; // Pointer to action group containing categories in View menu + QAction *m_itemEditAction; // Edit current item action + QAction *m_itemDuplicateAction; // Duplicate current item action + QAction *m_itemDeleteAction; // Delete current item action + /* I would love to do this as a template * but can't think of a right way @@ -123,4 +172,10 @@ private: virtual OPimRecord* record( int rtti, const QByteArray& ) ; int service(); + + /** UI-related functions */ + void initBars( const QString &itemName = tr( "Item" ) ); + +signals: + void categorySelected( const QString &cat ); }; |