void QgsDockWidget::setToggleVisibilityAction( QAction *action ) { mAction = action; if ( !mAction->isCheckable() ) mAction->setCheckable( true ); mAction->setChecked( isUserVisible() ); connect( mAction, &QAction::toggled, this, [ = ]( bool visible ) { setUserVisible( visible ); } ); connect( this, &QgsDockWidget::visibilityChanged, mAction, [ = ]( bool visible ) { mAction->setChecked( visible ); } ); }
void QgsDockWidget::toggleUserVisible() { setUserVisible( !isUserVisible() ); }
mMenuProvider = new QgsLayoutAppMenuProvider( this ); mView->setMenuProvider( mMenuProvider ); int minDockWidth( fontMetrics().width( QStringLiteral( "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ) ) ); setTabPosition( Qt::AllDockWidgetAreas, QTabWidget::North ); mGeneralDock = new QgsDockWidget( tr( "Layout" ), this ); mGeneralDock->setObjectName( QStringLiteral( "LayoutDock" ) ); mGeneralDock->setMinimumWidth( minDockWidth ); mGeneralPropertiesStack = new QgsPanelWidgetStack(); mGeneralDock->setWidget( mGeneralPropertiesStack ); mPanelsMenu->addAction( mGeneralDock->toggleViewAction() ); connect( mActionLayoutProperties, &QAction::triggered, this, [ = ] { mGeneralDock->setUserVisible( true ); } ); mItemDock = new QgsDockWidget( tr( "Item properties" ), this ); mItemDock->setObjectName( QStringLiteral( "ItemDock" ) ); mItemDock->setMinimumWidth( minDockWidth ); mItemPropertiesStack = new QgsPanelWidgetStack(); mItemDock->setWidget( mItemPropertiesStack ); mPanelsMenu->addAction( mItemDock->toggleViewAction() ); mGuideDock = new QgsDockWidget( tr( "Guides" ), this ); mGuideDock->setObjectName( QStringLiteral( "GuideDock" ) ); mGuideDock->setMinimumWidth( minDockWidth ); mGuideStack = new QgsPanelWidgetStack(); mGuideDock->setWidget( mGuideStack ); mPanelsMenu->addAction( mGuideDock->toggleViewAction() );