Mercurial > octave-nkf
diff libgui/src/main-window.cc @ 15787:b081fbe80174
provide separate icons for gui's floating widgets
* resource.qrc: add new icons to the list of resources
* settings-dialog.ui: new tab with radio buttons for icon set
* settings-dialog.cc: configure radio buttons in settings_dialog(),
write the selected icon set to settings file in write_changed_settings()
* resource-manager.h: added constasnts for the icon sets
* main-window.cc: set the icons for all dock-widgets in notice-settings()
* libgui/src/icons: added 12 icons (two sets of 6 icons)
author | Torsten <ttl@justmail.de> |
---|---|
date | Fri, 14 Dec 2012 13:18:14 +0100 |
parents | d90b426b9988 |
children | 424edeca3c66 |
line wrap: on
line diff
--- a/libgui/src/main-window.cc Thu Dec 13 15:58:25 2012 -0500 +++ b/libgui/src/main-window.cc Fri Dec 14 13:18:14 2012 +0100 @@ -215,6 +215,23 @@ _terminal->setCursorType(QTerminalInterface::UnderlineCursor, cursorBlinking); + // the widget's icons (when floating) + int icon_set = settings->value ("DockWidgets/widget_icon_set",0).toInt (); + QString icon_prefix = QString (WIDGET_ICON_SET_PREFIX[icon_set]); + QString icon; + foreach (QObject *obj, children ()) + { + QString name = obj->objectName (); + if (obj->inherits("QDockWidget") && ! name.isEmpty ()) + { // if children is a dockwidget with a name + QDockWidget *widget = qobject_cast<QDockWidget *> (obj); + icon = icon_prefix; // prefix or octave-logo + if (icon_set) // > 0 : each widget has individual icon + icon = icon + name + QString(".png"); + widget->setWindowIcon (QIcon (icon)); + } + } + resource_manager::update_network_settings (); }