krita
kis_resource_mediator.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef KIS_RESOURCE_MEDIATOR_H_
00019 #define KIS_RESOURCE_MEDIATOR_H_
00020
00021 #include <qobject.h>
00022 #include <qmap.h>
00023 #include <qwidget.h>
00024
00025 class KoIconItem;
00026 class KisItemChooser;
00027 class KisIconItem;
00028 class KisResource;
00029 class KisResourceServerBase;
00030
00037 class KisResourceMediator : public QObject {
00038 Q_OBJECT
00039 typedef QObject super;
00040
00041 public:
00042 KisResourceMediator(KisItemChooser *chooser,
00043 QObject *parent = 0,
00044 const char *name = 0);
00045 virtual ~KisResourceMediator();
00046
00047 public:
00048 void connectServer(KisResourceServerBase* rServer);
00049 KisResource *currentResource() const;
00050 KisIconItem *itemFor(KisResource *r) const;
00051 KisResource *resourceFor(KoIconItem *item) const;
00052 KisResource *resourceFor(KisIconItem *item) const;
00053 QWidget *chooserWidget() const;
00054
00055 public slots:
00056
00057 void setActiveItem(KoIconItem *item);
00058
00059 signals:
00060 void activatedResource(KisResource *r);
00061
00062 private slots:
00063 void rServerAddedResource(KisResource *resource);
00064
00065 private:
00066 KisItemChooser *m_chooser;
00067 QMap<KisResource*, KisIconItem*> m_items;
00068 KoIconItem *m_activeItem;
00069 };
00070
00071 #endif // KIS_RESOURCE_MEDIATOR_H_
00072
|