]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/cmdline.h
no real change; just add the standard separator where it's missing
[wxWidgets.git] / include / wx / cmdline.h
index c8f140d7208a0788a8691b3b9aa21ce1be0906f2..1ab9966364010b9eb473a9ea4bf9681cb99ebb3d 100644 (file)
 #include "wx/arrstr.h"
 #include "wx/cmdargs.h"
 
 #include "wx/arrstr.h"
 #include "wx/cmdargs.h"
 
+// determines ConvertStringToArgs() behaviour
+enum wxCmdLineSplitType
+{
+    wxCMD_LINE_SPLIT_DOS,
+    wxCMD_LINE_SPLIT_UNIX
+};
+
 #if wxUSE_CMDLINE_PARSER
 
 class WXDLLIMPEXP_FWD_BASE wxDateTime;
 #if wxUSE_CMDLINE_PARSER
 
 class WXDLLIMPEXP_FWD_BASE wxDateTime;
@@ -29,7 +36,7 @@ class WXDLLIMPEXP_FWD_BASE wxDateTime;
 
 // by default, options are optional (sic) and each call to AddParam() allows
 // one more parameter - this may be changed by giving non-default flags to it
 
 // by default, options are optional (sic) and each call to AddParam() allows
 // one more parameter - this may be changed by giving non-default flags to it
-enum
+enum wxCmdLineEntryFlags
 {
     wxCMD_LINE_OPTION_MANDATORY = 0x01, // this option must be given
     wxCMD_LINE_PARAM_OPTIONAL   = 0x02, // the parameter may be omitted
 {
     wxCMD_LINE_OPTION_MANDATORY = 0x01, // this option must be given
     wxCMD_LINE_PARAM_OPTIONAL   = 0x02, // the parameter may be omitted
@@ -55,6 +62,7 @@ enum wxCmdLineEntryType
     wxCMD_LINE_SWITCH,
     wxCMD_LINE_OPTION,
     wxCMD_LINE_PARAM,
     wxCMD_LINE_SWITCH,
     wxCMD_LINE_OPTION,
     wxCMD_LINE_PARAM,
+    wxCMD_LINE_USAGE_TEXT,
     wxCMD_LINE_NONE         // to terminate the list
 };
 
     wxCMD_LINE_NONE         // to terminate the list
 };
 
@@ -178,6 +186,9 @@ public:
                   wxCmdLineParamType type = wxCMD_LINE_VAL_STRING,
                   int flags = 0);
 
                   wxCmdLineParamType type = wxCMD_LINE_VAL_STRING,
                   int flags = 0);
 
+    // add an explanatory text to be shown to the user in help
+    void AddUsageText(const wxString& text);
+
     // actions
     // -------
 
     // actions
     // -------
 
@@ -229,7 +240,9 @@ public:
     void Reset();
 
     // break down the command line in arguments
     void Reset();
 
     // break down the command line in arguments
-    static wxArrayString ConvertStringToArgs(const wxString& cmdline);
+    static wxArrayString
+    ConvertStringToArgs(const wxString& cmdline,
+                        wxCmdLineSplitType type = wxCMD_LINE_SPLIT_DOS);
 
 private:
     // common part of all ctors
 
 private:
     // common part of all ctors
@@ -237,7 +250,7 @@ private:
 
     struct wxCmdLineParserData *m_data;
 
 
     struct wxCmdLineParserData *m_data;
 
-    DECLARE_NO_COPY_CLASS(wxCmdLineParser)
+    wxDECLARE_NO_COPY_CLASS(wxCmdLineParser);
 };
 
 #else // !wxUSE_CMDLINE_PARSER
 };
 
 #else // !wxUSE_CMDLINE_PARSER
@@ -247,10 +260,11 @@ private:
 class WXDLLIMPEXP_BASE wxCmdLineParser
 {
 public:
 class WXDLLIMPEXP_BASE wxCmdLineParser
 {
 public:
-    static wxArrayString ConvertStringToArgs(const wxString& cmdline);
+    static wxArrayString
+    ConvertStringToArgs(const wxString& cmdline,
+                        wxCmdLineSplitType type = wxCMD_LINE_SPLIT_DOS);
 };
 
 #endif // wxUSE_CMDLINE_PARSER/!wxUSE_CMDLINE_PARSER
 
 #endif // _WX_CMDLINE_H_
 };
 
 #endif // wxUSE_CMDLINE_PARSER/!wxUSE_CMDLINE_PARSER
 
 #endif // _WX_CMDLINE_H_
-