OSDN Git Service

Merge remote branch 'origin/2.1'
[qt-creator-jp/qt-creator-jp.git] / src / plugins / find / findplugin.h
index 475def0..d76af80 100644 (file)
 #ifndef FINDPLUGIN_H
 #define FINDPLUGIN_H
 
-#include "ifindfilter.h"
+#include "find_global.h"
+#include "textfindconstants.h"
 
 #include <extensionsystem/iplugin.h>
 
-#include <QtCore/QHash>
-#include <QtCore/QStringList>
-#include <QtGui/QAction>
 #include <QtGui/QTextDocument>
-#include <QtGui/QStringListModel>
+
+QT_BEGIN_NAMESPACE
+class QStringListModel;
+QT_END_NAMESPACE
 
 namespace Find {
-namespace Internal {
+class IFindFilter;
+struct FindPluginPrivate;
 
+namespace Internal {
 class FindToolBar;
 class FindToolWindow;
 class CurrentDocumentFind;
+} // namespace Internal
 
 class FIND_EXPORT FindPlugin : public ExtensionSystem::IPlugin
 {
@@ -64,13 +68,14 @@ public:
     // IPlugin
     bool initialize(const QStringList &arguments, QString *error_message);
     void extensionsInitialized();
-    void shutdown();
+    ShutdownFlag aboutToShutdown();
 
-    QTextDocument::FindFlags findFlags() const;
+    Find::FindFlags findFlags() const;
+    bool hasFindFlag(Find::FindFlag flag);
     void updateFindCompletion(const QString &text);
     void updateReplaceCompletion(const QString &text);
-    QStringListModel *findCompletionModel() { return m_findCompletionModel; }
-    QStringListModel *replaceCompletionModel() { return m_replaceCompletionModel; }
+    QStringListModel *findCompletionModel() const;
+    QStringListModel *replaceCompletionModel() const;
     void setUseFakeVim(bool on);
     void openFindToolBar(FindDirection direction);
 
@@ -78,6 +83,7 @@ public slots:
     void setCaseSensitive(bool sensitive);
     void setWholeWord(bool wholeOnly);
     void setBackward(bool backward);
+    void setRegularExpression(bool regExp);
 
 signals:
     void findFlagsChanged();
@@ -87,8 +93,7 @@ private slots:
     void openFindFilter();
 
 private:
-    void setFindFlag(QTextDocument::FindFlag flag, bool enabled);
-    bool hasFindFlag(QTextDocument::FindFlag flag);
+    void setFindFlag(Find::FindFlag flag, bool enabled);
     void updateCompletion(const QString &text, QStringList &completions, QStringListModel *model);
     void setupMenu();
     void setupFilterMenuItems();
@@ -96,22 +101,9 @@ private:
     void readSettings();
 
     //variables
-    static FindPlugin *m_instance;
-
-    QHash<IFindFilter *, QAction *> m_filterActions;
-
-    CurrentDocumentFind *m_currentDocumentFind;
-    FindToolBar *m_findToolBar;
-    FindToolWindow *m_findDialog;
-    QTextDocument::FindFlags m_findFlags;
-    QStringListModel *m_findCompletionModel;
-    QStringListModel *m_replaceCompletionModel;
-    QStringList m_findCompletions;
-    QStringList m_replaceCompletions;
-    QAction *m_openFindDialog;
+    FindPluginPrivate *d;
 };
 
-} // namespace Internal
 } // namespace Find
 
 #endif // FINDPLUGIN_H