X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;ds=sidebyside;f=gui%2Fmain.cpp;h=d7af53dde789c219e76dae1428254f3b58337dfd;hb=b491d2958e2a8331f0f144de89626c284ae96121;hp=dcfb6c2eea721e0e781f053d89844abca32de0fb;hpb=601e8376b1496ff2a46f9d5c1ff82c29f2446fa3;p=apitrace diff --git a/gui/main.cpp b/gui/main.cpp index dcfb6c2..d7af53d 100644 --- a/gui/main.cpp +++ b/gui/main.cpp @@ -1,24 +1,66 @@ #include "mainwindow.h" -#include "trace_model.hpp" +#include "apitrace.h" +#include "apitracecall.h" #include #include #include -Q_DECLARE_METATYPE(QList); +Q_DECLARE_METATYPE(QList); +Q_DECLARE_METATYPE(QVector); +Q_DECLARE_METATYPE(Qt::CaseSensitivity); +Q_DECLARE_METATYPE(ApiTrace::SearchResult); +Q_DECLARE_METATYPE(ApiTrace::SearchRequest); + +static void usage(void) +{ + qWarning("usage: qapitrace [TRACE] [CALLNO]\n"); +} int main(int argc, char **argv) { QApplication app(argc, argv); - qRegisterMetaType >(); - MainWindow window; + qRegisterMetaType >(); + qRegisterMetaType >(); + qRegisterMetaType(); + qRegisterMetaType(); + qRegisterMetaType(); + qRegisterMetaType(); + QStringList args = app.arguments(); + int i = 1; + while (i < args.count()) { + QString arg = args[i]; + if (arg[0] != QLatin1Char('-')) { + break; + } + ++i; + if (arg == QLatin1String("--")) { + break; + } else if (arg == QLatin1String("-h") || + arg == QLatin1String("--help")) { + usage(); + exit(0); + } else { + usage(); + exit(1); + } + } + + MainWindow window; window.show(); - if (app.arguments().count() == 2) - window.loadTrace(app.arguments()[1]); + if (i < args.count()) { + QString fileName = args[i++]; + + int callNum = -1; + if (i < args.count()) { + callNum = args[i++].toInt(); + } + window.loadTrace(fileName, callNum); + } app.exec(); }