summaryrefslogtreecommitdiffstats
path: root/redhat/tdebase/tdebase-3.5.13.2-kdm_theme_selector.patch
diff options
context:
space:
mode:
Diffstat (limited to 'redhat/tdebase/tdebase-3.5.13.2-kdm_theme_selector.patch')
-rw-r--r--redhat/tdebase/tdebase-3.5.13.2-kdm_theme_selector.patch229
1 files changed, 229 insertions, 0 deletions
diff --git a/redhat/tdebase/tdebase-3.5.13.2-kdm_theme_selector.patch b/redhat/tdebase/tdebase-3.5.13.2-kdm_theme_selector.patch
new file mode 100644
index 000000000..39f6f49a3
--- /dev/null
+++ b/redhat/tdebase/tdebase-3.5.13.2-kdm_theme_selector.patch
@@ -0,0 +1,229 @@
+--- trinity-tdebase-3.5.13.2~pre86+807a5445/kcontrol/kdm/kdm-appear.h.kdm_theme_selector 2013-01-09 02:12:13.000000000 +0100
++++ trinity-tdebase-3.5.13.2~pre86+807a5445/kcontrol/kdm/kdm-appear.h 2013-05-09 12:58:14.535347383 +0200
+@@ -26,6 +26,7 @@
+ #include <tqimage.h>
+ #include <tqfileinfo.h>
+ #include <tqpushbutton.h>
++#include <tqgroupbox.h>
+
+ #include <kcolorbutton.h>
+ #include <kurl.h>
+@@ -57,6 +58,7 @@
+
+ void loadColorSchemes(KBackedComboBox *combo);
+ void loadGuiStyles(KBackedComboBox *combo);
++ void loadThemes(KBackedComboBox *combo);
+ void loadLanguageList(KLanguageButton *combo);
+
+ bool eventFilter(TQObject *, TQEvent *);
+@@ -72,6 +74,7 @@
+ private slots:
+ void slotAreaRadioClicked(int id);
+ void slotLogoButtonClicked();
++ void slotUsethemeChanged(bool state);
+ void changed();
+
+ private:
+@@ -85,14 +88,19 @@
+ TQRadioButton *logoRadio;
+ TQLineEdit *xLineEdit;
+ TQLineEdit *yLineEdit;
++ TQCheckBox * themecheck;
+ KBackedComboBox *compositorcombo;
+ KBackedComboBox *guicombo;
++ KBackedComboBox *themecombo;
+ KBackedComboBox *colcombo;
+ KBackedComboBox *echocombo;
++ TQLabel * themeimagelabel;
+ KLanguageButton *langcombo;
+ TQCheckBox *sakbox;
+ TQLabel *sakwarning;
+
++ //TQHBoxLayout * themehlay;
++ TQGroupBox *themegroup;
+ };
+
+ #endif
+--- trinity-tdebase-3.5.13.2~pre86+807a5445/kcontrol/kdm/kdm-appear.cpp.kdm_theme_selector 2013-01-09 02:12:13.000000000 +0100
++++ trinity-tdebase-3.5.13.2~pre86+807a5445/kcontrol/kdm/kdm-appear.cpp 2013-05-09 13:00:34.428413714 +0200
+@@ -28,6 +28,7 @@
+ #include <tqbuttongroup.h>
+ #include <tqlabel.h>
+ #include <tqlayout.h>
++#include <tqcheckbox.h>
+ #include <tqradiobutton.h>
+ #include <tqwhatsthis.h>
+ #include <tqvalidator.h>
+@@ -35,6 +36,7 @@
+ #include <tqcheckbox.h>
+ #include <tqstyle.h>
+
++#include <kdesktopfile.h>
+ #include <klocale.h>
+ #include <klineedit.h>
+ #include <kimageio.h>
+@@ -62,10 +64,43 @@
+
+ TQVBoxLayout *vbox = new TQVBoxLayout(this, KDialog::marginHint(),
+ KDialog::spacingHint(), "vbox");
+- TQGroupBox *group = new TQGroupBox(i18n("Appearance"), this);
++
++ // ThemeBox Starts here
++
++ themecheck = new TQCheckBox( i18n("Use Theme"), this );
++ vbox->addWidget(themecheck);
++ connect(themecheck, TQT_SIGNAL(toggled(bool)), TQT_SLOT(changed()));
++ connect(themecheck, TQT_SIGNAL(toggled(bool)), TQT_SLOT(slotUsethemeChanged(bool)));
++
++ themegroup = new TQGroupBox(0, Vertical, i18n("Theme"), this);
++ vbox->addWidget(themegroup);
++
++ TQGridLayout * grid = new TQGridLayout( themegroup->layout(), 4, 3, KDialog::spacingHint() );
++
++ grid->setColStretch(1, 1);
++ grid->setColStretch(2, 1);
++
++ themecombo = new KBackedComboBox(themegroup);
++ loadThemes(themecombo);
++
++ TQLabel * label1 = new TQLabel(themecombo, i18n("KDM Theme:"),themegroup);
++ grid->addWidget(label1,1,0);
++ grid->addWidget(themecombo,1,1);
++ connect(themecombo, TQT_SIGNAL(activated(int)), TQT_SLOT(changed()));
++ connect(themecombo, TQT_SIGNAL(activated(int)), TQT_SLOT(slotThemeChanged(int)));
++
++ themeimagelabel = new TQLabel(themecombo,"",themegroup);
++
++ grid->addMultiCellWidget(themeimagelabel,1,3,2,2,TQt::AlignRight);
++
++ vbox->addStretch(1);
++ // ENDS HERE
++
++ TQGroupBox * group = new TQGroupBox(i18n("Appearance"), this);
++
+ vbox->addWidget(group);
+
+- TQGridLayout *grid = new TQGridLayout( group, 5, 2, KDialog::marginHint(),
++ grid = new TQGridLayout( group, 5, 2, KDialog::marginHint(),
+ KDialog::spacingHint(), "grid");
+ grid->addRowSpacing(0, group->fontMetrics().height());
+ grid->setColStretch(0, 1);
+@@ -267,10 +302,25 @@
+
+ }
+
++
++void KDMAppearanceWidget::slotUsethemeChanged(bool state)
++{
++ //themehlay->setEnabled(state);
++ //themecombo->setEnabled(state);
++ //themeimagelabel->setEnabled(state);
++ themegroup->setEnabled(state);
++}
++
++
+ void KDMAppearanceWidget::makeReadOnly()
+ {
+ disconnect( logobutton, TQT_SIGNAL(clicked()),
+ this, TQT_SLOT(slotLogoButtonClicked()) );
++
++ themecheck->setEnabled(false);
++ //themegroup->setEnabled(false);
++ themecombo->setEnabled(false);
++ themeimagelabel->setEnabled(false);
+ logobutton->setAcceptDrops(false);
+ greetstr_lined->setReadOnly(true);
+ noneRadio->setEnabled(false);
+@@ -352,6 +402,40 @@
+ }
+ }
+
++void KDMAppearanceWidget::loadThemes(KBackedComboBox *combo)
++{
++ // Gets current Theme in kdmrc
++ TQString current;
++ config->setGroup("X-*-Greeter");
++ TQFileInfo Theme = config->readEntry("Theme");
++ if(Theme.exists()) {
++ current = Theme.fileName();
++ }
++
++ // List directories under "themes" directory
++ TQDir d(locate("data", TQString::fromLatin1("kdm/themes/")), "", TQDir::Name, TQDir::Dirs|TQDir::NoSymLinks|TQDir::Readable|TQDir::Executable);
++ TQStringList list = d.entryList();
++
++ combo->clear();
++ for (TQStringList::ConstIterator it = list.begin(); it != list.end(); ++it) {
++ TQString name = (*it);
++
++ if(name == "." || name == ".." ) {
++ continue;
++ }
++
++ if (name.isEmpty()) {
++ name = "default";
++ }
++
++ combo->insertItem( *it, name);
++
++ if (name == current) {
++ combo->setCurrentItem(combo->count()-1);
++ }
++ }
++}
++
+ bool KDMAppearanceWidget::setLogo(TQString logo)
+ {
+ TQString flogo = logo.isEmpty() ?
+@@ -468,6 +552,10 @@
+
+ config->writeEntry("GUIStyle", guicombo->currentId());
+
++ TQString Theme = locate("data", TQString::fromLatin1("kdm/themes/"));
++ Theme.append(themecombo->currentId());
++ config->writeEntry("Theme", Theme);
++
+ config->writeEntry("ColorScheme", colcombo->currentId());
+
+ config->writeEntry("EchoMode", echocombo->currentId());
+@@ -476,6 +564,8 @@
+
+ config->writeEntry("Language", langcombo->current());
+
++ config->writeEntry("UseTheme", themecheck->isChecked());
++
+ if (!sakwarning) {
+ config->writeEntry("UseSAK", sakbox->isChecked());
+ }
+@@ -523,6 +613,8 @@
+ // Check the current compositor type
+ compositorcombo->setCurrentId(config->readEntry("Compositor"));
+
++ loadThemes(themecombo);
++
+ // Check the GUI type
+ guicombo->setCurrentId(config->readEntry("GUIStyle"));
+
+@@ -544,6 +636,9 @@
+ // get the language
+ langcombo->setCurrentItem(config->readEntry("Language", "C"));
+
++ themecheck->setChecked(config->readBoolEntry("UseTheme",true));
++ slotUsethemeChanged(config->readBoolEntry("UseTheme",true));
++
+ // See if the SAK is enabled
+ if (!sakwarning) {
+ sakbox->setChecked(config->readBoolEntry("UseSAK", true));
+@@ -556,10 +651,12 @@
+
+ void KDMAppearanceWidget::defaults()
+ {
++ themecheck->setChecked(true);
+ greetstr_lined->setText( i18n("Welcome to %n") );
+ logoRadio->setChecked( true );
+ slotAreaRadioClicked( KdmLogo );
+ setLogo( "" );
++ themecombo->setCurrentId("");
+ compositorcombo->setCurrentId( "" );
+ guicombo->setCurrentId( "" );
+ colcombo->setCurrentId( "" );