Really hide actions menu from forms when empty

because actions() does something else
This commit is contained in:
Alessandro Pasotti 2020-02-19 16:34:47 +01:00 committed by Nyall Dawson
parent dbf999b69f
commit bcf0e4838c
3 changed files with 13 additions and 1 deletions

View File

@ -205,3 +205,8 @@ QgsExpressionContextScope QgsActionMenu::expressionContextScope() const
{
return mExpressionContextScope;
}
QList<QgsAction> QgsActionMenu::menuActions()
{
return mActions;
}

View File

@ -112,6 +112,13 @@ class GUI_EXPORT QgsActionMenu : public QMenu
*/
QgsExpressionContextScope expressionContextScope() const;
/**
* Returns menu actions
*
* \since QGIS 3.12
*/
QList<QgsAction> menuActions();
signals:
void reinit();

View File

@ -122,7 +122,7 @@ void QgsAttributeDialog::init( QgsVectorLayer *layer, QgsFeature *feature, const
connect( layer, &QObject::destroyed, this, &QWidget::close );
mMenu = new QgsActionMenu( layer, mAttributeForm->feature(), QStringLiteral( "Feature" ), this );
if ( !mMenu->actions().isEmpty() )
if ( !mMenu->menuActions().isEmpty() )
{
QMenuBar *menuBar = new QMenuBar( this );
menuBar->addMenu( mMenu );