diff options
author | Mavridis Philippe <[email protected]> | 2022-04-15 19:26:19 +0300 |
---|---|---|
committer | Michele Calgaro <[email protected]> | 2022-09-05 12:48:59 +0900 |
commit | 74466041a674faaaf22f586968f275e2606e08fe (patch) | |
tree | a76f24d46dea0847ccad7146be17053ca0f43d81 /kcontrol/taskbar/kcmtaskbar.cpp | |
parent | 80592938130c5f3eb0406c98a6a0942a495c54d5 (diff) | |
download | tdebase-74466041a674faaaf22f586968f275e2606e08fe.tar.gz tdebase-74466041a674faaaf22f586968f275e2606e08fe.zip |
Taskbar: small/panel icon size selection.
By default the 16x16 value was hardcoded into the taskbar, which
is not correct.
With this commit the default value is TDEIcon::Small (can be
defined in TCC->LookNFeel->Icons) to retain the "classic" style.
This commit adds a "Small icons" checkbox which can be unchecked
to set the icon size to TDEIcon::Panel (for consistency with
other panel icons). Combined with "Icons only", this produces
a Plasma/Windows-like big icon taskbar.
This commit also ensures that in "Icons only" mode the icons
are centered in their button, for better looking result.
Finally, this commit fixes a typo in some macros
(TABSKAR -> TASKBAR).
Signed-off-by: Mavridis Philippe <[email protected]>
Diffstat (limited to 'kcontrol/taskbar/kcmtaskbar.cpp')
-rw-r--r-- | kcontrol/taskbar/kcmtaskbar.cpp | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/kcontrol/taskbar/kcmtaskbar.cpp b/kcontrol/taskbar/kcmtaskbar.cpp index f2997a331..bb7a7a8b9 100644 --- a/kcontrol/taskbar/kcmtaskbar.cpp +++ b/kcontrol/taskbar/kcmtaskbar.cpp @@ -36,6 +36,7 @@ #include <twin.h> #include <kcolorbutton.h> #include <kstandarddirs.h> +#include <kiconloader.h> #define protected public #include "kcmtaskbarui.h" @@ -262,6 +263,7 @@ TaskbarConfig::TaskbarConfig(TQWidget *parent, const char* name, const TQStringL m_widget->showAllScreens->show(); } connect( m_widget->showAllScreens, TQT_SIGNAL( stateChanged( int )), TQT_SLOT( changed())); + connect( m_widget->smallIcons, TQT_SIGNAL(toggled(bool)), TQT_SLOT(changed()) ); TDEAboutData *about = new TDEAboutData(I18N_NOOP("kcmtaskbar"), I18N_NOOP("TDE Taskbar Control Module"), @@ -423,20 +425,36 @@ void TaskbarConfig::load() slotUpdateComboBox(); updateAppearanceCombo(); m_widget->showAllScreens->setChecked(!m_settingsObject->showCurrentScreenOnly()); + + int iconSize = m_settingsObject->iconSize(); + if(kapp->iconLoader()->currentSize(TDEIcon::Small) != iconSize) + { + m_widget->smallIcons->setChecked(false); + } } void TaskbarConfig::save() { TDECModule::save(); + if(m_widget->smallIcons->isChecked()) + { + m_settingsObject->setIconSize(kapp->iconLoader()->currentSize(TDEIcon::Small)); + } + else + { + m_settingsObject->setIconSize(kapp->iconLoader()->currentSize(TDEIcon::Panel)); + } + m_settingsObject->setShowCurrentScreenOnly(!m_widget->showAllScreens->isChecked()); int selectedAppearance = m_widget->appearance->currentItem(); if (selectedAppearance < (int)m_appearances.count()) { m_appearances[selectedAppearance].alterSettings(); - m_settingsObject->writeConfig(); } + m_settingsObject->writeConfig(); + TQByteArray data; kapp->dcopClient()->emitDCOPSignal("kdeTaskBarConfigChanged()", data); } |