summaryrefslogtreecommitdiffstats
path: root/kpersonalizer/kstylepage.cpp
diff options
context:
space:
mode:
authorDarrell Anderson <[email protected]>2013-08-18 10:16:29 -0500
committerDarrell Anderson <[email protected]>2013-08-18 10:16:29 -0500
commit3fce7943f47444f0ac0ccbd225e8b48d8275764b (patch)
tree1245fb62987e54d04ddd5a245a84ab90b28eea4d /kpersonalizer/kstylepage.cpp
parentdf510360d365d88e9496f583fc4d385680b15a17 (diff)
downloadtdebase-3fce7943f47444f0ac0ccbd225e8b48d8275764b.tar.gz
tdebase-3fce7943f47444f0ac0ccbd225e8b48d8275764b.zip
Rename KStyle to TDEStyle to avoid conflicts with KDE4.
Diffstat (limited to 'kpersonalizer/kstylepage.cpp')
-rw-r--r--kpersonalizer/kstylepage.cpp584
1 files changed, 0 insertions, 584 deletions
diff --git a/kpersonalizer/kstylepage.cpp b/kpersonalizer/kstylepage.cpp
deleted file mode 100644
index 974ac0c9d..000000000
--- a/kpersonalizer/kstylepage.cpp
+++ /dev/null
@@ -1,584 +0,0 @@
-/***************************************************************************
- kstylepage.cpp - description
- -------------------
- begin : Tue May 22 2001
- copyright : (C) 2001 by Ralf Nolden
- ***************************************************************************/
-
-/***************************************************************************
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- ***************************************************************************/
-#include <stdlib.h>
-
-#include <tqdir.h>
-#include <tqlabel.h>
-#include <tqlistview.h>
-#include <tqcolor.h>
-#include <tqstylefactory.h>
-#include <tqpixmapcache.h>
-#include <tqstyle.h>
-#include <tqobjectlist.h>
-
-#include <tdeconfig.h>
-#include <kstandarddirs.h>
-#include <tdeapplication.h>
-#include <tdeglobal.h>
-#include <kdebug.h>
-#include <kdesktopfile.h>
-#include <tdelocale.h>
-#include <tdelistview.h>
-#include <kipc.h>
-#include <ksimpleconfig.h>
-#include <dcopclient.h>
-#include <tdestyle.h>
-#include <kicontheme.h>
-#include <kiconloader.h>
-
-#include "stylepreview.h"
-#include "kstylepage.h"
-
-TDEStylePage::TDEStylePage(TQWidget *parent, const char *name ) : TDEStylePageDlg(parent,name) {
-
- px_stylesSidebar->setPixmap(UserIcon("step4.png"));
-
- klv_styles->addColumn(i18n("Style"));
- klv_styles->addColumn( i18n( "Description" ) );
- klv_styles->setAllColumnsShowFocus(true);
-
- kde = new TQListViewItem( klv_styles);
- kde->setText( 0, TQPixmap::defaultDepth() > 8 ? i18n( "Plastik" ) : i18n( "Light" ) );
- kde->setText( 1, i18n( "TDE default style" ) );
-
- classic = new TQListViewItem( klv_styles);
- classic->setText( 0, i18n( "KDE Classic" ) );
- classic->setText( 1, i18n( "Classic KDE style" ) );
-
- keramik = new TQListViewItem( klv_styles );
- keramik->setText( 0, i18n( "Keramik" ) );
- keramik->setText( 1, i18n( "The previous default style" ) );
-
- cde = new TQListViewItem( klv_styles);
- cde->setText( 0, i18n( "Sunshine" ) );
- cde->setText( 1, i18n( "A very common desktop" ) );
-
- win = new TQListViewItem( klv_styles );
- win->setText( 0, i18n( "Redmond" ) );
- win->setText( 1, i18n( "A style from the northwest of the USA" ) );
-
- platinum = new TQListViewItem( klv_styles );
- platinum->setText( 0, i18n( "Platinum" ) );
- platinum->setText( 1, i18n( "The platinum style" ) );
-
- connect(klv_styles, TQT_SIGNAL(selectionChanged()),
- this, TQT_SLOT(slotCurrentChanged()));
-
- // Note: if the default is changed here it needs to be changed in tdebase/twin/plugins.cpp
- // and tdebase/twin/kcmtwin/twindecoration/twindecoration.cpp as well.
- defaultKWinStyle = TQPixmap::defaultDepth() > 8 ? "twin_plastik" : "twin_quartz";
- appliedStyle = NULL;
-
- getAvailability();
- getUserDefaults();
- initColors();
-}
-
-TDEStylePage::~TDEStylePage(){
- delete ctwin;
- delete appliedStyle;
-}
-
-void TDEStylePage::save(bool curSettings){
- kdDebug() << "TDEStylePage::save()" << endl;
- // First, the style, then the colors as styles overwrite color settings
- saveStyle(curSettings);
- saveColors(curSettings);
- saveKWin(curSettings);
- saveIcons(curSettings);
- liveUpdate();
-}
-
-/** save the widget-style */
-void TDEStylePage::saveStyle(bool curSettings){
- TQString style = curSettings ? currentStyle : origStyle;
- TDEConfig cfg( "kdeglobals" );
- cfg.setGroup("General");
- cfg.writeEntry( "widgetStyle", style, true, true );
- cfg.sync();
- kdDebug() << "TDEStylePage::saveStyle(): " << style << endl;
-}
-
-/** save the KWin-style*/
-void TDEStylePage::saveKWin(bool curSettings){
- TQString twin = origKWinStyle;
- if(curSettings) {
- KDesktopFile* kdf = 0L;
- TDEStandardDirs* kstd = TDEGlobal::dirs();
- if (cde->isSelected() && twin_cde_exist)
- kdf = new KDesktopFile(kstd->findResource("data", "twin/cde.desktop"));
- else if (win->isSelected() && twin_win_exist)
- kdf = new KDesktopFile(kstd->findResource("data", "twin/redmond.desktop"));
- else if (platinum->isSelected() && twin_system_exist)
- kdf = new KDesktopFile(kstd->findResource("data", "twin/system.desktop"));
- else if (keramik->isSelected() && twin_keramik_exist)
- kdf = new KDesktopFile(kstd->findResource("data", "twin/keramik.desktop"));
- else if (kde->isSelected()) {
- if (twin_plastik_exist && (TQColor::numBitPlanes() > 8))
- kdf = new KDesktopFile(kstd->findResource("data", "twin/plastik.desktop"));
- else if (twin_quartz_exist)
- kdf = new KDesktopFile(kstd->findResource("data", "twin/quartz.desktop"));
- }
-
- if (kdf) {
- kdf->setGroup("Desktop Entry");
- twin = kdf->readEntry("X-TDE-Library", defaultKWinStyle);
- delete kdf;
- }
- else {
- // if we get here classic is selected (there's no .desktop file for the
- // kde2 twin style), or none of the other twin styles were found.
- twin = "twin_default";
- }
- }
- ctwin->writeEntry("PluginLib", twin);
- ctwin->sync();
- kdDebug() << "TDEStylePage::saveKWin(): " << twin << endl;
-}
-
-/** Save the color-scheme */
-void TDEStylePage::saveColors(bool curSettings){
- struct colorSet* toSave;
- if(curSettings)
- toSave=&currentColors; // set the color struct to save as the style colors
- else
- toSave=&usrColors;
-
- // the GLOBAL config entries must be taken from the kcsrc file and written to it. Use the default values
- // equals that the file is <default> which is no file. TODO: use the default values in that case (kde selected)
- TDEConfig *config = TDEGlobal::config();
- config->setGroup( "General" );
- config->writeEntry("foreground", toSave->foreground, true, true);
- config->writeEntry("background", toSave->background, true, true);
- config->writeEntry("windowForeground", toSave->windowForeground, true, true);
- config->writeEntry("windowBackground", toSave->windowBackground, true, true);
- config->writeEntry("selectForeground", toSave->selectForeground, true, true);
- config->writeEntry("selectBackground", toSave->selectBackground, true, true);
- config->writeEntry("buttonForeground", toSave->buttonForeground, true, true);
- config->writeEntry("buttonBackground", toSave->buttonBackground, true, true);
- config->writeEntry("linkColor", toSave->linkColor, true, true);
- config->writeEntry("visitedLinkColor", toSave->visitedLinkColor, true, true);
-
- // set to the WM group, *only* the TDEGlobal one, a kcsrc file only has the group "Color Scheme" hmpf...
- config->setGroup( "WM" );
- config->writeEntry("activeForeground", toSave->activeForeground, true, true);
- config->writeEntry("inactiveForeground", toSave->inactiveForeground, true, true);
- config->writeEntry("activeBackground", toSave->activeBackground, true, true);
- config->writeEntry("inactiveBackground", toSave->inactiveBackground, true, true);
- config->writeEntry("activeBlend", toSave->activeBlend, true, true);
- config->writeEntry("inactiveBlend", toSave->inactiveBlend, true, true);
- config->writeEntry("activeTitleBtnBg", toSave->activeTitleBtnBg, true, true);
- config->writeEntry("inactiveTitleBtnBg", toSave->inactiveTitleBtnBg, true, true);
- config->writeEntry("alternateBackground", toSave->alternateBackground, true, true);
-
- ////////////////////////////////////////////////////
- // KDE-1.x support
- KSimpleConfig *tdeconfig =
- new KSimpleConfig( TQDir::homeDirPath() + "/.tderc" );
- tdeconfig->setGroup( "General" );
- tdeconfig->writeEntry("background", toSave->background );
- tdeconfig->writeEntry("selectBackground", toSave->selectBackground );
- tdeconfig->writeEntry("foreground", toSave->foreground );
- tdeconfig->writeEntry("windowForeground", toSave->windowForeground );
- tdeconfig->writeEntry("windowBackground", toSave->windowBackground );
- tdeconfig->writeEntry("selectForeground", toSave->selectForeground );
- tdeconfig->sync();
- delete tdeconfig;
-
- config->setGroup("KDE");
- // write the color scheme filename and the contrast, default 7, otherwise from file
- config->writeEntry("colorScheme", toSave->colorFile,true, true);
- config->writeEntry("contrast", toSave->contrast, true, true);
- config->sync();
-
- // background color changes
- TDEConfig kdesktop("kdesktoprc");
- kdesktop.setGroup("Desktop0"); // we only need to set one desktop
-
- kdesktop.writeEntry("BackgroundMode", toSave->bgMode);
- kdesktop.writeEntry("Color1", toSave->usrCol1);
- kdesktop.writeEntry("Color2", toSave->usrCol2);
- kdesktop.sync();
- kdDebug() << "TDEStylePage::saveColors(): colorFile: " << toSave->colorFile << endl;
-}
-
-/** save the icon-theme*/
-void TDEStylePage::saveIcons(bool curSettings) {
- TQString theme = origIcons;
- if (curSettings) {
- if ( (kde->isSelected() || platinum->isSelected() || keramik->isSelected())
- && icon_crystalsvg_exist)
- theme = "crystalsvg";
- else if ( (classic->isSelected() || cde->isSelected() || win->isSelected())
- && (TQColor::numBitPlanes() > 8) && icon_kdeclassic_exist)
- theme = "kdeclassic";
- else if ( (classic->isSelected() || cde->isSelected() || win->isSelected())
- && (TQColor::numBitPlanes() <= 8) && icon_Locolor_exist)
- theme = "Locolor";
- }
- // save, what we got
- TDEGlobal::config()->setGroup("Icons");
- TDEGlobal::config()->writeEntry("Theme", theme, true, true);
- TDEIconTheme icontheme(theme);
- const char * const groups[] = { "Desktop", "Toolbar", "MainToolbar", "Small", 0L };
- for (TDEIcon::Group i=TDEIcon::FirstGroup; i<TDEIcon::LastGroup; i++) {
- if (groups[i] == 0L)
- break;
- TDEGlobal::config()->setGroup(TQString::fromLatin1(groups[i]) + "Icons");
- TDEGlobal::config()->writeEntry("Size", icontheme.defaultSize(i));
- }
- TDEGlobal::config()->sync();
- kdDebug() << "TDEStylePage::saveIcons(): " << theme << endl;
-}
-
-/** called whenever the selection in the listview changes */
-void TDEStylePage::slotCurrentChanged() {
- // fill the currentColors-struct with the selected color-scheme
- getColors(&currentColors, true);
- // fill the currentStyle-string with the selected style-name
- changeCurrentStyle();
- switchPrevStyle();
-}
-
-void TDEStylePage::changeCurrentStyle() {
- // set the style
- if (cde->isSelected() && cde_exist) {
- currentStyle="Motif";
- }
- else if (win->isSelected() && win_exist) {
- currentStyle="Windows";
- }
- else if (platinum->isSelected() && platinum_exist) {
- currentStyle="Platinum";
- }
- else if (keramik->isSelected() && kde_plastik_exist) {
- currentStyle="Keramik";
- }
- else if (classic->isSelected()) {
- // Use the highcolor style if the display supports it
- if ( (TQColor::numBitPlanes() > 8) && kde_hc_exist ) {
- currentStyle="HighColor";
- }
- else if (kde_def_exist) {
- currentStyle="Default";
- }
- }
- else if (kde->isSelected()) {
- // Use the plastik style if the display supports it
- if ( (TQColor::numBitPlanes() > 8) && kde_plastik_exist ) {
- currentStyle="Plastik";
- }
- else if (kde_light_exist) {
- currentStyle="Light, 3rd revision";
- }
- // We should never get here
- else if (kde_def_exist) {
- currentStyle="Default";
- }
- }
- // update the preview-widget
- kdDebug() << "TDEStylePage::changeCurrentStyle(): "<< currentStyle << endl;
-}
-
-/** to be connected to the OS page. Catches
- * either KDE, CDE, win or mac and pre-sets the style.
- */
-void TDEStylePage::presetStyle(const TQString& style){
- kdDebug() << "TDEStylePage::presetStyle(): "<< style << endl;
- if(style=="KDE") {
- if (kde_plastik_exist)
- klv_styles->setSelected(kde,true);
- else if (kde_hc_exist || kde_def_exist)
- klv_styles->setSelected(classic,true);
- }
- else if(style=="CDE" && cde_exist)
- klv_styles->setSelected(cde,true);
- else if(style=="win" && win_exist)
- klv_styles->setSelected(win,true);
- else if(style=="mac") {
- klv_styles->setSelected(platinum,true);
- }
-}
-
-/** set the defaults for this page */
-void TDEStylePage::setDefaults(){
-}
-
-/** Fill a colorSet with a colorfile, or the default. */
-void TDEStylePage::getColors(colorSet *set, bool colorfile ){
- TDEConfig* config;
- bool deleteConfig = false;
- // get the color scheme file and go to the color scheme group
- if(colorfile){
- TDEGlobal::dirs()->addResourceType("colors", TDEStandardDirs::kde_default("data")+"tdedisplay/color-schemes");
- // set the style
- if (kde->isSelected()) {
- set->bgMode="Flat";
- set->usrCol1.setNamedColor("#003082");
- set->usrCol2.setNamedColor("#6C8BB9");
- set->colorFile="<default>";
- }
- else if(classic->isSelected()){
- set->bgMode="VerticalGradient";
- set->usrCol1.setNamedColor ("#1E72A0");
- set->usrCol2.setNamedColor ("#C0C0C0");
- set->colorFile=locate("colors", "KDETwo.kcsrc");
- }
- else if(keramik->isSelected()){
- set->bgMode="VerticalGradient";
- set->usrCol1.setNamedColor ("#1E72A0");
- set->usrCol2.setNamedColor ("#C0C0C0");
- set->colorFile=locate("colors","Keramik.kcsrc");
- }
- else if(cde->isSelected()){
- set->bgMode="Flat";
- set->usrCol1.setNamedColor("#718BA5");
- set->usrCol2.setNamedColor ("#C0C0C0");
- set->colorFile=locate("colors","SolarisCDE.kcsrc");
- }
- else if(win->isSelected()){
- set->bgMode="Flat";
- set->usrCol1.setNamedColor("#008183");
- set->usrCol2.setNamedColor ("#C0C0C0");
- set->colorFile=locate("colors","Windows2000.kcsrc");
- }
- else if(platinum->isSelected()){
- set->bgMode="VerticalGradient";
- set->usrCol1.setNamedColor("#2A569D");
- set->usrCol2.setNamedColor("#6C8BB9");
- set->colorFile=locate("colors","EveX.kcsrc");
- }
- set->contrast=7;
- config = new KSimpleConfig(set->colorFile, true);
- config->setGroup("Color Scheme");
- kdDebug() << "TDEStylePage::getColors(): schemefile: " << set->colorFile << endl;
- deleteConfig = true;
- }
- else {
- TDEConfig kdesktop("kdesktoprc");
- kdesktop.setGroup("Desktop0");
- // set Background (userSettings if available, else default)
- set->bgMode=kdesktop.readEntry("BackgroundMode", "Flat");
- TQColor tmp1("#003082");
- TQColor tmp2("#C0C0C0");
- set->usrCol1=kdesktop.readColorEntry("Color1", &tmp1);
- set->usrCol2=kdesktop.readColorEntry("Color2", &tmp2);
- // write the color scheme filename and the contrast, default 7, otherwise from file
- config=TDEGlobal::config();
- config->setGroup("KDE");
- set->colorFile=config->readEntry("colorScheme", "<default>");
- set->contrast=config->readNumEntry("contrast", 7);
- config->setGroup( "General" );
- kdDebug() << "TDEStylePage::getColors(): schemefile: "<< set->colorFile << endl;
- }
- set->foreground=config->readColorEntry( "foreground", &black );
- set->background=config->readColorEntry( "background", &widget );
- set->windowForeground=config->readColorEntry( "windowForeground", &black );
- set->windowBackground=config->readColorEntry( "windowBackground", &white );
- set->selectForeground=config->readColorEntry( "selectForeground", &white );
- set->selectBackground=config->readColorEntry( "selectBackground", &trinity4Blue );
- set->buttonForeground=config->readColorEntry( "buttonForeground", &black );
- set->buttonBackground=config->readColorEntry( "buttonBackground", &button );
- set->linkColor=config->readColorEntry( "linkColor", &link );
- set->visitedLinkColor=config->readColorEntry( "visitedLinkColor", &visitedLink );
- // it's necessary to set the group, when reading from globalrc
- if(!colorfile)
- config->setGroup( "WM" );
- set->activeForeground=config->readColorEntry("activeForeground", &white);
- set->inactiveForeground=config->readColorEntry("inactiveForeground", &inactiveForeground);
- set->activeBackground=config->readColorEntry("activeBackground", &activeBackground);
- set->inactiveBackground=config->readColorEntry("inactiveBackground", &inactiveBackground);
- set->activeBlend=config->readColorEntry("activeBlend", &activeBlend);
- set->inactiveBlend=config->readColorEntry("inactiveBlend", &inactiveBackground);
- set->activeTitleBtnBg=config->readColorEntry("activeTitleBtnBg", &activeTitleBtnBg);
- set->inactiveTitleBtnBg=config->readColorEntry("inactiveTitleBtnBg", &inactiveTitleBtnBg);
- set->alternateBackground=config->readColorEntry("alternateBackground", &alternateBackground);
- if ( deleteConfig)
- delete config;
-}
-
-/** Test widget- and twin- styles for availability */
-void TDEStylePage::getAvailability() {
- // test, wich styles are available
- kde_keramik_exist = kde_hc_exist = kde_def_exist = cde_exist
- = kde_plastik_exist = win_exist = platinum_exist = false;
- TQStringList styles = TQStyleFactory::keys();
- for (TQStringList::iterator it = styles.begin(); it != styles.end(); it++) {
- if (*it == "Keramik") kde_keramik_exist = true;
- else if (*it == "HighColor") kde_hc_exist = true;
- else if (*it == "Default") kde_def_exist = true;
- else if (*it == "Plastik") kde_plastik_exist = true;
- else if (*it == "Motif") cde_exist = true;
- else if (*it == "Windows") win_exist = true;
- else if (*it == "Platinum") platinum_exist = true;
- else if (*it == "Light, 3rd revision") kde_light_exist = true;
- }
- // and disable the ListItems, if they are not.
- if ( !(kde_plastik_exist || kde_light_exist) ) kde->setVisible(false);
- if ( !(kde_hc_exist || kde_def_exist) ) classic->setVisible(false);
- if (!kde_keramik_exist || TQPixmap::defaultDepth() <= 8) keramik->setVisible(false);
- if (!cde_exist) cde->setVisible(false);
- if (!win_exist) win->setVisible(false);
- if (!platinum_exist) platinum->setVisible(false);
-
- // test, wich KWin-styles are available
- twin_keramik_exist = twin_system_exist = twin_plastik_exist
- = twin_default_exist = twin_win_exist
- = twin_cde_exist = twin_quartz_exist = false;
- TDEStandardDirs* kstd = TDEGlobal::dirs();
- if (!kstd->findResource("data", "twin/keramik.desktop").isNull())
- twin_keramik_exist = true;
- if (!kstd->findResource("data", "twin/plastik.desktop").isNull())
- twin_plastik_exist = true;
- if (!kstd->findResource("data", "twin/system.desktop").isNull())
- twin_system_exist = true;
- if (!kstd->findResource("data", "twin/redmond.desktop").isNull())
- twin_win_exist = true;
- if (!kstd->findResource("data", "twin/cde.desktop").isNull())
- twin_cde_exist = true;
- if (!kstd->findResource("data", "twin/quartz.desktop").isNull())
- twin_quartz_exist = true;
- twin_default_exist = true; // we can't check for a .desktop-file for the old default because there is none
-
- // check, wich Icon-themes are available
- icon_crystalsvg_exist = icon_kdeclassic_exist = icon_Locolor_exist = false;
- TQStringList icons(TDEIconTheme::list());
- for (TQStringList::iterator it=icons.begin(); it != icons.end(); it++) {
- TDEIconTheme icontheme(*it);
- if (icontheme.isHidden() || !icontheme.isValid()) continue;
- if (*it == "crystalsvg") icon_crystalsvg_exist = true;
- else if (*it == "kdeclassic") icon_kdeclassic_exist = true;
- else if (*it == "Locolor") icon_Locolor_exist = true;
- }
-}
-
-/** get the user's former settings */
-void TDEStylePage::getUserDefaults() {
- // Get the user's current widget-style
- TDEGlobal::config()->setGroup("General");
- origStyle = TDEGlobal::config()->readEntry( "widgetStyle", TDEStyle::defaultStyle() );
-
- // get the user's current KWin-style
- ctwin = new TDEConfig("twinrc");
- ctwin->setGroup("Style");
- origKWinStyle = ctwin->readEntry("PluginLib", defaultKWinStyle);
-
- // get the users current colors
- getColors(&usrColors, false);
-
- // Get the user's current iconset
- TDEGlobal::config()->setGroup("Icons");
- origIcons = TDEGlobal::config()->readEntry("Theme");
-
- kdDebug() << "TDEStylePage::getUserDefaults(): style: " << origStyle << endl;
- kdDebug() << "TDEStylePage::getUserDefaults(): KWinStyle: " << origKWinStyle << endl;
- kdDebug() << "TDEStylePage::getUserDefaults(): Colors: " << usrColors.colorFile << endl;
- kdDebug() << "TDEStylePage::getUserDefaults(): Icons: " << origIcons << endl;
-}
-
-/** initialize KDE default color values */
-void TDEStylePage::initColors() {
- widget.setRgb(239, 239, 239);
- trinity4Blue.setRgb(103,141,178);
- inactiveBackground.setRgb(157,170,186);
- activeBackground.setRgb(65,142,220);
- inactiveForeground.setRgb(221,221,221);
- activeBlend.setRgb(107,145,184);
- activeTitleBtnBg.setRgb(127,158,200);
- inactiveTitleBtnBg.setRgb(167,181,199);
- alternateBackground.setRgb(237,244,249);
-
- if (TQPixmap::defaultDepth() > 8)
- button.setRgb(221, 223, 228);
- else
- button.setRgb(220, 220, 220);
-
- link.setRgb(0, 0, 238);
- visitedLink.setRgb(82, 24, 139);
-}
-
-/** live-update the system */
-void TDEStylePage::liveUpdate() {
- // tell all apps about the changed icons
- for (int i=0; i<TDEIcon::LastGroup; i++) {
- KIPC::sendMessageAll(KIPC::IconChanged, i);
- }
- // tell all apps about the changed style
- KIPC::sendMessageAll(KIPC::StyleChanged);
- // color palette changes
- KIPC::sendMessageAll(KIPC::PaletteChanged);
- // twin-style
- kapp->dcopClient()->send("twin*", "", "reconfigure()", TQString(""));
- // kdesktop-background
- kapp->dcopClient()->send("kdesktop", "KBackgroundIface", "configure()", TQString(""));
-}
-
-/** show the previewWidget styled with the selected one */
-void TDEStylePage::switchPrevStyle() {
- TQStyle* style = TQStyleFactory::create(currentStyle);
- if (!style) return;
-
- stylePreview->unsetPalette();
- TQPalette palette = createPalette();
- style->polish(palette);
- stylePreview->setPalette(palette);
-
- // Prevent Qt from wrongly caching radio button images
- TQPixmapCache::clear();
- // go ahead
- setStyleRecursive( stylePreview, palette, style );
- // this flickers, but reliably draws the widgets corretly.
- stylePreview->resize( stylePreview->sizeHint() );
-
- delete appliedStyle;
- appliedStyle = style;
-}
-
-void TDEStylePage::setStyleRecursive(TQWidget* w, TQPalette &palette, TQStyle* s) {
- // Apply the new style.
- w->setStyle(s);
- // Recursively update all children.
- const TQObjectList children = w->childrenListObject();
- if (children.isEmpty())
- return;
- // Apply the style to each child widget.
- TQPtrListIterator<TQObject> childit(children);
- TQObject *child;
- while ((child = childit.current()) != 0) {
- ++childit;
- if (child->isWidgetType())
- setStyleRecursive((TQWidget *) child, palette, s);
- }
-}
-
-/** create a TQPalette of our current colorset */
-TQPalette TDEStylePage::createPalette() {
- colorSet *cc = &currentColors;
- TQColorGroup disabledgrp(cc->windowForeground, cc->background, cc->background.light(150),
- cc->background.dark(), cc->background.dark(120), cc->background.dark(120),
- cc->windowBackground);
- TQColorGroup colgrp(cc->windowForeground, cc->background, cc->background.light(150),
- cc->background.dark(), cc->background.dark(120), cc->foreground,
- cc->windowBackground);
- colgrp.setColor(TQColorGroup::Highlight, cc->selectBackground);
- colgrp.setColor(TQColorGroup::HighlightedText, cc->selectForeground);
- colgrp.setColor(TQColorGroup::Button, cc->buttonBackground);
- colgrp.setColor(TQColorGroup::ButtonText, cc->buttonForeground);
- return TQPalette( colgrp, disabledgrp, colgrp);
-}
-
-#include "kstylepage.moc"