#ifndef CDGRAPHICS_H #define CDGRAPHICS_H #include #include #include #include "ui_cdgraphics.h" class QMainWindow; class Graphic; class GDockWidget: public QDockWidget { Q_OBJECT public: GDockWidget(QString title = QString(), QMainWindow * p = 0); private: void contextMenuEvent(QContextMenuEvent * e); QMenu * menu; QList dactions; QMainWindow * da; private slots: void rename(); signals: void removeRequest(); }; class CDGraphics : public QWidget, public Ui::CDGraphics { Q_OBJECT public: explicit CDGraphics(QWidget *parent = 0); ~CDGraphics(); void reset(); private: bool eventFilter(QObject * o, QEvent * e); Graphic * viewportGraphic(QObject * o) const; GDockWidget * graphicDock(Graphic * o) const; void addXToGraphic(const QString & xp, Graphic * g); void addGraphic(); QList graphics; QList docks; QMainWindow * da; private slots: void removeGraphic(); void on_buttonAdd_clicked(); void on_buttonClear_clicked(); void on_buttonRemoveAll_clicked(); signals: }; #endif // CDGRAPHICS_H