Skip to content

Commit 07f939e

Browse files
committed
Fix 'actions' button in attribute table dialog only shows menu after
extended click and hold (cherry-picked from 556668e)
1 parent deac239 commit 07f939e

File tree

3 files changed

+108
-81
lines changed

3 files changed

+108
-81
lines changed

src/app/qgsattributetabledialog.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,14 @@ QgsAttributeTableDialog::QgsAttributeTableDialog( QgsVectorLayer *layer, QgsAttr
187187
mActionVisibleFilter->setIcon( filterIcon );
188188
mActionEditedFilter->setIcon( filterIcon );
189189

190+
mActionFeatureActions = new QToolButton();
191+
mActionFeatureActions->setAutoRaise( false );
192+
mActionFeatureActions->setPopupMode( QToolButton::InstantPopup );
193+
mActionFeatureActions->setIcon( QgsApplication::getThemeIcon( QStringLiteral( "/mAction.svg" ) ) );
194+
mActionFeatureActions->setText( tr( "Actions" ) );
195+
mActionFeatureActions->setToolTip( tr( "Actions" ) );
196+
mToolbar->addWidget( mActionFeatureActions );
197+
190198
// Connect filter signals
191199
connect( mActionAdvancedFilter, &QAction::triggered, this, &QgsAttributeTableDialog::filterExpressionBuilder );
192200
connect( mActionShowAllFilter, &QAction::triggered, this, &QgsAttributeTableDialog::filterShowAll );

src/app/qgsattributetabledialog.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -228,6 +228,7 @@ class APP_EXPORT QgsAttributeTableDialog : public QDialog, private Ui::QgsAttrib
228228

229229
private:
230230
QMenu *mMenuActions = nullptr;
231+
QToolButton *mActionFeatureActions = nullptr;
231232

232233
QgsDockWidget *mDock = nullptr;
233234
QgsDistanceArea *myDa = nullptr;

src/ui/qgsattributetabledialog.ui

Lines changed: 99 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,77 @@
2929
<property name="spacing">
3030
<number>3</number>
3131
</property>
32+
<item row="6" column="0">
33+
<widget class="QgsDualView" name="mMainView">
34+
<property name="currentIndex">
35+
<number>-1</number>
36+
</property>
37+
</widget>
38+
</item>
39+
<item row="5" column="0">
40+
<widget class="QFrame" name="mUpdateExpressionBox">
41+
<layout class="QHBoxLayout" name="horizontalLayout_3">
42+
<property name="spacing">
43+
<number>3</number>
44+
</property>
45+
<property name="leftMargin">
46+
<number>3</number>
47+
</property>
48+
<property name="topMargin">
49+
<number>1</number>
50+
</property>
51+
<property name="rightMargin">
52+
<number>0</number>
53+
</property>
54+
<property name="bottomMargin">
55+
<number>3</number>
56+
</property>
57+
<item>
58+
<widget class="QgsFieldComboBox" name="mFieldCombo"/>
59+
</item>
60+
<item>
61+
<widget class="QLabel" name="label">
62+
<property name="sizePolicy">
63+
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
64+
<horstretch>0</horstretch>
65+
<verstretch>0</verstretch>
66+
</sizepolicy>
67+
</property>
68+
<property name="text">
69+
<string>=</string>
70+
</property>
71+
</widget>
72+
</item>
73+
<item>
74+
<widget class="QgsFieldExpressionWidget" name="mUpdateExpressionText" native="true">
75+
<property name="sizePolicy">
76+
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
77+
<horstretch>0</horstretch>
78+
<verstretch>0</verstretch>
79+
</sizepolicy>
80+
</property>
81+
<property name="focusPolicy">
82+
<enum>Qt::StrongFocus</enum>
83+
</property>
84+
</widget>
85+
</item>
86+
<item>
87+
<widget class="QToolButton" name="mRunFieldCalc">
88+
<property name="text">
89+
<string>Update All</string>
90+
</property>
91+
</widget>
92+
</item>
93+
<item>
94+
<widget class="QToolButton" name="mRunFieldCalcSelected">
95+
<property name="text">
96+
<string>Update Selected</string>
97+
</property>
98+
</widget>
99+
</item>
100+
</layout>
101+
</widget>
102+
</item>
32103
<item row="8" column="0">
33104
<layout class="QHBoxLayout">
34105
<property name="leftMargin">
@@ -189,78 +260,6 @@
189260
<addaction name="separator"/>
190261
<addaction name="mActionSetStyles"/>
191262
<addaction name="separator"/>
192-
<addaction name="mActionFeatureActions"/>
193-
</widget>
194-
</item>
195-
<item row="6" column="0">
196-
<widget class="QgsDualView" name="mMainView">
197-
<property name="currentIndex">
198-
<number>-1</number>
199-
</property>
200-
</widget>
201-
</item>
202-
<item row="5" column="0">
203-
<widget class="QFrame" name="mUpdateExpressionBox">
204-
<layout class="QHBoxLayout" name="horizontalLayout_3">
205-
<property name="spacing">
206-
<number>3</number>
207-
</property>
208-
<property name="leftMargin">
209-
<number>3</number>
210-
</property>
211-
<property name="topMargin">
212-
<number>1</number>
213-
</property>
214-
<property name="rightMargin">
215-
<number>0</number>
216-
</property>
217-
<property name="bottomMargin">
218-
<number>3</number>
219-
</property>
220-
<item>
221-
<widget class="QgsFieldComboBox" name="mFieldCombo"/>
222-
</item>
223-
<item>
224-
<widget class="QLabel" name="label">
225-
<property name="sizePolicy">
226-
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
227-
<horstretch>0</horstretch>
228-
<verstretch>0</verstretch>
229-
</sizepolicy>
230-
</property>
231-
<property name="text">
232-
<string>=</string>
233-
</property>
234-
</widget>
235-
</item>
236-
<item>
237-
<widget class="QgsFieldExpressionWidget" name="mUpdateExpressionText" native="true">
238-
<property name="sizePolicy">
239-
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
240-
<horstretch>0</horstretch>
241-
<verstretch>0</verstretch>
242-
</sizepolicy>
243-
</property>
244-
<property name="focusPolicy">
245-
<enum>Qt::StrongFocus</enum>
246-
</property>
247-
</widget>
248-
</item>
249-
<item>
250-
<widget class="QToolButton" name="mRunFieldCalc">
251-
<property name="text">
252-
<string>Update All</string>
253-
</property>
254-
</widget>
255-
</item>
256-
<item>
257-
<widget class="QToolButton" name="mRunFieldCalcSelected">
258-
<property name="text">
259-
<string>Update Selected</string>
260-
</property>
261-
</widget>
262-
</item>
263-
</layout>
264263
</widget>
265264
</item>
266265
</layout>
@@ -634,15 +633,6 @@
634633
<string>Conditional formatting</string>
635634
</property>
636635
</action>
637-
<action name="mActionFeatureActions">
638-
<property name="icon">
639-
<iconset resource="../../images/images.qrc">
640-
<normaloff>:/images/themes/default/mAction.svg</normaloff>:/images/themes/default/mAction.svg</iconset>
641-
</property>
642-
<property name="text">
643-
<string>Actions</string>
644-
</property>
645-
</action>
646636
</widget>
647637
<customwidgets>
648638
<customwidget>
@@ -681,6 +671,34 @@
681671
</tabstops>
682672
<resources>
683673
<include location="../../images/images.qrc"/>
674+
<include location="../../images/images.qrc"/>
675+
<include location="../../images/images.qrc"/>
676+
<include location="../../images/images.qrc"/>
677+
<include location="../../images/images.qrc"/>
678+
<include location="../../images/images.qrc"/>
679+
<include location="../../images/images.qrc"/>
680+
<include location="../../images/images.qrc"/>
681+
<include location="../../images/images.qrc"/>
682+
<include location="../../images/images.qrc"/>
683+
<include location="../../images/images.qrc"/>
684+
<include location="../../images/images.qrc"/>
685+
<include location="../../images/images.qrc"/>
686+
<include location="../../images/images.qrc"/>
687+
<include location="../../images/images.qrc"/>
688+
<include location="../../images/images.qrc"/>
689+
<include location="../../images/images.qrc"/>
690+
<include location="../../images/images.qrc"/>
691+
<include location="../../images/images.qrc"/>
692+
<include location="../../images/images.qrc"/>
693+
<include location="../../images/images.qrc"/>
694+
<include location="../../images/images.qrc"/>
695+
<include location="../../images/images.qrc"/>
696+
<include location="../../images/images.qrc"/>
697+
<include location="../../images/images.qrc"/>
698+
<include location="../../images/images.qrc"/>
699+
<include location="../../images/images.qrc"/>
700+
<include location="../../images/images.qrc"/>
701+
<include location="../../images/images.qrc"/>
684702
</resources>
685703
<connections>
686704
<connection>

0 commit comments

Comments
 (0)