author | sandman <sandman> | 2002-07-06 16:42:29 (UTC) |
---|---|---|
committer | sandman <sandman> | 2002-07-06 16:42:29 (UTC) |
commit | 3a422983abc7342c9229dccac825d0608fca10f3 (patch) (unidiff) | |
tree | fd0d71eab4df0b286b78efe24184525ae4c819a3 /noncore | |
parent | 8beb5fcdbca8110dc586a7e620bf8eae892087fb (diff) | |
download | opie-3a422983abc7342c9229dccac825d0608fca10f3.zip opie-3a422983abc7342c9229dccac825d0608fca10f3.tar.gz opie-3a422983abc7342c9229dccac825d0608fca10f3.tar.bz2 |
Complete renovation of the external style API:
- created two QCom interfaces in "styleinterface.h"
- moved the liquid/theme settings apps into the plugins
- modified the plugin interface for all three styles
- extended appearance to fully support the new API (replaces the
settings apps)
Additional work:
- made a workaround in appearance for a Qt Bug -- now a QDialog again
(this should really be fixed in Qt, but Z won't work that way)
21 files changed, 412 insertions, 206 deletions
diff --git a/noncore/styles/liquid/liquid.pro b/noncore/styles/liquid/liquid.pro index 23dce09..a07eaf2 100644 --- a/noncore/styles/liquid/liquid.pro +++ b/noncore/styles/liquid/liquid.pro | |||
@@ -4,9 +4,13 @@ SOURCES = liquid.cpp \ | |||
4 | liquiddeco.cpp \ | 4 | liquiddeco.cpp \ |
5 | effects.cpp \ | 5 | effects.cpp \ |
6 | liquidset.cpp \ | ||
6 | plugin.cpp | 7 | plugin.cpp |
7 | 8 | ||
8 | HEADERS = liquid.h \ | 9 | HEADERS = liquid.h \ |
9 | liquiddeco.h \ | 10 | liquiddeco.h \ |
10 | effects.h | 11 | effects.h \ |
12 | liquidset.h \ | ||
13 | plugin.h | ||
14 | |||
11 | LIBS += -lqpe | 15 | LIBS += -lqpe |
12 | INCLUDEPATH += $(OPIEDIR)/include | 16 | INCLUDEPATH += $(OPIEDIR)/include |
diff --git a/noncore/styles/liquid/settings/liquidset.cpp b/noncore/styles/liquid/liquidset.cpp index 1479ac0..5ae19ba 100644 --- a/noncore/styles/liquid/settings/liquidset.cpp +++ b/noncore/styles/liquid/liquidset.cpp | |||
@@ -22,5 +22,5 @@ | |||
22 | 22 | ||
23 | #include "liquidset.h" | 23 | #include "liquidset.h" |
24 | #include "../liquid.h" | 24 | #include "liquid.h" |
25 | 25 | ||
26 | #include <qpe/qpeapplication.h> | 26 | #include <qpe/qpeapplication.h> |
@@ -58,6 +58,6 @@ static void changeButtonColor ( QWidget *btn, const QColor &col ) | |||
58 | 58 | ||
59 | 59 | ||
60 | LiquidSet::LiquidSet ( QWidget* parent, const char *name, WFlags fl ) | 60 | LiquidSettings::LiquidSettings ( QWidget* parent, const char *name, WFlags fl ) |
61 | : QDialog ( parent, name, fl ) | 61 | : QWidget ( parent, name, fl ) |
62 | { | 62 | { |
63 | setCaption ( tr( "Liquid Style" ) ); | 63 | setCaption ( tr( "Liquid Style" ) ); |
@@ -123,5 +123,5 @@ LiquidSet::LiquidSet ( QWidget* parent, const char *name, WFlags fl ) | |||
123 | QPopupMenu *popup; | 123 | QPopupMenu *popup; |
124 | 124 | ||
125 | popup = new ColorPopupMenu ( m_menucol, this ); | 125 | popup = new ColorPopupMenu ( m_menucol, 0 ); |
126 | m_menubtn-> setPopup ( popup ); | 126 | m_menubtn-> setPopup ( popup ); |
127 | m_menubtn-> setPopupDelay ( 0 ); | 127 | m_menubtn-> setPopupDelay ( 0 ); |
@@ -132,5 +132,5 @@ LiquidSet::LiquidSet ( QWidget* parent, const char *name, WFlags fl ) | |||
132 | grid-> addWidget ( m_textbtn, 0, 5 ); | 132 | grid-> addWidget ( m_textbtn, 0, 5 ); |
133 | 133 | ||
134 | popup = new ColorPopupMenu ( m_textcol, this ); | 134 | popup = new ColorPopupMenu ( m_textcol, 0 ); |
135 | m_textbtn-> setPopup ( popup ); | 135 | m_textbtn-> setPopup ( popup ); |
136 | m_textbtn-> setPopupDelay ( 0 ); | 136 | m_textbtn-> setPopupDelay ( 0 ); |
@@ -177,5 +177,5 @@ LiquidSet::LiquidSet ( QWidget* parent, const char *name, WFlags fl ) | |||
177 | } | 177 | } |
178 | 178 | ||
179 | void LiquidSet::changeType ( int t ) | 179 | void LiquidSettings::changeType ( int t ) |
180 | { | 180 | { |
181 | bool custom = ( t == Custom ); | 181 | bool custom = ( t == Custom ); |
@@ -191,5 +191,5 @@ void LiquidSet::changeType ( int t ) | |||
191 | } | 191 | } |
192 | 192 | ||
193 | void LiquidSet::changeMenuColor ( const QColor &col ) | 193 | void LiquidSettings::changeMenuColor ( const QColor &col ) |
194 | { | 194 | { |
195 | changeButtonColor ( m_menubtn, col ); | 195 | changeButtonColor ( m_menubtn, col ); |
@@ -197,5 +197,5 @@ void LiquidSet::changeMenuColor ( const QColor &col ) | |||
197 | } | 197 | } |
198 | 198 | ||
199 | void LiquidSet::changeTextColor ( const QColor &col ) | 199 | void LiquidSettings::changeTextColor ( const QColor &col ) |
200 | { | 200 | { |
201 | changeButtonColor ( m_textbtn, col ); | 201 | changeButtonColor ( m_textbtn, col ); |
@@ -203,10 +203,10 @@ void LiquidSet::changeTextColor ( const QColor &col ) | |||
203 | } | 203 | } |
204 | 204 | ||
205 | void LiquidSet::changeShadow ( bool b ) | 205 | void LiquidSettings::changeShadow ( bool b ) |
206 | { | 206 | { |
207 | m_shadow = b; | 207 | m_shadow = b; |
208 | } | 208 | } |
209 | 209 | ||
210 | void LiquidSet::changeDeco ( bool b ) | 210 | void LiquidSettings::changeDeco ( bool b ) |
211 | { | 211 | { |
212 | m_deco = b; | 212 | m_deco = b; |
@@ -214,5 +214,5 @@ void LiquidSet::changeDeco ( bool b ) | |||
214 | 214 | ||
215 | 215 | ||
216 | void LiquidSet::accept ( ) | 216 | bool LiquidSettings::writeConfig ( ) |
217 | { | 217 | { |
218 | Config config ( "qpe" ); | 218 | Config config ( "qpe" ); |
@@ -228,7 +228,5 @@ void LiquidSet::accept ( ) | |||
228 | config. write ( ); | 228 | config. write ( ); |
229 | 229 | ||
230 | Global::applyStyle ( ); | 230 | return true; |
231 | |||
232 | QDialog::accept ( ); | ||
233 | } | 231 | } |
234 | 232 | ||
diff --git a/noncore/styles/liquid/settings/liquidset.h b/noncore/styles/liquid/liquidset.h index a0f590a..7843513 100644 --- a/noncore/styles/liquid/settings/liquidset.h +++ b/noncore/styles/liquid/liquidset.h | |||
@@ -9,9 +9,9 @@ class QToolButton; | |||
9 | class QSlider; | 9 | class QSlider; |
10 | 10 | ||
11 | class LiquidSet : public QDialog { | 11 | class LiquidSettings : public QWidget { |
12 | Q_OBJECT | 12 | Q_OBJECT |
13 | 13 | ||
14 | public: | 14 | public: |
15 | LiquidSet ( QWidget *parent = 0, const char *name = 0, WFlags fl = 0 ); | 15 | LiquidSettings ( QWidget *parent = 0, const char *name = 0, WFlags fl = 0 ); |
16 | 16 | ||
17 | public slots: | 17 | public slots: |
@@ -22,6 +22,5 @@ public slots: | |||
22 | void changeDeco ( bool b ); | 22 | void changeDeco ( bool b ); |
23 | 23 | ||
24 | protected: | 24 | virtual bool writeConfig ( ); |
25 | virtual void accept ( ); | ||
26 | 25 | ||
27 | private: | 26 | private: |
diff --git a/noncore/styles/liquid/opie-liquid.control b/noncore/styles/liquid/opie-liquid.control index 6311dee..7b6ae71 100644 --- a/noncore/styles/liquid/opie-liquid.control +++ b/noncore/styles/liquid/opie-liquid.control | |||
@@ -1,3 +1,3 @@ | |||
1 | Files: plugins/styles/libliquid.so* bin/liquid-settings apps/Settings/Liquid.desktop pics/liquid/Liquid.png | 1 | Files: plugins/styles/libliquid.so* |
2 | Priority: optional | 2 | Priority: optional |
3 | Section: opie/system | 3 | Section: opie/system |
diff --git a/noncore/styles/liquid/plugin.cpp b/noncore/styles/liquid/plugin.cpp index d9aa8ef..f149c29 100644 --- a/noncore/styles/liquid/plugin.cpp +++ b/noncore/styles/liquid/plugin.cpp | |||
@@ -1,29 +1,111 @@ | |||
1 | #include "liquid.h" | 1 | #include "liquid.h" |
2 | #include "liquidset.h" | ||
3 | #include "plugin.h" | ||
2 | 4 | ||
3 | 5 | ||
4 | extern "C" { | 6 | |
5 | QStyle* allocate ( ); | 7 | LiquidInterface::LiquidInterface ( ) : ref ( 0 ) |
6 | int minor_version ( ); | 8 | { |
7 | int major_version ( ); | 9 | } |
8 | const char *description ( ); | 10 | |
11 | LiquidInterface::~LiquidInterface ( ) | ||
12 | { | ||
13 | } | ||
14 | |||
15 | QStyle *LiquidInterface::create ( ) | ||
16 | { | ||
17 | return new LiquidStyle ( ); | ||
18 | } | ||
19 | |||
20 | QString LiquidInterface::name ( ) | ||
21 | { | ||
22 | return QObject::tr( "Liquid", "name" ); | ||
23 | } | ||
24 | |||
25 | QString LiquidInterface::description ( ) | ||
26 | { | ||
27 | return QObject::tr( "High Performance Liquid style by Mosfet", "description" ); | ||
28 | } | ||
29 | |||
30 | QCString LiquidInterface::key ( ) | ||
31 | { | ||
32 | return QCString ( "liquid" ); | ||
33 | } | ||
34 | |||
35 | unsigned int LiquidInterface::version ( ) | ||
36 | { | ||
37 | return 100; // 1.0.0 (\d+.\d.\d) | ||
38 | } | ||
39 | |||
40 | QRESULT LiquidInterface::queryInterface ( const QUuid &uuid, QUnknownInterface **iface ) | ||
41 | { | ||
42 | static LiquidSettingsInterface *setiface = 0; | ||
43 | |||
44 | *iface = 0; | ||
45 | |||
46 | if ( uuid == IID_QUnknown ) | ||
47 | *iface = this; | ||
48 | else if ( uuid == IID_Style ) | ||
49 | *iface = this; | ||
50 | else if ( uuid == IID_StyleSettings ) { | ||
51 | if ( !setiface ) | ||
52 | setiface = new LiquidSettingsInterface ( ); | ||
53 | *iface = setiface; | ||
54 | } | ||
55 | |||
56 | if ( *iface ) | ||
57 | (*iface)-> addRef ( ); | ||
58 | |||
59 | return QS_OK; | ||
60 | } | ||
61 | |||
62 | Q_EXPORT_INTERFACE() | ||
63 | { | ||
64 | Q_CREATE_INSTANCE( LiquidInterface ) | ||
9 | } | 65 | } |
10 | 66 | ||
11 | QStyle* allocate ( ) | 67 | |
68 | LiquidSettingsInterface::LiquidSettingsInterface ( ) : ref ( 0 ) | ||
69 | { | ||
70 | m_widget = 0; | ||
71 | } | ||
72 | |||
73 | LiquidSettingsInterface::~LiquidSettingsInterface ( ) | ||
12 | { | 74 | { |
13 | return new LiquidStyle ( ); | 75 | } |
76 | |||
77 | QWidget *LiquidSettingsInterface::create ( QWidget *parent, const char *name ) | ||
78 | { | ||
79 | m_widget = new LiquidSettings ( parent, name ? name : "LIQUID-SETTINGS" ); | ||
80 | |||
81 | return m_widget; | ||
14 | } | 82 | } |
15 | 83 | ||
16 | int minor_version ( ) | 84 | bool LiquidSettingsInterface::accept ( ) |
17 | { | 85 | { |
18 | return 0; | 86 | if ( !m_widget ) |
87 | return false; | ||
88 | |||
89 | return m_widget-> writeConfig ( ); | ||
19 | } | 90 | } |
20 | 91 | ||
21 | int major_version ( ) | 92 | void LiquidSettingsInterface::reject ( ) |
22 | { | 93 | { |
23 | return 1; | ||
24 | } | 94 | } |
25 | 95 | ||
26 | const char *description ( ) | 96 | QRESULT LiquidSettingsInterface::queryInterface ( const QUuid &uuid, QUnknownInterface **iface ) |
27 | { | 97 | { |
28 | return "High Performance Liquid"; | 98 | *iface = 0; |
99 | |||
100 | |||
101 | if ( uuid == IID_QUnknown ) | ||
102 | *iface = this; | ||
103 | else if ( uuid == IID_StyleSettings ) | ||
104 | *iface = this; | ||
105 | |||
106 | if ( *iface ) | ||
107 | (*iface)-> addRef ( ); | ||
108 | |||
109 | return QS_OK; | ||
29 | } | 110 | } |
111 | |||
diff --git a/noncore/styles/liquid/plugin.h b/noncore/styles/liquid/plugin.h new file mode 100644 index 0000000..759577f --- a/dev/null +++ b/noncore/styles/liquid/plugin.h | |||
@@ -0,0 +1,46 @@ | |||
1 | #ifndef __OPIE_LIQUID_PLUGIN_H__ | ||
2 | #define __OPIE_LIQUID_PLUGIN_H__ | ||
3 | |||
4 | #include <qpe/styleinterface.h> | ||
5 | |||
6 | class LiquidSettings; | ||
7 | |||
8 | class LiquidInterface : public StyleInterface { | ||
9 | public: | ||
10 | LiquidInterface ( ); | ||
11 | virtual ~LiquidInterface ( ); | ||
12 | |||
13 | QRESULT queryInterface ( const QUuid &, QUnknownInterface ** ); | ||
14 | Q_REFCOUNT | ||
15 | |||
16 | virtual QStyle *create ( ); | ||
17 | |||
18 | virtual QString description ( ); | ||
19 | virtual QString name ( ); | ||
20 | virtual QCString key ( ); | ||
21 | |||
22 | virtual unsigned int version ( ); | ||
23 | |||
24 | private: | ||
25 | ulong ref; | ||
26 | }; | ||
27 | |||
28 | class LiquidSettingsInterface : public StyleSettingsInterface { | ||
29 | public: | ||
30 | LiquidSettingsInterface ( ); | ||
31 | virtual ~LiquidSettingsInterface ( ); | ||
32 | |||
33 | QRESULT queryInterface ( const QUuid &, QUnknownInterface ** ); | ||
34 | Q_REFCOUNT | ||
35 | |||
36 | virtual QWidget *create ( QWidget *parent, const char *name = 0 ); | ||
37 | |||
38 | virtual bool accept ( ); | ||
39 | virtual void reject ( ); | ||
40 | |||
41 | private: | ||
42 | LiquidSettings *m_widget; | ||
43 | ulong ref; | ||
44 | }; | ||
45 | |||
46 | #endif | ||
diff --git a/noncore/styles/liquid/settings/.cvsignore b/noncore/styles/liquid/settings/.cvsignore deleted file mode 100644 index c13418b..0000000 --- a/noncore/styles/liquid/settings/.cvsignore +++ b/dev/null | |||
@@ -1,2 +0,0 @@ | |||
1 | Makefile* | ||
2 | moc_* | ||
diff --git a/noncore/styles/liquid/settings/main.cpp b/noncore/styles/liquid/settings/main.cpp deleted file mode 100644 index fd69007..0000000 --- a/noncore/styles/liquid/settings/main.cpp +++ b/dev/null | |||
@@ -1,34 +0,0 @@ | |||
1 | /********************************************************************** | ||
2 | ** Copyright (C) 2000 Trolltech AS. All rights reserved. | ||
3 | ** | ||
4 | ** This file is part of Qtopia Environment. | ||
5 | ** | ||
6 | ** This file may be distributed and/or modified under the terms of the | ||
7 | ** GNU General Public License version 2 as published by the Free Software | ||
8 | ** Foundation and appearing in the file LICENSE.GPL included in the | ||
9 | ** packaging of this file. | ||
10 | ** | ||
11 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE | ||
12 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. | ||
13 | ** | ||
14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. | ||
15 | ** | ||
16 | ** Contact info@trolltech.com if any conditions of this licensing are | ||
17 | ** not clear to you. | ||
18 | ** | ||
19 | **********************************************************************/ | ||
20 | |||
21 | #include "liquidset.h" | ||
22 | |||
23 | #include <qpe/qpeapplication.h> | ||
24 | |||
25 | |||
26 | int main ( int argc, char** argv ) | ||
27 | { | ||
28 | QPEApplication a ( argc, argv ); | ||
29 | |||
30 | LiquidSet dlg; | ||
31 | a. showMainWidget ( &dlg ); | ||
32 | |||
33 | return a. exec ( ); | ||
34 | } | ||
diff --git a/noncore/styles/liquid/settings/settings.pro b/noncore/styles/liquid/settings/settings.pro deleted file mode 100644 index bfda7a4..0000000 --- a/noncore/styles/liquid/settings/settings.pro +++ b/dev/null | |||
@@ -1,24 +0,0 @@ | |||
1 | TEMPLATE= app | ||
2 | CONFIG += qt warn_on release | ||
3 | DESTDIR = $(OPIEDIR)/bin | ||
4 | HEADERS = liquidset.h | ||
5 | SOURCES = liquidset.cpp main.cpp | ||
6 | INCLUDEPATH += $(OPIEDIR)/include | ||
7 | DEPENDPATH+= ../$(OPIEDIR)/include | ||
8 | LIBS += -lqpe -lopie | ||
9 | TARGET = liquid-settings | ||
10 | |||
11 | TRANSLATIONS = ../../../../i18n/de/liquid-settings.ts \ | ||
12 | ../../../../i18n/en/liquid-settings.ts \ | ||
13 | ../../../../i18n/es/liquid-settings.ts \ | ||
14 | ../../../../i18n/fr/liquid-settings.ts \ | ||
15 | ../../../../i18n/hu/liquid-settings.ts \ | ||
16 | ../../../../i18n/ja/liquid-settings.ts \ | ||
17 | ../../../../i18n/ko/liquid-settings.ts \ | ||
18 | ../../../../i18n/no/liquid-settings.ts \ | ||
19 | ../../../../i18n/pl/liquid-settings.ts \ | ||
20 | ../../../../i18n/pt/liquid-settings.ts \ | ||
21 | ../../../../i18n/pt_BR/liquid-settings.ts \ | ||
22 | ../../../../i18n/sl/liquid-settings.ts \ | ||
23 | ../../../../i18n/zh_CN/liquid-settings.ts \ | ||
24 | ../../../../i18n/zh_TW/liquid-settings.ts | ||
diff --git a/noncore/styles/metal/metal.pro b/noncore/styles/metal/metal.pro index 6e99389..cf15f33 100644 --- a/noncore/styles/metal/metal.pro +++ b/noncore/styles/metal/metal.pro | |||
@@ -3,5 +3,5 @@ CONFIG = qt embedded release warn_on | |||
3 | SOURCES = metal.cpp plugin.cpp | 3 | SOURCES = metal.cpp plugin.cpp |
4 | 4 | ||
5 | HEADERS = metal.h | 5 | HEADERS = metal.h plugin.h |
6 | LIBS += -lqpe | 6 | LIBS += -lqpe |
7 | INCLUDEPATH += $(OPIEDIR)/include | 7 | INCLUDEPATH += $(OPIEDIR)/include |
diff --git a/noncore/styles/metal/plugin.cpp b/noncore/styles/metal/plugin.cpp index e5bee10..1db4aac 100644 --- a/noncore/styles/metal/plugin.cpp +++ b/noncore/styles/metal/plugin.cpp | |||
@@ -1,29 +1,57 @@ | |||
1 | #include "metal.h" | 1 | #include "metal.h" |
2 | #include "plugin.h" | ||
2 | 3 | ||
3 | 4 | ||
4 | extern "C" { | 5 | MetalInterface::MetalInterface ( ) : ref ( 0 ) |
5 | QStyle* allocate ( ); | 6 | { |
6 | int minor_version ( ); | 7 | } |
7 | int major_version ( ); | 8 | |
8 | const char *description ( ); | 9 | MetalInterface::~MetalInterface ( ) |
10 | { | ||
11 | } | ||
12 | |||
13 | QStyle *MetalInterface::create ( ) | ||
14 | { | ||
15 | return new MetalStyle ( ); | ||
16 | } | ||
17 | |||
18 | QString MetalInterface::name ( ) | ||
19 | { | ||
20 | return QObject::tr( "Metal", "name" ); | ||
21 | } | ||
22 | |||
23 | QString MetalInterface::description ( ) | ||
24 | { | ||
25 | return QObject::tr( "Metal style", "description" ); | ||
9 | } | 26 | } |
10 | 27 | ||
11 | QStyle* allocate ( ) | 28 | QCString MetalInterface::key ( ) |
12 | { | 29 | { |
13 | return new MetalStyle ( ); | 30 | return QCString ( "metal" ); |
14 | } | 31 | } |
15 | 32 | ||
16 | int minor_version ( ) | 33 | unsigned int MetalInterface::version ( ) |
17 | { | 34 | { |
18 | return 0; | 35 | return 100; // 1.0.0 (\d+.\d.\d) |
19 | } | 36 | } |
20 | 37 | ||
21 | int major_version ( ) | 38 | QRESULT MetalInterface::queryInterface ( const QUuid &uuid, QUnknownInterface **iface ) |
22 | { | 39 | { |
23 | return 1; | 40 | *iface = 0; |
41 | |||
42 | if ( uuid == IID_QUnknown ) | ||
43 | *iface = this; | ||
44 | else if ( uuid == IID_Style ) | ||
45 | *iface = this; | ||
46 | |||
47 | if ( *iface ) | ||
48 | (*iface)-> addRef ( ); | ||
49 | |||
50 | return QS_OK; | ||
24 | } | 51 | } |
25 | 52 | ||
26 | const char *description ( ) | 53 | Q_EXPORT_INTERFACE() |
27 | { | 54 | { |
28 | return "Metal style plugin"; | 55 | Q_CREATE_INSTANCE( MetalInterface ) |
29 | } | 56 | } |
57 | |||
diff --git a/noncore/styles/metal/plugin.h b/noncore/styles/metal/plugin.h new file mode 100644 index 0000000..f61c833 --- a/dev/null +++ b/noncore/styles/metal/plugin.h | |||
@@ -0,0 +1,27 @@ | |||
1 | #ifndef __OPIE_METAL_PLUGIN_H__ | ||
2 | #define __OPIE_METAL_PLUGIN_H__ | ||
3 | |||
4 | #include <qpe/styleinterface.h> | ||
5 | |||
6 | |||
7 | class MetalInterface : public StyleInterface { | ||
8 | public: | ||
9 | MetalInterface ( ); | ||
10 | virtual ~MetalInterface ( ); | ||
11 | |||
12 | QRESULT queryInterface ( const QUuid &, QUnknownInterface ** ); | ||
13 | Q_REFCOUNT | ||
14 | |||
15 | virtual QStyle *create ( ); | ||
16 | |||
17 | virtual QString description ( ); | ||
18 | virtual QString name ( ); | ||
19 | virtual QCString key ( ); | ||
20 | |||
21 | virtual unsigned int version ( ); | ||
22 | |||
23 | private: | ||
24 | ulong ref; | ||
25 | }; | ||
26 | |||
27 | #endif | ||
diff --git a/noncore/styles/theme/opie-theme.control b/noncore/styles/theme/opie-theme.control index 02739fb..adb4f4b 100644 --- a/noncore/styles/theme/opie-theme.control +++ b/noncore/styles/theme/opie-theme.control | |||
@@ -1,3 +1,3 @@ | |||
1 | Files: plugins/styles/libtheme.so* bin/theme-settings apps/Settings/Theme.desktop pics/theme/Theme.png | 1 | Files: plugins/styles/libtheme.so* |
2 | Priority: optional | 2 | Priority: optional |
3 | Section: opie/system | 3 | Section: opie/system |
diff --git a/noncore/styles/theme/plugin.cpp b/noncore/styles/theme/plugin.cpp index b334357..4383693 100644 --- a/noncore/styles/theme/plugin.cpp +++ b/noncore/styles/theme/plugin.cpp | |||
@@ -1,19 +1,111 @@ | |||
1 | //#include <klocale.h> | ||
2 | #include "othemestyle.h" | 1 | #include "othemestyle.h" |
2 | #include "themeset.h" | ||
3 | #include "plugin.h" | ||
3 | 4 | ||
4 | extern "C" | 5 | |
6 | |||
7 | ThemeInterface::ThemeInterface ( ) : ref ( 0 ) | ||
5 | { | 8 | { |
6 | QStyle * allocate() { | 9 | } |
7 | return new OThemeStyle ( "" ); | 10 | |
8 | } | 11 | ThemeInterface::~ThemeInterface ( ) |
9 | int minor_version() { | 12 | { |
10 | return 0; | 13 | } |
11 | } | 14 | |
12 | int major_version() { | 15 | QStyle *ThemeInterface::create ( ) |
13 | return 1; | 16 | { |
14 | } | 17 | return new OThemeStyle ( "" ); |
15 | const char * description() { | 18 | } |
16 | return ( "Theme Style" ); | 19 | |
20 | QString ThemeInterface::name ( ) | ||
21 | { | ||
22 | return QObject::tr( "Themed style", "name" ); | ||
23 | } | ||
24 | |||
25 | QString ThemeInterface::description ( ) | ||
26 | { | ||
27 | return QObject::tr( "KDE2 theme compatible style engine", "description" ); | ||
28 | } | ||
29 | |||
30 | QCString ThemeInterface::key ( ) | ||
31 | { | ||
32 | return QCString ( "theme" ); | ||
33 | } | ||
34 | |||
35 | unsigned int ThemeInterface::version ( ) | ||
36 | { | ||
37 | return 100; // 1.0.0 (\d+.\d.\d) | ||
38 | } | ||
39 | |||
40 | QRESULT ThemeInterface::queryInterface ( const QUuid &uuid, QUnknownInterface **iface ) | ||
41 | { | ||
42 | static ThemeSettingsInterface *setiface = 0; | ||
43 | |||
44 | *iface = 0; | ||
45 | |||
46 | if ( uuid == IID_QUnknown ) | ||
47 | *iface = this; | ||
48 | else if ( uuid == IID_Style ) | ||
49 | *iface = this; | ||
50 | else if ( uuid == IID_StyleSettings ) { | ||
51 | if ( !setiface ) | ||
52 | setiface = new ThemeSettingsInterface ( ); | ||
53 | *iface = setiface; | ||
17 | } | 54 | } |
55 | |||
56 | if ( *iface ) | ||
57 | (*iface)-> addRef ( ); | ||
58 | |||
59 | return QS_OK; | ||
60 | } | ||
61 | |||
62 | Q_EXPORT_INTERFACE() | ||
63 | { | ||
64 | Q_CREATE_INSTANCE( ThemeInterface ) | ||
65 | } | ||
66 | |||
67 | |||
68 | ThemeSettingsInterface::ThemeSettingsInterface ( ) : ref ( 0 ) | ||
69 | { | ||
70 | m_widget = 0; | ||
71 | } | ||
72 | |||
73 | ThemeSettingsInterface::~ThemeSettingsInterface ( ) | ||
74 | { | ||
75 | } | ||
76 | |||
77 | QWidget *ThemeSettingsInterface::create ( QWidget *parent, const char *name ) | ||
78 | { | ||
79 | m_widget = new ThemeSettings ( parent, name ? name : "THEME-SETTINGS" ); | ||
80 | |||
81 | return m_widget; | ||
82 | } | ||
83 | |||
84 | bool ThemeSettingsInterface::accept ( ) | ||
85 | { | ||
86 | if ( !m_widget ) | ||
87 | return false; | ||
88 | |||
89 | return m_widget-> writeConfig ( ); | ||
90 | } | ||
91 | |||
92 | void ThemeSettingsInterface::reject ( ) | ||
93 | { | ||
94 | } | ||
95 | |||
96 | QRESULT ThemeSettingsInterface::queryInterface ( const QUuid &uuid, QUnknownInterface **iface ) | ||
97 | { | ||
98 | *iface = 0; | ||
99 | |||
100 | |||
101 | if ( uuid == IID_QUnknown ) | ||
102 | *iface = this; | ||
103 | else if ( uuid == IID_StyleSettings ) | ||
104 | *iface = this; | ||
105 | |||
106 | if ( *iface ) | ||
107 | (*iface)-> addRef ( ); | ||
108 | |||
109 | return QS_OK; | ||
18 | } | 110 | } |
19 | 111 | ||
diff --git a/noncore/styles/theme/plugin.h b/noncore/styles/theme/plugin.h new file mode 100644 index 0000000..d13fc5d --- a/dev/null +++ b/noncore/styles/theme/plugin.h | |||
@@ -0,0 +1,46 @@ | |||
1 | #ifndef __OPIE_THEME_PLUGIN_H__ | ||
2 | #define __OPIE_THEME_PLUGIN_H__ | ||
3 | |||
4 | #include <qpe/styleinterface.h> | ||
5 | |||
6 | class ThemeSettings; | ||
7 | |||
8 | class ThemeInterface : public StyleInterface { | ||
9 | public: | ||
10 | ThemeInterface ( ); | ||
11 | virtual ~ThemeInterface ( ); | ||
12 | |||
13 | QRESULT queryInterface ( const QUuid &, QUnknownInterface ** ); | ||
14 | Q_REFCOUNT | ||
15 | |||
16 | virtual QStyle *create ( ); | ||
17 | |||
18 | virtual QString description ( ); | ||
19 | virtual QString name ( ); | ||
20 | virtual QCString key ( ); | ||
21 | |||
22 | virtual unsigned int version ( ); | ||
23 | |||
24 | private: | ||
25 | ulong ref; | ||
26 | }; | ||
27 | |||
28 | class ThemeSettingsInterface : public StyleSettingsInterface { | ||
29 | public: | ||
30 | ThemeSettingsInterface ( ); | ||
31 | virtual ~ThemeSettingsInterface ( ); | ||
32 | |||
33 | QRESULT queryInterface ( const QUuid &, QUnknownInterface ** ); | ||
34 | Q_REFCOUNT | ||
35 | |||
36 | virtual QWidget *create ( QWidget *parent, const char *name = 0 ); | ||
37 | |||
38 | virtual bool accept ( ); | ||
39 | virtual void reject ( ); | ||
40 | |||
41 | private: | ||
42 | ThemeSettings *m_widget; | ||
43 | ulong ref; | ||
44 | }; | ||
45 | |||
46 | #endif | ||
diff --git a/noncore/styles/theme/settings/main.cpp b/noncore/styles/theme/settings/main.cpp deleted file mode 100644 index 94d40f3..0000000 --- a/noncore/styles/theme/settings/main.cpp +++ b/dev/null | |||
@@ -1,34 +0,0 @@ | |||
1 | /********************************************************************** | ||
2 | ** Copyright (C) 2000 Trolltech AS. All rights reserved. | ||
3 | ** | ||
4 | ** This file is part of Qtopia Environment. | ||
5 | ** | ||
6 | ** This file may be distributed and/or modified under the terms of the | ||
7 | ** GNU General Public License version 2 as published by the Free Software | ||
8 | ** Foundation and appearing in the file LICENSE.GPL included in the | ||
9 | ** packaging of this file. | ||
10 | ** | ||
11 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE | ||
12 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. | ||
13 | ** | ||
14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. | ||
15 | ** | ||
16 | ** Contact info@trolltech.com if any conditions of this licensing are | ||
17 | ** not clear to you. | ||
18 | ** | ||
19 | **********************************************************************/ | ||
20 | |||
21 | #include "themeset.h" | ||
22 | |||
23 | #include <qpe/qpeapplication.h> | ||
24 | |||
25 | |||
26 | int main ( int argc, char** argv ) | ||
27 | { | ||
28 | QPEApplication a ( argc, argv ); | ||
29 | |||
30 | ThemeSet dlg; | ||
31 | a. showMainWidget ( &dlg ); | ||
32 | |||
33 | return a. exec ( ); | ||
34 | } | ||
diff --git a/noncore/styles/theme/settings/settings.pro b/noncore/styles/theme/settings/settings.pro deleted file mode 100644 index 85d1f7a..0000000 --- a/noncore/styles/theme/settings/settings.pro +++ b/dev/null | |||
@@ -1,24 +0,0 @@ | |||
1 | TEMPLATE= app | ||
2 | CONFIG += qt warn_on release | ||
3 | DESTDIR = $(OPIEDIR)/bin | ||
4 | HEADERS = themeset.h | ||
5 | SOURCES = themeset.cpp main.cpp | ||
6 | INCLUDEPATH += $(OPIEDIR)/include | ||
7 | DEPENDPATH+= ../$(OPIEDIR)/include | ||
8 | LIBS += -lqpe | ||
9 | TARGET = theme-settings | ||
10 | |||
11 | TRANSLATIONS = ../../../../i18n/de/theme-settings.ts \ | ||
12 | ../../../../i18n/en/theme-settings.ts \ | ||
13 | ../../../../i18n/es/theme-settings.ts \ | ||
14 | ../../../../i18n/fr/theme-settings.ts \ | ||
15 | ../../../../i18n/hu/theme-settings.ts \ | ||
16 | ../../../../i18n/ja/theme-settings.ts \ | ||
17 | ../../../../i18n/ko/theme-settings.ts \ | ||
18 | ../../../../i18n/no/theme-settings.ts \ | ||
19 | ../../../../i18n/pl/theme-settings.ts \ | ||
20 | ../../../../i18n/pt/theme-settings.ts \ | ||
21 | ../../../../i18n/pt_BR/theme-settings.ts \ | ||
22 | ../../../../i18n/sl/theme-settings.ts \ | ||
23 | ../../../../i18n/zh_CN/theme-settings.ts \ | ||
24 | ../../../../i18n/zh_TW/theme-settings.ts | ||
diff --git a/noncore/styles/theme/settings/themeset.h b/noncore/styles/theme/settings/themeset.h deleted file mode 100644 index 24804ce..0000000 --- a/noncore/styles/theme/settings/themeset.h +++ b/dev/null | |||
@@ -1,20 +0,0 @@ | |||
1 | #ifndef __OPIE_THEME_SET_H__ | ||
2 | #define __OPIE_THEME_SET_H__ | ||
3 | |||
4 | #include <qdialog.h> | ||
5 | |||
6 | class QListView; | ||
7 | |||
8 | class ThemeSet : public QDialog { | ||
9 | Q_OBJECT | ||
10 | |||
11 | public: | ||
12 | ThemeSet ( QWidget *parent = 0, const char *name = 0, WFlags fl = 0 ); | ||
13 | |||
14 | protected: | ||
15 | virtual void accept ( ); | ||
16 | |||
17 | private: | ||
18 | QListView *m_list; | ||
19 | }; | ||
20 | #endif | ||
diff --git a/noncore/styles/theme/theme.pro b/noncore/styles/theme/theme.pro index fdcd20e..49c4103 100644 --- a/noncore/styles/theme/theme.pro +++ b/noncore/styles/theme/theme.pro | |||
@@ -4,9 +4,12 @@ SOURCES = ogfxeffect.cpp \ | |||
4 | othemestyle.cpp \ | 4 | othemestyle.cpp \ |
5 | othemebase.cpp \ | 5 | othemebase.cpp \ |
6 | themeset.cpp \ | ||
6 | plugin.cpp | 7 | plugin.cpp |
7 | 8 | ||
8 | HEADERS = ogfxeffect.h \ | 9 | HEADERS = ogfxeffect.h \ |
9 | othemebase.h \ | 10 | othemebase.h \ |
10 | othemestyle.h | 11 | othemestyle.h \ |
12 | themeset.h \ | ||
13 | plugin.h | ||
11 | 14 | ||
12 | 15 | ||
diff --git a/noncore/styles/theme/settings/themeset.cpp b/noncore/styles/theme/themeset.cpp index 046618e..4a4efcb 100644 --- a/noncore/styles/theme/settings/themeset.cpp +++ b/noncore/styles/theme/themeset.cpp | |||
@@ -60,6 +60,6 @@ public: | |||
60 | 60 | ||
61 | 61 | ||
62 | ThemeSet::ThemeSet ( QWidget* parent, const char *name, WFlags fl ) | 62 | ThemeSettings::ThemeSettings ( QWidget* parent, const char *name, WFlags fl ) |
63 | : QDialog ( parent, name, fl ) | 63 | : QWidget ( parent, name, fl ) |
64 | { | 64 | { |
65 | setCaption ( tr( "Theme Style" ) ); | 65 | setCaption ( tr( "Theme Style" ) ); |
@@ -110,5 +110,5 @@ ThemeSet::ThemeSet ( QWidget* parent, const char *name, WFlags fl ) | |||
110 | } | 110 | } |
111 | 111 | ||
112 | void ThemeSet::accept ( ) | 112 | bool ThemeSettings::writeConfig ( ) |
113 | { | 113 | { |
114 | Config config ( "qpe" ); | 114 | Config config ( "qpe" ); |
@@ -117,8 +117,7 @@ void ThemeSet::accept ( ) | |||
117 | MyItem *it = (MyItem *) m_list-> selectedItem ( ); | 117 | MyItem *it = (MyItem *) m_list-> selectedItem ( ); |
118 | config. writeEntry ( "Theme", it ? it-> m_theme : QString ( "" )); | 118 | config. writeEntry ( "Theme", it ? it-> m_theme : QString ( "" )); |
119 | config. write ( ); | ||
119 | 120 | ||
120 | Global::applyStyle ( ); | 121 | return true; |
121 | |||
122 | QDialog::accept ( ); | ||
123 | } | 122 | } |
124 | 123 | ||
diff --git a/noncore/styles/theme/themeset.h b/noncore/styles/theme/themeset.h new file mode 100644 index 0000000..c337cfa --- a/dev/null +++ b/noncore/styles/theme/themeset.h | |||
@@ -0,0 +1,20 @@ | |||
1 | #ifndef __OPIE_THEME_SETTINGS_H__ | ||
2 | #define __OPIE_THEME_SETTINGS_H__ | ||
3 | |||
4 | #include <qdialog.h> | ||
5 | |||
6 | class QListView; | ||
7 | |||
8 | class ThemeSettings : public QWidget { | ||
9 | Q_OBJECT | ||
10 | |||
11 | public: | ||
12 | ThemeSettings ( QWidget *parent = 0, const char *name = 0, WFlags fl = 0 ); | ||
13 | |||
14 | public: | ||
15 | virtual bool writeConfig ( ); | ||
16 | |||
17 | private: | ||
18 | QListView *m_list; | ||
19 | }; | ||
20 | #endif | ||