[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [umbrello] umbrello: Add command line parameter --import-directory <dir> and --set-language-xxx to K
From: Ralf Habacker <null () kde ! org>
Date: 2017-10-31 21:17:38
Message-ID: E1e9duk-00073r-7f () code ! kde ! org
[Download RAW message or body]
Git commit 75da50385dc2c7d699b3b86e1a447799602e7ff4 by Ralf Habacker.
Committed on 31/10/2017 at 21:17.
Pushed by habacker into branch 'master'.
Add command line parameter --import-directory <dir> and --set-language-xxx to KDE4 \
variant
M +34 -2 umbrello/main.cpp
https://commits.kde.org/umbrello/75da50385dc2c7d699b3b86e1a447799602e7ff4
diff --git a/umbrello/main.cpp b/umbrello/main.cpp
index 15598c957..d390c1a85 100644
--- a/umbrello/main.cpp
+++ b/umbrello/main.cpp
@@ -43,6 +43,8 @@
#define StringLiteral(a) QByteArray(a)
#endif
+void getFiles(QStringList& files, const QString& path, QStringList& filters);
+
/**
* Description for this application
*/
@@ -176,6 +178,12 @@ int main(int argc, char *argv[])
options.add("import-files", ki18n("import files"));
options.add("languages", ki18n("list supported languages"));
options.add("use-folders", ki18n("keep the tree structure used to store the \
views in the document in the target directory")); + options.add("import-directory \
<dir>", ki18n("import files from directory <dir>")); + for(int i = \
Uml::ProgrammingLanguage::ActionScript; i < Uml::ProgrammingLanguage::Reserved; i++) \
{ + Uml::ProgrammingLanguage::Enum pl = Uml::ProgrammingLanguage::fromInt(i);
+ QByteArray optionString = "set-language-" + \
Uml::ProgrammingLanguage::toString(pl).toLower().toLocal8Bit(); + \
options.add(optionString, ki18n("set active language")); + }
KCmdLineArgs::addCmdLineOptions(options); // Add our own options.
KApplication app;
KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
@@ -213,6 +221,16 @@ int main(int argc, char *argv[])
uml->show();
}
+ Uml::ProgrammingLanguage::Enum lang = Uml::ProgrammingLanguage::Reserved;
+ for(int i = Uml::ProgrammingLanguage::ActionScript; i < \
Uml::ProgrammingLanguage::Reserved; i++) { + \
Uml::ProgrammingLanguage::Enum pl = Uml::ProgrammingLanguage::fromInt(i); + \
QByteArray langString = "set-language-"; + langString += \
Uml::ProgrammingLanguage::toString(pl).toLower().toLocal8Bit(); + if \
(args->isSet(langString)) { + lang = \
Uml::ProgrammingLanguage::fromInt(i); + }
+ }
+
#if QT_VERSION >= 0x050000
if (args->isSet(IMPORT_FILES)) {
QStringList importList = args->values(IMPORT_FILES);
@@ -227,12 +245,26 @@ int main(int argc, char *argv[])
for (int i = 0; i < args->count(); i++)
importList.append(args->url(i).toLocalFile());
uml->newDocument();
+ if (lang != Uml::ProgrammingLanguage::Reserved)
+ uml->setActiveLanguage(lang);
uml->importFiles(importList);
}
+ else if (args->isSet("import-directory") && args->count() > 0) {
+ uml->newDocument();
+ if (lang != Uml::ProgrammingLanguage::Reserved)
+ uml->setActiveLanguage(lang);
+ QStringList filter = \
Uml::ProgrammingLanguage::toExtensions(uml->activeLanguage()); + QString \
dir = args->url(0).toLocalFile(); + QStringList listFile;
+ getFiles(listFile, dir, filter);
+ uml->importFiles(listFile, dir);
+ }
#endif
- else
+ else {
initDocument(args);
-
+ if (lang != Uml::ProgrammingLanguage::Reserved)
+ uml->setActiveLanguage(lang);
+ }
// export option
#if QT_VERSION >= 0x050000
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic