/////////////////////////////////////////////////////////////////////////////
// Name: samples/console/console.cpp
-// Purpose: a sample console (as opposed to GUI) progam using wxWidgets
+// Purpose: A sample console (as opposed to GUI) program using wxWidgets
// Author: Vadim Zeitlin
// Modified by:
// Created: 04.10.99
}
}
-static void TestFileNameMakeRelative()
-{
- wxPuts(_T("*** testing wxFileName::MakeRelativeTo() ***"));
-
- for ( size_t n = 0; n < WXSIZEOF(filenames); n++ )
- {
- const FileNameInfo& fni = filenames[n];
-
- wxFileName fn(fni.fullname, fni.format);
-
- // choose the base dir of the same format
- wxString base;
- switch ( fni.format )
- {
- case wxPATH_UNIX:
- base = _T("/usr/bin/");
- break;
-
- case wxPATH_DOS:
- base = _T("c:\\");
- break;
-
- case wxPATH_MAC:
- case wxPATH_VMS:
- // TODO: I don't know how this is supposed to work there
- continue;
-
- case wxPATH_NATIVE: // make gcc happy
- default:
- wxFAIL_MSG( _T("unexpected path format") );
- }
-
- wxPrintf(_T("'%s' relative to '%s': "),
- fn.GetFullPath(fni.format).c_str(), base.c_str());
-
- if ( !fn.MakeRelativeTo(base, fni.format) )
- {
- wxPuts(_T("unchanged"));
- }
- else
- {
- wxPrintf(_T("'%s'\n"), fn.GetFullPath(fni.format).c_str());
- }
- }
-}
-
-static void TestFileNameMakeAbsolute()
-{
- wxPuts(_T("*** testing wxFileName::MakeAbsolute() ***"));
-
- for ( size_t n = 0; n < WXSIZEOF(filenames); n++ )
- {
- const FileNameInfo& fni = filenames[n];
- wxFileName fn(fni.fullname, fni.format);
-
- wxPrintf(_T("'%s' absolutized: "),
- fn.GetFullPath(fni.format).c_str());
- fn.MakeAbsolute();
- wxPrintf(_T("'%s'\n"), fn.GetFullPath(fni.format).c_str());
- }
-
- wxPuts(wxEmptyString);
-}
-
static void TestFileNameDirManip()
{
// TODO: test AppendDir(), RemoveDir(), ...
{
}
- virtual void Walk()
+ virtual void Walk(size_t skip = 1)
{
wxPuts(_T("Stack dump:"));
- wxStackWalker::Walk();
+ wxStackWalker::Walk(skip);
}
protected:
wxTheApp->SetAppName(_T("console"));
- wxStandardPaths& stdp = wxStandardPaths::Get();
+ wxStandardPathsBase& stdp = wxStandardPaths::Get();
wxPrintf(_T("Config dir (sys):\t%s\n"), stdp.GetConfigDir().c_str());
wxPrintf(_T("Config dir (user):\t%s\n"), stdp.GetUserConfigDir().c_str());
wxPrintf(_T("Data dir (sys):\t\t%s\n"), stdp.GetDataDir().c_str());
#ifdef TEST_TIMER
-#include "wx/timer.h"
+#include "wx/stopwatch.h"
#include "wx/utils.h"
static void TestStopWatch()
wxPrintf(_T("Full name from wxVCard API: %s\n"), value.c_str());
- // now show how to deal with multiply occuring properties
+ // now show how to deal with multiply occurring properties
DumpVCardAddresses(vcard);
DumpVCardPhoneNumbers(vcard);
int main(int argc, char **argv)
{
+#if wxUSE_UNICODE
+ wxChar **wxArgv = new wxChar *[argc + 1];
+
+ {
+ int n;
+
+ for (n = 0; n < argc; n++ )
+ {
+ wxMB2WXbuf warg = wxConvertMB2WX(argv[n]);
+ wxArgv[n] = wxStrdup(warg);
+ }
+
+ wxArgv[n] = NULL;
+ }
+#else // !wxUSE_UNICODE
+ #define wxArgv argv
+#endif // wxUSE_UNICODE/!wxUSE_UNICODE
+
wxApp::CheckBuildOptions(WX_BUILD_OPTIONS_SIGNATURE, "program");
wxInitializer initializer;
{ wxCMD_LINE_NONE }
};
-#if wxUSE_UNICODE
- wxChar **wargv = new wxChar *[argc + 1];
-
- {
- int n;
-
- for (n = 0; n < argc; n++ )
- {
- wxMB2WXbuf warg = wxConvertMB2WX(argv[n]);
- wargv[n] = wxStrdup(warg);
- }
-
- wargv[n] = NULL;
- }
-
- #define argv wargv
-#endif // wxUSE_UNICODE
-
- wxCmdLineParser parser(cmdLineDesc, argc, argv);
-
-#if wxUSE_UNICODE
- {
- for ( int n = 0; n < argc; n++ )
- free(wargv[n]);
-
- delete [] wargv;
- }
-#endif // wxUSE_UNICODE
+ wxCmdLineParser parser(cmdLineDesc, argc, wxArgv);
parser.AddOption(_T("project_name"), _T(""), _T("full path to project file"),
wxCMD_LINE_VAL_STRING,
#endif // TEST_FILE
#ifdef TEST_FILENAME
- TestFileNameConstruction();
- TestFileNameMakeRelative();
- TestFileNameMakeAbsolute();
- TestFileNameSplit();
TestFileNameTemp();
TestFileNameCwd();
TestFileNameDirManip();
#ifdef TEST_DATETIME
#if TEST_ALL
- TestTimeSet();
TestTimeStatic();
TestTimeRange();
TestTimeZones();
- TestTimeTicks();
- TestTimeJDN();
TestTimeDST();
- TestTimeWDays();
- TestTimeWNumber();
- TestTimeParse();
- TestTimeArithmetics();
TestTimeHolidays();
TestTimeSpanFormat();
TestTimeMS();
#endif
#ifdef TEST_STACKWALKER
+#if wxUSE_STACKWALKER
TestStackWalk(argv[0]);
+#endif
#endif // TEST_STACKWALKER
#ifdef TEST_STDPATHS
TestZipFileSystem();
#endif // TEST_ZIP
+#if wxUSE_UNICODE
+ {
+ for ( int n = 0; n < argc; n++ )
+ free(wxArgv[n]);
+
+ delete [] wxArgv;
+ }
+#endif // wxUSE_UNICODE
+
wxUnusedVar(argc);
wxUnusedVar(argv);
return 0;