summaryrefslogtreecommitdiffstats
path: root/kcontrol/icons/icons.h
diff options
context:
space:
mode:
Diffstat (limited to 'kcontrol/icons/icons.h')
-rw-r--r--kcontrol/icons/icons.h152
1 files changed, 152 insertions, 0 deletions
diff --git a/kcontrol/icons/icons.h b/kcontrol/icons/icons.h
new file mode 100644
index 000000000..93171f6d1
--- /dev/null
+++ b/kcontrol/icons/icons.h
@@ -0,0 +1,152 @@
+/* vi: ts=8 sts=4 sw=4
+ *
+ * This file is part of the KDE project, module kcmdisplay.
+ * Copyright (C) 2000 Geert Jansen <[email protected]>
+ * with minor additions and based on ideas from
+ * Torsten Rahn <[email protected]>
+ *
+ * You can Freely distribute this program under the GNU General Public
+ * License. See the file "COPYING" for the exact licensing terms.
+ */
+
+#ifndef __icons_h__
+#define __icons_h__
+
+#include <qcolor.h>
+#include <qimage.h>
+#include <qvaluelist.h>
+
+#include <kcmodule.h>
+#include <kdialogbase.h>
+
+class QCheckBox;
+class QColor;
+class QComboBox;
+class QGridLayout;
+class QGroupBox;
+class QIconView;
+class QLabel;
+class QListBox;
+class QListView;
+class QPushButton;
+class QSlider;
+class QTabWidget;
+class QWidget;
+
+class KColorButton;
+class KConfig;
+class KIconEffect;
+class KIconLoader;
+class KIconTheme;
+
+struct Effect
+{
+ int type;
+ float value;
+ QColor color;
+ QColor color2;
+ bool transparant;
+};
+
+
+/**
+ * The General Icons tab in kcontrol.
+ */
+class KIconConfig: public KCModule
+{
+ Q_OBJECT
+
+public:
+ KIconConfig(QWidget *parent, const char *name=0);
+ ~KIconConfig();
+
+ virtual void load();
+ virtual void load( bool useDefaults );
+ virtual void save();
+ virtual void defaults();
+ void preview();
+
+private slots:
+ void slotEffectSetup0() { EffectSetup(0); }
+ void slotEffectSetup1() { EffectSetup(1); }
+ void slotEffectSetup2() { EffectSetup(2); }
+
+ void slotUsage(int index);
+ void slotSize(int index);
+ void slotDPCheck(bool check);
+ void slotAnimatedCheck(bool check);
+
+private:
+ void preview(int i);
+ void EffectSetup(int state);
+ QPushButton *addPreviewIcon(int i, const QString &str, QWidget *parent, QGridLayout *lay);
+ void init();
+ void initDefaults();
+ void read();
+ void apply();
+
+
+ bool mbDP[6], mbChanged[6], mbAnimated[6];
+ int mSizes[6];
+ QValueList<int> mAvSizes[6];
+
+ Effect mEffects[6][3];
+ Effect mDefaultEffect[3];
+
+ int mUsage;
+ QString mTheme, mExample;
+ QStringList mGroups, mStates;
+
+ KIconEffect *mpEffect;
+ KIconTheme *mpTheme;
+ KIconLoader *mpLoader;
+ KConfig *mpConfig;
+
+ typedef QLabel *QLabelPtr;
+ QLabelPtr mpPreview[3];
+
+ QListBox *mpUsageList;
+ QComboBox *mpSizeBox;
+ QCheckBox *mpDPCheck, *wordWrapCB, *underlineCB, *mpAnimatedCheck;
+ QTabWidget *m_pTabWidget;
+ QWidget *m_pTab1;
+};
+
+class KIconEffectSetupDialog: public KDialogBase
+{
+ Q_OBJECT
+
+public:
+ KIconEffectSetupDialog(const Effect &, const Effect &,
+ const QString &, const QImage &,
+ QWidget *parent=0L, char *name=0L);
+ ~KIconEffectSetupDialog();
+ Effect effect() { return mEffect; }
+
+protected:
+ void preview();
+ void init();
+
+protected slots:
+ void slotEffectValue(int value);
+ void slotEffectColor(const QColor &col);
+ void slotEffectColor2(const QColor &col);
+ void slotEffectType(int type);
+ void slotSTCheck(bool b);
+ void slotDefault();
+
+private:
+ KIconEffect *mpEffect;
+ QListBox *mpEffectBox;
+ QCheckBox *mpSTCheck;
+ QSlider *mpEffectSlider;
+ KColorButton *mpEColButton;
+ KColorButton *mpECol2Button;
+ Effect mEffect;
+ Effect mDefaultEffect;
+ QImage mExample;
+ QGroupBox *mpEffectGroup;
+ QLabel *mpPreview, *mpEffectLabel, *mpEffectColor, *mpEffectColor2;
+};
+
+#endif