static void facq_baf_view_plot_constructed(GObject *self) { FacqBAFViewPlot *plot = FACQ_BAF_VIEW_PLOT(self); GdkColor color; GtkDataboxGraph *grid = NULL; gtk_databox_create_box_with_scrollbars_and_rulers(&plot->priv->databox, &plot->priv->table, FALSE,FALSE,TRUE,TRUE); color.red = color.green = color.blue = 0; gtk_widget_modify_bg(plot->priv->databox,GTK_STATE_NORMAL,&color); color.red = color.blue = 0; color.green = 65535; grid = gtk_databox_grid_new(7,7,&color,1); gtk_databox_graph_add(GTK_DATABOX(plot->priv->databox),grid); color.red = color.blue = 0; color.green = 32767; grid = gtk_databox_grid_new(15,15,&color,1); gtk_databox_graph_add(GTK_DATABOX(plot->priv->databox),grid); gtk_databox_set_total_limits(GTK_DATABOX(plot->priv->databox),0,10,10,-10); gtk_databox_set_enable_zoom(GTK_DATABOX(plot->priv->databox),TRUE); gtk_databox_set_enable_selection(GTK_DATABOX(plot->priv->databox),TRUE); gtk_widget_set_size_request(plot->priv->table,512,256); gtk_widget_show_all(plot->priv->table); }
static void create_colors (void) { static GtkWidget *window = NULL; GtkWidget *box1 = NULL; GtkWidget *box2 = NULL; GtkWidget *close_button = NULL; GtkWidget *box = NULL; GtkWidget *separator; GtkWidget *label; GtkWidget *menu; GtkWidget *root_menu; GtkWidget *menu_bar; gfloat *X = NULL; gfloat *Y = NULL; gint i, j; GdkColor color; GtkDataboxGraph *graph; window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_widget_set_size_request (window, 500, 300); g_signal_connect (G_OBJECT (window), "destroy", G_CALLBACK (gtk_main_quit), NULL); gtk_window_set_title (GTK_WINDOW (window), "GtkDatabox: Colors"); gtk_container_set_border_width (GTK_CONTAINER (window), 0); box1 = gtk_vbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (window), box1); box = gtk_databox_new (); gtk_databox_set_enable_selection (GTK_DATABOX (box), FALSE); gtk_databox_set_enable_zoom (GTK_DATABOX (box), FALSE); color.red = 0; color.green = 0; color.blue = 0; gtk_widget_modify_bg (box, GTK_STATE_NORMAL, &color); menu = gtk_menu_new (); root_menu = gtk_menu_item_new_with_label ("Color Menu"); gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu); menu_bar = gtk_menu_bar_new (); gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu); gtk_box_pack_start (GTK_BOX (box1), menu_bar, FALSE, TRUE, 0); label = gtk_label_new ("You can change the colors of the shown datasets via the menu.\n\n"); gtk_box_pack_start (GTK_BOX (box1), label, FALSE, FALSE, 0); separator = gtk_hseparator_new (); gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, FALSE, 0); g_signal_connect (G_OBJECT (box), "destroy", G_CALLBACK (gtk_main_quit), NULL); for (i = 0; i < NO_OF_DATASETS; i++) { if (!i) X = g_new0 (gfloat, POINTS); Y = g_new0 (gfloat, POINTS); for (j = 0; j < POINTS; j++) { X[j] = j; Y[j] = 100. * sin ((i + 1) * 2 * j * G_PI / POINTS); } color.red = 65535 * ((i + 1) % 2); color.green = (65535 / 2) * ((i + 1) % 3); color.blue = (65535 / 3) * ((i + 1) % 4); graph = gtk_databox_points_new (POINTS, X, Y, &color, 1); gtk_databox_graph_add (GTK_DATABOX (box), graph); create_menu_entry (menu, i, box, graph); } gtk_databox_auto_rescale (GTK_DATABOX (box), 0.05); gtk_box_pack_start (GTK_BOX (box1), box, TRUE, TRUE, 0); separator = gtk_hseparator_new (); gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, TRUE, 0); box2 = gtk_vbox_new (FALSE, 10); gtk_container_set_border_width (GTK_CONTAINER (box2), 10); gtk_box_pack_end (GTK_BOX (box1), box2, FALSE, TRUE, 0); close_button = gtk_button_new_with_label ("close"); g_signal_connect (G_OBJECT (close_button), "clicked", G_CALLBACK (gtk_main_quit), (gpointer) NULL); gtk_box_pack_start (GTK_BOX (box2), close_button, TRUE, TRUE, 0); GTK_WIDGET_SET_FLAGS (close_button, GTK_CAN_DEFAULT); gtk_widget_grab_default (close_button); gtk_widget_show_all (window); }