Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
lineedit_taskmenu.cpp
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
3
6
7#include <QtDesigner/abstractformwindow.h>
8
9#include <QtWidgets/qstyle.h>
10#include <QtWidgets/qstyleoption.h>
11
12#include <QtGui/qaction.h>
13
15
16using namespace Qt::StringLiterals;
17
18namespace qdesigner_internal {
19
20// -------- LineEditTaskMenuInlineEditor
22{
23public:
24 LineEditTaskMenuInlineEditor(QLineEdit *button, QObject *parent);
25
26protected:
27 QRect editRectangle() const override;
28};
29
34
36{
37 QStyleOption opt;
38 opt.initFrom(widget());
39 return opt.rect;
40}
41
42// --------------- LineEditTaskMenu
43LineEditTaskMenu::LineEditTaskMenu(QLineEdit *lineEdit, QObject *parent) :
44 QDesignerTaskMenu(lineEdit, parent),
45 m_editTextAction(new QAction(tr("Change text..."), this))
46{
47 TaskMenuInlineEditor *editor = new LineEditTaskMenuInlineEditor(lineEdit, this);
48 connect(m_editTextAction, &QAction::triggered, editor, &LineEditTaskMenuInlineEditor::editText);
49 m_taskActions.append(m_editTextAction);
50
51 QAction *sep = new QAction(this);
52 sep->setSeparator(true);
53 m_taskActions.append(sep);
54}
55
57{
58 return m_editTextAction;
59}
60
62{
63 return m_taskActions + QDesignerTaskMenu::taskActions();
64}
65
66}
67
68QT_END_NAMESPACE
LineEditTaskMenuInlineEditor(QLineEdit *button, QObject *parent)
QList< QAction * > taskActions() const override
QAction * preferredEditAction() const override
Combined button and popup list for selecting options.
Auxiliary methods to store/retrieve settings.