From 08701eba945260797c5a68664c7f01cb6693a1b3 Mon Sep 17 00:00:00 2001 From: Stefan Sauer Date: Wed, 3 Nov 2010 13:59:44 +0200 Subject: [PATCH] mi: add basic goption usage Only --version works right now. --- mediainfo/src/mi.vala | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/mediainfo/src/mi.vala b/mediainfo/src/mi.vala index 54a4a12060..26afa0a9d3 100644 --- a/mediainfo/src/mi.vala +++ b/mediainfo/src/mi.vala @@ -18,16 +18,38 @@ */ using MediaInfo; +using GLib; + +bool version; +const OptionEntry[] options = { +{ "version", 0, 0, OptionArg.NONE, ref version, "Display version number", null }, + { null } +}; int main(string[] args) { + Intl.bindtextdomain (Config.GETTEXT_PACKAGE, Config.LOCALEDIR); Intl.bind_textdomain_codeset (Config.GETTEXT_PACKAGE, "UTF-8"); Intl.textdomain (Config.GETTEXT_PACKAGE); - Gtk.init (ref args); - Gst.init (ref args); + OptionContext opt_context = new OptionContext (_("")); + opt_context.set_help_enabled (true); + opt_context.add_main_entries (options, null); + opt_context.add_group (Gst.init_get_option_group ()); + opt_context.add_group (Gtk.get_option_group (false)); + try { + opt_context.parse (ref args); + } catch (Error e) { + stdout.printf ("%s", opt_context.get_help(true, null)); + return (0); + } + + if (version) { + stdout.printf ("%s\n", Config.PACKAGE_STRING); + return (0); + } App app = new App (); app.show_all ();