Mercurial > hg > octave-nkf
changeset 18306:4dadae02bd4c gui-release
max. width of editor tabs limited and configurable
* settings-dialog.ui: new spin box for max. tab width
* settings-dialog.cc (constructor): set spin box value from settings file;
(write_changed_settings): write spin box value into settings file
* file-editor.cc (construct): set right text alignment in editor tabs;
(notice_settings): set tab's style sheet depending on tab width
author | Torsten <ttl@justmail.de> |
---|---|
date | Tue, 14 Jan 2014 22:51:43 +0100 |
parents | 8d98ebeceab4 |
children | 12291fb903de |
files | libgui/src/m-editor/file-editor.cc libgui/src/settings-dialog.cc libgui/src/settings-dialog.ui |
diffstat | 3 files changed, 134 insertions(+), 68 deletions(-) [+] |
line wrap: on
line diff
--- a/libgui/src/m-editor/file-editor.cc +++ b/libgui/src/m-editor/file-editor.cc @@ -842,6 +842,13 @@ { int icon_size = settings->value ("toolbar_icon_size", 16).toInt (); _tool_bar->setIconSize (QSize (icon_size, icon_size)); + + int tab_width = settings->value ("editor/tab_width", 300).toInt (); + QString style_sheet = QString ("QTabBar::tab {max-height: 4ex; " + "max-width: %1px; text-align: right }"). + arg (tab_width); + _tab_widget->setStyleSheet (style_sheet); + // Relay signal to file editor tabs. emit fetab_settings_changed (settings); } @@ -874,8 +881,7 @@ #ifdef HAVE_QTABWIDGET_SETMOVABLE _tab_widget->setMovable (true); #endif - _tab_widget->setStyleSheet ("QTabBar::tab {max-height: 4ex; }"); - + _tab_widget->setElideMode (Qt::ElideLeft); QAction *new_action = new QAction (QIcon (":/actions/icons/filenew.png"),
--- a/libgui/src/settings-dialog.cc +++ b/libgui/src/settings-dialog.cc @@ -162,6 +162,8 @@ settings->value ("editor/tab_width", 2).toInt ()); ui->editor_longWindowTitle->setChecked ( settings->value ("editor/longWindowTitle",false).toBool ()); + ui->editor_tab_width->setValue ( + settings->value ("editor/tab_width", 300).toInt ()); ui->editor_restoreSession->setChecked ( settings->value ("editor/restoreSession", true).toBool ()); ui->editor_create_new_file->setChecked ( @@ -539,6 +541,8 @@ ui->editor_tab_width_spinbox->value ()); settings->setValue ("editor/longWindowTitle", ui->editor_longWindowTitle->isChecked ()); + settings->setValue ("editor/tab_width", + ui->editor_tab_width->value ()); settings->setValue ("editor/restoreSession", ui->editor_restoreSession->isChecked ()); settings->setValue ("editor/create_new_file",
--- a/libgui/src/settings-dialog.ui +++ b/libgui/src/settings-dialog.ui @@ -32,7 +32,7 @@ <item> <widget class="QTabWidget" name="tabWidget"> <property name="currentIndex"> - <number>0</number> + <number>1</number> </property> <widget class="QWidget" name="tab_general"> <property name="enabled"> @@ -294,14 +294,14 @@ <property name="spacing"> <number>6</number> </property> - <item row="2" column="0"> + <item row="3" column="0"> <widget class="QCheckBox" name="editor_ws_checkbox"> <property name="text"> <string>Show whitespace</string> </property> </widget> </item> - <item row="1" column="0"> + <item row="2" column="0"> <widget class="QCheckBox" name="editor_showLineNumbers"> <property name="enabled"> <bool>true</bool> @@ -311,14 +311,14 @@ </property> </widget> </item> - <item row="0" column="0"> + <item row="1" column="0"> <widget class="QCheckBox" name="editor_longWindowTitle"> <property name="text"> <string>Show complete path in window title</string> </property> </widget> </item> - <item row="2" column="1"> + <item row="3" column="2"> <widget class="QCheckBox" name="editor_ws_indent_checkbox"> <property name="enabled"> <bool>false</bool> @@ -328,7 +328,20 @@ </property> </widget> </item> - <item row="3" column="0"> + <item row="4" column="4"> + <spacer name="horizontalSpacer_18"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item row="4" column="0"> <widget class="QCheckBox" name="editor_highlightCurrentLine"> <property name="enabled"> <bool>true</bool> @@ -338,7 +351,7 @@ </property> </widget> </item> - <item row="3" column="1"> + <item row="4" column="2"> <layout class="QGridLayout" name="editor_grid_current_line" rowstretch="0" columnstretch="0,0,0,0,0"> <property name="horizontalSpacing"> <number>12</number> @@ -387,7 +400,7 @@ </item> </layout> </item> - <item row="0" column="2"> + <item row="1" column="4"> <spacer name="horizontalSpacer_12"> <property name="orientation"> <enum>Qt::Horizontal</enum> @@ -400,41 +413,84 @@ </property> </spacer> </item> + <item row="2" column="4"> + <spacer name="horizontalSpacer_16"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item row="3" column="4"> + <spacer name="horizontalSpacer_17"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> <item row="1" column="2"> - <spacer name="horizontalSpacer_16"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> + <layout class="QGridLayout" name="gridLayout_6"> + <item row="0" column="0"> + <widget class="QLabel" name="label_16"> + <property name="text"> + <string>Max. tab width in pixel</string> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="QSpinBox" name="editor_tab_width"> + <property name="minimum"> + <number>100</number> + </property> + <property name="maximum"> + <number>600</number> + </property> + <property name="singleStep"> + <number>20</number> + </property> + <property name="value"> + <number>300</number> + </property> + </widget> + </item> + <item row="0" column="2"> + <spacer name="horizontalSpacer_25"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + </layout> </item> - <item row="2" column="2"> - <spacer name="horizontalSpacer_17"> + <item row="1" column="1"> + <spacer name="horizontalSpacer_24"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item row="3" column="2"> - <spacer name="horizontalSpacer_18"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> </property> <property name="sizeHint" stdset="0"> <size> - <width>40</width> - <height>20</height> + <width>10</width> + <height>0</height> </size> </property> </spacer> @@ -453,8 +509,22 @@ <property name="verticalSpacing"> <number>0</number> </property> - <item row="0" column="3"> - <spacer name="horizontalSpacer_10"> + <item row="0" column="0"> + <widget class="QLabel" name="label_13"> + <property name="text"> + <string>Indent width</string> + </property> + </widget> + </item> + <item row="2" column="4"> + <widget class="QCheckBox" name="editor_tab_ind_checkbox"> + <property name="text"> + <string>Tab indents line</string> + </property> + </widget> + </item> + <item row="0" column="5"> + <spacer name="horizontalSpacer_14"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> @@ -469,20 +539,6 @@ </property> </spacer> </item> - <item row="0" column="0"> - <widget class="QLabel" name="label_13"> - <property name="text"> - <string>Indent width</string> - </property> - </widget> - </item> - <item row="2" column="4"> - <widget class="QCheckBox" name="editor_tab_ind_checkbox"> - <property name="text"> - <string>Tab indents line</string> - </property> - </widget> - </item> <item row="0" column="4"> <widget class="QCheckBox" name="editor_auto_ind_checkbox"> <property name="text"> @@ -547,8 +603,21 @@ </property> </spacer> </item> - <item row="0" column="5"> - <spacer name="horizontalSpacer_14"> + <item row="2" column="10"> + <spacer name="horizontalSpacer_20"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item row="0" column="3"> + <spacer name="horizontalSpacer_10"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> @@ -563,19 +632,6 @@ </property> </spacer> </item> - <item row="2" column="10"> - <spacer name="horizontalSpacer_20"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> </layout> </item> <item>