GtkWidget * AddHButtonBox( GtkWidget * parent ) { GtkWidget * hbuttonbox; hbuttonbox=gtk_hbutton_box_new(); gtk_widget_set_name( hbuttonbox,"hbuttonbox" ); gtk_widget_show( hbuttonbox ); gtk_box_pack_start( GTK_BOX( parent ),hbuttonbox,FALSE,FALSE,0 ); gtk_button_box_set_child_size( GTK_BUTTON_BOX( hbuttonbox ),85,20 ); return hbuttonbox; }
void preference_dlg(void) { GtkWidget *button; GtkWidget *bbox; GtkWidget *frame; prefer_dialog = gtk_dialog_new(); gtk_window_set_modal(GTK_WINDOW(prefer_dialog), TRUE); GTK_WINDOW(prefer_dialog)->type = GTK_WINDOW_DIALOG; gtk_window_set_title(GTK_WINDOW(prefer_dialog), _("Preference")); gtk_window_set_policy(GTK_WINDOW(prefer_dialog), FALSE, FALSE, TRUE); gtk_container_set_border_width(GTK_CONTAINER(prefer_dialog), 10); gtk_window_position(GTK_WINDOW(prefer_dialog), GTK_WIN_POS_MOUSE); gtk_widget_show(prefer_dialog); frame = gtk_frame_new(_("Not implemented!!")); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(prefer_dialog)->vbox), frame , TRUE, TRUE, 2); gtk_widget_show(frame); bbox = gtk_hbutton_box_new(); gtk_container_set_border_width(GTK_CONTAINER(bbox), 0); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(prefer_dialog)->action_area), bbox, TRUE, TRUE, 2); gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_END); gtk_button_box_set_spacing(GTK_BUTTON_BOX(bbox), 10); gtk_button_box_set_child_size(GTK_BUTTON_BOX(bbox), 85, 20); gtk_widget_show(bbox); button = gtk_button_new_with_label(_("OK")); gtk_container_add(GTK_CONTAINER(bbox),button); gtk_signal_connect_object(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(gtk_widget_destroy), GTK_OBJECT(prefer_dialog)); gtk_widget_show(button); GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); gtk_widget_grab_default(button); button = gtk_button_new_with_label(_("Apply")); gtk_container_add(GTK_CONTAINER(bbox),button); gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(prefer_dlg_apply), NULL); gtk_widget_show(button); button = gtk_button_new_with_label(_("Close")); gtk_container_add(GTK_CONTAINER(bbox),button); gtk_signal_connect_object(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(gtk_widget_destroy), GTK_OBJECT(prefer_dialog)); gtk_widget_show(button); return; }
/* Sets a new default size for the children of a given button box. */ int clip_GTK_BUTTONBOXSETCHILDSIZE(ClipMachine * ClipMachineMemory) { C_widget *cbbox = _fetch_cw_arg(ClipMachineMemory); gint min_width = _clip_parni(ClipMachineMemory, 2); gint min_height = _clip_parni(ClipMachineMemory, 3); CHECKCWID(cbbox, GTK_IS_BUTTON_BOX); CHECKOPT(2, NUMERIC_type_of_ClipVarType); CHECKOPT(3, NUMERIC_type_of_ClipVarType); gtk_button_box_set_child_size(GTK_BUTTON_BOX(cbbox->widget), min_width, min_height); return 0; err: return 1; }
GtkWidget *createbbox(GtkWidget *bbox) { GtkWidget *ice, *clame, *addch, *help, *vumeters; ice = clame = addch = help = vumeters = NULL; bbox=gtk_hbutton_box_new(); gtk_button_box_set_child_size(GTK_BUTTON_BOX(bbox), 7, 10); gtk_hbutton_box_set_spacing_default(0); gtk_hbutton_box_set_layout_default(GTK_BUTTONBOX_START); ice = createpixmap(window, ice, stream_xpm, _("Let's stream!"), FALSE); g_signal_connect(G_OBJECT(ice), "clicked", G_CALLBACK(ice_window), NULL); gtk_container_add(GTK_CONTAINER(bbox), ice); addch = createpixmap(window, addch, newch_xpm, _("Add Channel"), FALSE); g_signal_connect_swapped(G_OBJECT(addch), "clicked", G_CALLBACK(createch), NULL); gtk_container_add(GTK_CONTAINER(bbox), addch); /* il talk sarebbe da mettere solo come hotkey mic = createpixmap(window, mic, stock_mic_xpm, _("Talk"), TRUE); g_signal_connect(G_OBJECT(mic), "clicked", G_CALLBACK(gcb_set_talk), NULL); gtk_container_add(GTK_CONTAINER(bbox), mic); */ linein = createpixmap(window, linein, mic_xpm, _("Line In"), TRUE); g_signal_connect(G_OBJECT(linein), "clicked", G_CALLBACK(gcb_set_linein), NULL); gtk_container_add(GTK_CONTAINER(bbox), linein); speakout = createpixmap(window, speakout, speaker_xpm, _("Speaker"), TRUE); g_signal_connect(G_OBJECT(speakout), "clicked", G_CALLBACK(gcb_set_speakout), NULL); gtk_container_add(GTK_CONTAINER(bbox), speakout); vumeters = createpixmap(window, vumeters, vu_xpm, _("Vumeters"), FALSE); g_signal_connect(G_OBJECT(vumeters), "clicked", G_CALLBACK(vumeters_new), NULL); gtk_container_add(GTK_CONTAINER(bbox), vumeters); #ifdef MUSE_EXPERIMENTAL tmpwid = gtk_image_new_from_stock(GTK_STOCK_INDEX, GTK_ICON_SIZE_BUTTON); scheduler = gtk_button_new(); gtk_container_add(GTK_CONTAINER(scheduler), tmpwid); set_tip(scheduler, "Radio Scheduler"); g_signal_connect(G_OBJECT(scheduler), "clicked", G_CALLBACK(rsched_new), NULL); gtk_container_add(GTK_CONTAINER(bbox), scheduler); #endif help = createpixmap(window, help, about_xpm, _("Hall of Fame"), FALSE); g_signal_connect(G_OBJECT(help), "clicked", G_CALLBACK(about_win), NULL); gtk_container_add(GTK_CONTAINER(bbox), help); return bbox; }
/* * Sets the properties of the widget. This is used for both applying the * properties changed in the property editor, and also for loading. */ static void gb_vbutton_box_set_properties (GtkWidget * widget, GbWidgetSetArgData * data) { gint size, i, spacing, min_width, min_height, ipad_x, ipad_y; gchar *layout; gboolean set_child_size = FALSE, set_child_padding = FALSE; gboolean queue_resize = FALSE; size = gb_widget_input_int (data, Size); if (data->apply) gb_box_set_size (widget, size); layout = gb_widget_input_choice (data, Layout); if (data->apply) { for (i = 0; i < sizeof (GbLayoutValues) / sizeof (GbLayoutValues[0]); i ++) { if (!strcmp (layout, GbLayoutChoices[i]) || !strcmp (layout, GbLayoutSymbols[i])) { gtk_button_box_set_layout (GTK_BUTTON_BOX (widget), GbLayoutValues [i]); queue_resize = TRUE; break; } } } spacing = gb_widget_input_int (data, Spacing); if (data->apply) { gtk_button_box_set_spacing (GTK_BUTTON_BOX (widget), spacing); queue_resize = TRUE; } min_width = gb_widget_input_int (data, Width); if (data->apply) set_child_size = TRUE; else min_width = GTK_BUTTON_BOX (widget)->child_min_width; min_height = gb_widget_input_int (data, Height); if (data->apply) set_child_size = TRUE; else min_height = GTK_BUTTON_BOX (widget)->child_min_height; if (set_child_size) { gtk_button_box_set_child_size (GTK_BUTTON_BOX (widget), min_width, min_height); queue_resize = TRUE; } ipad_x = gb_widget_input_int (data, XPad); if (data->apply) set_child_padding = TRUE; else ipad_x = GTK_BUTTON_BOX (widget)->child_ipad_x; ipad_y = gb_widget_input_int (data, YPad); if (data->apply) set_child_padding = TRUE; else ipad_y = GTK_BUTTON_BOX (widget)->child_ipad_y; if (set_child_padding) { gtk_button_box_set_child_ipadding (GTK_BUTTON_BOX (widget), ipad_x, ipad_y); queue_resize = TRUE; } if (queue_resize) gtk_widget_queue_resize (widget); }
void create_plugins_gui(Sven *sven,GtkWidget *vbox1) { GtkTreeViewColumn *column; GtkCellRenderer *cell; GtkWidget *scrolled_win; GtkWidget *hbbox; GtkWidget *hbox; GtkWidget *frame; GtkWidget *alignment; GtkWidget *label; DEBUG_MSG("Start create_plugins_gui\n"); gtk_box_pack_start (GTK_BOX (vbox1), create_header(_("Plugins")), FALSE, FALSE, 0); plugins_model = gtk_tree_store_new (3,G_TYPE_BOOLEAN,G_TYPE_STRING,G_TYPE_STRING); plugins_tree_view = gtk_tree_view_new_with_model (GTK_TREE_MODEL (plugins_model)); gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (plugins_tree_view), TRUE); plugins_selection = G_OBJECT (gtk_tree_view_get_selection (GTK_TREE_VIEW (plugins_tree_view))); gtk_tree_selection_set_mode (GTK_TREE_SELECTION (plugins_selection), GTK_SELECTION_SINGLE); g_signal_connect (G_OBJECT (plugins_selection),"changed",G_CALLBACK (prefs_plugins_list_clicked),sven); g_signal_connect(G_OBJECT(plugins_tree_view), "button-press-event",G_CALLBACK(plugin_list_event_mouseclick), sven); scrolled_win = gtk_scrolled_window_new(NULL, NULL); gtk_container_add(GTK_CONTAINER(scrolled_win), plugins_tree_view); gtk_container_border_width(GTK_CONTAINER(scrolled_win), 5); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled_win), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); gtk_box_pack_start(GTK_BOX(vbox1), scrolled_win, TRUE, TRUE, 0); frame = gtk_frame_new (NULL); gtk_widget_show (frame); gtk_box_pack_start(GTK_BOX(vbox1), frame, TRUE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame), 2); gtk_frame_set_label_align (GTK_FRAME (frame), 0.05, 0.5); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_OUT); label = gtk_label_new (_("Description")); gtk_widget_show (label); gtk_frame_set_label_widget (GTK_FRAME (frame), label); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); alignment = gtk_alignment_new (0.5, 0.5, 1, 1); gtk_widget_show (alignment); gtk_container_add (GTK_CONTAINER (frame), alignment); gtk_container_set_border_width (GTK_CONTAINER (alignment), 2); gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 5, 5, 5, 5); infotext = gtk_label_new (_("Not information")); gtk_widget_show (infotext); gtk_container_add (GTK_CONTAINER (alignment), infotext); GTK_WIDGET_SET_FLAGS (infotext, GTK_CAN_FOCUS); gtk_label_set_line_wrap (GTK_LABEL (infotext), TRUE); gtk_label_set_selectable (GTK_LABEL (infotext), TRUE); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox1), hbox, FALSE, FALSE, 5); hbbox = gtk_hbutton_box_new(); gtk_button_box_set_layout(GTK_BUTTON_BOX(hbbox), GTK_BUTTONBOX_START); gtk_button_box_set_spacing(GTK_BUTTON_BOX(hbbox), 10); gtk_button_box_set_child_size(GTK_BUTTON_BOX(hbbox), 85, 17); gtk_box_pack_start(GTK_BOX(hbox), hbbox, TRUE, TRUE, 0); prefs_plugins_config_wid = gtk_button_new_with_label(_("Configure")); g_signal_connect(G_OBJECT(prefs_plugins_config_wid ), "clicked", G_CALLBACK(prefs_plugins_configure),sven); gtk_box_pack_start(GTK_BOX(hbbox), prefs_plugins_config_wid, TRUE, TRUE, 0); prefs_plugins_about_wid = gtk_button_new_with_label(_("About")); g_signal_connect(G_OBJECT(prefs_plugins_about_wid), "clicked", G_CALLBACK(prefs_plugins_about), sven); gtk_box_pack_start(GTK_BOX(hbbox), prefs_plugins_about_wid, TRUE, TRUE, 0); cell = gtk_cell_renderer_toggle_new (); column = gtk_tree_view_column_new_with_attributes (_("Status"), cell, "active",0, NULL); gtk_tree_view_column_set_clickable (column, TRUE); g_signal_connect (G_OBJECT (cell), "toggled",G_CALLBACK (plugin_fixed_toggled),sven); gtk_tree_view_column_set_resizable (column, TRUE); gtk_tree_view_append_column (GTK_TREE_VIEW (plugins_tree_view), column); cell = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes (_("Name"), cell, "markup", 1, NULL); gtk_tree_view_column_set_sort_column_id (column, 0); gtk_tree_view_column_set_resizable (column, TRUE); gtk_tree_view_append_column (GTK_TREE_VIEW (plugins_tree_view), column); cell = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes (_("Module"), cell, "markup",2, NULL); gtk_tree_view_column_set_sort_column_id (column, 1); gtk_tree_view_column_set_resizable (column, TRUE); gtk_tree_view_append_column (GTK_TREE_VIEW (plugins_tree_view), column); gtk_widget_show(plugins_tree_view); add_print_plugins(GTK_TREE_VIEW (plugins_tree_view),sven); }