diff options
author | Matthias Clasen <mclasen@redhat.com> | 2015-04-27 23:31:03 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2015-04-27 23:40:43 -0400 |
commit | d7523423d45a272cf07a9034fc09b0b4dcdb0185 (patch) | |
tree | 7c0c04ad0dc15e21347229055f539505dabed250 /gtk/gtk-builder-tool.c | |
parent | 43cee06160eaa6a675ce9a83c2db9e3049ad1271 (diff) | |
download | gtk+-d7523423d45a272cf07a9034fc09b0b4dcdb0185.tar.gz |
gtk-builder-tool: Separate commands
Add separate commands for validation and simplification.
Diffstat (limited to 'gtk/gtk-builder-tool.c')
-rw-r--r-- | gtk/gtk-builder-tool.c | 35 |
1 files changed, 19 insertions, 16 deletions
diff --git a/gtk/gtk-builder-tool.c b/gtk/gtk-builder-tool.c index 887df74ec6..c133438064 100644 --- a/gtk/gtk-builder-tool.c +++ b/gtk/gtk-builder-tool.c @@ -362,7 +362,7 @@ GMarkupParser parser = { NULL }; -static gboolean +static void do_simplify (const gchar *filename) { GMarkupParseContext *context; @@ -373,7 +373,7 @@ do_simplify (const gchar *filename) if (!g_file_get_contents (filename, &buffer, NULL, &error)) { g_printerr (_("Can't load file: %s\n"), error->message); - return FALSE; + exit (1); } data.builder = gtk_builder_new (); @@ -390,13 +390,11 @@ do_simplify (const gchar *filename) if (!g_markup_parse_context_parse (context, buffer, -1, &error)) { g_printerr (_("Can't parse file: %s\n"), error->message); - return FALSE; + exit (1); } - - return TRUE; } -static gboolean +static void do_validate (const gchar *filename) { GtkBuilder *builder; @@ -410,16 +408,20 @@ do_validate (const gchar *filename) if (ret == 0) { g_printerr ("%s\n", error->message); - return FALSE; + exit (1); } - - return TRUE; } static void usage (void) { - g_print (_("Usage: gtk-builder-tool FILE\n" + g_print (_("Usage:\n" + " gtk-builder-tool [COMMAND] FILE\n" + "\n" + "Commands:\n" + " validate Validate the file\n" + " simplify Simplify the file\n" + "\n" "Validate and simplify GtkBuilder .ui files.\n")); exit (1); } @@ -433,14 +435,15 @@ main (int argc, char *argv[]) gtk_test_register_all_types (); - if (argc < 2) + if (argc < 3) usage (); - if (!do_validate (argv[1])) - return 1; - - if (!do_simplify (argv[1])) - return 1; + if (strcmp (argv[1], "validate") == 0) + do_validate (argv[2]); + else if (strcmp (argv[1], "simplify") == 0) + do_simplify (argv[2]); + else + usage (); return 0; } |