From 3a422983abc7342c9229dccac825d0608fca10f3 Mon Sep 17 00:00:00 2001 From: sandman Date: Sat, 06 Jul 2002 16:42:29 +0000 Subject: 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) --- (limited to 'noncore/styles/liquid/settings/liquidset.cpp') diff --git a/noncore/styles/liquid/settings/liquidset.cpp b/noncore/styles/liquid/settings/liquidset.cpp deleted file mode 100644 index 1479ac0..0000000 --- a/noncore/styles/liquid/settings/liquidset.cpp +++ b/dev/null @@ -1,234 +0,0 @@ -/********************************************************************** -** Copyright (C) 2000 Trolltech AS. All rights reserved. -** -** This file is part of Qtopia Environment. -** -** This file may be distributed and/or modified under the terms of the -** GNU General Public License version 2 as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL included in the -** packaging of this file. -** -** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -** -** See http://www.trolltech.com/gpl/ for GPL licensing information. -** -** Contact info@trolltech.com if any conditions of this licensing are -** not clear to you. -** -**********************************************************************/ - - - -#include "liquidset.h" -#include "../liquid.h" - -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include - - -static void changeButtonColor ( QWidget *btn, const QColor &col ) -{ - QPalette pal = btn-> palette ( ); - - pal. setColor ( QPalette::Normal, QColorGroup::Button, col ); - pal. setColor ( QPalette::Active, QColorGroup::Button, col ); - pal. setColor ( QPalette::Disabled, QColorGroup::Button, col ); - pal. setColor ( QPalette::Inactive, QColorGroup::Button, col ); - pal. setColor ( QPalette::Normal, QColorGroup::Background, col ); - pal. setColor ( QPalette::Active, QColorGroup::Background, col ); - pal. setColor ( QPalette::Disabled, QColorGroup::Background, col ); - pal. setColor ( QPalette::Inactive, QColorGroup::Background, col ); - - btn-> setPalette ( pal ); -} - - -LiquidSet::LiquidSet ( QWidget* parent, const char *name, WFlags fl ) - : QDialog ( parent, name, fl ) -{ - setCaption ( tr( "Liquid Style" ) ); - - Config config ( "qpe" ); - config. setGroup ( "Liquid-Style" ); - - m_type = config. readNumEntry ( "Type", TransStippleBg ); - m_menucol = QColor ( config. readEntry ( "Color", QApplication::palette ( ). active ( ). button ( ). name ( ))); - m_textcol = QColor ( config. readEntry ( "TextColor", QApplication::palette ( ). active ( ). text ( ). name ( ))); - int opacity = config. readNumEntry ( "Opacity", 10 ); - m_shadow = config. readBoolEntry ( "ShadowText", true ); - m_deco = config. readBoolEntry ( "WinDecoration", true ); - int contrast = config. readNumEntry ( "StippleContrast", 5 ); - - QVBoxLayout *vbox = new QVBoxLayout ( this ); - vbox-> setSpacing ( 3 ); - vbox-> setMargin ( 6 ); - - QButtonGroup *btngrp = new QButtonGroup ( this ); - btngrp-> hide ( ); - - QRadioButton *rad; - - rad = new QRadioButton ( tr( "No translucency" ), this ); - btngrp-> insert ( rad, None ); - vbox-> addWidget ( rad ); - - rad = new QRadioButton ( tr( "Stippled, background color" ), this ); - btngrp-> insert ( rad, StippledBg ); - vbox-> addWidget ( rad ); - - rad = new QRadioButton ( tr( "Stippled, button color" ), this ); - btngrp-> insert ( rad, StippledBtn ); - vbox-> addWidget ( rad ); - - rad = new QRadioButton ( tr( "Translucent stippled, background color" ), this ); - btngrp-> insert ( rad, TransStippleBg ); - vbox-> addWidget ( rad ); - - rad = new QRadioButton ( tr( "Translucent stippled, button color" ), this ); - btngrp-> insert ( rad, TransStippleBtn ); - vbox-> addWidget ( rad ); - - rad = new QRadioButton ( tr( "Custom translucency" ), this ); - btngrp-> insert ( rad, Custom ); - vbox-> addWidget ( rad ); - - btngrp-> setExclusive ( true ); - btngrp-> setButton ( m_type ); - - QGridLayout *grid = new QGridLayout ( vbox ); - grid-> addColSpacing ( 0, 16 ); - grid-> addColSpacing ( 3, 8 ); - - grid-> addWidget ( m_menulbl = new QLabel ( tr( "Menu color" ), this ), 0, 1 ); - grid-> addWidget ( m_textlbl = new QLabel ( tr( "Text color" ), this ), 0, 4 ); - grid-> addWidget ( m_opaclbl = new QLabel ( tr( "Opacity" ), this ), 1, 1 ); - - m_menubtn = new QToolButton ( this ); - grid-> addWidget ( m_menubtn, 0, 2 ); - - QPopupMenu *popup; - - popup = new ColorPopupMenu ( m_menucol, this ); - m_menubtn-> setPopup ( popup ); - m_menubtn-> setPopupDelay ( 0 ); - connect ( popup, SIGNAL( colorSelected ( const QColor & )), this, SLOT( changeMenuColor ( const QColor & ))); - changeMenuColor ( m_menucol ); - - m_textbtn = new QToolButton ( this ); - grid-> addWidget ( m_textbtn, 0, 5 ); - - popup = new ColorPopupMenu ( m_textcol, this ); - m_textbtn-> setPopup ( popup ); - m_textbtn-> setPopupDelay ( 0 ); - connect ( popup, SIGNAL( colorSelected ( const QColor & )), this, SLOT( changeTextColor ( const QColor & ))); - changeTextColor ( m_textcol ); - - m_opacsld = new QSlider ( Horizontal, this ); - m_opacsld-> setRange ( -20, 20 ); - m_opacsld-> setValue ( opacity ); - m_opacsld-> setTickmarks ( QSlider::Below ); - grid-> addMultiCellWidget ( m_opacsld, 1, 1, 2, 5 ); - - vbox-> addSpacing ( 4 ); - - QCheckBox *shadow = new QCheckBox ( tr( "Use shadowed menu text" ), this ); - shadow-> setChecked ( m_shadow ); - vbox-> addWidget ( shadow ); - - vbox-> addSpacing ( 4 ); - - QCheckBox *windeco = new QCheckBox ( tr( "Draw liquid window title bars" ), this ); - windeco-> setChecked ( m_deco ); - vbox-> addWidget ( windeco ); - - vbox-> addSpacing ( 4 ); - - QHBoxLayout *hbox = new QHBoxLayout ( vbox ); - - hbox-> addWidget ( new QLabel ( tr( "Stipple contrast" ), this )); - - m_contsld = new QSlider ( Horizontal, this ); - m_contsld-> setRange ( 0, 10 ); - m_contsld-> setValue ( contrast ); - m_contsld-> setTickmarks ( QSlider::Below ); - hbox-> addWidget ( m_contsld, 10 ); - - vbox-> addStretch ( 10 ); - - changeType ( m_type ); - - connect ( btngrp, SIGNAL( clicked ( int ) ), this, SLOT( changeType ( int ) ) ); - connect ( shadow, SIGNAL( toggled ( bool ) ), this, SLOT( changeShadow ( bool ) ) ); - connect ( windeco, SIGNAL( toggled ( bool ) ), this, SLOT( changeDeco ( bool ) ) ); -} - -void LiquidSet::changeType ( int t ) -{ - bool custom = ( t == Custom ); - - m_menulbl-> setEnabled ( custom ); - m_textlbl-> setEnabled ( custom ); - m_opaclbl-> setEnabled ( custom ); - m_menubtn-> setEnabled ( custom ); - m_textbtn-> setEnabled ( custom ); - m_opacsld-> setEnabled ( custom ); - - m_type = t; -} - -void LiquidSet::changeMenuColor ( const QColor &col ) -{ - changeButtonColor ( m_menubtn, col ); - m_menucol = col; -} - -void LiquidSet::changeTextColor ( const QColor &col ) -{ - changeButtonColor ( m_textbtn, col ); - m_textcol = col; -} - -void LiquidSet::changeShadow ( bool b ) -{ - m_shadow = b; -} - -void LiquidSet::changeDeco ( bool b ) -{ - m_deco = b; -} - - -void LiquidSet::accept ( ) -{ - Config config ( "qpe" ); - config. setGroup ( "Liquid-Style" ); - - config. writeEntry ( "Type", m_type ); - config. writeEntry ( "Color", m_menucol. name ( )); - config. writeEntry ( "TextColor", m_textcol. name ( )); - config. writeEntry ( "Opacity", m_opacsld-> value ( )); - config. writeEntry ( "ShadowText", m_shadow ); - config. writeEntry ( "WinDecoration", m_deco ); - config. writeEntry ( "StippleContrast", m_contsld-> value ( )); - config. write ( ); - - Global::applyStyle ( ); - - QDialog::accept ( ); -} - -- cgit v0.9.0.2