X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=gui%2Fmain.cpp;h=b98bce60dcff045238890051f990c7bc502c8554;hb=ff6dad3ca0f52fb91b5035843df7da79126291e1;hp=18e07f1ffcb87275aaa777184a22fb839c31f2fd;hpb=12a22803faa06a0db229b6dfb6130a0e8156ba31;p=apitrace diff --git a/gui/main.cpp b/gui/main.cpp index 18e07f1..b98bce6 100644 --- a/gui/main.cpp +++ b/gui/main.cpp @@ -1,8 +1,13 @@ +#include + #include "mainwindow.h" #include "apitrace.h" #include "apitracecall.h" +#include "os_string.hpp" +#include "os_process.hpp" + #include #include #include @@ -17,11 +22,15 @@ Q_DECLARE_METATYPE(QList); static void usage(void) { - qWarning("usage: qapitrace [TRACE] [CALLNO]\n"); + qWarning("usage: qapitrace [options] [TRACE] [CALLNO]\n" + "Valid options include:\n" + " -h, --help Print this help message\n" + " --remote-target HOST Replay trace on remote target HOST\n"); } int main(int argc, char **argv) { + QApplication::setGraphicsSystem("raster"); QApplication app(argc, argv); qRegisterMetaType >(); @@ -31,7 +40,17 @@ int main(int argc, char **argv) qRegisterMetaType(); qRegisterMetaType(); qRegisterMetaType >(); + +#ifndef Q_OS_WIN + os::String currentProcess = os::getProcessName(); + currentProcess.trimFilename(); + QString path = qgetenv("PATH"); + path = QLatin1String(currentProcess.str()) + QLatin1String(":") + path; + qputenv("PATH", path.toLatin1()); +#endif + QStringList args = app.arguments(); + QString remoteTarget; int i = 1; while (i < args.count()) { @@ -42,6 +61,13 @@ int main(int argc, char **argv) ++i; if (arg == QLatin1String("--")) { break; + } else if (arg == QLatin1String("--remote-target")) { + if (i == args.count()) { + qWarning("Option --remote-target requires an argument.\n"); + exit(1); + } + remoteTarget = args[i]; + ++i; } else if (arg == QLatin1String("-h") || arg == QLatin1String("--help")) { usage(); @@ -65,5 +91,9 @@ int main(int argc, char **argv) window.loadTrace(fileName, callNum); } + if (remoteTarget.length()) { + window.setRemoteTarget(remoteTarget); + } + app.exec(); }