diff libgui/src/files-dock-widget.cc @ 16798:d749c9b588e5

make stand-alone windows from dock widgets when floating (bug #38785) * octave-dock-widget.cc: new file, (constructor): moved from octave-dock-widget.h, disable floating and closing by qt, add custom title bar with buttons for closing and floating, (destructor): saving state and geometry depending on state, (set_title): new function for setting the title of the custom title bar, (make_window): make dock widget a stand-alone window by reparenting to 0 and restore last geometry, (make_widget): readd the widget to the main window, the last position and size can not be restored due to previous reparenting (change_floating): slot for dock button in title bar (change_visibility): slot for hiding the widget * octave-dock-widget.h: removed signal connection and slot for floating by qt, moved constructor to *.cc, declaration of new functions and slots (main_win): new function returning the main window * main-window.cc(notice-settings): when updating icons, use a list of all dock widgets instead of searching childrens that may have set their parent to 0 (set_window_layout): use make_window instead of setWindowsFlag for floating, do not use grouping in settings because of possibly nested groups (write_settings): saving the state and geometry of the dock-widgets is moved into the dock widget's destructors main-window.n(dock_widget_list): function returning a list of all dock widgets * documentation-dock-widget.cc, files-dock-widget.cc, history-dock-widget.cc, file-editor.cc, terminal-dock-widget.cc, workspace-view.cc: use new function set_title instead of setWindowTitle * files-dock-widget.cc, file-editor.cc, : replace parent () by main_win () * widget-dock.png, widget-undock.png, widget-close.png: new icons * resource.qrc: new icons widget-dock.png, widget-undock.png, widget-close.png * module-mk: new icons widget-dock.png, widget-undock.png, widget-close.png and new file octave-dock-widget.cc
author Torsten <ttl@justmail.de>
date Fri, 21 Jun 2013 22:40:53 +0200
parents 42555422e326
children a86327a7d9fb
line wrap: on
line diff
--- a/libgui/src/files-dock-widget.cc	Fri Jun 21 20:50:55 2013 +0200
+++ b/libgui/src/files-dock-widget.cc	Fri Jun 21 22:40:53 2013 +0200
@@ -64,7 +64,7 @@
 {
   setObjectName ("FilesDockWidget");
   setWindowIcon (QIcon(":/actions/icons/logo.png"));
-  setWindowTitle (tr ("File Browser"));
+  set_title (tr ("File Browser"));
   setToolTip (tr ("Browse your files."));
 
   QWidget *container = new QWidget (this);
@@ -72,10 +72,10 @@
   setWidget (container);
 
   connect (this, SIGNAL (open_file (const QString&)),
-           parent (), SLOT (open_file (const QString&)));
+           main_win (), SLOT (open_file (const QString&)));
 
   connect (this, SIGNAL (displayed_directory_changed (const QString&)),
-           parent (), SLOT (set_current_working_directory (const QString&)));
+           main_win (), SLOT (set_current_working_directory (const QString&)));
 
   // Create a toolbar
   _navigation_tool_bar = new QToolBar ("", container);
@@ -201,7 +201,7 @@
            this, SLOT (set_current_directory (const QString &)));
 
   connect (this, SIGNAL (run_file_signal (const QFileInfo&)),
-           parent (), SLOT (run_file_in_terminal (const QFileInfo&)));
+           main_win (), SLOT (run_file_in_terminal (const QFileInfo&)));
 
   QCompleter *completer = new QCompleter (_file_system_model, this);
   _current_directory->setCompleter (completer);