summaryrefslogtreecommitdiffstats
path: root/src/shared
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2018-11-08 09:21:59 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2018-11-27 14:12:46 +0000
commit6ea96cfb61a619583555cf301994f32cbc75a4d8 (patch)
treebd88066b742211fee78df5f98675c88fe6e0f4ae /src/shared
parentfe67c58e713a2f3df3fb84f27f3a3d5223900b42 (diff)
Qt Designer: Add find functionality to the style sheet editor
Add a helper createFindAction() to AbstractFindWidget to create the find action, factoring out duplicated code and add a TextFindWidget to the style sheet editor, similar to the code dialog. For modal dialogs, this requires overriding the key event handling of QDialog to prevent it from closing on Enter. Fixes: QTBUG-71650 Change-Id: Iecb78f9849936407248edf74cf3782cc34ff4e42 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Diffstat (limited to 'src/shared')
-rw-r--r--src/shared/findwidget/abstractfindwidget.cpp19
-rw-r--r--src/shared/findwidget/abstractfindwidget.h2
2 files changed, 20 insertions, 1 deletions
diff --git a/src/shared/findwidget/abstractfindwidget.cpp b/src/shared/findwidget/abstractfindwidget.cpp
index d00a3fd97..f554e935f 100644
--- a/src/shared/findwidget/abstractfindwidget.cpp
+++ b/src/shared/findwidget/abstractfindwidget.cpp
@@ -53,16 +53,20 @@
#include "abstractfindwidget.h"
+#include <QtCore/QCoreApplication>
#include <QtCore/QEvent>
#include <QtCore/QFile>
#include <QtCore/QTimer>
-#include <QtWidgets/QCheckBox>
#include <QtGui/QKeyEvent>
+
+#include <QtWidgets/QCheckBox>
+#include <QtWidgets/QAction>
#include <QtWidgets/QLabel>
#include <QtWidgets/QLayout>
#include <QtWidgets/QLineEdit>
#include <QtWidgets/QSpacerItem>
+#include <QtWidgets/QShortcut>
#include <QtWidgets/QToolButton>
QT_BEGIN_NAMESPACE
@@ -203,6 +207,19 @@ QIcon AbstractFindWidget::findIconSet()
}
/*!
+ Creates an actions with standard icon and shortcut to activate the widget.
+ */
+QAction *AbstractFindWidget::createFindAction(QObject *parent)
+{
+
+ auto result = new QAction(AbstractFindWidget::findIconSet(),
+ tr("&Find in Text..."), parent);
+ connect(result, &QAction::triggered, this, &AbstractFindWidget::activate);
+ result->setShortcut(QKeySequence::Find);
+ return result;
+}
+
+/*!
Activates the find widget, making it visible and having focus on its input
field.
*/
diff --git a/src/shared/findwidget/abstractfindwidget.h b/src/shared/findwidget/abstractfindwidget.h
index 9560c2c5e..5e04456c9 100644
--- a/src/shared/findwidget/abstractfindwidget.h
+++ b/src/shared/findwidget/abstractfindwidget.h
@@ -45,6 +45,7 @@
QT_BEGIN_NAMESPACE
+class QAction;
class QCheckBox;
class QEvent;
class QKeyEvent;
@@ -74,6 +75,7 @@ public:
bool eventFilter(QObject *object, QEvent *e) override;
static QIcon findIconSet();
+ QAction *createFindAction(QObject *parent);
public slots:
void activate();