Mercurial > octave
changeset 24693:fe9bc1129922
replace main window in variable editor by normal widget with layout
* variable-editor.cc (variable_editor): no main window, widget with layout,
toolbar and tab widget is created and set as widget of the dick widget;
(~variable_editor): removed
* variable-editor.h: default destructor, no main window
author | Torsten <mttl@mailbox.org> |
---|---|
date | Tue, 06 Feb 2018 20:01:25 +0100 |
parents | fa56428a2e91 |
children | 9b4edcc62936 |
files | libgui/src/variable-editor.cc libgui/src/variable-editor.h |
diffstat | 2 files changed, 22 insertions(+), 20 deletions(-) [+] |
line wrap: on
line diff
--- a/libgui/src/variable-editor.cc Tue Feb 06 10:38:29 2018 -0800 +++ b/libgui/src/variable-editor.cc Tue Feb 06 20:01:25 2018 +0100 @@ -82,11 +82,10 @@ } variable_editor::variable_editor (QWidget *p) - : octave_dock_widget (p), m_main (new QMainWindow ()), - m_tool_bar (new QToolBar (m_main)), - m_tab_widget (new QTabWidget (m_main)), m_default_width (30), - m_default_height (100), m_add_font_height (0), m_use_terminal_font (true), - m_alternate_rows (true), m_stylesheet (""), m_font (), m_sel_font (), + : octave_dock_widget (p), + m_default_width (30), m_default_height (100), m_add_font_height (0), + m_use_terminal_font (true), m_alternate_rows (true), + m_stylesheet (""), m_font (), m_sel_font (), m_table_colors () { // Use a MainWindow. @@ -96,39 +95,44 @@ setStatusTip (tr ("Edit variables.")); setWindowIcon (QIcon (":/actions/icons/logo.png")); + // The dock widget's widget + + QWidget *container = new QWidget (this); + // Tool Bar. + m_tool_bar = new QToolBar ("", container); + m_tool_bar->setAllowedAreas (Qt::TopToolBarArea); + m_tool_bar->setMovable (false); + construct_tool_bar (); - m_main->addToolBar (m_tool_bar); for (int i = 0; i < resource_manager::varedit_color_chars ().length (); i++) m_table_colors.append (QColor (Qt::white)); // Tab Widget. + m_tab_widget = new QTabWidget (container); m_tab_widget->setTabsClosable (true); m_tab_widget->setMovable (true); connect (m_tab_widget, SIGNAL (tabCloseRequested (int)), this, SLOT (closeTab (int))); - m_main->setCentralWidget (m_tab_widget); + // Layout the widgets vertically with the toolbar on top + QVBoxLayout *vbox_layout = new QVBoxLayout (); + vbox_layout->setSpacing (0); + vbox_layout->addWidget (m_tool_bar); + vbox_layout->addWidget (m_tab_widget); + vbox_layout->setMargin (1); - // Main. - - m_main->setParent (this); - setWidget (m_main); + container->setLayout (vbox_layout); + setWidget (container); connect (this, SIGNAL (command_requested (const QString&)), p, SLOT (execute_command_in_terminal (const QString&))); } -variable_editor::~variable_editor (void) -{ - // m_tool_bar and m_tab_widget are contained within m_main. - - delete m_main; -} void variable_editor::edit_variable (const QString& name, const octave_value& val)
--- a/libgui/src/variable-editor.h Tue Feb 06 10:38:29 2018 -0800 +++ b/libgui/src/variable-editor.h Tue Feb 06 20:01:25 2018 +0100 @@ -46,7 +46,7 @@ variable_editor (QWidget *parent = nullptr); - ~variable_editor (void); + ~variable_editor (void) = default; // No copying! @@ -118,8 +118,6 @@ private: - QMainWindow *m_main; - QToolBar *m_tool_bar; QTabWidget *m_tab_widget;