From da19a5e696a3084cc9b1c28a6a8b9802af0568f2 Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Sun, 6 Mar 2011 12:09:30 +0100 Subject: main.cpp added --- src/main.cpp | 76 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 src/main.cpp (limited to 'src/main.cpp') diff --git a/src/main.cpp b/src/main.cpp new file mode 100644 index 0000000..95981e0 --- /dev/null +++ b/src/main.cpp @@ -0,0 +1,76 @@ +#include +#include +#include +#include +#include +#include "fbgui.h" + +QMap options; +void printHelp() +{ + // Prints usage information. + QTextStream qout(stdout); + qout << QObject::tr("Usage: ./fbgui [OPTIONS]") << endl; + qout << QObject::tr("Options:") << endl; + qout << "-u , --url= " << QObject::tr("Set which URL to load.") << endl; + qout << "-h, --help " << QObject::tr("Prints usage information.") << endl; +} + +int main(int argc, char *argv[]) +{ + QApplication *app = new QApplication(argc, argv, QApplication::GuiServer); + app->setOrganizationName("team_projekt_2011"); + app->setApplicationName("fbgui"); + app->setObjectName("test"); + + /* Parse cmdline argus. */ + qDebug() << "Received " << argc << "arguments:"; + for (int i = 0; i < argc; i++) + qDebug() << i + 1 << ": " << argv[i]; + + int longIndex = 0; + static const char *optString = "u:h"; + static const struct option longOpts[] = + { + {"url", required_argument, NULL, 'u'}, + {"help", no_argument, NULL, 'h'} + }; + int opt = getopt_long(argc, argv, optString, longOpts, &longIndex); + while (opt != -1) + { + switch(opt) + { + case 'u': + options.insert("url", optarg); + break; + case 'h': + options.insert("help", "help"); + break; + } + opt = getopt_long(argc, argv, optString, longOpts, &longIndex); + } + // + if (options.contains("help")) + { + printHelp(); + exit(EXIT_SUCCESS); + } + // + QUrl url; + if (options.contains("url")) + url = options.value("url"); + else + { + std::cout << "No URL specified. Exiting..."; + exit(EXIT_FAILURE); + } + // TODO: Read INI. + + + // Init fbgui + fbgui *gui = new fbgui(app); + gui->setParent(app); + qDebug() << "Obj name: " << gui->parent()->objectName(); + qDebug() << "Created fbgui..."; + return app->exec(); +} -- cgit v1.2.3-55-g7522