Bläddra i källkod

ENH: commandlinepaser - Added convenient method parseArguments(int argc, char** argv, bool* ok = 0)

Jean-Christophe Fillion-Robin 14 år sedan
förälder
incheckning
899015342f
2 ändrade filer med 20 tillägg och 0 borttagningar
  1. 14 0
      Libs/Core/ctkCommandLineParser.cpp
  2. 6 0
      Libs/Core/ctkCommandLineParser.h

+ 14 - 0
Libs/Core/ctkCommandLineParser.cpp

@@ -523,6 +523,20 @@ QHash<QString, QVariant> ctkCommandLineParser::parseArguments(const QStringList&
 }
 
 // -------------------------------------------------------------------------
+QHash<QString, QVariant> ctkCommandLineParser::parseArguments(int argc, char** argv, bool* ok)
+{
+  QStringList arguments;
+
+  // Create a QStringList of arguments
+  for(int i = 0; i < argc; ++i)
+    {
+    arguments << argv[i];
+    }
+
+  return this->parseArguments(arguments, ok);
+}
+
+// -------------------------------------------------------------------------
 QString ctkCommandLineParser::errorString() const
 {
   return this->Internal->ErrorString;

+ 6 - 0
Libs/Core/ctkCommandLineParser.h

@@ -124,6 +124,12 @@ public:
   QHash<QString, QVariant> parseArguments(const QStringList &arguments, bool* ok = 0);
 
   /**
+    * Convenient method allowing to parse a given list of command line arguments.
+    * @see parseArguments(const QStringList &, bool*)
+    */
+  QHash<QString, QVariant> parseArguments(int argc, char** argv, bool* ok = 0);
+
+  /**
    * Returns a detailed error description if a call to <code>parseArguments()</code>
    * failed.
    *