int main (int argc, char **argv) { GtkApplication *app; static GActionEntry app_entries[] = { { "about", activate_about, NULL, NULL, NULL }, { "quit", activate_quit, NULL, NULL, NULL }, }; /* Most code in gtk-demo is intended to be exemplary, but not * these few lines, which are just a hack so gtk-demo will work * in the GTK tree without installing it. */ if (g_file_test ("../../modules/input/immodules.cache", G_FILE_TEST_EXISTS)) { g_setenv ("GTK_IM_MODULE_FILE", "../../modules/input/immodules.cache", TRUE); } /* -- End of hack -- */ app = gtk_application_new ("org.gtk.Demo", G_APPLICATION_NON_UNIQUE|G_APPLICATION_HANDLES_COMMAND_LINE); g_action_map_add_action_entries (G_ACTION_MAP (app), app_entries, G_N_ELEMENTS (app_entries), app); g_application_add_main_option (G_APPLICATION (app), "version", 0, 0, G_OPTION_ARG_NONE, "Show program version", NULL); g_application_add_main_option (G_APPLICATION (app), "run", 0, 0, G_OPTION_ARG_STRING, "Run an example", "EXAMPLE"); g_application_add_main_option (G_APPLICATION (app), "list", 0, 0, G_OPTION_ARG_NONE, "List examples", NULL); g_application_add_main_option (G_APPLICATION (app), "autoquit", 0, 0, G_OPTION_ARG_NONE, "Quit after a delay", NULL); g_signal_connect (app, "startup", G_CALLBACK (startup), NULL); g_signal_connect (app, "activate", G_CALLBACK (activate), NULL); g_signal_connect (app, "command-line", G_CALLBACK (command_line), NULL); g_signal_connect (app, "handle-local-options", G_CALLBACK (local_options), NULL); g_application_run (G_APPLICATION (app), argc, argv); return 0; }
static void gbp_greeter_application_addin_add_option_entries (IdeApplicationAddin *addin, IdeApplication *app) { g_assert (IDE_IS_APPLICATION_ADDIN (addin)); g_assert (G_IS_APPLICATION (app)); g_application_add_main_option (G_APPLICATION (app), "greeter", 'g', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE, _("Display a new greeter window"), NULL); g_application_add_main_option (G_APPLICATION (app), "clone", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_STRING, _("Begin cloning project from URI"), "URI"); }