-rw-r--r-- | noncore/settings/appearance2/appearance.cpp | 27 | ||||
-rw-r--r-- | noncore/settings/appearance2/decolistitem.h | 10 | ||||
-rw-r--r-- | noncore/settings/appearance2/stylelistitem.h | 5 |
3 files changed, 32 insertions, 10 deletions
diff --git a/noncore/settings/appearance2/appearance.cpp b/noncore/settings/appearance2/appearance.cpp index 43ff24c..8cd54a2 100644 --- a/noncore/settings/appearance2/appearance.cpp +++ b/noncore/settings/appearance2/appearance.cpp | |||
@@ -140,25 +140,25 @@ void Appearance::loadStyles ( QListBox *list ) | |||
140 | if ( lib-> queryInterface ( IID_Style, (QUnknownInterface **) &iface ) == QS_OK ) | 140 | if ( lib-> queryInterface ( IID_Style, (QUnknownInterface **) &iface ) == QS_OK ) |
141 | list-> insertItem ( new StyleListItem ( lib, iface )); | 141 | list-> insertItem ( new StyleListItem ( lib, iface )); |
142 | else | 142 | else |
143 | delete lib; | 143 | delete lib; |
144 | } | 144 | } |
145 | } | 145 | } |
146 | 146 | ||
147 | #endif | 147 | #endif |
148 | } | 148 | } |
149 | 149 | ||
150 | void Appearance::loadDecos ( QListBox *list ) | 150 | void Appearance::loadDecos ( QListBox *list ) |
151 | { | 151 | { |
152 | list-> insertItem ( new DecoListItem ( tr( "Default" ))); | 152 | list-> insertItem ( new DecoListItem ( "QPE" )); |
153 | 153 | ||
154 | { | 154 | { |
155 | QString path = QPEApplication::qpeDir() + "/plugins/decorations/"; | 155 | QString path = QPEApplication::qpeDir() + "/plugins/decorations/"; |
156 | QStringList sl = QDir ( path, "lib*.so" ). entryList ( ); | 156 | QStringList sl = QDir ( path, "lib*.so" ). entryList ( ); |
157 | 157 | ||
158 | for ( QStringList::Iterator it = sl. begin ( ); it != sl. end ( ); ++it ) { | 158 | for ( QStringList::Iterator it = sl. begin ( ); it != sl. end ( ); ++it ) { |
159 | QLibrary *lib = new QLibrary ( path + "/" + *it ); | 159 | QLibrary *lib = new QLibrary ( path + "/" + *it ); |
160 | WindowDecorationInterface *iface; | 160 | WindowDecorationInterface *iface; |
161 | 161 | ||
162 | if ( lib-> queryInterface ( IID_WindowDecoration, (QUnknownInterface **) &iface ) == QS_OK ) | 162 | if ( lib-> queryInterface ( IID_WindowDecoration, (QUnknownInterface **) &iface ) == QS_OK ) |
163 | list-> insertItem ( new DecoListItem ( lib, iface )); | 163 | list-> insertItem ( new DecoListItem ( lib, iface )); |
164 | else | 164 | else |
@@ -199,48 +199,62 @@ QWidget *Appearance::createStyleTab ( QWidget *parent ) | |||
199 | QVBoxLayout* vertLayout = new QVBoxLayout( tab, 4, 4 ); | 199 | QVBoxLayout* vertLayout = new QVBoxLayout( tab, 4, 4 ); |
200 | 200 | ||
201 | m_style_list = new QListBox( tab, "m_style_list" ); | 201 | m_style_list = new QListBox( tab, "m_style_list" ); |
202 | vertLayout->addWidget( m_style_list ); | 202 | vertLayout->addWidget( m_style_list ); |
203 | 203 | ||
204 | m_style_settings = new QPushButton ( tr( "Settings..." ), tab ); | 204 | m_style_settings = new QPushButton ( tr( "Settings..." ), tab ); |
205 | connect ( m_style_settings, SIGNAL( clicked ( )), this, SLOT( styleSettingsClicked ( ))); | 205 | connect ( m_style_settings, SIGNAL( clicked ( )), this, SLOT( styleSettingsClicked ( ))); |
206 | vertLayout-> addWidget ( m_style_settings ); | 206 | vertLayout-> addWidget ( m_style_settings ); |
207 | 207 | ||
208 | loadStyles ( m_style_list ); | 208 | loadStyles ( m_style_list ); |
209 | 209 | ||
210 | QString s = config. readEntry ( "Style", "Light" ); | 210 | QString s = config. readEntry ( "Style", "Light" ); |
211 | m_style_list-> setCurrentItem ( m_style_list-> findItem ( s )); | 211 | |
212 | for ( uint i = 0; i < m_style_list-> count ( ); i++ ) { | ||
213 | if (((StyleListItem *) m_style_list-> item ( i ))-> key ( ) == s ) { | ||
214 | m_style_list-> setCurrentItem ( i ); | ||
215 | break; | ||
216 | } | ||
217 | } | ||
218 | |||
212 | m_original_style = m_style_list-> currentItem ( ); | 219 | m_original_style = m_style_list-> currentItem ( ); |
213 | styleClicked ( m_original_style ); | 220 | styleClicked ( m_original_style ); |
214 | 221 | ||
215 | connect( m_style_list, SIGNAL( highlighted( int ) ), this, SLOT( styleClicked( int ) ) ); | 222 | connect( m_style_list, SIGNAL( highlighted( int ) ), this, SLOT( styleClicked( int ) ) ); |
216 | 223 | ||
217 | return tab; | 224 | return tab; |
218 | } | 225 | } |
219 | 226 | ||
220 | QWidget *Appearance::createDecoTab ( QWidget *parent ) | 227 | QWidget *Appearance::createDecoTab ( QWidget *parent ) |
221 | { | 228 | { |
222 | Config config ( "qpe" ); | 229 | Config config ( "qpe" ); |
223 | config. setGroup ( "Appearance" ); | 230 | config. setGroup ( "Appearance" ); |
224 | 231 | ||
225 | QWidget* tab = new QWidget( parent, "DecoTab" ); | 232 | QWidget* tab = new QWidget( parent, "DecoTab" ); |
226 | QVBoxLayout* vertLayout = new QVBoxLayout( tab, 4, 4 ); | 233 | QVBoxLayout* vertLayout = new QVBoxLayout( tab, 4, 4 ); |
227 | 234 | ||
228 | m_deco_list = new QListBox( tab, "m_deco_list" ); | 235 | m_deco_list = new QListBox( tab, "m_deco_list" ); |
229 | vertLayout->addWidget( m_deco_list ); | 236 | vertLayout->addWidget( m_deco_list ); |
230 | 237 | ||
231 | loadDecos ( m_deco_list ); | 238 | loadDecos ( m_deco_list ); |
232 | 239 | ||
233 | QString s = config. readEntry ( "Decoration" ); | 240 | QString s = config. readEntry ( "Decoration" ); |
234 | m_deco_list-> setCurrentItem ( m_deco_list-> findItem ( s )); | 241 | |
242 | for ( uint i = 0; i < m_deco_list-> count ( ); i++ ) { | ||
243 | if (((DecoListItem *) m_deco_list-> item ( i ))-> key ( ) == s ) { | ||
244 | m_deco_list-> setCurrentItem ( i ); | ||
245 | break; | ||
246 | } | ||
247 | } | ||
248 | |||
235 | m_original_deco = m_deco_list-> currentItem ( ); | 249 | m_original_deco = m_deco_list-> currentItem ( ); |
236 | if ( m_deco_list-> currentItem ( ) < 0 ) | 250 | if ( m_deco_list-> currentItem ( ) < 0 ) |
237 | m_deco_list-> setCurrentItem ( 0 ); | 251 | m_deco_list-> setCurrentItem ( 0 ); |
238 | decoClicked ( m_original_deco ); | 252 | decoClicked ( m_original_deco ); |
239 | 253 | ||
240 | connect( m_deco_list, SIGNAL( highlighted( int ) ), this, SLOT( decoClicked( int ) ) ); | 254 | connect( m_deco_list, SIGNAL( highlighted( int ) ), this, SLOT( decoClicked( int ) ) ); |
241 | 255 | ||
242 | return tab; | 256 | return tab; |
243 | } | 257 | } |
244 | 258 | ||
245 | QWidget *Appearance::createFontTab ( QWidget *parent ) | 259 | QWidget *Appearance::createFontTab ( QWidget *parent ) |
246 | { | 260 | { |
@@ -377,24 +391,30 @@ void Appearance::accept ( ) | |||
377 | Config config("qpe"); | 391 | Config config("qpe"); |
378 | config.setGroup( "Appearance" ); | 392 | config.setGroup( "Appearance" ); |
379 | 393 | ||
380 | int newtabstyle = m_tabstyle_list-> currentItem ( ); | 394 | int newtabstyle = m_tabstyle_list-> currentItem ( ); |
381 | bool newtabpos = m_tabstyle_top-> isChecked ( ); | 395 | bool newtabpos = m_tabstyle_top-> isChecked ( ); |
382 | 396 | ||
383 | 397 | ||
384 | if ( m_style_changed ) { | 398 | if ( m_style_changed ) { |
385 | StyleListItem *item = (StyleListItem *) m_style_list-> item ( m_style_list-> currentItem ( )); | 399 | StyleListItem *item = (StyleListItem *) m_style_list-> item ( m_style_list-> currentItem ( )); |
386 | if ( item ) | 400 | if ( item ) |
387 | config.writeEntry( "Style", item-> key ( )); | 401 | config.writeEntry( "Style", item-> key ( )); |
388 | } | 402 | } |
403 | |||
404 | if ( m_deco_changed ) { | ||
405 | DecoListItem *item = (DecoListItem *) m_deco_list-> item ( m_deco_list-> currentItem ( )); | ||
406 | if ( item ) | ||
407 | config.writeEntry( "Decoration", item-> key ( )); | ||
408 | } | ||
389 | 409 | ||
390 | if (( newtabstyle != m_original_tabstyle ) || ( newtabpos != m_original_tabpos )) { | 410 | if (( newtabstyle != m_original_tabstyle ) || ( newtabpos != m_original_tabpos )) { |
391 | config. writeEntry ( "TabStyle", newtabstyle + 1 ); | 411 | config. writeEntry ( "TabStyle", newtabstyle + 1 ); |
392 | config. writeEntry ( "TabPosition", newtabpos ? "Top" : "Bottom" ); | 412 | config. writeEntry ( "TabPosition", newtabpos ? "Top" : "Bottom" ); |
393 | } | 413 | } |
394 | 414 | ||
395 | if ( m_font_changed ) { | 415 | if ( m_font_changed ) { |
396 | config. writeEntry ( "FontFamily", m_fontselect-> fontFamily ( )); | 416 | config. writeEntry ( "FontFamily", m_fontselect-> fontFamily ( )); |
397 | config. writeEntry ( "FontStyle", m_fontselect-> fontStyle ( )); | 417 | config. writeEntry ( "FontStyle", m_fontselect-> fontStyle ( )); |
398 | config. writeEntry ( "FontSize", m_fontselect-> fontSize ( )); | 418 | config. writeEntry ( "FontSize", m_fontselect-> fontSize ( )); |
399 | } | 419 | } |
400 | 420 | ||
@@ -460,24 +480,25 @@ void Appearance::styleSettingsClicked ( ) | |||
460 | } | 480 | } |
461 | } | 481 | } |
462 | 482 | ||
463 | void Appearance::decoClicked ( int index ) | 483 | void Appearance::decoClicked ( int index ) |
464 | { | 484 | { |
465 | DecoListItem *dli = (DecoListItem *) m_deco_list-> item ( index ); | 485 | DecoListItem *dli = (DecoListItem *) m_deco_list-> item ( index ); |
466 | 486 | ||
467 | if ( m_sample ) { | 487 | if ( m_sample ) { |
468 | if ( dli && dli-> interface ( )) | 488 | if ( dli && dli-> interface ( )) |
469 | m_sample-> setDecoration ( dli-> interface ( )); | 489 | m_sample-> setDecoration ( dli-> interface ( )); |
470 | else | 490 | else |
471 | m_sample-> setDecoration ( new DefaultWindowDecoration ( )); | 491 | m_sample-> setDecoration ( new DefaultWindowDecoration ( )); |
492 | m_sample-> repaint ( ); | ||
472 | } | 493 | } |
473 | m_deco_changed |= ( index != m_original_deco ); | 494 | m_deco_changed |= ( index != m_original_deco ); |
474 | } | 495 | } |
475 | 496 | ||
476 | void Appearance::fontClicked ( const QFont &f ) | 497 | void Appearance::fontClicked ( const QFont &f ) |
477 | { | 498 | { |
478 | m_font_changed |= ( f != m_sample-> font ( )); | 499 | m_font_changed |= ( f != m_sample-> font ( )); |
479 | m_sample-> setFont ( f ); | 500 | m_sample-> setFont ( f ); |
480 | } | 501 | } |
481 | 502 | ||
482 | void Appearance::colorClicked ( int index ) | 503 | void Appearance::colorClicked ( int index ) |
483 | { | 504 | { |
diff --git a/noncore/settings/appearance2/decolistitem.h b/noncore/settings/appearance2/decolistitem.h index 23261b1..d190ceb 100644 --- a/noncore/settings/appearance2/decolistitem.h +++ b/noncore/settings/appearance2/decolistitem.h | |||
@@ -22,34 +22,34 @@ | |||
22 | -- :-=` Free Software Foundation, Inc., | 22 | -- :-=` Free Software Foundation, Inc., |
23 | 59 Temple Place - Suite 330, | 23 | 59 Temple Place - Suite 330, |
24 | Boston, MA 02111-1307, USA. | 24 | Boston, MA 02111-1307, USA. |
25 | 25 | ||
26 | */ | 26 | */ |
27 | 27 | ||
28 | #ifndef DECOLISTITEM_H | 28 | #ifndef DECOLISTITEM_H |
29 | #define DECOLISTITEM_H | 29 | #define DECOLISTITEM_H |
30 | 30 | ||
31 | #include <qpe/windowdecorationinterface.h> | 31 | #include <qpe/windowdecorationinterface.h> |
32 | #include <qlistbox.h> | 32 | #include <qlistbox.h> |
33 | 33 | ||
34 | class DecoListItem : public QListBoxText { | 34 | class DecoListItem : public QListBoxPixmap { |
35 | public: | 35 | public: |
36 | DecoListItem ( const QString &t ) : QListBoxText ( t ) | 36 | DecoListItem ( const QString &t ) : QListBoxPixmap ( QPixmap ( ), t ) |
37 | { | 37 | { |
38 | m_lib = 0; | 38 | m_lib = 0; |
39 | m_window_if = 0; | 39 | m_window_if = 0; |
40 | // m_settings_if = 0; | 40 | // m_settings_if = 0; |
41 | } | 41 | } |
42 | 42 | ||
43 | DecoListItem ( QLibrary *lib, WindowDecorationInterface *iface ) : QListBoxText ( iface-> name ( )) | 43 | DecoListItem ( QLibrary *lib, WindowDecorationInterface *iface ) : QListBoxPixmap ( iface-> icon ( ), iface-> name ( )) |
44 | { | 44 | { |
45 | m_lib = lib; | 45 | m_lib = lib; |
46 | m_window_if = iface; | 46 | m_window_if = iface; |
47 | 47 | ||
48 | // iface-> queryInterface ( IID_WindowDecoration, (QUnknownInterface **) &m_settings_if ); | 48 | // iface-> queryInterface ( IID_WindowDecoration, (QUnknownInterface **) &m_settings_if ); |
49 | } | 49 | } |
50 | 50 | ||
51 | virtual ~DecoListItem ( ) | 51 | virtual ~DecoListItem ( ) |
52 | { | 52 | { |
53 | // if ( m_settings_if ) | 53 | // if ( m_settings_if ) |
54 | // m_settings_if-> release ( ); | 54 | // m_settings_if-> release ( ); |
55 | if ( m_window_if ) | 55 | if ( m_window_if ) |
@@ -76,26 +76,26 @@ public: | |||
76 | 76 | ||
77 | // if ( accepted ) | 77 | // if ( accepted ) |
78 | // return m_settings_if-> accept ( ); | 78 | // return m_settings_if-> accept ( ); |
79 | // else { | 79 | // else { |
80 | // m_settings_if-> reject ( ); | 80 | // m_settings_if-> reject ( ); |
81 | // return false; | 81 | // return false; |
82 | // } | 82 | // } |
83 | return false; | 83 | return false; |
84 | } | 84 | } |
85 | 85 | ||
86 | QString key ( ) | 86 | QString key ( ) |
87 | { | 87 | { |
88 | if ( m_window_if ) | 88 | if ( m_lib ) |
89 | return QString ( m_window_if-> name ( )); | 89 | return QFileInfo ( m_lib-> library ( )). fileName ( ); |
90 | else | 90 | else |
91 | return text ( ); | 91 | return text ( ); |
92 | } | 92 | } |
93 | 93 | ||
94 | WindowDecorationInterface *interface ( ) | 94 | WindowDecorationInterface *interface ( ) |
95 | { | 95 | { |
96 | return m_window_if; | 96 | return m_window_if; |
97 | } | 97 | } |
98 | 98 | ||
99 | private: | 99 | private: |
100 | QLibrary *m_lib; | 100 | QLibrary *m_lib; |
101 | WindowDecorationInterface *m_window_if; | 101 | WindowDecorationInterface *m_window_if; |
diff --git a/noncore/settings/appearance2/stylelistitem.h b/noncore/settings/appearance2/stylelistitem.h index c0258e0..e261511 100644 --- a/noncore/settings/appearance2/stylelistitem.h +++ b/noncore/settings/appearance2/stylelistitem.h | |||
@@ -80,26 +80,27 @@ public: | |||
80 | return false; | 80 | return false; |
81 | 81 | ||
82 | if ( accepted ) | 82 | if ( accepted ) |
83 | return m_settings_if-> accept ( ); | 83 | return m_settings_if-> accept ( ); |
84 | else { | 84 | else { |
85 | m_settings_if-> reject ( ); | 85 | m_settings_if-> reject ( ); |
86 | return false; | 86 | return false; |
87 | } | 87 | } |
88 | } | 88 | } |
89 | 89 | ||
90 | QString key ( ) | 90 | QString key ( ) |
91 | { | 91 | { |
92 | if ( m_style_if ) | 92 | if ( m_lib ) |
93 | return QString ( m_style_if-> key ( )); | 93 | return QFileInfo ( m_lib-> library ( )). fileName ( ); |
94 | //return QString ( m_style_if-> key ( )); | ||
94 | else | 95 | else |
95 | return text ( ); | 96 | return text ( ); |
96 | } | 97 | } |
97 | 98 | ||
98 | QStyle *style ( ) | 99 | QStyle *style ( ) |
99 | { | 100 | { |
100 | return m_style; | 101 | return m_style; |
101 | } | 102 | } |
102 | 103 | ||
103 | private: | 104 | private: |
104 | QLibrary *m_lib; | 105 | QLibrary *m_lib; |
105 | QStyle *m_style; | 106 | QStyle *m_style; |