20 #include "kdevideextension.h" 23 #include <tqcheckbox.h> 24 #include <tqbuttongroup.h> 25 #include <tqradiobutton.h> 26 #include <tqcombobox.h> 27 #include <klineedit.h> 29 #include <tdelocale.h> 30 #include <tdeconfig.h> 31 #include <kdialogbase.h> 32 #include <kiconloader.h> 33 #include <kurlrequester.h> 34 #include <tdeapplication.h> 35 #include <tdefontrequester.h> 37 #include <kdevplugin.h> 38 #include <kdevmakefrontend.h> 39 #include <kdevplugincontroller.h> 42 #include "settingswidget.h" 44 KDevIDEExtension::KDevIDEExtension()
49 void KDevIDEExtension::init()
51 s_instance =
new KDevIDEExtension();
54 void KDevIDEExtension::createGlobalSettingsPage(KDialogBase *dlg)
56 TDEConfig* config = kapp->config();
57 TQVBox *vbox = dlg->addVBoxPage(i18n(
"General"), i18n(
"General"), BarIcon(
"tdevelop", TDEIcon::SizeMedium) );
58 gsw =
new SettingsWidget(vbox,
"general settings widget");
60 gsw->projectsURL->setMode((
int)KFile::Directory);
62 config->setGroup(
"General Options");
63 gsw->lastProjectCheckbox->setChecked(config->readBoolEntry(
"Read Last Project On Startup",
true));
64 gsw->outputFont->setFont( config->readFontEntry(
"OutputViewFont" ) );
65 config->setGroup(
"MakeOutputView");
66 gsw->lineWrappingCheckBox->setChecked(config->readBoolEntry(
"LineWrapping",
true));
67 gsw->dirNavigMsgCheckBox->setChecked(config->readBoolEntry(
"ShowDirNavigMsg",
false));
68 gsw->compileOutputCombo->setCurrentItem(config->readNumEntry(
"CompilerOutputLevel",2));
69 gsw->forceCLocaleRadio->setChecked( config->readBoolEntry(
"ForceCLocale",
true ) );
70 gsw->userLocaleRadio->setChecked( !config->readBoolEntry(
"ForceCLocale",
true ) );
72 config->setGroup(
"General Options");
73 gsw->projectsURL->setURL(config->readPathEntry(
"DefaultProjectsDir", TQDir::homeDirPath()+
"/"));
74 gsw->designerButtonGroup->setButton( config->readNumEntry(
"DesignerApp", 0 ) );
76 TQString DesignerSetting = config->readEntry(
"DesignerSetting",
"ExternalDesigner" );
77 gsw->qtDesignerRadioButton->setChecked( DesignerSetting ==
"ExternalDesigner" );
78 gsw->seperateAppRadioButton->setChecked( DesignerSetting ==
"ExternalKDevDesigner" );
79 gsw->embeddedDesignerRadioButton->setChecked( DesignerSetting ==
"EmbeddedKDevDesigner" );
81 config->setGroup(
"TerminalEmulator");
82 gsw->terminalEdit->setText( config->readEntry(
"TerminalApplication", TQString::fromLatin1(
"konsole") ) );
83 bool useKDESetting = config->readBoolEntry(
"UseKDESetting",
true );
84 gsw->useKDETerminal->setChecked( useKDESetting );
85 gsw->useOtherTerminal->setChecked( !useKDESetting );
88 void KDevIDEExtension::acceptGlobalSettingsPage(KDialogBase *dlg)
90 TDEConfig* config = kapp->config();
92 config->setGroup(
"General Options");
93 config->writeEntry(
"DesignerApp", gsw->designerButtonGroup->selectedId());
94 config->writeEntry(
"Read Last Project On Startup",gsw->lastProjectCheckbox->isChecked());
95 config->writePathEntry(
"DefaultProjectsDir", gsw->projectsURL->url());
96 config->writeEntry(
"OutputViewFont", gsw->outputFont->font());
98 TQString DesignerSetting;
99 if ( gsw->qtDesignerRadioButton->isChecked() ) DesignerSetting =
"ExternalDesigner";
100 if ( gsw->seperateAppRadioButton->isChecked() ) DesignerSetting =
"ExternalKDevDesigner";
101 if ( gsw->embeddedDesignerRadioButton->isChecked() ) DesignerSetting =
"EmbeddedKDevDesigner";
102 config->writeEntry(
"DesignerSetting", DesignerSetting );
104 config->setGroup(
"MakeOutputView");
105 config->writeEntry(
"LineWrapping",gsw->lineWrappingCheckBox->isChecked());
106 config->writeEntry(
"ShowDirNavigMsg",gsw->dirNavigMsgCheckBox->isChecked());
107 config->writeEntry(
"ForceCLocale", gsw->forceCLocaleRadio->isChecked() );
109 config->writeEntry(
"CompilerOutputLevel",gsw->compileOutputCombo->currentItem());
111 if( KDevPlugin *makeExt = API::getInstance()->pluginController()->extension(
"TDevelop/MakeFrontend"))
113 static_cast<KDevMakeFrontend*
>(makeExt)->updateSettingsFromConfig();
116 config->setGroup(
"TerminalEmulator");
117 config->writeEntry(
"UseKDESetting", gsw->useKDETerminal->isChecked() );
118 config->writeEntry(
"TerminalApplication", gsw->terminalEdit->text().stripWhiteSpace() );
121 TQString KDevIDEExtension::xmlFile()
123 return "tdevelopui.rc";
126 TQString KDevIDEExtension::defaultProfile()