#ifndef MYPLUGIN_H #define MYPLUGIN_H #include #include #include #include /* ----------------------------------------------------------------------- */ namespace MyModule { class MyViewFactory; #ifdef TRACEVIEW class TraceViewFactory; #endif /* ----------------------------------------------------------------------- */ class MyPlugin : public KDevelop::IPlugin { Q_OBJECT public: MyPlugin (QObject *parent, const QVariantList & args = QVariantList ()); virtual ~ MyPlugin (); public: virtual void unload (); private Q_SLOTS: void run (); private: MyViewFactory * m_view_factory; #ifdef TRACEVIEW TraceViewFactory * m_trace_factory; #endif }; /* ----------------------------------------------------------------------- */ class MyViewFactory : public KDevelop::IToolViewFactory { public: MyViewFactory (MyPlugin * plugin); virtual QWidget * create (QWidget * parent = 0); virtual Qt::DockWidgetArea defaultPosition(); virtual QString id() const; private: MyPlugin * m_plugin; }; /* ----------------------------------------------------------------------- */ class MyView : public QWidget { Q_OBJECT public: explicit MyView (MyPlugin* plugin, QWidget *parent = 0 ); // virtual ~MyView (); void put (QString txt); private Q_SLOTS: void click (); private: QPushButton * m_button; QTreeWidget * m_tree; }; /* ----------------------------------------------------------------------- */ } // end of namespace #endif // MYPLUGIN_H