author | drw <drw> | 2005-01-30 00:30:47 (UTC) |
---|---|---|
committer | drw <drw> | 2005-01-30 00:30:47 (UTC) |
commit | 43f82d5c68e1d7a5b26f862c26a76253a85e7518 (patch) (side-by-side diff) | |
tree | 30144b9e95712631fa89589c9fb7dc98df4e2088 /libopie2/opiepim/ui/opimmainwindow.h | |
parent | 3f25fb92b1dde002ea0c2a3aedffd3912054c380 (diff) | |
download | opie-43f82d5c68e1d7a5b26f862c26a76253a85e7518.zip opie-43f82d5c68e1d7a5b26f862c26a76253a85e7518.tar.gz opie-43f82d5c68e1d7a5b26f862c26a76253a85e7518.tar.bz2 |
First part of PIM app consistancy/consolidation - added menu/tool bar, app caption and context menu handling to OPimMainWindow
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 @@ -28,13 +28,20 @@ */ #ifndef OPIE_PIM_MAINWINDOW_H #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 { /** * This is a common Opie PIM MainWindow @@ -55,10 +62,14 @@ class OPimMainWindow : public QMainWindow { public: enum TransPort { BlueTooth=0, 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(); protected slots: @@ -89,22 +100,42 @@ protected slots: virtual void doAlarm( const QDateTime&, int uid ); 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: /** * start to play soundAlarm() * @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; Private* d; @@ -115,14 +146,38 @@ private: OPimRecord* m_fallBack; int m_alarmCount; 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 * because I need signal and slots -zecke */ 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 ); }; } |