Example #1
0
int main(int argc, char** argv)
{
    GtkWidget *window;
    GtkWidget *clist;
    gchar* text1[3] = {"刘备","男","23"};
    gchar* text2[3] = {"张飞","男","18"};
    gchar* text3[3] = {"关羽","男","16"};
    gchar* text4[3] = {"孙二娘","女","25"};
    gtk_init(&argc, &argv);
    window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
    gtk_widget_set_size_request(window, 150, 100);
    g_signal_connect(GTK_OBJECT(window), "destroy", G_CALLBACK(gtk_main_quit), NULL);

    clist =  gtk_clist_new(3);
    g_signal_connect(GTK_OBJECT(clist), "select_row", G_CALLBACK(select_row_cb), NULL);
    gtk_clist_set_column_title(GTK_CLIST(clist), 0, "Name");
    gtk_clist_set_column_title(GTK_CLIST(clist), 1, "Sex");
    gtk_clist_set_column_title(GTK_CLIST(clist), 2, "Age");
    
    gtk_clist_column_titles_show(GTK_CLIST(clist));
    gtk_clist_append(GTK_CLIST(clist), text1);
    gtk_clist_append(GTK_CLIST(clist), text2);
    gtk_clist_append(GTK_CLIST(clist), text3);
    gtk_clist_prepend(GTK_CLIST(clist), text4);

    gtk_container_add(GTK_CONTAINER(window), clist);

    gtk_widget_show_all(window);
    gtk_main();
    return 0;
}
Example #2
0
int main(int argc, char** argv)
{
    GtkWidget *window;
    GtkWidget *clist;
    GtkWidget *image;

    gtk_init(&argc, &argv);
    window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
    gtk_widget_set_size_request(window, 150, 200);
    g_signal_connect(GTK_OBJECT(window), "destroy", G_CALLBACK(gtk_main_quit), NULL);

    clist =  gtk_clist_new(3);
    gtk_clist_set_column_title(GTK_CLIST(clist), 0, "Name");
    gtk_clist_set_column_title(GTK_CLIST(clist), 1, "Sex");
    gtk_clist_set_column_title(GTK_CLIST(clist), 2, "Age");
    image = gtk_image_new_from_file("earth.png");
    gtk_clist_set_column_widget(GTK_CLIST(clist), 0, image);
    
    gtk_clist_column_titles_show(GTK_CLIST(clist));

    gtk_container_add(GTK_CONTAINER(window), clist);

    gtk_widget_show_all(window);
    gtk_main();
    return 0;
}
Example #3
0
//loads object properties form and does some fixes
//call this function only ones
void create_object_properties(void)
{
#ifdef UNUSED
    char *data0 = "TEST0";
    char *data1 = "TEST1";
    char *data2 = "TEST2";
    char *data3 = "TEST3";
    char *data4 = "TEST4";
#endif
    GladeXML *xml;
    GtkWidget *widget;
    xml = glade_xml_new(smyrnaGlade, NULL, NULL);

    widget = glade_xml_get_widget(xml, "listPoints");
    gtk_clist_set_column_title((GtkCList *) widget, 0, "Def");
    gtk_clist_set_column_title((GtkCList *) widget, 1, "x");
    gtk_clist_set_column_title((GtkCList *) widget, 2, "y");
    gtk_clist_set_column_title((GtkCList *) widget, 3, "z");
    gtk_clist_column_titles_show((GtkCList *) widget);
    gtk_widget_show(widget);
    widget = glade_xml_get_widget(xml, "win");
    gtk_widget_show(widget);


}
Example #4
0
/*
 * Función mostrarConsultaWindow()
 *
 * Parámetros de entrada:
 *      char * dir[3]: nombre direccion y telefono a mostrar
 *      
 * Parámetros de salida:
 *      Ninguno
 *
 * Descripción: 
 *      Mostrar en la pantalla una única consulta
 */
