summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/appearance2/appearance.cpp27
-rw-r--r--noncore/settings/appearance2/decolistitem.h10
-rw-r--r--noncore/settings/appearance2/stylelistitem.h5
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
@@ -149,7 +149,7 @@ void Appearance::loadStyles ( QListBox *list )
void Appearance::loadDecos ( QListBox *list )
{
- list-> insertItem ( new DecoListItem ( tr( "Default" )));
+ list-> insertItem ( new DecoListItem ( "QPE" ));
{
QString path = QPEApplication::qpeDir() + "/plugins/decorations/";
@@ -208,7 +208,14 @@ QWidget *Appearance::createStyleTab ( QWidget *parent )
loadStyles ( m_style_list );
QString s = config. readEntry ( "Style", "Light" );
- m_style_list-> setCurrentItem ( m_style_list-> findItem ( s ));
+
+ for ( uint i = 0; i < m_style_list-> count ( ); i++ ) {
+ if (((StyleListItem *) m_style_list-> item ( i ))-> key ( ) == s ) {
+ m_style_list-> setCurrentItem ( i );
+ break;
+ }
+ }
+
m_original_style = m_style_list-> currentItem ( );
styleClicked ( m_original_style );
@@ -231,7 +238,14 @@ QWidget *Appearance::createDecoTab ( QWidget *parent )
loadDecos ( m_deco_list );
QString s = config. readEntry ( "Decoration" );
- m_deco_list-> setCurrentItem ( m_deco_list-> findItem ( s ));
+
+ for ( uint i = 0; i < m_deco_list-> count ( ); i++ ) {
+ if (((DecoListItem *) m_deco_list-> item ( i ))-> key ( ) == s ) {
+ m_deco_list-> setCurrentItem ( i );
+ break;
+ }
+ }
+
m_original_deco = m_deco_list-> currentItem ( );
if ( m_deco_list-> currentItem ( ) < 0 )
m_deco_list-> setCurrentItem ( 0 );
@@ -386,6 +400,12 @@ void Appearance::accept ( )
if ( item )
config.writeEntry( "Style", item-> key ( ));
}
+
+ if ( m_deco_changed ) {
+ DecoListItem *item = (DecoListItem *) m_deco_list-> item ( m_deco_list-> currentItem ( ));
+ if ( item )
+ config.writeEntry( "Decoration", item-> key ( ));
+ }
if (( newtabstyle != m_original_tabstyle ) || ( newtabpos != m_original_tabpos )) {
config. writeEntry ( "TabStyle", newtabstyle + 1 );
@@ -469,6 +489,7 @@ void Appearance::decoClicked ( int index )
m_sample-> setDecoration ( dli-> interface ( ));
else
m_sample-> setDecoration ( new DefaultWindowDecoration ( ));
+ m_sample-> repaint ( );
}
m_deco_changed |= ( index != m_original_deco );
}
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
@@ -31,16 +31,16 @@
#include <qpe/windowdecorationinterface.h>
#include <qlistbox.h>
-class DecoListItem : public QListBoxText {
+class DecoListItem : public QListBoxPixmap {
public:
- DecoListItem ( const QString &t ) : QListBoxText ( t )
+ DecoListItem ( const QString &t ) : QListBoxPixmap ( QPixmap ( ), t )
{
m_lib = 0;
m_window_if = 0;
// m_settings_if = 0;
}
- DecoListItem ( QLibrary *lib, WindowDecorationInterface *iface ) : QListBoxText ( iface-> name ( ))
+ DecoListItem ( QLibrary *lib, WindowDecorationInterface *iface ) : QListBoxPixmap ( iface-> icon ( ), iface-> name ( ))
{
m_lib = lib;
m_window_if = iface;
@@ -85,8 +85,8 @@ public:
QString key ( )
{
- if ( m_window_if )
- return QString ( m_window_if-> name ( ));
+ if ( m_lib )
+ return QFileInfo ( m_lib-> library ( )). fileName ( );
else
return text ( );
}
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
@@ -89,8 +89,9 @@ public:
QString key ( )
{
- if ( m_style_if )
- return QString ( m_style_if-> key ( ));
+ if ( m_lib )
+ return QFileInfo ( m_lib-> library ( )). fileName ( );
+ //return QString ( m_style_if-> key ( ));
else
return text ( );
}