Esempio n. 1
0
File: main.c Progetto: wavs/ocre
/*
** the main function
*/
int main (int argc, char *argv[])
{
  GUI_* gui;

  gtk_init (&argc, &argv);

  gui = g_slice_new(GUI_);

  gui->gxml   = glade_xml_new ("../gui/gui.glade", NULL, NULL);
  gui->window = glade_xml_get_widget (gui->gxml, "window");
  gui->image  = glade_xml_get_widget (gui->gxml, "image");
  gui->textview = glade_xml_get_widget (gui->gxml, "textview");

  glade_xml_signal_connect (gui->gxml, "on_window_destroy",
			    G_CALLBACK (gtk_main_quit));
  glade_xml_signal_connect_data (gui->gxml, "on_open_show",
				 G_CALLBACK (on_open_show),
				 gui);
  glade_xml_signal_connect_data (gui->gxml, "on_save_show",
				 G_CALLBACK (on_save_show),
				 gui);
  glade_xml_signal_connect_data (gui->gxml, "on_text_show",
				 G_CALLBACK (preprocess),
				 gui);
  glade_xml_signal_connect_data (gui->gxml, "on_block",
				 G_CALLBACK (detect_blocks),
				 gui);
  glade_xml_signal_connect (gui->gxml, "on_about_show",
			    G_CALLBACK (on_about_show));

  gtk_widget_show (gui->window);
  gtk_main ();

  return 0;
}
Esempio n. 2
0
static int
setup_interface( void )
{
  GtkWidget *window, *treeview, *select_entry, *spawn_dialog, *spawn_label;
  GtkCellRenderer *renderer;

  gtk_window_set_default_icon_name( "gnome-dev-keyboard" );

  wl = window_list_new();

  xml = glade_xml_new( PREFIX "/share/keyboardcast/keyboardcast.glade",
                       NULL, NULL );

  if( xml == NULL )
    return 1;

  select_entry = glade_xml_get_widget( xml, "select-entry" );
  treeview = glade_xml_get_widget( xml, "treeview" );
  window = glade_xml_get_widget( xml, "window" );
  spawn_dialog = glade_xml_get_widget( xml, "spawn-dialog" );
  spawn_label = glade_xml_get_widget( xml, "spawn-label" );

  if( select_entry == NULL || treeview == NULL ||
      window == NULL || spawn_dialog == NULL || spawn_label == NULL )
    return 1;

  gtk_tree_view_set_model( GTK_TREE_VIEW( treeview ), GTK_TREE_MODEL( wl ) );

  renderer = window_list_toggle_renderer( wl );
  gtk_tree_view_insert_column_with_attributes( GTK_TREE_VIEW( treeview ), -1,
                                               "✓", renderer, // ☑☒✓✔
                                               "active", 1, NULL );

  renderer = gtk_cell_renderer_text_new();
  gtk_tree_view_insert_column_with_attributes( GTK_TREE_VIEW( treeview ), -1,
                                               "Window Title", renderer,
                                               "text", 2, NULL );

  glade_xml_signal_connect( xml, "key_event", G_CALLBACK( key_event ) );
  glade_xml_signal_connect( xml, "gtk_exit", G_CALLBACK( gtk_exit ) );
  glade_xml_signal_connect_data( xml, "expanded",
                                 G_CALLBACK( expanded ), window );
  glade_xml_signal_connect_data( xml, "button_clicked",
                                 G_CALLBACK( button_clicked ), select_entry );
  glade_xml_signal_connect_data( xml, "spawn_clicked",
                                 G_CALLBACK( spawn_clicked ), spawn_dialog );
  glade_xml_signal_connect( xml, "terminal_toggled",
                            G_CALLBACK( terminal_toggled ) );
  glade_xml_signal_connect_data( xml, "update_label",
                                 G_CALLBACK( update_label ), spawn_label );

  update_label( NULL, GTK_LABEL( spawn_label ) );

  window_list_filter_by_process( wl, "gnome-terminal" );

  gtk_widget_show_all( window );

  return 0;
}