summaryrefslogtreecommitdiff
path: root/src/plugins/macros
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/macros')
-rw-r--r--src/plugins/macros/Macros.pluginspec.in2
-rw-r--r--src/plugins/macros/findmacrohandler.cpp5
-rw-r--r--src/plugins/macros/findmacrohandler.h6
-rw-r--r--src/plugins/macros/imacrohandler.cpp2
-rw-r--r--src/plugins/macros/imacrohandler.h9
-rw-r--r--src/plugins/macros/macro.cpp2
-rw-r--r--src/plugins/macros/macro.h6
-rw-r--r--src/plugins/macros/macroevent.cpp2
-rw-r--r--src/plugins/macros/macroevent.h6
-rw-r--r--src/plugins/macros/macrolocatorfilter.cpp20
-rw-r--r--src/plugins/macros/macromanager.cpp21
-rw-r--r--src/plugins/macros/macromanager.h28
-rw-r--r--src/plugins/macros/macrooptionspage.h4
-rw-r--r--src/plugins/macros/macrooptionswidget.cpp4
-rw-r--r--src/plugins/macros/macros.pro1
-rw-r--r--src/plugins/macros/macros.qbs1
-rw-r--r--src/plugins/macros/macros_global.h41
-rw-r--r--src/plugins/macros/macrosplugin.cpp2
-rw-r--r--src/plugins/macros/macrosplugin.h3
-rw-r--r--src/plugins/macros/texteditormacrohandler.cpp6
-rw-r--r--src/plugins/macros/texteditormacrohandler.h10
21 files changed, 73 insertions, 108 deletions
diff --git a/src/plugins/macros/Macros.pluginspec.in b/src/plugins/macros/Macros.pluginspec.in
index 7ed581c5d7..5796bbbb7c 100644
--- a/src/plugins/macros/Macros.pluginspec.in
+++ b/src/plugins/macros/Macros.pluginspec.in
@@ -1,4 +1,4 @@
-<plugin name=\"Macros\" version=\"$$QTCREATOR_VERSION\" compatVersion=\"$$QTCREATOR_VERSION\">
+<plugin name=\"Macros\" version=\"$$QTCREATOR_VERSION\" compatVersion=\"$$QTCREATOR_COMPAT_VERSION\">
<vendor>Digia Plc</vendor>
<copyright>(C) 2013 Nicolas Arnaud-Cormos</copyright>
<license>
diff --git a/src/plugins/macros/findmacrohandler.cpp b/src/plugins/macros/findmacrohandler.cpp
index 403fc966e1..829475cb17 100644
--- a/src/plugins/macros/findmacrohandler.cpp
+++ b/src/plugins/macros/findmacrohandler.cpp
@@ -60,8 +60,7 @@ static const quint8 RESET = 5;
FindMacroHandler::FindMacroHandler():
IMacroHandler()
{
- const Core::EditorManager *editorManager = Core::EditorManager::instance();
- connect(editorManager, SIGNAL(currentEditorChanged(Core::IEditor*)),
+ connect(Core::EditorManager::instance(), SIGNAL(currentEditorChanged(Core::IEditor*)),
this, SLOT(changeEditor(Core::IEditor*)));
}
@@ -222,7 +221,7 @@ void FindMacroHandler::changeEditor(Core::IEditor *editor)
}
}
-void FindMacroHandler::startRecording(Macros::Macro* macro)
+void FindMacroHandler::startRecording(Macro* macro)
{
IMacroHandler::startRecording(macro);
Core::IEditor *current = Core::EditorManager::currentEditor();
diff --git a/src/plugins/macros/findmacrohandler.h b/src/plugins/macros/findmacrohandler.h
index 07f5a5f6ef..a1bfb8eebf 100644
--- a/src/plugins/macros/findmacrohandler.h
+++ b/src/plugins/macros/findmacrohandler.h
@@ -48,10 +48,10 @@ class FindMacroHandler : public IMacroHandler
public:
FindMacroHandler();
- void startRecording(Macros::Macro* macro);
+ void startRecording(Macro* macro);
- bool canExecuteEvent(const Macros::MacroEvent &macroEvent);
- bool executeEvent(const Macros::MacroEvent &macroEvent);
+ bool canExecuteEvent(const MacroEvent &macroEvent);
+ bool executeEvent(const MacroEvent &macroEvent);
public slots:
void findIncremental(const QString &txt, Find::FindFlags findFlags);
diff --git a/src/plugins/macros/imacrohandler.cpp b/src/plugins/macros/imacrohandler.cpp
index 5b5a9850c1..25630a24ae 100644
--- a/src/plugins/macros/imacrohandler.cpp
+++ b/src/plugins/macros/imacrohandler.cpp
@@ -31,7 +31,7 @@
#include "macro.h"
-using namespace Macros;
+using namespace Macros::Internal;
/*!
\class Macro::IEventHandler
diff --git a/src/plugins/macros/imacrohandler.h b/src/plugins/macros/imacrohandler.h
index 3b2e665b96..defa7d041c 100644
--- a/src/plugins/macros/imacrohandler.h
+++ b/src/plugins/macros/imacrohandler.h
@@ -30,20 +30,22 @@
#ifndef MACROSPLUGIN_IMACROHANDLER_H
#define MACROSPLUGIN_IMACROHANDLER_H
-#include "macros_global.h"
#include <QObject>
namespace Macros {
+namespace Internal {
class Macro;
class MacroEvent;
class MacroManager;
-class MACROS_EXPORT IMacroHandler: public QObject
+class IMacroHandler: public QObject
{
+ Q_OBJECT
+
public:
IMacroHandler();
- virtual ~IMacroHandler();
+ ~IMacroHandler();
virtual void startRecording(Macro* macro);
virtual void endRecordingMacro(Macro* macro);
@@ -65,6 +67,7 @@ private:
IMacroHandlerPrivate *d;
};
+} // namespace Internal
} // namespace Macros
#endif // MACROSPLUGIN_IMACROHANDLER_H
diff --git a/src/plugins/macros/macro.cpp b/src/plugins/macros/macro.cpp
index 0443e850e6..4f7e174626 100644
--- a/src/plugins/macros/macro.cpp
+++ b/src/plugins/macros/macro.cpp
@@ -36,7 +36,7 @@
#include <QFileInfo>
#include <QDataStream>
-using namespace Macros;
+using namespace Macros::Internal;
/*!
\class Macros::Macro
diff --git a/src/plugins/macros/macro.h b/src/plugins/macros/macro.h
index e1947f1b09..6a06beb015 100644
--- a/src/plugins/macros/macro.h
+++ b/src/plugins/macros/macro.h
@@ -30,8 +30,6 @@
#ifndef MACROSPLUGIN_MACRO_H
#define MACROSPLUGIN_MACRO_H
-#include "macros_global.h"
-
#include <QList>
#include <QString>
@@ -40,10 +38,11 @@ class QWidget;
QT_END_NAMESPACE
namespace Macros {
+namespace Internal {
class MacroEvent;
-class MACROS_EXPORT Macro
+class Macro
{
public:
Macro();
@@ -72,6 +71,7 @@ private:
MacroPrivate* d;
};
+} // namespace Internal
} // namespace Macros
#endif // MACROSPLUGIN_MACRO_H
diff --git a/src/plugins/macros/macroevent.cpp b/src/plugins/macros/macroevent.cpp
index 9c7aae96da..6c2e925a2d 100644
--- a/src/plugins/macros/macroevent.cpp
+++ b/src/plugins/macros/macroevent.cpp
@@ -33,7 +33,7 @@
#include <QVariant>
#include <QDataStream>
-using namespace Macros;
+using namespace Macros::Internal;
/*!
\class Macros::MacroEvent
diff --git a/src/plugins/macros/macroevent.h b/src/plugins/macros/macroevent.h
index 9345f89dbe..2e12f37704 100644
--- a/src/plugins/macros/macroevent.h
+++ b/src/plugins/macros/macroevent.h
@@ -30,8 +30,6 @@
#ifndef MACROSPLUGIN_MACROEVENT_H
#define MACROSPLUGIN_MACROEVENT_H
-#include "macros_global.h"
-
#include <coreplugin/id.h>
#include <QMap>
@@ -43,8 +41,9 @@ class QDataStream;
QT_END_NAMESPACE
namespace Macros {
+namespace Internal {
-class MACROS_EXPORT MacroEvent
+class MacroEvent
{
public:
MacroEvent();
@@ -66,6 +65,7 @@ private:
MacroEventPrivate* d;
};
+} // namespace Internal
} // namespace Macros
#endif // MACROSPLUGIN_MACROEVENT_H
diff --git a/src/plugins/macros/macrolocatorfilter.cpp b/src/plugins/macros/macrolocatorfilter.cpp
index 2d4d72386f..2bb81904c5 100644
--- a/src/plugins/macros/macrolocatorfilter.cpp
+++ b/src/plugins/macros/macrolocatorfilter.cpp
@@ -55,23 +55,33 @@ MacroLocatorFilter::~MacroLocatorFilter()
QList<Locator::FilterEntry> MacroLocatorFilter::matchesFor(QFutureInterface<Locator::FilterEntry> &future, const QString &entry)
{
Q_UNUSED(future)
- QList<Locator::FilterEntry> result;
+ QList<Locator::FilterEntry> goodEntries;
+ QList<Locator::FilterEntry> betterEntries;
- const QMap<QString, Macro*> &macros = MacroManager::instance()->macros();
+ const Qt::CaseSensitivity caseSensitivity_ = caseSensitivity(entry);
+
+ const QMap<QString, Macro*> &macros = MacroManager::macros();
QMapIterator<QString, Macro*> it(macros);
while (it.hasNext()) {
it.next();
QString name = it.key();
- if (name.contains(entry)) {
+ QList<Locator::FilterEntry> *category = 0;
+ if (name.startsWith(entry, caseSensitivity_))
+ category = &betterEntries;
+ else if (name.contains(entry, caseSensitivity_))
+ category = &goodEntries;
+
+ if (category) {
QVariant id;
Locator::FilterEntry entry(this, it.key(), id, m_icon);
entry.extraInfo = it.value()->description();
- result.append(entry);
+ category->append(entry);
}
}
- return result;
+ betterEntries.append(goodEntries);
+ return betterEntries;
}
void MacroLocatorFilter::accept(Locator::FilterEntry selection) const
diff --git a/src/plugins/macros/macromanager.cpp b/src/plugins/macros/macromanager.cpp
index bb93e12fab..8e57644486 100644
--- a/src/plugins/macros/macromanager.cpp
+++ b/src/plugins/macros/macromanager.cpp
@@ -62,7 +62,6 @@
#include <QFileDialog>
#include <QMessageBox>
-using namespace Macros;
using namespace Macros::Internal;
/*!
@@ -94,7 +93,7 @@ using namespace Macros::Internal;
the action id passed to the ActionManager.
*/
-class Macros::MacroManager::MacroManagerPrivate
+class MacroManager::MacroManagerPrivate
{
public:
MacroManagerPrivate(MacroManager *qq);
@@ -157,7 +156,7 @@ void MacroManager::MacroManagerPrivate::initialize()
static Core::Id makeId(const QString &name)
{
- return Core::Id(Constants::PREFIX_MACRO).withSuffix(name);
+ return Core::Id(Macros::Constants::PREFIX_MACRO).withSuffix(name);
}
void MacroManager::MacroManagerPrivate::addMacro(Macro *macro)
@@ -253,10 +252,10 @@ MacroManager::MacroManager(QObject *parent) :
QObject(parent),
d(new MacroManagerPrivate(this))
{
+ m_instance = this;
registerMacroHandler(d->actionHandler);
registerMacroHandler(d->findHandler);
registerMacroHandler(d->textEditorHandler);
- m_instance = this;
}
MacroManager::~MacroManager()
@@ -291,7 +290,7 @@ void MacroManager::startMacro()
QString executeShortcut = Core::ActionManager::command(Constants::EXECUTE_LAST_MACRO)->defaultKeySequence().toString();
QString help = tr("Macro mode. Type \"%1\" to stop recording and \"%2\" to play it")
.arg(endShortcut).arg(executeShortcut);
- Core::EditorManager::instance()->showEditorStatusBar(
+ Core::EditorManager::showEditorStatusBar(
QLatin1String(Constants::M_STATUS_BUFFER),
help,
tr("Stop Recording Macro"), this, SLOT(endMacro()));
@@ -299,7 +298,7 @@ void MacroManager::startMacro()
void MacroManager::endMacro()
{
- Core::EditorManager::instance()->hideEditorStatusBar(QLatin1String(Constants::M_STATUS_BUFFER));
+ Core::EditorManager::hideEditorStatusBar(QLatin1String(Constants::M_STATUS_BUFFER));
Core::ActionManager::command(Constants::START_MACRO)->action()->setEnabled(true);
Core::ActionManager::command(Constants::END_MACRO)->action()->setEnabled(false);
@@ -360,14 +359,14 @@ void MacroManager::deleteMacro(const QString &name)
}
}
-const QMap<QString,Macro*> &MacroManager::macros() const
+const QMap<QString,Macro*> &MacroManager::macros()
{
- return d->macros;
+ return m_instance->d->macros;
}
void MacroManager::registerMacroHandler(IMacroHandler *handler)
{
- d->handlers.prepend(handler);
+ m_instance->d->handlers.prepend(handler);
}
MacroManager *MacroManager::instance()
@@ -386,13 +385,13 @@ void MacroManager::changeMacro(const QString &name, const QString &description)
d->changeMacroDescription(macro, description);
}
-void Macros::MacroManager::saveLastMacro()
+void MacroManager::saveLastMacro()
{
if (d->currentMacro->events().count())
d->showSaveDialog();
}
-QString Macros::MacroManager::macrosDirectory() const
+QString MacroManager::macrosDirectory()
{
const QString &path =
Core::ICore::userResourcePath() + QLatin1String("/macros");
diff --git a/src/plugins/macros/macromanager.h b/src/plugins/macros/macromanager.h
index 045d140bc5..843c087fa7 100644
--- a/src/plugins/macros/macromanager.h
+++ b/src/plugins/macros/macromanager.h
@@ -30,8 +30,6 @@
#ifndef MACROSPLUGIN_MACROMANAGER_H
#define MACROSPLUGIN_MACROMANAGER_H
-#include "macros_global.h"
-
#include <QObject>
#include <QMap>
@@ -40,28 +38,24 @@ class QAction;
QT_END_NAMESPACE
namespace Macros {
+namespace Internal {
-class Macro;
class IMacroHandler;
+class Macro;
+class MacroOptionsWidget;
+class MacrosPlugin;
-namespace Internal {
- class MacroOptionsWidget;
-}
-
-class MACROS_EXPORT MacroManager : public QObject
+class MacroManager : public QObject
{
Q_OBJECT
public:
- explicit MacroManager(QObject *parent = 0);
- ~MacroManager();
-
static MacroManager *instance();
- const QMap<QString, Macro *> &macros() const;
+ static const QMap<QString, Macro *> &macros();
- void registerMacroHandler(IMacroHandler *handler);
+ static void registerMacroHandler(IMacroHandler *handler);
- QString macrosDirectory() const;
+ static QString macrosDirectory();
public slots:
void startMacro();
@@ -77,12 +71,18 @@ protected:
void changeMacro(const QString &name, const QString &description);
private:
+ explicit MacroManager(QObject *parent = 0);
+ ~MacroManager();
+
static MacroManager *m_instance;
class MacroManagerPrivate;
MacroManagerPrivate* d;
+
+ friend class Internal::MacrosPlugin;
};
+} // namespace Internal
} // namespace Macros
#endif // MACROSPLUGIN_MACROMANAGER_H
diff --git a/src/plugins/macros/macrooptionspage.h b/src/plugins/macros/macrooptionspage.h
index 6e9f8ea1bf..a1b3575744 100644
--- a/src/plugins/macros/macrooptionspage.h
+++ b/src/plugins/macros/macrooptionspage.h
@@ -30,8 +30,6 @@
#ifndef MACROSPLUGIN_MACROOPTIONSPAGE_H
#define MACROSPLUGIN_MACROOPTIONSPAGE_H
-#include "macros_global.h"
-
#include <coreplugin/dialogs/ioptionspage.h>
namespace Macros {
@@ -39,7 +37,7 @@ namespace Internal {
class MacroOptionsWidget;
-class MACROS_EXPORT MacroOptionsPage : public Core::IOptionsPage
+class MacroOptionsPage : public Core::IOptionsPage
{
Q_OBJECT
diff --git a/src/plugins/macros/macrooptionswidget.cpp b/src/plugins/macros/macrooptionswidget.cpp
index fede998dfa..dfe386d306 100644
--- a/src/plugins/macros/macrooptionswidget.cpp
+++ b/src/plugins/macros/macrooptionswidget.cpp
@@ -97,9 +97,9 @@ void MacroOptionsWidget::initialize()
void MacroOptionsWidget::createTable()
{
- QDir dir(MacroManager::instance()->macrosDirectory());
+ QDir dir(MacroManager::macrosDirectory());
const Core::Id base = Core::Id(Constants::PREFIX_MACRO);
- QMapIterator<QString, Macro *> it(MacroManager::instance()->macros());
+ QMapIterator<QString, Macro *> it(MacroManager::macros());
while (it.hasNext()) {
it.next();
QFileInfo fileInfo(it.value()->fileName());
diff --git a/src/plugins/macros/macros.pro b/src/plugins/macros/macros.pro
index e328cd59a3..2f43549dba 100644
--- a/src/plugins/macros/macros.pro
+++ b/src/plugins/macros/macros.pro
@@ -3,7 +3,6 @@ DEFINES += MACROS_LIBRARY
include(../../qtcreatorplugin.pri)
HEADERS += macrosplugin.h \
- macros_global.h \
macrosconstants.h \
macro.h \
macroevent.h \
diff --git a/src/plugins/macros/macros.qbs b/src/plugins/macros/macros.qbs
index c30877a7cc..6dcc377abe 100644
--- a/src/plugins/macros/macros.qbs
+++ b/src/plugins/macros/macros.qbs
@@ -33,7 +33,6 @@ QtcPlugin {
"macrooptionswidget.h",
"macrooptionswidget.ui",
"macros.qrc",
- "macros_global.h",
"macrosconstants.h",
"macrosplugin.cpp",
"macrosplugin.h",
diff --git a/src/plugins/macros/macros_global.h b/src/plugins/macros/macros_global.h
deleted file mode 100644
index 397a070fca..0000000000
--- a/src/plugins/macros/macros_global.h
+++ /dev/null
@@ -1,41 +0,0 @@
-/**************************************************************************
-**
-** Copyright (c) 2013 Nicolas Arnaud-Cormos
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-#ifndef MACROSPLUGIN_MACROS_GLOBAL_H
-#define MACROSPLUGIN_MACROS_GLOBAL_H
-
-#include <qglobal.h>
-
-#if defined(MACROS_LIBRARY)
-# define MACROS_EXPORT Q_DECL_EXPORT
-#else
-# define MACROS_EXPORT Q_DECL_IMPORT
-#endif
-
-#endif // MACROSPLUGIN_MACROS_GLOBAL_H
diff --git a/src/plugins/macros/macrosplugin.cpp b/src/plugins/macros/macrosplugin.cpp
index b31aa2f559..e3d445aada 100644
--- a/src/plugins/macros/macrosplugin.cpp
+++ b/src/plugins/macros/macrosplugin.cpp
@@ -50,7 +50,6 @@
#include <QKeySequence>
#include <QMenu>
-using namespace Macros;
using namespace Macros::Internal;
MacrosPlugin::MacrosPlugin()
@@ -59,6 +58,7 @@ MacrosPlugin::MacrosPlugin()
MacrosPlugin::~MacrosPlugin()
{
+ delete m_macroManager;
}
bool MacrosPlugin::initialize(const QStringList &arguments, QString *errorMessage)
diff --git a/src/plugins/macros/macrosplugin.h b/src/plugins/macros/macrosplugin.h
index 4617dfdb90..9eb196dcc0 100644
--- a/src/plugins/macros/macrosplugin.h
+++ b/src/plugins/macros/macrosplugin.h
@@ -33,11 +33,10 @@
#include <extensionsystem/iplugin.h>
namespace Macros {
+namespace Internal {
class MacroManager;
-namespace Internal {
-
class MacrosPlugin : public ExtensionSystem::IPlugin
{
Q_OBJECT
diff --git a/src/plugins/macros/texteditormacrohandler.cpp b/src/plugins/macros/texteditormacrohandler.cpp
index 7e6e4f0eec..8d156eac9e 100644
--- a/src/plugins/macros/texteditormacrohandler.cpp
+++ b/src/plugins/macros/texteditormacrohandler.cpp
@@ -61,14 +61,14 @@ static quint8 COUNT = 5;
TextEditorMacroHandler::TextEditorMacroHandler():
IMacroHandler()
{
- const Core::EditorManager *editorManager = Core::EditorManager::instance();
+ const QObject *editorManager = Core::EditorManager::instance();
connect(editorManager, SIGNAL(currentEditorChanged(Core::IEditor*)),
this, SLOT(changeEditor(Core::IEditor*)));
connect(editorManager, SIGNAL(editorAboutToClose(Core::IEditor*)),
this, SLOT(closeEditor(Core::IEditor*)));
}
-void TextEditorMacroHandler::startRecording(Macros::Macro *macro)
+void TextEditorMacroHandler::startRecording(Macro *macro)
{
IMacroHandler::startRecording(macro);
if (isRecording() && m_currentEditor && m_currentEditor->widget())
@@ -78,7 +78,7 @@ void TextEditorMacroHandler::startRecording(Macros::Macro *macro)
Core::ActionManager::command(TextEditor::Constants::COMPLETE_THIS)->shortcut()->blockSignals(true);
}
-void TextEditorMacroHandler::endRecordingMacro(Macros::Macro *macro)
+void TextEditorMacroHandler::endRecordingMacro(Macro *macro)
{
if (m_currentEditor && m_currentEditor->widget())
m_currentEditor->widget()->removeEventFilter(this);
diff --git a/src/plugins/macros/texteditormacrohandler.h b/src/plugins/macros/texteditormacrohandler.h
index b14065f854..c04710a0da 100644
--- a/src/plugins/macros/texteditormacrohandler.h
+++ b/src/plugins/macros/texteditormacrohandler.h
@@ -43,18 +43,18 @@ class ITextEditor;
namespace Macros {
namespace Internal {
-class TextEditorMacroHandler : public Macros::IMacroHandler
+class TextEditorMacroHandler : public IMacroHandler
{
Q_OBJECT
public:
TextEditorMacroHandler();
- void startRecording(Macros::Macro *macro);
- void endRecordingMacro(Macros::Macro *macro);
+ void startRecording(Macro *macro);
+ void endRecordingMacro(Macro *macro);
- bool canExecuteEvent(const Macros::MacroEvent &macroEvent);
- bool executeEvent(const Macros::MacroEvent &macroEvent);
+ bool canExecuteEvent(const MacroEvent &macroEvent);
+ bool executeEvent(const MacroEvent &macroEvent);
bool eventFilter(QObject *watched, QEvent *event);