static void ShowLeverPositionAlert() { gchar* position_alert_msg; gchar* msg_buf; const static gchar* _alert_str = "_alert"; gchar* alert_msg = LookupText(g_keytext_list, "move_lever_position_alert"); gchar* position_key = ValueToKey(CNCL_MESS_THICK, GetCurrentnValue(CNCL_MESS_THICK)); // Make the key for the position string on the alert. gchar* position_alert_key = g_malloc(strlen(position_key) + strlen(_alert_str) + 1); strcpy(position_alert_key, position_key); strcat(position_alert_key, _alert_str); // Get the position string on the alert. position_alert_msg = LookupText(g_keytext_list, position_alert_key); // If not exist, use the current position string instead. if( position_alert_msg == NULL ) position_alert_msg = GetCurrentString(CNCL_MESS_THICK); msg_buf = (gchar*)g_malloc(strlen(alert_msg) + strlen(position_alert_msg)); sprintf(msg_buf, alert_msg, position_alert_msg); UtilMessageBox(msg_buf, g_window_title, MB_OK | MB_ICON_INFORMATION); g_free(position_alert_key); g_free(msg_buf); }
/* defaults button */ void on_setconfig_type003_button3_clicked (GtkButton *button, gpointer user_data) { LPSETCONFIGCOMPTYPE003WORK lpWk = (LPSETCONFIGCOMPTYPE003WORK)gLPSetConfigWork; GtkWidget* combo; GtkWidget* label; gchar* msg; int index_num = lpWk->lpInkCartridgeMsgInfo->index_num; int defIndex; defIndex = lpWk->lpInkCartridgeMsgInfo->index_default; combo = LookupWidget(GTK_WIDGET(button), "setconfig_type003_combobox1"); /* Ver.2.80 */ if( DisableSignal() ) { SetComboBoxItems(combo, (const char **)lpWk->lpInkCartridgeMsgInfo->type, index_num, defIndex ); } EnableSignal(); msg = LookupText(g_keytext_list, lpWk->lpInkCartridgeMsgInfo->info[defIndex]); label = LookupWidget(GTK_WIDGET(button), "setconfig_type003_label3"); gtk_label_set_text(GTK_LABEL(label), msg); }
/* Set items in the key_array and value_array to GtkComboBox */ void SetTextArrayToComboBox(GtkWidget* window, gchar *combo_name, const gchar* key_array[], const short value_array[], short value) { int index = 0; int i; GtkWidget* combo = LookupWidget(window, combo_name); /* Remove all items in current list */ if(gtk_combo_box_get_active_text( GTK_COMBO_BOX( combo )) ){ while( 1 ){ gtk_combo_box_set_active( GTK_COMBO_BOX( combo ), 0 ); if( ! gtk_combo_box_get_active_text( GTK_COMBO_BOX( combo )) ) break; gtk_combo_box_remove_text( GTK_COMBO_BOX( combo ), 0 ); } } /* Add items in "key_array" */ for( i = 0 ; key_array[i] != NULL ; i++ ) { gtk_combo_box_append_text( GTK_COMBO_BOX( combo ), LookupText(g_keytext_list, key_array[i]) ); if( value_array[i] == value ) index = i; } /* Set active item */ gtk_combo_box_set_active( GTK_COMBO_BOX( combo ), index ); }
char *ValueToName(short id, short value) { char *name = ValueToKey(id, value); if( name != '\0' ) name = LookupText(g_keytext_list, name); return name; }
static int GetAutoPowerIndex(const char **Keytbl, int n, char *mode) { int i; for (i=0; i < n; i++) { if (!strcmp(LookupText(g_keytext_list, Keytbl[i]), mode)) return i; } return 0; }
int KeyToIndex(char **Keytbl, int n, char *type) { int i; for (i=0; i < n; i++) { if (!strcmp(LookupText(g_keytext_list, Keytbl[i]), type)) return i; } return 0; }
short SetLabelUtilDialog( GtkWidget *dialog, char *dialogName ) { LPDIALOGSTRCOMP lpDialogStrComp = NULL; char resName[NAME_BUF_MAX_SIZE]; short result = -1; snprintf( resName, NAME_BUF_MAX_SIZE, "%s/%s", MAINTENANCE_RESPATH, MAINTENANCE_RESFILE ); if ( ParseDialogStringListTag( resName, dialogName, &lpDialogStrComp ) != 0 ){ goto Err; } while( lpDialogStrComp != NULL ){ if ( lpDialogStrComp->type == MSGTYPE_CAPTION ){ gtk_window_set_title( GTK_WINDOW(dialog), LookupText(g_keytext_list, lpDialogStrComp->strid) ); } else if ( (lpDialogStrComp->type == MSGTYPE_BUTTON) || (lpDialogStrComp->type == MSGTYPE_RADIOBUTTON) || (lpDialogStrComp->type == MSGTYPE_CHECKBUTTON) ){ gtk_button_set_label( GTK_BUTTON(LookupWidget(dialog, lpDialogStrComp->label )), LookupText(g_keytext_list, lpDialogStrComp->strid)); gtk_widget_show( LookupWidget(dialog, lpDialogStrComp->label ) ); } else if ( lpDialogStrComp->type == MSGTYPE_LABEL ){ gtk_label_set_text( GTK_LABEL(LookupWidget(dialog, lpDialogStrComp->label )), LookupText(g_keytext_list, lpDialogStrComp->strid)); gtk_widget_show( LookupWidget(dialog, lpDialogStrComp->label ) ); } else if ( lpDialogStrComp->type == MSGTYPE_SEPARATOR ) { gtk_widget_show( LookupWidget(dialog, lpDialogStrComp->label ) ); } lpDialogStrComp = lpDialogStrComp->next; } FreeDialogStrCompList( lpDialogStrComp ); result = 0; Err: return result; }
void on_setconfig_type001_checkbutton_toggled (GtkToggleButton *togglebutton, gpointer user_data) { GtkWidget* window = GetTopWidget(GTK_WIDGET(togglebutton)); if ( GTK_WIDGET_VISIBLE( window ) == TRUE ){ if( GTK_TOGGLE_BUTTON(togglebutton)->active ) { UtilMessageBox(LookupText(g_keytext_list, "LUM_LID_WARNING_PAPER_ABRASION"), g_window_title, MB_ICON_NO | MB_OK); } } }
char* GetDispModelName() { int i = 0; while( g_model_key[i] != NULL ) { if( g_model_value[i] == g_model_id ) return LookupText(g_keytext_list, g_model_key[i]); i++; } return NULL; }
void on_borderless_button_clicked (GtkButton *button, gpointer user_data) { if( DisableSignal() ) { GtkWidget* window = GetTopWidget(GTK_WIDGET(button)); if( GTK_TOGGLE_BUTTON(button)->active ) { short media_type_value = GetCurrentnValue(CNCL_MEDIATYPE); if( IsAvailableMediaBorder(g_mediaborder_dialog, media_type_value) ) { gchar* alert_msg = LookupText(g_keytext_list, "mediaborder_alert"); UtilMessageBox(alert_msg, g_window_title, MB_OK | MB_ICON_INFORMATION); UpdateMenuLink(CNCL_MARGINTYPE, CND_MARGIN_MINUS); } else { short new_media_type_value; if( (new_media_type_value = ShowMediaBorderDialog(g_mediaborder_dialog, media_type_value)) != -1 ) { UpdateMenuLink(CNCL_MEDIATYPE, new_media_type_value); UpdateMenuLink(CNCL_MARGINTYPE, CND_MARGIN_MINUS); } else { gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(button), FALSE); } } } else { UpdateMenuLink(CNCL_MARGINTYPE, CND_MARGIN_NORMAL); } UpdateWidgets(window, "borderless_button"); #ifdef GUI_WITH_PIXMAPS UpdateDrawingArea(window, "basic_draw_area"); #endif } EnableSignal(); }
short NameToValue(short id, char* name) { short *value_array; char **key_array; int count; int i; /* Ver.2.80 (Model-specific res_name) */ count = GetValueAndNameArrayTwo(id, &value_array, &key_array); for( i = 0 ; i < count ; i++ ) { if( strcmp(LookupText(g_keytext_list, key_array[i]), name) == 0 ) break; } return (i < count)? value_array[i] : -1; }
/* Ver.3.50 */ void on_setconfig_type001_checkbutton3_toggled (GtkToggleButton *togglebutton, gpointer user_data) { GtkWidget* window = GetTopWidget(GTK_WIDGET(togglebutton)); int status; if ( GTK_WIDGET_VISIBLE( window ) == TRUE ){ if( GTK_TOGGLE_BUTTON(togglebutton)->active ) { status = UtilMessageBox(LookupText(g_keytext_list, "LUM_IDS_MNTMSG_PREVENTPAPERGAP_MSG"), g_window_title, MB_ICON_EXCLAMATION | MB_OK | MB_CANCEL); if ( (status == US_CANCEL) || (status == US_X) ){ gtk_toggle_button_set_active( togglebutton, FALSE ); } } } }
static void confirm_media_supply_change(short old_supply_value) { int ret; gchar* alert_msg = LookupText(g_keytext_list, "paper_supply_change_alert"); gchar* supply_str = GetCurrentString(CNCL_MEDIASUPPLY); gchar* message = (gchar*)g_malloc(strlen(alert_msg) + strlen(supply_str)); sprintf(message, alert_msg, supply_str); ret = UtilMessageBox(message, g_window_title, MB_OK | MB_CANCEL | MB_ICON_INFORMATION); g_free(message); if( ret == ID_CANCEL ) { UpdateMenuLink(CNCL_MEDIASUPPLY, old_supply_value); } }
int GetTextArrayValueFromCombo(GtkWidget* window, gchar *combo_name, const gchar* key_array[], const short value_array[]) { GtkWidget* combo = LookupWidget(window, combo_name); /* Ver.2.80 */ gchar *current = NULL; current = (gchar*)gtk_combo_box_get_active_text(GTK_COMBO_BOX(combo)); int i; for( i = 0 ; key_array[i] != NULL ; i++ ) { if( !strcmp(current, LookupText(g_keytext_list, key_array[i])) ) { return value_array[i]; } } return 0; }
static void SetDefaultSetConfigType003( LPSETCONFIGCOMPTYPE003RES lpRes, void *lpGWork ) { LPSETCONFIGCOMPTYPE003WORK lpWork = (LPSETCONFIGCOMPTYPE003WORK)lpGWork; GtkWidget* combo; GtkWidget* label; gchar* msg; int index_num = lpWork->lpInkCartridgeMsgInfo->index_num; int currentIndex; currentIndex= nValueToIndex(lpWork->lpInkCartridgeMsgInfo->nValue, index_num, GetCurrentnValue(CNCL_INKCARTRIDGESETTINGS) ); combo = LookupWidget( lpWork->dialog, "setconfig_type003_combobox1" ); if( DisableSignal() ) { SetComboBoxItems(combo, (const char **)lpWork->lpInkCartridgeMsgInfo->type, index_num, currentIndex); } EnableSignal(); msg = LookupText(g_keytext_list, lpWork->lpInkCartridgeMsgInfo->info[currentIndex]); label = LookupWidget(GTK_WIDGET(lpWork->dialog), "setconfig_type003_label3"); gtk_label_set_text(GTK_LABEL(label), msg); }
short SetLabelCommonUtilDialogForSetConfig( char *dialogName, unsigned int flag, short *retVal ) { LPDIALOGSTRCOMP lpDialogStrComp = NULL; char resName[NAME_BUF_MAX_SIZE]; short result = -1; *retVal = 0; snprintf( resName, NAME_BUF_MAX_SIZE, "%s/%s", MAINTENANCE_RESPATH, MAINTENANCE_RESFILE ); if ( ParseDialogStringListTag( resName, dialogName, &lpDialogStrComp ) != 0 ) goto Err; while ( lpDialogStrComp != NULL ){ if ( lpDialogStrComp->type == MSGTYPE_LABEL ){ *retVal = UtilMessageBoxWithStatusSetConfig(LookupText(g_keytext_list, lpDialogStrComp->strid), g_window_title, flag ); } lpDialogStrComp = lpDialogStrComp->next; } FreeDialogStrCompList( lpDialogStrComp ); result = 0; Err: return result; }
void SetComboBoxItems(GtkWidget *combo, char **Keytbl, int n, int index) { int i; /* Remove all items in current list */ if(gtk_combo_box_get_active_text( GTK_COMBO_BOX( combo )) ){ while( 1 ){ gtk_combo_box_set_active( GTK_COMBO_BOX( combo ), 0 ); if( ! gtk_combo_box_get_active_text( GTK_COMBO_BOX( combo )) ) break; gtk_combo_box_remove_text( GTK_COMBO_BOX( combo ), 0 ); } } /* Add items in "Keytbl" */ for (i=0; i < n; i++) { gtk_combo_box_append_text( GTK_COMBO_BOX( combo ), LookupText(g_keytext_list, Keytbl[i]) ); } if( index >= n ) index = 0; gtk_combo_box_set_active( GTK_COMBO_BOX( combo ), index ); }
void on_setconfig_type003_dialog_combo_changed (GtkComboBox *combobox, gpointer user_data) { LPSETCONFIGCOMPTYPE003WORK lpWk = (LPSETCONFIGCOMPTYPE003WORK)gLPSetConfigWork; GtkWidget* label; char* type; gchar* msg; int index_num = lpWk->lpInkCartridgeMsgInfo->index_num; int currentIndex; if( DisableSignal() ) { type = (char*)gtk_combo_box_get_active_text( combobox ); currentIndex = KeyToIndex(lpWk->lpInkCartridgeMsgInfo->type, index_num, type ); msg = LookupText(g_keytext_list, lpWk->lpInkCartridgeMsgInfo->info[currentIndex]); label = LookupWidget(GTK_WIDGET(combobox), "setconfig_type003_label3"); gtk_label_set_text(GTK_LABEL(label), msg); } EnableSignal(); }
void LogUnPacking( char *name ) //============================= { Log( LookupText( NULL, TXT_UNPACK ), "\'", name, "\'", NULL ); }
static int UtilMessageBoxSetDefault( char *message, char *title, unsigned int flag, unsigned int default_flag, short isWithStatus ) { GtkWidget *dialog; GtkWidget *dialog_action_area1; GtkWidget *dialog_vbox1; GtkWidget *hbox1; GtkWidget *pixmap; GtkWidget *label; GtkWidget *hbuttonbox1; GtkWidget *button; GdkPixmap *icon = NULL; GdkPixmap *iconMask = NULL; GtkStyle *style; int i; short icon_exist = 1; //Ver.3.00 gUtilCommonStatus = US_MAINTENANCE_EXIT; dialog = gtk_dialog_new(); gtk_widget_realize(dialog); gtk_window_set_title(GTK_WINDOW(dialog), title); gtk_window_set_policy(GTK_WINDOW(dialog), FALSE, FALSE, TRUE); gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_CENTER); gtk_signal_connect(GTK_OBJECT(dialog), "destroy", GTK_SIGNAL_FUNC(message_box_destroy), dialog); // If dialog has YSE and NO button, disable close button. if ( (flag & MB_YES) && (flag & MB_NO) ){ gtk_signal_connect (GTK_OBJECT (dialog), "delete_event", GTK_SIGNAL_FUNC (message_box_delete_event_no_destroy), dialog); } else { if ( isWithStatus == 1 ){ gtk_signal_connect (GTK_OBJECT (dialog), "delete_event", GTK_SIGNAL_FUNC (message_box_delete_event_with_status_common), dialog); } else if ( isWithStatus == 2 ){ gtk_signal_connect (GTK_OBJECT (dialog), "delete_event", GTK_SIGNAL_FUNC (message_box_delete_event_with_status_setconfig), dialog); } else { gtk_signal_connect (GTK_OBJECT (dialog), "delete_event", GTK_SIGNAL_FUNC (message_box_delete_event), dialog); } } dialog_action_area1 = GTK_DIALOG(dialog)->action_area; dialog_vbox1 = GTK_DIALOG(dialog)->vbox; hbox1 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox1, TRUE, TRUE, 5); style = gtk_widget_get_style(dialog); switch (flag & 0x0000000f) { case MB_ICON_INFORMATION: icon = gdk_pixmap_create_from_xpm_d(dialog->window, &iconMask, &style->bg[GTK_STATE_NORMAL], info_xpm); break; case MB_ICON_EXCLAMATION: icon = gdk_pixmap_create_from_xpm_d(dialog->window, &iconMask, &style->bg[GTK_STATE_NORMAL], exclam_xpm); break; case MB_ICON_SYSERR: icon = gdk_pixmap_create_from_xpm_d(dialog->window, &iconMask, &style->bg[GTK_STATE_NORMAL], syserr_xpm); break; case MB_ICON_QUESTION: /* Ver.2.90 */ icon = gdk_pixmap_create_from_xpm_d(dialog->window, &iconMask, &style->bg[GTK_STATE_NORMAL], question_xpm); break; default: /* Ver.3.00 */ icon_exist = 0; break; } if( icon_exist ){ pixmap = gtk_pixmap_new(icon, iconMask); gtk_box_pack_start(GTK_BOX(hbox1), pixmap, FALSE, FALSE, 10); if( icon_exist ) gtk_widget_show(pixmap); } //else gtk_widget_hide(pixmap); label = gtk_label_new(message); gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_LEFT); gtk_widget_show(label); gtk_box_pack_start(GTK_BOX(hbox1), label, TRUE, TRUE, 10); hbuttonbox1 = gtk_hbutton_box_new(); gtk_box_pack_start( GTK_BOX(dialog_action_area1), hbuttonbox1, TRUE, FALSE, 0); gtk_widget_show(hbuttonbox1); /* Ver.2.80 */ gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area1), GTK_BUTTONBOX_SPREAD); gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox1), GTK_BUTTONBOX_SPREAD); gtk_box_set_spacing (GTK_BOX (hbuttonbox1), 7); i = 0; if (flag & MB_OK) { button = gtk_button_new_with_label( LookupText(g_keytext_list, "message_button_ok")); gtk_widget_show(button); gtk_container_add(GTK_CONTAINER(hbuttonbox1), button); GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(message_box_ok), dialog); if( default_flag & MB_OK ){ gtk_widget_grab_focus(button); gtk_widget_grab_default(button); } i++; } if (flag & MB_CANCEL) { button = gtk_button_new_with_label( LookupText(g_keytext_list, "message_button_cancel")); gtk_widget_show(button); gtk_container_add(GTK_CONTAINER(hbuttonbox1), button); GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(message_box_cancel), dialog); if( default_flag & MB_CANCEL ){ gtk_widget_grab_focus(button); gtk_widget_grab_default(button); } i++; } if (flag & MB_YES) { button = gtk_button_new_with_label( LookupText(g_keytext_list, "message_button_yes")); gtk_widget_show(button); gtk_container_add(GTK_CONTAINER(hbuttonbox1), button); GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(message_box_yes), dialog); if( default_flag & MB_YES ){ gtk_widget_grab_focus(button); gtk_widget_grab_default(button); } i++; } if (flag & MB_NO) { button = gtk_button_new_with_label( LookupText(g_keytext_list, "message_button_no")); gtk_widget_show(button); gtk_container_add(GTK_CONTAINER(hbuttonbox1), button); GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(message_box_no), dialog); if( default_flag & MB_NO ){ gtk_widget_grab_focus(button); gtk_widget_grab_default(button); } i++; } if (flag & MB_ABORT) { button = gtk_button_new_with_label( LookupText(g_keytext_list, "message_button_abort")); gtk_widget_show(button); gtk_container_add(GTK_CONTAINER(hbuttonbox1), button); GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(message_box_abort), dialog); if( default_flag & MB_ABORT ){ gtk_widget_grab_focus(button); gtk_widget_grab_default(button); } i++; } if (flag & MB_IGNORE) { button = gtk_button_new_with_label( LookupText(g_keytext_list, "message_button_ignore")); gtk_widget_show(button); gtk_container_add(GTK_CONTAINER(hbuttonbox1), button); GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(message_box_ignore), dialog); if( default_flag & MB_IGNORE ){ gtk_widget_grab_focus(button); gtk_widget_grab_default(button); } i++; } gtk_window_set_transient_for(GTK_WINDOW(dialog), GTK_WINDOW(UI_DIALOG(g_main_window)->window)); gtk_widget_show(dialog); gtk_window_set_modal(GTK_WINDOW(dialog), TRUE); gtk_main(); if( icon_exist ){ gdk_pixmap_unref(icon); } return gUtilCommonStatus; }
void DrawPrinterDrawingArea(GtkWidget* window, GtkWidget* area) { GdkWindow* area_window = area->window; GdkPixmap* pixmap; GdkBitmap* mask; gchar* xpm_name; gchar* key_str; gchar* message_str; GdkGC* gc = gdk_gc_new(window->window); // Background pattern. pixmap = LoadPixmap(window, NULL, "bg.xpm"); DrawPixmap(area_window, gc, 0, 0, pixmap, NULL); FreePixmap(pixmap, NULL); // Printer body. pixmap = LoadPixmap(window, &mask, "printer.xpm"); DrawPixmap(area_window, gc, BODY_PIXMAP_X, BODY_PIXMAP_Y, pixmap, mask); FreePixmap(pixmap, mask); // Paper set and out. // Right guide(Paper set). { gchar* in_xpm_name; gchar* out_xpm_name; gchar* guide_xpm_name; short supply = GetCurrentnValue(CNCL_MEDIASUPPLY); #ifdef SUPPORT_BANNER short media = GetCurrentnValue(CNCL_MEDIATYPE); #endif short size = GetCurrentnValue(CNCL_PAPERSIZE); if( supply == CND_SUPPLY_MANUAL ) in_xpm_name = "in_m.xpm"; else in_xpm_name = NULL; #ifdef SUPPORT_BANNER if( media == CND_MEDIA_BANNER ) guide_xpm_name = "guide_a3.xpm"; else #endif guide_xpm_name = NULL; if( GetPaperWidth(size) > GetPaperHeight(size) ) { if( in_xpm_name == NULL ) in_xpm_name = "in_l.xpm"; if( guide_xpm_name == NULL ) guide_xpm_name = "guide_a2.xpm"; out_xpm_name = "out_ph.xpm"; } else { if( in_xpm_name == NULL ) in_xpm_name = "in_p.xpm"; if( guide_xpm_name == NULL ) guide_xpm_name = "guide_a1.xpm"; out_xpm_name = "out_pv.xpm"; } pixmap = LoadPixmap(window, &mask, in_xpm_name); DrawPixmap(area_window, gc, BODY_PIXMAP_X, BODY_PIXMAP_Y, pixmap, mask); FreePixmap(pixmap, mask); pixmap = LoadPixmap(window, &mask, out_xpm_name); DrawPixmap(area_window, gc, BODY_PIXMAP_X, BODY_PIXMAP_Y, pixmap, mask); FreePixmap(pixmap, mask); pixmap = LoadPixmap(window, &mask, guide_xpm_name); DrawPixmap(area_window, gc, R_GUIDE_PIXMAP_X, R_GUIDE_PIXMAP_Y, pixmap, mask); FreePixmap(pixmap, mask); } // Left guide(Thickness). { short thick = GetCurrentnValue(CNCL_MESS_THICK); switch( thick ) { case CND_TMESSAGE_UPPER2: xpm_name = "guide_b1.xpm"; break; default: xpm_name = "guide_b3.xpm"; break; } pixmap = LoadPixmap(window, &mask, xpm_name); DrawPixmap(area_window, gc, L_GUIDE_PIXMAP_X, L_GUIDE_PIXMAP_Y, pixmap, mask); FreePixmap(pixmap, mask); } // Media type message. message_str = GetCurrentString(CNCL_MEDIATYPE); DrawString(area_window, g_main_font, gc, MEDIA_TEXT_X, MEDIA_TEXT_Y, message_str); { if( IsGrayPrint(g_main_window) ) { xpm_name = "print_mono.xpm"; key_str = "print_mono_message"; } else { xpm_name = "print_color.xpm"; key_str = "print_color_message"; } #ifndef NO_PRINT_COLOR_ICON // Print color icon. pixmap = LoadPixmap(window, &mask, xpm_name); DrawPixmap(area_window, gc, COLOR_PIXMAP_X, COLOR_PIXMAP_Y, pixmap, mask); FreePixmap(pixmap, mask); #endif // Color type message. message_str = LookupText(g_keytext_list, key_str); DrawString(area_window, g_main_font, gc, COLOR_TEXT_X, COLOR_TEXT_Y, message_str); } gdk_gc_unref(gc); }
void UpdateUserSizeWidgets(UIUserSizeDialog* dialog, gboolean init_flag) { GtkSpinButton* width_spin = (GtkSpinButton*)LookupWidget( UI_DIALOG(dialog)->window, "user_size_width_spin"); GtkSpinButton* height_spin = (GtkSpinButton*)LookupWidget( UI_DIALOG(dialog)->window, "user_size_height_spin"); GtkAdjustment* adjust_w = width_spin->adjustment; GtkAdjustment* adjust_h = height_spin->adjustment; double min_w, max_w; double min_h, max_h; double new_w, new_h; GtkWidget* label; gchar scale_label[64]; gchar* scale_string; gchar width_min_string[12]; gchar width_max_string[12]; gchar height_min_string[12]; gchar height_max_string[12]; /* Ver.3.00 */ double min_w_adjust, max_w_adjust; double min_h_adjust, max_h_adjust; gchar width_min_string_adjust[12]; gchar width_max_string_adjust[12]; gchar height_min_string_adjust[12]; gchar height_max_string_adjust[12]; // The scale of dialog->width and dialog->height is "mm", // so old_scale must be 0 when showing this dialog. int old_scale = (init_flag)? 0 : dialog->old_scale; int new_scale = GetActiveButtonIndex( UI_DIALOG(dialog)->window, user_size_scale_button_name, 0); if( init_flag ) { adjust_w->value = dialog->width; adjust_h->value = dialog->height; } if( new_scale ) { // inch width_spin->climb_rate = height_spin->climb_rate = 0.01; width_spin->digits = height_spin->digits = 2; if( new_scale != old_scale ) { // mm -> inch new_w = Milli2Inch(dialog->min_mm_w, dialog->max_mm_w, dialog->min_in_w, dialog->max_in_w, adjust_w->value); new_h = Milli2Inch(dialog->min_mm_h, dialog->max_mm_h, dialog->min_in_h, dialog->max_in_h, adjust_h->value); } else { new_w = adjust_w->value; new_h = adjust_h->value; } min_w = dialog->min_in_w; max_w = dialog->max_in_w; min_h = dialog->min_in_h; max_h = dialog->max_in_h; } else { // mm width_spin->climb_rate = height_spin->climb_rate = 0.1; width_spin->digits = height_spin->digits = 1; if( new_scale != old_scale ) { // inch -> mm new_w = Inch2Milli(dialog->min_in_w, dialog->max_in_w, dialog->min_mm_w, dialog->max_mm_w, adjust_w->value); new_h = Inch2Milli(dialog->min_in_h, dialog->max_in_h, dialog->min_mm_h, dialog->max_mm_h, adjust_h->value); } else { new_w = adjust_w->value; new_h = adjust_h->value; } min_w = dialog->min_mm_w; max_w = dialog->max_mm_w; min_h = dialog->min_mm_h; max_h = dialog->max_mm_h; } // Set adjustment fields. adjust_w->step_increment = width_spin->climb_rate; adjust_h->step_increment = height_spin->climb_rate; adjust_w->page_increment = width_spin->climb_rate * 10; adjust_h->page_increment = height_spin->climb_rate * 10; #if 0 adjust_w->lower = min_w; adjust_w->upper = max_w; adjust_h->lower = min_h; adjust_h->upper = max_h; #endif /* Ver.3.00 */ if( new_scale ) //inch { snprintf( width_min_string_adjust, 12, "%6.0f", (float)min_w * (float)100 ); snprintf( width_max_string_adjust, 12, "%6.0f", (float)max_w * (float)100 ); snprintf( height_min_string_adjust, 12, "%6.0f", (float)min_h * (float)100 ); snprintf( height_max_string_adjust, 12, "%6.0f", (float)max_h * (float)100 ); min_w_adjust = (double)atoi( width_min_string_adjust ) / (double)100; max_w_adjust = (double)atoi( width_max_string_adjust ) / (double)100; min_h_adjust = (double)atoi( height_min_string_adjust ) / (double)100; max_h_adjust = (double)atoi( height_max_string_adjust ) / (double)100; } else //mm { snprintf( width_min_string_adjust, 12, "%6.0f", (float)min_w * (float)10 ); snprintf( width_max_string_adjust, 12, "%6.0f", (float)max_w * (float)10 ); snprintf( height_min_string_adjust,12, "%6.0f", (float)min_h * (float)10 ); snprintf( height_max_string_adjust, 12, "%6.0f", (float)max_h * (float)10 ); min_w_adjust = (double)atoi( width_min_string_adjust ) / (double)10; max_w_adjust = (double)atoi( width_max_string_adjust ) / (double)10; min_h_adjust = (double)atoi( height_min_string_adjust ) / (double)10; max_h_adjust = (double)atoi( height_max_string_adjust ) / (double)10; } adjust_w->lower = min_w_adjust; adjust_w->upper = max_w_adjust; adjust_h->lower = min_h_adjust; adjust_h->upper = max_h_adjust; #ifdef _PRINTUI_DEBUG_ fprintf(stderr,"adjust_w->lower = %f\n",adjust_w->lower); fprintf(stderr,"min_w = %f\n",min_w); fprintf(stderr,"adjust_w->upper = %f\n",adjust_w->upper); fprintf(stderr,"max_w = %f\n",max_w); fprintf(stderr,"adjust_h->lower = %f\n",adjust_h->lower); fprintf(stderr,"min_h = %f\n",min_h); fprintf(stderr,"adjust_h->upper = %f\n",adjust_h->upper); fprintf(stderr,"max_h = %f\n",max_h); #endif gtk_spin_button_set_value(width_spin, new_w); gtk_spin_button_set_value(height_spin, new_h); /* Ver.2.80 */ snprintf( width_min_string, 12, user_size_range_format[new_scale], (float)min_w ); snprintf( width_max_string, 12, user_size_range_format[new_scale], (float)max_w ); snprintf( height_min_string, 12, user_size_range_format[new_scale], (float)min_h ); snprintf( height_max_string, 12, user_size_range_format[new_scale], (float)max_h ); scale_string = LookupText(g_keytext_list, user_size_scale_format_res[new_scale]); // Width scale label. label = LookupWidget(UI_DIALOG(dialog)->window, "user_size_width_label"); snprintf(scale_label, sizeof(scale_label), scale_string, width_min_string, width_max_string );/*Ver.2.90(s)*/ gtk_label_set_text(GTK_LABEL(label), scale_label); // Height scale label. label = LookupWidget(UI_DIALOG(dialog)->window, "user_size_height_label"); snprintf(scale_label,sizeof(scale_label), scale_string, height_min_string, height_max_string );/*Ver.2.90(s)*/ gtk_label_set_text(GTK_LABEL(label), scale_label); dialog->old_scale = new_scale; }
/* ver.3.20:Use combo (item list) */ int ShowMediaSizeIllegalSelectDialog(UIMediaSizeDialog* dialog, gchar* applied) { GtkWidget* current_label; GtkWidget* message_label; char *data; short change_id; char* change_msg; int i; gchar* alert_msg2_1; gchar* alert_msg2_2; gchar* message; gchar* tmp_message; gint message_len, tmp_message_len; if( dialog->change == UI_MEDIASIZE_CHANGE_SIZE ){ /* show media -> size */ /* show media */ current_label = LookupWidget(UI_DIALOG(dialog)->window, "mediasize_illegal_select_label001"); gtk_label_set_text( GTK_LABEL(current_label), LookupText(g_keytext_list, "LUM_IDD_PAG_MAIN_IDC_STT_MEDIATYPE") ); current_label = LookupWidget(UI_DIALOG(dialog)->window, "mediasize_illegal_select_label002"); data = ValueToName(CNCL_MEDIATYPE, KeyToValue(CNCL_MEDIATYPE, dialog->media)); gtk_label_set_text( GTK_LABEL(current_label), data ); /* show size */ current_label = LookupWidget(UI_DIALOG(dialog)->window, "mediasize_illegal_select_label003"); gtk_label_set_text( GTK_LABEL(current_label), LookupText(g_keytext_list, "LUM_IDD_PAG_PAGESET_XP_IDC_STT_PAGESIZE") ); current_label = LookupWidget(UI_DIALOG(dialog)->window, "mediasize_illegal_select_label004"); data = ValueToName(CNCL_PAPERSIZE, KeyToValue(CNCL_PAPERSIZE, dialog->size)); gtk_label_set_text( GTK_LABEL(current_label), data ); } else { /* show size -> media */ /* show size */ current_label = LookupWidget(UI_DIALOG(dialog)->window, "mediasize_illegal_select_label001"); gtk_label_set_text( GTK_LABEL(current_label), LookupText(g_keytext_list, "LUM_IDD_PAG_PAGESET_XP_IDC_STT_PAGESIZE") ); current_label = LookupWidget(UI_DIALOG(dialog)->window, "mediasize_illegal_select_label002"); data = ValueToName(CNCL_PAPERSIZE, KeyToValue(CNCL_PAPERSIZE, dialog->size)); gtk_label_set_text( GTK_LABEL(current_label), data ); /* show media */ current_label = LookupWidget(UI_DIALOG(dialog)->window, "mediasize_illegal_select_label003"); gtk_label_set_text( GTK_LABEL(current_label), LookupText(g_keytext_list, "LUM_IDD_PAG_MAIN_IDC_STT_MEDIATYPE") ); current_label = LookupWidget(UI_DIALOG(dialog)->window, "mediasize_illegal_select_label004"); data = ValueToName(CNCL_MEDIATYPE, KeyToValue(CNCL_MEDIATYPE, dialog->media)); gtk_label_set_text( GTK_LABEL(current_label), data ); } dialog->item_count = CountWords(applied); message_label = LookupWidget(UI_DIALOG(dialog)->window, "mediasize_illegal_select_message_label"); if( dialog->change == UI_MEDIASIZE_CHANGE_SIZE ) { change_id = CNCL_PAPERSIZE; change_msg = LookupText(g_keytext_list, "mediasize_change_size"); } else { change_id = CNCL_MEDIATYPE; change_msg = LookupText(g_keytext_list, "mediasize_change_media"); } // In case of changing more than 1 recommended items. alert_msg2_1 = LookupText(g_keytext_list, "mediasize_illegal_select_message2_1"); alert_msg2_2 = LookupText(g_keytext_list, "mediasize_illegal_select_message2_2"); message_len = strlen(change_msg) + strlen(alert_msg2_1) + strlen(alert_msg2_2) + 2; /* Ver.2.80 "2":\n+\0 */ message = (gchar*)g_malloc( message_len ); tmp_message_len = strlen(change_msg) + strlen(alert_msg2_1) + 1; /* Ver.2.80 "1":\0 */ tmp_message = (gchar*)g_malloc( tmp_message_len ); snprintf(tmp_message, tmp_message_len, alert_msg2_1, change_msg ); /* Ver.3.60 */ snprintf(message, message_len, "%s\n%s", tmp_message, alert_msg2_2); gtk_label_set_text(GTK_LABEL(message_label), message); g_free(tmp_message); g_free(message); { gchar* words = applied; gchar* word = (gchar*)g_malloc(strlen(words)); gchar* next; gchar* change_to; int len; /* Ver.3.20: make combo */ GtkWidget* combo = LookupWidget(UI_DIALOG(dialog)->window, "mediasize_illegal_combo" ); /* Remove all items in current list */ if(gtk_combo_box_get_active_text( GTK_COMBO_BOX( combo )) ){ while( 1 ){ gtk_combo_box_set_active( GTK_COMBO_BOX( combo ), 0 ); if( ! gtk_combo_box_get_active_text( GTK_COMBO_BOX( combo )) ) break; gtk_combo_box_remove_text( GTK_COMBO_BOX( combo ), 0 ); } } /* Add available list (not disable items from UIDB ) */ for( i = 0 ; i < dialog->item_count ; i++ ) { next = GetWord(words, &len); strncpy(word, words, len); word[len] = '\0'; change_to = LookupText(g_keytext_list, word); if( change_to != NULL ) { if( *change_to != '\0' ){ /* append one item */ gtk_combo_box_append_text( GTK_COMBO_BOX( combo ), change_to ); } } if( i == 0) dialog->current_change_to_id = KeyToValue(change_id, word); /* default current...set top item */ words = next; } /* Set active item to top */ gtk_combo_box_set_active( GTK_COMBO_BOX( combo ), 0 ); gtk_widget_show( combo ); g_free(word); } gtk_window_set_title( GTK_WINDOW(UI_DIALOG(dialog)->window), g_window_title); gtk_window_set_position( GTK_WINDOW(UI_DIALOG(dialog)->window), GTK_WIN_POS_CENTER); ShowDialog((UIDialog*)dialog, "mediasize_illegal_select_apply_button"); return dialog->exec; }