summaryrefslogtreecommitdiffstats
path: root/kcontrol/componentchooser/componentchooser.cpp
diff options
context:
space:
mode:
authorMichele Calgaro <michele.calgaro@yahoo.it>2020-02-15 10:08:58 +0900
committerMichele Calgaro <michele.calgaro@yahoo.it>2020-02-15 12:38:33 +0900
commit98addc546eb8a399479a0a4f928fc363ff264b7f (patch)
tree78208086ea4f5fadf36227e0c1789b38a5765de6 /kcontrol/componentchooser/componentchooser.cpp
parented1d5dea33cdf66686429c96d3926d9c63b4ebe4 (diff)
downloadtdebase-98addc546eb8a399479a0a4f928fc363ff264b7f.tar.gz
tdebase-98addc546eb8a399479a0a4f928fc363ff264b7f.zip
Added GUI in TCC -> TDE Components -> Default Applications for selection of default file manager. Subsequent commits will ensure this option is used throughout TDE. This refers to bug 1904.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Diffstat (limited to 'kcontrol/componentchooser/componentchooser.cpp')
-rw-r--r--kcontrol/componentchooser/componentchooser.cpp83
1 files changed, 80 insertions, 3 deletions
diff --git a/kcontrol/componentchooser/componentchooser.cpp b/kcontrol/componentchooser/componentchooser.cpp
index 9de1a1a7b..bee7797e1 100644
--- a/kcontrol/componentchooser/componentchooser.cpp
+++ b/kcontrol/componentchooser/componentchooser.cpp
@@ -207,10 +207,80 @@ void CfgEmailClient::save(TDEConfig *)
emit changed(false);
}
-
//END Email client config
+//BEGIN File Manager Configuration
+
+CfgFileManager::CfgFileManager(TQWidget *parent) : FileManagerConfig_UI(parent), CfgPlugin() {
+ connect(filemanagerLE, TQT_SIGNAL(textChanged(const TQString &)), this, TQT_SLOT(configChanged()));
+ connect(filemanagerCB, TQT_SIGNAL(toggled(bool)), this, TQT_SLOT(configChanged()));
+ connect(otherCB, TQT_SIGNAL(toggled(bool)), this, TQT_SLOT(configChanged()));
+}
+
+CfgFileManager::~CfgFileManager() {
+}
+
+void CfgFileManager::configChanged()
+{
+ emit changed(true);
+}
+
+void CfgFileManager::defaults()
+{
+ load(0L);
+}
+
+
+void CfgFileManager::load(TDEConfig *) {
+ TDEConfig *config = new TDEConfig("kdeglobals", true);
+ config->setGroup("General");
+ TQString filemanager = config->readPathEntry("FileManagerApplication","konqueror");
+ if (filemanager == "konqueror")
+ {
+ filemanagerLE->setText("");
+ filemanagerCB->setChecked(true);
+ }
+ else
+ {
+ filemanagerLE->setText(filemanager);
+ otherCB->setChecked(true);
+ }
+ delete config;
+
+ emit changed(false);
+}
+
+void CfgFileManager::save(TDEConfig *) {
+ TDEConfig *config = new TDEConfig("kdeglobals");
+ config->setGroup("General");
+ config->writePathEntry("FileManagerApplication", filemanagerCB->isChecked() ? "konqueror" : filemanagerLE->text(),
+ true, true);
+ config->sync();
+ delete config;
+
+ KIPC::sendMessageAll(KIPC::SettingsChanged);
+ kapp->dcopClient()->send("tdelauncher", "tdelauncher","reparseConfiguration()", TQString::null);
+
+ emit changed(false);
+}
+
+void CfgFileManager::selectFileManagerApp()
+{
+ KURL::List urlList;
+ KOpenWithDlg dlg(urlList, i18n("Select preferred file manager application:"), TQString::null, this);
+ // hide "Run in &terminal" here, we don't need it for a File Manager Application
+ dlg.hideRunInTerminal();
+ if (dlg.exec() != TQDialog::Accepted) return;
+ TQString client = dlg.text();
+
+ if (!client.isEmpty())
+ {
+ filemanagerLE->setText(client);
+ }
+}
+
+//END File Manager Configuration
//BEGIN Terminal Emulator Configuration
@@ -233,14 +303,13 @@ void CfgTerminalEmulator::defaults()
load(0L);
}
-
void CfgTerminalEmulator::load(TDEConfig *) {
TDEConfig *config = new TDEConfig("kdeglobals", true);
config->setGroup("General");
TQString terminal = config->readPathEntry("TerminalApplication","konsole");
if (terminal == "konsole")
{
- terminalLE->setText("xterm");
+ terminalLE->setText("");
terminalCB->setChecked(true);
}
else
@@ -436,6 +505,14 @@ void ComponentChooser::slotServiceSelected(TQListBoxItem* it) {
}
}
+ else if (cfgType=="internal_filemanager")
+ {
+ if (!(configWidget && configWidget->tqt_cast("CfgFileManager")))
+ {
+ newConfigWidget = new CfgFileManager(configContainer);
+ }
+
+ }
else if (cfgType=="internal_terminal")
{
if (!(configWidget && configWidget->tqt_cast("CfgTerminalEmulator")))