akonadi/clients
browserwidget.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 #ifndef BROWSERWIDGET_H
00021 #define BROWSERWIDGET_H
00022
00023 #include <ui_browserwidget_itemview.h>
00024 #include <ui_browserwidget_contentview.h>
00025
00026 #include <akonadi/collection.h>
00027 #include <akonadi/item.h>
00028
00029 #include <QtGui/QWidget>
00030
00031 class QModelIndex;
00032 class QItemSelectionModel;
00033 class QStandardItemModel;
00034
00035 class KJob;
00036 class KXmlGuiWindow;
00037
00038 namespace Akonadi {
00039 class CollectionView;
00040 class CollectionModel;
00041 class ItemModel;
00042 class Job;
00043 }
00044
00045 class BrowserWidget: public QWidget
00046 {
00047 Q_OBJECT
00048
00049 public:
00050 explicit BrowserWidget( KXmlGuiWindow *xmlGuiWindow = 0, QWidget *parent = 0 );
00051
00052 QItemSelectionModel *collectionSelectionModel() const;
00053 QItemSelectionModel *itemSelectionModel() const;
00054
00055 private slots:
00056 void collectionActivated( const QModelIndex &index );
00057 void itemActivated( const QModelIndex &index );
00058 void itemFetchDone( KJob *job );
00059 void modelChanged();
00060 void save();
00061 void saveResult( KJob* job );
00062 void addAttribute();
00063 void delAttribute();
00064
00065 private:
00066 Akonadi::CollectionModel *mCollectionModel;
00067 Akonadi::CollectionView *mCollectionView;
00068 Akonadi::ItemModel *mItemModel;
00069 Ui::ItemViewWidget itemUi;
00070 Ui::ContentViewWidget contentUi;
00071 Akonadi::Collection::Id mCurrentCollection;
00072 Akonadi::Item mCurrentItem;
00073 QStandardItemModel *mAttrModel;
00074 QStandardItemModel *mNepomukModel;
00075 };
00076
00077 #endif