Diffstat (limited to 'noncore/settings/appearance2/appearance.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/settings/appearance2/appearance.cpp | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/noncore/settings/appearance2/appearance.cpp b/noncore/settings/appearance2/appearance.cpp index 2f3ba74..e9e0ad9 100644 --- a/noncore/settings/appearance2/appearance.cpp +++ b/noncore/settings/appearance2/appearance.cpp @@ -415,22 +415,24 @@ Appearance::Appearance( QWidget* parent, const char* name, WFlags ) QVBoxLayout *top = new QVBoxLayout ( this, 3, 3 ); m_sample = new SampleWindow ( this ); m_sample-> setDecoration ( new DefaultWindowDecoration ( )); QWhatsThis::add( m_sample, tr( "This is a preview window. Look here to see your new appearance as options are changed." ) ); OTabWidget* tw = new OTabWidget ( this, "tabwidget", OTabWidget::Global, OTabWidget::Bottom ); QWidget *styletab; - - tw-> addTab ( styletab = createStyleTab ( tw, config ), "appearance/style.png", tr( "Style" )); - tw-> addTab ( createFontTab ( tw, config ), "appearance/font.png", tr( "Font" )); - tw-> addTab ( createColorTab ( tw, config ), "appearance/color.png", tr( "Colors" ) ); - tw-> addTab ( createDecoTab ( tw, config ), "appearance/deco.png", tr( "Windows" ) ); - tw-> addTab ( m_advtab = createAdvancedTab ( tw, config ), "appearance/advanced.png", tr( "Advanced" ) ); + + m_color_list = 0; + + tw-> addTab ( styletab = createStyleTab ( tw, config ), "appearance/style", tr( "Style" )); + tw-> addTab ( createFontTab ( tw, config ), "appearance/font", tr( "Font" )); + tw-> addTab ( createColorTab ( tw, config ), "appearance/color", tr( "Colors" ) ); + tw-> addTab ( createDecoTab ( tw, config ), "appearance/deco", tr( "Windows" ) ); + tw-> addTab ( m_advtab = createAdvancedTab ( tw, config ), "appearance/advanced", tr( "Advanced" ) ); top-> addWidget ( tw, 10 ); top-> addWidget ( m_sample, 1 ); tw-> setCurrentTab ( styletab ); connect ( tw, SIGNAL( currentChanged ( QWidget * )), this, SLOT( tabChanged ( QWidget * ))); m_style_changed = m_font_changed = m_color_changed = m_deco_changed = false; @@ -523,20 +525,23 @@ void Appearance::done ( int r ) close ( ); } void Appearance::styleClicked ( int index ) { StyleListItem *sli = (StyleListItem *) m_style_list-> item ( index ); m_style_settings-> setEnabled ( sli ? sli-> hasSettings ( ) : false ); - - if ( m_sample && sli && sli-> style ( )) - m_sample-> setStyle2 ( sli-> style ( )); - + + if ( m_sample && sli && sli-> style ( )) { + int ci = m_color_list ? m_color_list-> currentItem ( ) : -1; + + m_sample-> setStyle2 ( sli-> style ( ), ci < 0 ? palette ( ) : ((ColorListItem *) m_color_list-> item ( ci ))-> palette ( )); + } + m_style_changed |= ( index != m_original_style ); } void Appearance::styleSettingsClicked ( ) { StyleListItem *item = (StyleListItem *) m_style_list-> item ( m_style_list-> currentItem ( )); if ( item && item-> hasSettings ( )) { |