void mostrarConsultaWindow(char* dir[3])
{
    GtkWidget *datos;
    GtkWidget *window;
  
    window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    gtk_widget_set_usize (GTK_WIDGET (window), 300, 300);
    gtk_window_set_policy(GTK_WINDOW (window), TRUE, TRUE, FALSE);      
    gtk_window_set_title (GTK_WINDOW (window), "Libro de direcciones");
    gtk_container_border_width (GTK_CONTAINER (window), 10);    
    gtk_widget_set_uposition( window, 300, 300 );   
  
    datos=gtk_clist_new(3);
    gtk_clist_set_column_title(GTK_CLIST(datos),0,"Nombre");    
    gtk_clist_set_column_title(GTK_CLIST(datos),1,"Direccion");
    gtk_clist_set_column_title(GTK_CLIST(datos),2,"Telefono");
    gtk_clist_column_titles_show(GTK_CLIST(datos));
    gtk_clist_set_column_width(GTK_CLIST(datos),0,100);
    gtk_clist_set_column_width(GTK_CLIST(datos),1,100);
    gtk_clist_set_column_width(GTK_CLIST(datos),2,50);          
    gtk_container_add (GTK_CONTAINER (window), datos); 
    gtk_clist_append(GTK_CLIST(datos),dir);   
    gtk_widget_show(datos);
    gtk_grab_add(window);
    gtk_widget_show(window);
} 
Example #5
0
extern void GL_SetNames(void)
{
    gtk_clist_set_column_title( GTK_CLIST( pwGameList ), 1, 
                                ( ap[0].szName ));
    gtk_clist_set_column_title( GTK_CLIST( pwGameList ), 2, 
                                ( ap[1].szName ));
}
Example #6
0
static GtkCList *mmio_window_add_page( mmio_window_t mmio, char *name, struct mmio_region *io_rgn )
{
    GtkCList *list;
    GtkWidget *scroll;
    GtkWidget *tab;
    GtkCheckButton *trace_button;
    GtkVBox *vbox;

    scroll = gtk_scrolled_window_new(NULL, NULL);
    gtk_scrolled_window_set_policy( GTK_SCROLLED_WINDOW(scroll),
                                    GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS );
    list = GTK_CLIST(gtk_clist_new(5));
    gtk_clist_set_column_width(list, 0, 70);
    gtk_clist_set_column_width(list, 1, 75);
    gtk_clist_set_column_width(list, 2, 70);
    gtk_clist_set_column_width(list, 3, 280);
    gtk_clist_set_column_width(list, 4, 160);
    gtk_clist_set_column_justification(list, 0, GTK_JUSTIFY_CENTER );
    gtk_clist_set_column_justification(list, 2, GTK_JUSTIFY_CENTER );
    gtk_clist_set_column_justification(list, 3, GTK_JUSTIFY_CENTER );
    gtk_clist_set_column_title(list, 0, _("Address"));
    gtk_clist_set_column_title(list, 1, _("Register"));
    gtk_clist_set_column_title(list, 2, _("Value"));
    gtk_clist_set_column_title(list, 3, _("Bit Pattern"));
    gtk_clist_set_column_title(list, 4, _("Description"));
    gtk_clist_column_titles_show(list);
    gtk_widget_modify_font( GTK_WIDGET(list), gui_fixed_font );
    tab = gtk_label_new(_(name));
    gtk_container_add( GTK_CONTAINER(scroll), GTK_WIDGET(list) );

    vbox = GTK_VBOX(gtk_vbox_new( FALSE, 0 ));
    gtk_container_add( GTK_CONTAINER(vbox), GTK_WIDGET(scroll) );

    trace_button = GTK_CHECK_BUTTON(gtk_check_button_new_with_label(_("Trace access")));
    if( io_rgn != NULL ) {
        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(trace_button), 
                io_rgn->trace_flag ? TRUE : FALSE);
    }
    gtk_container_add( GTK_CONTAINER(vbox), GTK_WIDGET(trace_button) );
    gtk_box_set_child_packing( GTK_BOX(vbox), GTK_WIDGET(trace_button), 
                               FALSE, FALSE, 0, GTK_PACK_START );
    gtk_notebook_append_page( GTK_NOTEBOOK(mmio->notebook), GTK_WIDGET(vbox), tab );
    gtk_object_set_data( GTK_OBJECT(mmio->window), name, list );
    g_signal_connect ((gpointer) trace_button, "toggled",
                      G_CALLBACK (on_trace_button_toggled),
                      io_rgn);
    return list;
}
Example #7
0
GtkWidget *gtk_clist_new_with_titles(gint columns, gchar *titles[])
{
  GtkWidget *widget;
  GtkCList *clist;
  gint i;

  widget = gtk_clist_new(columns);
  clist = GTK_CLIST(widget);
  for (i = 0; i < clist->cols; i++) {
    gtk_clist_set_column_title(clist, i, titles[i]);
  }
  return widget;
}
Example #8
0
GtkWidget *
fontsel_new (ProgressData *pdata)
{
  GtkWidget *paned;
  GtkWidget *clist;
  GtkWidget *clist2;
  GtkWidget *scrolled_window;

  paned = gtk_hpaned_new ();

  g_signal_new ("face_changed",
                GTK_TYPE_WIDGET,
                G_SIGNAL_RUN_LAST,
                0,
                NULL, NULL,
                g_cclosure_marshal_VOID__VOID,
                G_TYPE_NONE,
                0,
                NULL);

  g_object_set_data (G_OBJECT (paned), "progress_data", pdata);

  /*  family  */
  clist = gtk_clist_new (1);
  gtk_clist_set_column_title (GTK_CLIST (clist), 0, _("Font Family"));
  gtk_clist_column_titles_show (GTK_CLIST (clist));
  gtk_clist_column_titles_passive (GTK_CLIST (clist));
  gtk_widget_show (clist);

  scrolled_window =
    gtk_scrolled_window_new (gtk_clist_get_hadjustment (GTK_CLIST (clist)),
			     gtk_clist_get_vadjustment (GTK_CLIST (clist)));
  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window),
                                  GTK_POLICY_AUTOMATIC,
                                  GTK_POLICY_ALWAYS);
  gtk_container_add (GTK_CONTAINER (scrolled_window), clist);
  gtk_widget_show (scrolled_window);

  gtk_paned_pack1 (GTK_PANED (paned), scrolled_window, TRUE, FALSE);

  /*  style  */
  clist2 = gtk_clist_new (1);
  gtk_clist_set_column_title (GTK_CLIST (clist2), 0, _("Font Style"));
  gtk_clist_column_titles_show (GTK_CLIST (clist2));
  gtk_clist_column_titles_passive (GTK_CLIST (clist2));
  gtk_widget_show (clist2);

  scrolled_window =
    gtk_scrolled_window_new (gtk_clist_get_hadjustment (GTK_CLIST (clist2)),
			     gtk_clist_get_vadjustment (GTK_CLIST (clist2)));
  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window),
                                  GTK_POLICY_AUTOMATIC,
                                  GTK_POLICY_ALWAYS);
  gtk_container_add (GTK_CONTAINER (scrolled_window), clist2);
  gtk_widget_show (scrolled_window);

  gtk_paned_pack2 (GTK_PANED (paned), scrolled_window, TRUE, FALSE);

  g_signal_connect (clist, "select_row",
                    G_CALLBACK (fontsel_family_select_callback),
                    clist2);
  g_signal_connect (clist2, "select_row",
                    G_CALLBACK (fontsel_style_select_callback),
                    paned);

  g_object_set_data (G_OBJECT (paned), "family_list", clist);
  g_object_set_data (G_OBJECT (paned), "style_list",  clist2);

  return paned;
}
void init_gui_playlist(void) {
  GtkWidget *li;
  GtkWidget *scroller;
  GtkWidget *box;
  GtkWidget *table1;
  GtkWidget *reload_button;
  GtkWidget * enqueue_button;

  selected_row = -1;
  dir_browser = NULL;
  list_dialog = NULL;
  files = NULL;

  /* Create and setup main window */
  library_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
  //gtk_window_set_decorated(library_window, FALSE);
  
  //  gtk_widget_set_app_paintable(library_window, TRUE);
  //  gtk_window_set_policy( GTK_WINDOW(library_window), FALSE, FALSE, TRUE);

  /* Put the window into the xmms class, and hide it from the window list*/
  gtk_window_set_wmclass( GTK_WINDOW(library_window), "XMMS_MediaLibrary",
			  "xmms");
  gtk_window_set_transient_for( GTK_WINDOW(library_window), 
				GTK_WINDOW(mainwin) );
  //  hint_set_skip_winlist( library_window );

  gtk_window_set_default_size(GTK_WINDOW(library_window), 350, 350);
  gtk_window_set_title(GTK_WINDOW(library_window), "Media Library"); 

  /*  gtk_widget_set_events( library_window, GDK_FOCUS_CHANGE_MASK |
			 GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK |
			 GDK_BUTTON_RELEASE_MASK );
  */
  //  gtk_widget_realize( library_window );

  //  gtk_widget_set_usize( library_window, 300, 200 );

  /*  background = gdk_pixmap_new( NULL, 300, 200, gdk_rgb_get_visual()->depth );

  pl_gc = gdk_gc_new( library_window->window );

  printf("init\n");
  printf("%i\n", get_skin_color(SKIN_PLEDIT_NORMALBG));

  gdk_gc_set_foreground(pl_gc, get_skin_color(SKIN_PLEDIT_NORMALBG) );
  gdk_draw_rectangle( background, pl_gc, TRUE, 0, 0, 300, 200 );

  gdk_window_set_back_pixmap( library_window->window, background, 0);*/

  /* Remove the WMs decorations */
  //  gdk_window_set_decorations( library_window->window, 0);

  /* Setup list*/
  file_list = gtk_clist_new(1);

  g_signal_connect(GTK_OBJECT(file_list), "select-row",
		     GTK_SIGNAL_FUNC(file_list_select), NULL);

  g_signal_connect(GTK_OBJECT(file_list), "unselect-row",
		     GTK_SIGNAL_FUNC(file_list_unselect), NULL);

  g_signal_connect(GTK_OBJECT(file_list), "button-press-event",
		     G_CALLBACK(file_list_pressed), NULL);

  g_signal_connect(GTK_OBJECT(file_list), "key-press-event",
		     GTK_SIGNAL_FUNC(file_list_key_press), NULL);


  gtk_clist_set_column_title(GTK_CLIST(file_list), 0, "Title");
  gtk_clist_column_titles_passive(GTK_CLIST(file_list));
  gtk_clist_column_titles_show(GTK_CLIST(file_list));

  gtk_clist_set_selection_mode(GTK_CLIST(file_list), GTK_SELECTION_EXTENDED);

  gtk_widget_grab_default( GTK_OBJECT(file_list) );
  

  /* Setup the search field */
  search_field = gtk_entry_new();
  g_signal_connect(GTK_OBJECT(search_field), "changed",
		     GTK_SIGNAL_FUNC(search_modify), NULL);
  
  g_signal_connect(GTK_OBJECT(search_field), "key-press-event",
		     G_CALLBACK(search_field_keypress), NULL);

  /*  gtk_signal_connect(GTK_OBJECT(search_field), "focus-in-event",
      GTK_SIGNAL_FUNC(search_field_focus_in), NULL);*/

  /* Setup the search button 
  search_button = gtk_button_new_with_label("Search"); */

  /* Setup the reload button*/
  reload_button = gtk_button_new_with_label("Reload"); 
  g_signal_connect( GTK_OBJECT(reload_button), "clicked",
		      GTK_SIGNAL_FUNC(reload_button_clicked), NULL);

  /* Setup the play and enqueue-buttons */
  play_button = gtk_button_new_with_label("Play");
  play_button_handler_id = g_signal_connect(GTK_OBJECT(play_button), "clicked",
  			GTK_SIGNAL_FUNC(play_button_clicked), NULL);
  
  enqueue_button = gtk_button_new_with_label("Add");
  g_signal_connect(GTK_OBJECT(enqueue_button), "clicked",
  			GTK_SIGNAL_FUNC(enqueue_button_clicked), NULL);
			
  /* Set the scroller up*/
  scroller = gtk_scrolled_window_new(NULL, NULL);
  gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroller), 
				 GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
  
  gtk_container_add(GTK_CONTAINER(scroller), file_list);

  /* Setup the labels 
  label1 = gtk_label_new("Total songs:");
  label2 = gtk_label_new("Songs showing:");

  gtk_label_set_justify(GTK_LABEL(label1), GTK_JUSTIFY_RIGHT);
  gtk_label_set_justify(GTK_LABEL(label2), GTK_JUSTIFY_RIGHT);

  total_count_label = gtk_label_new("-");
  showing_count_label = gtk_label_new("-");
  gtk_label_set_justify(GTK_LABEL(total_count_label), GTK_JUSTIFY_LEFT);
  gtk_label_set_justify(GTK_LABEL(showing_count_label), GTK_JUSTIFY_LEFT);*/

  /* Setup layout widgets*/
  layout_box = gtk_vbox_new(FALSE, 1);

  gtk_container_add(GTK_CONTAINER(library_window), layout_box);
  gtk_widget_show(layout_box);

  table = gtk_table_new(3,2, TRUE);

  gtk_box_pack_start(GTK_BOX(layout_box), table, FALSE, FALSE, 0);
  gtk_box_pack_start_defaults(GTK_BOX(layout_box), scroller);

  box = gtk_hbox_new(FALSE, 1);
  //gtk_box_pack_start(GTK_BOX(box), search_field, TRUE, TRUE, 0);

  /* The top 'bar'*/
  table1 = gtk_table_new(1, 4, FALSE);
  gtk_table_attach_defaults(GTK_TABLE(table1), search_field, 0,1,0,1); 
  gtk_table_attach_defaults(GTK_TABLE(table1), play_button, 1,2,0,1); 
  gtk_table_attach_defaults(GTK_TABLE(table1), enqueue_button, 2,3,0,1); 
  gtk_table_attach_defaults(GTK_TABLE(table1), reload_button, 3,4,0,1); 
  
