GtkWidget *vsvks_vidnal(int *nomerstr) { int nomer=0; GtkWidget *opt = gtk_option_menu_new(); GtkWidget *menu = gtk_menu_new(); GtkWidget *item; item = gtk_menu_item_new_with_label (iceb_u_toutf(gettext("С НДС"))); gtk_signal_connect (GTK_OBJECT (item), "activate",GTK_SIGNAL_FUNC(iceb_get_menu), nomerstr); gtk_object_set_user_data(GTK_OBJECT(item),(gpointer)nomer++); gtk_widget_show (item); gtk_menu_append (GTK_MENU (menu), item); item = gtk_menu_item_new_with_label (iceb_u_toutf(gettext("Без НДС"))); gtk_signal_connect (GTK_OBJECT (item), "activate",GTK_SIGNAL_FUNC(iceb_get_menu), nomerstr); gtk_object_set_user_data(GTK_OBJECT(item),(gpointer)nomer++); gtk_widget_show (item); gtk_menu_append (GTK_MENU (menu), item); gtk_option_menu_set_menu (GTK_OPTION_MENU (opt), menu); gtk_option_menu_set_history(GTK_OPTION_MENU(opt),*nomerstr); return(opt); }
static void playlist_cb(GtkWidget *widget, guint data) { const gchar *pldir; gchar *plpatt; if( ! plfilesel ) { plfilesel = gtk_file_selection_new(""); gtk_file_selection_hide_fileop_buttons(GTK_FILE_SELECTION(plfilesel)); pldir = g_getenv("TIMIDITY_PLAYLIST_DIR"); if(pldir != NULL) { plpatt = g_strconcat(pldir, "/*.tpl", NULL); gtk_file_selection_set_filename(GTK_FILE_SELECTION(plfilesel), plpatt); g_free(plpatt); } gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(plfilesel)->ok_button), "clicked", GTK_SIGNAL_FUNC (playlist_op), (gpointer)1); gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(plfilesel)->cancel_button), "clicked", GTK_SIGNAL_FUNC (playlist_op), NULL); } gtk_window_set_title(GTK_WINDOW(plfilesel), ((char)data == 'l')? "Load Playlist": "Save Playlist"); gtk_object_set_user_data(GTK_OBJECT(plfilesel), GINT_TO_POINTER(data)); gtk_file_selection_complete(GTK_FILE_SELECTION(plfilesel), "*.tpl"); gtk_widget_show(plfilesel); } /* playlist_cb */
ZLGtkSelectionDialog::ZLGtkSelectionDialog(const char *caption, ZLTreeHandler &handler) : ZLSelectionDialog(handler) { myExitFlag = false; myNodeSelected = false; myDialog = createGtkDialog(caption); std::string okString = gtkButtonName(ZLDialogManager::OK_BUTTON); std::string cancelString = gtkButtonName(ZLDialogManager::CANCEL_BUTTON); gtk_dialog_add_button(myDialog, okString.c_str(), GTK_RESPONSE_ACCEPT); gtk_dialog_add_button(myDialog, cancelString.c_str(), GTK_RESPONSE_REJECT); myStateLine = GTK_ENTRY(gtk_entry_new()); gtk_editable_set_editable(GTK_EDITABLE(myStateLine), !this->handler().isOpenHandler()); gtk_widget_set_sensitive(GTK_WIDGET(myStateLine), !this->handler().isOpenHandler()); gtk_box_pack_start(GTK_BOX(myDialog->vbox), GTK_WIDGET(myStateLine), false, false, 2); gtk_widget_show(GTK_WIDGET(myStateLine)); myStore = gtk_list_store_new(3, GDK_TYPE_PIXBUF, G_TYPE_STRING, G_TYPE_INT); myView = GTK_TREE_VIEW(gtk_tree_view_new_with_model(GTK_TREE_MODEL(myStore))); gtk_object_set_user_data(GTK_OBJECT(myView), this); gtk_tree_view_set_headers_visible(myView, false); GtkTreeSelection *selection = gtk_tree_view_get_selection(myView); gtk_tree_selection_set_mode(selection, GTK_SELECTION_BROWSE); // MSS: in case we do not want single click navigation, comment out the line below g_signal_connect(myView, "button-press-event", G_CALLBACK(clickHandler), this); GtkCellRenderer *renderer; GtkTreeViewColumn *column; column = gtk_tree_view_column_new(); gtk_tree_view_insert_column(myView, column, -1); gtk_tree_view_column_set_resizable(column, true); renderer = gtk_cell_renderer_pixbuf_new(); gtk_tree_view_column_pack_start(column, renderer, false); gtk_tree_view_column_add_attribute(column, renderer, "pixbuf", 0); renderer = gtk_cell_renderer_text_new(); gtk_tree_view_column_pack_start(column, renderer, true); gtk_tree_view_column_add_attribute(column, renderer, "text", 1); g_signal_connect(myView, "row-activated", G_CALLBACK(activatedHandler), 0); GtkWidget *scrolledWindow = gtk_scrolled_window_new(0, 0); gtk_container_add(GTK_CONTAINER(scrolledWindow), GTK_WIDGET(myView)); gtk_box_pack_start(GTK_BOX(myDialog->vbox), scrolledWindow, true, true, 2); gtk_widget_show_all(scrolledWindow); gtk_widget_grab_focus(GTK_WIDGET(myView)); gtk_window_resize(GTK_WINDOW(myDialog), 1000, 1000); update(); }
void CInstaller::CoreAddScreen(CBaseScreen *screen) { CInstallScreen *gtkscreen = dynamic_cast<CInstallScreen *>(screen); gtkscreen->Init(); gtk_object_set_user_data(GTK_OBJECT(gtkscreen->GetBox()), gtkscreen); gtk_widget_show(gtkscreen->GetBox()); gtk_notebook_append_page(GTK_NOTEBOOK(m_pWizard), gtkscreen->GetBox(), NULL); }
static void add_list_entry(GtkWidget *listw, const char *str, unsigned long value) { GtkWidget *item; item = gtk_list_item_new_with_label(str); gtk_object_set_user_data(GTK_OBJECT(item), (gpointer)value); gtk_widget_show(item); gtk_container_add(GTK_CONTAINER(listw), item); }
/** * Add a new menu item to the GtkMenu "menu" with the label "label_text" and * the data "data". */ GtkWidget * menu_new_item_with_data(GtkMenu *menu, const gchar *label_text, gpointer data) { GtkWidget *widget; g_assert(menu); g_assert(label_text); widget = gtk_menu_item_new_with_label(label_text); gtk_object_set_user_data(GTK_OBJECT(widget), data); gtk_widget_show(widget); gtk_menu_append(menu, widget); return widget; }
void on_delete1_activate (GtkMenuItem * UNUSED(menuitem), gpointer UNUSED(user_data)) { GtkWidget *w; GtkCTree *ctree; GtkCTreeNode *n; mboxs *m; ctree = GTK_CTREE (lookup_widget (gems, "mailboxlist")); n = gtk_ctree_node_nth (ctree, (&(ctree->clist))->focus_row); m = (mboxs *) gtk_ctree_node_get_row_data (ctree, n); w = create_delete_mbox (); gtk_widget_show (w); gtk_object_set_user_data (GTK_OBJECT (w), m); }
static xchatwin * wins_add_window (GtkWidget *win, char *title, char *name) { xchatwin *xw; xw = malloc (sizeof (struct xchatwin)); memset (xw, 0, sizeof (struct xchatwin)); xw->title = strdup (title); xw->name = strdup (name); xw->child = win; gtk_signal_connect (GTK_OBJECT (win), "destroy", GTK_SIGNAL_FUNC (wins_destroy_cb), xw); gtk_object_set_user_data (GTK_OBJECT (win), xw); return xw; }
GtkWidget *create_progress_bar (void) { GtkWidget *pbar; struct pbarinfo *info; pbar = gtk_progress_bar_new (); info = g_malloc0 (sizeof (struct pbarinfo)); gtk_object_set_user_data (GTK_OBJECT (pbar), info); gtk_signal_connect (GTK_OBJECT (pbar), "destroy", (GtkSignalFunc) progress_bar_destroy_event, NULL); gtk_progress_set_format_string (GTK_PROGRESS (pbar), "%1p%%"); /* gtk_progress_configure (GTK_PROGRESS (pbar), 0.0, 0.0, 100.0); */ gtk_progress_bar_set_activity_step (GTK_PROGRESS_BAR (pbar), 5); return pbar; }
void iceb_pm_vibor(class iceb_u_spisok *strmenu,GtkWidget **opt,int *nomer_str) { *opt = gtk_option_menu_new(); GtkWidget *menu = gtk_menu_new(); int nomer=0; GtkWidget *item; for(int ii=0; ii < strmenu->kolih(); ii++) { item = gtk_menu_item_new_with_label (strmenu->ravno_toutf(ii)); gtk_signal_connect (GTK_OBJECT (item), "activate",GtkSignalFunc(iceb_pm_vibor_get),nomer_str); gtk_object_set_user_data(GTK_OBJECT(item),(gpointer)nomer++); gtk_widget_show (item); gtk_menu_append (GTK_MENU (menu), item); } gtk_option_menu_set_menu (GTK_OPTION_MENU (*opt), menu); gtk_option_menu_set_history(GTK_OPTION_MENU(*opt),*nomer_str); }
PUBLIC GtkWidget *comp_get_newmenu(Sheet *sheet) { GtkWidget *menu; if( menufact == NULL ) { menufact = get_new_ifact(); g_object_ref( G_OBJECT(menufact) ); } if( menuentries_dirty ) { if( menufact != NULL ) { g_object_unref( G_OBJECT(menufact) ); } menufact = get_new_ifact(); } gtk_object_set_user_data( GTK_OBJECT( menufact ), sheet ); //gtk_signal_connect(GTK_OBJECT(menu), "destroy", GTK_SIGNAL_FUNC(kill_newmenu), ifact); menu = gtk_item_factory_get_widget(menufact, "<new>"); return menu; }
int iceb_l_sklad_v(class iceb_u_str *sklad_k,GtkWidget *wpredok) { char strsql[512]; iceb_u_str kikz; class iceb_l_sklad_v data; data.sklad_i.new_plus(sklad_k->ravno()); data.rk.clear_zero(); if(data.sklad_i.getdlinna() > 1) { data.rk.kod.new_plus(data.sklad_i.ravno()); sprintf(strsql,"select * from Sklad where kod=%s",data.sklad_i.ravno()); SQL_str row; SQLCURSOR cur; if(sql_readkey(&bd,strsql,&row,&cur) < 1) { iceb_menu_soob(gettext("Не найдена запись для корректировки !"),wpredok); return(1); } data.rk.fmol.new_plus(row[2]); data.rk.dolg.new_plus(row[3]); data.rk.naim.new_plus(row[1]); kikz.plus(iceb_kikz(row[4],row[5],wpredok)); data.rk.metka_isp_skl=atoi(row[6]); } else { sprintf(strsql,"%d",iceb_get_new_kod("Sklad",0,wpredok)); // printf("%s\n",strsql); data.rk.kod.new_plus(strsql); } data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); GtkWidget *label=NULL; if(data.sklad_i.getdlinna() <= 1) { sprintf(strsql,"%s %s",name_system,gettext("Ввод новой записи")); label=gtk_label_new(gettext("Ввод новой записи")); } else { sprintf(strsql,"%s %s",name_system,gettext("Корректировка записи")); iceb_u_str repl; repl.plus(gettext("Корректировка записи")); repl.ps_plus(kikz.ravno()); label=gtk_label_new(repl.ravno_toutf()); } 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),&data.window); gtk_signal_connect_after(GTK_OBJECT(data.window),"key_press_event",GTK_SIGNAL_FUNC(sklad_v_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, 0); GtkWidget *hbox[KOLENTER]; for(int i=0; i < KOLENTER; i++) hbox[i] = gtk_hbox_new (FALSE, 0); GtkWidget *hboxknop = gtk_hbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (data.window), vbox); gtk_container_add (GTK_CONTAINER (vbox), label); for(int i=0; i < KOLENTER; i++) gtk_box_pack_start (GTK_BOX (vbox),hbox[i], TRUE, TRUE, 2); // gtk_container_add (GTK_CONTAINER (vbox), hbox[i]); GtkWidget *separator1=gtk_hseparator_new(); GtkWidget *separator3=gtk_hseparator_new(); gtk_box_pack_start (GTK_BOX (vbox),separator1, TRUE, TRUE, 2); //Вставляем радиокнопки data.radiobutton2[0]=gtk_radio_button_new_with_label_from_widget(NULL,gettext("Используется")); data.radiobutton2[1]=gtk_radio_button_new_with_label_from_widget(GTK_RADIO_BUTTON(data.radiobutton2[0]),gettext("Неиспользуется")); gtk_box_pack_start (GTK_BOX (vbox), data.radiobutton2[0], TRUE, TRUE, 1); gtk_box_pack_start (GTK_BOX (vbox), data.radiobutton2[1], TRUE, TRUE, 1); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data.radiobutton2[data.rk.metka_isp_skl]),TRUE); //Устанавливем активной кнопку gtk_box_pack_start (GTK_BOX (vbox),separator3, TRUE, TRUE, 2); gtk_box_pack_start (GTK_BOX (vbox),hboxknop, TRUE, TRUE, 2); //gtk_container_add (GTK_CONTAINER (vbox), hboxknop); label=gtk_label_new(gettext("Код")); data.entry[E_KOD] = gtk_entry_new_with_max_length (4); gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), data.entry[E_KOD], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_KOD]), "activate",GTK_SIGNAL_FUNC(sklad_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KOD]),data.rk.kod.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KOD]),(gpointer)E_KOD); label=gtk_label_new(gettext("Наименование")); data.entry[E_NAIM] = gtk_entry_new_with_max_length (80); gtk_box_pack_start (GTK_BOX (hbox[E_NAIM]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_NAIM]), data.entry[E_NAIM], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_NAIM]), "activate",GTK_SIGNAL_FUNC(sklad_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_NAIM]),data.rk.naim.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_NAIM]),(gpointer)E_NAIM); label=gtk_label_new(gettext("Фамилия материально-ответственного")); data.entry[E_FIO] = gtk_entry_new_with_max_length (29); gtk_box_pack_start (GTK_BOX (hbox[E_FIO]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_FIO]), data.entry[E_FIO], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_FIO]), "activate",GTK_SIGNAL_FUNC(sklad_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_FIO]),data.rk.fmol.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_FIO]),(gpointer)E_FIO); label=gtk_label_new(gettext("Должность материально-ответственного")); data.entry[E_DOLG] = gtk_entry_new_with_max_length (29); gtk_box_pack_start (GTK_BOX (hbox[E_DOLG]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_DOLG]), data.entry[E_DOLG], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_DOLG]), "activate",GTK_SIGNAL_FUNC(sklad_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_DOLG]),data.rk.dolg.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_DOLG]),(gpointer)E_DOLG); GtkTooltips *tooltips[KOL_PFK]; sprintf(strsql,"F2 %s",gettext("Запись")); data.knopka[PFK2]=gtk_button_new_with_label(strsql); tooltips[PFK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[PFK2],data.knopka[PFK2],gettext("Запись введеной в меню информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[PFK2]),"clicked",GTK_SIGNAL_FUNC(sklad_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[PFK2]),(gpointer)PFK2); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[PFK10]=gtk_button_new_with_label(strsql); tooltips[PFK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[PFK10],data.knopka[PFK10],gettext("Завершение работы с меню без записи введенной информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[PFK10]),"clicked",GTK_SIGNAL_FUNC(sklad_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[PFK10]),(gpointer)PFK10); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[PFK2], TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[PFK10], TRUE, TRUE, 0); gtk_widget_grab_focus(data.entry[1]); gtk_widget_show_all (data.window); gtk_main(); if(data.voz == 0) sklad_k->new_plus(data.rk.kod.ravno()); if(wpredok != NULL) gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR)); return(data.voz); }
void l_poimatdok(const char *nomdok,GtkWidget *wpredok) { char strsql[512]; iceb_u_str soob; class poimatdok_data data; data.nomdok_p.new_plus(nomdok); data.window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); sprintf(strsql,"%s %s",name_system,gettext("Поиск документа по номеру")); gtk_window_set_title (GTK_WINDOW (data.window),strsql); gtk_container_set_border_width (GTK_CONTAINER (data.window), 5); 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); 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); } gtk_signal_connect_after(GTK_OBJECT(data.window),"key_press_event",GTK_SIGNAL_FUNC(poimatdok_key_press),&data); gtk_signal_connect_after(GTK_OBJECT(data.window),"key_release_event",GTK_SIGNAL_FUNC(iceb_key_release),&data.kl_shift); GtkWidget *hbox = gtk_hbox_new (FALSE, 1); gtk_container_add (GTK_CONTAINER (data.window), hbox); GtkWidget *vbox1 = gtk_vbox_new (FALSE, 1); GtkWidget *vbox2 = gtk_vbox_new (FALSE, 1); gtk_box_pack_start (GTK_BOX (hbox), vbox1, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox), vbox2, TRUE, TRUE, 0); gtk_widget_show(hbox); soob.new_plus(""); data.label_kolstr=gtk_label_new (soob.ravno_toutf()); gtk_box_pack_start (GTK_BOX (vbox2),data.label_kolstr,FALSE, FALSE, 0); gtk_widget_show(vbox1); gtk_widget_show(vbox2); data.sw = gtk_scrolled_window_new (NULL, NULL); gtk_widget_set_usize(GTK_WIDGET(data.sw),400,300); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (data.sw),GTK_SHADOW_ETCHED_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (data.sw),GTK_POLICY_AUTOMATIC,GTK_POLICY_AUTOMATIC); //gtk_box_pack_start (GTK_BOX (vbox2), data.sw, TRUE, TRUE, 0); gtk_box_pack_end (GTK_BOX (vbox2), data.sw, TRUE, TRUE, 0); //Кнопки GtkTooltips *tooltips[KOL_F_KL]; sprintf(strsql,"F2 %s",gettext("Просмотр")); data.knopka[FK2]=gtk_button_new_with_label(strsql); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK2],TRUE,TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]), "clicked",GTK_SIGNAL_FUNC(poimatdok_knopka),&data); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Просмотр выбранного документа"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_widget_show(data.knopka[FK2]); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(strsql); gtk_box_pack_start(GTK_BOX(vbox1),data.knopka[FK10],TRUE,TRUE, 0); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Завершение работы в этом окне"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]), "clicked",GTK_SIGNAL_FUNC(poimatdok_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_widget_show(data.knopka[FK10]); gtk_widget_realize(data.window); gdk_window_set_cursor(data.window->window,gdk_cursor_new(ICEB_CURSOR)); gtk_widget_grab_focus(data.knopka[FK10]); poimatdok_create_list(&data); gtk_widget_show(data.window); gtk_window_maximize(GTK_WINDOW(data.window)); //gtk_window_fullscreen(GTK_WINDOW(data.window)); gtk_main(); printf("l_poimatdok end\n"); if(wpredok != NULL) gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR)); }
int l_zarzvan(int metka_rr, //0-ввод и корек. 1-выбор iceb_u_str *kod,iceb_u_str *naim,GtkWidget *wpredok) { l_zarzvan_data data; char bros[512]; GdkColor color; data.poisk.clear_data(); data.metka_rr=metka_rr; data.window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); //gtk_window_set_default_size (GTK_WINDOW (data.window),400,-1); //gdk_color_parse("black",&color); //gtk_widget_modify_bg(data.window,GTK_STATE_NORMAL,&color); sprintf(bros,"%s %s",name_system,gettext("Список званий")); gtk_window_set_title (GTK_WINDOW (data.window),bros); gtk_container_set_border_width (GTK_CONTAINER (data.window), 5); 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); 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); } gtk_signal_connect_after(GTK_OBJECT(data.window),"key_press_event",GTK_SIGNAL_FUNC(l_zarzvan_key_press),&data); gtk_signal_connect_after(GTK_OBJECT(data.window),"key_release_event",GTK_SIGNAL_FUNC(iceb_key_release),&data.kl_shift); GtkWidget *hbox = gtk_hbox_new (FALSE, 1); gtk_container_add (GTK_CONTAINER (data.window), hbox); GtkWidget *vbox1 = gtk_vbox_new (FALSE, 1); GtkWidget *vbox2 = gtk_vbox_new (FALSE, 1); gtk_box_pack_start (GTK_BOX (hbox), vbox1, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox), vbox2, TRUE, TRUE, 0); gtk_widget_show(hbox); data.label_kolstr=gtk_label_new (gettext("Список званий")); //gdk_color_parse("green",&color); //gtk_widget_modify_fg(data.label_kolstr,GTK_STATE_NORMAL,&color); gtk_box_pack_start (GTK_BOX (vbox2),data.label_kolstr,FALSE, FALSE, 0); gtk_widget_show(vbox1); gtk_widget_show(vbox2); data.label_poisk=gtk_label_new (""); gdk_color_parse("red",&color); gtk_widget_modify_fg(data.label_poisk,GTK_STATE_NORMAL,&color); gtk_box_pack_start (GTK_BOX (vbox2),data.label_poisk,FALSE, FALSE, 0); data.sw = gtk_scrolled_window_new (NULL, NULL); gtk_widget_set_usize(GTK_WIDGET(data.sw),400,300); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (data.sw),GTK_SHADOW_ETCHED_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (data.sw),GTK_POLICY_AUTOMATIC,GTK_POLICY_AUTOMATIC); //gtk_box_pack_start (GTK_BOX (vbox2), data.sw, TRUE, TRUE, 0); gtk_box_pack_end (GTK_BOX (vbox2), data.sw, TRUE, TRUE, 0); //Кнопки GtkTooltips *tooltips[KOL_F_KL]; sprintf(bros,"F2 %s",gettext("Запись")); data.knopka[FK2]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK2], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]), "clicked",GTK_SIGNAL_FUNC(l_zarzvan_knopka),&data); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Ввод новой записи"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_widget_show(data.knopka[FK2]); sprintf(bros,"%sF2 %s",RFK,gettext("Корректировать")); data.knopka[SFK2]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[SFK2],TRUE,TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka[SFK2]), "clicked",GTK_SIGNAL_FUNC(l_zarzvan_knopka),&data); tooltips[SFK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[SFK2],data.knopka[SFK2],gettext("Корректировка выбранной записи"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[SFK2]),(gpointer)SFK2); gtk_widget_show(data.knopka[SFK2]); sprintf(bros,"F3 %s",gettext("Удалить")); data.knopka[FK3]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK3],TRUE,TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka[FK3]), "clicked",GTK_SIGNAL_FUNC(l_zarzvan_knopka),&data); tooltips[FK3]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK3],data.knopka[FK3],gettext("Удаление выбранной записи"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK3]),(gpointer)FK3); gtk_widget_show(data.knopka[FK3]); sprintf(bros,"%sF3 %s",RFK,gettext("Удалить")); data.knopka[SFK3]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[SFK3],TRUE,TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka[SFK3]), "clicked",GTK_SIGNAL_FUNC(l_zarzvan_knopka),&data); tooltips[SFK3]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[SFK3],data.knopka[SFK3],gettext("Удалить неиспользуемые коды"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[SFK3]),(gpointer)SFK3); gtk_widget_show(data.knopka[SFK3]); sprintf(bros,"F4 %s",gettext("Поиск")); data.knopka[FK4]=gtk_button_new_with_label(bros); gtk_signal_connect(GTK_OBJECT(data.knopka[FK4]), "clicked",GTK_SIGNAL_FUNC(l_zarzvan_knopka),&data); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK4],TRUE,TRUE, 0); tooltips[FK4]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK4],data.knopka[FK4],gettext("Поиск нужных записей"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK4]),(gpointer)FK4); gtk_widget_show(data.knopka[FK4]); sprintf(bros,"F5 %s",gettext("Печать")); data.knopka[FK5]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK5],TRUE,TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka[FK5]), "clicked",GTK_SIGNAL_FUNC(l_zarzvan_knopka),&data); tooltips[FK5]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK5],data.knopka[FK5],gettext("Распечатка записей"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK5]),(gpointer)FK5); gtk_widget_show(data.knopka[FK5]); sprintf(bros,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1),data.knopka[FK10],TRUE,TRUE, 0); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Завершение работы в этом окне"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]), "clicked",GTK_SIGNAL_FUNC(l_zarzvan_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_widget_show(data.knopka[FK10]); gtk_widget_realize(data.window); gdk_window_set_cursor(data.window->window,gdk_cursor_new(ICEB_CURSOR)); gtk_widget_grab_focus(data.knopka[FK10]); l_zarzvan_create_list(&data); gtk_widget_show(data.window); if(metka_rr == 0) gtk_window_maximize(GTK_WINDOW(data.window)); //gtk_window_fullscreen(GTK_WINDOW(data.window)); gtk_main(); if(data.metka_voz == 0) { kod->new_plus(data.kodv.ravno()); naim->new_plus(data.naimv.ravno()); } if(wpredok != NULL) gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR)); return(data.metka_voz); }
int ukrkontr_m(class ukrkontr_data *rek_ras) { char strsql[512]; class ukrkontr_m_data data; data.rk=rek_ras; data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); sprintf(strsql,"%s %s",name_system,gettext("Расчёт ведомости по контрагентам")); gtk_window_set_title (GTK_WINDOW (data.window),strsql); gtk_container_set_border_width (GTK_CONTAINER (data.window), 5); 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(ukrkontr_v_key_press),&data); GtkWidget *label=NULL; label=gtk_label_new(gettext("Расчёт ведомости по контрагентам")); GtkWidget *vbox = gtk_vbox_new (FALSE, 1); GtkWidget *hbox[KOLENTER]; for(int i=0; i < KOLENTER; i++) hbox[i] = gtk_hbox_new (FALSE,1); GtkWidget *hboxknop = gtk_hbox_new (FALSE,1); gtk_container_add (GTK_CONTAINER (data.window), vbox); gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE,1); for(int i=0; i < KOLENTER; i++) gtk_box_pack_start (GTK_BOX (vbox), hbox[i], TRUE, TRUE,1); gtk_box_pack_start (GTK_BOX (vbox), hboxknop, FALSE, FALSE,1); GtkTooltips *tooltips_enter[KOLENTER]; sprintf(strsql,"%s (%s)",gettext("Дата начала"),gettext("д.м.г")); data.knopka_enter[E_DATAN]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_DATAN]), data.knopka_enter[E_DATAN], FALSE, FALSE,1); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_DATAN]),"clicked",GTK_SIGNAL_FUNC(ukrkontr_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_DATAN]),(gpointer)E_DATAN); tooltips_enter[E_DATAN]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_DATAN],data.knopka_enter[E_DATAN],gettext("Выбор даты начала отчёта"),NULL); data.entry[E_DATAN] = gtk_entry_new_with_max_length (10); gtk_box_pack_start (GTK_BOX (hbox[E_DATAN]), data.entry[E_DATAN], TRUE, TRUE,1); gtk_signal_connect(GTK_OBJECT (data.entry[E_DATAN]), "activate",GTK_SIGNAL_FUNC(ukrkontr_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_DATAN]),data.rk->datan.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_DATAN]),(gpointer)E_DATAN); sprintf(strsql,"%s (%s)",gettext("Дата конца"),gettext("д.м.г")); data.knopka_enter[E_DATAK]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_DATAK]), data.knopka_enter[E_DATAK], FALSE, FALSE,1); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_DATAK]),"clicked",GTK_SIGNAL_FUNC(ukrkontr_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_DATAK]),(gpointer)E_DATAK); tooltips_enter[E_DATAK]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_DATAK],data.knopka_enter[E_DATAK],gettext("Выбор даты конца отчёта"),NULL); data.entry[E_DATAK] = gtk_entry_new_with_max_length (10); gtk_box_pack_start (GTK_BOX (hbox[E_DATAK]), data.entry[E_DATAK], TRUE, TRUE,1); gtk_signal_connect(GTK_OBJECT (data.entry[E_DATAK]), "activate",GTK_SIGNAL_FUNC(ukrkontr_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_DATAK]),data.rk->datak.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_DATAK]),(gpointer)E_DATAK); sprintf(strsql,"%s (,,)",gettext("Код контрагента")); data.knopka_enter[E_KONTR]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_KONTR]), data.knopka_enter[E_KONTR], FALSE, FALSE,1); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_KONTR]),"clicked",GTK_SIGNAL_FUNC(ukrkontr_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_KONTR]),(gpointer)E_KONTR); tooltips_enter[E_KONTR]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_KONTR],data.knopka_enter[E_KONTR],gettext("Выбор контрагента"),NULL); data.entry[E_KONTR] = gtk_entry_new(); gtk_box_pack_start (GTK_BOX (hbox[E_KONTR]), data.entry[E_KONTR], TRUE, TRUE,1); gtk_signal_connect(GTK_OBJECT (data.entry[E_KONTR]), "activate",GTK_SIGNAL_FUNC(ukrkontr_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KONTR]),data.rk->kontr.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KONTR]),(gpointer)E_KONTR); sprintf(strsql,"%s (,,)",gettext("Код командировочных расходов")); data.knopka_enter[E_KOD_ZAT]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_KOD_ZAT]), data.knopka_enter[E_KOD_ZAT], FALSE, FALSE,1); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_KOD_ZAT]),"clicked",GTK_SIGNAL_FUNC(ukrkontr_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_KOD_ZAT]),(gpointer)E_KOD_ZAT); tooltips_enter[E_KOD_ZAT]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_KOD_ZAT],data.knopka_enter[E_KOD_ZAT],gettext("Выбор кода командировочных расходов"),NULL); data.entry[E_KOD_ZAT] = gtk_entry_new(); gtk_box_pack_start (GTK_BOX (hbox[E_KOD_ZAT]), data.entry[E_KOD_ZAT], TRUE, TRUE,1); gtk_signal_connect(GTK_OBJECT (data.entry[E_KOD_ZAT]), "activate",GTK_SIGNAL_FUNC(ukrkontr_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KOD_ZAT]),data.rk->kod_zat.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KOD_ZAT]),(gpointer)E_KOD_ZAT); sprintf(strsql,"%s (,,)",gettext("Вид командировки")); data.knopka_enter[E_VIDKOM]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_VIDKOM]), data.knopka_enter[E_VIDKOM], FALSE, FALSE,1); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_VIDKOM]),"clicked",GTK_SIGNAL_FUNC(ukrkontr_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_VIDKOM]),(gpointer)E_VIDKOM); tooltips_enter[E_VIDKOM]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_VIDKOM],data.knopka_enter[E_VIDKOM],gettext("Выбор вида командировки"),NULL); data.entry[E_VIDKOM] = gtk_entry_new(); gtk_box_pack_start (GTK_BOX (hbox[E_VIDKOM]), data.entry[E_VIDKOM], TRUE, TRUE,1); gtk_signal_connect(GTK_OBJECT (data.entry[E_VIDKOM]), "activate",GTK_SIGNAL_FUNC(ukrkontr_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_VIDKOM]),data.rk->vidkom.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_VIDKOM]),(gpointer)E_VIDKOM); sprintf(strsql,"%s (,,)",gettext("Код группы подразделения")); data.knopka_enter[E_KOD_GR_POD]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_KOD_GR_POD]), data.knopka_enter[E_KOD_GR_POD], FALSE, FALSE,1); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_KOD_GR_POD]),"clicked",GTK_SIGNAL_FUNC(ukrkontr_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_KOD_GR_POD]),(gpointer)E_KOD_GR_POD); tooltips_enter[E_KOD_GR_POD]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_KOD_GR_POD],data.knopka_enter[E_KOD_GR_POD],gettext("Выбор группы"),NULL); data.entry[E_KOD_GR_POD] = gtk_entry_new(); gtk_box_pack_start (GTK_BOX (hbox[E_KOD_GR_POD]), data.entry[E_KOD_GR_POD], TRUE, TRUE,1); gtk_signal_connect(GTK_OBJECT (data.entry[E_KOD_GR_POD]), "activate",GTK_SIGNAL_FUNC(ukrkontr_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KOD_GR_POD]),data.rk->kod_gr_pod.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KOD_GR_POD]),(gpointer)E_KOD_GR_POD); sprintf(strsql,"%s (,,)",gettext("Счёт")); data.knopka_enter[E_SHETU]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_SHETU]), data.knopka_enter[E_SHETU], FALSE, FALSE,1); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_SHETU]),"clicked",GTK_SIGNAL_FUNC(ukrkontr_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_SHETU]),(gpointer)E_SHETU); tooltips_enter[E_SHETU]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_SHETU],data.knopka_enter[E_SHETU],gettext("Выбор счёта в плане счетов"),NULL); data.entry[E_SHETU] = gtk_entry_new(); gtk_box_pack_start (GTK_BOX (hbox[E_SHETU]), data.entry[E_SHETU], TRUE, TRUE,1); gtk_signal_connect(GTK_OBJECT (data.entry[E_SHETU]), "activate",GTK_SIGNAL_FUNC(ukrkontr_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_SHETU]),data.rk->shetu.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_SHETU]),(gpointer)E_SHETU); GtkTooltips *tooltips[KOL_F_KL]; sprintf(strsql,"F2 %s",gettext("Расчет")); data.knopka[FK2]=gtk_button_new_with_label(strsql); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Начать расчет"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]),"clicked",GTK_SIGNAL_FUNC(ukrkontr_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK2], TRUE, TRUE,1); sprintf(strsql,"F4 %s",gettext("Очистить")); data.knopka[FK4]=gtk_button_new_with_label(strsql); tooltips[FK4]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK4],data.knopka[FK4],gettext("Очистить меню от введенной информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK4]),"clicked",GTK_SIGNAL_FUNC(ukrkontr_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK4]),(gpointer)FK4); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK4], TRUE, TRUE,1); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(strsql); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Завершение работы в этом окне"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]),"clicked",GTK_SIGNAL_FUNC(ukrkontr_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK10], TRUE, TRUE,1); gtk_widget_grab_focus(data.entry[0]); gtk_widget_show_all (data.window); gtk_main(); return(data.voz); }
int l_uplscnt_p(class l_uplscnt_rek *rek_poi,GtkWidget *wpredok) { class l_uplscnt_p_data data; char strsql[512]; data.rk=rek_poi; data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); 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(l_uplscnt_p_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,1); GtkWidget *hbox[KOLENTER]; for(int i=0; i < KOLENTER; i++) hbox[i] = gtk_hbox_new (FALSE,1); GtkWidget *hboxknop = gtk_hbox_new (FALSE,1); gtk_container_add (GTK_CONTAINER (data.window), vbox); for(int i=0; i < KOLENTER; i++) gtk_container_add (GTK_CONTAINER (vbox), hbox[i]); gtk_container_add (GTK_CONTAINER (vbox), hboxknop); GtkWidget *label=gtk_label_new(gettext("Дата")); gtk_box_pack_start (GTK_BOX (hbox[E_DATA]), label, FALSE, FALSE,1); data.entry[E_DATA] = gtk_entry_new_with_max_length (10); gtk_box_pack_start (GTK_BOX (hbox[E_DATA]), data.entry[E_DATA], TRUE, TRUE,1); gtk_signal_connect(GTK_OBJECT (data.entry[E_DATA]), "activate",GTK_SIGNAL_FUNC(l_uplscnt_p_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_DATA]),data.rk->data.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_DATA]),(gpointer)E_DATA); sprintf(strsql,"%s (,,)",gettext("Код топлива")); label=gtk_label_new(strsql); gtk_box_pack_start (GTK_BOX (hbox[E_KOD_TOP]), label, FALSE, FALSE,1); data.entry[E_KOD_TOP] = gtk_entry_new_with_max_length (100); gtk_box_pack_start (GTK_BOX (hbox[E_KOD_TOP]), data.entry[E_KOD_TOP], TRUE, TRUE,1); gtk_signal_connect(GTK_OBJECT (data.entry[E_KOD_TOP]), "activate",GTK_SIGNAL_FUNC(l_uplscnt_p_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KOD_TOP]),data.rk->kod_top.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KOD_TOP]),(gpointer)E_KOD_TOP); GtkTooltips *tooltips[KOL_FK]; sprintf(strsql,"F2 %s",gettext("Поиск")); data.knopka[FK2]=gtk_button_new_with_label(strsql); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Начать поиск нужных записей"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]),"clicked",GTK_SIGNAL_FUNC(l_uplscnt_p_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK2], TRUE, TRUE,1); sprintf(strsql,"F4 %s",gettext("Очистить")); data.knopka[FK4]=gtk_button_new_with_label(strsql); tooltips[FK4]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK4],data.knopka[FK4],gettext("Очистить меню от введеноой информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK4]),"clicked",GTK_SIGNAL_FUNC(l_uplscnt_p_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK4]),(gpointer)FK4); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK4], TRUE, TRUE,1); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(strsql); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Поиск не выполнять"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]),"clicked",GTK_SIGNAL_FUNC(l_uplscnt_p_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK10], TRUE, TRUE,1); gtk_widget_grab_focus(data.entry[0]); gtk_widget_show_all (data.window); gtk_main(); if(wpredok != NULL) gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR)); return(data.voz); }
void iceb_fotoraz(GtkWidget *wpredok) { class glmenu_data data; data.window=gtk_window_new( GTK_WINDOW_TOPLEVEL ); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_title(GTK_WINDOW(data.window),gettext("Разработчик")); //Установка ширины окантовки внутренней области gtk_container_set_border_width(GTK_CONTAINER(data.window),10); 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(iceb_fotoraz_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); //Установка ширины окантовки внутренней области gtk_container_set_border_width(GTK_CONTAINER(vbox),5); gtk_widget_realize(data.window); //gtk_widget_show(data.window); GtkStyle *style; GdkPixmap *pixmap; GdkBitmap *mask; GtkWidget *pixmapWidget; style = gtk_widget_get_style(data.window); pixmap=gdk_pixmap_create_from_xpm_d(data.window->window,&mask,&style->bg[GTK_STATE_NORMAL], (gchar **)port_xpm); pixmapWidget=gtk_pixmap_new(pixmap,mask); gtk_container_add(GTK_CONTAINER(vbox),pixmapWidget); char bros[512]; sprintf(bros,"%s:",gettext("Разработчик")); GtkWidget *label=gtk_label_new(iceb_u_toutf(bros)); gtk_box_pack_start((GtkBox*)vbox,label,TRUE,TRUE,0); label=gtk_label_new(gettext("Белых Александр Иванович")); gtk_box_pack_start((GtkBox*)vbox,label,TRUE,TRUE,0); data.knopka[VIHOD]=gtk_button_new_with_label(gettext("Выход")); //tooltips[VIHOD]=gtk_tooltips_new(); //gtk_tooltips_set_tip(tooltips[VIHOD],data.knopka[VIHOD],gettext("Завершение работы в этом окне."),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[VIHOD]),"clicked",GTK_SIGNAL_FUNC(iceb_fotoraz_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[VIHOD]),(gpointer)VIHOD); gtk_box_pack_start(GTK_BOX(vbox), data.knopka[VIHOD], TRUE, TRUE,0); gtk_widget_grab_focus(data.knopka[0]); gtk_widget_show_all (data.window); gtk_main(); if(wpredok != NULL) gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR)); }
int zvb_ukrpromw_m(class zvb_ukrpromw_rek *rek_poi,GtkWidget *wpredok) { class zvb_ukrprom_m_data data; char strsql[512]; data.rk=rek_poi; zvb_ukrpromw_read_rek(&data); data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); 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(zvb_ukrprom_m_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, 0); GtkWidget *hbox[KOLENTER]; for(int i=0; i < KOLENTER; i++) hbox[i] = gtk_hbox_new (FALSE, 0); GtkWidget *hboxknop = gtk_hbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (data.window), vbox); for(int i=0; i < KOLENTER; i++) gtk_container_add (GTK_CONTAINER (vbox), hbox[i]); gtk_container_add (GTK_CONTAINER (vbox), hboxknop); GtkWidget *label=gtk_label_new(gettext("Номер файла за текущий день")); gtk_box_pack_start (GTK_BOX (hbox[E_NOMER_FIL]), label, FALSE, FALSE, 0); data.entry[E_NOMER_FIL] = gtk_entry_new_with_max_length (10); gtk_box_pack_start (GTK_BOX (hbox[E_NOMER_FIL]), data.entry[E_NOMER_FIL], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_NOMER_FIL]), "activate",GTK_SIGNAL_FUNC(zvb_ukrprom_m_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_NOMER_FIL]),data.rk->nomer_fil.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_NOMER_FIL]),(gpointer)E_NOMER_FIL); label=gtk_label_new(gettext("Код организации")); gtk_box_pack_start (GTK_BOX (hbox[E_KOD_OR]), label, FALSE, FALSE, 0); data.entry[E_KOD_OR] = gtk_entry_new_with_max_length (10); gtk_box_pack_start (GTK_BOX (hbox[E_KOD_OR]), data.entry[E_KOD_OR], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_KOD_OR]), "activate",GTK_SIGNAL_FUNC(zvb_ukrprom_m_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KOD_OR]),data.rk->kod_or.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KOD_OR]),(gpointer)E_KOD_OR); label=gtk_label_new(gettext("Имя машины")); gtk_box_pack_start (GTK_BOX (hbox[E_IMA_MAH]), label, FALSE, FALSE, 0); data.entry[E_IMA_MAH] = gtk_entry_new(); gtk_box_pack_start (GTK_BOX (hbox[E_IMA_MAH]), data.entry[E_IMA_MAH], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_IMA_MAH]), "activate",GTK_SIGNAL_FUNC(zvb_ukrprom_m_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_IMA_MAH]),data.rk->ima_mah.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_IMA_MAH]),(gpointer)E_IMA_MAH); label=gtk_label_new(gettext("Имя сетевого диска")); gtk_box_pack_start (GTK_BOX (hbox[E_IMA_SET_DISK]), label, FALSE, FALSE, 0); data.entry[E_IMA_SET_DISK] = gtk_entry_new(); gtk_box_pack_start (GTK_BOX (hbox[E_IMA_SET_DISK]), data.entry[E_IMA_SET_DISK], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_IMA_SET_DISK]), "activate",GTK_SIGNAL_FUNC(zvb_ukrprom_m_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_IMA_SET_DISK]),data.rk->ima_set_disk.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_IMA_SET_DISK]),(gpointer)E_IMA_SET_DISK); label=gtk_label_new(gettext("Пароль")); gtk_box_pack_start (GTK_BOX (hbox[E_PAROL]), label, FALSE, FALSE, 0); data.entry[E_PAROL] = gtk_entry_new_with_max_length (20); gtk_box_pack_start (GTK_BOX (hbox[E_PAROL]), data.entry[E_PAROL], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_PAROL]), "activate",GTK_SIGNAL_FUNC(zvb_ukrprom_m_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_PAROL]),data.rk->parol.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_PAROL]),(gpointer)E_PAROL); GtkTooltips *tooltips[KOL_FK]; sprintf(strsql,"F2 %s",gettext("Расчёт")); data.knopka[FK2]=gtk_button_new_with_label(strsql); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Начать расчёт"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]),"clicked",GTK_SIGNAL_FUNC(zvb_ukrprom_m_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK2], TRUE, TRUE, 0); sprintf(strsql,"F4 %s",gettext("Очистить")); data.knopka[FK4]=gtk_button_new_with_label(strsql); tooltips[FK4]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK4],data.knopka[FK4],gettext("Очистить меню от введеноой информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK4]),"clicked",GTK_SIGNAL_FUNC(zvb_ukrprom_m_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK4]),(gpointer)FK4); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK4], TRUE, TRUE, 0); sprintf(strsql,"F5 %s",gettext("Настройка")); data.knopka[FK5]=gtk_button_new_with_label(strsql); tooltips[FK5]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK5],data.knopka[FK5],gettext("Настройка расчёта"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK5]),"clicked",GTK_SIGNAL_FUNC(zvb_ukrprom_m_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK5]),(gpointer)FK5); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK5], TRUE, TRUE, 0); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(strsql); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Завершение работы в этом окне"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]),"clicked",GTK_SIGNAL_FUNC(zvb_ukrprom_m_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK10], TRUE, TRUE, 0); gtk_widget_grab_focus(data.entry[0]); gtk_widget_show_all (data.window); gtk_main(); return(data.voz); }
int l_zarsocot_v(int tabnom,short mp,short gp,class iceb_u_str *kodzap, const char *fio, GtkWidget *wpredok) { class iceb_u_str kikz; char strsql[512]; class l_zarsocot_v_data data; data.tabnom=tabnom; data.mp=mp; data.gp=gp; data.kodzap=kodzap->ravno_atoi(); if(kodzap->ravno_atoi() != 0) { SQL_str row; class SQLCURSOR cur; sprintf(strsql,"select * from Zarsocz where datz='%04d-%02d-01' and tabn=%d and kodz=%d", data.gp,data.mp,data.tabnom,data.kodzap); if(iceb_sql_readkey(strsql,&row,&cur,wpredok) != 1) { iceb_menu_soob(gettext("Не найдена запись для корректировки !"),wpredok); return(1); } data.kod.new_plus(row[2]); data.shet.new_plus(row[3]); data.suma_o.new_plus(row[4]); data.socot_o.new_plus(row[5]); data.suma_b.new_plus(row[10]); data.socot_b.new_plus(row[9]); data.proc.new_plus(row[6]); kikz.plus(iceb_kikz(row[7],row[8],wpredok)); } data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); if(kodzap->ravno_atoi() != 0) sprintf(strsql,"%s %s",name_system,gettext("Корректировка записи")); else sprintf(strsql,"%s %s",name_system,gettext("Ввод новой записи")); gtk_window_set_title (GTK_WINDOW (data.window),strsql); gtk_container_set_border_width (GTK_CONTAINER (data.window), 5); 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); } 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(l_zarsocot_v_v_key_press),&data); iceb_u_str zagolov; if(kodzap->ravno_atoi() == 0) zagolov.new_plus(gettext("Ввод новой записи")); else { zagolov.new_plus(gettext("Корректировка записи")); zagolov.ps_plus(kikz.ravno()); } zagolov.ps_plus(data.tabnom); zagolov.plus(" "); zagolov.plus(fio); GtkWidget *label=gtk_label_new(zagolov.ravno_toutf()); GtkWidget *vbox = gtk_vbox_new (FALSE, 0); GtkWidget *hbox[KOLENTER]; for(int i=0; i < KOLENTER; i++) hbox[i] = gtk_hbox_new (FALSE, 0); GtkWidget *hboxknop = gtk_hbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (data.window), vbox); gtk_container_add (GTK_CONTAINER (vbox), label); for(int i=0; i < KOLENTER; i++) gtk_container_add (GTK_CONTAINER (vbox), hbox[i]); gtk_container_add (GTK_CONTAINER (vbox), hboxknop); GtkTooltips *tooltips_enter[KOLENTER]; //sprintf(strsql,"%s",gettext("Код")); //label=gtk_label_new(iceb_u_toutf(strsql)); //gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), label, FALSE, FALSE, 0); sprintf(strsql,"%s",gettext("Код")); data.knopka_enter[E_KOD]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), data.knopka_enter[E_KOD], FALSE, FALSE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_KOD]),"clicked",GTK_SIGNAL_FUNC(zarsocot_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_KOD]),(gpointer)E_KOD); tooltips_enter[E_KOD]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_KOD],data.knopka_enter[E_KOD],gettext("Выбор кода в списке соц-отчислений"),NULL); data.entry[E_KOD] = gtk_entry_new_with_max_length (20); gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), data.entry[E_KOD],TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_KOD]), "activate",GTK_SIGNAL_FUNC(l_zarsocot_v_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KOD]),data.kod.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KOD]),(gpointer)E_KOD); sprintf(strsql,"%s",gettext("Счёт")); data.knopka_enter[E_SHET]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_SHET]), data.knopka_enter[E_SHET], FALSE, FALSE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_SHET]),"clicked",GTK_SIGNAL_FUNC(zarsocot_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_SHET]),(gpointer)E_SHET); tooltips_enter[E_SHET]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_SHET],data.knopka_enter[E_SHET],gettext("Выбор счёта в плане счетов"),NULL); data.entry[E_SHET] = gtk_entry_new_with_max_length (19); gtk_box_pack_start (GTK_BOX (hbox[E_SHET]), data.entry[E_SHET],TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_SHET]), "activate",GTK_SIGNAL_FUNC(l_zarsocot_v_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_SHET]),data.shet.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_SHET]),(gpointer)E_SHET); sprintf(strsql,"%s",gettext("С какой суммы начислено")); label=gtk_label_new(iceb_u_toutf(strsql)); data.entry[E_SUMA_O] = gtk_entry_new_with_max_length (20); gtk_box_pack_start (GTK_BOX (hbox[E_SUMA_O]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_SUMA_O]), data.entry[E_SUMA_O],TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_SUMA_O]), "activate",GTK_SIGNAL_FUNC(l_zarsocot_v_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_SUMA_O]),data.suma_o.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_SUMA_O]),(gpointer)E_SUMA_O); sprintf(strsql,"%s",gettext("Общая сумма соц-отчисления")); label=gtk_label_new(iceb_u_toutf(strsql)); data.entry[E_SOCOT_O] = gtk_entry_new_with_max_length (20); gtk_box_pack_start (GTK_BOX (hbox[E_SOCOT_O]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_SOCOT_O]), data.entry[E_SOCOT_O],TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_SOCOT_O]), "activate",GTK_SIGNAL_FUNC(l_zarsocot_v_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_SOCOT_O]),data.socot_o.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_SOCOT_O]),(gpointer)E_SOCOT_O); sprintf(strsql,"%s",gettext("С какой суммы начислено бюджет")); label=gtk_label_new(iceb_u_toutf(strsql)); data.entry[E_SUMA_B] = gtk_entry_new_with_max_length (20); gtk_box_pack_start (GTK_BOX (hbox[E_SUMA_B]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_SUMA_B]), data.entry[E_SUMA_B],TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_SUMA_B]), "activate",GTK_SIGNAL_FUNC(l_zarsocot_v_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_SUMA_B]),data.suma_b.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_SUMA_B]),(gpointer)E_SUMA_B); sprintf(strsql,"%s",gettext("Сумма бюджетного соц-отчисления")); label=gtk_label_new(iceb_u_toutf(strsql)); data.entry[E_SOCOT_B] = gtk_entry_new_with_max_length (20); gtk_box_pack_start (GTK_BOX (hbox[E_SOCOT_B]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_SOCOT_B]), data.entry[E_SOCOT_B],TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_SOCOT_B]), "activate",GTK_SIGNAL_FUNC(l_zarsocot_v_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_SOCOT_B]),data.socot_b.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_SOCOT_B]),(gpointer)E_SOCOT_B); sprintf(strsql,"%s",gettext("Процент")); label=gtk_label_new(iceb_u_toutf(strsql)); data.entry[E_PROC] = gtk_entry_new_with_max_length (20); gtk_box_pack_start (GTK_BOX (hbox[E_PROC]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_PROC]), data.entry[E_PROC],TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_PROC]), "activate",GTK_SIGNAL_FUNC(l_zarsocot_v_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_PROC]),data.proc.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_PROC]),(gpointer)E_PROC); GtkTooltips *tooltips[KOL_F_KL]; sprintf(strsql,"F2 %s",gettext("Запись")); data.knopka[FK2]=gtk_button_new_with_label(strsql); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Запись введённой в меню информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]),"clicked",GTK_SIGNAL_FUNC(l_zarsocot_v_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK2], TRUE, TRUE, 0); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(strsql); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Завершение работы в этом окне"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]),"clicked",GTK_SIGNAL_FUNC(l_zarsocot_v_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK10], TRUE, TRUE, 0); gtk_widget_grab_focus(data.entry[0]); gtk_widget_show_all (data.window); gtk_main(); if(data.voz == 0) kodzap->new_plus(data.kod.ravno()); return(data.voz); }
void glkni_nbs_m() { glkni_nbs_rr rek_ras; glkni_nbs_data data; data.rek_r=&rek_ras; if(data.rek_r->datan.getdlinna() == 0) data.rek_r->clear_data(); char strsql[512]; data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); sprintf(strsql,"%s %s",name_system,gettext("Оборотный баланс")); gtk_window_set_title (GTK_WINDOW (data.window),strsql); gtk_container_set_border_width (GTK_CONTAINER (data.window), 5); 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(glkni_nbs_v_key_press),&data); GtkWidget *label=gtk_label_new(gettext("Расчет оборотного баланса по забалансовым счетам")); GtkWidget *vbox = gtk_vbox_new (FALSE, 0); GtkWidget *hbox[KOLENTER]; for(int i=0; i < KOLENTER; i++) hbox[i] = gtk_hbox_new (FALSE, 0); GtkWidget *hboxknop = gtk_hbox_new (FALSE, 0); GtkWidget *hboxradio = gtk_hbox_new (FALSE, 0); //Вставляем радиокнопки GSList *group; data.radiobutton[0]=gtk_radio_button_new_with_label(NULL,gettext("Расчет по субсчетам")); if(data.rek_r->metka_r == 0) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data.radiobutton[0]),TRUE); //Устанавливем активной кнопку gtk_box_pack_start (GTK_BOX (hboxradio),data.radiobutton[0], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.radiobutton[0]), "clicked",GTK_SIGNAL_FUNC(glkni_nbs_radio0),&data); group=gtk_radio_button_group(GTK_RADIO_BUTTON(data.radiobutton[0])); data.radiobutton[1]=gtk_radio_button_new_with_label(group,gettext("Расчет по счетам")); if(data.rek_r->metka_r == 1) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data.radiobutton[1]),TRUE); //Устанавливем активной кнопку gtk_signal_connect(GTK_OBJECT(data.radiobutton[1]), "clicked",GTK_SIGNAL_FUNC(glkni_nbs_radio1),&data); gtk_box_pack_start (GTK_BOX (hboxradio),data.radiobutton[1], TRUE, TRUE, 0); gtk_container_add (GTK_CONTAINER (data.window), vbox); gtk_container_add (GTK_CONTAINER (vbox), label); for(int i=0; i < KOLENTER; i++) gtk_container_add (GTK_CONTAINER (vbox), hbox[i]); gtk_container_add (GTK_CONTAINER (vbox), hboxradio); gtk_container_add (GTK_CONTAINER (vbox), hboxknop); GtkTooltips *tooltips_enter[KOLENTER]; sprintf(strsql,"%s",gettext("Дата начала")); data.knopka_enter[E_DATAN]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_DATAN]), data.knopka_enter[E_DATAN], FALSE, FALSE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_DATAN]),"clicked",GTK_SIGNAL_FUNC(glkni_nbs_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_DATAN]),(gpointer)E_DATAN); tooltips_enter[E_DATAN]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_DATAN],data.knopka_enter[E_DATAN],gettext("Выбор даты начала отчёта"),NULL); data.entry[E_DATAN] = gtk_entry_new_with_max_length (10); gtk_box_pack_start (GTK_BOX (hbox[E_DATAN]), data.entry[E_DATAN], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_DATAN]), "activate",GTK_SIGNAL_FUNC(glkni_nbs_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_DATAN]),data.rek_r->datan.ravno()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_DATAN]),(gpointer)E_DATAN); sprintf(strsql,"%s",gettext("Дата конца")); data.knopka_enter[E_DATAK]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_DATAK]), data.knopka_enter[E_DATAK], FALSE, FALSE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_DATAK]),"clicked",GTK_SIGNAL_FUNC(glkni_nbs_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_DATAK]),(gpointer)E_DATAK); tooltips_enter[E_DATAK]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_DATAK],data.knopka_enter[E_DATAK],gettext("Выбор даты конца отчёта"),NULL); data.entry[E_DATAK] = gtk_entry_new_with_max_length (10); gtk_box_pack_start (GTK_BOX (hbox[E_DATAK]), data.entry[E_DATAK], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_DATAK]), "activate",GTK_SIGNAL_FUNC(glkni_nbs_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_DATAK]),data.rek_r->datak.ravno()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_DATAK]),(gpointer)E_DATAK); sprintf(strsql,"%s (,,)",gettext("Счет")); data.knopka_enter[E_SHET]=gtk_button_new_with_label(strsql); gtk_box_pack_start (GTK_BOX (hbox[E_SHET]), data.knopka_enter[E_SHET], FALSE, FALSE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_SHET]),"clicked",GTK_SIGNAL_FUNC(glkni_nbs_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_SHET]),(gpointer)E_SHET); tooltips_enter[E_SHET]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_SHET],data.knopka_enter[E_SHET],gettext("Выбор счёта в плане счетов"),NULL); data.entry[E_SHET] = gtk_entry_new(); gtk_box_pack_start (GTK_BOX (hbox[E_SHET]), data.entry[E_SHET], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_SHET]), "activate",GTK_SIGNAL_FUNC(glkni_nbs_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_SHET]),data.rek_r->shet.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_SHET]),(gpointer)E_SHET); GtkTooltips *tooltips[KOL_F_KL]; sprintf(strsql,"F2 %s",gettext("Расчет")); data.knopka[FK2]=gtk_button_new_with_label(strsql); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Начать расчет"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]),"clicked",GTK_SIGNAL_FUNC(glkni_nbs_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK2], TRUE, TRUE, 0); sprintf(strsql,"F4 %s",gettext("Очистить")); data.knopka[FK4]=gtk_button_new_with_label(strsql); tooltips[FK4]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK4],data.knopka[FK4],gettext("Очистить меню от введенной информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK4]),"clicked",GTK_SIGNAL_FUNC(glkni_nbs_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK4]),(gpointer)FK4); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK4], TRUE, TRUE, 0); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(strsql); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Завершение работы в этом окне"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]),"clicked",GTK_SIGNAL_FUNC(glkni_nbs_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK10], TRUE, TRUE, 0); gtk_widget_grab_focus(data.entry[0]); gtk_widget_show_all (data.window); gtk_main(); if(data.voz == 0) { glkni_nbs_r(&rek_ras); } }
int impotvrw_r(const char *imaf_imp, GtkWidget *wpredok) { char strsql[512]; iceb_u_spisok repl_s; class impotvrw_r_data data; data.imaf_imp=imaf_imp; 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(impotvrw_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); GtkWidget *label=gtk_label_new(gettext("Импорт отработанного времени")); 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(impotvrw_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)impotvrw_r1,&data); gtk_main(); if(wpredok != NULL) gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR)); return(data.voz); }
void l_doksmat(short dp,short mp,short gp,GtkWidget *wpredok) { doksmat_data data; char bros[312]; GdkColor color; data.dp=dp; data.mp=mp; data.gp=gp; data.window = gtk_window_new (GTK_WINDOW_TOPLEVEL); //gtk_widget_set_usize(GTK_WIDGET(data.window),1000,768); //gtk_widget_set_size_request(GTK_WIDGET(data.window),1024,768); //gtk_window_set_default_size(GTK_WINDOW(data.window),400,300); //gtk_window_resize(GTK_WINDOW(data.window),1024,768); //gtk_window_maximize(GTK_WINDOW(data.window)); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); sprintf(bros,"%s %s (%s)",name_system, gettext("Список документов"), gettext("Материальный учёт")); gtk_window_set_title (GTK_WINDOW (data.window),iceb_u_toutf(bros)); gtk_container_set_border_width (GTK_CONTAINER (data.window), 5); 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); 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); } gtk_signal_connect_after(GTK_OBJECT(data.window),"key_press_event",GTK_SIGNAL_FUNC(doksmat_key_press),&data); gtk_signal_connect_after(GTK_OBJECT(data.window),"key_release_event",GTK_SIGNAL_FUNC(iceb_key_release),&data.kl_shift); GtkWidget *hbox = gtk_hbox_new (FALSE, 1); gtk_container_add (GTK_CONTAINER (data.window), hbox); GtkWidget *vbox1 = gtk_vbox_new (FALSE, 1); GtkWidget *vbox2 = gtk_vbox_new (FALSE, 1); gtk_box_pack_start (GTK_BOX (hbox), vbox1, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox), vbox2, TRUE, TRUE, 0); gtk_widget_show(hbox); sprintf(bros,"%s (%s)", gettext("Список документов"), gettext("Материальный учёт")); data.label_kolstr=gtk_label_new (iceb_u_toutf(bros)); gtk_box_pack_start (GTK_BOX (vbox2),data.label_kolstr,FALSE, FALSE, 0); gtk_widget_show(vbox1); gtk_widget_show(vbox2); data.label_metka=gtk_label_new (""); data.label_poisk=gtk_label_new (""); gdk_color_parse("red",&color); gtk_widget_modify_fg(data.label_metka,GTK_STATE_NORMAL,&color); gtk_widget_modify_fg(data.label_poisk,GTK_STATE_NORMAL,&color); gtk_box_pack_start (GTK_BOX (vbox2),data.label_metka,FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (vbox2),data.label_poisk,FALSE, FALSE, 0); data.sw = gtk_scrolled_window_new (NULL, NULL); //gtk_widget_set_usize(GTK_WIDGET(data.sw),400,300); gtk_widget_set_size_request(GTK_WIDGET(data.sw),400,300); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (data.sw),GTK_SHADOW_ETCHED_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (data.sw),GTK_POLICY_AUTOMATIC,GTK_POLICY_AUTOMATIC); //gtk_box_pack_start (GTK_BOX (vbox2), data.sw, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (vbox2), data.sw, TRUE, TRUE, 0); GtkWidget *hboxradio = gtk_hbox_new (TRUE, 0); //Вставляем радиокнопки GSList *group; data.radiobutton[0]=gtk_radio_button_new_with_label(NULL,gettext("Все")); // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data.radiobutton[0]),TRUE); //Устанавливем активной кнопку gtk_box_pack_start (GTK_BOX (hboxradio),data.radiobutton[0], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.radiobutton[0]), "clicked",GTK_SIGNAL_FUNC(doksmat_radio0),&data); //gtk_object_set_user_data(GTK_OBJECT(data.radiobutton0),(gpointer)"0"); group=gtk_radio_button_group(GTK_RADIO_BUTTON(data.radiobutton[0])); sprintf(bros,"%s \"?\"",gettext("Помеченные")); data.radiobutton[1]=gtk_radio_button_new_with_label(group,bros); // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data.radiobutton[1]),TRUE); //Устанавливем активной кнопку gtk_signal_connect(GTK_OBJECT(data.radiobutton[1]), "clicked",GTK_SIGNAL_FUNC(doksmat_radio1),&data); gtk_box_pack_start (GTK_BOX (hboxradio),data.radiobutton[1], TRUE, TRUE, 0); group=gtk_radio_button_group(GTK_RADIO_BUTTON(data.radiobutton[1])); sprintf(bros,"%s \"*\"",gettext("Помеченные")); data.radiobutton[2]=gtk_radio_button_new_with_label(group,bros); // gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data.radiobutton[2]),TRUE); //Устанавливем активной кнопку gtk_signal_connect(GTK_OBJECT(data.radiobutton[2]), "clicked",GTK_SIGNAL_FUNC(doksmat_radio2),&data); gtk_box_pack_start (GTK_BOX (hboxradio),data.radiobutton[2], TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX (vbox2), hboxradio, FALSE,FALSE, 0); gtk_widget_show_all(hboxradio); //Кнопки GtkTooltips *tooltips[KOL_F_KL]; sprintf(bros,"F2 %s",gettext("Просмотр")); data.knopka[FK2]=gtk_button_new_with_label(bros); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]), "clicked",GTK_SIGNAL_FUNC(doksmat_knopka),&data); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK2],TRUE,TRUE, 0); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Просмотр выбранного документа"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_widget_show(data.knopka[FK2]); sprintf(bros,"F4 %s",gettext("Поиск")); data.knopka[FK4]=gtk_button_new_with_label(bros); gtk_signal_connect(GTK_OBJECT(data.knopka[FK4]), "clicked",GTK_SIGNAL_FUNC(doksmat_knopka),&data); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK4],TRUE,TRUE, 0); tooltips[FK4]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK4],data.knopka[FK4],gettext("Поиск нужных записей"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK4]),(gpointer)FK4); gtk_widget_show(data.knopka[FK4]); sprintf(bros,"F5 %s",gettext("Печать")); data.knopka[FK5]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK5],TRUE,TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka[FK5]), "clicked",GTK_SIGNAL_FUNC(doksmat_knopka),&data); tooltips[FK5]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK5],data.knopka[FK5],gettext("Распечатка записей"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK5]),(gpointer)FK5); gtk_widget_show(data.knopka[FK5]); sprintf(bros,"F6 %s",gettext("Экспорт")); data.knopka[FK6]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK6],TRUE,TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka[FK6]), "clicked",GTK_SIGNAL_FUNC(doksmat_knopka),&data); tooltips[FK6]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK6],data.knopka[FK6],gettext("Экспорт кассовых ордеров в подсистему \"Учёт кассовых оредров\""),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK6]),(gpointer)FK6); gtk_widget_show(data.knopka[FK6]); sprintf(bros,"F9 %s",gettext("Оплата")); data.knopka[FK9]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK9],TRUE,TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka[FK9]), "clicked",GTK_SIGNAL_FUNC(doksmat_knopka),&data); tooltips[FK9]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK9],data.knopka[FK9],gettext("Переключение режимов просмотра (только оплаченыые, только не оплаченные, все)"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK9]),(gpointer)FK9); gtk_widget_show(data.knopka[FK9]); sprintf(bros,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1),data.knopka[FK10],TRUE,TRUE, 0); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Завершение работы в этом окне"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]), "clicked",GTK_SIGNAL_FUNC(doksmat_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_widget_show(data.knopka[FK10]); gtk_widget_realize(data.window); gdk_window_set_cursor(data.window->window,gdk_cursor_new(ICEB_CURSOR)); gtk_widget_grab_focus(data.knopka[FK10]); doksmat_create_list(&data); gtk_widget_show(data.window); gtk_window_maximize(GTK_WINDOW(data.window)); //gtk_window_fullscreen(GTK_WINDOW(data.window)); gtk_main(); if(wpredok != NULL) gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR)); printf("l_doksmat end\n"); }
int l_vrint_p(class l_vrint_zap *datap,GtkWidget *wpredok) { char strsql[300]; class l_vrint_p_data data; data.poi=datap; printf("l_vrint_p\n"); data.kl_shift=0; data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); 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(GTK_OBJECT(data.window),"destroy",GTK_SIGNAL_FUNC(gtk_widget_destroyed),&data.window); gtk_signal_connect_after(GTK_OBJECT(data.window),"key_press_event",GTK_SIGNAL_FUNC(l_vrint_p_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, 0); GtkWidget *hbox[KOLENTER]; for(int i=0 ; i < KOLENTER; i++) hbox[i] = gtk_hbox_new (FALSE, 0); GtkWidget *hboxknop = gtk_hbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (data.window), vbox); for(int i=0 ; i < KOLENTER; i++) gtk_container_add (GTK_CONTAINER (vbox), hbox[i]); gtk_container_add (GTK_CONTAINER (vbox), hboxknop); GtkTooltips *tooltips_enter[KOLENTER]; GtkWidget *label; sprintf(strsql,"%s (%s)",gettext("Дата начала"),gettext("д.м.г")); data.knopka_enter[E_DATAN]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_DATAN]), data.knopka_enter[E_DATAN], FALSE, FALSE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_DATAN]),"clicked",GTK_SIGNAL_FUNC(l_vrint_p_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_DATAN]),(gpointer)E_DATAN); tooltips_enter[E_DATAN]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_DATAN],data.knopka_enter[E_DATAN],gettext("Выбор даты"),NULL); data.entry[E_DATAN] = gtk_entry_new_with_max_length (10); gtk_box_pack_start (GTK_BOX (hbox[E_DATAN]), data.entry[E_DATAN], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_DATAN]), "activate",GTK_SIGNAL_FUNC(l_vrint_p_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_DATAN]),data.poi->datan.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_DATAN]),(gpointer)E_DATAN); sprintf(strsql,"%s (%s)",gettext("Время начала"),gettext("ч.м.с")); label=gtk_label_new(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_VREMN]), label, FALSE, FALSE, 0); data.entry[E_VREMN] = gtk_entry_new_with_max_length (8); gtk_box_pack_start (GTK_BOX (hbox[E_VREMN]), data.entry[E_VREMN], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_VREMN]), "activate",GTK_SIGNAL_FUNC(l_vrint_p_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_VREMN]),data.poi->vremn.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_VREMN]),(gpointer)E_VREMN); sprintf(strsql,"%s (%s)",gettext("Дата конца"),gettext("д.м.г")); data.knopka_enter[E_DATAK]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_DATAK]), data.knopka_enter[E_DATAK], FALSE, FALSE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_DATAK]),"clicked",GTK_SIGNAL_FUNC(l_vrint_p_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_DATAK]),(gpointer)E_DATAK); tooltips_enter[E_DATAK]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_DATAK],data.knopka_enter[E_DATAK],gettext("Выбор даты"),NULL); data.entry[E_DATAK] = gtk_entry_new_with_max_length (10); gtk_box_pack_start (GTK_BOX (hbox[E_DATAK]), data.entry[E_DATAK], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_DATAK]), "activate",GTK_SIGNAL_FUNC(l_vrint_p_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_DATAK]),data.poi->datak.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_DATAK]),(gpointer)E_DATAK); sprintf(strsql,"%s (%s)",gettext("Время конца"),gettext("ч.м.с")); label=gtk_label_new(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_VREMK]), label, FALSE, FALSE, 0); data.entry[E_VREMK] = gtk_entry_new_with_max_length (8); gtk_box_pack_start (GTK_BOX (hbox[E_VREMK]), data.entry[E_VREMK], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_VREMK]), "activate",GTK_SIGNAL_FUNC(l_vrint_p_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_VREMK]),data.poi->vremk.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_VREMK]),(gpointer)E_VREMK); sprintf(strsql,"%s",gettext("Коментарий")); label=gtk_label_new(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_KOMENT]), label, FALSE, FALSE, 0); data.entry[E_KOMENT] = gtk_entry_new(); gtk_box_pack_start (GTK_BOX (hbox[E_KOMENT]), data.entry[E_KOMENT], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_KOMENT]), "activate",GTK_SIGNAL_FUNC(l_vrint_p_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KOMENT]),data.poi->koment.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KOMENT]),(gpointer)E_KOMENT); GtkTooltips *tooltips[KOL_F_KL]; sprintf(strsql,"F2 %s",gettext("Поиск")); data.knopka[FK2]=gtk_button_new_with_label(strsql); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Начать поиск нужных записей"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]),"clicked",GTK_SIGNAL_FUNC(l_vrint_p_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK2], TRUE, TRUE, 0); sprintf(strsql,"F4 %s",gettext("Очистить")); data.knopka[FK4]=gtk_button_new_with_label(strsql); tooltips[FK4]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK4],data.knopka[FK4],gettext("Очистить меню от введеноой информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK4]),"clicked",GTK_SIGNAL_FUNC(l_vrint_p_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK4]),(gpointer)FK4); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK4], TRUE, TRUE, 0); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(strsql); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Завершение работы с меню без поиска нужных записей"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]),"clicked",GTK_SIGNAL_FUNC(l_vrint_p_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK10], TRUE, TRUE, 0); gtk_widget_grab_focus(data.entry[0]); gtk_widget_show_all (data.window); gtk_main(); if(wpredok != NULL) gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR)); printf("l_vrint_p end\n"); return(data.voz); }
int l_zargni_v(class iceb_u_str *kod_uder,GtkWidget *wpredok) { class l_zargni_v_data data; char strsql[512]; iceb_u_str kikz; data.kod_uder.new_plus(kod_uder->ravno()); data.rk.clear_data(); if(data.kod_uder.getdlinna() > 1) { data.rk.kod.new_plus(data.kod_uder.ravno()); sprintf(strsql,"select * from Gnali where kod=%s",data.kod_uder.ravno()); SQL_str row; SQLCURSOR cur; if(iceb_sql_readkey(strsql,&row,&cur,wpredok) < 1) { iceb_menu_soob(gettext("Не найдена запись для корректировки !"),wpredok); return(1); } data.rk.naim.new_plus(row[1]); data.rk.kontr.new_plus(row[2]); kikz.plus(iceb_kikz(row[3],row[4],wpredok)); } else { sprintf(strsql,"%d",iceb_get_new_kod("Gnali",0,wpredok)); data.rk.kod.new_plus(strsql); } data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); GtkWidget *label=NULL; if(data.kod_uder.getdlinna() <= 1) { sprintf(strsql,"%s %s",name_system,gettext("Ввод новой записи")); label=gtk_label_new(gettext("Ввод новой записи")); } else { sprintf(strsql,"%s %s",name_system,gettext("Корректировка записи")); iceb_u_str repl; repl.plus(gettext("Корректировка записи")); repl.ps_plus(kikz.ravno()); label=gtk_label_new(repl.ravno_toutf()); } 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(l_zargni_v_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, 0); GtkWidget *hbox[KOLENTER]; for(int i=0; i < KOLENTER; i++) hbox[i] = gtk_hbox_new (FALSE, 0); GtkWidget *hboxknop = gtk_hbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (data.window), vbox); gtk_container_add (GTK_CONTAINER (vbox), label); for(int i=0; i < KOLENTER; i++) gtk_container_add (GTK_CONTAINER (vbox), hbox[i]); gtk_container_add (GTK_CONTAINER (vbox), hboxknop); GtkTooltips *tooltips_enter[KOLENTER]; label=gtk_label_new(gettext("Код")); data.entry[E_KOD] = gtk_entry_new_with_max_length (4); gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), data.entry[E_KOD], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_KOD]), "activate",GTK_SIGNAL_FUNC(l_zargni_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KOD]),data.rk.kod.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KOD]),(gpointer)E_KOD); label=gtk_label_new(gettext("Наименование")); data.entry[E_NAIM] = gtk_entry_new_with_max_length (60); gtk_box_pack_start (GTK_BOX (hbox[E_NAIM]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_NAIM]), data.entry[E_NAIM], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_NAIM]), "activate",GTK_SIGNAL_FUNC(l_zargni_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_NAIM]),data.rk.naim.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_NAIM]),(gpointer)E_NAIM); sprintf(strsql,"%s",gettext("Код контрагента")); data.knopka_enter[E_KONTR]=gtk_button_new_with_label(strsql); gtk_box_pack_start (GTK_BOX (hbox[E_KONTR]), data.knopka_enter[E_KONTR], FALSE, FALSE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_KONTR]),"clicked",GTK_SIGNAL_FUNC(l_zargni_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_KONTR]),(gpointer)E_KONTR); tooltips_enter[E_KONTR]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_KONTR],data.knopka_enter[E_KONTR],gettext("Выбор контрагента"),NULL); data.entry[E_KONTR] = gtk_entry_new_with_max_length(20); gtk_box_pack_start (GTK_BOX (hbox[E_KONTR]), data.entry[E_KONTR], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_KONTR]), "activate",GTK_SIGNAL_FUNC(l_zargni_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KONTR]),data.rk.kontr.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KONTR]),(gpointer)E_KONTR); GtkTooltips *tooltips[KOL_PFK]; sprintf(strsql,"F2 %s",gettext("Запись")); data.knopka[PFK2]=gtk_button_new_with_label(strsql); tooltips[PFK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[PFK2],data.knopka[PFK2],gettext("Запись введеной в меню информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[PFK2]),"clicked",GTK_SIGNAL_FUNC(l_zargni_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[PFK2]),(gpointer)PFK2); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[PFK10]=gtk_button_new_with_label(strsql); tooltips[PFK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[PFK10],data.knopka[PFK10],gettext("Завершение работы с меню без записи введенной информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[PFK10]),"clicked",GTK_SIGNAL_FUNC(l_zargni_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[PFK10]),(gpointer)PFK10); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[PFK2], TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[PFK10], TRUE, TRUE, 0); gtk_widget_grab_focus(data.entry[1]); gtk_widget_show_all (data.window); gtk_main(); if(data.voz == 0) kod_uder->new_plus(data.rk.kod.ravno()); return(data.voz); }
int l_uosgrnu_v(class iceb_u_str *kod_podr,GtkWidget *wpredok) { class l_uosgrnu_v_data data; char strsql[512]; iceb_u_str kikz; data.kod_podr.new_plus(kod_podr->ravno()); data.rk.clear_data(); if(data.kod_podr.getdlinna() > 1) { data.rk.kod.new_plus(data.kod_podr.ravno()); sprintf(strsql,"select * from Uosgrup where kod='%s'",data.kod_podr.ravno()); SQL_str row; SQLCURSOR cur; if(iceb_sql_readkey(strsql,&row,&cur,wpredok) < 1) { iceb_menu_soob(gettext("Не найдена запись для корректировки !"),wpredok); return(1); } data.rk.naim.new_plus(row[1]); data.rk.kof.new_plus(row[2]); kikz.plus(iceb_kikz(row[3],row[4],wpredok)); data.rk.metka_ta=atoi(row[5]); data.rk.metka_ar=atoi(row[6]); } else { // sprintf(strsql,"%d",iceb_get_new_kod("Uosgrup",1,wpredok)); // data.rk.kod.new_plus(strsql); } data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); GtkWidget *label=NULL; if(data.kod_podr.getdlinna() <= 1) { sprintf(strsql,"%s %s",name_system,gettext("Ввод новой записи")); label=gtk_label_new(gettext("Ввод новой записи")); } else { sprintf(strsql,"%s %s",name_system,gettext("Корректировка записи")); iceb_u_str repl; repl.plus(gettext("Корректировка записи")); repl.ps_plus(kikz.ravno()); label=gtk_label_new(repl.ravno_toutf()); } 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(l_uosgrnu_v_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, 0); GtkWidget *hbox[KOLENTER]; for(int i=0; i < KOLENTER; i++) hbox[i] = gtk_hbox_new (FALSE, 0); GtkWidget *hboxknop = gtk_hbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (data.window), vbox); gtk_container_add (GTK_CONTAINER (vbox), label); for(int i=0; i < KOLENTER; i++) gtk_container_add (GTK_CONTAINER (vbox), hbox[i]); gtk_container_add (GTK_CONTAINER (vbox), hboxknop); label=gtk_label_new(gettext("Код")); data.entry[E_KOD] = gtk_entry_new_with_max_length (10); gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), data.entry[E_KOD], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_KOD]), "activate",GTK_SIGNAL_FUNC(l_uosgrnu_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KOD]),data.rk.kod.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KOD]),(gpointer)E_KOD); label=gtk_label_new(gettext("Наименование")); data.entry[E_NAIM] = gtk_entry_new_with_max_length (60); gtk_box_pack_start (GTK_BOX (hbox[E_NAIM]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_NAIM]), data.entry[E_NAIM], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_NAIM]), "activate",GTK_SIGNAL_FUNC(l_uosgrnu_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_NAIM]),data.rk.naim.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_NAIM]),(gpointer)E_NAIM); label=gtk_label_new(gettext("Годовой процент амортизации")); data.entry[E_PROC] = gtk_entry_new_with_max_length (60); gtk_box_pack_start (GTK_BOX (hbox[E_PROC]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_PROC]), data.entry[E_PROC], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_PROC]), "activate",GTK_SIGNAL_FUNC(l_uosgrnu_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_PROC]),data.rk.kof.ravno()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_PROC]),(gpointer)E_PROC); label=gtk_label_new(gettext("Тип амортизации")); gtk_box_pack_start (GTK_BOX (hbox[E_TA]), label, FALSE, FALSE, 0); class iceb_u_spisok menu_vib; menu_vib.plus(gettext("Пообъектно")); menu_vib.plus(gettext("В целом по группе")); iceb_pm_vibor(&menu_vib,&data.opt,&data.rk.metka_ta); gtk_box_pack_start (GTK_BOX (hbox[E_TA]), data.opt, FALSE, FALSE, 0); label=gtk_label_new(gettext("Алгоритм амортизации")); gtk_box_pack_start (GTK_BOX (hbox[E_AR]), label, FALSE, FALSE, 0); menu_vib.free_class(); menu_vib.plus(gettext("От начальной балансовой стоимости")); menu_vib.plus(gettext("От остаточной балансовой стоимости")); iceb_pm_vibor(&menu_vib,&data.opt1,&data.rk.metka_ar); gtk_box_pack_start (GTK_BOX (hbox[E_AR]), data.opt1, FALSE, FALSE, 0); GtkTooltips *tooltips[KOL_PFK]; sprintf(strsql,"F2 %s",gettext("Запись")); data.knopka[PFK2]=gtk_button_new_with_label(strsql); tooltips[PFK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[PFK2],data.knopka[PFK2],gettext("Запись введеной в меню информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[PFK2]),"clicked",GTK_SIGNAL_FUNC(l_uosgrnu_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[PFK2]),(gpointer)PFK2); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[PFK10]=gtk_button_new_with_label(strsql); tooltips[PFK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[PFK10],data.knopka[PFK10],gettext("Завершение работы с меню без записи введенной информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[PFK10]),"clicked",GTK_SIGNAL_FUNC(l_uosgrnu_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[PFK10]),(gpointer)PFK10); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[PFK2], TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[PFK10], TRUE, TRUE, 0); gtk_widget_grab_focus(data.entry[0]); gtk_widget_show_all (data.window); gtk_main(); if(data.voz == 0) kod_podr->new_plus(data.rk.kod.ravno()); return(data.voz); }
int l_spisok(int metka, //0-список складов 1-список групп 2-список подразделений в услугах 3-список групп услуг 100-список единиц измерения int skl, //склад для списка групп iceb_u_str *kodv, //Возвращаемый код int podr, //подразделение для которого нужно выбрать список складов GtkWidget *wpredok) { spisok_data data; char strsql[300]; printf("l_spisok %d %d\n",metka,skl); data.metka_sp=metka; data.skl=skl; data.podr=podr; data.window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); gtk_window_set_default_size (GTK_WINDOW (data.window),-1,600); //gdk_color_parse("black",&color); //gtk_widget_modify_bg(data.window,GTK_STATE_NORMAL,&color); if(metka == 0) sprintf(strsql,"%s %s",name_system,gettext("Список складов")); if(metka == 1) sprintf(strsql,"%s %s",name_system,gettext("Список групп")); if(metka == 2) sprintf(strsql,"%s %s",name_system,gettext("Список подразделений")); if(metka == 3) sprintf(strsql,"%s %s",name_system,gettext("Список групп")); gtk_window_set_title (GTK_WINDOW (data.window),strsql); gtk_container_set_border_width (GTK_CONTAINER (data.window), 5); 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); 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); } gtk_signal_connect_after(GTK_OBJECT(data.window),"key_press_event",GTK_SIGNAL_FUNC(spisok_key_press),&data); gtk_signal_connect_after(GTK_OBJECT(data.window),"key_release_event",GTK_SIGNAL_FUNC(iceb_key_release),&data.kl_shift); GtkWidget *hbox = gtk_hbox_new (FALSE, 1); gtk_container_add (GTK_CONTAINER (data.window), hbox); GtkWidget *vbox1 = gtk_vbox_new (FALSE, 1); GtkWidget *vbox2 = gtk_vbox_new (FALSE, 1); gtk_box_pack_start (GTK_BOX (hbox), vbox1, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox), vbox2, TRUE, TRUE, 0); gtk_widget_show(hbox); data.label_kolstr=gtk_label_new (gettext("Выберите нужную запись")); //gdk_color_parse("green",&color); //gtk_widget_modify_fg(data.label_kolstr,GTK_STATE_NORMAL,&color); gtk_box_pack_start (GTK_BOX (vbox2),data.label_kolstr,FALSE, FALSE, 0); gtk_widget_show(vbox1); gtk_widget_show(vbox2); data.sw = gtk_scrolled_window_new (NULL, NULL); gtk_widget_set_usize(GTK_WIDGET(data.sw),400,300); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (data.sw),GTK_SHADOW_ETCHED_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (data.sw),GTK_POLICY_AUTOMATIC,GTK_POLICY_AUTOMATIC); //gtk_box_pack_start (GTK_BOX (vbox2), data.sw, TRUE, TRUE, 0); gtk_box_pack_end (GTK_BOX (vbox2), data.sw, TRUE, TRUE, 0); //Кнопки GtkTooltips *tooltips[KOL_F_KL]; sprintf(strsql,"F2 %s",gettext("Выбор")); data.knopka[FK2]=gtk_button_new_with_label(strsql); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK2], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]), "clicked",GTK_SIGNAL_FUNC(spisok_knopka),&data); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Выбор отмеченной записи"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_widget_show(data.knopka[FK2]); GtkWidget *arrow=gtk_arrow_new(GTK_ARROW_UP,GTK_SHADOW_OUT); data.knopka[FK_VVERH]=gtk_button_new(); gtk_container_add(GTK_CONTAINER(data.knopka[FK_VVERH]),arrow); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK_VVERH], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka[FK_VVERH]), "pressed",GTK_SIGNAL_FUNC(l_spisok_knopka_vverh_press),&data); gtk_signal_connect(GTK_OBJECT(data.knopka[FK_VVERH]), "released",GTK_SIGNAL_FUNC(l_spisok_knopka_released),&data); //tooltips[FK_VVERH]=gtk_tooltips_new(); //gtk_tooltips_set_tip(tooltips[FK_VVERH],data.knopka[FK_VVERH],gettext("Выбор отмеченной записи"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK_VVERH]),(gpointer)FK_VVERH); gtk_widget_show(data.knopka[FK_VVERH]); gtk_widget_show(arrow); arrow=gtk_arrow_new(GTK_ARROW_DOWN,GTK_SHADOW_OUT); data.knopka[FK_VNIZ]=gtk_button_new(); gtk_container_add(GTK_CONTAINER(data.knopka[FK_VNIZ]),arrow); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK_VNIZ], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka[FK_VNIZ]), "pressed",GTK_SIGNAL_FUNC(l_spisok_knopka_vniz_press),&data); gtk_signal_connect(GTK_OBJECT(data.knopka[FK_VNIZ]), "released",GTK_SIGNAL_FUNC(l_spisok_knopka_released),&data); //tooltips[FK_VNIZ]=gtk_tooltips_new(); //gtk_tooltips_set_tip(tooltips[FK_VNIZ],data.knopka[FK_VNIZ],gettext("Выбор отмеченной записи"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK_VNIZ]),(gpointer)FK_VNIZ); gtk_widget_show(data.knopka[FK_VNIZ]); gtk_widget_show(arrow); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(strsql); gtk_box_pack_start(GTK_BOX(vbox1),data.knopka[FK10],TRUE,TRUE, 0); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Завершение работы в этом окне"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]), "clicked",GTK_SIGNAL_FUNC(spisok_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_widget_show(data.knopka[FK10]); gtk_widget_realize(data.window); gdk_window_set_cursor(data.window->window,gdk_cursor_new(ICEB_CURSOR)); gtk_widget_grab_focus(data.knopka[FK10]); spisok_create_list (&data); //gtk_window_maximize(GTK_WINDOW(data.window)); //gtk_window_fullscreen(GTK_WINDOW(data.window)); gtk_widget_show(data.window); gtk_main(); printf("l_spisok end\n"); kodv->new_plus(data.kod.ravno()); if(wpredok != NULL) gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR)); return(data.voz); }
int l_kasopp_v(iceb_u_str *kodzap, //Код записи для корректировки ; возвращается код только что введённой записи GtkWidget *wpredok) { l_kasopp_v_data data; data.kodk.new_plus(kodzap->ravno()); iceb_u_str naim_shet(""); iceb_u_str naim_shetk(""); class iceb_u_str naim_kodcn(""); char strsql[512]; class iceb_u_str kikz; if(kodzap->getdlinna() > 1) { //читаем корректируемую запись SQL_str row; SQLCURSOR cur; sprintf(strsql,"select * from Kasop1 where kod='%s'",kodzap->ravno()); if(iceb_sql_readkey(strsql,&row,&cur,wpredok) != 1) { iceb_menu_soob(gettext("Не найдена запись для корректировки !"),wpredok); return(1); } data.rk.kod.new_plus(row[0]); data.rk.naim.new_plus(row[1]); data.rk.shet.new_plus(row[2]); data.rk.shetk.new_plus(row[3]); data.rk.prov=atoi(row[4]); kikz.plus(iceb_kikz(row[5],row[6],wpredok)); if(atoi(row[7]) != 0) data.rk.kod_cn.new_plus(row[7]); if(data.rk.shet.getdlinna() > 1) { //Узнаём наименование счёта sprintf(strsql,"select nais from Plansh where ns='%s'",data.rk.shet.ravno()); if(iceb_sql_readkey(strsql,&row,&cur,wpredok) == 1) naim_shet.new_plus(row[0]); } if(data.rk.shetk.getdlinna() > 1) { //Узнаём наименование счёта корреспондента sprintf(strsql,"select nais from Plansh where ns='%s'",data.rk.shetk .ravno()); if(iceb_sql_readkey(strsql,&row,&cur,wpredok) == 1) naim_shetk.new_plus(row[0]); } if(data.rk.kod_cn.getdlinna() > 1) { //Узнаём наименование счёта корреспондента sprintf(strsql,"select naik from Kascn where kod=%d",data.rk.kod_cn.ravno_atoi()); if(iceb_sql_readkey(strsql,&row,&cur,wpredok) == 1) naim_kodcn.new_plus(row[0]); } } data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); if(kodzap->getdlinna() > 1) sprintf(strsql,"%s %s",name_system,gettext("Корректировка записи")); else sprintf(strsql,"%s %s",name_system,gettext("Ввод новой записи")); gtk_window_set_title (GTK_WINDOW (data.window),strsql); gtk_container_set_border_width (GTK_CONTAINER (data.window), 5); 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); } 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(l_kasopp_v_v_key_press),&data); iceb_u_str zagolov; if(kodzap->getdlinna() <= 1) zagolov.new_plus(gettext("Ввод новой записи")); else { zagolov.new_plus(gettext("Корректировка записи")); zagolov.ps_plus(kikz.ravno()); } GtkWidget *label=gtk_label_new(zagolov.ravno_toutf()); GtkWidget *vbox = gtk_vbox_new (FALSE, 0); GtkWidget *hbox[KOLENTER]; for(int i=0; i < KOLENTER; i++) hbox[i] = gtk_hbox_new (FALSE, 0); GtkWidget *hboxknop = gtk_hbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (data.window), vbox); gtk_box_pack_start (GTK_BOX (vbox),label, TRUE, TRUE, 1); for(int i=0; i < KOLENTER; i++) gtk_box_pack_start (GTK_BOX (vbox),hbox[i], TRUE, TRUE, 1); GtkWidget *separator1=gtk_hseparator_new(); GtkWidget *separator3=gtk_hseparator_new(); gtk_box_pack_start (GTK_BOX (vbox),separator1, TRUE, TRUE, 2); //Вставляем радиокнопки data.radiobutton2[0]=gtk_radio_button_new_with_label_from_widget(NULL,gettext("Проводки не нужно делать")); data.radiobutton2[1]=gtk_radio_button_new_with_label_from_widget(GTK_RADIO_BUTTON(data.radiobutton2[0]),gettext("Проводки нужно делать")); gtk_box_pack_start (GTK_BOX (vbox), data.radiobutton2[0], TRUE, TRUE, 1); gtk_box_pack_start (GTK_BOX (vbox), data.radiobutton2[1], TRUE, TRUE, 1); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data.radiobutton2[data.rk.prov]),TRUE); //Устанавливем активной кнопку gtk_box_pack_start (GTK_BOX (vbox),separator3, TRUE, TRUE, 2); gtk_box_pack_start (GTK_BOX (vbox),hboxknop, TRUE, TRUE, 1); GtkTooltips *tooltips_enter[KOLENTER]; sprintf(strsql,"%s",gettext("Код операции")); label=gtk_label_new(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), label, FALSE, FALSE, 0); data.entry[E_KOD] = gtk_entry_new_with_max_length (20); gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), data.entry[E_KOD],TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_KOD]), "activate",GTK_SIGNAL_FUNC(l_kasopp_v_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KOD]),data.rk.kod.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KOD]),(gpointer)E_KOD); sprintf(strsql,"%s",gettext("Наименование операции")); label=gtk_label_new(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_NAIM]), label,FALSE, FALSE, 0); data.entry[E_NAIM] = gtk_entry_new_with_max_length (249); gtk_box_pack_start (GTK_BOX (hbox[E_NAIM]), data.entry[E_NAIM],TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_NAIM]), "activate",GTK_SIGNAL_FUNC(l_kasopp_v_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_NAIM]),data.rk.naim.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_NAIM]),(gpointer)E_NAIM); sprintf(strsql,"%s",gettext("Счёт")); data.knopka_enter[E_SHET]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_SHET]), data.knopka_enter[E_SHET], FALSE, FALSE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_SHET]),"clicked",GTK_SIGNAL_FUNC(kasopp_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_SHET]),(gpointer)E_SHET); tooltips_enter[E_SHET]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_SHET],data.knopka_enter[E_SHET],gettext("Выбор счёта в плане счетов"),NULL); data.entry[E_SHET] = gtk_entry_new_with_max_length (19); gtk_box_pack_start (GTK_BOX (hbox[E_SHET]), data.entry[E_SHET],TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_SHET]), "activate",GTK_SIGNAL_FUNC(l_kasopp_v_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_SHET]),data.rk.shet.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_SHET]),(gpointer)E_SHET); data.label_naishet=gtk_label_new(naim_shet.ravno_toutf(20)); gtk_box_pack_start (GTK_BOX (hbox[E_SHET]), data.label_naishet,TRUE, TRUE, 0); sprintf(strsql,"%s",gettext("Счёт корреспондент")); data.knopka_enter[E_SHETK]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_SHETK]), data.knopka_enter[E_SHETK], FALSE, FALSE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_SHETK]),"clicked",GTK_SIGNAL_FUNC(kasopp_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_SHETK]),(gpointer)E_SHETK); tooltips_enter[E_SHETK]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_SHETK],data.knopka_enter[E_SHETK],gettext("Выбор счёта в плане счетов"),NULL); data.entry[E_SHETK] = gtk_entry_new_with_max_length (19); gtk_box_pack_start (GTK_BOX (hbox[E_SHETK]), data.entry[E_SHETK],TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_SHETK]), "activate",GTK_SIGNAL_FUNC(l_kasopp_v_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_SHETK]),data.rk.shetk.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_SHETK]),(gpointer)E_SHETK); data.label_naishetk=gtk_label_new(naim_shetk.ravno_toutf(20)); gtk_box_pack_start (GTK_BOX (hbox[E_SHETK]), data.label_naishetk,TRUE, TRUE, 0); sprintf(strsql,"%s",gettext("Код целевого назначения")); data.knopka_enter[E_KOD_CN]=gtk_button_new_with_label(iceb_u_toutf(strsql)); gtk_box_pack_start (GTK_BOX (hbox[E_KOD_CN]), data.knopka_enter[E_KOD_CN], FALSE, FALSE, 0); gtk_signal_connect(GTK_OBJECT(data.knopka_enter[E_KOD_CN]),"clicked",GTK_SIGNAL_FUNC(kasopp_v_e_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka_enter[E_KOD_CN]),(gpointer)E_KOD_CN); tooltips_enter[E_KOD_CN]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips_enter[E_KOD_CN],data.knopka_enter[E_KOD_CN],gettext("Выбор кода целевого назначения"),NULL); data.entry[E_KOD_CN] = gtk_entry_new_with_max_length (19); gtk_box_pack_start (GTK_BOX (hbox[E_KOD_CN]), data.entry[E_KOD_CN],TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_KOD_CN]), "activate",GTK_SIGNAL_FUNC(l_kasopp_v_v_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KOD_CN]),data.rk.kod_cn.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KOD_CN]),(gpointer)E_KOD_CN); data.label_naikodcn=gtk_label_new(naim_kodcn.ravno_toutf(20)); gtk_box_pack_start (GTK_BOX (hbox[E_KOD_CN]), data.label_naikodcn,TRUE, TRUE, 0); GtkTooltips *tooltips[KOL_F_KL]; sprintf(strsql,"F2 %s",gettext("Запись")); data.knopka[FK2]=gtk_button_new_with_label(strsql); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Запись введённой в меню информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]),"clicked",GTK_SIGNAL_FUNC(l_kasopp_v_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK2], TRUE, TRUE, 0); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(strsql); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Завершение работы в этом окне"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]),"clicked",GTK_SIGNAL_FUNC(l_kasopp_v_v_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK10], TRUE, TRUE, 0); gtk_widget_grab_focus(data.entry[0]); gtk_widget_show_all (data.window); gtk_main(); if(data.voz == 0) kodzap->new_plus(data.rk.kod.ravno()); if(wpredok != NULL) gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR)); return(data.voz); }
int l_upldok(const char *data_dok, //Дата документа const char *nomd, //Номер документа const char *kod_pod, /*код подразделения*/ GtkWidget *wpredok) { class upldok_data data; iceb_u_str string; char bros[500]; data.data_dok.new_plus(data_dok); data.nomd.plus(nomd); data.kod_pod.plus(kod_pod); /*Читаем реквизиты документа*/ l_upldok_read_rhd(&data,wpredok); /*Читаем после чтения реквизитов документов*/ data.kolih_ost=ostvaw(data.data_dok.ravno(),data.kod_vod.ravno(),data.kod_avt.ravno(),data.nz.ravno_atoi(),&data.kod_top_ost,&data.kolih_top_ost,wpredok); data.window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); //gtk_window_set_default_size (GTK_WINDOW (data.window),400,-1); //gdk_color_parse("black",&color); //gtk_widget_modify_bg(data.window,GTK_STATE_NORMAL,&color); sprintf(bros,"%s %s",name_system,gettext("Работа с документом")); gtk_window_set_title (GTK_WINDOW (data.window),bros); gtk_container_set_border_width (GTK_CONTAINER (data.window), 5); 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); 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); } gtk_signal_connect_after(GTK_OBJECT(data.window),"key_press_event",GTK_SIGNAL_FUNC(upldok_key_press),&data); gtk_signal_connect_after(GTK_OBJECT(data.window),"key_release_event",GTK_SIGNAL_FUNC(iceb_key_release),&data.kl_shift); GtkWidget *hbox = gtk_hbox_new (FALSE, 1); GtkWidget *hbox_hap = gtk_hbox_new (FALSE, 1); gtk_container_add (GTK_CONTAINER (data.window), hbox); GtkWidget *vbox1 = gtk_vbox_new (FALSE, 1); GtkWidget *vbox2 = gtk_vbox_new (FALSE, 1); gtk_box_pack_start (GTK_BOX (hbox), vbox1, FALSE, FALSE,1); gtk_box_pack_start (GTK_BOX (hbox), vbox2, TRUE, TRUE,1); gtk_widget_show(hbox); data.label_rek_dok=gtk_label_new (data.hapka.ravno_toutf()); //gtk_box_pack_start (GTK_BOX (vbox2),data.label_rek_dok,FALSE, FALSE,1); gtk_box_pack_start (GTK_BOX (vbox2),hbox_hap,FALSE, FALSE,1); gtk_box_pack_start (GTK_BOX (hbox_hap),data.label_rek_dok,FALSE, FALSE,1); class iceb_u_str spis_top_ost; spis_top_ost.plus(gettext("Остаток топлива")); spis_top_ost.plus(":\n"); for(int ii=0; ii < data.kod_top_ost.kolih(); ii++) { sprintf(bros,"%6s:%10.3f\n",data.kod_top_ost.ravno(ii),data.kolih_top_ost.ravno(ii)); spis_top_ost.plus(bros); } GtkWidget *label=NULL; label=gtk_label_new(spis_top_ost.ravno_toutf()); gtk_box_pack_end (GTK_BOX (hbox_hap),label,FALSE, FALSE,1); gtk_widget_show_all(hbox_hap); data.label_red=gtk_label_new (""); gtk_box_pack_start (GTK_BOX (vbox2),data.label_red,FALSE, FALSE,1); GdkColor color; gdk_color_parse("red",&color); gtk_widget_modify_fg(data.label_red,GTK_STATE_NORMAL,&color); gtk_widget_show(vbox1); gtk_widget_show(vbox2); data.sw = gtk_scrolled_window_new (NULL, NULL); gtk_widget_set_usize(GTK_WIDGET(data.sw),-1,200); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (data.sw),GTK_SHADOW_ETCHED_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (data.sw),GTK_POLICY_AUTOMATIC,GTK_POLICY_AUTOMATIC); //gtk_box_pack_start (GTK_BOX (vbox2), data.sw, TRUE, TRUE,1); gtk_box_pack_end (GTK_BOX (vbox2), data.sw, TRUE, TRUE,1); //Кнопки GtkTooltips *tooltips[KOL_F_KL]; sprintf(bros,"%sF1 %s",RFK,gettext("Шапка")); data.knopka[SFK1]=gtk_button_new_with_label(bros); gtk_signal_connect(GTK_OBJECT(data.knopka[SFK1]), "clicked",GTK_SIGNAL_FUNC(upldok_knopka),&data); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[SFK1],TRUE,TRUE,1); tooltips[SFK1]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[SFK1],data.knopka[SFK1],gettext("Просмотр шапки документа"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[SFK1]),(gpointer)SFK1); gtk_widget_show(data.knopka[SFK1]); sprintf(bros,"F2 %s",gettext("Ввести")); data.knopka[FK2]=gtk_button_new_with_label(bros); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]), "clicked",GTK_SIGNAL_FUNC(upldok_knopka),&data); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK2],TRUE,TRUE,1); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Ввод новой записи на получение топлива"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_widget_show(data.knopka[FK2]); sprintf(bros,"%sF2 %s",RFK,gettext("Корректировать")); data.knopka[SFK2]=gtk_button_new_with_label(bros); gtk_signal_connect(GTK_OBJECT(data.knopka[SFK2]), "clicked",GTK_SIGNAL_FUNC(upldok_knopka),&data); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[SFK2],TRUE,TRUE,1); tooltips[SFK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[SFK2],data.knopka[SFK2],gettext("Корректировка выбранной записи"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[SFK2]),(gpointer)SFK2); gtk_widget_show(data.knopka[SFK2]); sprintf(bros,"F3 %s",gettext("Удалить")); data.knopka[FK3]=gtk_button_new_with_label(bros); gtk_signal_connect(GTK_OBJECT(data.knopka[FK3]), "clicked",GTK_SIGNAL_FUNC(upldok_knopka),&data); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK3],TRUE,TRUE,1); tooltips[FK3]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK3],data.knopka[FK3],gettext("Удалить выбранную запись"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK3]),(gpointer)FK3); gtk_widget_show(data.knopka[FK3]); sprintf(bros,"%sF3 %s",RFK,gettext("Удалить")); data.knopka[SFK3]=gtk_button_new_with_label(bros); gtk_signal_connect(GTK_OBJECT(data.knopka[SFK3]), "clicked",GTK_SIGNAL_FUNC(upldok_knopka),&data); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[SFK3],TRUE,TRUE,1); tooltips[SFK3]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[SFK3],data.knopka[SFK3],gettext("Удалить документ"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[SFK3]),(gpointer)SFK3); gtk_widget_show(data.knopka[SFK3]); sprintf(bros,"F4 %s",gettext("Объекти")); data.knopka[FK4]=gtk_button_new_with_label(bros); gtk_signal_connect(GTK_OBJECT(data.knopka[FK4]), "clicked",GTK_SIGNAL_FUNC(upldok_knopka),&data); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK4],TRUE,TRUE,1); tooltips[FK4]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK4],data.knopka[FK4],gettext("Переход в режим списания топлива по объектам и счетам"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK4]),(gpointer)FK4); gtk_widget_show(data.knopka[FK4]); sprintf(bros,"F6 %s",gettext("Списание")); data.knopka[FK6]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK6],TRUE,TRUE,1); gtk_signal_connect(GTK_OBJECT(data.knopka[FK6]), "clicked",GTK_SIGNAL_FUNC(upldok_knopka),&data); tooltips[FK6]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK6],data.knopka[FK6],gettext("Автоматическое списание топлива"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK6]),(gpointer)FK6); gtk_widget_show(data.knopka[FK6]); sprintf(bros,"F7 %s",gettext("Перенос")); data.knopka[FK7]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK7],TRUE,TRUE,1); gtk_signal_connect(GTK_OBJECT(data.knopka[FK7]), "clicked",GTK_SIGNAL_FUNC(upldok_knopka),&data); tooltips[FK7]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK7],data.knopka[FK7],gettext("Перенос остатка топлива с предыдушего водителя"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK7]),(gpointer)FK7); gtk_widget_show(data.knopka[FK7]); sprintf(bros,"F8 %s",gettext("Списание")); data.knopka[FK8]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1), data.knopka[FK8],TRUE,TRUE,1); gtk_signal_connect(GTK_OBJECT(data.knopka[FK8]), "clicked",GTK_SIGNAL_FUNC(upldok_knopka),&data); tooltips[FK8]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK8],data.knopka[FK8],gettext("Ввод записи на списание топлива"),NULL); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK8]),(gpointer)FK8); gtk_widget_show(data.knopka[FK8]); sprintf(bros,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(bros); gtk_box_pack_start(GTK_BOX(vbox1),data.knopka[FK10],TRUE,TRUE,1); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Завершение работы в этом окне"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]), "clicked",GTK_SIGNAL_FUNC(upldok_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_widget_show(data.knopka[FK10]); gtk_widget_realize(data.window); gdk_window_set_cursor(data.window->window,gdk_cursor_new(ICEB_CURSOR)); gtk_widget_grab_focus(data.knopka[FK10]); upldok_create_list(&data); gtk_widget_show(data.window); gtk_window_maximize(GTK_WINDOW(data.window)); gtk_main(); //printf("l_upldok end\n"); if(wpredok != NULL) gdk_window_set_cursor(wpredok->window,gdk_cursor_new(ICEB_CURSOR)); return(data.voz); }
int l_uosopp_p(class uslop_rek *datap,GtkWidget *wpredok) { uosopp_p_data data; data.rpoi=datap; char strsql[512]; data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); sprintf(strsql,"%s %s",name_system,gettext("Поиск")); gtk_window_set_title (GTK_WINDOW (data.window),strsql); gtk_container_set_border_width (GTK_CONTAINER (data.window), 5); 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(uosopp_p_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 *label=gtk_label_new(gettext("Поиск")); GtkWidget *vbox = gtk_vbox_new (FALSE, 0); GtkWidget *hbox[KOLENTER]; for(int i=0; i < KOLENTER; i++) hbox[i] = gtk_hbox_new (FALSE, 0); GtkWidget *hboxknop = gtk_hbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (data.window), vbox); gtk_container_add (GTK_CONTAINER (vbox), label); for(int i=0; i < KOLENTER; i++) gtk_container_add (GTK_CONTAINER (vbox), hbox[i]); gtk_container_add (GTK_CONTAINER (vbox), hboxknop); sprintf(strsql,"%s",gettext("Код операции")); label=gtk_label_new(iceb_u_toutf(strsql)); data.entry[E_KOD] = gtk_entry_new_with_max_length (10); gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_KOD]), data.entry[E_KOD], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_KOD]), "activate",GTK_SIGNAL_FUNC(uosopp_p_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_KOD]),data.rpoi->kod.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_KOD]),(gpointer)E_KOD); sprintf(strsql,"%s",gettext("Наименование группы")); label=gtk_label_new(iceb_u_toutf(strsql)); data.entry[E_NAIM] = gtk_entry_new_with_max_length (60); gtk_box_pack_start (GTK_BOX (hbox[E_NAIM]), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox[E_NAIM]), data.entry[E_NAIM], TRUE, TRUE, 0); gtk_signal_connect(GTK_OBJECT (data.entry[E_NAIM]), "activate",GTK_SIGNAL_FUNC(uosopp_p_vvod),&data); gtk_entry_set_text(GTK_ENTRY(data.entry[E_NAIM]),data.rpoi->naim.ravno_toutf()); gtk_object_set_user_data(GTK_OBJECT(data.entry[E_NAIM]),(gpointer)E_NAIM); GtkTooltips *tooltips[KOL_F_KL]; sprintf(strsql,"F2 %s",gettext("Поиск")); data.knopka[FK2]=gtk_button_new_with_label(strsql); tooltips[FK2]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK2],data.knopka[FK2],gettext("Начать поиск нужных записей"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK2]),"clicked",GTK_SIGNAL_FUNC(uosopp_p_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK2]),(gpointer)FK2); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK2], TRUE, TRUE, 0); sprintf(strsql,"F4 %s",gettext("Очистить")); data.knopka[FK4]=gtk_button_new_with_label(strsql); tooltips[FK4]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK4],data.knopka[FK4],gettext("Очистить меню от введенной информации"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK4]),"clicked",GTK_SIGNAL_FUNC(uosopp_p_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK4]),(gpointer)FK4); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK4], TRUE, TRUE, 0); sprintf(strsql,"F10 %s",gettext("Выход")); data.knopka[FK10]=gtk_button_new_with_label(strsql); tooltips[FK10]=gtk_tooltips_new(); gtk_tooltips_set_tip(tooltips[FK10],data.knopka[FK10],gettext("Завершение работы в этом окне"),NULL); gtk_signal_connect(GTK_OBJECT(data.knopka[FK10]),"clicked",GTK_SIGNAL_FUNC(uosopp_p_knopka),&data); gtk_object_set_user_data(GTK_OBJECT(data.knopka[FK10]),(gpointer)FK10); gtk_box_pack_start(GTK_BOX(hboxknop), data.knopka[FK10], TRUE, TRUE, 0); gtk_widget_grab_focus(data.entry[0]); gtk_widget_show_all (data.window); gtk_main(); return(0); }
void mater_udnz(GtkWidget *wpredok) { char strsql[512]; mater_udnz_data data; data.window=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_position( GTK_WINDOW(data.window),ICEB_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(data.window),TRUE); //gtk_window_set_default_size (GTK_WINDOW(data.window),400,300); if(wpredok != NULL) { //Удерживать окно над породившем его окном всегда gtk_window_set_transient_for(GTK_WINDOW(data.window),GTK_WINDOW(wpredok)); //Закрыть окно если окно предок удалено gtk_window_set_destroy_with_parent(GTK_WINDOW(data.window),TRUE); } 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); 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); GtkWidget *label=gtk_label_new(gettext("Удаление неиспользуемых кодов материалов")); 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),400,300); gtk_text_view_set_editable(GTK_TEXT_VIEW(data.view),FALSE); //Запрет на редактирование текста 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_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); //gtk_window_set_decorated(GTK_WINDOW(data.window),FALSE); //Убирает рамку вокруг окна gtk_widget_show_all(data.window); 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(mater_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_idle_add((GtkFunction)mater_udnz11,&data); gtk_main(); }