]> cloud.milkyroute.net Git - dolphin.git/commitdiff
minor optimization: don't instantiate the icon loader on each size change
authorPeter Penz <peter.penz19@gmail.com>
Sun, 9 Sep 2007 12:51:12 +0000 (12:51 +0000)
committerPeter Penz <peter.penz19@gmail.com>
Sun, 9 Sep 2007 12:51:12 +0000 (12:51 +0000)
svn path=/trunk/KDE/kdebase/apps/; revision=710256

src/iconsizedialog.cpp
src/iconsizedialog.h

index d55380294869f41d755881ae44f77c6420a55aee..f6a7fda4f2c4d5a95dc3b0feed353ef9b2836acf 100644 (file)
@@ -40,7 +40,8 @@ IconSizeDialog::IconSizeDialog(QWidget* parent) :
     m_iconSizeSlider(0),
     m_iconSizeViewer(0),
     m_previewSizeSlider(0),
-    m_previewSizeViewer(0)
+    m_previewSizeViewer(0),
+    m_iconLoader()
 {
     IconsModeSettings* settings = DolphinSettings::instance().iconsModeSettings();
     Q_ASSERT(settings != 0);
@@ -131,8 +132,7 @@ void IconSizeDialog::slotButtonClicked(int button)
 
 void IconSizeDialog::updateIconSize(int value)
 {
-    KIconLoader iconLoader;
-    m_iconSizeViewer->setPixmap(iconLoader.loadIcon("folder", K3Icon::Desktop, iconSize(value)));
+    m_iconSizeViewer->setPixmap(m_iconLoader.loadIcon("folder", K3Icon::Desktop, iconSize(value)));
     if (m_previewSizeSlider != 0) {
         updatePreviewSize(m_previewSizeSlider->value());
     }
@@ -140,13 +140,12 @@ void IconSizeDialog::updateIconSize(int value)
 
 void IconSizeDialog::updatePreviewSize(int value)
 {
-    KIconLoader iconLoader;
     const int iconSizeValue = m_iconSizeSlider->value();
     if (value < iconSizeValue) {
         // assure that the preview size is never smaller than the icon size
         value = iconSizeValue;
     }
-    m_previewSizeViewer->setPixmap(iconLoader.loadIcon("preview", K3Icon::Desktop, iconSize(value)));
+    m_previewSizeViewer->setPixmap(m_iconLoader.loadIcon("preview", K3Icon::Desktop, iconSize(value)));
 }
 
 int IconSizeDialog::iconSize(int sliderValue) const
index 33cd83725ac54cc114c63f963d90aeb485f747f2..ed270baec1e8fbefb763061d96ff06cd148fc72d 100644 (file)
@@ -21,6 +21,7 @@
 #define ICONSIZEDIALOG_H
 
 #include <kdialog.h>
+#include <kiconloader.h>
 
 class QSlider;
 class PixmapViewer;
@@ -77,6 +78,7 @@ private:
     PixmapViewer* m_iconSizeViewer;
     QSlider* m_previewSizeSlider;
     PixmapViewer* m_previewSizeViewer;
+    KIconLoader m_iconLoader;
 };
 
 #endif