/*  gtk_table_attach_defaults(GTK_TABLE(table1), reload_button, 2, 3, 0, 1);
  gtk_table_attach_defaults(GTK_TABLE(table1), add_random_button, 2, 3, 1, 2);
  gtk_table_attach_defaults(GTK_TABLE(table1), label1, 0,1, 0,1);
  gtk_table_attach_defaults(GTK_TABLE(table1), label2, 0,1, 1,2);
  gtk_table_attach_defaults(GTK_TABLE(table1), total_count_label, 1,2, 0,1);
  gtk_table_attach_defaults(GTK_TABLE(table1), showing_count_label, 1,2, 1,2);*/

  /* Add widgets to the table */
  gtk_table_attach_defaults(GTK_TABLE(table), table1, 0, 2, 0, 2);
  //gtk_table_attach_defaults(GTK_TABLE(table), box, 0, 2, 1, 3);


  /* Show all the widgets*/
  gtk_widget_show(reload_button);
  gtk_widget_show(play_button);
  gtk_widget_show(enqueue_button);
  //gtk_widget_show(box);
  gtk_widget_show(search_field);
  gtk_widget_show(scroller);
  gtk_widget_show(table1);
  gtk_widget_show(table);
  gtk_widget_show(file_list);

  /* And finally, show the window itself*/
  gtk_widget_show(library_window);

  //  dock_add_window(dock_window_list, library_window);
}
Example #10
0
/*
 * Función listarDireccionWindow()
 */
