kate_kdatatool.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef _KATE_KDATATOOL_
00022 #define _KATE_KDATATOOL_
00023
00024 #include <ktexteditor/plugin.h>
00025 #include <qstringlist.h>
00026 #include <kxmlguiclient.h>
00027 #include <qguardedptr.h>
00028
00029 class KActionMenu;
00030 class KDataToolInfo;
00031
00032 namespace KTextEditor
00033 {
00034
00035 class View;
00036
00037 class KDataToolPlugin : public KTextEditor::Plugin, public KTextEditor::PluginViewInterface
00038 {
00039 Q_OBJECT
00040
00041 public:
00042 KDataToolPlugin( QObject *parent = 0, const char* name = 0, const QStringList &args = QStringList() );
00043 virtual ~KDataToolPlugin();
00044 void addView (KTextEditor::View *view);
00045 void removeView (KTextEditor::View *view);
00046
00047 private:
00048 QPtrList<class KDataToolPluginView> m_views;
00049 };
00050
00051
00052 class KDataToolPluginView : public QObject, public KXMLGUIClient
00053 {
00054 Q_OBJECT
00055
00056 public:
00057 KDataToolPluginView( KTextEditor::View *view );
00058 virtual ~KDataToolPluginView();
00059 void setView( KTextEditor::View* ){;}
00060 private:
00061 View *m_view;
00062 bool m_singleWord;
00063 int m_singleWord_line, m_singleWord_start, m_singleWord_end;
00064 QString m_wordUnderCursor;
00065 QPtrList<KAction> m_actionList;
00066 QGuardedPtr<KActionMenu> m_menu;
00067 KAction *m_notAvailable;
00068 protected slots:
00069 void aboutToShow();
00070 void slotToolActivated( const KDataToolInfo &datatoolinfo, const QString &string );
00071 void slotNotAvailable();
00072 };
00073
00074 }
00075
00076 #endif
|