static void math_converter_init(MathConverter *converter) { GtkWidget *hbox, *label, *swap_button; GtkCellRenderer *renderer; converter->priv = G_TYPE_INSTANCE_GET_PRIVATE(converter, math_converter_get_type(), MathConverterPrivate); gtk_box_set_spacing(GTK_BOX(converter), 6); hbox = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox); gtk_box_pack_start(GTK_BOX(converter), hbox, FALSE, TRUE, 0); converter->priv->from_combo = gtk_combo_box_new (); renderer = gtk_cell_renderer_text_new(); gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(converter->priv->from_combo), renderer, TRUE); gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(converter->priv->from_combo), renderer, "text", 0); gtk_cell_layout_set_cell_data_func(GTK_CELL_LAYOUT(converter->priv->from_combo), renderer, from_cell_data_func, NULL, NULL); g_signal_connect(converter->priv->from_combo, "changed", G_CALLBACK(from_combobox_changed_cb), converter); gtk_widget_show(converter->priv->from_combo); gtk_box_pack_start(GTK_BOX(hbox), converter->priv->from_combo, FALSE, TRUE, 0); label = gtk_label_new(/* Label that is displayed between the two conversion combo boxes, e.g. "[degrees] in [radians]" */ _(" in ")); gtk_widget_show(label); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, TRUE, 5); converter->priv->to_combo = gtk_combo_box_new(); renderer = gtk_cell_renderer_text_new(); gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(converter->priv->to_combo), renderer, TRUE); gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(converter->priv->to_combo), renderer, "text", 0); g_signal_connect(converter->priv->to_combo, "changed", G_CALLBACK(to_combobox_changed_cb), converter); gtk_widget_show(converter->priv->to_combo); gtk_box_pack_start(GTK_BOX(hbox), converter->priv->to_combo, FALSE, TRUE, 0); swap_button = gtk_button_new_with_label ("⇆"); gtk_widget_set_tooltip_text (swap_button, /* Tooltip for swap conversion button */ _("Switch conversion units")); gtk_button_set_relief (GTK_BUTTON (swap_button), GTK_RELIEF_NONE); g_signal_connect (swap_button, "clicked", G_CALLBACK (swap_button_clicked_cb), converter); gtk_widget_show(swap_button); gtk_box_pack_start(GTK_BOX(hbox), swap_button, FALSE, TRUE, 0); converter->priv->result_label = gtk_label_new(""); gtk_misc_set_alignment(GTK_MISC(converter->priv->result_label), 1.0, 0.5); gtk_widget_set_sensitive(converter->priv->result_label, FALSE); gtk_widget_show(converter->priv->result_label); gtk_box_pack_start(GTK_BOX(converter), converter->priv->result_label, TRUE, TRUE, 0); g_signal_connect(currency_manager_get_default(), "updated", G_CALLBACK(currency_updated_cb), converter); }
static GtkWidget * create_enum_editor (RBObjectPropertyEditor *editor, const char *property, GParamSpec *pspec) { GParamSpecEnum *penum; GtkListStore *model; GtkCellRenderer *renderer; GtkWidget *control; int p; control = gtk_combo_box_new (); penum = G_PARAM_SPEC_ENUM (pspec); renderer = gtk_cell_renderer_text_new (); model = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_INT); gtk_combo_box_set_model (GTK_COMBO_BOX (control), GTK_TREE_MODEL (model)); for (p = 0; p < penum->enum_class->n_values; p++) { gtk_list_store_insert_with_values (model, NULL, p, 0, penum->enum_class->values[p].value_name, 1, p, -1); } gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (control), renderer, TRUE); gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (control), renderer, "text", 0, NULL); g_object_bind_property (editor->priv->object, property, control, "active", G_BINDING_SYNC_CREATE | G_BINDING_BIDIRECTIONAL); return control; }
void ags_link_editor_init(AgsLinkEditor *link_editor) { GtkCellRenderer *cell_renderer; g_signal_connect_after((GObject *) link_editor, "parent_set\0", G_CALLBACK(ags_link_editor_parent_set_callback), (gpointer) link_editor); link_editor->flags = 0; /* linking machine */ link_editor->combo = (GtkComboBox *) gtk_combo_box_new(); gtk_box_pack_start(GTK_BOX(link_editor), GTK_WIDGET(link_editor->combo), FALSE, FALSE, 0); cell_renderer = gtk_cell_renderer_text_new(); gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(link_editor->combo), cell_renderer, FALSE); gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(link_editor->combo), cell_renderer, "text\0", 0, NULL); /* link with line */ link_editor->spin_button = (GtkSpinButton *) gtk_spin_button_new_with_range(0.0, 0.0, 1.0); gtk_box_pack_start(GTK_BOX(link_editor), GTK_WIDGET(link_editor->spin_button), FALSE, FALSE, 0); link_editor->audio_file = NULL; link_editor->file_chooser = NULL; }
static GtkWidget *create_speaker_page(){ GtkWidget *vbox=gtk_table_new(3,2,FALSE); LinphoneCore *lc=linphone_gtk_get_core(); GtkWidget *labelSpeakerChoice=gtk_label_new(_("Playback device")); GtkWidget *labelSpeakerLevel=gtk_label_new(_("Play three beeps")); GtkWidget *spk_button=gtk_button_new_from_stock(GTK_STOCK_MEDIA_PLAY); GtkWidget *playback_device=gtk_combo_box_new(); GtkWidget *mixer_button=gtk_button_new_with_label("System sound preferences"); GtkWidget *image; image=gtk_image_new_from_stock(GTK_STOCK_PREFERENCES,GTK_ICON_SIZE_MENU); gtk_button_set_image(GTK_BUTTON(mixer_button),image); gtk_table_attach_defaults(GTK_TABLE(vbox), labelSpeakerChoice, 0, 1, 0, 1); gtk_table_attach(GTK_TABLE(vbox), playback_device, 1, 2, 0, 1, GTK_SHRINK, GTK_SHRINK, 0,0); gtk_table_attach_defaults(GTK_TABLE(vbox), labelSpeakerLevel, 0, 1, 1, 2); gtk_table_attach(GTK_TABLE(vbox), spk_button, 1, 2, 1, 2, GTK_SHRINK, GTK_SHRINK, 0,0); gtk_table_attach(GTK_TABLE(vbox), mixer_button, 0, 2, 2, 3, GTK_SHRINK, GTK_SHRINK, 0,0); gtk_table_set_row_spacings(GTK_TABLE(vbox),10); const char **sound_devices=linphone_core_get_sound_devices(lc); linphone_gtk_fill_combo_box(playback_device, sound_devices, linphone_core_get_playback_device(lc),CAP_PLAYBACK); gtk_widget_show_all(vbox); set_widget_to_assistant("speaker_page",vbox); g_signal_connect(G_OBJECT(playback_device),"changed",(GCallback)playback_device_changed,playback_device); g_signal_connect(G_OBJECT(spk_button),"clicked",(GCallback)linphone_gtk_start_sound,vbox); g_signal_connect(G_OBJECT(mixer_button),"clicked",(GCallback)open_mixer,vbox); return vbox; }
static GtkWidget * create_effects_combo (void) { GtkWidget *retval; GtkListStore *model; GtkCellRenderer *renderer; gint i; model = gtk_list_store_new (N_COLUMNS, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_UINT); for (i = 0; i < n_effects; i++) { GtkTreeIter iter; gtk_list_store_insert (model, &iter, i); gtk_list_store_set (model, &iter, COLUMN_ID, effects[i].id, COLUMN_LABEL, gettext (effects[i].label), COLUMN_NICK, effects[i].nick, -1); } retval = gtk_combo_box_new (); gtk_combo_box_set_model (GTK_COMBO_BOX (retval), GTK_TREE_MODEL (model)); g_object_unref (model); switch (border_effect[0]) { case 's': /* shadow */ gtk_combo_box_set_active (GTK_COMBO_BOX (retval), SCREENSHOT_EFFECT_SHADOW); break; case 'b': /* border */ gtk_combo_box_set_active (GTK_COMBO_BOX (retval), SCREENSHOT_EFFECT_BORDER); break; case 'n': /* none */ gtk_combo_box_set_active (GTK_COMBO_BOX (retval), SCREENSHOT_EFFECT_NONE); break; default: break; } renderer = gtk_cell_renderer_text_new (); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (retval), renderer, TRUE); gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (retval), renderer, "text", COLUMN_LABEL, NULL); g_signal_connect (retval, "changed", G_CALLBACK (effect_combo_changed_cb), NULL); return retval; }
/** * create a combobox containing the list of the accounts * * \param func Function to call when a line is selected (type : gboolean func ( GtkWidget *button, gpointer data ) * \param data data to send to the function * \param include_closed If set to TRUE, include the closed accounts * * \return a new GtkCombobox containing the list of the accounts */ GtkWidget *gsb_account_create_combo_list ( GCallback func, gpointer data, gboolean include_closed ) { GSList *list_tmp; GtkListStore *store; GtkCellRenderer *renderer; GtkWidget *combobox; combobox = gtk_combo_box_new (); store = gtk_list_store_new ( 2, G_TYPE_STRING, G_TYPE_INT ); list_tmp = gsb_data_account_get_list_accounts (); while ( list_tmp ) { gint account_number; GtkTreeIter iter; account_number = gsb_data_account_get_no_account ( list_tmp -> data ); if ( account_number >= 0 && ( !gsb_data_account_get_closed_account (account_number) || include_closed ) ) { gtk_list_store_append ( GTK_LIST_STORE (store), &iter ); gtk_list_store_set ( store, &iter, 0, gsb_data_account_get_name (account_number), 1, account_number, -1 ); } list_tmp = list_tmp -> next; } gtk_combo_box_set_model ( GTK_COMBO_BOX (combobox), GTK_TREE_MODEL (store)); /* by default, this is blank, so set the first */ gtk_combo_box_set_active ( GTK_COMBO_BOX (combobox), 0 ); if ( func ) g_signal_connect ( G_OBJECT (combobox), "changed", G_CALLBACK(func), data ); renderer = gtk_cell_renderer_text_new (); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combobox), renderer, TRUE); gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combobox), renderer, "text", 0, NULL); return combobox; }
GtkWidget* RenderThemeGtk::gtkComboBox() const { if (m_gtkComboBox) return m_gtkComboBox; m_gtkComboBox = gtk_combo_box_new(); setupWidgetAndAddToContainer(m_gtkComboBox, gtkContainer()); return m_gtkComboBox; }
/* * Class: org_java_gtk_gtk_ComboBox * Method: gtk_combo_box_new * Signature: ()J */ JNIEXPORT jlong JNICALL Java_org_java_1gtk_gtk_ComboBox_gtk_1combo_1box_1new (JNIEnv *env, jclass cls) { GtkWidget* widget; widget = gtk_combo_box_new(); return (jlong)widget; }
static void cc_wacom_mapping_panel_init (CcWacomMappingPanel *self) { CcWacomMappingPanelPrivate *priv; GtkWidget *vbox, *grid; GtkCellRenderer *renderer; priv = self->priv = WACOM_MAPPING_PANEL_PRIVATE (self); vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 8); gtk_container_add (GTK_CONTAINER (self), vbox); gtk_container_set_border_width (GTK_CONTAINER (self), 12); gtk_widget_set_vexpand (GTK_WIDGET (vbox), TRUE); gtk_widget_set_hexpand (GTK_WIDGET (vbox), TRUE); /* Output Combobox */ grid = gtk_grid_new(); gtk_grid_set_row_spacing (GTK_GRID (grid), 10); gtk_grid_set_column_spacing (GTK_GRID (grid), 10); priv->label = gtk_label_new (_("Output:")); gtk_widget_set_halign (priv->label, GTK_ALIGN_END); priv->combobox = gtk_combo_box_new (); g_signal_connect (G_OBJECT (priv->combobox), "changed", G_CALLBACK (combobox_changed_cb), self); renderer = gtk_cell_renderer_text_new (); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT(priv->combobox), renderer, TRUE); gtk_cell_layout_add_attribute (GTK_CELL_LAYOUT(priv->combobox), renderer, "text", 0); gtk_grid_attach (GTK_GRID(grid), GTK_WIDGET(priv->label), 0, 0, 1, 1); gtk_grid_attach (GTK_GRID(grid), GTK_WIDGET(priv->combobox), 1, 0, 1, 1); /* Keep ratio switch */ priv->aspectlabel = gtk_label_new (_("Keep aspect ratio (letterbox):")); gtk_widget_set_halign (priv->aspectlabel, GTK_ALIGN_END); priv->aspectswitch = gtk_switch_new (); gtk_widget_set_halign (priv->aspectswitch, GTK_ALIGN_START); gtk_switch_set_active (GTK_SWITCH (priv->aspectswitch), FALSE); g_signal_connect (GTK_SWITCH (priv->aspectswitch), "notify::active", G_CALLBACK (aspectswitch_toggled_cb), self); gtk_grid_attach (GTK_GRID(grid), GTK_WIDGET(priv->aspectlabel), 0, 1, 1, 1); gtk_grid_attach (GTK_GRID(grid), GTK_WIDGET(priv->aspectswitch), 1, 1, 1, 1); /* Whole-desktop checkbox */ priv->checkbutton = gtk_check_button_new_with_label (_("Map to single monitor")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (priv->checkbutton), FALSE); g_signal_connect (G_OBJECT (priv->checkbutton), "toggled", G_CALLBACK (checkbutton_toggled_cb), self); gtk_box_pack_start (GTK_BOX(vbox), GTK_WIDGET(priv->checkbutton), FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX(vbox), GTK_WIDGET(grid), FALSE, FALSE, 8); /* Update display */ cc_wacom_mapping_panel_set_device (self, NULL); gtk_widget_show_all(GTK_WIDGET(self)); }
gboolean moab_setup_ui(gchar ** char_account, GebrServer * server, gboolean parallel_program) { gboolean ret; GtkWidget * box; GtkWidget * hbox; GtkWidget * dialog; GtkWidget * label; GtkWidget * cb_account; GtkCellRenderer * cell; GtkTreeIter iter; ret = TRUE; dialog = gtk_dialog_new_with_buttons(_("Moab execution parameters"), GTK_WINDOW(gebr.window), (GtkDialogFlags)(GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT), GTK_STOCK_EXECUTE, GTK_RESPONSE_ACCEPT, GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT, NULL); box = GTK_DIALOG(dialog)->vbox; cb_account = gtk_combo_box_new(); cell = gtk_cell_renderer_text_new(); gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(cb_account), cell, TRUE); gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(cb_account), cell, "text", 0); hbox = gtk_hbox_new(FALSE, 5); label = gtk_label_new(_("Account")); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, TRUE, 0); gtk_box_pack_start(GTK_BOX(hbox), cb_account, TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, TRUE, 0); if (parallel_program) { /* We should be able to ask for the number of processes (np) to run the parallel program(s). */ GtkWidget *hbox_np = gtk_hbox_new(FALSE, 5); GtkWidget *label_np = gtk_label_new(_("Number of processes")); GtkWidget *entry_np = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(hbox_np), label_np, TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX(hbox_np), entry_np, TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX(box), hbox_np, TRUE, TRUE, 0); } gtk_combo_box_set_model(GTK_COMBO_BOX(cb_account), GTK_TREE_MODEL(server->accounts_model)); gtk_combo_box_set_active(GTK_COMBO_BOX(cb_account), 0); gtk_widget_show_all(dialog); if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_ACCEPT) { ret = FALSE; goto out; } gtk_combo_box_get_active_iter(GTK_COMBO_BOX(cb_account), &iter); gtk_tree_model_get(GTK_TREE_MODEL(server->accounts_model), &iter, 0, char_account, -1); out: gtk_widget_destroy(dialog); return ret; }
/** * create a text only combo_box with an index * column 0 will contain the text * column 1 will have the index * * the function takes a g_slist of text and number to attribute * this list must be as : text_1 -> number_1 -> text_2 -> number_2 -> ... * * \param list a g_slist containing succession of text and number to associate to the text * \param func an optional function to call when change the current item (gboolean func (GtkWidget *combox, gpointer data) * \param data the data to send to the func * * \return a combo box widget * */ GtkWidget *gsb_combo_box_new_with_index_by_list ( GSList *list, GCallback func, gpointer data ) { GSList *tmp_list; GtkWidget *combo_box; GtkListStore *store; GtkCellRenderer *renderer; combo_box = gtk_combo_box_new (); store = gtk_list_store_new ( 2, G_TYPE_STRING, G_TYPE_INT ); tmp_list = list; if (tmp_list) { while (tmp_list) { GtkTreeIter iter; gchar *string; string = tmp_list -> data; tmp_list = tmp_list -> next; /* should not append */ if (!tmp_list) break; gtk_list_store_append ( GTK_LIST_STORE (store), &iter ); gtk_list_store_set ( store, &iter, 0, string, 1, GPOINTER_TO_INT (tmp_list -> data), -1 ); tmp_list = tmp_list -> next; } } gtk_combo_box_set_model ( GTK_COMBO_BOX (combo_box), GTK_TREE_MODEL (store)); if ( func ) g_signal_connect ( G_OBJECT (combo_box), "changed", G_CALLBACK(func), data ); renderer = gtk_cell_renderer_text_new (); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combo_box), renderer, TRUE); gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combo_box), renderer, "text", 0, NULL); return combo_box; }
static void add_clicked (GtkButton *button, ChamplainView *view) { GtkWidget *window, *dialog, *vbox, *combo; GtkResponseType response; window = g_object_get_data (G_OBJECT (view), "window"); dialog = gtk_dialog_new_with_buttons ("Add secondary map source", GTK_WINDOW (window), GTK_DIALOG_MODAL, "Add", GTK_RESPONSE_OK, "Cancel", GTK_RESPONSE_CANCEL, NULL); combo = gtk_combo_box_new (); build_combo_box (GTK_COMBO_BOX (combo)); gtk_combo_box_set_active (GTK_COMBO_BOX (combo), 0); vbox = gtk_dialog_get_content_area (GTK_DIALOG (dialog)); gtk_container_add (GTK_CONTAINER (vbox), combo); gtk_widget_show_all (dialog); response = gtk_dialog_run (GTK_DIALOG (dialog)); if (response == GTK_RESPONSE_OK) { GtkTreeModel *model; GtkTreeIter iter; ChamplainMapSource *source; ChamplainMapSourceFactory *factory; char *id; if (!gtk_combo_box_get_active_iter (GTK_COMBO_BOX (combo), &iter)) return; model = gtk_combo_box_get_model (GTK_COMBO_BOX (combo)); gtk_tree_model_get (model, &iter, COL_ID, &id, -1); factory = champlain_map_source_factory_dup_default (); source = champlain_map_source_factory_create_memcached_source (factory, id); champlain_view_add_overlay_source (view, source, 0.6 * 255); g_object_unref (factory); g_free (id); } gtk_widget_destroy (dialog); }
void layout_engine_list(GtkWidget * vbox) { GtkWidget * hbox; EngineCombo = gtk_combo_box_new(); hbox = gtk_hbox_new(FALSE,2); gtk_box_pack_startC(vbox,hbox,FALSE,FALSE,0); gtk_box_pack_startC(hbox,gtk_label_new(_("Select\nEngine")),FALSE,FALSE,0); gtk_box_pack_startC(hbox,EngineCombo,FALSE,FALSE,0); gtk_box_pack_startC(vbox,gtk_hseparator_new(),FALSE,FALSE,0); EngineContainer = gtk_alignment_new(0,0,1,1); // really only needed for the bin-ness gtk_box_pack_startC(vbox,EngineContainer,TRUE,TRUE,0); }
/** * revoie un combo_box avec une GtkListStore et la colonne 0 en texte * \param le tableau de chaines à mettre dans le modèle * * \return un GtkComboBox. */ GtkWidget *utils_combo_box_make_from_string_array ( gchar **array ) { GtkWidget *combo; GtkTreeModel *model; combo = gtk_combo_box_new ( ); model = GTK_TREE_MODEL ( utils_list_store_create_from_string_array ( array ) ); gtk_combo_box_set_model ( GTK_COMBO_BOX ( combo ), model ); utils_gtk_combo_box_set_text_renderer ( GTK_COMBO_BOX ( combo ), 0 ); gtk_combo_box_set_active ( GTK_COMBO_BOX ( combo ), 0 ); return combo; }
/* test that we have a cell area after new() */ static void test_combobox_new (void) { GtkWidget *view; GtkCellArea *area; view = gtk_combo_box_new (); area = gtk_cell_layout_get_area (GTK_CELL_LAYOUT (view)); g_assert (GTK_IS_CELL_AREA_BOX (area)); g_object_ref_sink (view); g_object_unref (view); }
static void enum_pref_create_widget (GOConfNode *node, GtkWidget *grid, gint row, GType enum_type, enum_conf_setter_t setter, enum_conf_getter_t getter, gchar const *default_label, char const *(*label_getter)(int)) { unsigned int i; GtkTreeIter iter; GtkCellRenderer *renderer; GEnumClass *enum_class = G_ENUM_CLASS (g_type_class_ref (enum_type)); GtkWidget *combo = gtk_combo_box_new (); GtkListStore *model = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_POINTER); gint current = getter (); gint current_index = -1; for (i = 0; i < enum_class->n_values ; i++) { gtk_list_store_append (model, &iter); gtk_list_store_set (model, &iter, 0, label_getter ((int) enum_class->values[i].value), 1, enum_class->values + i, -1); if (enum_class->values[i].value == current) current_index = i; } g_type_class_unref (enum_class); gtk_combo_box_set_model (GTK_COMBO_BOX (combo), GTK_TREE_MODEL (model)); g_object_unref (model); renderer = gtk_cell_renderer_text_new (); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combo), renderer, TRUE); gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combo), renderer, "text", 0, NULL); gtk_combo_box_set_active (GTK_COMBO_BOX (combo), current_index); gtk_grid_attach (GTK_GRID (grid), combo, 1, row, 1, 1); g_signal_connect (G_OBJECT (combo), "changed", G_CALLBACK (cb_enum_changed), (gpointer) setter); connect_notification (node, (GOConfMonitorFunc)enum_pref_conf_to_widget, combo, grid); pref_create_label (node, grid, row, default_label, combo); set_tip (node, combo); }
/** * create a text only combo_box with an index * column 0 will contain the text * column 1 will have the index, in the order of the strings * * this function takes an array of string and attribute a number beginning by the first element of the array * to link some text with a special number, use gsb_combo_box_new_with_index_by_list * * \param string a pointer to an array of strings terminated by NULL, string will be appended in that order * \param func an optional function to call when change the current item (gboolean func (GtkWidget *combox, gpointer data) * \param data the data to send to the func * * \return a combo box widget * */ GtkWidget *gsb_combo_box_new_with_index ( gchar **string, GCallback func, gpointer data ) { GtkWidget *combo_box; GtkListStore *store; GtkCellRenderer *renderer; gint i = 0; combo_box = gtk_combo_box_new (); store = gtk_list_store_new ( 2, G_TYPE_STRING, G_TYPE_INT ); if (string) { while (string[i]) { GtkTreeIter iter; gtk_list_store_append ( GTK_LIST_STORE (store), &iter ); gtk_list_store_set ( store, &iter, 0, string[i], 1, i, -1 ); i++; } } gtk_combo_box_set_model ( GTK_COMBO_BOX (combo_box), GTK_TREE_MODEL (store)); if ( func ) g_signal_connect ( G_OBJECT (combo_box), "changed", G_CALLBACK(func), data ); renderer = gtk_cell_renderer_text_new (); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combo_box), renderer, TRUE); gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combo_box), renderer, "text", 0, NULL); return combo_box; }
void layout_engine_list(GtkWidget * vbox) { GtkWidget * hbox; EngineCombo = gtk_combo_box_new(); hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL,2); gtk_box_pack_startC(vbox,hbox,FALSE,FALSE,0); gtk_box_pack_startC(hbox,gtk_label_new(_("Select\nEngine")),FALSE,FALSE,0); gtk_box_pack_startC(hbox,EngineCombo,FALSE,FALSE,0); #if GTK_CHECK_VERSION(3, 2, 0) gtk_box_pack_startC(vbox,gtk_separator_new (GTK_ORIENTATION_HORIZONTAL),FALSE,FALSE,0); #else gtk_box_pack_startC(vbox,gtk_hseparator_new(),FALSE,FALSE,0); #endif /* really only needed for the container-ness */ EngineContainer = gtk_box_new(GTK_ORIENTATION_HORIZONTAL,0); gtk_box_pack_startC(vbox,EngineContainer,TRUE,TRUE,0); }
/**** Combo box constructor ****/ int clip_GTK_COMBOBOXNEW(ClipMachine * cm) { ClipVar * cv = _clip_spar(cm, 1); GtkWidget *wid = NULL; C_widget *cwid; CHECKOPT(1,MAP_t); wid = gtk_combo_box_new(); if (!wid) goto err; cwid = _register_widget(cm, wid, cv); _clip_mclone(cm,RETPTR(cm),&cwid->obj); return 0; err: return 1; }
GtkWidget *dev_select_combo_box_new(GtkWindow *parent) { GtkWidget *dev = gtk_combo_box_new(); /* Populate device list */ GtkListStore *devlist = gtk_list_store_new(3, G_TYPE_STRING, G_TYPE_POINTER, GTK_TYPE_CHECK_MENU_ITEM); GtkCellRenderer *cel = gtk_cell_renderer_text_new(); gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(dev), cel, TRUE); gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(dev), cel, "text", 0); gtk_combo_box_set_model(GTK_COMBO_BOX(dev), GTK_TREE_MODEL(devlist)); g_signal_connect(dev, "changed", G_CALLBACK(dev_selected), parent); g_object_set_data(G_OBJECT(parent), "devcombo", dev); dev_select_rescan(NULL, parent); return dev; }
GtkWidget * org_gnome_prefer_plain_config_mode(struct _EPlugin *epl, struct _EConfigHookItemFactoryData *data) { /*EMConfigTargetPrefs *ep = (EMConfigTargetPrefs *)data->target;*/ GtkComboBox *dropdown; GtkCellRenderer *cell; GtkListStore *store; GtkWidget *w; int i; GtkTreeIter iter; if (data->old) return data->old; dropdown = (GtkComboBox *)gtk_combo_box_new(); cell = gtk_cell_renderer_text_new(); store = gtk_list_store_new(1, G_TYPE_STRING); for (i=0;i<sizeof(epp_options)/sizeof(epp_options[0]);i++) { gtk_list_store_append(store, &iter); gtk_list_store_set(store, &iter, 0, _(epp_options[i].label), -1); } gtk_cell_layout_pack_start((GtkCellLayout *)dropdown, cell, TRUE); gtk_cell_layout_set_attributes((GtkCellLayout *)dropdown, cell, "text", 0, NULL); gtk_combo_box_set_model(dropdown, (GtkTreeModel *)store); /*gtk_combo_box_set_active(dropdown, -1);*/ gtk_combo_box_set_active(dropdown, epp_mode); g_signal_connect(dropdown, "changed", G_CALLBACK(epp_mode_changed), NULL); gtk_widget_show((GtkWidget *)dropdown); w = gtk_label_new_with_mnemonic(_("HTML _Mode")); gtk_widget_show(w); gtk_label_set_mnemonic_widget(GTK_LABEL(w),(GtkWidget *)dropdown); i = ((GtkTable *)data->parent)->nrows; gtk_table_attach((GtkTable *)data->parent, w, 0, 1, i, i+1, 0, 0, 0, 0); gtk_table_attach((GtkTable *)data->parent, (GtkWidget *)dropdown, 1, 2, i, i+1, GTK_FILL|GTK_EXPAND, 0, 0, 0); /* since this isnt dynamic, we don't need to track each item */ return (GtkWidget *)dropdown; }
/**** Combo box constructor ****/ int clip_GTK_COMBOBOXNEW(ClipMachine * ClipMachineMemory) { ClipVar *cv = _clip_spar(ClipMachineMemory, 1); GtkWidget *wid = NULL; C_widget *cwid; CHECKOPT(1, MAP_type_of_ClipVarType); wid = gtk_combo_box_new(); if (!wid) goto err; cwid = _register_widget(ClipMachineMemory, wid, cv); _clip_mclone(ClipMachineMemory, RETPTR(ClipMachineMemory), &cwid->obj); return 0; err: return 1; }
static GtkWidget *create_mic_page(){ GtkWidget *vbox=gtk_table_new(3,2,FALSE); LinphoneCore *lc=linphone_gtk_get_core(); GtkWidget *labelMicChoice=gtk_label_new(_("Capture device")); GtkWidget *labelMicLevel=gtk_label_new(_("Recorded volume")); GtkWidget *mic_audiolevel=gtk_progress_bar_new(); GtkWidget *capture_device=gtk_combo_box_new(); GtkWidget *box = gtk_vbox_new(FALSE,0); GtkWidget *label_audiolevel=gtk_label_new(_("No voice")); GtkWidget *mixer_button=gtk_button_new_with_label("System sound preferences"); GtkWidget *image; image=gtk_image_new_from_stock(GTK_STOCK_PREFERENCES,GTK_ICON_SIZE_MENU); gtk_button_set_image(GTK_BUTTON(mixer_button),image); gtk_box_pack_start(GTK_BOX(box),mic_audiolevel,TRUE,TRUE,1); gtk_box_pack_start(GTK_BOX(box),label_audiolevel,FALSE,FALSE,1); gtk_table_attach_defaults(GTK_TABLE(vbox), labelMicChoice, 0, 1, 0, 1); gtk_table_attach_defaults(GTK_TABLE(vbox), capture_device, 1, 2, 0, 1); gtk_table_attach_defaults(GTK_TABLE(vbox), labelMicLevel, 0, 1, 1, 2); gtk_table_attach_defaults(GTK_TABLE(vbox), box, 1, 2, 1, 2); gtk_table_attach(GTK_TABLE(vbox), mixer_button, 0, 2, 2, 3, GTK_SHRINK, GTK_SHRINK, 0,0); gtk_table_set_row_spacings(GTK_TABLE(vbox),10); set_widget_to_assistant("mic_audiolevel",mic_audiolevel); set_widget_to_assistant("label_audiolevel",label_audiolevel); const char **sound_devices=linphone_core_get_sound_devices(lc); linphone_gtk_fill_combo_box(capture_device, sound_devices, linphone_core_get_capture_device(lc), CAP_CAPTURE); gtk_widget_show_all(vbox); g_signal_connect(G_OBJECT(capture_device),"changed",(GCallback)capture_device_changed,capture_device); g_signal_connect(G_OBJECT(mixer_button),"clicked",(GCallback)open_mixer,vbox); return vbox; }
static VALUE rg_initialize(int argc, VALUE *argv, VALUE self) { VALUE model_or_false; GtkWidget* widget; rb_scan_args(argc, argv, "01", &model_or_false); if (rb_obj_is_kind_of(model_or_false, GTYPE2CLASS(GTK_TYPE_TREE_MODEL))){ widget = gtk_combo_box_new_with_model(GTK_TREE_MODEL(RVAL2GOBJ(model_or_false))); } else if (NIL_P(model_or_false) || TYPE(model_or_false) == T_TRUE){ widget = gtk_combo_box_new_text(); } else if (TYPE(model_or_false) == T_FALSE){ widget = gtk_combo_box_new(); } else { rb_raise(rb_eArgError, "invalid 2nd argument %s (except true/false or Gtk::TreeModel)", rb_class2name(CLASS_OF(model_or_false))); } RBGTK_INITIALIZE(self, widget); return Qnil; }
//! delete gboolean modifDel(GtkWidget* parent , gpointer data){ gint id = GPOINTER_TO_INT(data); gboolean status = FALSE; gint result = GTK_RESPONSE_OK; if(data == NULL){ GtkWidget *comboId = gtk_combo_box_new (); GtkWidget *dialog = modifGetPilihanId(comboId); gtk_widget_show_all(dialog); result = gtk_dialog_run ((GtkDialog*)dialog); // block if (result != GTK_RESPONSE_OK) return FALSE; id = globalConStrToInt(gtk_combo_box_get_active_text(comboId)); gtk_widget_destroy(dialog); data =id; } char *tmp = g_strdup_printf ("Sudah yakinkah anda untuk menghapus id = %i", data); GtkWidget *w = globalGetSimpleQues(parent,"AMAN Tanya",tmp); gtk_widget_show_all(w); result = gtk_dialog_run (w); g_free(tmp); if (result==GTK_RESPONSE_YES){ GValueArray* varr = g_value_array_new (-1); GValue a = {0}; g_assert (!G_VALUE_HOLDS_STRING (&a)); g_value_init (&a, G_TYPE_INT); g_value_set_int (&a, data); varr = g_value_array_append(varr,&a); GValueArray *hasil = databaseGetDatasFromDb("delete from isi where id = ?" , varr , &status); status = TRUE; //! free g_value_array_free (varr); g_value_array_free (hasil); } gtk_widget_destroy(w); return status; }
static GtkWidget* get_export_types_combo () { GtkWidget *combo = NULL; gint i = 0; GtkListStore *model; GtkCellRenderer *cell; GtkTreeIter iter; combo = gtk_combo_box_new (); cell = gtk_cell_renderer_text_new (); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combo), cell, TRUE); gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combo), cell, "markup", 1, NULL); model = gtk_list_store_new (2, G_TYPE_INT, G_TYPE_STRING); gtk_combo_box_set_model (GTK_COMBO_BOX (combo), GTK_TREE_MODEL (model)); while (i < G_N_ELEMENTS (export_types)) { gtk_list_store_append(GTK_LIST_STORE(model), &iter); gtk_list_store_set( GTK_LIST_STORE(model), &iter, 0, export_types[i].id, 1, export_types[i].name, -1); i++; } gtk_combo_box_set_active (GTK_COMBO_BOX (combo), 0); gtk_widget_show (combo); return combo; }
GtkWidget *AP_UnixDialog_Lists::_constructWindowContents (void) { GtkWidget *vbox2; GtkWidget *hbox2; GtkWidget *vbox4; GtkWidget *table1; GtkWidget *style_om; GtkWidget *type_om; GtkWidget *type_lb; GtkWidget *style_lb; GtkWidget *customized_cb; GtkWidget *frame1; GtkWidget *table2; GtkComboBox *font_om; GtkListStore *font_om_menu; GtkWidget *format_en; GtkWidget *decimal_en; GtkAdjustment *start_sb_adj; GtkWidget *start_sb; GtkAdjustment *text_align_sb_adj; GtkWidget *text_align_sb; GtkAdjustment *label_align_sb_adj; GtkWidget *label_align_sb; GtkWidget *format_lb; GtkWidget *font_lb; GtkWidget *delimiter_lb; GtkWidget *start_at_lb; GtkWidget *text_align_lb; GtkWidget *label_align_lb; GtkWidget *vbox3; GtkWidget *preview_lb; GtkWidget *hbox1; GSList *action_group = NULL; GtkWidget *start_list_rb; GtkWidget *apply_list_rb; GtkWidget *resume_list_rb; GtkWidget *preview_area; GtkWidget *preview_frame; const XAP_StringSet * pSS = m_pApp->getStringSet(); UT_UTF8String s; GtkWidget * wNoteBook = NULL; vbox2 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); gtk_widget_show (vbox2); if(!isModal()) { // Note Book creation wNoteBook = gtk_notebook_new (); gtk_widget_show(wNoteBook); // Container for the lists pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_PageProperties,s); GtkWidget * lbPageLists = gtk_label_new(s.utf8_str()); gtk_widget_show(lbPageLists); gtk_notebook_append_page(GTK_NOTEBOOK(wNoteBook),vbox2,lbPageLists); m_iPageLists = gtk_notebook_page_num(GTK_NOTEBOOK(wNoteBook),vbox2); // Container for Text Folding pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_PageFolding,s); GtkWidget * lbPageFolding = gtk_label_new(s.utf8_str()); GtkWidget * wFoldingTable = gtk_table_new(6,3,FALSE); gtk_widget_show(lbPageFolding); gtk_widget_show(wFoldingTable); gtk_notebook_append_page(GTK_NOTEBOOK(wNoteBook),wFoldingTable,lbPageFolding); m_iPageFold = gtk_notebook_page_num(GTK_NOTEBOOK(wNoteBook),wFoldingTable); // Left Spacing Here GtkWidget * lbLeftSpacer = gtk_label_new(""); gtk_misc_set_padding(GTK_MISC(lbLeftSpacer),8,0); gtk_table_attach(GTK_TABLE(wFoldingTable),lbLeftSpacer,0,1,0,6,GTK_SHRINK,GTK_FILL,0,0); gtk_widget_show(lbLeftSpacer); // Bold markup GtkWidget * lbFoldHeading = gtk_label_new("<b>%s</b>"); gtk_label_set_use_markup(GTK_LABEL(lbFoldHeading),TRUE); localizeLabelMarkup(lbFoldHeading,pSS,AP_STRING_ID_DLG_Lists_FoldingLevelexp); gtk_table_attach(GTK_TABLE(wFoldingTable),lbFoldHeading,1,3,0,1,GTK_FILL,GTK_EXPAND,0,0); gtk_widget_show(lbFoldHeading); // Mid Left Spacing Here GtkWidget * lbMidLeftSpacer = gtk_label_new(""); gtk_misc_set_padding(GTK_MISC(lbMidLeftSpacer),8,0); gtk_table_attach(GTK_TABLE(wFoldingTable),lbMidLeftSpacer,1,2,1,6,GTK_SHRINK,GTK_FILL,0,0); gtk_widget_show(lbMidLeftSpacer); m_vecFoldCheck.clear(); m_vecFoldID.clear(); UT_uint32 ID =0; // RadioButtons pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_FoldingLevel0,s); GtkWidget * wF = gtk_radio_button_new_with_label(NULL, s.utf8_str()); GSList *wG = gtk_radio_button_get_group(GTK_RADIO_BUTTON(wF)); g_object_set_data(G_OBJECT(wF),"level",(gpointer)"0"); ID = g_signal_connect(G_OBJECT(wF), "toggled", G_CALLBACK(s_FoldCheck_changed), (gpointer) this); gtk_table_attach(GTK_TABLE(wFoldingTable),wF,2,3,1,2,GTK_FILL,GTK_EXPAND,0,0); gtk_widget_show(wF); m_vecFoldCheck.addItem(wF); m_vecFoldID.addItem(ID); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_FoldingLevel1,s); wF = gtk_radio_button_new_with_label(wG, s.utf8_str()); wG = gtk_radio_button_get_group(GTK_RADIO_BUTTON(wF)); g_object_set_data(G_OBJECT(wF),"level",(gpointer)"1"); ID = g_signal_connect(G_OBJECT(wF), "toggled", G_CALLBACK(s_FoldCheck_changed), (gpointer) this); gtk_table_attach(GTK_TABLE(wFoldingTable),wF,2,3,2,3,GTK_FILL,GTK_EXPAND,0,0); gtk_widget_show(wF); m_vecFoldCheck.addItem(wF); m_vecFoldID.addItem(ID); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_FoldingLevel2,s); wF = gtk_radio_button_new_with_label(wG, s.utf8_str()); wG = gtk_radio_button_get_group(GTK_RADIO_BUTTON(wF)); g_object_set_data(G_OBJECT(wF),"level",(gpointer)"2"); ID = g_signal_connect(G_OBJECT(wF), "toggled", G_CALLBACK(s_FoldCheck_changed), (gpointer) this); gtk_table_attach(GTK_TABLE(wFoldingTable),wF,2,3,3,4,GTK_FILL,GTK_EXPAND,0,0); gtk_widget_show(wF); m_vecFoldCheck.addItem(wF); m_vecFoldID.addItem(ID); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_FoldingLevel3,s); wF = gtk_radio_button_new_with_label(wG, s.utf8_str()); wG = gtk_radio_button_get_group(GTK_RADIO_BUTTON(wF)); g_object_set_data(G_OBJECT(wF),"level",(gpointer)"3"); ID = g_signal_connect(G_OBJECT(wF), "toggled", G_CALLBACK(s_FoldCheck_changed), (gpointer) this); gtk_table_attach(GTK_TABLE(wFoldingTable),wF,2,3,4,5,GTK_FILL,GTK_EXPAND,0,0); gtk_widget_show(wF); m_vecFoldCheck.addItem(wF); m_vecFoldID.addItem(ID); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_FoldingLevel4,s); wF = gtk_radio_button_new_with_label(wG, s.utf8_str()); g_object_set_data(G_OBJECT(wF),"level",(gpointer)"4"); ID = g_signal_connect(G_OBJECT(wF), "toggled", G_CALLBACK(s_FoldCheck_changed), (gpointer) this); gtk_table_attach(GTK_TABLE(wFoldingTable),wF,2,3,5,6,GTK_FILL,GTK_EXPAND,0,0); gtk_widget_show(wF); m_vecFoldCheck.addItem(wF); m_vecFoldID.addItem(ID); gtk_widget_show(wFoldingTable); gtk_notebook_set_current_page(GTK_NOTEBOOK(wNoteBook),m_iPageLists); } // List Page gtk_container_set_border_width (GTK_CONTAINER (vbox2), 8); hbox2 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 8); gtk_widget_show (hbox2); gtk_box_pack_start (GTK_BOX (vbox2), hbox2, TRUE, TRUE, 0); vbox4 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 4); gtk_widget_show (vbox4); gtk_box_pack_start (GTK_BOX (hbox2), vbox4, FALSE, TRUE, 0); table1 = gtk_table_new (3, 2, FALSE); gtk_widget_show (table1); gtk_box_pack_start (GTK_BOX (vbox4), table1, FALSE, TRUE, 0); gtk_table_set_row_spacings (GTK_TABLE (table1), 4); style_om = gtk_combo_box_text_new(); gtk_widget_show (style_om); gtk_table_attach (GTK_TABLE (table1), style_om, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); m_wListStyleNone_menu = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_INT); _fillNoneStyleMenu(m_wListStyleNone_menu.obj()); m_wListStyleNumbered_menu = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_INT); _fillNumberedStyleMenu(m_wListStyleNumbered_menu.obj()); m_wListStyleBulleted_menu = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_INT); _fillBulletedStyleMenu(m_wListStyleBulleted_menu.obj()); // This is the default list. Change if the list style changes // m_wListStyle_menu = m_wListStyleNumbered_menu; gtk_combo_box_set_model(GTK_COMBO_BOX (style_om), GTK_TREE_MODEL(m_wListStyleNumbered_menu.obj())); type_om = gtk_combo_box_text_new(); gtk_widget_show (type_om); gtk_table_attach (GTK_TABLE (table1), type_om, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Type_none,s); gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(type_om), s.utf8_str()); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Type_bullet,s); gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(type_om), s.utf8_str()); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Type_numbered,s); gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(type_om), s.utf8_str()); gtk_combo_box_set_active(GTK_COMBO_BOX(type_om), 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Type,s); type_lb = gtk_label_new (s.utf8_str()); gtk_widget_show (type_lb); gtk_table_attach (GTK_TABLE (table1), type_lb, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (type_lb), 0, 0.5); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Style,s); style_lb = gtk_label_new (s.utf8_str()); gtk_widget_show (style_lb); gtk_table_attach (GTK_TABLE (table1), style_lb, 0, 1, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (style_lb), 0, 0.5); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_SetDefault,s); customized_cb = gtk_dialog_add_button (GTK_DIALOG(m_wMainWindow), s.utf8_str(), BUTTON_RESET); gtk_widget_show (customized_cb); /* todo gtk_table_attach (GTK_TABLE (table1), customized_cb, 0, 2, 2, 3, (GtkAttachOptions) (GTK_SHRINK), (GtkAttachOptions) (0), 0, 0); */ frame1 = gtk_frame_new (NULL); gtk_frame_set_shadow_type(GTK_FRAME(frame1), GTK_SHADOW_NONE); //gtk_widget_show (frame1); gtk_box_pack_start (GTK_BOX (vbox4), frame1, TRUE, TRUE, 0); table2 = gtk_table_new (6, 2, FALSE); gtk_widget_show (table2); gtk_container_add (GTK_CONTAINER (frame1), table2); gtk_container_set_border_width (GTK_CONTAINER (table2), 4); gtk_widget_set_sensitive (table2, TRUE); gtk_table_set_row_spacings (GTK_TABLE (table2), 4); gtk_table_set_col_spacings (GTK_TABLE (table2), 4); font_om_menu = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_INT); _fillFontMenu(font_om_menu); font_om = GTK_COMBO_BOX(gtk_combo_box_new()); gtk_combo_box_set_model(font_om, GTK_TREE_MODEL(font_om_menu)); gtk_widget_show (GTK_WIDGET(font_om)); gtk_table_attach (GTK_TABLE (table2), GTK_WIDGET(font_om), 1, 2, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); format_en = gtk_entry_new (); gtk_entry_set_max_length(GTK_ENTRY(format_en), 20); gtk_widget_show (format_en); gtk_table_attach (GTK_TABLE (table2), format_en, 1, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_entry_set_text (GTK_ENTRY (format_en), "%L"); decimal_en = gtk_entry_new (); gtk_widget_show (decimal_en); gtk_table_attach (GTK_TABLE (table2), decimal_en, 1, 2, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_entry_set_text (GTK_ENTRY (format_en), ""); start_sb_adj = (GtkAdjustment*)gtk_adjustment_new (1, 0, G_MAXINT32, 1, 10, 10); start_sb = gtk_spin_button_new (GTK_ADJUSTMENT (start_sb_adj), 1, 0); gtk_widget_show (start_sb); gtk_table_attach (GTK_TABLE (table2), start_sb, 1, 2, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); text_align_sb_adj = (GtkAdjustment*)gtk_adjustment_new (0.25, 0, 10, 0.01, 0.2, 1); text_align_sb = gtk_spin_button_new (GTK_ADJUSTMENT (text_align_sb_adj), 0.05, 2); gtk_widget_show (text_align_sb); gtk_table_attach (GTK_TABLE (table2), text_align_sb, 1, 2, 4, 5, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_spin_button_set_snap_to_ticks (GTK_SPIN_BUTTON (text_align_sb), TRUE); gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (text_align_sb), TRUE); label_align_sb_adj = (GtkAdjustment*)gtk_adjustment_new (0, 0, 10, 0.01, 0.2, 1); label_align_sb = gtk_spin_button_new (GTK_ADJUSTMENT (label_align_sb_adj), 0.05, 2); gtk_widget_show (label_align_sb); gtk_table_attach (GTK_TABLE (table2), label_align_sb, 1, 2, 5, 6, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_spin_button_set_snap_to_ticks (GTK_SPIN_BUTTON (label_align_sb), TRUE); gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (label_align_sb), TRUE); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Format,s); format_lb = gtk_label_new (s.utf8_str()); gtk_widget_show (format_lb); gtk_table_attach (GTK_TABLE (table2), format_lb, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (format_lb), 0.0, 0.5); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Font,s); font_lb = gtk_label_new (s.utf8_str()); gtk_widget_show (font_lb); gtk_table_attach (GTK_TABLE (table2), font_lb, 0, 1, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (font_lb), 0.0, 0.5); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_DelimiterString,s); delimiter_lb = gtk_label_new (s.utf8_str()); gtk_widget_show (delimiter_lb); gtk_table_attach (GTK_TABLE (table2), delimiter_lb, 0, 1, 2, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (delimiter_lb), 0.0, 0.5); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Start,s); start_at_lb = gtk_label_new (s.utf8_str()); gtk_widget_show (start_at_lb); gtk_table_attach (GTK_TABLE (table2), start_at_lb, 0, 1, 3, 4, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (start_at_lb), 0.0, 0.5); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Align,s); text_align_lb = gtk_label_new (s.utf8_str()); gtk_widget_show (text_align_lb); gtk_table_attach (GTK_TABLE (table2), text_align_lb, 0, 1, 4, 5, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (text_align_lb), 0.0, 0.5); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Indent,s); label_align_lb = gtk_label_new (s.utf8_str()); gtk_widget_show (label_align_lb); gtk_table_attach (GTK_TABLE (table2), label_align_lb, 0, 1, 5, 6, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label_align_lb), 0.0, 0.5); vbox3 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); gtk_widget_show (vbox3); gtk_box_pack_start (GTK_BOX (hbox2), vbox3, TRUE, TRUE, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Preview,s); preview_lb = gtk_label_new (s.utf8_str()); gtk_widget_show (preview_lb); gtk_box_pack_start (GTK_BOX (vbox3), preview_lb, FALSE, FALSE, 0); gtk_misc_set_alignment (GTK_MISC (preview_lb), 0.0, 0.5); preview_frame = gtk_frame_new (NULL); gtk_widget_show (preview_frame); gtk_box_pack_start (GTK_BOX (vbox3), preview_frame, TRUE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (preview_frame), 3); gtk_frame_set_shadow_type (GTK_FRAME (preview_frame), GTK_SHADOW_NONE); preview_area = createDrawingArea (); gtk_widget_set_size_request (preview_area,180,225); gtk_widget_show (preview_area); gtk_container_add (GTK_CONTAINER (preview_frame), preview_area); hbox1 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); if(!isModal()) gtk_widget_show (hbox1); gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, FALSE, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Start_New,s); start_list_rb = gtk_radio_button_new_with_label (action_group, s.utf8_str()); action_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (start_list_rb)); if(!isModal()) gtk_widget_show (start_list_rb); gtk_box_pack_start (GTK_BOX (hbox1), start_list_rb, FALSE, FALSE, 0); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (start_list_rb), TRUE); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Apply_Current,s); apply_list_rb = gtk_radio_button_new_with_label (action_group, s.utf8_str()); action_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (apply_list_rb)); if(!isModal()) gtk_widget_show (apply_list_rb); gtk_box_pack_start (GTK_BOX (hbox1), apply_list_rb, FALSE, FALSE, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Lists_Resume,s); resume_list_rb = gtk_radio_button_new_with_label (action_group, s.utf8_str()); action_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (resume_list_rb)); if(!isModal()) gtk_widget_show (resume_list_rb); gtk_box_pack_start (GTK_BOX (hbox1), resume_list_rb, FALSE, FALSE, 0); // Save useful widgets in member variables if(isModal()) { m_wContents = vbox2; } else { m_wContents = wNoteBook; } m_wStartNewList = start_list_rb; m_wStartNew_label = gtk_bin_get_child(GTK_BIN(start_list_rb)); m_wApplyCurrent = apply_list_rb; m_wStartSubList = resume_list_rb; m_wStartSub_label = gtk_bin_get_child(GTK_BIN(resume_list_rb)); m_wRadioGroup = action_group; m_wPreviewArea = preview_area; m_wDelimEntry = format_en; m_oAlignList_adj = text_align_sb_adj; m_wAlignListSpin = text_align_sb; m_oIndentAlign_adj = label_align_sb_adj; m_wIndentAlignSpin = label_align_sb; m_wDecimalEntry = decimal_en; m_oStartSpin_adj = start_sb_adj; m_wStartSpin = start_sb; m_wFontOptions = font_om; m_wFontOptions_menu = font_om_menu; m_wCustomFrame = frame1; m_wCustomLabel = customized_cb; m_wCustomTable = table2; m_wListStyleBox = GTK_COMBO_BOX(style_om); m_wListTypeBox = GTK_COMBO_BOX(type_om); m_wListType_menu = m_wListStyleNumbered_menu; // Start by hiding the Custom frame // // gtk_widget_hide(m_wCustomFrame); gtk_widget_show(m_wCustomFrame); setbisCustomized(false); return m_wContents; }
static void prefs_themes_create_widget(PrefsPage *page, GtkWindow *window, gpointer data) { ThemesPage *prefs_themes = (ThemesPage *)page; ThemesData *tdata = prefs_themes_data; GtkWidget *vbox1; GtkWidget *frame1; GtkWidget *vbox2; GtkWidget *hbox3; GtkWidget *menu_themes; GtkWidget *btn_install; GtkWidget *btn_more; GtkWidget *label_global_status; GtkWidget *frame_info; GtkWidget *table1; GtkWidget *label1; GtkWidget *label2; GtkWidget *label3; GtkWidget *label_name; GtkWidget *label_author; GtkWidget *label_url; GtkWidget *label4; GtkWidget *label_status; GtkWidget *frame_preview; GtkWidget *hbox1; GtkWidget *icon_1; GtkWidget *icon_2; GtkWidget *icon_3; GtkWidget *icon_4; GtkWidget *icon_5; GtkWidget *icon_6; GtkWidget *icon_7; GtkWidget *frame_buttons; GtkWidget *hbuttonbox1; GtkWidget *btn_remove; GtkCellRenderer *renderer; vbox1 = gtk_vbox_new (FALSE, VSPACING); gtk_container_set_border_width (GTK_CONTAINER (vbox1), VBOX_BORDER); gtk_widget_show (vbox1); vbox2 = gtkut_get_options_frame(vbox1, &frame1, _("Selector")); hbox3 = gtk_hbox_new (FALSE, 5); gtk_widget_show (hbox3); gtk_box_pack_start (GTK_BOX (vbox2), hbox3, FALSE, FALSE, 0); gtk_container_set_border_width (GTK_CONTAINER (hbox3), 5); menu_themes = gtk_combo_box_new(); gtk_widget_show (menu_themes); gtk_box_pack_start (GTK_BOX (hbox3), menu_themes, FALSE, FALSE, 0); btn_install = gtk_button_new_with_label (_("Install new...")); gtk_widget_show (btn_install); gtk_box_pack_start (GTK_BOX (hbox3), btn_install, FALSE, FALSE, 0); gtkut_widget_set_can_default (btn_install, TRUE); btn_more = gtkut_get_link_btn((GtkWidget *)window, THEMES_URI, _("Get more...")); gtk_widget_show (btn_more); gtk_box_pack_start (GTK_BOX (hbox3), btn_more, FALSE, FALSE, 0); label_global_status = gtk_label_new (""); gtk_widget_show (label_global_status); gtk_box_pack_start (GTK_BOX (vbox2), label_global_status, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label_global_status), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment (GTK_MISC (label_global_status), 0, 0.5); gtk_misc_set_padding (GTK_MISC (label_global_status), 6, 0); PACK_FRAME(vbox1, frame_info, _("Information")); table1 = gtk_table_new (4, 2, FALSE); gtk_widget_show (table1); gtk_container_add (GTK_CONTAINER (frame_info), table1); label1 = gtk_label_new (_("Name: ")); gtk_widget_show (label1); gtk_table_attach (GTK_TABLE (table1), label1, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 8, 2); gtk_label_set_justify (GTK_LABEL (label1), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment (GTK_MISC (label1), 0, 0.5); label2 = gtk_label_new (_("Author: ")); gtk_widget_show (label2); gtk_table_attach (GTK_TABLE (table1), label2, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 8, 2); gtk_label_set_justify (GTK_LABEL (label2), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment (GTK_MISC (label2), 0, 0.5); label3 = gtk_label_new (_("URL:")); gtk_widget_show (label3); gtk_table_attach (GTK_TABLE (table1), label3, 0, 1, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 8, 2); gtk_misc_set_alignment (GTK_MISC (label3), 0, 0.5); label_name = gtk_label_new (""); gtk_widget_show (label_name); gtk_table_attach (GTK_TABLE (table1), label_name, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label_name), 0, 0.5); label_author = gtk_label_new (""); gtk_widget_show (label_author); gtk_table_attach (GTK_TABLE (table1), label_author, 1, 2, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label_author), 0, 0.5); label_url = gtk_label_new (""); gtk_widget_show (label_url); gtk_table_attach (GTK_TABLE (table1), label_url, 1, 2, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label_url), 0, 0.5); label4 = gtk_label_new (_("Status:")); gtk_widget_show (label4); gtk_table_attach (GTK_TABLE (table1), label4, 0, 1, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 8, 2); gtk_misc_set_alignment (GTK_MISC (label4), 0, 0.5); label_status = gtk_label_new (""); gtk_widget_show (label_status); gtk_table_attach (GTK_TABLE (table1), label_status, 1, 2, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label_status), 0, 0.5); PACK_FRAME(vbox1, frame_preview, _("Preview")); hbox1 = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox1); gtk_container_add (GTK_CONTAINER (frame_preview), hbox1); icon_1 = gtk_image_new(); gtk_widget_show (icon_1); gtk_box_pack_start (GTK_BOX (hbox1), icon_1, TRUE, TRUE, 2); gtk_misc_set_padding (GTK_MISC (icon_1), 0, 5); icon_2 = gtk_image_new(); gtk_widget_show (icon_2); gtk_box_pack_start (GTK_BOX (hbox1), icon_2, TRUE, TRUE, 2); gtk_misc_set_padding (GTK_MISC (icon_2), 0, 5); icon_3 = gtk_image_new(); gtk_widget_show (icon_3); gtk_box_pack_start (GTK_BOX (hbox1), icon_3, TRUE, TRUE, 2); gtk_misc_set_padding (GTK_MISC (icon_3), 0, 5); icon_4 = gtk_image_new(); gtk_widget_show (icon_4); gtk_box_pack_start (GTK_BOX (hbox1), icon_4, TRUE, TRUE, 2); gtk_misc_set_padding (GTK_MISC (icon_4), 0, 5); icon_5 = gtk_image_new(); gtk_widget_show (icon_5); gtk_box_pack_start (GTK_BOX (hbox1), icon_5, TRUE, TRUE, 2); gtk_misc_set_padding (GTK_MISC (icon_5), 0, 5); icon_6 = gtk_image_new(); gtk_widget_show (icon_6); gtk_box_pack_start (GTK_BOX (hbox1), icon_6, TRUE, TRUE, 0); gtk_misc_set_padding (GTK_MISC (icon_6), 0, 5); icon_7 = gtk_image_new(); gtk_widget_show (icon_7); gtk_box_pack_start (GTK_BOX (hbox1), icon_7, TRUE, TRUE, 0); gtk_misc_set_padding (GTK_MISC (icon_7), 0, 5); PACK_FRAME(vbox1, frame_buttons, _("Actions")); hbuttonbox1 = gtk_hbutton_box_new (); gtk_widget_show (hbuttonbox1); gtk_container_add (GTK_CONTAINER (frame_buttons), hbuttonbox1); gtk_container_set_border_width (GTK_CONTAINER (hbuttonbox1), 5); gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox1), GTK_BUTTONBOX_START); gtk_box_set_spacing (GTK_BOX (hbuttonbox1), 5); btn_remove = gtk_button_new_with_label (_("Remove")); gtk_widget_show (btn_remove); gtk_container_add (GTK_CONTAINER (hbuttonbox1), btn_remove); gtkut_widget_set_can_default (btn_remove, TRUE); g_signal_connect(G_OBJECT(btn_remove), "clicked", G_CALLBACK(prefs_themes_btn_remove_clicked_cb), NULL); g_signal_connect(G_OBJECT(btn_install), "clicked", G_CALLBACK(prefs_themes_btn_install_clicked_cb), NULL); prefs_themes->window = GTK_WIDGET(window); prefs_themes->name = label_name; prefs_themes->author = label_author; prefs_themes->url = label_url; prefs_themes->status = label_status; prefs_themes->global = label_global_status; prefs_themes->icons[0] = icon_1; prefs_themes->icons[1] = icon_2; prefs_themes->icons[2] = icon_3; prefs_themes->icons[3] = icon_4; prefs_themes->icons[4] = icon_5; prefs_themes->icons[5] = icon_6; prefs_themes->icons[6] = icon_7; prefs_themes->btn_remove = btn_remove; prefs_themes->btn_install = btn_install; prefs_themes->btn_more = btn_more; prefs_themes->op_menu = menu_themes; prefs_themes->page.widget = vbox1; prefs_themes_set_themes_menu(GTK_COMBO_BOX(menu_themes), tdata); renderer = gtk_cell_renderer_text_new(); gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(menu_themes), renderer, TRUE); gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(menu_themes), renderer, "text", 0, NULL); prefs_themes_get_theme_info(tdata); prefs_themes_display_global_stats(tdata); }
GtkWidget * AP_UnixDialog_Paragraph::_constructWindowContents(GtkWidget *windowMain) { // grab the string set const XAP_StringSet * pSS = XAP_App::getApp()->getStringSet(); GtkWidget * vboxContents; GtkWidget * tabMain; GtkWidget * boxSpacing; GtkWidget * hboxAlignment; GtkComboBox * listAlignment; GtkWidget * spinbuttonLeft; GtkWidget * spinbuttonRight; GtkComboBox * listSpecial; GtkWidget * spinbuttonBy; GtkWidget * spinbuttonBefore; GtkWidget * spinbuttonAfter; GtkComboBox * listLineSpacing; GtkWidget * spinbuttonAt; GtkWidget * labelAlignment; GtkWidget * labelBy; GtkWidget * hboxIndentation; GtkWidget * labelIndentation; GtkWidget * labelLeft; GtkWidget * labelRight; GtkWidget * labelSpecial; GtkWidget * hseparator3; GtkWidget * hboxSpacing; GtkWidget * labelSpacing; GtkWidget * labelAfter; GtkWidget * labelLineSpacing; GtkWidget * labelAt; GtkWidget * hseparator1; GtkWidget * labelBefore; GtkWidget * labelIndents; GtkWidget * boxBreaks; GtkWidget * hboxPagination; GtkWidget * labelPagination; GtkWidget * hseparator5; GtkWidget * checkbuttonWidowOrphan; GtkWidget * checkbuttonKeepLines; GtkWidget * checkbuttonPageBreak; GtkWidget * checkbuttonSuppress; GtkWidget * checkbuttonHyphenate; GtkWidget * hseparator6; GtkWidget * checkbuttonKeepNext; GtkWidget * labelBreaks; GtkWidget * checkbuttonDomDirection; gchar * unixstr = NULL; vboxContents = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); gtk_widget_show (vboxContents); tabMain = gtk_notebook_new (); gtk_widget_show (tabMain); gtk_box_pack_start (GTK_BOX (vboxContents), tabMain, FALSE, TRUE, 0); // "Indents and Spacing" page #if defined(EMBEDDED_TARGET) && EMBEDDED_TARGET == EMBEDDED_TARGET_HILDON boxSpacing = gtk_table_new (3, 4, FALSE); #else boxSpacing = gtk_table_new (7, 4, FALSE); #endif gtk_widget_show (boxSpacing); gtk_table_set_row_spacings (GTK_TABLE(boxSpacing), 5); gtk_table_set_col_spacings (GTK_TABLE(boxSpacing), 5); gtk_container_set_border_width (GTK_CONTAINER(boxSpacing), 5); UT_UTF8String s; pSS->getValueUTF8(AP_STRING_ID_DLG_Para_TabLabelIndentsAndSpacing,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelIndents = gtk_label_new (unixstr); FREEP(unixstr); gtk_widget_show (labelIndents); gtk_notebook_append_page (GTK_NOTEBOOK (tabMain), boxSpacing, labelIndents); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelAlignment,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelAlignment = gtk_label_new (unixstr); FREEP(unixstr); gtk_widget_show (labelAlignment); gtk_table_attach ( GTK_TABLE(boxSpacing), labelAlignment, 0,1, 0,1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_label_set_justify (GTK_LABEL (labelAlignment), GTK_JUSTIFY_RIGHT); gtk_misc_set_alignment (GTK_MISC (labelAlignment), 1, 0.5); hboxAlignment = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); gtk_widget_show (hboxAlignment); listAlignment = GTK_COMBO_BOX(gtk_combo_box_new ()); XAP_makeGtkComboBoxText(listAlignment, G_TYPE_INT); /**/ g_object_set_data(G_OBJECT(listAlignment), WIDGET_ID_TAG, (gpointer) id_MENU_ALIGNMENT); gtk_widget_show (GTK_WIDGET(listAlignment)); gtk_box_pack_start (GTK_BOX (hboxAlignment), GTK_WIDGET(listAlignment), FALSE, FALSE, 0); gtk_table_attach ( GTK_TABLE(boxSpacing), hboxAlignment, 1,2, 0,1, (GtkAttachOptions) (GTK_FILL|GTK_EXPAND), (GtkAttachOptions) (GTK_FILL), 0, 0); XAP_appendComboBoxTextAndInt(listAlignment, " ", 0); // add an empty menu option to fix bug 594 pSS->getValueUTF8(AP_STRING_ID_DLG_Para_AlignLeft,s); XAP_appendComboBoxTextAndInt(listAlignment, s.utf8_str(), align_LEFT); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_AlignCentered,s); XAP_appendComboBoxTextAndInt(listAlignment, s.utf8_str(), align_CENTERED); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_AlignRight,s); XAP_appendComboBoxTextAndInt(listAlignment, s.utf8_str(), align_RIGHT); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_AlignJustified,s); XAP_appendComboBoxTextAndInt(listAlignment, s.utf8_str(), align_JUSTIFIED); gtk_combo_box_set_active(listAlignment, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_DomDirection,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); checkbuttonDomDirection = gtk_check_button_new_with_label (unixstr); FREEP(unixstr); /**/ g_object_set_data(G_OBJECT(checkbuttonDomDirection), WIDGET_ID_TAG, (gpointer) id_CHECK_DOMDIRECTION); gtk_widget_show (checkbuttonDomDirection); gtk_table_attach ( GTK_TABLE(boxSpacing), checkbuttonDomDirection, 3,4,0,1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0 ); hboxIndentation = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); gtk_widget_show (hboxIndentation); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelIndentation,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelIndentation = gtk_label_new (unixstr); FREEP(unixstr); gtk_widget_show (labelIndentation); gtk_box_pack_start (GTK_BOX (hboxIndentation), labelIndentation, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (labelIndentation), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment (GTK_MISC (labelIndentation), 0, 0.5); hseparator3 = gtk_separator_new (GTK_ORIENTATION_HORIZONTAL); gtk_widget_show (hseparator3); gtk_box_pack_start (GTK_BOX (hboxIndentation), hseparator3, TRUE, TRUE, 0); gtk_table_attach ( GTK_TABLE(boxSpacing), hboxIndentation, 0,4, 1,2, (GtkAttachOptions) (GTK_FILL|GTK_EXPAND), (GtkAttachOptions) (GTK_FILL), 0, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelLeft,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelLeft = gtk_label_new (unixstr); FREEP(unixstr); gtk_widget_show (labelLeft); gtk_table_attach ( GTK_TABLE(boxSpacing), labelLeft, 0,1, 2,3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_label_set_justify (GTK_LABEL (labelLeft), GTK_JUSTIFY_RIGHT); gtk_misc_set_alignment (GTK_MISC (labelLeft), 1, 0.5); // spinbuttonLeft_adj = gtk_adjustment_new (0, 0, 100, 0.1, 10, 10); // spinbuttonLeft = gtk_spin_button_new (NULL, 1, 1); spinbuttonLeft = gtk_entry_new(); g_object_ref (spinbuttonLeft); g_object_set_data_full (G_OBJECT (windowMain), "spinbuttonLeft", spinbuttonLeft, (GDestroyNotify) g_object_unref); /**/ g_object_set_data(G_OBJECT(spinbuttonLeft), WIDGET_ID_TAG, (gpointer) id_SPIN_LEFT_INDENT); gtk_widget_show (spinbuttonLeft); gtk_table_attach ( GTK_TABLE(boxSpacing), spinbuttonLeft, 1,2, 2,3, (GtkAttachOptions) (GTK_FILL|GTK_EXPAND), (GtkAttachOptions) (GTK_FILL), 0, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelRight,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelRight = gtk_label_new (unixstr); FREEP(unixstr); gtk_widget_show (labelRight); gtk_table_attach ( GTK_TABLE(boxSpacing), labelRight, 0,1, 3,4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_label_set_justify (GTK_LABEL (labelRight), GTK_JUSTIFY_RIGHT); gtk_misc_set_alignment (GTK_MISC (labelRight), 1, 0.5); // spinbuttonRight_adj = gtk_adjustment_new (0, 0, 100, 0.1, 10, 10); // spinbuttonRight = gtk_spin_button_new (NULL, 1, 1); spinbuttonRight = gtk_entry_new(); /**/ g_object_set_data(G_OBJECT(spinbuttonRight), WIDGET_ID_TAG, (gpointer) id_SPIN_RIGHT_INDENT); gtk_widget_show (spinbuttonRight); gtk_table_attach ( GTK_TABLE(boxSpacing), spinbuttonRight, 1,2, 3,4, (GtkAttachOptions) (GTK_FILL|GTK_EXPAND), (GtkAttachOptions) (GTK_FILL), 0, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelSpecial,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelSpecial = gtk_label_new (unixstr); FREEP(unixstr); gtk_widget_show (labelSpecial); gtk_table_attach ( GTK_TABLE(boxSpacing), labelSpecial, 2,3, 2,3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); #if defined(EMBEDDED_TARGET) && EMBEDDED_TARGET == EMBEDDED_TARGET_HILDON gtk_label_set_justify (GTK_LABEL (labelSpecial), GTK_JUSTIFY_RIGHT); gtk_misc_set_alignment (GTK_MISC (labelSpecial), 1, 0.5); #else gtk_label_set_justify (GTK_LABEL (labelSpecial), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment (GTK_MISC (labelSpecial), 0, 0.5); #endif listSpecial = GTK_COMBO_BOX(gtk_combo_box_new ()); XAP_makeGtkComboBoxText(listSpecial, G_TYPE_INT); /**/ g_object_set_data(G_OBJECT(listSpecial), WIDGET_ID_TAG, (gpointer) id_MENU_SPECIAL_INDENT); gtk_widget_show (GTK_WIDGET(listSpecial)); #if defined(EMBEDDED_TARGET) && EMBEDDED_TARGET == EMBEDDED_TARGET_HILDON gtk_table_attach ( GTK_TABLE(boxSpacing), (GtkWidget*)listSpecial, 3, 4, 2, 3, (GtkAttachOptions) (GTK_SHRINK), (GtkAttachOptions) (GTK_FILL), 0, 0); #else gtk_table_attach ( GTK_TABLE(boxSpacing), (GtkWidget*)listSpecial, 2,3, 3,4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); #endif XAP_appendComboBoxTextAndInt(listSpecial, " ", 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_SpecialNone,s); XAP_appendComboBoxTextAndInt(listSpecial, s.utf8_str(), indent_NONE); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_SpecialFirstLine,s); XAP_appendComboBoxTextAndInt(listSpecial, s.utf8_str(), indent_FIRSTLINE); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_SpecialHanging,s); XAP_appendComboBoxTextAndInt(listSpecial, s.utf8_str(), indent_HANGING); gtk_combo_box_set_active(listSpecial, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelBy,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelBy = gtk_label_new (unixstr); FREEP(unixstr); gtk_widget_show (labelBy); #if defined(EMBEDDED_TARGET) && EMBEDDED_TARGET == EMBEDDED_TARGET_HILDON gtk_table_attach ( GTK_TABLE(boxSpacing), labelBy, 2, 3, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_label_set_justify (GTK_LABEL (labelBy), GTK_JUSTIFY_RIGHT); gtk_misc_set_alignment (GTK_MISC (labelBy), 1, 0.5); #else gtk_table_attach ( GTK_TABLE(boxSpacing), labelBy, 3,4, 2,3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_label_set_justify (GTK_LABEL (labelBy), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment (GTK_MISC (labelBy), 0, 0.5); #endif // spinbuttonBy_adj = gtk_adjustment_new (0.5, 0, 100, 0.1, 10, 10); // spinbuttonBy = gtk_spin_button_new (NULL, 1, 1); spinbuttonBy = gtk_entry_new(); /**/ g_object_set_data(G_OBJECT(spinbuttonBy), WIDGET_ID_TAG, (gpointer) id_SPIN_SPECIAL_INDENT); gtk_widget_show (spinbuttonBy); gtk_table_attach ( GTK_TABLE(boxSpacing), spinbuttonBy, 3,4, 3,4, #if defined(EMBEDDED_TARGET) && EMBEDDED_TARGET == EMBEDDED_TARGET_HILDON (GtkAttachOptions) (GTK_SHRINK|GTK_EXPAND), #else (GtkAttachOptions) (GTK_FILL|GTK_EXPAND), #endif (GtkAttachOptions) (GTK_FILL), 0, 0); hboxSpacing = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); gtk_widget_show (hboxSpacing); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelSpacing,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelSpacing = gtk_label_new (unixstr); FREEP(unixstr); gtk_box_pack_start (GTK_BOX (hboxSpacing), labelSpacing, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (labelSpacing), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment (GTK_MISC (labelSpacing), 0, 0.5); hseparator1 = gtk_separator_new (GTK_ORIENTATION_HORIZONTAL); gtk_box_pack_start (GTK_BOX (hboxSpacing), hseparator1, TRUE, TRUE, 0); gtk_table_attach ( GTK_TABLE(boxSpacing), hboxSpacing, 0,4, 4,5, (GtkAttachOptions) (GTK_FILL|GTK_EXPAND), (GtkAttachOptions) (GTK_FILL), 0, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelBefore,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelBefore = gtk_label_new (unixstr); FREEP(unixstr); gtk_table_attach ( GTK_TABLE(boxSpacing), labelBefore, 0,1, 5,6, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_label_set_justify (GTK_LABEL (labelBefore), GTK_JUSTIFY_RIGHT); gtk_misc_set_alignment (GTK_MISC (labelBefore), 1, 0.5); // spinbuttonBefore_adj = gtk_adjustment_new (0, 0, 1500, 0.1, 10, 10); // spinbuttonBefore = gtk_spin_button_new (NULL, 1, 1); spinbuttonBefore = gtk_entry_new(); /**/ g_object_set_data(G_OBJECT(spinbuttonBefore), WIDGET_ID_TAG, (gpointer) id_SPIN_BEFORE_SPACING); gtk_table_attach ( GTK_TABLE(boxSpacing), spinbuttonBefore, 1,2, 5,6, (GtkAttachOptions) (GTK_FILL|GTK_EXPAND), (GtkAttachOptions) (GTK_FILL), 0, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelAfter,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelAfter = gtk_label_new (unixstr); FREEP(unixstr); gtk_table_attach ( GTK_TABLE(boxSpacing), labelAfter, 0,1, 6,7, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_label_set_justify (GTK_LABEL (labelAfter), GTK_JUSTIFY_RIGHT); gtk_misc_set_alignment (GTK_MISC (labelAfter), 1, 0.5); // spinbuttonAfter_adj = gtk_adjustment_new (0, 0, 1500, 0.1, 10, 10); // spinbuttonAfter = gtk_spin_button_new (NULL, 1, 1); spinbuttonAfter = gtk_entry_new(); /**/ g_object_set_data(G_OBJECT(spinbuttonAfter), WIDGET_ID_TAG, (gpointer) id_SPIN_AFTER_SPACING); gtk_table_attach ( GTK_TABLE(boxSpacing), spinbuttonAfter, 1,2, 6,7, (GtkAttachOptions) (GTK_FILL|GTK_EXPAND), (GtkAttachOptions) (GTK_FILL), 0, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelLineSpacing,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelLineSpacing = gtk_label_new (unixstr); FREEP(unixstr); gtk_table_attach ( GTK_TABLE(boxSpacing), labelLineSpacing, 2,3, 5,6, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_label_set_justify (GTK_LABEL (labelLineSpacing), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment (GTK_MISC (labelLineSpacing), 0, 0.5); listLineSpacing = GTK_COMBO_BOX(gtk_combo_box_new ()); XAP_makeGtkComboBoxText(listLineSpacing, G_TYPE_INT); /**/ g_object_set_data(G_OBJECT(listLineSpacing), WIDGET_ID_TAG, (gpointer) id_MENU_SPECIAL_SPACING); gtk_table_attach ( GTK_TABLE(boxSpacing), GTK_WIDGET(listLineSpacing), 2,3, 6,7, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); XAP_appendComboBoxTextAndInt(listLineSpacing, " ", 0); // add an empty menu option to fix bug 594 pSS->getValueUTF8(AP_STRING_ID_DLG_Para_SpacingSingle,s); XAP_appendComboBoxTextAndInt(listLineSpacing, s.utf8_str(), spacing_SINGLE); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_SpacingHalf,s); XAP_appendComboBoxTextAndInt(listLineSpacing, s.utf8_str(), spacing_ONEANDHALF); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_SpacingDouble,s); XAP_appendComboBoxTextAndInt(listLineSpacing, s.utf8_str(), spacing_DOUBLE); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_SpacingAtLeast,s); XAP_appendComboBoxTextAndInt(listLineSpacing, s.utf8_str(), spacing_ATLEAST); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_SpacingExactly,s); XAP_appendComboBoxTextAndInt(listLineSpacing, s.utf8_str(), spacing_EXACTLY); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_SpacingMultiple,s); XAP_appendComboBoxTextAndInt(listLineSpacing, s.utf8_str(), spacing_MULTIPLE); gtk_combo_box_set_active(listLineSpacing, 0); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelAt,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelAt = gtk_label_new (unixstr); FREEP(unixstr); gtk_table_attach ( GTK_TABLE(boxSpacing), labelAt, 3,4, 5,6, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_label_set_justify (GTK_LABEL (labelAt), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment (GTK_MISC (labelAt), 0, 0.5); // spinbuttonAt_adj = gtk_adjustment_new (0.5, 0, 100, 0.1, 10, 10); // spinbuttonAt = gtk_spin_button_new (NULL, 1, 1); spinbuttonAt = gtk_entry_new(); /**/ g_object_set_data(G_OBJECT(spinbuttonAt), WIDGET_ID_TAG, (gpointer) id_SPIN_SPECIAL_SPACING); gtk_table_attach ( GTK_TABLE(boxSpacing), spinbuttonAt, 3,4, 6,7, (GtkAttachOptions) (GTK_FILL|GTK_EXPAND), (GtkAttachOptions) (GTK_FILL), 0, 0); //TODO: In hildon only hide components for future features #if defined(EMBEDDED_TARGET) && EMBEDDED_TARGET == EMBEDDED_TARGET_HILDON #else gtk_widget_show (labelSpacing); gtk_widget_show (hseparator1); gtk_widget_show (labelBefore); gtk_widget_show (spinbuttonBefore); gtk_widget_show (labelAfter); gtk_widget_show (spinbuttonAfter); gtk_widget_show (labelLineSpacing); gtk_widget_show (GTK_WIDGET(listLineSpacing)); gtk_widget_show (labelAt); gtk_widget_show (spinbuttonAt); #endif /* HAVE_HILDON */ // The "Line and Page Breaks" page boxBreaks = gtk_table_new (6, 2, FALSE); gtk_widget_show (boxBreaks); gtk_table_set_row_spacings (GTK_TABLE(boxBreaks), 5); gtk_table_set_col_spacings (GTK_TABLE(boxBreaks), 5); gtk_container_set_border_width (GTK_CONTAINER(boxBreaks), 5); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_TabLabelLineAndPageBreaks,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelBreaks = gtk_label_new (unixstr); FREEP(unixstr); gtk_widget_show (labelBreaks); gtk_notebook_append_page (GTK_NOTEBOOK (tabMain), boxBreaks, labelBreaks); // Pagination headline hboxPagination = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); gtk_widget_show (hboxPagination); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelPagination,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelPagination = gtk_label_new (unixstr); FREEP(unixstr); gtk_widget_show (labelPagination); gtk_box_pack_start (GTK_BOX (hboxPagination), labelPagination, FALSE, FALSE, 0); hseparator5 = gtk_separator_new (GTK_ORIENTATION_HORIZONTAL); gtk_widget_show (hseparator5); gtk_box_pack_start (GTK_BOX (hboxPagination), hseparator5, TRUE, TRUE, 0); gtk_table_attach ( GTK_TABLE(boxBreaks), hboxPagination, 0,2, 0,1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); // Pagination toggles pSS->getValueUTF8(AP_STRING_ID_DLG_Para_PushWidowOrphanControl,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); checkbuttonWidowOrphan = gtk_check_button_new_with_label (unixstr); FREEP(unixstr); /**/ g_object_set_data(G_OBJECT(checkbuttonWidowOrphan), WIDGET_ID_TAG, (gpointer) id_CHECK_WIDOW_ORPHAN); gtk_widget_show (checkbuttonWidowOrphan); gtk_table_attach ( GTK_TABLE(boxBreaks), checkbuttonWidowOrphan, 0,1, 1,2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0 ); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_PushKeepWithNext,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); checkbuttonKeepNext = gtk_check_button_new_with_label (unixstr); FREEP(unixstr); /**/ g_object_set_data(G_OBJECT(checkbuttonKeepNext), WIDGET_ID_TAG, (gpointer) id_CHECK_KEEP_NEXT); gtk_widget_show (checkbuttonKeepNext); gtk_table_attach ( GTK_TABLE(boxBreaks), checkbuttonKeepNext, 1,2, 1,2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0 ); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_PushKeepLinesTogether,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); checkbuttonKeepLines = gtk_check_button_new_with_label (unixstr); FREEP(unixstr); /**/ g_object_set_data(G_OBJECT(checkbuttonKeepLines), WIDGET_ID_TAG, (gpointer) id_CHECK_KEEP_LINES); gtk_widget_show (checkbuttonKeepLines); gtk_table_attach ( GTK_TABLE(boxBreaks), checkbuttonKeepLines, 0,1, 2,3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0 ); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_PushPageBreakBefore,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); checkbuttonPageBreak = gtk_check_button_new_with_label (unixstr); FREEP(unixstr); /**/ g_object_set_data(G_OBJECT(checkbuttonPageBreak), WIDGET_ID_TAG, (gpointer) id_CHECK_PAGE_BREAK); gtk_widget_show (checkbuttonPageBreak); gtk_table_attach ( GTK_TABLE(boxBreaks), checkbuttonPageBreak, 1,2, 2,3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0 ); hseparator6 = gtk_separator_new (GTK_ORIENTATION_HORIZONTAL); gtk_widget_show (hseparator6); gtk_table_attach ( GTK_TABLE(boxBreaks), hseparator6, 0,2, 3,4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0 ); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_PushSuppressLineNumbers,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); checkbuttonSuppress = gtk_check_button_new_with_label (unixstr); FREEP(unixstr); /**/ g_object_set_data(G_OBJECT(checkbuttonSuppress), WIDGET_ID_TAG, (gpointer) id_CHECK_SUPPRESS); gtk_widget_show (checkbuttonSuppress); gtk_table_attach ( GTK_TABLE(boxBreaks), checkbuttonSuppress, 0,1, 4,5, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0 ); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_PushNoHyphenate,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); checkbuttonHyphenate = gtk_check_button_new_with_label (unixstr); FREEP(unixstr); /**/ g_object_set_data(G_OBJECT(checkbuttonHyphenate), WIDGET_ID_TAG, (gpointer) id_CHECK_NO_HYPHENATE); gtk_widget_show (checkbuttonHyphenate); gtk_table_attach ( GTK_TABLE(boxBreaks), checkbuttonHyphenate, 0,1, 5,6, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0 ); // End of notebook. Next comes the preview area. #if !defined(EMBEDDED_TARGET) || EMBEDDED_TARGET != EMBEDDED_TARGET_HILDON GtkWidget * hboxPreview; GtkWidget * labelPreview; GtkWidget * hboxPreviewFrame; GtkWidget * framePreview; GtkWidget * drawingareaPreview; GtkWidget * hseparator4; hboxPreview = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); gtk_widget_show (hboxPreview); pSS->getValueUTF8(AP_STRING_ID_DLG_Para_LabelPreview,s); UT_XML_cloneNoAmpersands(unixstr, s.utf8_str()); labelPreview = gtk_label_new (unixstr); FREEP(unixstr); gtk_widget_show (labelPreview); gtk_box_pack_start (GTK_BOX (hboxPreview), labelPreview, FALSE, TRUE, 0); gtk_label_set_justify (GTK_LABEL (labelPreview), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment (GTK_MISC (labelPreview), 0, 0.5); hseparator4 = gtk_separator_new (GTK_ORIENTATION_HORIZONTAL); gtk_widget_show (hseparator4); gtk_box_pack_start (GTK_BOX (hboxPreview), hseparator4, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (vboxContents), hboxPreview, TRUE, TRUE, 0); hboxPreviewFrame = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); gtk_widget_show (hboxPreviewFrame); framePreview = gtk_frame_new (NULL); gtk_widget_show (framePreview); gtk_box_pack_start (GTK_BOX (hboxPreviewFrame), framePreview, TRUE, FALSE, 0); gtk_box_pack_start (GTK_BOX (vboxContents), hboxPreviewFrame, FALSE, TRUE, 0); gtk_widget_set_size_request (framePreview, 400, 150); gtk_frame_set_shadow_type (GTK_FRAME (framePreview), GTK_SHADOW_NONE); drawingareaPreview = createDrawingArea (); gtk_widget_show (drawingareaPreview); gtk_container_add (GTK_CONTAINER (framePreview), drawingareaPreview); #endif // Update member variables with the important widgets that // might need to be queried or altered later. m_windowContents = vboxContents; m_listAlignment = GTK_WIDGET(listAlignment); // m_spinbuttonLeft_adj = spinbuttonLeft_adj; m_spinbuttonLeft = spinbuttonLeft; // m_spinbuttonRight_adj = spinbuttonRight_adj; m_spinbuttonRight = spinbuttonRight; m_listSpecial = GTK_WIDGET(listSpecial); // m_spinbuttonBy_adj = spinbuttonBy_adj; m_spinbuttonBy = spinbuttonBy; // m_spinbuttonBefore_adj = spinbuttonBefore_adj; m_spinbuttonBefore = spinbuttonBefore; // m_spinbuttonAfter_adj = spinbuttonAfter_adj; m_spinbuttonAfter = spinbuttonAfter; m_listLineSpacing = GTK_WIDGET(listLineSpacing); // m_spinbuttonAt_adj = spinbuttonAt_adj; m_spinbuttonAt = spinbuttonAt; #if defined(EMBEDDED_TARGET) && EMBEDDED_TARGET == EMBEDDED_TARGET_HILDON m_drawingareaPreview = NULL; #else m_drawingareaPreview = drawingareaPreview; #endif m_checkbuttonWidowOrphan = checkbuttonWidowOrphan; m_checkbuttonKeepLines = checkbuttonKeepLines; m_checkbuttonPageBreak = checkbuttonPageBreak; m_checkbuttonSuppress = checkbuttonSuppress; m_checkbuttonHyphenate = checkbuttonHyphenate; m_checkbuttonKeepNext = checkbuttonKeepNext; m_checkbuttonDomDirection = checkbuttonDomDirection; return vboxContents; }
static void bt_settings_page_interaction_controller_init_ui (const BtSettingsPageInteractionController * self, GtkWidget * pages) { GtkWidget *label, *widget, *scrolled_window; GtkCellRenderer *renderer; GtkTreeViewColumn *tree_col; GtkTreeSelection *tree_sel; BtIcRegistry *ic_registry; gchar *str; gtk_widget_set_name (GTK_WIDGET (self), "interaction controller settings"); // create the widget already so that we can set the initial text self->priv->message = GTK_LABEL (gtk_label_new (NULL)); g_object_set (GTK_WIDGET (self->priv->message), "hexpand", TRUE, NULL); // add setting widgets label = gtk_label_new (NULL); str = g_strdup_printf ("<big><b>%s</b></big>", _("Interaction Controller")); gtk_label_set_markup (GTK_LABEL (label), str); g_free (str); g_object_set (label, "xalign", 0.0, NULL); gtk_grid_attach (GTK_GRID (self), label, 0, 0, 3, 1); gtk_grid_attach (GTK_GRID (self), gtk_label_new (" "), 0, 1, 1, 3); label = gtk_label_new (_("Device")); g_object_set (label, "xalign", 1.0, NULL); gtk_grid_attach (GTK_GRID (self), label, 1, 1, 1, 1); widget = gtk_combo_box_new (); self->priv->device_menu = GTK_COMBO_BOX (widget); renderer = gtk_cell_renderer_text_new (); gtk_cell_renderer_set_fixed_size (renderer, 1, -1); gtk_cell_renderer_text_set_fixed_height_from_font (GTK_CELL_RENDERER_TEXT (renderer), 1); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (self->priv->device_menu), renderer, TRUE); gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (self->priv->device_menu), renderer, "text", DEVICE_MENU_LABEL, NULL); // get list of devices from libbtic and listen to changes g_object_get (self->priv->app, "ic-registry", &ic_registry, NULL); g_signal_connect_object (ic_registry, "notify::devices", G_CALLBACK (on_ic_registry_devices_changed), (gpointer) self, 0); g_object_unref (ic_registry); g_object_set (widget, "hexpand", TRUE, "margin-left", LABEL_PADDING, NULL); gtk_grid_attach (GTK_GRID (self), widget, 2, 1, 1, 1); g_signal_connect (widget, "changed", G_CALLBACK (on_device_menu_changed), (gpointer) self); // add list of controllers (updated when selecting a device) scrolled_window = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled_window), GTK_SHADOW_ETCHED_IN); self->priv->controller_list = GTK_TREE_VIEW (gtk_tree_view_new ()); g_object_set (self->priv->controller_list, "enable-search", FALSE, "rules-hint", TRUE, NULL); // have this first as the last column gets the remaining space (always :/) renderer = gtk_cell_renderer_toggle_new (); gtk_tree_view_insert_column_with_attributes (self->priv->controller_list, -1, _("In use"), renderer, "active", CONTROLLER_LIST_USED, NULL); self->priv->id_renderer = renderer = gtk_cell_renderer_text_new (); //gtk_cell_renderer_set_fixed_size (renderer, 1, -1); gtk_cell_renderer_text_set_fixed_height_from_font (GTK_CELL_RENDERER_TEXT (renderer), 1); g_signal_connect (renderer, "edited", G_CALLBACK (on_control_name_edited), (gpointer) self); if ((tree_col = gtk_tree_view_column_new_with_attributes (_("Controller"), renderer, "text", CONTROLLER_LIST_LABEL, NULL)) ) { g_object_set (tree_col, "expand", TRUE, NULL); gtk_tree_view_insert_column (self->priv->controller_list, tree_col, -1); } else GST_WARNING ("can't create treeview column"); tree_sel = gtk_tree_view_get_selection (self->priv->controller_list); gtk_tree_selection_set_mode (tree_sel, GTK_SELECTION_BROWSE); g_signal_connect (tree_sel, "changed", G_CALLBACK (on_control_selected), (gpointer) self); gtk_container_add (GTK_CONTAINER (scrolled_window), GTK_WIDGET (self->priv->controller_list)); g_object_set (GTK_WIDGET (scrolled_window), "hexpand", TRUE, "vexpand", TRUE, "margin-left", LABEL_PADDING, NULL); gtk_grid_attach (GTK_GRID (self), GTK_WIDGET (scrolled_window), 1, 2, 2, 1); // add a message pane #if ! defined(USE_GUDEV) && ! defined(USE_ALSA) gtk_label_set_text (self->priv->message, _("This package has been built without GUdev and Alsa support and thus " "supports no interaction controllers.")); #endif gtk_grid_attach (GTK_GRID (self), GTK_WIDGET (self->priv->message), 0, 3, 3, 1); // listen to page changes g_signal_connect ((gpointer) pages, "notify::page", G_CALLBACK (on_page_switched), (gpointer) self); // initial refresh on_ic_registry_devices_changed (ic_registry, NULL, (gpointer) self); }