void listarDireccionWindow (void)
{
    int i, num, ret, indice;
    char *nombre, *direccion, *telefono;
    GtkWidget *datos[NUM_LETRAS];
    GtkWidget *window;
    GtkWidget *libro;
    GtkWidget *label;
    GtkWidget *scroll;
    char* dir[3];
    char letras[NUM_LETRAS][2]={"#","A","B","C","D","E","F","G","H","I","J","K","L","M","N","Ñ","O","P","Q","R","S","T","U","V","W","X","Y","Z"};
    char inicial;

    /* 
     * Dialog
     */  
    window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    gtk_widget_set_usize (GTK_WIDGET (window), 585, 300);
    gtk_window_set_policy(GTK_WINDOW (window), TRUE, TRUE, FALSE);      
    gtk_window_set_title (GTK_WINDOW (window), "Libro de direcciones");
    gtk_container_border_width (GTK_CONTAINER (window), 10);    
    gtk_widget_set_uposition( window, 300, 300 );   
  
    libro=gtk_notebook_new(); 
    gtk_notebook_set_tab_pos(GTK_NOTEBOOK(libro),GTK_POS_TOP);      
    for (indice=0;indice<NUM_LETRAS;indice++) {    
        scroll = gtk_scrolled_window_new (NULL, NULL);
        gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scroll),
                                        GTK_POLICY_AUTOMATIC,GTK_POLICY_ALWAYS);
        datos[indice]=gtk_clist_new(3);
        gtk_container_add(GTK_CONTAINER(scroll), datos[indice]);
        gtk_clist_set_column_title(GTK_CLIST(datos[indice]),0,"Nombre");    
        gtk_clist_set_column_title(GTK_CLIST(datos[indice]),1,"Direccion");
        gtk_clist_set_column_title(GTK_CLIST(datos[indice]),2,"Telefono");
        gtk_clist_column_titles_show(GTK_CLIST(datos[indice]));
        gtk_clist_set_column_width(GTK_CLIST(datos[indice]),0,175);
        gtk_clist_set_column_width(GTK_CLIST(datos[indice]),1,250);
        gtk_clist_set_column_width(GTK_CLIST(datos[indice]),2,75);          
        label=gtk_label_new(letras[indice]); 
        gtk_widget_set_usize(label,10,10);
        gtk_notebook_append_page((GtkNotebook*)libro,scroll,label);     
    }  
    num=numeroDir((&datosAgenda.direcciones));    
    gtk_container_add (GTK_CONTAINER (window),libro);
    for (i=0; i<num; i++) {
        ret = consultarDir((&datosAgenda.direcciones),i,&nombre, 
                           &direccion, &telefono);        
        if (0 == ret) { 
            dir[0]=stringDup(nombre);
            dir[1]=stringDup(direccion);
            dir[2]=stringDup(telefono);

            /*
             * Buscamos en el array de letras, la inicial del nombre. 
             * Insertaremos sus datos en la lista correspondiente.
             */    
            inicial=toupper(nombre[0]);
            indice=NUM_LETRAS-1;
            while ( (letras[indice][0]!=inicial) && (0 < indice) ) {    
                indice--;
            }
            gtk_clist_append(GTK_CLIST(datos[indice]),dir);
        }
    }
    gtk_grab_add(window);
    gtk_widget_show_all(window);
}
Example #11
0
void
create_loglist(void)
{
  GtkWidget *mvb,*sw,*dhb,*dhw[30];
  GdkBitmap *mask;
  GdkPixmap *myicon;
  GtkStyle *style;
  GList *pt;
  int i;

  applet=gtk_window_new(GTK_WINDOW_TOPLEVEL);
  gtk_window_set_default_size(GTK_WINDOW(applet),780,510);
  gtk_window_set_title (GTK_WINDOW (applet), "YAWMPPP Connection Log");
  gtk_window_set_wmclass(GTK_WINDOW(applet),"yawmppp","log");
  gtk_container_set_border_width(GTK_CONTAINER(applet),4);
  gtk_widget_show (applet);

  style=gtk_widget_get_style(applet);
  myicon = gdk_pixmap_create_from_xpm_d (applet->window, &mask,
				       &style->bg[GTK_STATE_NORMAL],
				       (gchar **) stepphone_xpm);
  gdk_window_set_icon (applet->window, NULL, myicon, mask);
  gdk_window_set_icon_name(applet->window,"The Log");

  mvb=gtk_vbox_new(FALSE,0);
  gtk_container_add(GTK_CONTAINER(applet),mvb);

  dhb=gtk_hbox_new(FALSE,0);
  gtk_box_pack_start(GTK_BOX(mvb),dhb,FALSE,TRUE,0);

  /* data */
  dhw[0]=gtk_label_new("Show summary for:");
  gtk_box_pack_start(GTK_BOX(dhb),dhw[0],FALSE,FALSE,4);

  dhw[1]=gtk_option_menu_new();
  gtk_box_pack_start(GTK_BOX(dhb),dhw[1],FALSE,FALSE,2);

  dhw[2]=gtk_menu_new();

  for(i=0;i<10;i++) {
    dhw[3]=gtk_menu_item_new_with_label(resumeo[i]);
    gtk_signal_connect(GTK_OBJECT(dhw[3]),"activate",
		       GTK_SIGNAL_FUNC(time_menu),&nsrc[i]);
    gtk_menu_append(GTK_MENU(dhw[2]),dhw[3]);
    gtk_widget_show(dhw[3]);
  }

  gtk_option_menu_set_menu(GTK_OPTION_MENU(dhw[1]),dhw[2]);

  dhw[12]=gtk_label_new("include entries from");
  gtk_box_pack_start(GTK_BOX(dhb),dhw[12],FALSE,FALSE,4);
  dhw[13]=gtk_option_menu_new();
  gtk_box_pack_start(GTK_BOX(dhb),dhw[13],FALSE,FALSE,2);

  dhw[14]=gtk_menu_new();

  for(i=0,pt=isps;pt!=NULL;pt=g_list_next(pt),i++) {
    dhw[3]=gtk_menu_item_new_with_label((char *)(pt->data));
    gtk_signal_connect(GTK_OBJECT(dhw[3]),"activate",
		       GTK_SIGNAL_FUNC(isp_menu),&nsrc[i]);
    gtk_menu_append(GTK_MENU(dhw[14]),dhw[3]);
    gtk_widget_show(dhw[3]);
  }

  gtk_option_menu_set_menu(GTK_OPTION_MENU(dhw[13]),dhw[14]);


  dhw[15]=gtk_label_new("include connections as");
  gtk_box_pack_start(GTK_BOX(dhb),dhw[15],FALSE,FALSE,4);
  dhw[16]=gtk_option_menu_new();
  gtk_box_pack_start(GTK_BOX(dhb),dhw[16],FALSE,FALSE,2);

  dhw[17]=gtk_menu_new();

  for(i=0,pt=users;pt!=NULL;pt=g_list_next(pt),i++) {
    dhw[3]=gtk_menu_item_new_with_label((char *)(pt->data));
    gtk_signal_connect(GTK_OBJECT(dhw[3]),"activate",
		       GTK_SIGNAL_FUNC(user_menu),&nsrc[i]);
    gtk_menu_append(GTK_MENU(dhw[17]),dhw[3]);
    gtk_widget_show(dhw[3]);
  }

  gtk_option_menu_set_menu(GTK_OPTION_MENU(dhw[16]),dhw[17]);

  dhw[5]=gtk_hseparator_new();
  gtk_box_pack_start(GTK_BOX(mvb),dhw[5],FALSE,FALSE,3);

  dhw[3]=gtk_hbox_new(FALSE,4);
  gtk_box_pack_start(GTK_BOX(mvb),dhw[3],FALSE,TRUE,3);

  dhw[4]=lresume[0]=gtk_label_new("\n\n\n\n\n");
  dhw[6]=lresume[1]=gtk_label_new("\n\n\n\n\n");

  for(i=0;i<2;i++)
    gtk_label_set_justify(GTK_LABEL(lresume[i]),GTK_JUSTIFY_LEFT);

  gtk_box_pack_start(GTK_BOX(dhw[3]),dhw[4],FALSE,TRUE,4);
  gtk_box_pack_start(GTK_BOX(dhw[3]),dhw[6],FALSE,TRUE,4);

  hgraph=dhw[7]=gtk_drawing_area_new();
  gtk_drawing_area_size(GTK_DRAWING_AREA(dhw[7]),24*9+2,120);
  gtk_widget_set_events(dhw[7],GDK_EXPOSURE_MASK);

  gtk_box_pack_start(GTK_BOX(dhw[3]),dhw[7],FALSE,FALSE,4);

  wgraph=dhw[8]=gtk_drawing_area_new();
  gtk_drawing_area_size(GTK_DRAWING_AREA(dhw[8]),7*20+2,120);
  gtk_widget_set_events(dhw[8],GDK_EXPOSURE_MASK);

  gtk_box_pack_start(GTK_BOX(dhw[3]),dhw[8],FALSE,FALSE,4);

  dhw[11]=gtk_hseparator_new();
  gtk_box_pack_start(GTK_BOX(mvb),dhw[11],FALSE,FALSE,4);

  dhw[9]=gtk_hbox_new(FALSE,2);
  dhw[10]=gtk_label_new("Raw log listing (unfiltered):");

  gtk_box_pack_start(GTK_BOX(mvb),dhw[9],FALSE,FALSE,4);
  gtk_box_pack_start(GTK_BOX(dhw[9]),dhw[10],FALSE,FALSE,2);

  /* list */

  sw=gtk_scrolled_window_new(NULL,NULL);
  gtk_box_pack_start(GTK_BOX(mvb),sw,TRUE,TRUE,4);
  gtk_widget_show(sw);
  gtk_container_set_border_width(GTK_CONTAINER(sw),0);

  loglist=gtk_clist_new(8);
  gtk_clist_set_shadow_type(GTK_CLIST(loglist),GTK_SHADOW_IN);
  gtk_clist_set_selection_mode(GTK_CLIST(loglist),GTK_SELECTION_SINGLE);
  for(i=0;i<8;i++) {
    gtk_clist_set_column_title(GTK_CLIST(loglist),i,titles[i]);
    gtk_clist_set_column_width(GTK_CLIST(loglist),i,colsize[i]);
  }
  gtk_clist_column_titles_passive(GTK_CLIST(loglist));
  gtk_clist_column_titles_show(GTK_CLIST(loglist));
  gtk_clist_set_row_height(GTK_CLIST(loglist),16);
  gtk_clist_set_column_auto_resize(GTK_CLIST(loglist),1,FALSE);
  gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw),
				 GTK_POLICY_AUTOMATIC,
				 GTK_POLICY_ALWAYS);
  gtk_container_add(GTK_CONTAINER(sw),loglist);
  gtk_widget_show(loglist);

  /* bottom */

  dhw[18]=gtk_hseparator_new();
  gtk_box_pack_start(GTK_BOX(mvb),dhw[18],FALSE,FALSE,4);

  dhw[19]=gtk_table_new(1,6,TRUE);
  dhw[21]=gtk_button_new_with_label(" About... ");
  dhw[22]=gtk_button_new_with_label(" Close ");

  dhw[23]=gtk_hbox_new(TRUE,6);

  gtk_box_pack_start(GTK_BOX(mvb),dhw[19],FALSE,FALSE,4);

  gtk_table_attach_defaults(GTK_TABLE(dhw[19]),dhw[23],4,6,0,1);

  gtk_box_pack_start(GTK_BOX(dhw[23]),dhw[21],FALSE,TRUE,4);
  gtk_box_pack_start(GTK_BOX(dhw[23]),dhw[22],FALSE,TRUE,4);

  for(i=0;i<24;i++)
    if (i!=20)
      gtk_widget_show(dhw[i]);
  gtk_widget_show(dhb);
  gtk_widget_show(mvb);

  iconmap[0] = gdk_pixmap_create_from_xpm_d (applet->window, &maskmap[0],
					     &style->bg[GTK_STATE_NORMAL],
					     (gchar **) status_ok_xpm);
  iconmap[1] = gdk_pixmap_create_from_xpm_d (applet->window, &maskmap[1],
					     &style->bg[GTK_STATE_NORMAL],
					     (gchar **) status_error_xpm);
  iconmap[2] = gdk_pixmap_create_from_xpm_d (applet->window, &maskmap[2],
					     &style->bg[GTK_STATE_NORMAL],
					     (gchar **) status_crash_xpm);

  /* signal plumbing */
  gtk_signal_connect (GTK_OBJECT (applet), "delete_event",
		      GTK_SIGNAL_FUNC (applet_kill), NULL);
  gtk_signal_connect (GTK_OBJECT (applet), "destroy",
		      GTK_SIGNAL_FUNC (applet_destroy), NULL);
  gtk_signal_connect (GTK_OBJECT (hgraph), "expose_event",
		      GTK_SIGNAL_FUNC (hgra_expose), NULL);
  gtk_signal_connect (GTK_OBJECT (hgraph), "configure_event",
		      GTK_SIGNAL_FUNC (hgra_configure), NULL);
  gtk_signal_connect (GTK_OBJECT (wgraph), "expose_event",
		      GTK_SIGNAL_FUNC (wgra_expose), NULL);
  gtk_signal_connect (GTK_OBJECT (wgraph), "configure_event",
		      GTK_SIGNAL_FUNC (wgra_configure), NULL);

  gtk_signal_connect (GTK_OBJECT (dhw[21]), "clicked",
		      GTK_SIGNAL_FUNC (applet_about),
		      (gpointer)GTK_WINDOW(applet));
  gtk_signal_connect (GTK_OBJECT (dhw[22]), "clicked",
		      GTK_SIGNAL_FUNC (applet_destroy), NULL);
}
Example #12
0
/* functions */
GtkWidget *
gmdb_table_data_new(MdbCatalogEntry *entry)
{
MdbTableDef *table;
MdbColumn *col;
GtkWidget *clist;
GtkWidget *scroll;
int i, rownum;
long row, maxrow;
gchar *bound_data[256];
GMdbDataWindow *dataw = NULL;


	/* do we have an active window for this object? if so raise it */
	for (i=0;i<g_list_length(window_list);i++) {
		dataw = g_list_nth_data(window_list, i);
		if (!strcmp(dataw->table_name, entry->object_name)) {
			gdk_window_raise (dataw->window->window);
			return dataw->window;
		}
	}

	dataw = g_malloc(sizeof(GMdbDataWindow));
	strcpy(dataw->table_name, entry->object_name);

	dataw->window = gtk_window_new(GTK_WINDOW_TOPLEVEL);	
	gtk_window_set_title(GTK_WINDOW(dataw->window), entry->object_name);
	gtk_widget_set_usize(dataw->window, 300,200);
	gtk_widget_set_uposition(dataw->window, 50,50);
	gtk_widget_show(dataw->window);

    gtk_signal_connect (GTK_OBJECT (dataw->window), "delete_event",
        GTK_SIGNAL_FUNC (gmdb_table_data_close), dataw);


	scroll = gtk_scrolled_window_new(NULL,NULL);
	gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scroll),
		GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
	gtk_widget_show (scroll);
	gtk_container_add(GTK_CONTAINER(dataw->window), scroll);

	/* read table */
	table = mdb_read_table(entry);
	mdb_read_columns(table);
	mdb_rewind_table(table);

	clist = gtk_clist_new(table->num_cols);
	gtk_widget_show(clist);
	gtk_container_add(GTK_CONTAINER(scroll),clist);

	for (i=0;i<table->num_cols;i++) {
		/* bind columns */
		bound_data[i] = (char *) g_malloc0(MDB_BIND_SIZE);
		mdb_bind_column(table, i+1, bound_data[i], NULL);

		/* display column titles */
		col=g_ptr_array_index(table->columns,i);
		gtk_clist_set_column_title(GTK_CLIST(clist), i, col->name);
	}
	gtk_clist_column_titles_show(GTK_CLIST(clist));

	maxrow = gmdb_prefs_get_maxrows();

	/* fetch those rows! */
	row = 0;
	while(mdb_fetch_row(table) && 
			(!maxrow || (row < maxrow))) {
		row++;
		rownum = gtk_clist_append(GTK_CLIST(clist), bound_data);
	}

	/* free the memory used to bind */
	for (i=0;i<table->num_cols;i++) {
		g_free(bound_data[i]);
	}

	/* add this one to the window list */
	window_list = g_list_append(window_list, dataw);

	return dataw->window;
}