+
+void CTSimApp::OnInitCmdLine(wxCmdLineParser& parser)
+{
+ static const wxCmdLineEntryDesc cmdLineDesc[] = {
+ { wxCMD_LINE_SWITCH, _T("l"), _T("verbose"), _T("verbose logging") },
+ { wxCMD_LINE_SWITCH, _T("v"), _T("version"), _T("print version") },
+ { wxCMD_LINE_SWITCH, _T("p"), _T("print"), _T("print images from command line"),
+ wxCMD_LINE_VAL_NONE,
+ wxCMD_LINE_PARAM_OPTIONAL },
+ { wxCMD_LINE_SWITCH, _T("h"), _T("help"), _T("print this help message"),
+ wxCMD_LINE_VAL_NONE,
+ wxCMD_LINE_PARAM_OPTIONAL | wxCMD_LINE_OPTION_HELP },
+ { wxCMD_LINE_PARAM, NULL, NULL, _T("input file"),
+ wxCMD_LINE_VAL_STRING,
+ wxCMD_LINE_PARAM_OPTIONAL | wxCMD_LINE_PARAM_MULTIPLE },
+ { wxCMD_LINE_NONE }
+ };
+
+ parser.SetDesc(cmdLineDesc);
+}
+
+bool CTSimApp::OnCmdLineParsed(wxCmdLineParser& parser)
+{
+ if (wxApp::OnCmdLineParsed(parser) == false)
+ return false;
+
+ if (parser.Found(_T("version"))) {
+#ifdef VERSION
+ std::cout << "Version: " << VERSION << std::endl;
+#elif defined(CTSIMVERSION)
+ std::cout << "Version: " << CTSIMVERSION << std::endl;
+#else
+ std::cout << "Version: " << "Unknown" << std::endl;
+#endif
+ return false;
+ }
+ if (parser.Found(_T("print"))) {
+ m_bPrintCmdLineImages = true;
+ }
+ if (parser.Found(_T("verbose"))) {
+ m_bCmdLineVerboseFlag = true;
+ }
+
+ return true;
+}
+