summaryrefslogtreecommitdiffstats
path: root/kcontrol/taskbar/kcmtaskbar.cpp
diff options
context:
space:
mode:
authorMavridis Philippe <[email protected]>2022-04-15 19:26:19 +0300
committerMichele Calgaro <[email protected]>2022-09-05 12:48:59 +0900
commit74466041a674faaaf22f586968f275e2606e08fe (patch)
treea76f24d46dea0847ccad7146be17053ca0f43d81 /kcontrol/taskbar/kcmtaskbar.cpp
parent80592938130c5f3eb0406c98a6a0942a495c54d5 (diff)
downloadtdebase-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.cpp20
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);
}