summaryrefslogtreecommitdiffstats
path: root/kcontrol
diff options
context:
space:
mode:
authorMavridis Philippe <mavridisf@gmail.com>2022-04-15 19:26:19 +0300
committerMichele Calgaro <michele.calgaro@yahoo.it>2022-09-05 12:48:59 +0900
commit74466041a674faaaf22f586968f275e2606e08fe (patch)
treea76f24d46dea0847ccad7146be17053ca0f43d81 /kcontrol
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 <mavridisf@gmail.com>
Diffstat (limited to 'kcontrol')
-rw-r--r--kcontrol/taskbar/kcmtaskbar.cpp20
-rw-r--r--kcontrol/taskbar/kcmtaskbarui.ui78
2 files changed, 55 insertions, 43 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);
}
diff --git a/kcontrol/taskbar/kcmtaskbarui.ui b/kcontrol/taskbar/kcmtaskbarui.ui
index 5723c76d7..ae4f4531d 100644
--- a/kcontrol/taskbar/kcmtaskbarui.ui
+++ b/kcontrol/taskbar/kcmtaskbarui.ui
@@ -667,48 +667,6 @@ By default the taskbar groups windows when it is full.</string>
<string>Choose taskbar display mode among &lt;strong&gt;Icons and text&lt;/strong&gt;, &lt;strong&gt;Text only&lt;/strong&gt; and &lt;strong&gt;Icons only&lt;/strong&gt;.</string>
</property>
</widget>
- <widget class="TQCheckBox" row="2" column="0" rowspan="1" colspan="4">
- <property name="name">
- <cstring>kcfg_ShowThumbnails</cstring>
- </property>
- <property name="text">
- <string>Show thumbnails on hover</string>
- </property>
- </widget>
- <spacer row="3" column="0">
- <property name="name">
- <cstring>spacer2_2_2_3</cstring>
- </property>
- <property name="orientation">
- <enum>Horizontal</enum>
- </property>
- <property name="sizeType">
- <enum>Fixed</enum>
- </property>
- <property name="sizeHint">
- <size>
- <width>20</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- <spacer row="1" column="1">
- <property name="name">
- <cstring>spacer2_2_2_3_2</cstring>
- </property>
- <property name="orientation">
- <enum>Vertical</enum>
- </property>
- <property name="sizeType">
- <enum>Fixed</enum>
- </property>
- <property name="sizeHint">
- <size>
- <width>20</width>
- <height>16</height>
- </size>
- </property>
- </spacer>
<widget class="TQLabel" row="0" column="0" rowspan="1" colspan="2">
<property name="name">
<cstring>displayIconsNTextLabel</cstring>
@@ -734,6 +692,14 @@ By default the taskbar groups windows when it is full.</string>
<cstring>kcfg_DisplayIconsNText</cstring>
</property>
</widget>
+ <widget class="TQCheckBox" row="2" column="0" rowspan="1" colspan="4">
+ <property name="name">
+ <cstring>kcfg_ShowThumbnails</cstring>
+ </property>
+ <property name="text">
+ <string>Show thumbnails on hover</string>
+ </property>
+ </widget>
<widget class="TQSpinBox" row="3" column="3">
<property name="name">
<cstring>kcfg_ThumbnailMaxDimension</cstring>
@@ -754,6 +720,23 @@ By default the taskbar groups windows when it is full.</string>
<number>100</number>
</property>
</widget>
+ <spacer row="3" column="0">
+ <property name="name">
+ <cstring>spacer2_2_2_3</cstring>
+ </property>
+ <property name="orientation">
+ <enum>Horizontal</enum>
+ </property>
+ <property name="sizeType">
+ <enum>Fixed</enum>
+ </property>
+ <property name="sizeHint">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
<widget class="TQLabel" row="3" column="1" rowspan="1" colspan="2">
<property name="name">
<cstring>thumbMaxDimensionLabel</cstring>
@@ -765,6 +748,17 @@ By default the taskbar groups windows when it is full.</string>
<string>Maximum dimension:</string>
</property>
</widget>
+ <widget class="TQCheckBox" row="1" column="2">
+ <property name="name">
+ <cstring>smallIcons</cstring>
+ </property>
+ <property name="text">
+ <string>Small icons</string>
+ </property>
+ <property name="checked">
+ <bool>true</bool>
+ </property>
+ </widget>
</grid>
</widget>
<widget class="TQButtonGroup" row="0" column="0">