|
Lines 28-33
Link Here
|
| 28 |
#include <tqbuttongroup.h> |
28 |
#include <tqbuttongroup.h> |
| 29 |
#include <tqlabel.h> |
29 |
#include <tqlabel.h> |
| 30 |
#include <tqlayout.h> |
30 |
#include <tqlayout.h> |
|
|
31 |
#include <tqcheckbox.h> |
| 31 |
#include <tqradiobutton.h> |
32 |
#include <tqradiobutton.h> |
| 32 |
#include <tqwhatsthis.h> |
33 |
#include <tqwhatsthis.h> |
| 33 |
#include <tqvalidator.h> |
34 |
#include <tqvalidator.h> |
|
Lines 35-40
Link Here
|
| 35 |
#include <tqcheckbox.h> |
36 |
#include <tqcheckbox.h> |
| 36 |
#include <tqstyle.h> |
37 |
#include <tqstyle.h> |
| 37 |
|
38 |
|
|
|
39 |
#include <kdesktopfile.h> |
| 38 |
#include <klocale.h> |
40 |
#include <klocale.h> |
| 39 |
#include <klineedit.h> |
41 |
#include <klineedit.h> |
| 40 |
#include <kimageio.h> |
42 |
#include <kimageio.h> |
|
Lines 62-71
Link Here
|
| 62 |
|
64 |
|
| 63 |
TQVBoxLayout *vbox = new TQVBoxLayout(this, KDialog::marginHint(), |
65 |
TQVBoxLayout *vbox = new TQVBoxLayout(this, KDialog::marginHint(), |
| 64 |
KDialog::spacingHint(), "vbox"); |
66 |
KDialog::spacingHint(), "vbox"); |
| 65 |
TQGroupBox *group = new TQGroupBox(i18n("Appearance"), this); |
67 |
|
|
|
68 |
// ThemeBox Starts here |
| 69 |
|
| 70 |
themecheck = new TQCheckBox( i18n("Use Theme"), this ); |
| 71 |
vbox->addWidget(themecheck); |
| 72 |
connect(themecheck, TQT_SIGNAL(toggled(bool)), TQT_SLOT(changed())); |
| 73 |
connect(themecheck, TQT_SIGNAL(toggled(bool)), TQT_SLOT(slotUsethemeChanged(bool))); |
| 74 |
|
| 75 |
themegroup = new TQGroupBox(0, Vertical, i18n("Theme"), this); |
| 76 |
vbox->addWidget(themegroup); |
| 77 |
|
| 78 |
TQGridLayout * grid = new TQGridLayout( themegroup->layout(), 4, 3, KDialog::spacingHint() ); |
| 79 |
|
| 80 |
grid->setColStretch(1, 1); |
| 81 |
grid->setColStretch(2, 1); |
| 82 |
|
| 83 |
themecombo = new KBackedComboBox(themegroup); |
| 84 |
loadThemes(themecombo); |
| 85 |
|
| 86 |
TQLabel * label1 = new TQLabel(themecombo, i18n("KDM Theme:"),themegroup); |
| 87 |
grid->addWidget(label1,1,0); |
| 88 |
grid->addWidget(themecombo,1,1); |
| 89 |
connect(themecombo, TQT_SIGNAL(activated(int)), TQT_SLOT(changed())); |
| 90 |
connect(themecombo, TQT_SIGNAL(activated(int)), TQT_SLOT(slotThemeChanged(int))); |
| 91 |
|
| 92 |
themeimagelabel = new TQLabel(themecombo,"",themegroup); |
| 93 |
|
| 94 |
grid->addMultiCellWidget(themeimagelabel,1,3,2,2,TQt::AlignRight); |
| 95 |
|
| 96 |
vbox->addStretch(1); |
| 97 |
// ENDS HERE |
| 98 |
|
| 99 |
TQGroupBox * group = new TQGroupBox(i18n("Appearance"), this); |
| 100 |
|
| 66 |
vbox->addWidget(group); |
101 |
vbox->addWidget(group); |
| 67 |
|
102 |
|
| 68 |
TQGridLayout *grid = new TQGridLayout( group, 5, 2, KDialog::marginHint(), |
103 |
grid = new TQGridLayout( group, 5, 2, KDialog::marginHint(), |
| 69 |
KDialog::spacingHint(), "grid"); |
104 |
KDialog::spacingHint(), "grid"); |
| 70 |
grid->addRowSpacing(0, group->fontMetrics().height()); |
105 |
grid->addRowSpacing(0, group->fontMetrics().height()); |
| 71 |
grid->setColStretch(0, 1); |
106 |
grid->setColStretch(0, 1); |
|
Lines 267-276
Link Here
|
| 267 |
|
302 |
|
| 268 |
} |
303 |
} |
| 269 |
|
304 |
|
|
|
305 |
|
| 306 |
void KDMAppearanceWidget::slotUsethemeChanged(bool state) |
| 307 |
{ |
| 308 |
//themehlay->setEnabled(state); |
| 309 |
//themecombo->setEnabled(state); |
| 310 |
//themeimagelabel->setEnabled(state); |
| 311 |
themegroup->setEnabled(state); |
| 312 |
} |
| 313 |
|
| 314 |
|
| 270 |
void KDMAppearanceWidget::makeReadOnly() |
315 |
void KDMAppearanceWidget::makeReadOnly() |
| 271 |
{ |
316 |
{ |
| 272 |
disconnect( logobutton, TQT_SIGNAL(clicked()), |
317 |
disconnect( logobutton, TQT_SIGNAL(clicked()), |
| 273 |
this, TQT_SLOT(slotLogoButtonClicked()) ); |
318 |
this, TQT_SLOT(slotLogoButtonClicked()) ); |
|
|
319 |
|
| 320 |
themecheck->setEnabled(false); |
| 321 |
//themegroup->setEnabled(false); |
| 322 |
themecombo->setEnabled(false); |
| 323 |
themeimagelabel->setEnabled(false); |
| 274 |
logobutton->setAcceptDrops(false); |
324 |
logobutton->setAcceptDrops(false); |
| 275 |
greetstr_lined->setReadOnly(true); |
325 |
greetstr_lined->setReadOnly(true); |
| 276 |
noneRadio->setEnabled(false); |
326 |
noneRadio->setEnabled(false); |
|
Lines 352-357
Link Here
|
| 352 |
} |
402 |
} |
| 353 |
} |
403 |
} |
| 354 |
|
404 |
|
|
|
405 |
void KDMAppearanceWidget::loadThemes(KBackedComboBox *combo) |
| 406 |
{ |
| 407 |
// Gets current Theme in kdmrc |
| 408 |
TQString current; |
| 409 |
config->setGroup("X-*-Greeter"); |
| 410 |
TQFileInfo Theme = config->readEntry("Theme"); |
| 411 |
if(Theme.exists()) { |
| 412 |
current = Theme.fileName(); |
| 413 |
} |
| 414 |
|
| 415 |
// List directories under "themes" directory |
| 416 |
TQDir d(locate("data", TQString::fromLatin1("kdm/themes/")), "", TQDir::Name, TQDir::Dirs|TQDir::NoSymLinks|TQDir::Readable|TQDir::Executable); |
| 417 |
TQStringList list = d.entryList(); |
| 418 |
|
| 419 |
combo->clear(); |
| 420 |
for (TQStringList::ConstIterator it = list.begin(); it != list.end(); ++it) { |
| 421 |
TQString name = (*it); |
| 422 |
|
| 423 |
if(name == "." || name == ".." ) { |
| 424 |
continue; |
| 425 |
} |
| 426 |
|
| 427 |
if (name.isEmpty()) { |
| 428 |
name = "default"; |
| 429 |
} |
| 430 |
|
| 431 |
combo->insertItem( *it, name); |
| 432 |
|
| 433 |
if (name == current) { |
| 434 |
combo->setCurrentItem(combo->count()-1); |
| 435 |
} |
| 436 |
} |
| 437 |
} |
| 438 |
|
| 355 |
bool KDMAppearanceWidget::setLogo(TQString logo) |
439 |
bool KDMAppearanceWidget::setLogo(TQString logo) |
| 356 |
{ |
440 |
{ |
| 357 |
TQString flogo = logo.isEmpty() ? |
441 |
TQString flogo = logo.isEmpty() ? |
|
Lines 468-473
Link Here
|
| 468 |
|
552 |
|
| 469 |
config->writeEntry("GUIStyle", guicombo->currentId()); |
553 |
config->writeEntry("GUIStyle", guicombo->currentId()); |
| 470 |
|
554 |
|
|
|
555 |
TQString Theme = locate("data", TQString::fromLatin1("kdm/themes/")); |
| 556 |
Theme.append(themecombo->currentId()); |
| 557 |
config->writeEntry("Theme", Theme); |
| 558 |
|
| 471 |
config->writeEntry("ColorScheme", colcombo->currentId()); |
559 |
config->writeEntry("ColorScheme", colcombo->currentId()); |
| 472 |
|
560 |
|
| 473 |
config->writeEntry("EchoMode", echocombo->currentId()); |
561 |
config->writeEntry("EchoMode", echocombo->currentId()); |
|
Lines 476-481
Link Here
|
| 476 |
|
564 |
|
| 477 |
config->writeEntry("Language", langcombo->current()); |
565 |
config->writeEntry("Language", langcombo->current()); |
| 478 |
|
566 |
|
|
|
567 |
config->writeEntry("UseTheme", themecheck->isChecked()); |
| 568 |
|
| 479 |
if (!sakwarning) { |
569 |
if (!sakwarning) { |
| 480 |
config->writeEntry("UseSAK", sakbox->isChecked()); |
570 |
config->writeEntry("UseSAK", sakbox->isChecked()); |
| 481 |
} |
571 |
} |
|
Lines 523-528
Link Here
|
| 523 |
// Check the current compositor type |
613 |
// Check the current compositor type |
| 524 |
compositorcombo->setCurrentId(config->readEntry("Compositor")); |
614 |
compositorcombo->setCurrentId(config->readEntry("Compositor")); |
| 525 |
|
615 |
|
|
|
616 |
loadThemes(themecombo); |
| 617 |
|
| 526 |
// Check the GUI type |
618 |
// Check the GUI type |
| 527 |
guicombo->setCurrentId(config->readEntry("GUIStyle")); |
619 |
guicombo->setCurrentId(config->readEntry("GUIStyle")); |
| 528 |
|
620 |
|
|
Lines 544-549
Link Here
|
| 544 |
// get the language |
636 |
// get the language |
| 545 |
langcombo->setCurrentItem(config->readEntry("Language", "C")); |
637 |
langcombo->setCurrentItem(config->readEntry("Language", "C")); |
| 546 |
|
638 |
|
|
|
639 |
themecheck->setChecked(config->readBoolEntry("UseTheme",true)); |
| 640 |
slotUsethemeChanged(config->readBoolEntry("UseTheme",true)); |
| 641 |
|
| 547 |
// See if the SAK is enabled |
642 |
// See if the SAK is enabled |
| 548 |
if (!sakwarning) { |
643 |
if (!sakwarning) { |
| 549 |
sakbox->setChecked(config->readBoolEntry("UseSAK", true)); |
644 |
sakbox->setChecked(config->readBoolEntry("UseSAK", true)); |
|
Lines 556-565
Link Here
|
| 556 |
|
651 |
|
| 557 |
void KDMAppearanceWidget::defaults() |
652 |
void KDMAppearanceWidget::defaults() |
| 558 |
{ |
653 |
{ |
|
|
654 |
themecheck->setChecked(true); |
| 559 |
greetstr_lined->setText( i18n("Welcome to %n") ); |
655 |
greetstr_lined->setText( i18n("Welcome to %n") ); |
| 560 |
logoRadio->setChecked( true ); |
656 |
logoRadio->setChecked( true ); |
| 561 |
slotAreaRadioClicked( KdmLogo ); |
657 |
slotAreaRadioClicked( KdmLogo ); |
| 562 |
setLogo( "" ); |
658 |
setLogo( "" ); |
|
|
659 |
themecombo->setCurrentId(""); |
| 563 |
compositorcombo->setCurrentId( "" ); |
660 |
compositorcombo->setCurrentId( "" ); |
| 564 |
guicombo->setCurrentId( "" ); |
661 |
guicombo->setCurrentId( "" ); |
| 565 |
colcombo->setCurrentId( "" ); |
662 |
colcombo->setCurrentId( "" ); |