int main (int argc, char **argv) { CORBA_ORB orb; bindtextdomain (PACKAGE, LOCALE_DIRECTORY); textdomain (PACKAGE); gnome_init_with_popt_table ("Evolution Yank", VERSION, argc, argv, oaf_popt_options, 0, NULL); orb = oaf_init (argc, argv); gdk_rgb_init (); if (bonobo_init (orb, CORBA_OBJECT_NIL, CORBA_OBJECT_NIL) == FALSE) { g_error (_("Yank component could not initialize Bonobo.\n")); exit (1); } glade_gnome_init (); gnome_vfs_init (); /* Start our component */ component_factory_init (); bonobo_main (); return 0; }
static gboolean wireless_applet_fill (WirelessApplet *applet) { gnome_window_icon_set_default_from_file (ICONDIR"/wireless-applet/wireless-applet.png"); glade_gnome_init (); glade_file = gnome_program_locate_file (NULL, GNOME_FILE_DOMAIN_DATADIR, "wireless-applet/wireless-applet.glade", FALSE, NULL); wireless_applet_new (applet); gtk_widget_show (GTK_WIDGET (applet)); return TRUE; }
int main (int argc, char *argv[]) { GnomeProgram *program; char *description; if (! g_thread_supported ()) { g_thread_init (NULL); gdk_threads_init (); } bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); description = g_strdup_printf ("- %s", _("View and organize your images")); context = g_option_context_new (description); g_free (description); g_option_context_add_main_entries (context, options, GETTEXT_PACKAGE); program = gnome_program_init ("gthumb", VERSION, LIBGNOMEUI_MODULE, argc, argv, GNOME_PARAM_GOPTION_CONTEXT, context, GNOME_PARAM_HUMAN_READABLE_NAME, _("gThumb"), GNOME_PARAM_APP_PREFIX, GTHUMB_PREFIX, GNOME_PARAM_APP_SYSCONFDIR, GTHUMB_SYSCONFDIR, GNOME_PARAM_APP_DATADIR, GTHUMB_DATADIR, GNOME_PARAM_APP_LIBDIR, GTHUMB_LIBDIR, NULL); gnome_vfs_init (); gnome_authentication_manager_init (); glade_gnome_init (); gthumb_init (); initialize_data (); prepare_app (); gdk_threads_enter (); gtk_main (); gdk_threads_leave (); release_data (); return 0; }
int main(int argc, char **argv) { ui_log_init(); /* stash a copy of argv[] in case we want to dump it for debugging */ stash_argv(argc, argv); ggcov_params_t params; argparse::parser_t parser(params); #if HAVE_GNOME_PROGRAM_INIT GnomeProgram *prog; poptContext popt_context; prog = gnome_program_init(PACKAGE, VERSION, LIBGNOMEUI_MODULE, argc, argv, GNOME_PARAM_POPT_TABLE, parser.get_popt_table(), GNOME_PROGRAM_STANDARD_PROPERTIES, GNOME_PARAM_NONE); g_object_get(prog, GNOME_PARAM_POPT_CONTEXT, &popt_context, (char *)0); parser.handle_popt_tail(popt_context); #elif GTK2 gtk_init(&argc, &argv); /* As of 2.0 we don't need to explicitly initialise libGlade anymore */ parser.parse(argc, argv); #else poptContext popt_context; gnome_init_with_popt_table(PACKAGE, VERSION, argc, argv, parser.get_popt_table(), /*popt flags*/0, &popt_context); glade_gnome_init(); parser.handle_popt_tail(popt_context); #endif int r = cov_read_files(params); if (r < 0) exit(1); /* error message in cov_read_files() */ cov_dump(); ui_create(params, argv[0], r); gtk_main(); return 0; }
int main (int argc, char **argv) { GladeXML *xml; GtkWidget *window; /* #if defined (HAVE_SETENV) setenv ("GTK_RC_FILES", DATADIR "/themes/Crux/gtk/gtkrc", 0); setenv ("GNOME_DISABLE_CRASH_DIALOG", "1", 0); #elif defined (HAVE_PUTENV) putenv ("GTK_RC_FILES=" DATADIR "/themes/Crux/gtk/gtkrc"); putenv ("GNOME_DISABLE_CRASH_DIALOG=1"); #else # warning "Need either setenv or putenv, test program is probably broken" #endif */ gnome_init ("foo", "0", argc, argv); glade_gnome_init (); if (access ("./test.glade", R_OK) == 0) xml = glade_xml_new ("./test.glade", "window1", NULL); else if (access ("../test.glade", R_OK) == 0) xml = glade_xml_new ("../test.glade", "window1", NULL); else { g_error ("can't load test.glade"); exit (1); } window = glade_xml_get_widget (xml, "window1"); glade_xml_signal_autoconnect (xml); gtk_object_destroy (GTK_OBJECT (xml)); gtk_widget_show_all (window); gtk_main (); }
int main(int argc, char *argv[]) { cam cam_object, *cam; Display *display; Screen *screen_num; gchar *poopoo = NULL; gchar *pixfilename = "camorama/camorama.png"; gchar *filename; //= "/usr/opt/garnome/share/camorama/camorama.glade"; int x = -1, y = -1; gboolean buggery = FALSE; GtkWidget *button; GConfClient *gc; const struct poptOption popt_options[] = { {"version", 'V', POPT_ARG_NONE, &ver, 0, N_("show version and exit"), NULL}, {"device", 'd', POPT_ARG_STRING, &poopoo, 0, N_("v4l device to use"), NULL}, {"debug", 'D', POPT_ARG_NONE, &buggery, 0, N_("enable debugging code"), NULL}, {"width", 'x', POPT_ARG_INT, &x, 0, N_("capture width"), NULL}, {"height", 'y', POPT_ARG_INT, &y, 0, N_("capture height"), NULL}, {"max", 'M', POPT_ARG_NONE, &max, 0, N_("maximum capture size"), NULL}, {"min", 'm', POPT_ARG_NONE, &min, 0, N_("minimum capture size"), NULL}, {"half", 'H', POPT_ARG_NONE, &half, 0, N_("middle capture size"), NULL}, {"read", 'R', POPT_ARG_NONE, &use_read, 0, N_("use read() rather than mmap()"), NULL}, POPT_TABLEEND }; cam = &cam_object; /* set some default values */ cam->frame_number = 0; cam->pic = NULL; cam->pixmap = NULL; cam->size = PICHALF; cam->video_dev = NULL; cam->read = FALSE; bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); setlocale (LC_ALL, ""); /* gnome_program_init - initialize everything (gconf, threads, etc) */ gnome_program_init (PACKAGE_NAME, PACKAGE_VERSION, LIBGNOMEUI_MODULE, argc, argv, GNOME_PARAM_APP_DATADIR, PACKAGE_DATA_DIR, GNOME_PARAM_POPT_TABLE, popt_options, GNOME_PARAM_HUMAN_READABLE_NAME, _("camorama"), NULL); /* gtk is initialized now */ camorama_stock_init(); camorama_filters_init(); cam->debug = buggery; cam->x = x; cam->y = y; glade_gnome_init (); glade_set_custom_handler (camorama_glade_handler, cam); if (ver) { fprintf (stderr, _("\n\nCamorama version %s\n\n"), VERSION); exit (0); } if (max) { cam->size = PICMAX; } if (min) { cam->size = PICMIN; } if (half) { cam->size = PICHALF; } if (use_read) { printf ("gah!\n"); cam->read = TRUE; } gc = gconf_client_get_default (); cam->gc = gc; gconf_client_add_dir (cam->gc, PATH, GCONF_CLIENT_PRELOAD_NONE, NULL); gconf_client_notify_add (cam->gc, KEY1, (void *) gconf_notify_func, cam->pixdir, NULL, NULL); gconf_client_notify_add (cam->gc, KEY5, (void *) gconf_notify_func, cam->rhost, NULL, NULL); gconf_client_notify_add (cam->gc, KEY2, (void *) gconf_notify_func, cam->capturefile, NULL, NULL); gconf_client_notify_add (cam->gc, KEY3, (void *) gconf_notify_func_int, GINT_TO_POINTER (cam->savetype), NULL, NULL); gconf_client_notify_add (cam->gc, KEY4, (void *) gconf_notify_func_bool, &cam->timestamp, NULL, NULL); if (!poopoo) { gchar const* gconf_device = gconf_client_get_string(cam->gc, KEY_DEVICE, NULL); if(gconf_device) { cam->video_dev = g_strdup(gconf_device); } else { cam->video_dev = g_strdup ("/dev/video0"); } } else { cam->video_dev = g_strdup (poopoo); } cam->pixdir = g_strdup (gconf_client_get_string (cam->gc, KEY1, NULL)); cam->capturefile = g_strdup (gconf_client_get_string (cam->gc, KEY2, NULL)); cam->rhost = g_strdup (gconf_client_get_string (cam->gc, KEY5, NULL)); cam->rlogin = g_strdup (gconf_client_get_string (cam->gc, KEY6, NULL)); cam->rpw = g_strdup (gconf_client_get_string (cam->gc, KEY7, NULL)); cam->rpixdir = g_strdup (gconf_client_get_string (cam->gc, KEY8, NULL)); cam->rcapturefile = g_strdup (gconf_client_get_string (cam->gc, KEY9, NULL)); cam->savetype = gconf_client_get_int (cam->gc, KEY3, NULL); cam->rsavetype = gconf_client_get_int (cam->gc, KEY10, NULL); cam->ts_string = g_strdup (gconf_client_get_string (cam->gc, KEY16, NULL)); cam->date_format = "%Y-%m-%d %H:%M:%S"; cam->timestamp = gconf_client_get_bool (cam->gc, KEY4, NULL); cam->rtimestamp = gconf_client_get_bool (cam->gc, KEY11, NULL); cam->cap = gconf_client_get_bool (cam->gc, KEY12, NULL); cam->rcap = gconf_client_get_bool (cam->gc, KEY13, NULL); cam->timefn = gconf_client_get_bool (cam->gc, KEY14, NULL); cam->rtimefn = gconf_client_get_bool (cam->gc, KEY15, NULL); cam->usestring = gconf_client_get_bool (cam->gc, KEY18, NULL); cam->usedate = gconf_client_get_bool (cam->gc, KEY19, NULL); cam->acap = gconf_client_get_bool (cam->gc, KEY20, NULL); cam->timeout_interval = gconf_client_get_int (cam->gc, KEY21, NULL); cam->show_adjustments = gconf_client_get_bool (cam->gc, KEY22, NULL); cam->show_effects = gconf_client_get_bool (cam->gc, KEY23, NULL); /* get desktop depth */ display = (Display *) gdk_x11_get_default_xdisplay (); screen_num = xlib_rgb_get_screen (); gdk_pixbuf_xlib_init (display, 0); cam->desk_depth = xlib_rgb_get_depth (); cam->dev = open (cam->video_dev, O_RDWR); camera_cap (cam); get_win_info (cam); /* query/set window attributes */ cam->vid_win.x = 0; cam->vid_win.y = 0; cam->vid_win.width = cam->x; cam->vid_win.height = cam->y; cam->vid_win.chromakey = 0; cam->vid_win.flags = 0; set_win_info (cam); get_win_info (cam); /* get picture attributes */ get_pic_info (cam); // set_pic_info(cam); /* set_pic_info(cam); */ cam->contrast = cam->vid_pic.contrast; cam->brightness = cam->vid_pic.brightness; cam->colour = cam->vid_pic.colour; cam->hue = cam->vid_pic.hue; cam->wb = cam->vid_pic.whiteness; cam->depth = cam->vid_pic.depth / 8; cam->pic_buf = malloc (cam->x * cam->y * cam->depth); cam->tmp = malloc (cam->vid_cap.maxwidth * cam->vid_cap.maxheight * cam->depth); //cam->tmp = NULL; /* set the buffer size */ if (cam->read == FALSE) { set_buffer (cam); } //cam->read = FALSE; /* initialize cam and create the window */ if (cam->read == FALSE) { pt2Function = timeout_func; init_cam (NULL, cam); } else { printf ("using read()\n"); cam->pic = realloc (cam->pic, (cam->vid_cap.maxwidth * cam->vid_cap.maxheight * 3)); pt2Function = read_timeout_func; } cam->pixmap = gdk_pixmap_new (NULL, cam->x, cam->y, cam->desk_depth); filename = gnome_program_locate_file (NULL, GNOME_FILE_DOMAIN_APP_DATADIR, "camorama/camorama.glade", TRUE, NULL); if (filename == NULL) { error_dialog (_ ("Couldn't find the main interface file (camorama.glade).")); exit (1); } //pixfilename = gnome_program_locate_file(NULL, GNOME_FILE_DOMAIN_APP_DATADIR, "pixmaps/camorama.png", TRUE, NULL); //printf("pixfile = %s\n",pixfilename); //pixfilename); //printf("pixfile = %s\n",pixfilename); cam->xml = glade_xml_new (filename, NULL, NULL); /*eggtray */ /*tray_icon = egg_tray_icon_new ("Our other cool tray icon"); * button = gtk_button_new_with_label ("This is a another\ncool tray icon"); * g_signal_connect (button, "clicked", * G_CALLBACK (second_button_pressed), tray_icon); * * gtk_container_add (GTK_CONTAINER (tray_icon), button); * gtk_widget_show_all (GTK_WIDGET (tray_icon)); */ load_interface (cam); cam->idle_id = gtk_idle_add ((GSourceFunc) pt2Function, (gpointer) cam); gtk_timeout_add (2000, (GSourceFunc) fps, cam->status); gtk_main (); return 0; }
/*************************************************************************** * * implementation * **************************************************************************/ int main (int argc, char *argv[]) { GtkWidget *widget; GnomeClient *client; gchar *mode_string = NULL; gchar *cl_filter = NULL; gchar *cl_interface = NULL; gchar *cl_input_file = NULL; gchar *export_file_final = NULL; gchar *export_file_signal = NULL; gboolean cl_numeric = FALSE; glong midelay = 0; glong madelay = G_MAXLONG; gchar *version; gchar *cl_glade_file = NULL; poptContext poptcon; struct poptOption optionsTable[] = { {"diagram-only", 'd', POPT_ARG_NONE, &(pref.diagram_only), 0, N_("don't display any node text identification"), NULL}, {"replay-file", 'r', POPT_ARG_STRING, &cl_input_file, 0, N_("replay packets from file"), N_("<file to replay>")}, {"filter", 'f', POPT_ARG_STRING, &cl_filter, 0, N_("set capture filter"), N_("<capture filter>")}, {"interface", 'i', POPT_ARG_STRING, &cl_interface, 0, N_("set interface to listen to"), N_("<interface name>")}, {"final-export", 0, POPT_ARG_STRING, &export_file_final, 0, N_("export to named file at end of replay"), N_("<file to export to>")}, {"signal-export", 0, POPT_ARG_STRING, &export_file_signal, 0, N_("export to named file on receiving USR1"), N_("<file to export to>")}, {"stationary", 's', POPT_ARG_NONE, &(pref.stationary), 0, N_("don't move nodes around (deprecated)"), NULL}, {"node-limit", 'l', POPT_ARG_INT, &(appdata.node_limit), 0, N_("limits nodes displayed"), N_("<number of nodes>")}, {"mode", 'm', POPT_ARG_STRING, &mode_string, 0, N_("mode of operation"), N_("<link|ip|tcp>")}, {"numeric", 'n', POPT_ARG_NONE, &cl_numeric, 0, N_("don't convert addresses to names"), NULL}, {"quiet", 'q', POPT_ARG_NONE, &quiet, 0, N_("Disable informational messages"), NULL}, {"min-delay", 0, POPT_ARG_LONG, &midelay, 0, N_("minimum packet delay in ms for reading capture files [cli only]"), N_("<delay>")}, {"max-delay", 0, POPT_ARG_LONG, &madelay, 0, N_("maximum packet delay in ms for reading capture files [cli only]"), N_("<delay>")}, {"glade-file", 0, POPT_ARG_STRING, &(cl_glade_file), 0, N_("uses the named libglade file for widgets"), N_("<glade file>")}, POPT_AUTOHELP {NULL, 0, 0, NULL, 0, NULL, NULL} }; #ifdef ENABLE_NLS bindtextdomain (PACKAGE, PACKAGE_LOCALE_DIR); bind_textdomain_codeset(PACKAGE, "UTF-8"); /* force UTF-8 conversion */ textdomain (PACKAGE); #endif /* We set the window icon to use */ if (!getenv ("GNOME_DESKTOP_ICON")) putenv ("GNOME_DESKTOP_ICON=" PIXMAPS_DIR "/etherape.png"); #ifdef PACKAGE_SCM_REV /* We initiate the application and read command line options */ version = g_strdup_printf("%s (hg id %s)", VERSION, (*PACKAGE_SCM_REV) ? PACKAGE_SCM_REV : _("-unknown-")); #else version = g_strdup(VERSION); #endif gnome_program_init ("EtherApe", version, LIBGNOMEUI_MODULE, argc, argv, GNOME_PARAM_POPT_TABLE, optionsTable, GNOME_PARAM_NONE); g_free(version); appdata_init(&appdata); /* We obtain application parameters * First, absolute defaults * Second, values saved in the config file * Third, whatever given in the command line */ init_config(&pref); set_debug_level(); /* Config file */ load_config(); /* Command line */ cl_numeric = !pref.name_res; poptcon = poptGetContext ("Etherape", argc, (const char **) argv, optionsTable, 0); while (poptGetNextOpt (poptcon) > 0); if (cl_interface) { if (appdata.interface) g_free (appdata.interface); appdata.interface = g_strdup (cl_interface); } if (export_file_final) { if (appdata.export_file_final) g_free (appdata.export_file_final); appdata.export_file_final = g_strdup (export_file_final); } if (export_file_signal) { if (appdata.export_file_signal) g_free (appdata.export_file_signal); appdata.export_file_signal = g_strdup (export_file_signal); } pref.name_res = !cl_numeric; if (cl_input_file) { if (appdata.input_file) g_free (appdata.input_file); appdata.input_file = g_strdup (cl_input_file); } /* Find mode of operation */ if (mode_string) { if (strstr (mode_string, "link")) appdata.mode = LINK6; else if (strstr (mode_string, "ip")) appdata.mode = IP; else if (strstr (mode_string, "tcp")) appdata.mode = TCP; else g_warning (_ ("Unrecognized mode. Do etherape --help for a list of modes")); g_free(pref.filter); pref.filter = get_default_filter(appdata.mode); } if (cl_filter) { if (pref.filter) g_free (pref.filter); pref.filter = g_strdup (cl_filter); } if (midelay >= 0 && midelay <= G_MAXLONG) { appdata.min_delay = midelay; if (appdata.min_delay != 0) g_message("Minimum delay set to %lu ms", appdata.min_delay); } else g_message("Invalid minimum delay %ld, ignored", midelay); if (madelay >= 0 && madelay <= G_MAXLONG) { if (madelay < appdata.min_delay) { g_message("Maximum delay must be less of minimum delay"); appdata.max_delay = appdata.min_delay; } else appdata.max_delay = madelay; if (appdata.max_delay != G_MAXLONG) g_message("Maximum delay set to %lu ms", appdata.max_delay); } else g_message("Invalid maximum delay %ld, ignored", madelay); /* Glade */ glade_gnome_init (); glade_require("gnome"); glade_require("canvas"); if (!appdata_init_glade(cl_glade_file)) return 1; /* prepare decoders */ services_init(); /* Sets controls to the values of variables and connects signals */ init_diagram (appdata.xml); /* Session handling */ client = gnome_master_client (); g_signal_connect (G_OBJECT (client), "save_yourself", GTK_SIGNAL_FUNC (save_session), argv[0]); g_signal_connect (G_OBJECT (client), "die", GTK_SIGNAL_FUNC (session_die), NULL); gtk_widget_show (appdata.app1); install_handlers(); /* With this we force an update of the diagram every x ms * Data in the diagram is updated, and then the canvas redraws itself when * the gtk loop is idle. If the CPU can't handle the set refresh_period, * then it will just do a best effort */ widget = glade_xml_get_widget (appdata.xml, "canvas1"); destroying_idle (widget); /* This other timeout makes sure that the info windows are updated */ g_timeout_add (500, (GtkFunction) update_info_windows, NULL); /* another timeout to handle IP-cache timeouts */ g_timeout_add (10000, (GtkFunction) ipcache_tick, NULL); init_menus (); gui_start_capture (); /* MAIN LOOP */ gtk_main (); free_static_data(); return 0; } /* main */