File tree Expand file tree Collapse file tree 4 files changed +27
-5
lines changed Expand file tree Collapse file tree 4 files changed +27
-5
lines changed Original file line number Diff line number Diff line change 55 <provider copy-of =" extension" id =" org.eclipse.cdt.ui.UserLanguageSettingsProvider" />
66 <provider-reference id =" org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref =" shared-provider" />
77 <provider class =" org.eclipse.cdt.managedbuilder.language.settings.providers.GCCBuildCommandParser" id =" org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser" keep-relative-paths =" false" name =" CDT GCC Build Output Parser" parameter =" (g?cc)|([gc]\+\+)|(clang)" prefer-non-shared =" true" />
8- <provider class =" org.eclipse.cdt.managedbuilder.internal.language.settings.providers.GCCBuiltinSpecsDetectorMinGW" console =" false" env-hash =" -1242828358748104657 " id =" org.eclipse.cdt.managedbuilder.core.GCCBuiltinSpecsDetectorMinGW" keep-relative-paths =" false" name =" CDT GCC Built-in Compiler Settings MinGW" parameter =" ${COMMAND} ${FLAGS} -E -P -v -dD " ${INPUTS}" " prefer-non-shared =" true" >
8+ <provider class =" org.eclipse.cdt.managedbuilder.internal.language.settings.providers.GCCBuiltinSpecsDetectorMinGW" console =" false" env-hash =" -703253235712566569 " id =" org.eclipse.cdt.managedbuilder.core.GCCBuiltinSpecsDetectorMinGW" keep-relative-paths =" false" name =" CDT GCC Built-in Compiler Settings MinGW" parameter =" ${COMMAND} ${FLAGS} -E -P -v -dD " ${INPUTS}" " prefer-non-shared =" true" >
99 <language-scope id =" org.eclipse.cdt.core.gcc" />
1010 <language-scope id =" org.eclipse.cdt.core.g++" />
1111 </provider >
Original file line number Diff line number Diff line change @@ -56,7 +56,7 @@ CMainWindow::CMainWindow(QWidget *parent)
5656 TableDockWidget->resize (250 , 150 );
5757 TableDockWidget->setMinimumSize (200 ,150 );
5858 DockManager->addDockWidgetTabToArea (TableDockWidget, CentralDockArea);
59- // auto TableArea = DockManager->addDockWidget(DockWidgetArea::LeftDockWidgetArea, TableDockWidget);
59+ auto TableArea = DockManager->addDockWidget (DockWidgetArea::LeftDockWidgetArea, TableDockWidget);
6060 ui->menuView ->addAction (TableDockWidget->toggleViewAction ());
6161
6262 table = new QTableWidget ();
@@ -67,8 +67,7 @@ CMainWindow::CMainWindow(QWidget *parent)
6767 TableDockWidget->setMinimumSizeHintMode (CDockWidget::MinimumSizeHintFromDockWidget);
6868 TableDockWidget->resize (250 , 150 );
6969 TableDockWidget->setMinimumSize (200 ,150 );
70- auto TableArea = DockManager->addDockWidget (DockWidgetArea::LeftDockWidgetArea, TableDockWidget);
71- // DockManager->addDockWidget(DockWidgetArea::BottomDockWidgetArea, TableDockWidget, TableArea);
70+ DockManager->addDockWidget (DockWidgetArea::BottomDockWidgetArea, TableDockWidget, TableArea);
7271 ui->menuView ->addAction (TableDockWidget->toggleViewAction ());
7372
7473 QTableWidget* propertiesTable = new QTableWidget ();
Original file line number Diff line number Diff line change @@ -505,6 +505,20 @@ CDockManager::CDockManager(QWidget *parent) :
505505// ============================================================================
506506CDockManager::~CDockManager ()
507507{
508+ // fix memory leaks, see https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System/issues/307
509+ std::vector<ads::CDockAreaWidget*> areas;
510+ for ( int i = 0 ; i != dockAreaCount (); ++i )
511+ {
512+ areas.push_back ( dockArea (i) );
513+ }
514+ for ( auto area : areas )
515+ {
516+ for ( auto widget : area->dockWidgets () )
517+ delete widget;
518+
519+ delete area;
520+ }
521+
508522 auto FloatingWidgets = d->FloatingWidgets ;
509523 for (auto FloatingWidget : FloatingWidgets)
510524 {
@@ -912,6 +926,8 @@ void CDockManager::loadPerspectives(QSettings& Settings)
912926 }
913927
914928 Settings.endArray ();
929+ Q_EMIT perspectiveListChanged ();
930+ Q_EMIT perspectiveListLoaded ();
915931}
916932
917933
Original file line number Diff line number Diff line change @@ -521,10 +521,17 @@ public Q_SLOTS:
521521
522522Q_SIGNALS:
523523 /* *
524- * This signal is emitted if the list of perspectives changed
524+ * This signal is emitted if the list of perspectives changed.
525+ * The list of perspectives changes if perspectives are added, removed
526+ * or if the perspective list has been loaded
525527 */
526528 void perspectiveListChanged ();
527529
530+ /* *
531+ * This signal is emitted if the perspective list has been loaded
532+ */
533+ void perspectiveListLoaded ();
534+
528535 /* *
529536 * This signal is emitted if perspectives have been removed
530537 */
You can’t perform that action at this time.
0 commit comments