diff options
author | Michele Calgaro <[email protected]> | 2020-02-14 10:54:29 +0900 |
---|---|---|
committer | Michele Calgaro <[email protected]> | 2020-02-16 18:38:53 +0900 |
commit | d4b559f91838a9d3e63c1aed0b3960dca4e4df14 (patch) | |
tree | 013f93304d6cddc32746d320fc94e41e9056ddb0 /konsole/terminalhere | |
parent | 0215a0e7127caaf4d5725ca2237a84817f649f67 (diff) | |
download | tdebase-d4b559f91838a9d3e63c1aed0b3960dca4e4df14.tar.gz tdebase-d4b559f91838a9d3e63c1aed0b3960dca4e4df14.zip |
Fixed handling of RMC -> Actions -> Open terminal here.
Signed-off-by: Michele Calgaro <[email protected]>
Diffstat (limited to 'konsole/terminalhere')
-rw-r--r-- | konsole/terminalhere/CMakeLists.txt | 27 | ||||
-rw-r--r-- | konsole/terminalhere/Makefile.am | 10 | ||||
-rw-r--r-- | konsole/terminalhere/terminalhere.cpp | 66 | ||||
-rw-r--r-- | konsole/terminalhere/terminalhere.h | 31 |
4 files changed, 134 insertions, 0 deletions
diff --git a/konsole/terminalhere/CMakeLists.txt b/konsole/terminalhere/CMakeLists.txt new file mode 100644 index 000000000..fbd0f198d --- /dev/null +++ b/konsole/terminalhere/CMakeLists.txt @@ -0,0 +1,27 @@ + +##### config ######## + +include_directories( + ${CMAKE_CURRENT_BINARY_DIR} + ${TDE_INCLUDE_DIR} + ${TQT_INCLUDE_DIRS} +) + +link_directories( + ${TQT_LIBRARY_DIRS} +) + + +##### terminalhere (executable) ######## + +set( target terminalhere ) + +set( ${target}_SRCS + terminalhere.cpp +) + +tde_add_executable( ${target} AUTOMOC + SOURCES ${${target}_SRCS} + LINK tdeio-shared + DESTINATION ${BIN_INSTALL_DIR} +) diff --git a/konsole/terminalhere/Makefile.am b/konsole/terminalhere/Makefile.am new file mode 100644 index 000000000..8e6c53063 --- /dev/null +++ b/konsole/terminalhere/Makefile.am @@ -0,0 +1,10 @@ +bin_PROGRAMS = terminalhere + +INCLUDES = $(all_includes) +AM_LDFLAGS = $(all_libraries) + +terminalhere_SOURCES = terminalhere.cpp +terminalhere_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_TQT) $(LIB_TDEIO) + +METASOURCES = AUTO + diff --git a/konsole/terminalhere/terminalhere.cpp b/konsole/terminalhere/terminalhere.cpp new file mode 100644 index 000000000..ece2ac30e --- /dev/null +++ b/konsole/terminalhere/terminalhere.cpp @@ -0,0 +1,66 @@ +/* This file is part of the TDE project + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#include <tdecmdlineargs.h> +#include <tdeapplication.h> +#include <tdelocale.h> +#include <tdeconfig.h> +#include <tdeglobal.h> +#include <kprocess.h> +#include <tdestartupinfo.h> +#include <stdlib.h> + +#include "terminalhere.h" + + +TerminalHere::TerminalHere() : TDEApplication() +{ + TDECmdLineArgs *args = TDECmdLineArgs::parsedArgs(); + + TDEConfig *config = kapp->config(); + config->setGroup("General"); + TQString term = config->readPathEntry("TerminalApplication", "konsole"); + + TDEProcess proc; + proc << term; + if (args->isSet("wd")) + { + proc.setWorkingDirectory(args->getOption("wd")); + } + proc.start(TDEProcess::DontCare); + ::exit(0); +} + +static TDECmdLineOptions options[] = +{ + { "wd <dir>", I18N_NOOP("Set working directory to 'dir'"), 0 }, + TDECmdLineLastOption +}; + +int main(int argc, char **argv) +{ + TDECmdLineArgs::init(argc, argv, "terminalhere", "terminalhere", "terminalhere", "0.1"); + TDECmdLineArgs::addCmdLineOptions(options); + TDEApplication::addCmdLineOptions(); + TDEApplication *app = new TerminalHere(); + + TDEStartupInfo::appStarted(); + return app->exec(); +} + +#include "terminalhere.moc" diff --git a/konsole/terminalhere/terminalhere.h b/konsole/terminalhere/terminalhere.h new file mode 100644 index 000000000..690e3e4ff --- /dev/null +++ b/konsole/terminalhere/terminalhere.h @@ -0,0 +1,31 @@ +/* This file is part of the TDE project + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#ifndef _TERMINALHERE_H_ +#define _TERMINALHERE_H_ + +#include <tdeapplication.h> + + +class TerminalHere : public TDEApplication +{ +public: + TerminalHere(); +}; + +#endif |