From 5002193c63f33695504f8682f32a17a583ecb9a0 Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Fri, 8 Oct 2021 15:27:36 +0200 Subject: [PATCH] dragger: use actual argument parsing --- src/dragger.cc | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/dragger.cc b/src/dragger.cc index 87c59e4..7c08b83 100644 --- a/src/dragger.cc +++ b/src/dragger.cc @@ -1,4 +1,5 @@ #include +#include #include #include #include @@ -9,10 +10,23 @@ int main(int argc, char* argv[]) { QApplication app(argc, argv); + QApplication::setApplicationName("dragger"); + QApplication::setApplicationVersion("0.1.0"); + + QCommandLineParser parser; + parser.setApplicationDescription("A CLI drag-and-drop tool"); + parser.addHelpOption(); + parser.addVersionOption(); + parser.addPositionalArgument( + "files", + QCoreApplication::translate("files", "files to drag-and-drop"), + "[FILES...]"); + + parser.process(app); QList urls; - for (int i = 1; i < argc; ++i) { - QFileInfo file(QFile(argv[i])); + for (auto const& path : parser.positionalArguments()) { + QFileInfo file{QFile{path}}; if (file.exists()) { urls << QUrl("file:" + file.absoluteFilePath()); } else {