static void sp_item_menu(SPObject *object, SPDesktop *desktop, GtkMenu *m) { SPItem *item; GtkWidget *w; item = (SPItem *) object; /* Item dialog */ w = gtk_menu_item_new_with_mnemonic(_("Object _Properties")); gtk_object_set_data(GTK_OBJECT(w), "desktop", desktop); gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_item_properties), item); gtk_widget_show(w); gtk_menu_append(GTK_MENU(m), w); /* Separator */ w = gtk_menu_item_new(); gtk_widget_show(w); gtk_menu_append(GTK_MENU(m), w); /* Select item */ w = gtk_menu_item_new_with_mnemonic(_("_Select This")); if (sp_desktop_selection(desktop)->includes(item)) { gtk_widget_set_sensitive(w, FALSE); } else { gtk_object_set_data(GTK_OBJECT(w), "desktop", desktop); gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_item_select_this), item); } gtk_widget_show(w); gtk_menu_append(GTK_MENU(m), w); /* Create link */ w = gtk_menu_item_new_with_mnemonic(_("_Create Link")); gtk_object_set_data(GTK_OBJECT(w), "desktop", desktop); gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_item_create_link), item); gtk_widget_set_sensitive(w, !SP_IS_ANCHOR(item)); gtk_widget_show(w); gtk_menu_append(GTK_MENU(m), w); /* Set mask */ w = gtk_menu_item_new_with_mnemonic(_("Set Mask")); gtk_object_set_data(GTK_OBJECT(w), "desktop", desktop); gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_set_mask), item); if ((item && item->mask_ref && item->mask_ref->getObject()) || (item->clip_ref && item->clip_ref->getObject())) { gtk_widget_set_sensitive(w, FALSE); } else { gtk_widget_set_sensitive(w, TRUE); } gtk_widget_show(w); gtk_menu_append(GTK_MENU(m), w); /* Release mask */ w = gtk_menu_item_new_with_mnemonic(_("Release Mask")); gtk_object_set_data(GTK_OBJECT(w), "desktop", desktop); gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_release_mask), item); if (item && item->mask_ref && item->mask_ref->getObject()) { gtk_widget_set_sensitive(w, TRUE); } else { gtk_widget_set_sensitive(w, FALSE); } gtk_widget_show(w); gtk_menu_append(GTK_MENU(m), w); /* Set Clip */ w = gtk_menu_item_new_with_mnemonic(_("Set Clip")); gtk_object_set_data(GTK_OBJECT(w), "desktop", desktop); gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_set_clip), item); if ((item && item->mask_ref && item->mask_ref->getObject()) || (item->clip_ref && item->clip_ref->getObject())) { gtk_widget_set_sensitive(w, FALSE); } else { gtk_widget_set_sensitive(w, TRUE); } gtk_widget_show(w); gtk_menu_append(GTK_MENU(m), w); /* Release Clip */ w = gtk_menu_item_new_with_mnemonic(_("Release Clip")); gtk_object_set_data(GTK_OBJECT(w), "desktop", desktop); gtk_signal_connect(GTK_OBJECT(w), "activate", GTK_SIGNAL_FUNC(sp_release_clip), item); if (item && item->clip_ref && item->clip_ref->getObject()) { gtk_widget_set_sensitive(w, TRUE); } else { gtk_widget_set_sensitive(w, FALSE); } gtk_widget_show(w); gtk_menu_append(GTK_MENU(m), w); }
static void mousekeys_enable_toggled_cb (GtkWidget *w, GtkBuilder *dialog) { gboolean active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (w)); gtk_widget_set_sensitive (WID ("mousekeys_table"), active); }
void tasks_add_edit_dialog_show (gboolean tasks_edit_mode, GUI *appGUI) { GtkWidget *vbox1; GtkWidget *vbox2; GtkWidget *label; GtkWidget *select_date_button; GtkWidget *scrolledwindow; GtkWidget *hseparator; GtkWidget *hbuttonbox; GtkWidget *table; GtkWidget *cancel_button; gchar tmpbuf[BUFFER_SIZE]; appGUI->tsk->tasks_add_window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_container_set_border_width (GTK_CONTAINER (appGUI->tsk->tasks_add_window), 6); if(tasks_edit_mode == TRUE) { gtk_window_set_title (GTK_WINDOW (appGUI->tsk->tasks_add_window), _("Edit task")); } else { gtk_window_set_title (GTK_WINDOW (appGUI->tsk->tasks_add_window), _("Add task")); } gtk_window_move (GTK_WINDOW (appGUI->tsk->tasks_add_window), config.tasks_addedit_win_x, config.tasks_addedit_win_y); gtk_window_set_default_size (GTK_WINDOW(appGUI->tsk->tasks_add_window), config.tasks_addedit_win_w, config.tasks_addedit_win_h); gtk_window_set_transient_for(GTK_WINDOW(appGUI->tsk->tasks_add_window), GTK_WINDOW(appGUI->main_window)); gtk_window_set_modal(GTK_WINDOW(appGUI->tsk->tasks_add_window), TRUE); g_signal_connect (G_OBJECT (appGUI->tsk->tasks_add_window), "key_press_event", G_CALLBACK (tasks_add_edit_key_press_cb), appGUI); g_signal_connect (G_OBJECT (appGUI->tsk->tasks_add_window), "delete_event", G_CALLBACK(tasks_add_edit_window_close_cb), appGUI); vbox1 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox1); gtk_container_add (GTK_CONTAINER (appGUI->tsk->tasks_add_window), vbox1); vbox2 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox2); gtk_box_pack_start (GTK_BOX (vbox1), vbox2, TRUE, TRUE, 0); table = gtk_table_new (4, 4, FALSE); gtk_widget_show (table); gtk_table_set_row_spacings (GTK_TABLE (table), 6); gtk_table_set_col_spacings (GTK_TABLE (table), 4); gtk_box_pack_start (GTK_BOX (vbox2), table, FALSE, FALSE, 4); sprintf(tmpbuf, "<b>%s:</b>", _("Summary")); label = gtk_label_new (tmpbuf); gtk_widget_show (label); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); sprintf(tmpbuf, "<b>%s:</b>", _("Due date")); label = gtk_label_new (tmpbuf); gtk_widget_show (label); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); appGUI->tsk->summary_entry = gtk_entry_new (); gtk_widget_show (appGUI->tsk->summary_entry); gtk_table_attach (GTK_TABLE (table), appGUI->tsk->summary_entry, 1, 4, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); appGUI->tsk->due_date_entry = gtk_entry_new (); gtk_widget_show (appGUI->tsk->due_date_entry); GTK_WIDGET_UNSET_FLAGS(appGUI->tsk->due_date_entry, GTK_CAN_FOCUS); gtk_editable_set_editable (GTK_EDITABLE (appGUI->tsk->due_date_entry), FALSE); gtk_table_attach (GTK_TABLE (table), appGUI->tsk->due_date_entry, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); select_date_button = gtk_button_new_from_stock (OSMO_STOCK_BUTTON_SELECT_DATE); gtk_widget_show (select_date_button); GTK_WIDGET_UNSET_FLAGS(select_date_button, GTK_CAN_FOCUS); g_signal_connect(select_date_button, "clicked", G_CALLBACK(select_date_cb), appGUI); gtk_table_attach (GTK_TABLE (table), select_date_button, 2, 4, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); sprintf(tmpbuf, "<b>%s:</b>", _("Category")); label = gtk_label_new (tmpbuf); gtk_widget_show (label); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); appGUI->tsk->category_combobox = gtk_combo_box_new_text (); gtk_widget_show (appGUI->tsk->category_combobox); gtk_combo_box_set_focus_on_click (GTK_COMBO_BOX (appGUI->tsk->category_combobox), FALSE); gtk_table_attach (GTK_TABLE (table), appGUI->tsk->category_combobox, 1, 2, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); create_category_combobox (GTK_COMBO_BOX (appGUI->tsk->category_combobox), appGUI->opt->tasks_category_store, TRUE); gtk_combo_box_set_active(GTK_COMBO_BOX(appGUI->tsk->category_combobox), gui_list_store_get_text_index (appGUI->opt->tasks_category_store, gtk_combo_box_get_active_text(GTK_COMBO_BOX(appGUI->tsk->cf_combobox)))); sprintf(tmpbuf, "<b>%s:</b>", _("Priority")); label = gtk_label_new (tmpbuf); gtk_widget_show (label); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); gtk_table_attach (GTK_TABLE (table), label, 2, 3, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); appGUI->tsk->priority_combobox = gtk_combo_box_new_text (); gtk_widget_show (appGUI->tsk->priority_combobox); gtk_combo_box_append_text (GTK_COMBO_BOX (appGUI->tsk->priority_combobox), _("Low")); gtk_combo_box_append_text (GTK_COMBO_BOX (appGUI->tsk->priority_combobox), _("Medium")); gtk_combo_box_append_text (GTK_COMBO_BOX (appGUI->tsk->priority_combobox), _("High")); gtk_combo_box_set_focus_on_click (GTK_COMBO_BOX (appGUI->tsk->priority_combobox), FALSE); gtk_table_attach (GTK_TABLE (table), appGUI->tsk->priority_combobox, 3, 4, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_combo_box_set_active (GTK_COMBO_BOX (appGUI->tsk->priority_combobox), 1); sprintf(tmpbuf, "<b>%s:</b>", _("Description")); label = gtk_label_new (tmpbuf); gtk_widget_show (label); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); scrolledwindow = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show (scrolledwindow); gtk_box_pack_start (GTK_BOX (vbox2), scrolledwindow, TRUE, TRUE, 0); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow), GTK_SHADOW_IN); appGUI->tsk->desc_textview = gtk_text_view_new (); gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (appGUI->tsk->desc_textview), GTK_WRAP_WORD); gtk_text_view_set_pixels_above_lines(GTK_TEXT_VIEW(appGUI->tsk->desc_textview), 4); gtk_text_view_set_left_margin(GTK_TEXT_VIEW(appGUI->tsk->desc_textview), 4); gtk_text_view_set_right_margin(GTK_TEXT_VIEW(appGUI->tsk->desc_textview), 4); gtk_widget_show (appGUI->tsk->desc_textview); gtk_container_add (GTK_CONTAINER (scrolledwindow), appGUI->tsk->desc_textview); hseparator = gtk_hseparator_new (); gtk_widget_show (hseparator); gtk_box_pack_start (GTK_BOX (vbox1), hseparator, FALSE, TRUE, 4); hbuttonbox = gtk_hbutton_box_new (); gtk_widget_show (hbuttonbox); gtk_box_pack_start (GTK_BOX (vbox1), hbuttonbox, FALSE, FALSE, 0); gtk_container_set_border_width (GTK_CONTAINER (hbuttonbox), 2); gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox), GTK_BUTTONBOX_END); gtk_box_set_spacing (GTK_BOX (hbuttonbox), 16); if (config.default_stock_icons) { cancel_button = gtk_button_new_from_stock (GTK_STOCK_CANCEL); } else { cancel_button = gtk_button_new_from_stock (OSMO_STOCK_BUTTON_CANCEL); } gtk_widget_show (cancel_button); gtk_container_add (GTK_CONTAINER (hbuttonbox), cancel_button); g_signal_connect(cancel_button, "clicked", G_CALLBACK(button_tasks_add_edit_window_close_cb), appGUI); if (config.default_stock_icons) { appGUI->tsk->tasks_ok_button = gtk_button_new_from_stock (GTK_STOCK_OK); } else { appGUI->tsk->tasks_ok_button = gtk_button_new_from_stock (OSMO_STOCK_BUTTON_OK); } gtk_widget_show (appGUI->tsk->tasks_ok_button); gtk_container_add (GTK_CONTAINER (hbuttonbox), appGUI->tsk->tasks_ok_button); g_signal_connect(appGUI->tsk->tasks_ok_button, "clicked", G_CALLBACK(tasks_item_entered_cb), appGUI); appGUI->tsk->tasks_edit_state = tasks_edit_mode; appGUI->tsk->tasks_accept_state = FALSE; gtk_entry_set_text (GTK_ENTRY(appGUI->tsk->due_date_entry), _("No date")); if (tasks_edit_mode == TRUE) { appGUI->tsk->tasks_accept_state = TRUE; fill_fields (appGUI->tsk->due_date_entry, appGUI->tsk->summary_entry, appGUI->tsk->desc_textview, appGUI); } gtk_widget_set_sensitive(appGUI->tsk->tasks_ok_button, appGUI->tsk->tasks_accept_state); gtk_widget_show(appGUI->tsk->tasks_add_window); }
gboolean ly_3lrc_desktop_on_expose_cb (GtkWidget * widget, cairo_t *cr, gpointer data) { gchar desktop_font[1024]="Sans Regular 25"; ly_reg_get("3lrc_desktop_font", "%1024[^\n]", desktop_font); gchar path[1024]; g_snprintf(path,sizeof(path),"%sicon/null.png",LY_GLB_PROG_UIXDIR); if(!desktop_bg) desktop_bg=cairo_image_surface_create_from_png(path); cairo_set_source_surface(cr, desktop_bg, 0, 0); cairo_set_operator(cr, CAIRO_OPERATOR_SOURCE); cairo_paint(cr); int width; int height; width = gtk_widget_get_allocated_width (widget); height = gtk_widget_get_allocated_height (widget); int x=0; int y=height; //鼠标进入 if(flag_notify) { //填充圆角矩形拖动区域 cairo_set_source_rgba(cr,0,0,0,0.3); cairo_move_to (cr, 0 + 5, 0); cairo_line_to (cr, 0 + width - 5, 0); cairo_move_to (cr, 0 + width, 0 + 5); cairo_line_to (cr, 0 + width, 0 + height - 5); cairo_move_to (cr, 0 + width - 5, 0 + height); cairo_line_to (cr, 0 + 5, 0 + height); cairo_move_to (cr, 0, 0 + height - 5); cairo_line_to (cr, 0, 0 + 5); cairo_arc (cr, 0 + 5, 0 + 5, 5, M_PI, 3 * M_PI / 2.0); cairo_arc (cr, 0 + width - 5, 0 + 5, 5, 3 * M_PI / 2, 2 * M_PI); cairo_arc (cr, 0 + width - 5, 0 + height - 5, 5, 0, M_PI / 2); cairo_arc (cr, 0 + 5, 0 + height - 5, 5, M_PI / 2, M_PI); cairo_fill(cr); } if(ly_lrc_get_length()>0) { //计算占空比 gint64 t1=0; gint64 t2=0; LyMdhMetadata *md=NULL; md=ly_pqm_get_current_md(); if(!md) return FALSE; if(ly_lrc_get_index()+1<ly_lrc_get_length()) t1=(ly_lrc_get_array()[ly_lrc_get_index()+1])->time-(ly_lrc_get_array()[ly_lrc_get_index()])->time; else t1=ly_mdh_time_str2int(md->duration)-ly_mdh_time_str2int(md->start)-(ly_lrc_get_array()[ly_lrc_get_index()])->time; t2=ly_aud_get_position_abs()-ly_mdh_time_str2int(md->start)-(ly_lrc_get_array()[ly_lrc_get_index()])->time; if(t1!=0) { x=(int)((t2/(gdouble)t1)*pos_layout[X]); } //画歌词 cairo_set_source_rgb(cr,0,0,0); //确定起始点 if((x>=width/2)&&(pos_layout[X]>width)&&(width<(pos_layout[X]-x)*2)) { cairo_move_to(cr, 0-(x-width/2), 5); x=width/2; } else if((x>=width/2)&&(pos_layout[X]>width)&&(width>=(pos_layout[X]-x)*2)) cairo_move_to(cr, 0-(pos_layout[X]-width), 5); else cairo_move_to(cr, 0, 5); PangoLayout *layout; PangoFontDescription *desc; layout = pango_cairo_create_layout (cr); pango_layout_set_text(layout, ly_lrc_get_array()[ly_lrc_get_index()]->text, -1); desc = pango_font_description_from_string (desktop_font); pango_layout_set_font_description (layout, desc); pango_font_description_free (desc); pango_layout_get_size(layout,&pos_layout[X],&pos_layout[Y]); pos_layout[X]=pos_layout[X]/1000; pango_cairo_update_layout (cr, layout); pango_cairo_layout_path (cr, layout); cairo_clip(cr); g_object_unref (layout); //画背景条 cairo_pattern_t *pat; pat = cairo_pattern_create_linear (0, 0,10.0, 150); cairo_pattern_add_color_stop_rgb (pat, 0.1, 65535/65535.0, 10449/65535.0, 0/65535.0); cairo_pattern_add_color_stop_rgb (pat, 0.5, 65535/65535.0, 61062/65535.0, 0/65535.0); cairo_pattern_add_color_stop_rgb (pat, 0.9, 65535/65535.0, 10449/65535.0, 0/65535.0); //画矩形 if((x>=width/2)&&(pos_layout[X]>width)&&(width<(pos_layout[X]-x)*2)) cairo_rectangle (cr, 0, 0, width/2, y); else if((x>=width/2)&&(pos_layout[X]>width)&&(width>=(pos_layout[X]-x)*2)) cairo_rectangle (cr, 0, 0, width-(pos_layout[X]-x), y); else cairo_rectangle (cr, 0, 0, x, y); cairo_set_source (cr, pat); cairo_fill(cr); cairo_pattern_destroy (pat); pat = cairo_pattern_create_linear (0, 0,10.0, 150); cairo_pattern_add_color_stop_rgb (pat, 0.1, 19532/65535.0, 65535/65535.0, 65535/65535.0); cairo_pattern_add_color_stop_rgb (pat, 0.5, 5539/65535.0, 0/65535.0, 65535/65535.0); cairo_pattern_add_color_stop_rgb (pat, 0.9, 19532/65535.0, 65535/65535.0, 65535/65535.0); //画矩形 if((x>=width/2)&&(pos_layout[X]>width)&&(width<(pos_layout[X]-x)*2)) cairo_rectangle (cr, width/2, 0, width-(width/2), y); else if((x>=width/2)&&(pos_layout[X]>width)&&(width>=(pos_layout[X]-x)*2)) cairo_rectangle (cr, width-(pos_layout[X]-x), 0, pos_layout[X]-x, y); else cairo_rectangle (cr, x, 0, width-x, y); cairo_set_source (cr, pat); cairo_fill(cr); cairo_pattern_destroy (pat); } int lrc_desktop=1; int lrc_desktop_fix=0; if(!ly_reg_get("3lrc_desktop_state", "%d:%d", &lrc_desktop, &lrc_desktop_fix)) { ly_reg_set("3lrc_desktop_state", "%d:%d", lrc_desktop, lrc_desktop_fix); } if(lrc_desktop_fix>0) gtk_widget_set_sensitive(widget,FALSE); else gtk_widget_set_sensitive(widget,TRUE); cairo_region_t *region; if(!(lrc_desktop_fix)) { cairo_rectangle_int_t rect; rect.x=rect.y=0; rect.width=width; rect.height=height; region=cairo_region_create_rectangle(&rect); } else { region=cairo_region_create(); } gdk_window_input_shape_combine_region (gtk_widget_get_window(widget), region, 0, 0); cairo_region_destroy (region); return FALSE; }
static PanelAddtoDialog * panel_addto_dialog_new (PanelWidget *panel_widget) { PanelAddtoDialog *dialog; GtkWidget *dialog_vbox; #if !GTK_CHECK_VERSION (3, 0, 0) GtkWidget *vbox; #endif GtkWidget *inner_vbox; GtkWidget *find_hbox; GtkWidget *sw; GtkCellRenderer *renderer; GtkTreeSelection *selection; GtkTreeViewColumn *column; dialog = g_new0 (PanelAddtoDialog, 1); g_object_set_qdata_full (G_OBJECT (panel_widget->toplevel), panel_addto_dialog_quark, dialog, (GDestroyNotify) panel_addto_dialog_free); dialog->panel_widget = panel_widget; g_signal_connect (dialog->panel_widget->toplevel->settings, "changed::" PANEL_TOPLEVEL_NAME_KEY, G_CALLBACK (panel_addto_name_notify), dialog); dialog->addto_dialog = gtk_dialog_new (); gtk_dialog_add_button (GTK_DIALOG (dialog->addto_dialog), GTK_STOCK_HELP, GTK_RESPONSE_HELP); dialog->back_button = gtk_dialog_add_button (GTK_DIALOG (dialog->addto_dialog), GTK_STOCK_GO_BACK, PANEL_ADDTO_RESPONSE_BACK); dialog->add_button = gtk_dialog_add_button (GTK_DIALOG (dialog->addto_dialog), GTK_STOCK_ADD, PANEL_ADDTO_RESPONSE_ADD); gtk_dialog_add_button (GTK_DIALOG (dialog->addto_dialog), GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE); gtk_widget_set_sensitive (GTK_WIDGET (dialog->add_button), FALSE); gtk_dialog_set_default_response (GTK_DIALOG (dialog->addto_dialog), PANEL_ADDTO_RESPONSE_ADD); gtk_container_set_border_width (GTK_CONTAINER (dialog->addto_dialog), 5); dialog_vbox = gtk_dialog_get_content_area (GTK_DIALOG (dialog->addto_dialog)); #if GTK_CHECK_VERSION (3, 0, 0) gtk_box_set_spacing (GTK_BOX (dialog_vbox), 12); gtk_container_set_border_width (GTK_CONTAINER (dialog_vbox), 5); #else gtk_box_set_spacing (GTK_BOX (dialog_vbox), 2); #endif g_signal_connect (G_OBJECT (dialog->addto_dialog), "response", G_CALLBACK (panel_addto_dialog_response), dialog); g_signal_connect (dialog->addto_dialog, "destroy", G_CALLBACK (panel_addto_dialog_destroy), dialog); #if !GTK_CHECK_VERSION (3, 0, 0) vbox = gtk_vbox_new (FALSE, 12); gtk_container_set_border_width (GTK_CONTAINER (vbox), 5); gtk_container_add (GTK_CONTAINER (dialog_vbox), vbox); #endif inner_vbox = gtk_vbox_new (FALSE, 6); #if GTK_CHECK_VERSION (3, 0, 0) gtk_box_pack_start (GTK_BOX (dialog_vbox), inner_vbox, TRUE, TRUE, 0); #else gtk_box_pack_start (GTK_BOX (vbox), inner_vbox, TRUE, TRUE, 0); #endif find_hbox = gtk_hbox_new (FALSE, 6); gtk_box_pack_start (GTK_BOX (inner_vbox), find_hbox, FALSE, FALSE, 0); dialog->label = gtk_label_new_with_mnemonic (""); gtk_misc_set_alignment (GTK_MISC (dialog->label), 0.0, 0.5); gtk_label_set_use_markup (GTK_LABEL (dialog->label), TRUE); gtk_box_pack_start (GTK_BOX (find_hbox), dialog->label, FALSE, FALSE, 0); dialog->search_entry = gtk_entry_new (); g_signal_connect (G_OBJECT (dialog->search_entry), "changed", G_CALLBACK (panel_addto_search_entry_changed), dialog); g_signal_connect (G_OBJECT (dialog->search_entry), "activate", G_CALLBACK (panel_addto_search_entry_activated), dialog); gtk_box_pack_end (GTK_BOX (find_hbox), dialog->search_entry, TRUE, TRUE, 0); gtk_label_set_mnemonic_widget (GTK_LABEL (dialog->label), dialog->search_entry); sw = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw), GTK_SHADOW_IN); gtk_box_pack_start (GTK_BOX (inner_vbox), sw, TRUE, TRUE, 0); dialog->tree_view = gtk_tree_view_new (); gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (dialog->tree_view), FALSE); gtk_tree_view_expand_all (GTK_TREE_VIEW (dialog->tree_view)); renderer = g_object_new (GTK_TYPE_CELL_RENDERER_PIXBUF, "xpad", 4, "ypad", 4, NULL); gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (dialog->tree_view), -1, NULL, renderer, "pixbuf", COLUMN_ICON, NULL); renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "ellipsize", PANGO_ELLIPSIZE_END, NULL); gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (dialog->tree_view), -1, NULL, renderer, "markup", COLUMN_TEXT, NULL); //FIXME use the same search than the one for the search entry? gtk_tree_view_set_search_column (GTK_TREE_VIEW (dialog->tree_view), COLUMN_SEARCH); gtk_tree_view_set_row_separator_func (GTK_TREE_VIEW (dialog->tree_view), panel_addto_separator_func, GINT_TO_POINTER (COLUMN_TEXT), NULL); selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (dialog->tree_view)); gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE); column = gtk_tree_view_get_column (GTK_TREE_VIEW (dialog->tree_view), COLUMN_TEXT); gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_FIXED); g_signal_connect (selection, "changed", G_CALLBACK (panel_addto_selection_changed), dialog); g_signal_connect (dialog->tree_view, "row-activated", G_CALLBACK (panel_addto_selection_activated), dialog); gtk_container_add (GTK_CONTAINER (sw), dialog->tree_view); #if GTK_CHECK_VERSION (3, 0, 0) gtk_widget_show_all (dialog_vbox); #else gtk_widget_show_all (vbox); #endif panel_toplevel_push_autohide_disabler (dialog->panel_widget->toplevel); panel_widget_register_open_dialog (panel_widget, dialog->addto_dialog); panel_addto_name_change (dialog, panel_toplevel_get_name (dialog->panel_widget->toplevel)); return dialog; }
static void selectioninfo_real (XeditDocument *doc, DocInfoDialog *dialog) { gboolean sel; GtkTextIter start, end; gint words = 0; gint chars = 0; gint white_chars = 0; gint lines = 0; gint bytes = 0; gchar *tmp_str; xedit_debug (DEBUG_PLUGINS); sel = gtk_text_buffer_get_selection_bounds (GTK_TEXT_BUFFER (doc), &start, &end); if (sel) { lines = gtk_text_iter_get_line (&end) - gtk_text_iter_get_line (&start) + 1; calculate_info (doc, &start, &end, &chars, &words, &white_chars, &bytes); xedit_debug_message (DEBUG_PLUGINS, "Selected chars: %d", chars); xedit_debug_message (DEBUG_PLUGINS, "Selected lines: %d", lines); xedit_debug_message (DEBUG_PLUGINS, "Selected words: %d", words); xedit_debug_message (DEBUG_PLUGINS, "Selected chars non-space: %d", chars - white_chars); xedit_debug_message (DEBUG_PLUGINS, "Selected bytes: %d", bytes); gtk_widget_set_sensitive (dialog->selection_vbox, TRUE); } else { gtk_widget_set_sensitive (dialog->selection_vbox, FALSE); xedit_debug_message (DEBUG_PLUGINS, "Selection empty"); } if (chars == 0) lines = 0; tmp_str = g_strdup_printf("%d", lines); gtk_label_set_text (GTK_LABEL (dialog->selected_lines_label), tmp_str); g_free (tmp_str); tmp_str = g_strdup_printf("%d", words); gtk_label_set_text (GTK_LABEL (dialog->selected_words_label), tmp_str); g_free (tmp_str); tmp_str = g_strdup_printf("%d", chars); gtk_label_set_text (GTK_LABEL (dialog->selected_chars_label), tmp_str); g_free (tmp_str); tmp_str = g_strdup_printf("%d", chars - white_chars); gtk_label_set_text (GTK_LABEL (dialog->selected_chars_ns_label), tmp_str); g_free (tmp_str); tmp_str = g_strdup_printf("%d", bytes); gtk_label_set_text (GTK_LABEL (dialog->selected_bytes_label), tmp_str); g_free (tmp_str); }
void SludgeProjectManager::postOpen() { listChanged(FILE_TREEVIEW); setupButtons(); gtk_widget_set_sensitive(projectRunGameItem, FALSE); }
static void prefs_message_create_widget(PrefsPage *_page, GtkWindow *window, gpointer data) { MessagePage *prefs_message = (MessagePage *) _page; GtkWidget *vbox1; GtkWidget *vbox2; GtkWidget *hbox1; GtkWidget *checkbtn_disphdrpane; GtkWidget *checkbtn_disphdr; GtkWidget *checkbtn_dispxface; GtkWidget *button_edit_disphdr; GtkWidget *checkbtn_html; GtkWidget *checkbtn_html_plugin; GtkWidget *checkbtn_promote_html_part; GtkWidget *hbox_linespc; GtkWidget *label_linespc; GtkAdjustment *spinbtn_linespc_adj; GtkWidget *spinbtn_linespc; GtkWidget *frame; GtkWidget *vbox_scr; GtkWidget *checkbtn_smoothscroll; GtkWidget *hbox_scr; GtkWidget *label_scr; GtkAdjustment *spinbtn_scrollstep_adj; GtkWidget *spinbtn_scrollstep; GtkWidget *checkbtn_halfpage; GtkWidget *checkbtn_hide_quoted; GtkWidget *checkbtn_attach_desc; GtkWidget *frame_quote; GtkWidget *hbox2; GtkWidget *vbox_quote; GtkWidget *entry_quote_chars; GtkWidget *label_quote_chars; vbox1 = gtk_vbox_new (FALSE, VSPACING); gtk_widget_show (vbox1); gtk_container_set_border_width (GTK_CONTAINER (vbox1), VBOX_BORDER); vbox2 = gtkut_get_options_frame(vbox1, &frame, _("Headers")); PACK_CHECK_BUTTON(vbox2, checkbtn_disphdrpane, _("Display header pane above message view")); #if HAVE_LIBCOMPFACE PACK_CHECK_BUTTON(vbox2, checkbtn_dispxface, _("Display (X-)Face in message view")); #else PACK_CHECK_BUTTON(vbox2, checkbtn_dispxface, _("Display Face in message view")); #endif gtk_widget_set_sensitive(checkbtn_dispxface, !prefs_common.display_header_pane); g_signal_connect(G_OBJECT(checkbtn_disphdrpane), "toggled", G_CALLBACK(disphdr_pane_toggled), checkbtn_dispxface); hbox1 = gtk_hbox_new (FALSE, 8); gtk_widget_show (hbox1); gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, TRUE, 0); PACK_CHECK_BUTTON(hbox1, checkbtn_disphdr, _("Display headers in message view")); button_edit_disphdr = gtk_button_new_from_stock(GTK_STOCK_EDIT); gtk_widget_show (button_edit_disphdr); gtk_box_pack_start (GTK_BOX (hbox1), button_edit_disphdr, FALSE, TRUE, 0); g_signal_connect (G_OBJECT (button_edit_disphdr), "clicked", G_CALLBACK (prefs_display_header_open), NULL); SET_TOGGLE_SENSITIVITY(checkbtn_disphdr, button_edit_disphdr); vbox2 = gtkut_get_options_frame(vbox1, &frame, _("HTML messages")); PACK_CHECK_BUTTON(vbox2, checkbtn_html, _("Render HTML messages as text")); PACK_CHECK_BUTTON(vbox2, checkbtn_html_plugin, _("Render HTML-only messages with plugin if possible")); PACK_CHECK_BUTTON(vbox2, checkbtn_promote_html_part, _("Select the HTML part of multipart/alternative messages")); hbox1 = gtk_hbox_new (FALSE, 32); gtk_widget_show (hbox1); gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, TRUE, 0); hbox_linespc = gtk_hbox_new (FALSE, 8); gtk_widget_show (hbox1); gtk_box_pack_start (GTK_BOX (hbox1), hbox_linespc, FALSE, TRUE, 0); label_linespc = gtk_label_new (_("Line space")); gtk_widget_show (label_linespc); gtk_box_pack_start (GTK_BOX (hbox_linespc), label_linespc, FALSE, FALSE, 0); spinbtn_linespc_adj = GTK_ADJUSTMENT(gtk_adjustment_new (2, 0, 16, 1, 1, 0)); spinbtn_linespc = gtk_spin_button_new (GTK_ADJUSTMENT (spinbtn_linespc_adj), 1, 0); gtk_widget_show (spinbtn_linespc); gtk_box_pack_start (GTK_BOX (hbox_linespc), spinbtn_linespc, FALSE, FALSE, 0); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbtn_linespc), TRUE); label_linespc = gtk_label_new (_("pixels")); gtk_widget_show (label_linespc); gtk_box_pack_start (GTK_BOX (hbox_linespc), label_linespc, FALSE, FALSE, 0); gtk_widget_show_all (hbox1); vbox_scr = gtkut_get_options_frame(vbox1, &frame, _("Scroll")); PACK_CHECK_BUTTON(vbox_scr, checkbtn_halfpage, _("Half page")); hbox1 = gtk_hbox_new (FALSE, 32); gtk_widget_show (hbox1); gtk_box_pack_start (GTK_BOX (vbox_scr), hbox1, FALSE, TRUE, 0); PACK_CHECK_BUTTON(hbox1, checkbtn_smoothscroll, _("Smooth scroll")); hbox_scr = gtk_hbox_new (FALSE, 8); gtk_widget_show (hbox_scr); gtk_box_pack_start (GTK_BOX (hbox1), hbox_scr, FALSE, FALSE, 0); label_scr = gtk_label_new (_("Step")); gtk_widget_show (label_scr); gtk_box_pack_start (GTK_BOX (hbox_scr), label_scr, FALSE, FALSE, 0); spinbtn_scrollstep_adj = GTK_ADJUSTMENT(gtk_adjustment_new (1, 1, 100, 1, 10, 0)); spinbtn_scrollstep = gtk_spin_button_new (GTK_ADJUSTMENT (spinbtn_scrollstep_adj), 1, 0); gtk_widget_show (spinbtn_scrollstep); gtk_box_pack_start (GTK_BOX (hbox_scr), spinbtn_scrollstep, FALSE, FALSE, 0); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbtn_scrollstep), TRUE); label_scr = gtk_label_new (_("pixels")); gtk_widget_show (label_scr); gtk_box_pack_start (GTK_BOX (hbox_scr), label_scr, FALSE, FALSE, 0); SET_TOGGLE_SENSITIVITY (checkbtn_smoothscroll, hbox_scr) PACK_CHECK_BUTTON(vbox1, checkbtn_attach_desc, _("Show attachment descriptions (rather than names)")); /* quote chars */ PACK_FRAME (vbox1, frame_quote, _("Quotation")); vbox_quote = gtk_vbox_new (FALSE, VSPACING_NARROW); gtk_widget_show (vbox_quote); gtk_container_add (GTK_CONTAINER (frame_quote), vbox_quote); gtk_container_set_border_width (GTK_CONTAINER (vbox_quote), 8); hbox1 = gtk_hbox_new (FALSE, 32); gtk_widget_show (hbox1); PACK_CHECK_BUTTON(vbox_quote, checkbtn_hide_quoted, _("Collapse quoted text on double click")); gtk_box_pack_start (GTK_BOX (vbox_quote), hbox1, FALSE, FALSE, 0); hbox2 = gtk_hbox_new (FALSE, 8); gtk_widget_show (hbox2); gtk_box_pack_start (GTK_BOX (hbox1), hbox2, FALSE, FALSE, 0); label_quote_chars = gtk_label_new (_("Treat these characters as quotation marks")); gtk_widget_show (label_quote_chars); gtk_box_pack_start (GTK_BOX (hbox2), label_quote_chars, FALSE, FALSE, 0); entry_quote_chars = gtk_entry_new (); gtk_widget_show (entry_quote_chars); gtk_box_pack_start (GTK_BOX (hbox2), entry_quote_chars, FALSE, FALSE, 0); gtk_widget_set_size_request (entry_quote_chars, 64, -1); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_disphdrpane), prefs_common.display_header_pane); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_dispxface), prefs_common.display_xface); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_disphdr), prefs_common.display_header); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_html), prefs_common.render_html); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_html_plugin), prefs_common.invoke_plugin_on_html); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_promote_html_part), prefs_common.promote_html_part); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_smoothscroll), prefs_common.enable_smooth_scroll); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_hide_quoted), prefs_common.hide_quoted); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_halfpage), prefs_common.scroll_halfpage); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_attach_desc), prefs_common.attach_desc); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbtn_linespc), prefs_common.line_space); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbtn_scrollstep), prefs_common.scroll_step); gtk_entry_set_text(GTK_ENTRY(entry_quote_chars), prefs_common.quote_chars?prefs_common.quote_chars:""); prefs_message->window = GTK_WIDGET(window); prefs_message->checkbtn_disphdrpane = checkbtn_disphdrpane; prefs_message->checkbtn_dispxface = checkbtn_dispxface; prefs_message->checkbtn_disphdr = checkbtn_disphdr; prefs_message->checkbtn_html = checkbtn_html; prefs_message->checkbtn_html_plugin = checkbtn_html_plugin; prefs_message->checkbtn_promote_html_part = checkbtn_promote_html_part; prefs_message->spinbtn_linespc = spinbtn_linespc; prefs_message->checkbtn_smoothscroll = checkbtn_smoothscroll; prefs_message->checkbtn_hide_quoted = checkbtn_hide_quoted; prefs_message->spinbtn_scrollstep = spinbtn_scrollstep; prefs_message->checkbtn_halfpage = checkbtn_halfpage; prefs_message->checkbtn_attach_desc = checkbtn_attach_desc; prefs_message->entry_quote_chars = entry_quote_chars; prefs_message->page.widget = vbox1; }
static void gconf_bookmarks_dialog_init (GConfBookmarksDialog *dialog) { GtkWidget *scrolled_window, *hbox, *vbox; GtkWidget *content_area; GtkCellRenderer *cell; GtkTreeViewColumn *column; GConfClient *client; hbox = gtk_hbox_new (FALSE, 6); gtk_container_set_border_width (GTK_CONTAINER (hbox), 5); content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog)); gtk_container_set_border_width (GTK_CONTAINER (dialog), 5); gtk_box_set_spacing (GTK_BOX (content_area), 2); gtk_window_set_destroy_with_parent (GTK_WINDOW (dialog), TRUE); gtk_window_set_default_size (GTK_WINDOW (dialog), 300, 200); gtk_dialog_add_button (GTK_DIALOG (dialog), GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE); gtk_window_set_title (GTK_WINDOW (dialog), _("Edit Bookmarks")); dialog->list_store = gtk_list_store_new (1, G_TYPE_STRING); g_signal_connect (dialog->list_store, "row_deleted", G_CALLBACK (gconf_bookmarks_dialog_row_deleted), dialog); scrolled_window = gtk_scrolled_window_new (NULL, NULL); gtk_box_pack_start (GTK_BOX (hbox), scrolled_window, TRUE, TRUE, 0); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled_window), GTK_SHADOW_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); dialog->tree_view = gtk_tree_view_new_with_model (GTK_TREE_MODEL (dialog->list_store)); gtk_tree_view_set_reorderable (GTK_TREE_VIEW (dialog->tree_view), TRUE); g_signal_connect (gtk_tree_view_get_selection (GTK_TREE_VIEW (dialog->tree_view)), "changed", G_CALLBACK (gconf_bookmarks_dialog_selection_changed), dialog); gconf_bookmarks_dialog_populate_model (dialog); column = gtk_tree_view_column_new (); cell = gtk_cell_renderer_pixbuf_new (); g_object_set (G_OBJECT (cell), "stock-id", STOCK_BOOKMARK, NULL); gtk_tree_view_column_pack_start (column, cell, FALSE); cell = gtk_cell_renderer_text_new (); gtk_tree_view_column_pack_start (column, cell, TRUE); gtk_tree_view_column_set_attributes (column, cell, "text", 0, NULL); gtk_tree_view_append_column (GTK_TREE_VIEW (dialog->tree_view), column); gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (dialog->tree_view), FALSE); g_object_unref (dialog->list_store); gtk_container_add (GTK_CONTAINER (scrolled_window), dialog->tree_view); vbox = gtk_vbox_new (FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox), vbox, FALSE, FALSE, 0); dialog->delete_button = gtk_button_new_from_stock (GTK_STOCK_DELETE); gtk_widget_set_sensitive (dialog->delete_button, FALSE); g_signal_connect (dialog->delete_button, "clicked", G_CALLBACK (gconf_bookmarks_dialog_delete_bookmark), dialog); gtk_box_pack_start (GTK_BOX (vbox), dialog->delete_button, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (content_area), hbox, TRUE, TRUE, 0); gtk_widget_show_all (hbox); /* Listen for gconf changes */ client = gconf_client_get_default (); gconf_client_add_dir (client, BOOKMARKS_KEY, GCONF_CLIENT_PRELOAD_NONE, NULL); dialog->notify_id = gconf_client_notify_add (client, BOOKMARKS_KEY, gconf_bookmarks_dialog_bookmarks_key_changed, dialog, NULL, NULL); g_object_unref (client); }
int buhkomw_r(class buhkomw_rr *datark,GtkWidget *wpredok) { char strsql[512]; iceb_u_str repl; class buhkomw_r_data data; data.rk=datark; data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_default_size (GTK_WINDOW (data.window),400,-1); sprintf(strsql,"%s %s",name_system,gettext("Распечатать отчёт по комментариям")); gtk_window_set_title(GTK_WINDOW(data.window),strsql); gtk_signal_connect(GTK_OBJECT(data.window),"delete_event",GTK_SIGNAL_FUNC(gtk_widget_destroy),NULL); gtk_signal_connect(GTK_OBJECT(data.window),"destroy",GTK_SIGNAL_FUNC(gtk_main_quit),NULL); gtk_signal_connect_after(GTK_OBJECT(data.window),"key_press_event",GTK_SIGNAL_FUNC(buhkomw_r_key_press),&data); if(wpredok != NULL) { gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR_GDITE)); //Удерживать окно над породившем его окном всегда gtk_window_set_transient_for(GTK_WINDOW(data.window),GTK_WINDOW(wpredok)); //Закрыть окно если окно предок удалено gtk_window_set_destroy_with_parent(GTK_WINDOW(data.window),TRUE); } GtkWidget *vbox=gtk_vbox_new(FALSE, 2); gtk_container_add(GTK_CONTAINER(data.window), vbox); data.label=gtk_label_new(gettext("Ждите !!!")); gtk_box_pack_start(GTK_BOX(vbox),data.label,FALSE,FALSE,0); repl.plus(gettext("Распечатать отчёт по комментариям")); sprintf(strsql,"%s:%s %s\n",gettext("База данных"),imabaz,organ); repl.ps_plus(strsql); GtkWidget *label=gtk_label_new(repl.ravno_toutf()); gtk_box_pack_start(GTK_BOX(vbox),label,FALSE,FALSE,0); data.view=gtk_text_view_new(); gtk_widget_set_usize(GTK_WIDGET(data.view),450,300); gtk_text_view_set_editable(GTK_TEXT_VIEW(data.view),FALSE); //Запрет на редактирование текста //PangoFontDescription *font_pango=pango_font_description_from_string("Nimbus Mono L, Bold 12"); PangoFontDescription *font_pango=pango_font_description_from_string(shrift_ravnohir.ravno()); gtk_widget_modify_font(GTK_WIDGET(data.view),font_pango); pango_font_description_free(font_pango); data.buffer=gtk_text_view_get_buffer(GTK_TEXT_VIEW(data.view)); GtkWidget *sw=gtk_scrolled_window_new(NULL,NULL); //gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw),GTK_SHADOW_ETCHED_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),GTK_POLICY_AUTOMATIC,GTK_POLICY_AUTOMATIC); //gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),GTK_POLICY_ALWAYS,GTK_POLICY_ALWAYS); gtk_box_pack_start (GTK_BOX (vbox), sw, TRUE, TRUE, 0); gtk_container_add(GTK_CONTAINER(sw),data.view); data.bar=gtk_progress_bar_new(); gtk_progress_bar_set_bar_style(GTK_PROGRESS_BAR(data.bar),GTK_PROGRESS_CONTINUOUS); gtk_progress_bar_set_orientation(GTK_PROGRESS_BAR(data.bar),GTK_PROGRESS_LEFT_TO_RIGHT); gtk_box_pack_start (GTK_BOX (vbox), data.bar, FALSE, FALSE, 2); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka=gtk_button_new_with_label(strsql); GtkTooltips *tooltops=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltops,data.knopka,gettext("Завершение работы в этом окне"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka),"clicked",GTK_SIGNAL_FUNC(buhkomw_r_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka),(gpointer)0); gtk_box_pack_start (GTK_BOX (vbox), data.knopka, FALSE, FALSE, 2); gtk_widget_set_sensitive(GTK_WIDGET(data.knopka),FALSE);//Недоступна gtk_widget_show_all(data.window); //gtk_window_set_decorated(GTK_WINDOW(data.window),FALSE); //Убирает рамку вокруг окна //gtk_widget_set_sensitive(GTK_WIDGET(data.knopka),FALSE);//Недоступна gtk_idle_add((GtkFunction)buhkomw_r1,&data); gtk_main(); if(wpredok != NULL) gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR)); return(data.voz); }
static void set_up (EmpathyGroupsWidget *self) { EmpathyGroupsWidgetPriv *priv; GtkWidget *label, *alignment; GtkBox *vbox, *hbox; GtkTreeView *tree_view; GtkTreeSelection *selection; GtkTreeViewColumn *column; GtkCellRenderer *renderer; guint col_offset; GtkScrolledWindow *scrolled_window; gchar *markup; priv = GET_PRIV (self); /* Set up ourself */ gtk_orientable_set_orientation (GTK_ORIENTABLE (self), GTK_ORIENTATION_VERTICAL); gtk_box_set_spacing (GTK_BOX (self), 6); /* Create our child widgets */ label = gtk_label_new (NULL); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); markup = g_strdup_printf ("<b>%s</b>", _("Groups")); gtk_label_set_markup (GTK_LABEL (label), markup); g_free (markup); gtk_box_pack_start (GTK_BOX (self), label, FALSE, FALSE, 0); gtk_widget_show (label); alignment = gtk_alignment_new (0.5, 0.5, 1.0, 1.0); gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 0, 0, 12, 0); vbox = GTK_BOX (gtk_box_new (GTK_ORIENTATION_VERTICAL, 6)); label = gtk_label_new (_("Select the groups you want this contact to appear " "in. Note that you can select more than one group or no groups.")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); gtk_box_pack_start (vbox, label, FALSE, FALSE, 0); gtk_widget_show (label); hbox = GTK_BOX (gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12)); priv->add_group_entry = gtk_entry_new (); g_signal_connect (priv->add_group_entry, "changed", (GCallback) add_group_entry_changed_cb, self); g_signal_connect (priv->add_group_entry, "activate", (GCallback) add_group_entry_activate_cb, self); gtk_box_pack_start (hbox, priv->add_group_entry, TRUE, TRUE, 0); gtk_widget_show (priv->add_group_entry); priv->add_group_button = gtk_button_new_with_mnemonic (_("_Add Group")); gtk_widget_set_sensitive (priv->add_group_button, FALSE); gtk_widget_set_receives_default (priv->add_group_button, TRUE); g_signal_connect (priv->add_group_button, "clicked", (GCallback) add_group_button_clicked_cb, self); gtk_box_pack_start (hbox, priv->add_group_button, FALSE, FALSE, 0); gtk_widget_show (priv->add_group_button); gtk_box_pack_start (vbox, GTK_WIDGET (hbox), FALSE, FALSE, 0); gtk_widget_show (GTK_WIDGET (hbox)); scrolled_window = GTK_SCROLLED_WINDOW (gtk_scrolled_window_new (NULL, NULL)); gtk_scrolled_window_set_policy (scrolled_window, GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type (scrolled_window, GTK_SHADOW_IN); gtk_widget_set_size_request (GTK_WIDGET (scrolled_window), -1, 100); priv->group_store = gtk_list_store_new (NUM_COLUMNS, G_TYPE_STRING, /* name */ G_TYPE_BOOLEAN, /* enabled */ G_TYPE_BOOLEAN); /* editable */ tree_view = GTK_TREE_VIEW (gtk_tree_view_new_with_model ( GTK_TREE_MODEL (priv->group_store))); gtk_tree_view_set_headers_visible (tree_view, FALSE); gtk_tree_view_set_enable_search (tree_view, FALSE); selection = gtk_tree_view_get_selection (tree_view); gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE); renderer = gtk_cell_renderer_toggle_new (); g_signal_connect (renderer, "toggled", (GCallback) cell_toggled_cb, self); column = gtk_tree_view_column_new_with_attributes ( C_("verb in a column header displaying group names", "Select"), renderer, "active", COL_ENABLED, NULL); gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_FIXED); gtk_tree_view_column_set_fixed_width (column, 50); gtk_tree_view_append_column (tree_view, column); renderer = gtk_cell_renderer_text_new (); col_offset = gtk_tree_view_insert_column_with_attributes (tree_view, -1, _("Group"), renderer, "text", COL_NAME, /* "editable", COL_EDITABLE, */ NULL); column = gtk_tree_view_get_column (tree_view, col_offset - 1); gtk_tree_view_column_set_sort_column_id (column, COL_NAME); gtk_tree_view_column_set_resizable (column, FALSE); gtk_tree_view_column_set_clickable (GTK_TREE_VIEW_COLUMN (column), TRUE); gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (priv->group_store), COL_NAME, GTK_SORT_ASCENDING); gtk_container_add (GTK_CONTAINER (scrolled_window), GTK_WIDGET (tree_view)); gtk_widget_show (GTK_WIDGET (tree_view)); gtk_box_pack_start (vbox, GTK_WIDGET (scrolled_window), TRUE, TRUE, 0); gtk_widget_show (GTK_WIDGET (scrolled_window)); gtk_container_add (GTK_CONTAINER (alignment), GTK_WIDGET (vbox)); gtk_widget_show (GTK_WIDGET (vbox)); gtk_box_pack_start (GTK_BOX (self), alignment, TRUE, TRUE, 0); gtk_widget_show (alignment); }
gint buhkomw_r1(class buhkomw_r_data *data) { iceb_clock sss(data->window); time_t vremn; time(&vremn); char strsql[1024]; iceb_u_str repl; short dn,mn,gn; short dk,mk,gk; if(iceb_rsdatp(&dn,&mn,&gn,data->rk->datan.ravno(),&dk,&mk,&gk,data->rk->datak.ravno(),data->window) != 0) { sss.clear_data(); gtk_widget_destroy(data->window); return(FALSE); } sprintf(strsql,"%d.%d.%d => %d.%d.%d\n",dn,mn,gn,dk,mk,gk); iceb_printw(strsql,data->buffer,data->view); SQL_str row_alx; class SQLCURSOR cur_alx; int kolstr=0; sprintf(strsql,"select str from Alx where fil='buhkom.alx' order by ns asc"); if((kolstr=cur_alx.make_cursor(&bd,strsql)) < 0) { iceb_msql_error(&bd,gettext("Ошибка создания курсора !"),strsql,data->window); sss.clear_data(); gtk_widget_destroy(data->window); return(FALSE); } if(kolstr == 0) { sprintf(strsql,"%s %s!",gettext("Не найдена настройка"),"buhkom.alx"); iceb_menu_soob(strsql,data->window); sss.clear_data(); gtk_widget_destroy(data->window); return(FALSE); } class iceb_u_spisok koment; char bros[500]; while(cur_alx.read_cursor(&row_alx) != 0) { if(row_alx[0][0] == '#') continue; if(iceb_u_polen(row_alx[0],bros,sizeof(bros),1,'|') != 0) continue; koment.plus(bros); } int kol_koment=koment.kolih(); if(kol_koment == 0) { iceb_menu_soob(gettext("Не найдено ни одной настройки !"),data->window); sss.clear_data(); gtk_widget_destroy(data->window); return(FALSE); } SQL_str row; SQLCURSOR cur; sprintf(strsql,"select sh,shk,deb,kre,komen from Prov \ where val=0 and datp >= '%d-%02d-%02d' and \ datp <= '%d-%02d-%02d' and komen <> ''",gn,mn,dn,gk,mk,dk); if((kolstr=cur.make_cursor(&bd,strsql)) < 0) { iceb_msql_error(&bd,gettext("Ошибка создания курсора !"),strsql,data->window); sss.clear_data(); gtk_widget_destroy(data->window); } if(kolstr == 0) { iceb_menu_soob(gettext("Не найдено проводок !"),data->window); sss.clear_data(); gtk_widget_destroy(data->window); return(FALSE); } int nomer=0; float kolstr1=0.; class iceb_u_spisok sh_shk_kom; double deb,kre; iceb_u_double debet; iceb_u_double kredit; while(cur.read_cursor(&row) != 0) { // printw("%s %s %s %s %s\n",row[0],row[1],row[2],row[3],row[4]); // refresh(); // strzag(LINES-1,0,kolstr,++kolstr1); iceb_pbar(data->bar,kolstr,++kolstr1); if(iceb_u_proverka(data->rk->shet.ravno(),row[0],0,0) != 0) continue; // if(iceb_u_proverka(sheta,row[1],0,0) != 0) // continue; if((nomer=prov_kom(&koment,row[4],kol_koment)) < 0) continue; // printw("Подходит %s\n",koment.ravno(nomer)); // OSTANOV(); deb=atof(row[2]); kre=atof(row[3]); sprintf(strsql,"%s|%s|%s",row[0],koment.ravno(nomer),row[1]); if((nomer=sh_shk_kom.find(strsql)) < 0) sh_shk_kom.plus(strsql); debet.plus(deb,nomer); kredit.plus(kre,nomer); } int kol_shet=sh_shk_kom.kolih(); if(kol_shet == 0) { iceb_menu_soob(gettext("Не найдено ни одной проводки с указанными комментариями !"),data->window); sss.clear_data(); gtk_widget_destroy(data->window); return(FALSE); } char imaf_sort[40]; sprintf(imaf_sort,"kom%d.tmp",getpid()); FILE *ff; if((ff = fopen(imaf_sort,"w")) == NULL) { iceb_er_op_fil(imaf_sort,"",errno,data->window); sss.clear_data(); gtk_widget_destroy(data->window); return(FALSE); } for(int i=0; i < kol_shet ; i++) fprintf(ff,"%s|%.2f|%.2f|\n",sh_shk_kom.ravno(i),debet.ravno(i),kredit.ravno(i)); fclose(ff); //sprintf(strsql,"sort -o %s -t\\| +0 -1 +1 -2 %s",imaf_sort,imaf_sort); sprintf(strsql,"sort -o %s -t\\| -k1,2 -k2,3 %s",imaf_sort,imaf_sort); system(strsql); FILE *ff_sort; if((ff_sort = fopen(imaf_sort,"r")) == NULL) { iceb_er_op_fil(imaf_sort,"",errno,data->window); sss.clear_data(); gtk_widget_destroy(data->window); return(FALSE); } unlink(imaf_sort); char imaf[40]; sprintf(imaf,"kom%d.lst",getpid()); if((ff = fopen(imaf,"w")) == NULL) { iceb_er_op_fil(imaf,"",errno,data->window); sss.clear_data(); gtk_widget_destroy(data->window); return(FALSE); } data->rk->imaf.new_plus(imaf); data->rk->naimf.new_plus(gettext("Свод по комментариям (дебет и кредит)")); iceb_u_zagolov(gettext("Отчёт по комментариям"),dn,mn,gn,dk,mk,gk,organ,ff); if(data->rk->shet.getdlinna() > 1) fprintf(ff,"%s:%s\n",gettext("Счёт"),data->rk->shet.ravno()); char shet[32]; char shet_z[32]; char shetk[32]; char komentar[512]; char komentar_z[512]; double ideb=0.,ikre=0.; double idebk=0.,ikrek=0.; char stroka[1024]; char naim[512]; memset(shet_z,'\0',sizeof(shet_z)); memset(komentar_z,'\0',sizeof(komentar_z)); //распечатываем дебет и кредит idebk=ikrek=0.; ideb=ikre=0.; while(fgets(stroka,sizeof(stroka),ff_sort) != NULL) { iceb_u_polen(stroka,shet,sizeof(shet),1,'|'); iceb_u_polen(stroka,komentar,sizeof(komentar),2,'|'); iceb_u_polen(stroka,shetk,sizeof(shetk),3,'|'); iceb_u_polen(stroka,strsql,sizeof(strsql),4,'|'); deb=atof(strsql); iceb_u_polen(stroka,strsql,sizeof(strsql),5,'|'); kre=atof(strsql); if(iceb_u_SRAV(komentar_z,komentar,0) != 0) { if(komentar_z[0] != '\0') buhkom_it(0,idebk,ikrek,ff); idebk=ikrek=0.; strcpy(komentar_z,komentar); } if(iceb_u_SRAV(shet,shet_z,0) != 0) { if(shet_z[0] != '\0') { if(idebk != 0. || ikrek != 0.) { buhkom_it(0,idebk,ikrek,ff); idebk=ikrek=0.; } buhkom_it(1,ideb,ikre,ff); } memset(naim,'\0',sizeof(naim)); sprintf(strsql,"select nais from Plansh where ns='%s'",shet); if(sql_readkey(&bd,strsql,&row,&cur) == 1) strncpy(naim,row[0],sizeof(naim)-1); buhkom_sh(shet,naim,ff); ideb=ikre=0.; strcpy(shet_z,shet); } fprintf(ff,"%-*s %-*s %10.2f %10.2f\n", iceb_u_kolbait(10,komentar),komentar, iceb_u_kolbait(7,shetk),shetk, deb,kre); ideb+=deb; ikre+=kre; idebk+=deb; ikrek+=kre; } buhkom_it(0,idebk,ikrek,ff); buhkom_it(1,ideb,ikre,ff); iceb_podpis(ff,data->window); fclose(ff); rewind(ff_sort); char imaf_deb[40]; sprintf(imaf_deb,"komd%d.lst",getpid()); if((ff = fopen(imaf_deb,"w")) == NULL) { iceb_er_op_fil(imaf_deb,"",errno,data->window); sss.clear_data(); gtk_widget_destroy(data->window); return(FALSE); } data->rk->imaf.plus(imaf_deb); data->rk->naimf.plus(gettext("Свод по комментариям (дебет)")); iceb_u_zagolov(gettext("Отчёт по комментариям"),dn,mn,gn,dk,mk,gk,organ,ff); if(data->rk->shet.getdlinna() > 1) fprintf(ff,"%s:%s\n",gettext("Счёт"),data->rk->shet.ravno()); memset(shet_z,'\0',sizeof(shet_z)); memset(komentar_z,'\0',sizeof(komentar_z)); //распечатываем дебет while(fgets(stroka,sizeof(stroka),ff_sort) != NULL) { iceb_u_polen(stroka,strsql,sizeof(strsql),4,'|'); deb=atof(strsql); if(deb == 0.) continue; iceb_u_polen(stroka,shet,sizeof(shet),1,'|'); iceb_u_polen(stroka,komentar,sizeof(komentar),2,'|'); iceb_u_polen(stroka,shetk,sizeof(shetk),3,'|'); if(iceb_u_SRAV(komentar_z,komentar,0) != 0) { if(komentar_z[0] != '\0') buhkom_it_dk(0,idebk,ff); idebk=ikrek=0.; strcpy(komentar_z,komentar); } if(iceb_u_SRAV(shet,shet_z,0) != 0) { if(shet_z[0] != '\0') { if(idebk != 0. || ikrek != 0.) { buhkom_it_dk(0,idebk,ff); idebk=ikrek=0.; } buhkom_it_dk(1,ideb,ff); } memset(naim,'\0',sizeof(naim)); sprintf(strsql,"select nais from Plansh where ns='%s'",shet); if(sql_readkey(&bd,strsql,&row,&cur) == 1) strncpy(naim,row[0],sizeof(naim)-1); buhkom_sh_deb(shet,naim,ff); ideb=ikre=0.; strcpy(shet_z,shet); } fprintf(ff,"%-*s %-*s %10.2f\n", iceb_u_kolbait(10,komentar),komentar, iceb_u_kolbait(7,shetk),shetk,deb); ideb+=deb; idebk+=deb; } buhkom_it_dk(0,idebk,ff); buhkom_it_dk(1,ideb,ff); iceb_podpis(ff,data->window); fclose(ff); rewind(ff_sort); char imaf_kre[40]; sprintf(imaf_kre,"komk%d.lst",getpid()); if((ff = fopen(imaf_kre,"w")) == NULL) { iceb_er_op_fil(imaf_kre,"",errno,data->window); sss.clear_data(); gtk_widget_destroy(data->window); return(FALSE); } data->rk->imaf.plus(imaf_kre); data->rk->naimf.plus(gettext("Свод по комментариям (кредит)")); iceb_u_zagolov(gettext("Отчёт по комментариям"),dn,mn,gn,dk,mk,gk,organ,ff); if(data->rk->shet.getdlinna() > 1) fprintf(ff,"%s:%s\n",gettext("Счёт"),data->rk->shet.ravno()); memset(shet_z,'\0',sizeof(shet_z)); memset(komentar_z,'\0',sizeof(komentar_z)); //распечатываем кредит while(fgets(stroka,sizeof(stroka),ff_sort) != NULL) { iceb_u_polen(stroka,strsql,sizeof(strsql),5,'|'); kre=atof(strsql); if(kre == 0.) continue; iceb_u_polen(stroka,shet,sizeof(shet),1,'|'); iceb_u_polen(stroka,komentar,sizeof(komentar),2,'|'); iceb_u_polen(stroka,shetk,sizeof(shetk),3,'|'); if(iceb_u_SRAV(komentar_z,komentar,0) != 0) { if(komentar_z[0] != '\0') buhkom_it_dk(0,ikrek,ff); ikrek=0.; strcpy(komentar_z,komentar); } if(iceb_u_SRAV(shet,shet_z,0) != 0) { if(shet_z[0] != '\0') { if(ikrek != 0.) { buhkom_it_dk(0,ikrek,ff); ikrek=0.; } buhkom_it_dk(1,ikre,ff); } memset(naim,'\0',sizeof(naim)); sprintf(strsql,"select nais from Plansh where ns='%s'",shet); if(sql_readkey(&bd,strsql,&row,&cur) == 1) strncpy(naim,row[0],sizeof(naim)-1); buhkom_sh_kre(shet,naim,ff); ikre=0.; strcpy(shet_z,shet); } fprintf(ff,"%-*s %-*s %10.2f\n", iceb_u_kolbait(10,komentar),komentar, iceb_u_kolbait(7,shetk),shetk,kre); ikre+=kre; ikrek+=kre; } buhkom_it_dk(0,ikrek,ff); buhkom_it_dk(1,ikre,ff); iceb_podpis(ff,data->window); fclose(ff); //Распечатываем проводки rewind(ff_sort); char imaf_prov[40]; sprintf(imaf_prov,"komp%d.lst",getpid()); if((ff = fopen(imaf_prov,"w")) == NULL) { iceb_er_op_fil(imaf_prov,"",errno,data->window); sss.clear_data(); gtk_widget_destroy(data->window); return(FALSE); } data->rk->imaf.plus(imaf_prov); data->rk->naimf.plus(gettext("Отчёт по комментариям")); iceb_u_zagolov(gettext("Отчёт по комментариям"),dn,mn,gn,dk,mk,gk,organ,ff); if(data->rk->shet.getdlinna() > 1) fprintf(ff,"%s:%s\n",gettext("Счёт"),data->rk->shet.ravno()); short d,m,g; char naikon[512]; SQL_str row1; SQLCURSOR cur1; kolstr1=0; ideb=ikre=0.; memset(shet_z,'\0',sizeof(shet_z)); memset(komentar_z,'\0',sizeof(komentar_z)); char komentar_prov[512]; while(fgets(stroka,sizeof(stroka),ff_sort) != NULL) { // strzag(LINES-1,0,kol_shet,++kolstr1); iceb_pbar(data->bar,kol_shet,++kolstr1); iceb_u_polen(stroka,shet,sizeof(shet),1,'|'); iceb_u_polen(stroka,komentar,sizeof(komentar),2,'|'); iceb_u_polen(stroka,shetk,sizeof(shetk),3,'|'); if(iceb_u_SRAV(komentar_z,komentar,0) != 0) { if(komentar_z[0] != '\0') buhkomw_ri(idebk,ikrek,0,ff); idebk=ikrek=0.; strcpy(komentar_z,komentar); } if(iceb_u_SRAV(shet,shet_z,0) != 0) { if(shet_z[0] != '\0') { if(idebk != 0. || ikrek != 0.) { buhkomw_ri(idebk,ikrek,0,ff); idebk=ikrek=0.; } buhkomw_ri(ideb,ikre,1,ff); } memset(naim,'\0',sizeof(naim)); sprintf(strsql,"select nais from Plansh where ns='%s'",shet); if(sql_readkey(&bd,strsql,&row,&cur) == 1) strncpy(naim,row[0],sizeof(naim)-1); fprintf(ff,"\n%s %s\n",shet,naim); buhkomw_rs(ff); ideb=ikre=0.; strcpy(shet_z,shet); } sprintf(strsql,"select * from Prov \ where val=0 and datp >= '%d-%02d-%02d' and \ datp <= '%d-%02d-%02d' and sh='%s' and shk='%s' and komen <> ''",gn,mn,dn,gk,mk,dk,shet,shetk); int kolstr; if((kolstr=cur.make_cursor(&bd,strsql)) < 0) iceb_msql_error(&bd,gettext("Ошибка создания курсора !"),strsql,data->window); if(kolstr == 0) continue; while(cur.read_cursor(&row) != 0) { if(row[13][0] == '\0') continue; if(iceb_u_strstrm(row[13],komentar) == 0) continue; iceb_u_rsdat(&d,&m,&g,row[1],2); deb=atof(row[9]); kre=atof(row[10]); ideb+=deb; ikre+=kre; idebk+=deb; ikrek+=kre; memset(naikon,'\0',sizeof(naikon));; if(row[4][0] != '\0') { sprintf(strsql,"select naikon from Kontragent where kodkon='%s'", row[4]); int i; if((i=sql_readkey(&bd,strsql,&row1,&cur1)) != 1) { printf("%02d.%02d.%d %-5s %-5s %-5s %-3s %-4s %10.2f %10.2f %s%-10.10s\n\ Error %d\n", d,m,g,row[2],row[3],row[4],row[5],row[6], deb,kre,row[8],row[13],i); sprintf(strsql,"%s %s",gettext("Не найден код контрагента"),row[4]); iceb_menu_soob(strsql,data->window); } else strncpy(naikon,row1[0],sizeof(naikon)-1); } sozkom(komentar_prov,sizeof(komentar_prov),row[13],row[5],row[8]); fprintf(ff,"%02d.%02d.%4d %-*s %-*s %-*s %-3s%4s %-*s %10s", d,m,g, iceb_u_kolbait(6,row[2]),row[2], iceb_u_kolbait(6,row[3]),row[3], iceb_u_kolbait(5,row[4]),row[4], row[5],row[11], iceb_u_kolbait(10,row[6]),row[6], iceb_u_prnbr(deb)); fprintf(ff," %10s %s %-*s %s\n", iceb_u_prnbr(kre), row[8], iceb_u_kolbait(32,komentar_prov),komentar_prov, naikon); } } buhkomw_ri(idebk,ikrek,0,ff); buhkomw_ri(ideb,ikre,1,ff); iceb_podpis(ff,data->window); fclose(ff); fclose(ff_sort); for(int nom=0; nom < data->rk->imaf.kolih(); nom++) iceb_ustpeh(data->rk->imaf.ravno(nom),3,data->window); gtk_label_set_text(GTK_LABEL(data->label),gettext("Расчет закончен")); data->kon_ras=0; gtk_widget_set_sensitive(GTK_WIDGET(data->knopka),TRUE);//доступна gtk_widget_grab_focus(data->knopka); gtk_widget_show_all(data->window); iceb_printw_vr(vremn,data->buffer,data->view); data->voz=0; return(FALSE); }
void dialog_scenarios (WBCGtk *wbcg) { ScenariosState *state; WorkbookControl *wbc; Sheet *sheet; GtkWidget *w; GtkTreeSelection *select; char const *error_str = _("Could not create the Scenarios dialog."); g_return_if_fail (wbcg != NULL); wbc = WORKBOOK_CONTROL (wbcg); sheet = wb_control_cur_sheet (wbc); state = g_new (ScenariosState, 1); state->new_report_sheets = NULL; state->current = NULL; state->undo = NULL; state->base.wb = wb_control_get_workbook (wbc); if (dialog_tool_init (&state->base, wbcg, sheet, GNUMERIC_HELP_LINK_SCENARIOS_VIEW, "scenario-manager.ui", "Scenarios", error_str, "Scenarios", G_CALLBACK (scenarios_ok_clicked_cb), G_CALLBACK (scenarios_cancel_clicked_cb), G_CALLBACK (scenarios_update_sensitivity_cb), 0)) goto error_out; if (init_scenario_buttons (state)) goto error_out; state->scenarios_treeview = go_gtk_builder_get_widget (state->base.gui, "scenarios_treeview"); if (state->scenarios_treeview == NULL) goto error_out; w = go_gtk_builder_get_widget (state->base.gui, "changing_cells_entry"); if (w == NULL) goto error_out; gtk_widget_set_sensitive (w, FALSE); w = go_gtk_builder_get_widget (state->base.gui, "comment_view"); if (w == NULL) goto error_out; gtk_widget_set_sensitive (w, FALSE); if (state->base.sheet->scenarios == NULL) gtk_widget_set_sensitive (state->summary_button, FALSE); update_scenarios_treeview (state->scenarios_treeview, sheet->scenarios); select = gtk_tree_view_get_selection (GTK_TREE_VIEW (state->scenarios_treeview)); g_signal_connect (select, "changed", G_CALLBACK (cb_selection_changed), state); scenarios_update_sensitivity_cb (NULL, state); gtk_widget_show (state->base.dialog); return; error_out: go_gtk_notice_dialog (wbcg_toplevel (wbcg), GTK_MESSAGE_ERROR, "%s", error_str); g_free (state); return; }
/** * scenarios_update_sensitivity_cb: * @dummy: * @state: * * Update the dialog widgets sensitivity **/ static void scenarios_update_sensitivity_cb (G_GNUC_UNUSED GtkWidget *dummy, ScenariosState *state) { gtk_widget_set_sensitive (state->base.ok_button, TRUE); }
gint display_options_dbox() { GtkBuilder *builder; GError* error = NULL; GtkWidget *dbox; GtkWidget *data; gint result; builder = gtk_builder_new(); if (!gtk_builder_add_from_file (builder, tilp_paths_build_builder("options.ui"), &error)) { g_warning (_("Couldn't load builder file: %s\n"), error->message); g_error_free (error); return 0; // THIS RETURNS ! } gtk_builder_connect_signals(builder, NULL); dbox = GTK_WIDGET (gtk_builder_get_object (builder, "options_dbox")); gtk_dialog_set_alternative_button_order(GTK_DIALOG(dbox), GTK_RESPONSE_OK, GTK_RESPONSE_CANCEL,-1); memcpy(&tmp_options, &options, sizeof(options)); if(options.calc_model == CALC_NSPIRE) { data = GTK_WIDGET (gtk_builder_get_object (builder, "radiobutton31")); gtk_widget_set_sensitive(data, FALSE); data = GTK_WIDGET (gtk_builder_get_object (builder, "radiobutton32")); gtk_widget_set_sensitive(data, FALSE); } else { data = GTK_WIDGET (gtk_builder_get_object (builder, "radiobutton31")); if (!options.backup_as_tigroup) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data), TRUE); data = GTK_WIDGET (gtk_builder_get_object (builder, "radiobutton32")); if (options.backup_as_tigroup) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data), TRUE); } if(options.calc_model == CALC_NSPIRE) { data = GTK_WIDGET (gtk_builder_get_object (builder, "radiobutton81")); gtk_widget_set_sensitive(data, FALSE); data = GTK_WIDGET (gtk_builder_get_object (builder, "radiobutton82")); gtk_widget_set_sensitive(data, FALSE); } else { data = GTK_WIDGET (gtk_builder_get_object (builder, "radiobutton81")); if (!options.recv_as_group) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data), TRUE); data = GTK_WIDGET (gtk_builder_get_object (builder, "radiobutton82")); if (options.recv_as_group) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data), TRUE); } data = GTK_WIDGET (gtk_builder_get_object (builder, "radiobutton51")); if (options.show_all) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data), TRUE); data = GTK_WIDGET (gtk_builder_get_object (builder, "radiobutton52")); if (!options.show_all) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data), TRUE); data = GTK_WIDGET (gtk_builder_get_object (builder, "checkbutton2")); if (options.overwrite == CONFIRM_YES) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data), TRUE); else gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data), FALSE); result = gtk_dialog_run(GTK_DIALOG(dbox)); switch (result) { case GTK_RESPONSE_OK: memcpy(&options, &tmp_options, sizeof(tmp_options)); clist_refresh(); break; case GTK_RESPONSE_HELP: break; default: break; } gtk_widget_destroy(dbox); return 0; }
void Widget::setEnabled(bool enabled) { gtk_widget_set_sensitive(object->widget, enabled); }
void gui_update(struct dt_iop_module_t *self) { dt_iop_module_t *module = (dt_iop_module_t *)self; self->request_color_pick = DT_REQUEST_COLORPICK_OFF; self->color_picker_box[0] = self->color_picker_box[1] = .25f; self->color_picker_box[2] = self->color_picker_box[3] = .75f; self->color_picker_point[0] = self->color_picker_point[1] = 0.5f; dt_iop_temperature_gui_data_t *g = (dt_iop_temperature_gui_data_t *)self->gui_data; dt_iop_temperature_params_t *p = (dt_iop_temperature_params_t *)module->params; dt_iop_temperature_params_t *fp = (dt_iop_temperature_params_t *)module->default_params; float temp, tint, mul[3]; for(int k = 0; k < 3; k++) mul[k] = g->daylight_wb[k] / p->coeffs[k]; convert_rgb_to_k(mul, &temp, &tint); dt_bauhaus_slider_set(g->scale_r, p->coeffs[0]); dt_bauhaus_slider_set(g->scale_g, p->coeffs[1]); dt_bauhaus_slider_set(g->scale_b, p->coeffs[2]); dt_bauhaus_slider_set(g->scale_k, temp); dt_bauhaus_slider_set(g->scale_tint, tint); dt_bauhaus_combobox_clear(g->presets); dt_bauhaus_combobox_add(g->presets, _("camera white balance")); dt_bauhaus_combobox_add(g->presets, _("spot white balance")); g->preset_cnt = DT_IOP_NUM_OF_STD_TEMP_PRESETS; dt_bauhaus_combobox_set(g->presets, -1); dt_bauhaus_slider_set(g->finetune, 0); gtk_widget_set_sensitive(g->finetune, 0); const char *wb_name = NULL; char makermodel[1024]; char *model = makermodel; dt_colorspaces_get_makermodel_split(makermodel, sizeof(makermodel), &model, self->dev->image_storage.exif_maker, self->dev->image_storage.exif_model); if(!dt_image_is_ldr(&self->dev->image_storage)) for(int i = 0; i < wb_preset_count; i++) { if(g->preset_cnt >= 50) break; if(!strcmp(wb_preset[i].make, makermodel) && !strcmp(wb_preset[i].model, model)) { if(!wb_name || strcmp(wb_name, wb_preset[i].name)) { wb_name = wb_preset[i].name; dt_bauhaus_combobox_add(g->presets, _(wb_preset[i].name)); g->preset_num[g->preset_cnt++] = i; } } } if(memcmp(p->coeffs, fp->coeffs, 3 * sizeof(float)) == 0) dt_bauhaus_combobox_set(g->presets, 0); else { gboolean found = FALSE; // look through all added presets for(int j = DT_IOP_NUM_OF_STD_TEMP_PRESETS; !found && (j < g->preset_cnt); j++) { // look through all variants of this preset, with different tuning for(int i = g->preset_num[j]; !found && !strcmp(wb_preset[i].make, makermodel) && !strcmp(wb_preset[i].model, model) && !strcmp(wb_preset[i].name, wb_preset[g->preset_num[j]].name); i++) { float coeffs[3]; for(int k = 0; k < 3; k++) coeffs[k] = wb_preset[i].channel[k]; if(memcmp(coeffs, p->coeffs, 3 * sizeof(float)) == 0) { // got exact match! dt_bauhaus_combobox_set(g->presets, j); gtk_widget_set_sensitive(g->finetune, 1); dt_bauhaus_slider_set(g->finetune, wb_preset[i].tuning); found = TRUE; break; } } } if(!found) { // ok, we haven't found exact match, maybe this was interpolated? // look through all added presets for(int j = DT_IOP_NUM_OF_STD_TEMP_PRESETS; !found && (j < g->preset_cnt); j++) { // look through all variants of this preset, with different tuning int i = g->preset_num[j] + 1; while(!found && !strcmp(wb_preset[i].make, makermodel) && !strcmp(wb_preset[i].model, model) && !strcmp(wb_preset[i].name, wb_preset[g->preset_num[j]].name)) { // let's find gaps if(wb_preset[i - 1].tuning + 1 == wb_preset[i].tuning) { i++; continue; } // we have a gap! // we do not know what finetuning value was set, we need to bruteforce to find it for(int tune = wb_preset[i - 1].tuning + 1; !found && (tune < wb_preset[i].tuning); tune++) { wb_data interpolated = {.tuning = tune }; dt_wb_preset_interpolate(&wb_preset[i - 1], &wb_preset[i], &interpolated); float coeffs[3]; for(int k = 0; k < 3; k++) coeffs[k] = interpolated.channel[k]; if(memcmp(coeffs, p->coeffs, 3 * sizeof(float)) == 0) { // got exact match! dt_bauhaus_combobox_set(g->presets, j); gtk_widget_set_sensitive(g->finetune, 1); dt_bauhaus_slider_set(g->finetune, tune); found = TRUE; break; } } i++; } } } } }
static void gs_review_row_refresh (GsReviewRow *row) { GsReviewRowPrivate *priv = gs_review_row_get_instance_private (row); const gchar *reviewer; GDateTime *date; g_autofree gchar *text = NULL; gs_star_widget_set_rating (GS_STAR_WIDGET (priv->stars), as_review_get_rating (priv->review)); reviewer = as_review_get_reviewer_name (priv->review); if (reviewer == NULL) { /* TRANSLATORS: this is when a user doesn't specify a name */ reviewer = _("Unknown"); } gtk_label_set_text (GTK_LABEL (priv->author_label), reviewer); date = as_review_get_date (priv->review); if (date != NULL) text = g_date_time_format (date, "%e %B %Y"); else text = g_strdup (""); gtk_label_set_text (GTK_LABEL (priv->date_label), text); gtk_label_set_text (GTK_LABEL (priv->summary_label), as_review_get_summary (priv->review)); gtk_label_set_text (GTK_LABEL (priv->text_label), as_review_get_description (priv->review)); /* if we voted, we can't do any actions */ if (as_review_get_flags (priv->review) & AS_REVIEW_FLAG_VOTED) priv->actions = 0; /* set actions up */ if ((priv->actions & (1 << GS_PLUGIN_ACTION_REVIEW_UPVOTE | 1 << GS_PLUGIN_ACTION_REVIEW_DOWNVOTE | 1 << GS_PLUGIN_ACTION_REVIEW_DISMISS)) == 0) { gtk_widget_set_visible (priv->box_voting, FALSE); } else { gtk_widget_set_visible (priv->box_voting, TRUE); gtk_widget_set_visible (priv->button_yes, priv->actions & 1 << GS_PLUGIN_ACTION_REVIEW_UPVOTE); gtk_widget_set_visible (priv->button_no, priv->actions & 1 << GS_PLUGIN_ACTION_REVIEW_DOWNVOTE); gtk_widget_set_visible (priv->button_dismiss, priv->actions & 1 << GS_PLUGIN_ACTION_REVIEW_DISMISS); } gtk_widget_set_visible (priv->button_remove, priv->actions & 1 << GS_PLUGIN_ACTION_REVIEW_REMOVE); gtk_widget_set_visible (priv->button_report, priv->actions & 1 << GS_PLUGIN_ACTION_REVIEW_REPORT); /* mark insensitive if no network */ if (priv->network_available) { gtk_widget_set_sensitive (priv->button_yes, TRUE); gtk_widget_set_sensitive (priv->button_no, TRUE); gtk_widget_set_sensitive (priv->button_remove, TRUE); gtk_widget_set_sensitive (priv->button_report, TRUE); } else { gtk_widget_set_sensitive (priv->button_yes, FALSE); gtk_widget_set_sensitive (priv->button_no, FALSE); gtk_widget_set_sensitive (priv->button_remove, FALSE); gtk_widget_set_sensitive (priv->button_report, FALSE); } }
int handle_lobby(GladeXML* g_lobby_xml, GladeXML* g_table_info_xml, GladeXML* g_lobby_tabs_xml, GladeXML* g_cashier_button_xml, GladeXML* g_clock_xml, GtkLayout* screen, int init) { static int s_selected_table = 0; s_screen = screen; if(init) { textdomain ("poker2d"); int i; s_lobby_xml = g_lobby_xml; s_lobby_window = gui_get_widget(g_lobby_xml, "lobby_window"); g_assert(s_lobby_window); set_nil_draw_focus(s_lobby_window); if(screen) gtk_layout_put(screen, s_lobby_window, 0, 0); s_notebook = GTK_NOTEBOOK(gui_get_widget(g_lobby_xml, "notebook")); g_assert(s_notebook); for(i = 0; i < VARIANTS_COUNT; i++) { char tmp[32]; s_variants_store[i] = gtk_list_store_new(12, G_TYPE_INT, GDK_TYPE_PIXBUF, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING ); snprintf(tmp, 32, "%s_treeview", s_variants_names[i]); GtkTreeView* treeview = GTK_TREE_VIEW(gui_get_widget(g_lobby_xml, tmp)); GtkTreeSelection* selection = gtk_tree_view_get_selection(treeview); g_signal_connect(selection, "changed", (GCallback)on_lobby_list_treeview_selection_changed, &s_selected_table); s_variants_selection[i] = selection; g_signal_connect(treeview, "row-activated", (GCallback)on_row_activated, &s_selected_table); gtk_tree_view_set_rules_hint(treeview, TRUE); gtk_tree_view_set_model(treeview, GTK_TREE_MODEL(s_variants_store[i])); GtkCellRenderer* text_renderer = gtk_cell_renderer_text_new(); #define TABLE_COLUMN_ID 0 #define TABLE_COLUMN_MY 1 { GtkTreeViewColumn* column = gtk_tree_view_column_new(); GtkCellRenderer* pixbuf_renderer = gtk_cell_renderer_pixbuf_new(); gtk_tree_view_append_column(treeview, column); gtk_tree_view_column_set_title(column, gettext("My") ); gtk_tree_view_column_pack_start(column, pixbuf_renderer, TRUE); gtk_tree_view_column_add_attribute(column, pixbuf_renderer, "pixbuf", TABLE_COLUMN_MY); } { GError* error = 0; gchar* filename; filename = glade_xml_relative_file(g_lobby_xml, "table_bullet_my.png"); if(g_file_test(filename, G_FILE_TEST_EXISTS)) { pixbuf_table_my = gdk_pixbuf_new_from_file(filename, &error); if(pixbuf_table_my == NULL) { GtkIconTheme* theme = gtk_icon_theme_get_default(); error = 0; pixbuf_table_my = gtk_icon_theme_load_icon(theme, "stock_book_open", 16, 0, &error); if (!pixbuf_table_my) { g_warning ("Couldn't load icon: %s", error->message); } } } g_free(filename); } #define SET_COLUMN(TITLE, INDEX) \ { \ GtkTreeViewColumn* column = gtk_tree_view_column_new(); \ gtk_tree_view_append_column(treeview, column); \ gtk_tree_view_column_set_title(column, TITLE); \ gtk_tree_view_column_pack_start(column, text_renderer, TRUE); \ gtk_tree_view_column_add_attribute(column, text_renderer, "text", INDEX); \ } #define TABLE_COLUMN_NAME 2 SET_COLUMN( gettext("Name"), TABLE_COLUMN_NAME); #define TABLE_COLUMN_STRUCTURE 3 SET_COLUMN( gettext("Structure"), TABLE_COLUMN_STRUCTURE); #define TABLE_COLUMN_SEATS 4 SET_COLUMN( gettext("Seats"), TABLE_COLUMN_SEATS); #define TABLE_COLUMN_AVG_POT 5 SET_COLUMN( gettext("Avg.pot"), TABLE_COLUMN_AVG_POT); #define TABLE_COLUMN_HANDS_PER_HOUR 6 SET_COLUMN( gettext("Hands/h"), TABLE_COLUMN_HANDS_PER_HOUR); #define TABLE_COLUMN_PERCENT_FLOP 7 SET_COLUMN( gettext("Flop%"), TABLE_COLUMN_PERCENT_FLOP); #define TABLE_COLUMN_PLAYING 8 SET_COLUMN( gettext("Playing"), TABLE_COLUMN_PLAYING); #define TABLE_COLUMN_OBSERVING 9 #define TABLE_COLUMN_WAITING 10 #define TABLE_COLUMN_TIMEOUT 11 #undef SET_COLUMN } s_players_label = GTK_LABEL(gui_get_widget(g_lobby_xml, "players_label")); s_tables_label = GTK_LABEL(gui_get_widget(g_lobby_xml, "tables_label")); GUI_BRANCH(g_lobby_xml, on_all_radio_clicked); GUI_BRANCH(g_lobby_xml, on_money_one_radio_clicked); GUI_BRANCH(g_lobby_xml, on_money_two_radio_clicked); s_table_info_window = gui_get_widget(g_table_info_xml, "table_info_window"); g_assert(s_table_info_window); if(screen) gtk_layout_put(screen, s_table_info_window, 0, 0); { s_players_store = gtk_list_store_new(3, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT); GtkTreeView* treeview = GTK_TREE_VIEW(gui_get_widget(g_table_info_xml, "players_treeview")); gtk_tree_view_set_rules_hint(treeview, TRUE); gtk_tree_view_set_model(treeview, GTK_TREE_MODEL(s_players_store)); GtkCellRenderer* text_renderer = gtk_cell_renderer_text_new(); #define PLAYERS_COLUMN_NAME 0 { GtkTreeViewColumn* column = gtk_tree_view_column_new(); gtk_tree_view_append_column(treeview, column); gtk_tree_view_column_set_title(column, gettext("Players") ); gtk_tree_view_column_pack_start(column, text_renderer, TRUE); gtk_tree_view_column_add_attribute(column, text_renderer, "text", 0); } #define PLAYERS_COLUMN_CHIPS 1 { GtkTreeViewColumn* column = gtk_tree_view_column_new(); gtk_tree_view_append_column(treeview, column); gtk_tree_view_column_set_title(column, gettext("Chips") ); gtk_tree_view_column_pack_start(column, text_renderer, TRUE); gtk_tree_view_column_add_attribute(column, text_renderer, "text", 1); } #define PLAYERS_COLUMN_FLAG 2 } s_go_to_label = GTK_LABEL(glade_xml_get_widget(g_table_info_xml, "label_go_to")); s_go_to_button = GTK_BUTTON(glade_xml_get_widget(g_table_info_xml, "button_go_to")); g_signal_connect(GTK_OBJECT(s_go_to_button), "clicked", (GtkSignalFunc)on_go_to_clicked, &s_selected_table); s_lobby_tabs_window = gui_get_widget(g_lobby_tabs_xml, "lobby_tabs_window"); g_assert(s_lobby_tabs_window); gtk_widget_set_size_request(s_lobby_tabs_window, gui_width(screen), -1); if(screen) gtk_layout_put(screen, s_lobby_tabs_window, 0, 0); GUI_BRANCH(g_lobby_tabs_xml, on_table_toggled); GUI_BRANCH(g_lobby_tabs_xml, on_tourney_toggled); s_cashier_button_window = gui_get_widget(g_cashier_button_xml, "cashier_button_window"); g_assert(s_cashier_button_window); if(screen) gtk_layout_put(screen, s_cashier_button_window, 0, 0); s_cashier_button = GTK_BUTTON(gui_get_widget(g_cashier_button_xml, "cashier_button")); g_assert(s_cashier_button); GUI_BRANCH(g_cashier_button_xml, on_cashier_button_pressed); s_clock_window = gui_get_widget(g_clock_xml, "clock_window"); g_assert(s_clock_window); if(screen) gtk_layout_put(screen, s_clock_window, 0, 0); s_clock_label = gui_get_widget(g_clock_xml, "clock_label"); close_lobby(); } char* tag = get_string(); if(!strcmp(tag, "show")) { g_lobby_tab_state = lobby; { char* label = get_string(); gtk_button_set_label(s_cashier_button, label); g_free(label); } if (screen != NULL || s_lobby_shown == 0) { // // calculate windows position // int screen_width = gui_width(screen); int screen_height = gui_height(screen); int top_left_x = (screen_width - 1000) / 2; int top_left_y = (screen_height - 450) / 2; { static position_t position; position.x = screen_width - 610; position.y = top_left_y; gui_place(s_lobby_window, &position, screen); } { static position_t position; position.x = top_left_x; position.y = top_left_y; gui_place(s_table_info_window, &position, screen); } { static position_t position; position.x = 0; position.y = 33; gui_place(s_lobby_tabs_window, &position, screen); } { static position_t position; position.x = top_left_x; position.y = top_left_y + 435; gui_place(s_cashier_button_window, &position, screen); } s_lobby_shown = 1; } { gui_bottom_right(s_clock_window, screen); } s_selected_table = 0; { char* type = get_string(); if(!strcmp(type, "holdem")) { gtk_notebook_set_current_page(s_notebook, VARIANT_HOLDEM); } else if(!strcmp(type, "omaha")) { gtk_notebook_set_current_page(s_notebook, VARIANT_OMAHA); } else if(!strcmp(type, "omaha8")) { gtk_notebook_set_current_page(s_notebook, VARIANT_OMAHA8); } else if(!strcmp(type, "7stud")) { gtk_notebook_set_current_page(s_notebook, VARIANT_7STUD); } GtkToggleButton* button = GTK_TOGGLE_BUTTON(gui_get_widget(g_lobby_tabs_xml, type)); g_assert(button); gtk_toggle_button_set_active(button, TRUE); g_free(type); } { char* currency_serial = get_string(); char* button; GtkWidget* radio; if(!strcmp(currency_serial, "money_two")) { button = "money_two_radio"; } else if(!strcmp(currency_serial, "money_one")) { button = "money_one_radio"; } else { button = "all_radio"; } { //moneyone GtkWidget* sl = gui_get_widget(g_lobby_xml, "money_one_radio"); char* label = get_string(); gtk_button_set_label(GTK_BUTTON(sl), label); g_free(label); } { //moneytwo GtkWidget* sl = gui_get_widget(g_lobby_xml, "money_two_radio"); char* label = get_string(); gtk_button_set_label(GTK_BUTTON(sl), label); g_free(label); } s_disable_buttons = 1; radio = gui_get_widget(s_lobby_xml, button); g_assert(radio); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radio), TRUE); s_disable_buttons = 0; g_free(currency_serial); } } else if(!strcmp(tag, "hide")) { g_lobby_tab_state = none; close_lobby(); } else if(!strcmp(tag, "info")) { char* players_count = get_string(); char* tables_count = get_string(); gtk_label_set_text(s_players_label, players_count); gtk_label_set_text(s_tables_label, tables_count); g_free(players_count); g_free(tables_count); } else if(!strcmp(tag, "holdem") || !strcmp(tag, "omaha") || !strcmp(tag, "omaha8") || !strcmp(tag, "7stud")) { int selected = get_int(); int rows = get_int(); int i; int variant_index = VARIANT_HOLDEM; if(!strcmp(tag, "holdem")) { variant_index = VARIANT_HOLDEM; } else if(!strcmp(tag, "omaha")) { variant_index = VARIANT_OMAHA; } else if(!strcmp(tag, "omaha8")) { variant_index = VARIANT_OMAHA8; } else if(!strcmp(tag, "7stud")) { variant_index = VARIANT_7STUD; } gtk_list_store_clear(s_variants_store[variant_index]); for(i = 0; i < rows; i++) { int id = get_int(); GtkTreeIter iter; gtk_list_store_append(s_variants_store[variant_index], &iter); gtk_list_store_set(s_variants_store[variant_index], &iter, TABLE_COLUMN_ID, id, -1); if(selected == id) gtk_tree_selection_select_iter(s_variants_selection[variant_index], &iter); { char* my = get_string(); GdkPixbuf* pixbuf = 0; if(!strcmp(my, "yes")) { pixbuf = pixbuf_table_my; } gtk_list_store_set(s_variants_store[variant_index], &iter, TABLE_COLUMN_MY, pixbuf, -1); } #define SET_COLUMN(INDEX) \ { \ char* content = get_string(); \ gtk_list_store_set(s_variants_store[variant_index], &iter, INDEX, content, -1); \ g_free(content); \ } SET_COLUMN(TABLE_COLUMN_NAME); SET_COLUMN(TABLE_COLUMN_STRUCTURE); SET_COLUMN(TABLE_COLUMN_SEATS); SET_COLUMN(TABLE_COLUMN_AVG_POT); SET_COLUMN(TABLE_COLUMN_HANDS_PER_HOUR); SET_COLUMN(TABLE_COLUMN_PERCENT_FLOP); SET_COLUMN(TABLE_COLUMN_PLAYING); SET_COLUMN(TABLE_COLUMN_OBSERVING); SET_COLUMN(TABLE_COLUMN_WAITING); SET_COLUMN(TABLE_COLUMN_TIMEOUT); #undef SET_COLUMN } s_selected_table = selected; if(!selected) { gtk_list_store_clear(s_players_store); gtk_widget_set_sensitive(GTK_WIDGET(s_go_to_button), FALSE); } } else if(!strcmp(tag, "players")) { int players_count = get_int(); int i; gtk_label_set_text(s_go_to_label, gettext("GO TO TABLE") ); gtk_widget_set_sensitive(GTK_WIDGET(s_go_to_button), TRUE); gtk_list_store_clear(s_players_store); for(i = 0; i < players_count; i++) { char* name = get_string(); char* chips = get_string(); int flag = get_int(); GtkTreeIter iter; gtk_list_store_append(s_players_store, &iter); gtk_list_store_set(s_players_store, &iter, PLAYERS_COLUMN_NAME, name, PLAYERS_COLUMN_CHIPS, chips, PLAYERS_COLUMN_FLAG, flag, -1); g_free(name); g_free(chips); } } // // set clock time // { time_t _time; char date_buffer[8]; time(&_time); struct tm* _tm = gmtime(&_time); snprintf(date_buffer, sizeof (date_buffer), "%02d:%02d", _tm->tm_hour, _tm->tm_min); gtk_label_set_text(GTK_LABEL(s_clock_label), date_buffer); } g_free(tag); return TRUE; }
static void color_scheme_defaults_button_clicked_cb (GtkWidget *button, AppearanceData *data) { g_settings_reset (data->interface_settings, COLOR_SCHEME_KEY); gtk_widget_set_sensitive (appearance_capplet_get_widget (data, "color_scheme_defaults_button"), FALSE); }
void SludgeProjectManager::setupButtons() { if (currentFilename[0] == 0) { gtk_widget_set_sensitive(saveItem, FALSE); gtk_widget_set_sensitive(saveAsItem, FALSE); gtk_widget_set_sensitive(projectPropertiesItem, FALSE); gtk_widget_set_sensitive(addFileButton, FALSE); gtk_widget_set_sensitive(removeFileButton, FALSE); } else { gtk_widget_set_sensitive(saveItem, TRUE); gtk_widget_set_sensitive(saveAsItem, TRUE); gtk_widget_set_sensitive(projectPropertiesItem, TRUE); gtk_widget_set_sensitive(addFileButton, TRUE); } if (fileListNum) { gtk_widget_set_sensitive(projectCompileItem, TRUE); } else { gtk_widget_set_sensitive(projectCompileItem, FALSE); } }
static void update_cursor_size_scale (MateThemeCursorInfo *theme, AppearanceData *data) { #ifdef HAVE_XCURSOR GtkWidget *cursor_size_scale; GtkWidget *cursor_size_label; GtkWidget *cursor_size_small_label; GtkWidget *cursor_size_large_label; gboolean sensitive; gint size, gsettings_size; cursor_size_scale = appearance_capplet_get_widget (data, "cursor_size_scale"); cursor_size_label = appearance_capplet_get_widget (data, "cursor_size_label"); cursor_size_small_label = appearance_capplet_get_widget (data, "cursor_size_small_label"); cursor_size_large_label = appearance_capplet_get_widget (data, "cursor_size_large_label"); sensitive = theme && theme->sizes->len > 1; gtk_widget_set_sensitive (cursor_size_scale, sensitive); gtk_widget_set_sensitive (cursor_size_label, sensitive); gtk_widget_set_sensitive (cursor_size_small_label, sensitive); gtk_widget_set_sensitive (cursor_size_large_label, sensitive); gsettings_size = g_settings_get_int (data->mouse_settings, CURSOR_SIZE_KEY); if (sensitive) { GtkAdjustment *adjustment; gint i, index; GtkRange *range = GTK_RANGE (cursor_size_scale); adjustment = gtk_range_get_adjustment (range); g_object_set (adjustment, "upper", (gdouble) theme->sizes->len - 1, NULL); /* fallback if the gsettings value is bigger than all available sizes; use the largest we have */ index = theme->sizes->len - 1; /* set the slider to the cursor size which matches the gsettings setting best */ for (i = 0; i < theme->sizes->len; i++) { size = g_array_index (theme->sizes, gint, i); if (size == gsettings_size) { index = i; break; } else if (size > gsettings_size) { if (i == 0) { index = 0; } else { gint diff, diff_to_last; diff = size - gsettings_size; diff_to_last = gsettings_size - g_array_index (theme->sizes, gint, i - 1); index = (diff < diff_to_last) ? i : i - 1; } break; } } gtk_range_set_value (range, (gdouble) index); size = g_array_index (theme->sizes, gint, index); } else { if (theme && theme->sizes->len > 0) size = g_array_index (theme->sizes, gint, 0); else size = 18; } if (size != gsettings_size) cursor_size_changed_cb (size, data); #endif }
static void panel_addto_selection_changed (GtkTreeSelection *selection, PanelAddtoDialog *dialog) { GtkTreeModel *filter_model; GtkTreeModel *child_model; GtkTreeIter iter; GtkTreeIter filter_iter; PanelAddtoItemInfo *data; char *iid; if (!gtk_tree_selection_get_selected (selection, &filter_model, &filter_iter)) { gtk_widget_set_sensitive (GTK_WIDGET (dialog->add_button), FALSE); return; } gtk_tree_model_filter_convert_iter_to_child_iter (GTK_TREE_MODEL_FILTER (filter_model), &iter, &filter_iter); child_model = gtk_tree_model_filter_get_model (GTK_TREE_MODEL_FILTER (filter_model)); gtk_tree_model_get (child_model, &iter, COLUMN_DATA, &data, -1); if (!data) { gtk_widget_set_sensitive (GTK_WIDGET (dialog->add_button), FALSE); return; } gtk_widget_set_sensitive (GTK_WIDGET (dialog->add_button), TRUE); if (data->type == PANEL_ADDTO_LAUNCHER_MENU) { gtk_button_set_label (GTK_BUTTON (dialog->add_button), GTK_STOCK_GO_FORWARD); } else { gtk_button_set_label (GTK_BUTTON (dialog->add_button), GTK_STOCK_ADD); } gtk_button_set_use_stock (GTK_BUTTON (dialog->add_button), TRUE); /* only allow dragging applets if we can add applets */ if (panel_profile_id_lists_are_writable ()) { switch (data->type) { case PANEL_ADDTO_LAUNCHER: panel_addto_setup_launcher_drag (GTK_TREE_VIEW (dialog->tree_view), data->launcher_path); break; case PANEL_ADDTO_APPLET: panel_addto_setup_applet_drag (GTK_TREE_VIEW (dialog->tree_view), data->iid); break; case PANEL_ADDTO_LAUNCHER_MENU: gtk_tree_view_unset_rows_drag_source (GTK_TREE_VIEW (dialog->tree_view)); break; case PANEL_ADDTO_MENU: /* build the iid for menus other than the main menu */ if (data->iid == NULL) { iid = g_strdup_printf ("MENU:%s/%s", data->menu_filename, data->menu_path); } else { iid = g_strdup (data->iid); } panel_addto_setup_internal_applet_drag (GTK_TREE_VIEW (dialog->tree_view), iid); g_free (iid); break; default: panel_addto_setup_internal_applet_drag (GTK_TREE_VIEW (dialog->tree_view), data->iid); break; } } }
void music_buttons_callback(GtkButton *button, gpointer data) { MPLAYER *pm = (MPLAYER*)data; if(button == pm->ui.hbox_right.button_pause) { if(pm->playflag == playing)// 正在播放,则暂停 { //printf("pause\n"); pm->playflag = stop; send_cmd("pause\n", pm); gtk_widget_set_sensitive(GTK_WIDGET(pm->ui.hbox_right.button_backward), FALSE); gtk_widget_set_sensitive(GTK_WIDGET(pm->ui.hbox_right.button_forward), FALSE); sungtk_button_inset_image(GTK_WIDGET(pm->ui.hbox_right.button_pause), "./image/style/play.png",70,70); } else //否则,开启播放 { //printf("playing\n"); pm->playflag = playing; send_cmd("pause\n", pm); gtk_widget_set_sensitive(GTK_WIDGET(pm->ui.hbox_right.button_backward), TRUE); gtk_widget_set_sensitive(GTK_WIDGET(pm->ui.hbox_right.button_forward), TRUE); sungtk_button_inset_image(GTK_WIDGET(pm->ui.hbox_right.button_pause), "./image/style/pause.png",70,70); } } else if(button == pm->ui.hbox_right.button_forward) { //printf("button_forward\n"); send_cmd("seek 10\n", pm); } else if(button == pm->ui.hbox_right.button_backward) { //printf("button_backward\n"); send_cmd("seek -10\n", pm); } else if(button == pm->ui.hbox_right.button_next) { //printf("button_next\n"); set_keyflag(next); set_playing_song(pm, 1); #if 0 song.old= song.now; song.now++; if(song.now >= song.count) { song.now = 0; } #endif //set_songname(song.now); //strcpy(song.name, song.psong_list[song.now]); //playing_song(pm, song.now); } else if(button == pm->ui.hbox_right.button_back) { //printf("button_back\n"); set_keyflag(back); set_playing_song(pm, -1); #if 0 song.old= song.now; song.now--; if(song.now < 0) { song.now = song.count - 1; } #endif //set_songname(song.now); //playing_song(pm, song.now); } else if(button == pm->ui.hbox_right.button_volume) { if(pm->soundflag == beam)//判断如果不是静音状态 则设置成静音状态 { //printf("mute\n"); pm->soundflag = mute; send_cmd("mute 1\n", pm); sungtk_button_inset_image(GTK_WIDGET(pm->ui.hbox_right.button_volume), "./image/style/mute.png",50,50); } else { //printf("beam\n"); pm->soundflag = beam; send_cmd("mute 0\n", pm); sungtk_button_inset_image(GTK_WIDGET(pm->ui.hbox_right.button_volume), "./image/style/beam.png",50,50); } } }
static void set_buttons(uat_t *uat, gint row) { if (!uat->rep) return; if (row > 0) { gtk_widget_set_sensitive (uat->rep->bt_up, TRUE); } else { gtk_widget_set_sensitive (uat->rep->bt_up, FALSE); } if (row < (gint)(uat->raw_data->len - 1) && row >= 0) { gtk_widget_set_sensitive (uat->rep->bt_down, TRUE); } else { gtk_widget_set_sensitive (uat->rep->bt_down, FALSE); } gtk_widget_set_sensitive (uat->rep->bt_new, TRUE); gtk_widget_set_sensitive (uat->rep->bt_clear, TRUE); if (row < 0) { gtk_widget_set_sensitive (uat->rep->bt_edit, FALSE); gtk_widget_set_sensitive (uat->rep->bt_copy, FALSE); gtk_widget_set_sensitive (uat->rep->bt_delete, FALSE); } else { gtk_widget_set_sensitive (uat->rep->bt_edit, TRUE); gtk_widget_set_sensitive (uat->rep->bt_copy, TRUE); gtk_widget_set_sensitive (uat->rep->bt_delete, TRUE); } if (uat->changed) { g_signal_handlers_disconnect_by_func(uat->rep->window, uat_window_delete_event_cb, uat); g_signal_connect(uat->rep->window, "delete_event", G_CALLBACK(unsaved_dialog), uat); g_signal_connect(uat->rep->window, "destroy", G_CALLBACK(unsaved_dialog), uat); } else { g_signal_handlers_disconnect_by_func(uat->rep->window, unsaved_dialog, uat); g_signal_connect(GTK_WINDOW(uat->rep->window), "delete_event", G_CALLBACK(uat_window_delete_event_cb), uat); g_signal_connect(GTK_WINDOW(uat->rep->window), "destroy", G_CALLBACK(uat_window_delete_event_cb), uat); } }
void *update_thread(void *no_data) { int ret; extern sem_t *update_semaphore; extern gboolean site_keepgoing; pthread_detach(pthread_self()); NE_DEBUG(DEBUG_GNOME, "update_thread: detached.\n"); for(;;) { NE_DEBUG(DEBUG_GNOME, "update_thread: sleeping...\n"); /* sleep straight away */ sem_wait(update_semaphore); NE_DEBUG(DEBUG_GNOME, "update_thread: Okay, who woke me up!?\n"); gdk_threads_enter(); gtk_widget_set_sensitive(begin_button, FALSE); gtk_widget_set_sensitive(keep_going_button, FALSE); NE_DEBUG(DEBUG_GNOME, "update_thread: Acquired gtk+ lock\n"); if (verifysite_gnome(selected_site)) { close_main_update_window(NULL, NULL); NE_DEBUG(DEBUG_GNOME, "update_thread: The site was wrong, skipping.\n"); continue; } NE_DEBUG(DEBUG_GNOME, "update_thread: Verified site okay, updating..."); /* Perform the actual update */ if (GTK_TOGGLE_BUTTON(keep_going_button)->active) { site_keepgoing = TRUE; } else { site_keepgoing = FALSE; } gdk_threads_leave(); /* site_update blocks until finished */ NE_DEBUG(DEBUG_GNOME, "update_thread: Entering site_update.\n"); /* we might want to give this a 3rd argument sometime to allow * updating of single files at a time */ /* This calls site_update with a wrapper to facilitate good * abort behaviour */ ret = my_abortable_transfer_wrapper(selected_site, site_op_update); NE_DEBUG(DEBUG_GNOME, "update_thread: site_update returned value of %d.\n", ret); gdk_threads_enter(); switch (ret) { case SITE_CONNECT: gtk_label_set(GTK_LABEL(status_label), "Unable to establish connection."); gtk_label_set(GTK_LABEL(op_label), " "); gtk_label_set(GTK_LABEL(file_label), " "); gtk_label_set(GTK_LABEL(dir_label), " "); break; case SITE_AUTH: gtk_label_set(GTK_LABEL(status_label), "Authentication with the remote server failed.."); gtk_label_set(GTK_LABEL(op_label), " "); gtk_label_set(GTK_LABEL(file_label), " "); gtk_label_set(GTK_LABEL(dir_label), " "); break; case SITE_ERRORS: gtk_label_set(GTK_LABEL(status_label), "There was a problem with the file/directory transfer."); gtk_label_set(GTK_LABEL(op_label), " "); gtk_label_set(GTK_LABEL(file_label), " "); gtk_label_set(GTK_LABEL(dir_label), " "); site_write_stored_state(selected_site); rescan_selected(1); gtk_widget_set_sensitive(error_button, TRUE); break; case SITE_LOOKUP: gtk_label_set(GTK_LABEL(status_label), "Unable to connect: Host name look-up failed."); gtk_label_set(GTK_LABEL(op_label), " "); gtk_label_set(GTK_LABEL(file_label), " "); gtk_label_set(GTK_LABEL(dir_label), " "); break; case SITE_OK: gtk_label_set(GTK_LABEL(status_label), "Update complete. (No errors)"); gtk_label_set(GTK_LABEL(op_label), " "); gtk_label_set(GTK_LABEL(file_label), " "); gtk_label_set(GTK_LABEL(dir_label), " "); site_write_stored_state(selected_site); rescan_selected(1); break; case SITE_FAILED: gtk_label_set(GTK_LABEL(status_label), "Update failed. (Authentication problems)"); gtk_label_set(GTK_LABEL(op_label), " "); gtk_label_set(GTK_LABEL(file_label), " "); gtk_label_set(GTK_LABEL(dir_label), " "); break; case SITE_ABORTED: gtk_label_set(GTK_LABEL(status_label), "Update was aborted."); gtk_label_set(GTK_LABEL(op_label), " "); gtk_label_set(GTK_LABEL(file_label), " "); gtk_label_set(GTK_LABEL(dir_label), " "); site_write_stored_state(selected_site); /*rescan_selected(1);*/ break; default: gtk_label_set(GTK_LABEL(status_label), "Unexpected Update Return Value! Contact Maintainer."); NE_DEBUG(DEBUG_GNOME, "ARG! site_update returned %d.\n", ret); break; } NE_DEBUG(DEBUG_GNOME, "Dealt with site_update's return code. Changing sensitivities.\n"); gtk_widget_hide (kill_button); gtk_widget_show (close_button); gtk_widget_set_sensitive(close_button, TRUE); gtk_window_set_modal(GTK_WINDOW(upload_window), FALSE); gdk_threads_leave(); NE_DEBUG(DEBUG_GNOME, "update_thread: Reported update status okay, looping...\n"); } }
void gui_create_tasks(GUI *appGUI) { GtkWidget *vbox1; GtkWidget *vbox2; GtkWidget *table; GtkWidget *label; GtkWidget *top_scrolledwindow; GtkWidget *hseparator; GtkWidget *close_button; GtkCellRenderer *renderer; GtkWidget *top_viewport; GtkWidget *bottom_viewport; GtkTextBuffer *text_buffer; GError *error = NULL; GtkActionGroup *action_group = NULL; gchar tmpbuf[BUFFER_SIZE]; const gchar *ui_info = " <toolbar name=\"toolbar\">\n" " <toolitem name=\"add\" action=\"add\" />\n" " <toolitem name=\"delete\" action=\"delete\" />\n" " <separator name=\"sep1\" />\n" " <toolitem name=\"edit\" action=\"edit\" />\n" " </toolbar>\n"; GtkActionEntry entries[] = { { "add", OSMO_STOCK_TASKS_ADD, _("New task"), NULL, _("New task"), NULL }, { "edit", OSMO_STOCK_TASKS_EDIT, _("Edit task"), NULL, _("Edit task"), NULL }, { "delete", OSMO_STOCK_TASKS_REMOVE, _("Remove task"), NULL, _("Remove task"), NULL }, }; guint n_entries = G_N_ELEMENTS (entries); appGUI->tsk->filter_index = 0; vbox1 = gtk_vbox_new (FALSE, 1); gtk_widget_show (vbox1); gtk_container_set_border_width (GTK_CONTAINER (vbox1), 8); sprintf(tmpbuf, "<b>%s</b>", _("Tasks")); gui_add_to_notebook (vbox1, tmpbuf, appGUI); appGUI->tsk->vbox = GTK_BOX(vbox1); /*-------------------------------------------------------------------------------------*/ action_group = gtk_action_group_new ("_actions"); gtk_action_group_add_actions (action_group, entries, n_entries, NULL); gtk_action_group_set_sensitive(action_group, TRUE); appGUI->tsk->tasks_uim_widget = gtk_ui_manager_new (); gtk_ui_manager_insert_action_group (appGUI->tsk->tasks_uim_widget, action_group, 0); g_signal_connect (appGUI->tsk->tasks_uim_widget, "add_widget", G_CALLBACK (add_tasks_toolbar_widget), appGUI); if (!gtk_ui_manager_add_ui_from_string (appGUI->tsk->tasks_uim_widget, ui_info, -1, &error)) { g_message ("building toolbar failed: %s", error->message); g_error_free (error); } gtk_ui_manager_ensure_update (appGUI->tsk->tasks_uim_widget); gtk_toolbar_set_style (appGUI->tsk->tasks_toolbar, GTK_TOOLBAR_ICONS); gtk_toolbar_set_tooltips (appGUI->tsk->tasks_toolbar, config.enable_tooltips); /*-------------------------------------------------------------------------------------*/ /* assign callbacks */ g_signal_connect (G_OBJECT(gtk_ui_manager_get_widget (appGUI->tsk->tasks_uim_widget, "/toolbar/add")), "clicked", G_CALLBACK(tasks_add_item_cb), appGUI); g_signal_connect (G_OBJECT(gtk_ui_manager_get_widget (appGUI->tsk->tasks_uim_widget, "/toolbar/edit")), "clicked", G_CALLBACK(tasks_edit_item_cb), appGUI); g_signal_connect (G_OBJECT(gtk_ui_manager_get_widget (appGUI->tsk->tasks_uim_widget, "/toolbar/delete")), "clicked", G_CALLBACK(tasks_remove_item_cb), appGUI); /*-------------------------------------------------------------------------------------*/ gtk_widget_set_sensitive(gtk_ui_manager_get_widget (appGUI->tsk->tasks_uim_widget, "/toolbar/edit"), FALSE); gtk_widget_set_sensitive(gtk_ui_manager_get_widget (appGUI->tsk->tasks_uim_widget, "/toolbar/delete"), FALSE); hseparator = gtk_hseparator_new (); gtk_widget_show (hseparator); gtk_box_pack_start (GTK_BOX (vbox1), hseparator, FALSE, TRUE, 6); table = gtk_table_new (1, 4, FALSE); gtk_widget_show (table); gtk_box_pack_start (GTK_BOX (vbox1), table, FALSE, TRUE, 0); gtk_table_set_col_spacings (GTK_TABLE (table), 8); sprintf(tmpbuf, "<b>%s:</b>", _("Category filter")); label = gtk_label_new (tmpbuf); gtk_widget_show (label); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); appGUI->tsk->cf_combobox = gtk_combo_box_new_text (); gtk_widget_show (appGUI->tsk->cf_combobox); gtk_combo_box_set_focus_on_click (GTK_COMBO_BOX (appGUI->tsk->cf_combobox), FALSE); GTK_WIDGET_UNSET_FLAGS(appGUI->tsk->cf_combobox, GTK_CAN_FOCUS); gtk_table_attach (GTK_TABLE (table), appGUI->tsk->cf_combobox, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); g_signal_connect(appGUI->tsk->cf_combobox, "changed", G_CALLBACK(category_filter_cb), appGUI); g_signal_connect(G_OBJECT(appGUI->tsk->cf_combobox), "focus", G_CALLBACK(category_combo_box_focus_cb), NULL); appGUI->tsk->n_items_label = gtk_label_new (""); gtk_widget_show (appGUI->tsk->n_items_label); gtk_widget_set_size_request (appGUI->tsk->n_items_label, 100, -1); gtk_table_attach (GTK_TABLE (table), appGUI->tsk->n_items_label, 3, 4, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_label_set_use_markup (GTK_LABEL (appGUI->tsk->n_items_label), TRUE); hseparator = gtk_hseparator_new (); gtk_widget_show (hseparator); gtk_box_pack_start (GTK_BOX (vbox1), hseparator, FALSE, TRUE, 6); /*-------------------------------------------------------------------------------------*/ appGUI->tsk->tasks_paned = gtk_vpaned_new(); gtk_widget_show (appGUI->tsk->tasks_paned); gtk_paned_set_position(GTK_PANED(appGUI->tsk->tasks_paned), 99999); gtk_box_pack_start(GTK_BOX(vbox1), appGUI->tsk->tasks_paned, TRUE, TRUE, 0); top_viewport = gtk_viewport_new (NULL, NULL); gtk_widget_show (top_viewport); gtk_viewport_set_shadow_type (GTK_VIEWPORT (top_viewport), GTK_SHADOW_NONE); gtk_paned_pack1 (GTK_PANED (appGUI->tsk->tasks_paned), top_viewport, FALSE, TRUE); top_scrolledwindow = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show (top_scrolledwindow); gtk_container_add (GTK_CONTAINER (top_viewport), top_scrolledwindow); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (top_scrolledwindow), GTK_SHADOW_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (top_scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); appGUI->tsk->tasks_list_store = gtk_list_store_new(TASKS_NUM_COLUMNS, G_TYPE_BOOLEAN, G_TYPE_STRING, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING); appGUI->tsk->tasks_filter = gtk_tree_model_filter_new(GTK_TREE_MODEL(appGUI->tsk->tasks_list_store), NULL); gtk_tree_model_filter_set_visible_func (GTK_TREE_MODEL_FILTER(appGUI->tsk->tasks_filter), (GtkTreeModelFilterVisibleFunc)tasks_list_filter_cb, appGUI, NULL); appGUI->tsk->tasks_sort = gtk_tree_model_sort_new_with_model(GTK_TREE_MODEL(appGUI->tsk->tasks_filter)); appGUI->tsk->tasks_list = gtk_tree_view_new_with_model(GTK_TREE_MODEL(appGUI->tsk->tasks_sort)); gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(appGUI->tsk->tasks_list), config.tasks_rules_hint); gtk_widget_show (appGUI->tsk->tasks_list); GTK_WIDGET_SET_FLAGS (appGUI->tsk->tasks_list, GTK_CAN_DEFAULT); gtk_widget_modify_fg(GTK_WIDGET(appGUI->tsk->tasks_list), GTK_STATE_SELECTED, (& GTK_WIDGET(appGUI->tsk->tasks_list)->style->base[GTK_STATE_SELECTED])); gtk_widget_modify_fg(GTK_WIDGET(appGUI->tsk->tasks_list), GTK_STATE_NORMAL, (& GTK_WIDGET(appGUI->tsk->tasks_list)->style->bg[GTK_STATE_NORMAL])); g_signal_connect(G_OBJECT(appGUI->tsk->tasks_list), "button_press_event", G_CALLBACK(list_dbclick_cb), appGUI); appGUI->tsk->tasks_list_selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (appGUI->tsk->tasks_list)); g_signal_connect(G_OBJECT(appGUI->tsk->tasks_list_selection), "changed", G_CALLBACK(tasks_item_selected), appGUI); /* create columns */ renderer = gtk_cell_renderer_toggle_new(); appGUI->tsk->tasks_columns[COLUMN_DONE] = gtk_tree_view_column_new_with_attributes (_("Done"), renderer, "active", COLUMN_DONE, NULL); gtk_tree_view_append_column (GTK_TREE_VIEW(appGUI->tsk->tasks_list), appGUI->tsk->tasks_columns[COLUMN_DONE]); g_signal_connect (renderer, "toggled", G_CALLBACK (done_toggled), appGUI); renderer = gtk_cell_renderer_text_new(); appGUI->tsk->tasks_columns[COLUMN_DUE_DATE] = gtk_tree_view_column_new_with_attributes(_("Due date"), renderer, "text", COLUMN_DUE_DATE, "strikethrough", COLUMN_DONE, "foreground", COLUMN_COLOR, NULL); gtk_tree_view_column_set_visible (appGUI->tsk->tasks_columns[COLUMN_DUE_DATE], config.visible_due_date_column); gtk_tree_view_append_column(GTK_TREE_VIEW(appGUI->tsk->tasks_list), appGUI->tsk->tasks_columns[COLUMN_DUE_DATE]); renderer = gtk_cell_renderer_text_new(); appGUI->tsk->tasks_columns[COLUMN_DUE_DATE_JULIAN] = gtk_tree_view_column_new_with_attributes(NULL, renderer, "text", COLUMN_DUE_DATE_JULIAN, "strikethrough", COLUMN_DONE, "foreground", COLUMN_COLOR, NULL); gtk_tree_view_column_set_visible (appGUI->tsk->tasks_columns[COLUMN_DUE_DATE_JULIAN], FALSE); gtk_tree_view_append_column(GTK_TREE_VIEW(appGUI->tsk->tasks_list), appGUI->tsk->tasks_columns[COLUMN_DUE_DATE_JULIAN]); renderer = gtk_cell_renderer_text_new(); appGUI->tsk->tasks_columns[COLUMN_START_DATE_JULIAN] = gtk_tree_view_column_new_with_attributes(NULL, renderer, "text", COLUMN_START_DATE_JULIAN, "strikethrough", COLUMN_DONE, "foreground", COLUMN_COLOR, NULL); gtk_tree_view_column_set_visible (appGUI->tsk->tasks_columns[COLUMN_START_DATE_JULIAN], FALSE); gtk_tree_view_append_column(GTK_TREE_VIEW(appGUI->tsk->tasks_list), appGUI->tsk->tasks_columns[COLUMN_START_DATE_JULIAN]); renderer = gtk_cell_renderer_text_new(); appGUI->tsk->tasks_columns[COLUMN_PRIORITY] = gtk_tree_view_column_new_with_attributes(_("Priority"), renderer, "text", COLUMN_PRIORITY, "strikethrough", COLUMN_DONE, "foreground", COLUMN_COLOR, NULL); gtk_tree_view_column_set_visible (appGUI->tsk->tasks_columns[COLUMN_PRIORITY], config.visible_priority_column); gtk_tree_view_append_column(GTK_TREE_VIEW(appGUI->tsk->tasks_list), appGUI->tsk->tasks_columns[COLUMN_PRIORITY]); renderer = gtk_cell_renderer_text_new(); appGUI->tsk->tasks_columns[COLUMN_CATEGORY] = gtk_tree_view_column_new_with_attributes(_("Category"), renderer, "text", COLUMN_CATEGORY, "strikethrough", COLUMN_DONE, "foreground", COLUMN_COLOR, NULL); gtk_tree_view_column_set_visible (appGUI->tsk->tasks_columns[COLUMN_CATEGORY], config.visible_category_column); gtk_tree_view_append_column(GTK_TREE_VIEW(appGUI->tsk->tasks_list), appGUI->tsk->tasks_columns[COLUMN_CATEGORY]); renderer = gtk_cell_renderer_text_new(); g_object_set(G_OBJECT(renderer), "ellipsize", PANGO_ELLIPSIZE_END, NULL); gtk_cell_renderer_set_fixed_size(renderer, 0, -1); appGUI->tsk->tasks_columns[COLUMN_SUMMARY] = gtk_tree_view_column_new_with_attributes(_("Summary"), renderer, "text", COLUMN_SUMMARY, "strikethrough", COLUMN_DONE, "foreground", COLUMN_COLOR, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(appGUI->tsk->tasks_list), appGUI->tsk->tasks_columns[COLUMN_SUMMARY]); renderer = gtk_cell_renderer_text_new(); appGUI->tsk->tasks_columns[COLUMN_DESCRIPTION] = gtk_tree_view_column_new_with_attributes(_("Description"), renderer, "text", COLUMN_DESCRIPTION, NULL); gtk_tree_view_column_set_visible (appGUI->tsk->tasks_columns[COLUMN_DESCRIPTION], FALSE); gtk_tree_view_append_column(GTK_TREE_VIEW(appGUI->tsk->tasks_list), appGUI->tsk->tasks_columns[COLUMN_DESCRIPTION]); renderer = gtk_cell_renderer_text_new(); appGUI->tsk->tasks_columns[COLUMN_COLOR] = gtk_tree_view_column_new_with_attributes(NULL, renderer, "text", COLUMN_COLOR, NULL); gtk_tree_view_column_set_visible (appGUI->tsk->tasks_columns[COLUMN_COLOR], FALSE); gtk_tree_view_append_column(GTK_TREE_VIEW(appGUI->tsk->tasks_list), appGUI->tsk->tasks_columns[COLUMN_COLOR]); /* configure list options */ gtk_container_add (GTK_CONTAINER (top_scrolledwindow), appGUI->tsk->tasks_list); gtk_tree_view_set_enable_search (GTK_TREE_VIEW(appGUI->tsk->tasks_list), FALSE); /* configure sorting */ gtk_tree_sortable_set_sort_func((GtkTreeSortable *)appGUI->tsk->tasks_sort, 0, (GtkTreeIterCompareFunc)custom_tasks_sort_function, NULL, NULL); gtk_tree_sortable_set_sort_column_id((GtkTreeSortable *)appGUI->tsk->tasks_sort, COLUMN_DUE_DATE, config.tasks_sorting_order); gtk_tree_sortable_set_sort_column_id((GtkTreeSortable *)appGUI->tsk->tasks_sort, COLUMN_PRIORITY, config.tasks_sorting_order); gtk_tree_sortable_set_sort_column_id((GtkTreeSortable *)appGUI->tsk->tasks_sort, COLUMN_DONE, config.tasks_sorting_order); /*----------------------------------------------------------------------------*/ bottom_viewport = gtk_viewport_new (NULL, NULL); gtk_widget_show (bottom_viewport); gtk_viewport_set_shadow_type (GTK_VIEWPORT (bottom_viewport), GTK_SHADOW_NONE); gtk_paned_pack2 (GTK_PANED (appGUI->tsk->tasks_paned), bottom_viewport, TRUE, TRUE); vbox2 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox2); gtk_container_set_border_width (GTK_CONTAINER (vbox2), 0); gtk_container_add (GTK_CONTAINER (bottom_viewport), vbox2); appGUI->tsk->panel_hbox = gtk_hbox_new (FALSE, 0); gtk_box_pack_start (GTK_BOX (vbox2), appGUI->tsk->panel_hbox, FALSE, FALSE, 0); gtk_widget_show(appGUI->tsk->panel_hbox); sprintf(tmpbuf, "%s:", _("Task details")); label = gtk_label_new (tmpbuf); gtk_widget_show (label); gtk_box_pack_start (GTK_BOX (appGUI->tsk->panel_hbox), label, FALSE, FALSE, 0); if (config.default_stock_icons) { close_button = gui_stock_button(GTK_STOCK_CLOSE, FALSE); } else { close_button = gui_stock_button(OSMO_STOCK_BUTTON_CLOSE, FALSE); } GTK_WIDGET_UNSET_FLAGS(close_button, GTK_CAN_FOCUS); gtk_button_set_relief (GTK_BUTTON(close_button), GTK_RELIEF_NONE); gtk_tooltips_set_tip (appGUI->osmo_tooltips, close_button, _("Close description panel"), NULL); gtk_box_pack_end (GTK_BOX (appGUI->tsk->panel_hbox), close_button, FALSE, FALSE, 0); g_signal_connect (G_OBJECT (close_button), "clicked", G_CALLBACK (panel_close_desc_cb), appGUI); appGUI->tsk->panel_scrolledwindow = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show (appGUI->tsk->panel_scrolledwindow); gtk_box_pack_start (GTK_BOX (vbox2), appGUI->tsk->panel_scrolledwindow, TRUE, TRUE, 0); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (appGUI->tsk->panel_scrolledwindow), GTK_SHADOW_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (appGUI->tsk->panel_scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); appGUI->tsk->tasks_desc_textview = gtk_text_view_new (); gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (appGUI->tsk->tasks_desc_textview), GTK_WRAP_WORD); gtk_text_view_set_pixels_above_lines(GTK_TEXT_VIEW(appGUI->tsk->tasks_desc_textview), 4); gtk_text_view_set_left_margin(GTK_TEXT_VIEW(appGUI->tsk->tasks_desc_textview), 4); gtk_text_view_set_right_margin(GTK_TEXT_VIEW(appGUI->tsk->tasks_desc_textview), 4); gtk_text_view_set_cursor_visible(GTK_TEXT_VIEW(appGUI->tsk->tasks_desc_textview), FALSE); gtk_text_view_set_editable(GTK_TEXT_VIEW(appGUI->tsk->tasks_desc_textview), FALSE); gtk_widget_show (appGUI->tsk->tasks_desc_textview); gtk_container_add (GTK_CONTAINER (appGUI->tsk->panel_scrolledwindow), appGUI->tsk->tasks_desc_textview); text_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(appGUI->tsk->tasks_desc_textview)); gtk_text_buffer_create_tag (text_buffer, "italic", "style", PANGO_STYLE_ITALIC, NULL); appGUI->tsk->font_tag_object = gtk_text_buffer_create_tag (text_buffer, "info_font", "font", (gchar *) config.task_info_font, NULL); }
int main_update_please(GtkWidget * update_button, gpointer data) { extern GtkWidget *connection_label; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *hseparator3; GtkWidget *table1; GtkWidget *label3; GtkWidget *label6; GtkWidget *hseparator1; GtkWidget *label2; GtkWidget *label1; GtkWidget *dialog_action_area1; uploaded_bytes = 0.0; if (selected_site == NULL) { gnome_error_dialog("You must select a site if you want to upload the changes!"); return 0; } if (!selected_site->remote_is_different) { gfe_status("Remote and local sites are already synchronised."); return 1; } upload_total = selected_site->totalnew + selected_site->totalchanged; make_error_window(); upload_window = gnome_dialog_new("Update Progress", NULL); gtk_widget_set_usize(upload_window, 480, -2); dialog_vbox1 = GNOME_DIALOG(upload_window)->vbox; gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 1); gtk_widget_ref(vbox1); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); hseparator3 = gtk_hseparator_new(); gtk_widget_ref(hseparator3); gtk_widget_show(hseparator3); gtk_box_pack_start(GTK_BOX(vbox1), hseparator3, TRUE, TRUE, 3); table1 = gtk_table_new(4, 2, FALSE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(vbox1), table1, TRUE, TRUE, 0); gtk_table_set_row_spacings(GTK_TABLE(table1), 1); gtk_table_set_col_spacings(GTK_TABLE(table1), 2); status_label = gtk_label_new("Click Upload to begin."); gtk_widget_show(status_label); connection_label = status_label; gtk_table_attach(GTK_TABLE(table1), status_label, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_label_set_justify(GTK_LABEL(status_label), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment(GTK_MISC(status_label), 7.45058e-09, 0.5); op_label = gtk_label_new(" "); gtk_widget_show(op_label); gtk_table_attach(GTK_TABLE(table1), op_label, 0, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_label_set_justify(GTK_LABEL(op_label), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment(GTK_MISC(op_label), 7.45058e-09, 0.5); file_label = gtk_label_new(""); gtk_widget_show(file_label); gtk_table_attach(GTK_TABLE(table1), file_label, 0, 2, 2, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_label_set_justify(GTK_LABEL(file_label), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment(GTK_MISC(file_label), 7.45058e-09, 0.5); label3 = gtk_label_new("Status: "); gtk_widget_show(label3); gtk_table_attach(GTK_TABLE(table1), label3, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_label_set_justify(GTK_LABEL(label3), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment(GTK_MISC(label3), 7.45058e-09, 0.5); label6 = gtk_label_new("To: "); gtk_widget_show(label6); gtk_table_attach(GTK_TABLE(table1), label6, 0, 1, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_label_set_justify(GTK_LABEL(label6), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment(GTK_MISC(label6), 7.45058e-09, 0.5); dir_label = gtk_label_new(" "); gtk_widget_show(dir_label); gtk_table_attach(GTK_TABLE(table1), dir_label, 1, 2, 3, 4, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_label_set_justify(GTK_LABEL(dir_label), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment(GTK_MISC(dir_label), 7.45058e-09, 0.5); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(vbox1), hseparator1, TRUE, TRUE, 5); label2 = gtk_label_new("Current Progress"); gtk_widget_show(label2); gtk_box_pack_start(GTK_BOX(vbox1), label2, TRUE, FALSE, 2); gtk_misc_set_alignment(GTK_MISC(label2), 0.5, 1); main_progressbar = gtk_progress_bar_new(); gtk_widget_show(main_progressbar); gtk_box_pack_start(GTK_BOX(vbox1), main_progressbar, TRUE, FALSE, 0); gtk_progress_set_show_text(GTK_PROGRESS(main_progressbar), TRUE); label1 = gtk_label_new("Total Progress"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, TRUE, FALSE, 2); gtk_misc_set_alignment(GTK_MISC(label1), 0.5, 1); job_progressbar = gtk_progress_bar_new(); gtk_widget_show(job_progressbar); gtk_box_pack_start(GTK_BOX(vbox1), job_progressbar, TRUE, FALSE, 0); gtk_progress_set_show_text(GTK_PROGRESS(job_progressbar), TRUE); keep_going_button = gtk_check_button_new_with_label("Ignore any errors and always keep going."); gtk_widget_show(keep_going_button); gtk_box_pack_start(GTK_BOX(vbox1), keep_going_button, TRUE, TRUE, 0); dialog_action_area1 = GNOME_DIALOG(upload_window)->action_area; gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); gtk_button_box_set_spacing(GTK_BUTTON_BOX(dialog_action_area1), 8); gnome_dialog_append_button_with_pixmap(GNOME_DIALOG(upload_window), "Upload", GNOME_STOCK_PIXMAP_CONVERT); begin_button = g_list_last(GNOME_DIALOG(upload_window)->buttons)->data; gtk_widget_show(begin_button); GTK_WIDGET_SET_FLAGS(begin_button, GTK_CAN_DEFAULT); gnome_dialog_append_button_with_pixmap(GNOME_DIALOG(upload_window), "View Errors", GNOME_STOCK_PIXMAP_SEARCH); error_button = g_list_last(GNOME_DIALOG(upload_window)->buttons)->data; gtk_signal_connect_object(GTK_OBJECT(error_button), "clicked", GTK_SIGNAL_FUNC(gtk_widget_show), GTK_OBJECT(error_log_window)); gtk_widget_show(error_button); gtk_widget_set_sensitive(error_button, FALSE); GTK_WIDGET_SET_FLAGS(error_button, GTK_CAN_DEFAULT); gnome_dialog_append_button(GNOME_DIALOG(upload_window), GNOME_STOCK_BUTTON_CLOSE); close_button = g_list_last(GNOME_DIALOG(upload_window)->buttons)->data; gtk_signal_connect(GTK_OBJECT(close_button), "clicked", GTK_SIGNAL_FUNC(close_main_update_window), NULL); /* gtk_signal_connect_object(GTK_OBJECT(close_button), "clicked", GTK_SIGNAL_FUNC(gnome_dialog_close), (gpointer) upload_window); */ gtk_widget_show(close_button); GTK_WIDGET_SET_FLAGS(close_button, GTK_CAN_DEFAULT); if (strcmp((gchar *)data, "single") == 0) { gtk_signal_connect(GTK_OBJECT(begin_button), "clicked", GTK_SIGNAL_FUNC(start_main_update), "single"); } else if (strcmp((gchar *)data, "all") == 0) { gtk_signal_connect(GTK_OBJECT(begin_button), "clicked", GTK_SIGNAL_FUNC(start_main_update), "all"); } else { g_assert_not_reached(); } gtk_widget_show(upload_window); return 2; }
/** Create contents of the accept dialog in here. @return 0 if success, -1 on errors. */ int nhdlg_create_content(void) { /* Variables. */ GtkWidget *window = (GtkWidget *)widget(ID_NHDLG); GtkWidget *frame, *w, *vb, *vb1, *vb2, *sw, *hb, *hp, *exp; gtk_container_set_border_width(GTK_CONTAINER(window), 1); /* Create remote HIT info. */ frame = gtk_frame_new(NULL); gtk_frame_set_label(GTK_FRAME(frame), lang_get("nhdlg-newinfo")); gtk_frame_set_label_align(GTK_FRAME(frame), 0.0, 0.0); gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_OUT); gtk_container_set_border_width(GTK_CONTAINER(frame), 5); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), frame, TRUE, TRUE, 3); gtk_widget_show(GTK_WIDGET(frame)); /* This box is for adding everything inside previous frame. */ vb = gtk_vbox_new(FALSE, 1); gtk_container_add(GTK_CONTAINER(frame), vb); gtk_widget_show(GTK_WIDGET(vb)); /* Now create basic information. */ hb = gtk_hbox_new(FALSE, 1); gtk_box_pack_start(GTK_BOX(vb), hb, FALSE, FALSE, 3); gtk_widget_show(GTK_WIDGET(hb)); w = gtk_label_new(lang_get("nhdlg-newhit")); gtk_box_pack_start(GTK_BOX(hb), w, FALSE, FALSE, 3); gtk_widget_show(GTK_WIDGET(w)); w = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(hb), w, TRUE, TRUE, 3); gtk_widget_show(GTK_WIDGET(w)); widget_set(ID_NH_HIT, w); gtk_tooltips_set_tip(widget(ID_TOOLTIPS), w, lang_get("nhdlg-tt-hit"), lang_get("nhdlg-tt-hit-priv")); hb = gtk_hbox_new(FALSE, 1); gtk_box_pack_start(GTK_BOX(vb), hb, FALSE, FALSE, 3); gtk_widget_show(GTK_WIDGET(hb)); w = gtk_label_new(lang_get("nhdlg-name")); gtk_box_pack_start(GTK_BOX(hb), w, FALSE, FALSE, 3); gtk_widget_show(GTK_WIDGET(w)); w = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(w), ""); gtk_box_pack_start(GTK_BOX(hb), w, TRUE, TRUE, 3); gtk_entry_set_activates_default(GTK_ENTRY(w), TRUE); gtk_entry_set_max_length(GTK_ENTRY(w), MAX_NAME_LEN); gtk_widget_show(GTK_WIDGET(w)); widget_set(ID_NH_NAME, w); w = gtk_label_new(lang_get("nhdlg-group")); gtk_box_pack_start(GTK_BOX(hb), w, FALSE, FALSE, 3); gtk_widget_show(GTK_WIDGET(w)); w = gtk_combo_box_new_text(); g_signal_connect(w, "changed", G_CALLBACK(button_event), (gpointer)IDB_NH_RGROUPS); widget_set(ID_NH_RGROUP, w); gtk_box_pack_start(GTK_BOX(hb), w, TRUE, TRUE, 3); gtk_widget_show(GTK_WIDGET(w)); /* Separator between basic and advanced. */ w = gtk_hseparator_new(); gtk_box_pack_start(GTK_BOX(vb), w, FALSE, FALSE, 2); gtk_widget_show(GTK_WIDGET(w)); /* Advanced information. */ exp = gtk_expander_new(lang_get("nhdlg-advanced")); gtk_box_pack_start(GTK_BOX(vb), exp, FALSE, TRUE, 2); gtk_widget_show(GTK_WIDGET(exp)); widget_set(ID_NH_EXPANDER, exp); g_signal_connect(exp, "activate", G_CALLBACK(button_event), (gpointer)IDB_NH_EXPANDER); g_signal_connect(exp, "check-resize", G_CALLBACK(button_event), (gpointer)IDB_NH_EXPANDER); vb2 = gtk_vbox_new(FALSE, 2); gtk_container_add(GTK_CONTAINER(exp), vb2); gtk_widget_show(GTK_WIDGET(vb2)); hb = gtk_hbox_new(FALSE, 1); gtk_box_pack_start(GTK_BOX(vb2), hb, FALSE, FALSE, 1); gtk_widget_show(GTK_WIDGET(hb)); /* w = gtk_label_new(lang_get("nhdlg-url")); gtk_box_pack_start(GTK_BOX(hb), w, FALSE, FALSE, 5); gtk_widget_show(GTK_WIDGET(w)); w = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(w), ""); gtk_box_pack_start(GTK_BOX(hb), w, TRUE, TRUE, 5); gtk_entry_set_max_length(GTK_ENTRY(w), MAX_URL_LEN); gtk_entry_set_activates_default(GTK_ENTRY(w), TRUE); gtk_widget_show(GTK_WIDGET(w)); widget_set(ID_NH_URL, w);*/ /* w = gtk_label_new(lang_get("nhdlg-port")); gtk_box_pack_start(GTK_BOX(hb), w, FALSE, FALSE, 5); gtk_widget_show(GTK_WIDGET(w)); w = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(w), "0"); gtk_box_pack_start(GTK_BOX(hb), w, FALSE, TRUE, 5); gtk_widget_set_size_request(GTK_WIDGET(w), 70, -1); gtk_entry_set_max_length(GTK_ENTRY(w), 8); gtk_entry_set_activates_default(GTK_ENTRY(w), TRUE); gtk_widget_show(GTK_WIDGET(w)); widget_set(ID_NH_PORT, w);*/ frame = gtk_frame_new(NULL); gtk_frame_set_label(GTK_FRAME(frame), lang_get("nhdlg-g-info")); gtk_frame_set_label_align(GTK_FRAME(frame), 0.0, 0.0); gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_OUT); gtk_container_set_border_width(GTK_CONTAINER(frame), 5); gtk_box_pack_start(GTK_BOX(vb2), frame, FALSE, FALSE, 1); gtk_widget_show(GTK_WIDGET(frame)); vb2 = gtk_vbox_new(FALSE, 2); gtk_container_add(GTK_CONTAINER(frame), vb2); gtk_widget_show(GTK_WIDGET(vb2)); hb = gtk_hbox_new(FALSE, 1); gtk_box_pack_start(GTK_BOX(vb2), hb, FALSE, FALSE, 1); gtk_widget_show(GTK_WIDGET(hb)); w = gtk_label_new(lang_get("nhdlg-g-localhit")); gtk_box_pack_start(GTK_BOX(hb), w, FALSE, FALSE, 5); gtk_widget_show(GTK_WIDGET(w)); w = gtk_combo_box_new_text(); gtk_box_pack_start(GTK_BOX(hb), w, TRUE, TRUE, 1); gtk_widget_set_sensitive(GTK_WIDGET(w), FALSE); gtk_widget_show(GTK_WIDGET(w)); widget_set(ID_NH_LOCAL, w); hb = gtk_hbox_new(FALSE, 1); gtk_box_pack_start(GTK_BOX(vb2), hb, FALSE, FALSE, 1); gtk_widget_show(GTK_WIDGET(hb)); w = gtk_label_new(lang_get("nhdlg-g-type")); gtk_box_pack_start(GTK_BOX(hb), w, FALSE, FALSE, 5); gtk_widget_show(GTK_WIDGET(w)); w = gtk_combo_box_new_text(); gtk_combo_box_append_text(GTK_COMBO_BOX(w), lang_get("group-type-accept")); gtk_combo_box_append_text(GTK_COMBO_BOX(w), lang_get("group-type-deny")); gtk_combo_box_set_active(GTK_COMBO_BOX(w), 0); gtk_box_pack_start(GTK_BOX(hb), w, TRUE, TRUE, 1); gtk_widget_set_sensitive(GTK_WIDGET(w), FALSE); gtk_widget_show(GTK_WIDGET(w)); widget_set(ID_NH_TYPE1, w); w = gtk_label_new(lang_get("nhdlg-g-lightweight")); gtk_box_pack_start(GTK_BOX(hb), w, FALSE, FALSE, 5); gtk_widget_show(GTK_WIDGET(w)); w = gtk_combo_box_new_text(); gtk_combo_box_append_text(GTK_COMBO_BOX(w), lang_get("group-type2-normal")); gtk_combo_box_append_text(GTK_COMBO_BOX(w), lang_get("group-type2-lightweight")); gtk_combo_box_set_active(GTK_COMBO_BOX(w), 0); gtk_box_pack_start(GTK_BOX(hb), w, TRUE, TRUE, 1); gtk_widget_set_sensitive(GTK_WIDGET(w), FALSE); gtk_widget_show(GTK_WIDGET(w)); widget_set(ID_NH_TYPE2, w); return (0); }
static void random_change_cb (GSettings *settings, gchar *key, GtkWidget *widget) { gtk_widget_set_sensitive (widget, !g_settings_get_boolean (settings, key)); }