diff -C 3 -r -P jpilot-0.98.1-bak/Expense/expense.c jpilot-0.98.1/Expense/expense.c *** jpilot-0.98.1-bak/Expense/expense.c Wed Jul 5 19:32:47 2000 --- jpilot-0.98.1/Expense/expense.c Wed Jul 5 19:53:24 2000 *************** *** 92,97 **** --- 92,99 ---- static GtkWidget *menu_item_category2[16]; static GtkWidget *menu_expense_type; static GtkWidget *menu_item_expense_type[28]; + static GtkWidget *menu_currency; + static GtkWidget *menu_item_currency[24]; static GtkWidget *spinner_mon, *spinner_day, *spinner_year; GtkAdjustment *adj_mon, *adj_day, *adj_year; GtkWidget *scrolled_window; *************** *** 99,104 **** --- 101,107 ---- static int glob_detail_category; static int glob_detail_type; static int glob_detail_payment; + static int glob_detail_currency; static int glob_row_selected; static void display_records(); *************** *** 285,291 **** ex.type = glob_detail_type; ex.payment = glob_detail_payment; ! ex.currency=23; text = gtk_entry_get_text(GTK_ENTRY(entry_amount)); ex.amount = text; if (ex.amount[0]=='\0') { --- 288,294 ---- ex.type = glob_detail_type; ex.payment = glob_detail_payment; ! ex.currency=glob_detail_currency; text = gtk_entry_get_text(GTK_ENTRY(entry_amount)); ex.amount = text; if (ex.amount[0]=='\0') { *************** *** 609,617 **** --- 612,623 ---- (menu_item_expense_type[mex->ex.type]), TRUE); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM (menu_item_payment[mex->ex.payment]), TRUE); + gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM + (menu_item_currency[mex->ex.currency]), TRUE); gtk_option_menu_set_history(GTK_OPTION_MENU(menu_category2), mex->attrib & 0x0F); gtk_option_menu_set_history(GTK_OPTION_MENU(menu_expense_type), mex->ex.type); gtk_option_menu_set_history(GTK_OPTION_MENU(menu_payment), mex->ex.payment); + gtk_option_menu_set_history(GTK_OPTION_MENU(menu_currency), mex->ex.currency); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinner_mon), mex->ex.date.tm_mon+1); *************** *** 682,687 **** --- 688,696 ---- case EXPENSE_PAYMENT: glob_detail_payment=sel; break; + case EXPENSE_CURRENCY: + glob_detail_currency=sel; + break; } } *************** *** 790,795 **** --- 799,831 ---- _("Train"), NULL }; + char *currency[]={ + _("Australia"), + _("Austria"), + _("Belgium"), + _("Brazil"), + _("Canada"), + _("Denmark"), + _("Finland"), + _("France"), + _("German"), + _("Hong Kong."), + _("Iceland"), + _("Ireland"), + _("Italy"), + _("Japan"), + _("Luxembourg"), + _("Mexico"), + _("Holland"), + _("New Zealand"), + _("Norway"), + _("Spain"), + _("Sweden"), + _("Switzerland"), + _("U.K."), + _("U.S.A."), + NULL + }; jp_logf(LOG_DEBUG, "Expense: make_menus\n"); *************** *** 830,835 **** --- 866,872 ---- make_menu(&categories[1], EXPENSE_CAT2, &menu_category2, menu_item_category2); make_menu(payment, EXPENSE_PAYMENT, &menu_payment, menu_item_payment); make_menu(expense_type, EXPENSE_TYPE, &menu_expense_type, menu_item_expense_type); + make_menu(currency, EXPENSE_CURRENCY, &menu_currency, menu_item_currency); } *************** *** 1072,1077 **** --- 1109,1123 ---- label = gtk_label_new(_("Payment: ")); gtk_box_pack_start(GTK_BOX(temp_hbox), label, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(temp_hbox), menu_payment, TRUE, TRUE, 0); + + + /* Currency Menu */ + temp_hbox = gtk_hbox_new(FALSE, 0); + gtk_box_pack_start(GTK_BOX(vbox2), temp_hbox, FALSE, FALSE, 0); + + label = gtk_label_new(_("Currency: ")); + gtk_box_pack_start(GTK_BOX(temp_hbox), label, FALSE, FALSE, 0); + gtk_box_pack_start(GTK_BOX(temp_hbox), menu_currency, TRUE, TRUE, 0); diff -C 3 -r -P jpilot-0.98.1-bak/Expense/po/ja.po jpilot-0.98.1/Expense/po/ja.po *** jpilot-0.98.1-bak/Expense/po/ja.po Wed Jul 5 19:36:02 2000 --- jpilot-0.98.1/Expense/po/ja.po Wed Jul 5 19:53:52 2000 *************** *** 1,239 **** # J-Pilot Expense Plugin ja.po # Copyright (C) 2000 Free Software Foundation, Inc. # Hiroki Harata , 2000 # - #, fuzzy msgid "" msgstr "" ! "Project-Id-Version: PACKAGE VERSION\n" ! "POT-Creation-Date: 2000-06-29 04:48+0900\n" ! "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" ! "Last-Translator: FULL NAME \n" ! "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" ! "Content-Type: text/plain; charset=CHARSET\n" ! "Content-Transfer-Encoding: ENCODING\n" ! #: expense.c:146 msgid "Expense" msgstr "支払メモ" ! #: expense.c:157 msgid "About Expense" msgstr "支払メモの情報" ! #: expense.c:178 expense.c:763 msgid "Airfare" msgstr "飛行機" ! #: expense.c:180 expense.c:764 msgid "Breakfast" msgstr "朝食" ! #: expense.c:182 expense.c:765 msgid "Bus" msgstr "バス" ! #: expense.c:184 expense.c:766 msgid "BusinessMeals" msgstr "会食" ! #: expense.c:186 expense.c:767 msgid "CarRental" msgstr "レンタカー" ! #: expense.c:188 expense.c:768 msgid "Dinner" msgstr "夕食" ! #: expense.c:190 expense.c:769 msgid "Entertainment" msgstr "接待" ! #: expense.c:192 expense.c:770 msgid "Fax" msgstr "ファックス" ! #: expense.c:194 expense.c:771 msgid "Gas" msgstr "ガソリン" ! #: expense.c:196 expense.c:772 msgid "Gifts" msgstr "ギフト" ! #: expense.c:198 expense.c:773 msgid "Hotel" msgstr "ホテル" ! #: expense.c:200 expense.c:774 msgid "Incidentals" msgstr "雑費" ! #: expense.c:202 expense.c:775 msgid "Laundry" msgstr "クリーニング" ! #: expense.c:204 expense.c:776 msgid "Limo" msgstr "ハイヤー" ! #: expense.c:206 expense.c:777 msgid "Lodging" msgstr "宿泊" ! #: expense.c:208 expense.c:778 msgid "Lunch" msgstr "昼食" ! #: expense.c:210 expense.c:779 msgid "Mileage" msgstr "走行距離" ! #: expense.c:212 expense.c:780 msgid "Other" msgstr "その他" ! #: expense.c:214 expense.c:781 msgid "Parking" msgstr "駐車" ! #: expense.c:216 expense.c:782 msgid "Postage" msgstr "郵送" ! #: expense.c:218 expense.c:783 msgid "Snack" msgstr "軽食" ! #: expense.c:220 expense.c:784 msgid "Subway" msgstr "地下鉄" ! #: expense.c:222 expense.c:785 msgid "Supplies" msgstr "生活用品" ! #: expense.c:224 expense.c:786 msgid "Taxi" msgstr "タクシー" ! #: expense.c:226 expense.c:787 msgid "Telephone" msgstr "電話" ! #: expense.c:228 expense.c:788 msgid "Tips" msgstr "チップ" ! #: expense.c:230 expense.c:789 msgid "Tolls" msgstr "高速道路" ! #: expense.c:232 expense.c:790 msgid "Train" msgstr "鉄道" ! #: expense.c:245 msgid "AmEx" msgstr "" ! #: expense.c:247 expense.c:753 msgid "Cash" msgstr "現金" ! #: expense.c:249 expense.c:754 msgid "Check" msgstr "小切手" ! #: expense.c:251 msgid "CreditCard" msgstr "クレジットカード" ! #: expense.c:253 msgid "MasterCard" msgstr "" ! #: expense.c:255 expense.c:757 msgid "Prepaid" msgstr "プリペイドカード" ! #: expense.c:257 expense.c:758 msgid "VISA" msgstr "" ! #: expense.c:259 expense.c:759 msgid "Unfiled" msgstr "その他" ! #: expense.c:752 msgid "American Express" msgstr "" ! #: expense.c:755 msgid "Credit Card" msgstr "クレジットカード" ! #: expense.c:756 msgid "Master Card" msgstr "" ! #: expense.c:982 msgid "Delete" msgstr "削除" ! #: expense.c:1002 expense.c:1054 msgid "Category: " msgstr "カテゴリ: " ! #: expense.c:1034 msgid "Add It" msgstr "追加" ! #: expense.c:1039 msgid "Apply Changes" msgstr "変更" ! #: expense.c:1044 msgid "Clear" msgstr "新規" ! #: expense.c:1063 msgid "Type: " msgstr "種類: " ! #: expense.c:1072 msgid "Payment: " msgstr "支払方法: " ! #: expense.c:1086 msgid "Month:" msgstr "月:" ! #: expense.c:1100 msgid "Day:" msgstr "日:" ! #: expense.c:1114 msgid "Year:" msgstr "年:" ! #: expense.c:1131 msgid "Amount: " msgstr "総額: " ! #: expense.c:1140 msgid "Vendor: " msgstr "支払先: " ! #: expense.c:1149 msgid "City: " msgstr "場所: " ! #: expense.c:1155 msgid "Attendees" ! msgstr "同行者: " ! #: expense.c:1169 msgid "Note" msgstr "コメント" --- 1,347 ---- # J-Pilot Expense Plugin ja.po # Copyright (C) 2000 Free Software Foundation, Inc. # Hiroki Harata , 2000 + # (2000/7/4 rearranged by Takuro Ashie ) # msgid "" msgstr "" ! "Project-Id-Version: jpilot 0.98\n" ! "POT-Creation-Date: 2000-07-04 18:54+0900\n" ! "PO-Revision-Date: 2000-02-25 04:51+0900\n" ! "Last-Translator: Hiroki Harata \n" ! "Language-Team: Japanese\n" "MIME-Version: 1.0\n" ! "Content-Type: text/plain; charset=EUC-JP\n" ! "Content-Transfer-Encoding: 8-bit\n" ! #: expense.c:150 msgid "Expense" msgstr "支払メモ" ! #: expense.c:161 msgid "About Expense" msgstr "支払メモの情報" ! #: expense.c:182 expense.c:755 msgid "Airfare" msgstr "飛行機" ! #: expense.c:184 expense.c:756 msgid "Breakfast" msgstr "朝食" ! #: expense.c:186 expense.c:757 msgid "Bus" msgstr "バス" ! #: expense.c:188 expense.c:758 msgid "BusinessMeals" msgstr "会食" ! #: expense.c:190 expense.c:759 msgid "CarRental" msgstr "レンタカー" ! #: expense.c:192 expense.c:760 msgid "Dinner" msgstr "夕食" ! #: expense.c:194 expense.c:761 msgid "Entertainment" msgstr "接待" ! #: expense.c:196 expense.c:762 msgid "Fax" msgstr "ファックス" ! #: expense.c:198 expense.c:763 msgid "Gas" msgstr "ガソリン" ! #: expense.c:200 expense.c:764 msgid "Gifts" msgstr "ギフト" ! #: expense.c:202 expense.c:765 msgid "Hotel" msgstr "ホテル" ! #: expense.c:204 expense.c:766 msgid "Incidentals" msgstr "雑費" ! #: expense.c:206 expense.c:767 msgid "Laundry" msgstr "クリーニング" ! #: expense.c:208 expense.c:768 msgid "Limo" msgstr "ハイヤー" ! #: expense.c:210 expense.c:769 msgid "Lodging" msgstr "宿泊" ! #: expense.c:212 expense.c:770 msgid "Lunch" msgstr "昼食" ! #: expense.c:214 expense.c:771 msgid "Mileage" msgstr "走行距離" ! #: expense.c:216 expense.c:772 msgid "Other" msgstr "その他" ! #: expense.c:218 expense.c:773 msgid "Parking" msgstr "駐車" ! #: expense.c:220 expense.c:774 msgid "Postage" msgstr "郵送" ! #: expense.c:222 expense.c:775 msgid "Snack" msgstr "軽食" ! #: expense.c:224 expense.c:776 msgid "Subway" msgstr "地下鉄" ! #: expense.c:226 expense.c:777 msgid "Supplies" msgstr "生活用品" ! #: expense.c:228 expense.c:778 msgid "Taxi" msgstr "タクシー" ! #: expense.c:230 expense.c:779 msgid "Telephone" msgstr "電話" ! #: expense.c:232 expense.c:780 msgid "Tips" msgstr "チップ" ! #: expense.c:234 expense.c:781 msgid "Tolls" msgstr "高速道路" ! #: expense.c:236 expense.c:782 msgid "Train" msgstr "鉄道" ! #: expense.c:249 msgid "AmEx" msgstr "" ! #: expense.c:251 expense.c:745 msgid "Cash" msgstr "現金" ! #: expense.c:253 expense.c:746 msgid "Check" msgstr "小切手" ! #: expense.c:255 msgid "CreditCard" msgstr "クレジットカード" ! #: expense.c:257 msgid "MasterCard" msgstr "" ! #: expense.c:259 expense.c:749 msgid "Prepaid" msgstr "プリペイドカード" ! #: expense.c:261 expense.c:750 msgid "VISA" msgstr "" ! #: expense.c:263 expense.c:751 msgid "Unfiled" msgstr "その他" ! #: expense.c:744 msgid "American Express" msgstr "" ! #: expense.c:747 msgid "Credit Card" msgstr "クレジットカード" ! #: expense.c:748 msgid "Master Card" msgstr "" ! #: expense.c:786 ! msgid "Australia" ! msgstr "オーストラリア" ! ! #: expense.c:787 ! msgid "Austria" ! msgstr "オーストリア" ! ! #: expense.c:788 ! msgid "Belgium" ! msgstr "ベルギー" ! ! #: expense.c:789 ! msgid "Brazil" ! msgstr "ブラジル" ! ! #: expense.c:790 ! msgid "Canada" ! msgstr "カナダ" ! ! #: expense.c:791 ! msgid "Denmark" ! msgstr "デンマーク" ! ! #: expense.c:792 ! msgid "Finland" ! msgstr "フィンランド" ! ! #: expense.c:793 ! msgid "France" ! msgstr "フランス" ! ! #: expense.c:794 ! msgid "German" ! msgstr "ドイツ" ! ! #: expense.c:795 ! msgid "Hong Kong." ! msgstr "香港" ! ! #: expense.c:796 ! msgid "Iceland" ! msgstr "アイスランド" ! ! #: expense.c:797 ! msgid "Ireland" ! msgstr "アイルランド" ! ! #: expense.c:798 ! msgid "Italy" ! msgstr "イタリア" ! ! #: expense.c:799 ! msgid "Japan" ! msgstr "日本" ! ! #: expense.c:800 ! msgid "Luxembourg" ! msgstr "ルクセンブルグ" ! ! #: expense.c:801 ! msgid "Mexico" ! msgstr "メキシコ" ! ! #: expense.c:802 ! msgid "Holland" ! msgstr "オランダ" ! ! #: expense.c:803 ! msgid "New Zealand" ! msgstr "ニュージーランド" ! ! #: expense.c:804 ! msgid "Norway" ! msgstr "ノルウェー" ! ! #: expense.c:805 ! msgid "Spain" ! msgstr "スペイン" ! ! #: expense.c:806 ! msgid "Sweden" ! msgstr "スウェーデン" ! ! #: expense.c:807 ! msgid "Switzerland" ! msgstr "スイス" ! ! #: expense.c:808 ! msgid "U.K." ! msgstr "イギリス" ! ! #: expense.c:809 ! msgid "U.S.A." ! msgstr "アメリカ" ! ! #: expense.c:821 ! msgid "all" ! msgstr "すべて" ! ! #. Add buttons in left vbox ! #: expense.c:994 msgid "Delete" msgstr "削除" ! #: expense.c:1014 expense.c:1066 msgid "Category: " msgstr "カテゴリ: " ! #. Add record button ! #: expense.c:1046 msgid "Add It" msgstr "追加" ! #. Apply Changes button ! #: expense.c:1051 msgid "Apply Changes" msgstr "変更" ! #. Clear button ! #: expense.c:1056 msgid "Clear" msgstr "新規" ! #: expense.c:1075 msgid "Type: " msgstr "種類: " ! #: expense.c:1084 msgid "Payment: " msgstr "支払方法: " ! #: expense.c:1093 ! msgid "Currency: " ! msgstr "通貨: " ! ! #: expense.c:1107 msgid "Month:" msgstr "月:" ! #: expense.c:1121 msgid "Day:" msgstr "日:" ! #: expense.c:1135 msgid "Year:" msgstr "年:" ! #: expense.c:1152 msgid "Amount: " msgstr "総額: " ! #: expense.c:1161 msgid "Vendor: " msgstr "支払先: " ! #: expense.c:1170 msgid "City: " msgstr "場所: " ! #: expense.c:1176 msgid "Attendees" ! msgstr "同行者" ! #: expense.c:1190 msgid "Note" msgstr "コメント" diff -C 3 -r -P jpilot-0.98.1-bak/address_gui.c jpilot-0.98.1/address_gui.c *** jpilot-0.98.1-bak/address_gui.c Sat Feb 5 12:40:39 2000 --- jpilot-0.98.1/address_gui.c Wed Jul 5 20:13:33 2000 *************** *** 64,69 **** --- 64,72 ---- int clist_row_selected; extern GtkTooltips *glob_tooltips; + int je_labels = 3; + char *je_label[3]={"よみ(姓)","よみ(名)","よみ(会社名)"}; + void update_address_screen(); int address_clist_redraw(); *************** *** 153,163 **** void cb_new_address_done(GtkWidget *widget, gpointer data) { ! int i, found; struct Address a; MyAddress *ma; unsigned char attrib; unsigned int unique_id; gtk_widget_hide(vbox2_2); gtk_widget_show(vbox2_1); --- 156,167 ---- void cb_new_address_done(GtkWidget *widget, gpointer data) { ! int i, ii, found, charnum; struct Address a; MyAddress *ma; unsigned char attrib; unsigned int unique_id; + gchar *tmpstr, tmpstr2[2]; gtk_widget_hide(vbox2_2); gtk_widget_show(vbox2_1); *************** *** 184,191 **** found=0; a.showPhone=0; for (i=0; i2 && i<8 && !found) { if (a.entry[i][0]!='\0') { found=1; --- 188,205 ---- found=0; a.showPhone=0; for (i=0; i2 && i<8 && !found) { if (a.entry[i][0]!='\0') { found=1; *************** *** 225,231 **** int new_cat; /*Clear all the address entry texts */ ! for (i=0; iattrib & 0x0F], -1); gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, "\n", -1); ! for (i=0; ientry[i2]) { if (i2>2 && i2<8) { gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, address_app_info.phoneLabels[a->phoneLabel[i2-3]], -1); } else { ! gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, address_app_info.labels[i2], -1); } gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, ": ", -1); ! gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, a->entry[i2], -1); gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, "\n", -1); } } --- 364,408 ---- gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, address_app_info.category.name[ma->attrib & 0x0F], -1); gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, "\n", -1); ! for (i=0; ientry[i2]) { ! strcpy(tempstr, a->entry[i2]); ! for (charnum=0; tempstr[charnum] != '\0' ; charnum++) { ! if ( tempstr[charnum] == 1) { ! strncpy(tempstr, tempstr, charnum); ! tempstr[charnum] = '\0'; ! tempstr2 = tempstr; ! break; ! } ! } ! tempstr2 = tempstr; ! } ! else if (i2>=NUM_ADDRESS_ENTRIES && i2entry[i2-19]) { ! strcpy(tempstr, a->entry[i2-19]); ! tempstr2 = strchr(tempstr, 1); ! if (tempstr2) tempstr2++; ! } ! ! if ( (i2<19 && a->entry[i2]) || tempstr2) { if (i2>2 && i2<8) { gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, address_app_info.phoneLabels[a->phoneLabel[i2-3]], -1); + } else if (19<=i2 && i2<=21) { + gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, je_label[i2-19], -1); } else { ! gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, gettext(address_app_info.labels[i2]), -1); } gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, ": ", -1); ! if (i2<=2 || i2>=19) { ! gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, tempstr2, -1); ! } ! else { ! gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, a->entry[i2], -1); ! } gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, "\n", -1); } } *************** *** 386,398 **** gtk_option_menu_set_history(GTK_OPTION_MENU(address_cat_menu2), count); ! for (i=0; ientry[i]) { gtk_text_insert(GTK_TEXT(address_text[i]), NULL,NULL,NULL, a->entry[i], -1); } } for (i=0; i<5; i++) { if (GTK_IS_WIDGET(menu_item[i][a->phoneLabel[i]])) { --- 428,458 ---- gtk_option_menu_set_history(GTK_OPTION_MENU(address_cat_menu2), count); ! for (i=0; ientry[i]) { gtk_text_insert(GTK_TEXT(address_text[i]), NULL,NULL,NULL, a->entry[i], -1); } + else if (i<=2 && a->entry[i]) { + strcpy(tempstr, a->entry[i]); + for (charnum=0; tempstr[charnum] != '\0' ; charnum++) { + if (tempstr[charnum] == 1) { + strncpy(tempstr, tempstr, charnum); + tempstr[charnum] = '\0'; + break; + } + } + tempstr2 = tempstr; + gtk_text_insert(GTK_TEXT(address_text[i]), NULL,NULL,NULL, tempstr2, -1); + } + else if (i>=NUM_ADDRESS_ENTRIES && ientry[i-19]) { + tempstr2 = strchr(a->entry[i-19], 1); + if (tempstr2) tempstr2++; + gtk_text_insert(GTK_TEXT(address_text[i]), NULL,NULL,NULL, tempstr2, -1); + } } for (i=0; i<5; i++) { if (GTK_IS_WIDGET(menu_item[i][a->phoneLabel[i]])) { *************** *** 407,413 **** void update_address_screen() { int num_entries, entries_shown, i; ! int show1, show2, show3; gchar *empty_line[] = { "","","" }; GdkPixmap *pixmap_note; GdkBitmap *mask_note; --- 467,473 ---- void update_address_screen() { int num_entries, entries_shown, i; ! int show1, show2, show3, charnum, show[3], ii; gchar *empty_line[] = { "","","" }; GdkPixmap *pixmap_note; GdkBitmap *mask_note; *************** *** 415,421 **** GdkColormap *colormap; AddressList *temp_al; static AddressList *address_list=NULL; ! char str[50]; long modified, deleted; free_AddressList(&address_list); --- 475,481 ---- GdkColormap *colormap; AddressList *temp_al; static AddressList *address_list=NULL; ! char str[50], tempstr[3][128]; long modified, deleted; free_AddressList(&address_list); *************** *** 495,512 **** entries_shown++; str[0]='\0'; ! if (temp_al->ma.a.entry[show1] || temp_al->ma.a.entry[show2]) { if (temp_al->ma.a.entry[show1] && temp_al->ma.a.entry[show2]) { ! g_snprintf(str, 48, "%s, %s", temp_al->ma.a.entry[show1], temp_al->ma.a.entry[show2]); } if (temp_al->ma.a.entry[show1] && ! temp_al->ma.a.entry[show2]) { ! strncpy(str, temp_al->ma.a.entry[show1], 48); } if (! temp_al->ma.a.entry[show1] && temp_al->ma.a.entry[show2]) { ! strncpy(str, temp_al->ma.a.entry[show2], 48); } } else if (temp_al->ma.a.entry[show3]) { ! strncpy(str, temp_al->ma.a.entry[show3], 48); } else { strcpy(str, "-Unnamed-"); } --- 555,587 ---- entries_shown++; str[0]='\0'; ! show[0]=show1; show[1]=show2; show[2]=show3; ! ! for (ii=0; ii<=2; ii++) { ! if (temp_al->ma.a.entry[show[ii]]) { ! strcpy(tempstr[ii],temp_al->ma.a.entry[show[ii]]); ! for (charnum=0; tempstr[ii][charnum] != '\0' ; charnum++) { ! if ( tempstr[ii][charnum] == 1) { ! strncpy(tempstr[ii], tempstr[ii], charnum); ! tempstr[ii][charnum] = '\0'; ! break; ! } ! } ! } ! } ! ! if (temp_al->ma.a.entry[show1] || temp_al->ma.a.entry[show2]) { if (temp_al->ma.a.entry[show1] && temp_al->ma.a.entry[show2]) { ! g_snprintf(str, 48, "%s, %s", tempstr[0], tempstr[1]); } if (temp_al->ma.a.entry[show1] && ! temp_al->ma.a.entry[show2]) { ! strncpy(str, tempstr[0], 48); } if (! temp_al->ma.a.entry[show1] && temp_al->ma.a.entry[show2]) { ! strncpy(str, tempstr[1], 48); } } else if (temp_al->ma.a.entry[show3]) { ! strncpy(str, tempstr[2], 48); } else { strcpy(str, "-Unnamed-"); } *************** *** 758,764 **** /* This is needed because the text boxes aren't shown on the * screen in the same order as the array. I show them in the * same order that the palm does */ ! int page[22]={0,0,0,0,0,0,0,1,1,1,1,1,2,0,2,2,2,2,2,2,2,2 }; int i; --- 833,839 ---- /* This is needed because the text boxes aren't shown on the * screen in the same order as the array. I show them in the * same order that the palm does */ ! int page[22]={0,0,0,0,0,0,0,1,2,1,1,1,1,0,2,2,2,2,0,0,0,0 }; int i; *************** *** 810,817 **** int i, i1, i2; ! int order[22]={0,1,13,2,3,4,5,6,7,8,9,10,11,12,14,15,16,17,18,19,20,21 }; clist_row_selected=0; --- 885,893 ---- int i, i1, i2; ! int order[23]={19,0,20,1,13,21,2,3,4,5,6,7,12,11,10,9,8,14,15,16,17,18,19 }; + int ncol[4]={12,17,22,100}; clist_row_selected=0; *************** *** 1046,1055 **** gtk_box_pack_start(GTK_BOX(vbox_temp3), table3, TRUE, TRUE, 0); label = NULL; ! for (i=0; i2 && i2<8) { make_phone_menu(i2-3, (i2-3)<<4, i2-3); } else { label = gtk_label_new(address_app_info.labels[i2]); /*gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_LEFT); */ --- 1122,1134 ---- gtk_box_pack_start(GTK_BOX(vbox_temp3), table3, TRUE, TRUE, 0); label = NULL; ! for (i=0; i2 && i2<8) { make_phone_menu(i2-3, (i2-3)<<4, i2-3); + } else if (i2>=19 && i2<=21) { + label = gtk_label_new(je_label[i2-19]); + gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5); } else { label = gtk_label_new(address_app_info.labels[i2]); /*gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_LEFT); */ *************** *** 1062,1068 **** gtk_widget_set_usize(GTK_WIDGET(address_text[i2]), 0, 25); /*gtk_box_pack_start(GTK_BOX(hbox_temp), address_text[i2], TRUE, TRUE, 0); */ /*hbox_temp = gtk_hbox_new(FALSE, 0); */ ! if (i<9) { if (i2>2 && i2<8) { gtk_table_attach_defaults(GTK_TABLE(table1), GTK_WIDGET(phone_list_menu[i2-3]), 0, 1, i, i+1); --- 1141,1147 ---- gtk_widget_set_usize(GTK_WIDGET(address_text[i2]), 0, 25); /*gtk_box_pack_start(GTK_BOX(hbox_temp), address_text[i2], TRUE, TRUE, 0); */ /*hbox_temp = gtk_hbox_new(FALSE, 0); */ ! if (i2 && i2<8) { gtk_table_attach_defaults(GTK_TABLE(table1), GTK_WIDGET(phone_list_menu[i2-3]), 0, 1, i, i+1); *************** *** 1074,1091 **** 1, 2, i, i+1); /*gtk_box_pack_start(GTK_BOX(vbox_temp1), hbox_temp, TRUE, TRUE, 0); */ } ! if (i>8 && i<14) { gtk_table_attach_defaults(GTK_TABLE(table2), GTK_WIDGET(label), ! 0, 1, i-9, i-8); gtk_table_attach_defaults(GTK_TABLE(table2), GTK_WIDGET(address_text[i2]), ! 1, 2, i-9, i-8); /*gtk_box_pack_start(GTK_BOX(vbox_temp2), hbox_temp, TRUE, TRUE, 0); */ } ! if (i>13 && i<100) { gtk_table_attach_defaults(GTK_TABLE(table3), GTK_WIDGET(label), ! 0, 1, i-14, i-13); gtk_table_attach_defaults(GTK_TABLE(table3), GTK_WIDGET(address_text[i2]), ! 1, 2, i-14, i-13); /*gtk_box_pack_start(GTK_BOX(vbox_temp3), hbox_temp, TRUE, TRUE, 0); */ } /*gtk_widget_show(hbox_temp); */ --- 1153,1170 ---- 1, 2, i, i+1); /*gtk_box_pack_start(GTK_BOX(vbox_temp1), hbox_temp, TRUE, TRUE, 0); */ } ! if (i>=ncol[0] && i=ncol[1] && i + #include + #include + #include + #include + #include "utils.h" + #include "address.h" + #include "log.h" + #include "prefs.h" + #include "print.h" + + + /*#define SHADOW GTK_SHADOW_IN */ + /*#define SHADOW GTK_SHADOW_OUT */ + /*#define SHADOW GTK_SHADOW_ETCHED_IN */ + #define SHADOW GTK_SHADOW_ETCHED_OUT + + #define NUM_MENU_ITEM1 8 + #define NUM_MENU_ITEM2 8 + #define NUM_ADDRESS_CAT_ITEMS 16 + #define NUM_ADDRESS_ENTRIES 19 + + GtkWidget *clist; + GtkWidget *address_text[22]; + GtkWidget *vbox2_1, *vbox2_2; + GtkWidget *text; + GtkWidget *vscrollbar; + GtkWidget *phone_list_menu[5]; + GtkWidget *menu; + GtkWidget *menu_item[NUM_MENU_ITEM1][NUM_MENU_ITEM2]; + GtkWidget *address_cat_menu2; + /*We need an extra one for the ALL category */ + GtkWidget *address_cat_menu_item1[NUM_ADDRESS_CAT_ITEMS+1]; + GtkWidget *address_cat_menu_item2[NUM_ADDRESS_CAT_ITEMS]; + GtkWidget *category_menu1; + GtkWidget *scrolled_window; + GtkWidget *address_quickfind_entry; + GtkWidget *notebook; + GtkWidget *pane; + + struct AddressAppInfo address_app_info; + int address_category=CATEGORY_ALL; + int address_phone_label_selected[5]; + int clist_row_selected; + extern GtkTooltips *glob_tooltips; + + int je_labels = 3; + char *je_label[3]={"よみ(姓)","よみ(名)","よみ(会社名)"}; + + void update_address_screen(); + int address_clist_redraw(); + + static void init() + { + int i, j; + for (i=0; i0) { + clist_row_selected--; + } + } + } + + address_clist_redraw(); + } + + void cb_phone_menu(GtkWidget *item, unsigned int value) + { + if (!item) + return; + if ((GTK_CHECK_MENU_ITEM(item))->active) { + jpilot_logf(LOG_DEBUG, "phone_menu = %d\n", (value & 0xF0) >> 4); + jpilot_logf(LOG_DEBUG, "selection = %d\n", value & 0x0F); + address_phone_label_selected[(value & 0xF0) >> 4] = value & 0x0F; + } + } + + void cb_new_address_done(GtkWidget *widget, + gpointer data) + { + int i, ii, found, charnum; + struct Address a; + MyAddress *ma; + unsigned char attrib; + unsigned int unique_id; + gchar *tmpstr, tmpstr2[2]; + + gtk_widget_hide(vbox2_2); + gtk_widget_show(vbox2_1); + if (GPOINTER_TO_INT(data)==CANCEL_FLAG) { + /*Cancel button was hit */ + return; + } + + bzero(&a, sizeof(a)); + + if ((GPOINTER_TO_INT(data)==NEW_FLAG) || + (GPOINTER_TO_INT(data)==MODIFY_FLAG)) { + /*These rec_types are both the same for now */ + if (GPOINTER_TO_INT(data)==MODIFY_FLAG) { + ma = gtk_clist_get_row_data(GTK_CLIST(clist), clist_row_selected); + if (ma < (MyAddress *)CLIST_MIN_DATA) { + return; + } + if ((ma->rt==DELETED_PALM_REC) || (ma->rt==MODIFIED_PALM_REC)) { + jpilot_logf(LOG_INFO, "You can't modify a record that is deleted\n"); + return; + } + } + found=0; + a.showPhone=0; + for (i=0; i2 && i<8 && !found) { + if (a.entry[i][0]!='\0') { + found=1; + a.showPhone=i-3; + } + } + } + for (i=0; i<5; i++) { + a.phoneLabel[i]=address_phone_label_selected[i]; + } + + /*Get the category that is set from the menu */ + attrib = 0; + for (i=0; iactive) { + attrib = i; + break; + } + } + } + + pc_address_write(&a, NEW_PC_REC, attrib, &unique_id); + free_Address(&a); + if (GPOINTER_TO_INT(data) == MODIFY_FLAG) { + cb_delete_address(NULL, data); + } else { + /* glob_find_id = unique_id; */ + address_clist_redraw(); + } + } + } + + void clear_address_entries() + { + int i; + int new_cat; + + /*Clear all the address entry texts */ + for (i=0; iactive) { + address_category = selection; + jpilot_logf(LOG_DEBUG, "address_category = %d\n",address_category); + update_address_screen(); + } + } + + + void cb_address_clist_sel(GtkWidget *clist, + gint row, + gint column, + GdkEventButton *event, + gpointer data) + { + /*The rename-able phone entries are indexes 3,4,5,6,7 */ + struct Address *a; + MyAddress *ma; + int index, count; + int i, i2, charnum, ichar; + /*This is because the palm doesn\'t show the address entries in order */ + int order[22]={19,0,20,1,13,21,2,3,4,5,6,7,12,11,10,9,8,14,15,16,17,18 + }; + char *clist_text, *entry_text; + gchar tempstr[128], *tempstr2; + + clist_row_selected=row; + + /*text = data; */ + ma = gtk_clist_get_row_data(GTK_CLIST(clist), row); + if (ma==NULL) { + return; + } + a=&(ma->a); + clist_text = NULL; + gtk_clist_get_text(GTK_CLIST(clist), row, 0, &clist_text); + entry_text = gtk_entry_get_text(GTK_ENTRY(address_quickfind_entry)); + if (strncasecmp(clist_text, entry_text, strlen(entry_text))) { + gtk_entry_set_text(GTK_ENTRY(address_quickfind_entry), ""); + } + + gtk_text_freeze(GTK_TEXT(text)); + + gtk_text_set_point(GTK_TEXT(text), 0); + gtk_text_forward_delete(GTK_TEXT(text), + gtk_text_get_length(GTK_TEXT(text))); + + gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, _("Category: "), -1); + gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, + address_app_info.category.name[ma->attrib & 0x0F], -1); + gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, "\n", -1); + for (i=0; ientry[i2]) { + strcpy(tempstr, a->entry[i2]); + for (charnum=0; tempstr[charnum] != '\0' ; charnum++) { + if ( tempstr[charnum] == 1) { + strncpy(tempstr, tempstr, charnum); + tempstr[charnum] = '\0'; + tempstr2 = tempstr; + break; + } + } + tempstr2 = tempstr; + } + else if (i2>=NUM_ADDRESS_ENTRIES && i2entry[i2-19]) { + strcpy(tempstr, a->entry[i2-19]); + tempstr2 = strchr(tempstr, 1); + if (tempstr2) tempstr2++; + } + + if ( (i2<19 && a->entry[i2]) || tempstr2) { + if (i2>2 && i2<8) { + gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, + address_app_info.phoneLabels[a->phoneLabel[i2-3]], + -1); + } else if (19<=i2 && i2<=21) { + gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, je_label[i2-19], -1); + } else { + gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, gettext(address_app_info.labels[i2]), -1); + } + gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, ": ", -1); + if (i2<=2 || i2>=19) { + gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, tempstr2, -1); + } + else { + gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, a->entry[i2], -1); + } + gtk_text_insert(GTK_TEXT(text), NULL,NULL,NULL, "\n", -1); + } + } + gtk_text_thaw(GTK_TEXT(text)); + + index = ma->attrib & 0x0F; + if (address_cat_menu_item2[index]==NULL) { + /* Illegal category */ + jpilot_logf(LOG_DEBUG, "Category is not legal\n"); + index = count = 0; + } else { + /* We need to count how many items down in the list this is */ + for (i=index, count=0; i>=0; i--) { + if (address_cat_menu_item2[i]) { + count++; + } + } + count--; + } + + gtk_check_menu_item_set_active + (GTK_CHECK_MENU_ITEM(address_cat_menu_item2[index]), TRUE); + gtk_option_menu_set_history(GTK_OPTION_MENU(address_cat_menu2), count); + + + for (i=0; ientry[i]) { + gtk_text_insert(GTK_TEXT(address_text[i]), NULL,NULL,NULL, a->entry[i], -1); + } + else if (i<=2 && a->entry[i]) { + strcpy(tempstr, a->entry[i]); + for (charnum=0; tempstr[charnum] != '\0' ; charnum++) { + if (tempstr[charnum] == 1) { + strncpy(tempstr, tempstr, charnum); + tempstr[charnum] = '\0'; + break; + } + } + tempstr2 = tempstr; + gtk_text_insert(GTK_TEXT(address_text[i]), NULL,NULL,NULL, tempstr2, -1); + } + else if (i>=NUM_ADDRESS_ENTRIES && ientry[i-19]) { + tempstr2 = strchr(a->entry[i-19], 1); + if (tempstr2) tempstr2++; + gtk_text_insert(GTK_TEXT(address_text[i]), NULL,NULL,NULL, tempstr2, -1); + } + } + for (i=0; i<5; i++) { + if (GTK_IS_WIDGET(menu_item[i][a->phoneLabel[i]])) { + gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM + (menu_item[i][a->phoneLabel[i]]), TRUE); + gtk_option_menu_set_history(GTK_OPTION_MENU(phone_list_menu[i]), + a->phoneLabel[i]); + } + } + } + + void update_address_screen() + { + int num_entries, entries_shown, i; + int show1, show2, show3, charnum, show[3], ii; + gchar *empty_line[] = { "","","" }; + GdkPixmap *pixmap_note; + GdkBitmap *mask_note; + GdkColor color; + GdkColormap *colormap; + AddressList *temp_al; + static AddressList *address_list=NULL; + char str[50], tempstr[3][128]; + long modified, deleted; + + free_AddressList(&address_list); + + #ifdef JPILOT_DEBUG + for (i=0;inext, i++) { + if (temp_al->ma.rt == MODIFIED_PALM_REC) { + if (!modified) { + num_entries--; + i--; + continue; + } + } + if (temp_al->ma.rt == DELETED_PALM_REC) { + if (!deleted) { + num_entries--; + i--; + continue; + } + } + if ( ((temp_al->ma.attrib & 0x0F) != address_category) && + address_category != CATEGORY_ALL) { + continue; + } + + entries_shown++; + str[0]='\0'; + show[0]=show1; show[1]=show2; show[2]=show3; + + for (ii=0; ii<=2; ii++) { + if (temp_al->ma.a.entry[show[ii]]) { + strcpy(tempstr[ii],temp_al->ma.a.entry[show[ii]]); + for (charnum=0; tempstr[ii][charnum] != '\0' ; charnum++) { + if ( tempstr[ii][charnum] == 1) { + strncpy(tempstr[ii], tempstr[ii], charnum); + tempstr[ii][charnum] = '\0'; + break; + } + } + } + } + + if (temp_al->ma.a.entry[show1] || temp_al->ma.a.entry[show2]) { + if (temp_al->ma.a.entry[show1] && temp_al->ma.a.entry[show2]) { + g_snprintf(str, 48, "%s, %s", tempstr[0], tempstr[1]); + } + if (temp_al->ma.a.entry[show1] && ! temp_al->ma.a.entry[show2]) { + strncpy(str, tempstr[0], 48); + } + if (! temp_al->ma.a.entry[show1] && temp_al->ma.a.entry[show2]) { + strncpy(str, tempstr[1], 48); + } + } else if (temp_al->ma.a.entry[show3]) { + strncpy(str, tempstr[2], 48); + } else { + strcpy(str, "-Unnamed-"); + } + gtk_clist_prepend(GTK_CLIST(clist), empty_line); + gtk_clist_set_text(GTK_CLIST(clist), 0, 0, str); + gtk_clist_set_text(GTK_CLIST(clist), 0, 1, temp_al->ma.a.entry[temp_al->ma.a.showPhone+3]); + gtk_clist_set_row_data(GTK_CLIST(clist), 0, &(temp_al->ma)); + + if (temp_al->ma.rt == NEW_PC_REC) { + colormap = gtk_widget_get_colormap(clist); + color.red=CLIST_NEW_RED; + color.green=CLIST_NEW_GREEN; + color.blue=CLIST_NEW_BLUE; + gdk_color_alloc(colormap, &color); + gtk_clist_set_background(GTK_CLIST(clist), 0, &color); + } + if (temp_al->ma.rt == DELETED_PALM_REC) { + colormap = gtk_widget_get_colormap(clist); + color.red=CLIST_DEL_RED; + color.green=CLIST_DEL_GREEN; + color.blue=CLIST_DEL_BLUE; + gdk_color_alloc(colormap, &color); + gtk_clist_set_background(GTK_CLIST(clist), 0, &color); + } + if (temp_al->ma.rt == MODIFIED_PALM_REC) { + colormap = gtk_widget_get_colormap(clist); + color.red=CLIST_MOD_RED; + color.green=CLIST_MOD_GREEN; + color.blue=CLIST_MOD_BLUE; + gdk_color_alloc(colormap, &color); + gtk_clist_set_background(GTK_CLIST(clist), 0, &color); + } + + if (temp_al->ma.a.entry[18]) { + /*Put a note pixmap up */ + get_pixmaps(clist, PIXMAP_NOTE, &pixmap_note, &mask_note); + gtk_clist_set_pixmap(GTK_CLIST(clist), 0, 2, pixmap_note, mask_note); + } + } + /*gtk_clist_append(GTK_CLIST(clist), empty_line); */ + /*gtk_clist_set_text(GTK_CLIST(clist), entries_shown, 0, "New"); */ + /*gtk_clist_set_text(GTK_CLIST(clist), entries_shown, 1, "Select to add an entry"); */ + + /* If there is an item in the list, select the first one */ + if (entries_shown>0) { + gtk_clist_select_row(GTK_CLIST(clist), 0, 1); + } + + gtk_clist_thaw(GTK_CLIST(clist)); + + sprintf(str, _("%d of %d records"), entries_shown, num_entries); + gtk_tooltips_set_tip(glob_tooltips, category_menu1, str, NULL); + } + + /*default set is which menu item is to be set on by default */ + /*set is which set in the menu_item array to use */ + static int make_phone_menu(int default_set, unsigned int callback_id, int set) + { + int i; + GSList *group; + + phone_list_menu[set] = gtk_option_menu_new(); + + menu = gtk_menu_new(); + group = NULL; + + for (i=0; i<8; i++) { + if (address_app_info.phoneLabels[i][0]) { + menu_item[set][i] = gtk_radio_menu_item_new_with_label( + group, address_app_info.phoneLabels[i]); + gtk_signal_connect(GTK_OBJECT(menu_item[set][i]), "activate", + cb_phone_menu, GINT_TO_POINTER(callback_id + i)); + group = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(menu_item[set][i])); + gtk_menu_append(GTK_MENU(menu), menu_item[set][i]); + gtk_widget_show(menu_item[set][i]); + } + } + /*Set this one to active */ + if (GTK_IS_WIDGET(menu_item[set][default_set])) { + gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM( + menu_item[set][default_set]), TRUE); + } + + gtk_option_menu_set_menu(GTK_OPTION_MENU(phone_list_menu[set]), menu); + /*Make this one show up by default */ + gtk_option_menu_set_history(GTK_OPTION_MENU(phone_list_menu[set]), + default_set); + + gtk_widget_show(phone_list_menu[set]); + + return 0; + } + + /*todo - I should combine these next 2 functions into 1 */ + static int make_category_menu1(GtkWidget **category_menu) + { + GtkWidget *menu; + GSList *group; + int i; + + *category_menu = gtk_option_menu_new(); + + menu = gtk_menu_new(); + group = NULL; + + address_cat_menu_item1[0] = gtk_radio_menu_item_new_with_label(group, _("All")); + gtk_signal_connect(GTK_OBJECT(address_cat_menu_item1[0]), "activate", + cb_address_category, GINT_TO_POINTER(CATEGORY_ALL)); + group = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(address_cat_menu_item1[0])); + gtk_menu_append(GTK_MENU(menu), address_cat_menu_item1[0]); + gtk_widget_show(address_cat_menu_item1[0]); + for (i=0; ivscrollbar); + upper = GTK_ADJUSTMENT(sb->range.adjustment)->upper; + lower = GTK_ADJUSTMENT(sb->range.adjustment)->lower; + value = GTK_ADJUSTMENT(sb->range.adjustment)->value; + step = GTK_ADJUSTMENT(sb->range.adjustment)->step_increment; + if (upper - lower + step) { + percentage = value/(upper - lower + step); + } else { + percentage = 0; + } + + update_address_screen(); + + address_goto_line(line_num, percentage); + + return 0; + } + + int address_refresh() + { + int index; + + if (glob_find_id) { + address_category = CATEGORY_ALL; + } + if (address_category==CATEGORY_ALL) { + index=0; + } else { + index=address_category+1; + } + update_address_screen(); + gtk_option_menu_set_history(GTK_OPTION_MENU(category_menu1), index); + gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM( + address_cat_menu_item1[index]), TRUE); + address_find(); + return 0; + } + + static gboolean + cb_key_pressed(GtkWidget *widget, GdkEventKey *event, + gpointer next_widget) + { + /* This is needed because the text boxes aren't shown on the + * screen in the same order as the array. I show them in the + * same order that the palm does */ + int page[22]={0,0,0,0,0,0,0,1,2,1,1,1,1,0,2,2,2,2,0,0,0,0 + }; + int i; + + if (event->keyval == GDK_Tab) { + /* See if they are at the end of the text */ + if (gtk_text_get_point(GTK_TEXT(widget)) == + gtk_text_get_length(GTK_TEXT(widget))) { + gtk_signal_emit_stop_by_name(GTK_OBJECT(widget), "key_press_event"); + gtk_widget_grab_focus(GTK_WIDGET(next_widget)); + /* Change the notebook page */ + for (i=0; i<22; i++) { + if (address_text[i] == widget) { + gtk_notebook_set_page(GTK_NOTEBOOK(notebook), page[i]); + break; + } + } + return TRUE; + } + } + return FALSE; + } + + int address_gui_cleanup() + { + set_pref(PREF_ADDRESS_PANE, GTK_PANED(pane)->handle_xpos); + return 0; + } + + /* */ + /*Main function */ + /* */ + int address_gui(GtkWidget *vbox, GtkWidget *hbox) + { + extern GtkWidget *glob_date_label; + extern int glob_date_timer_tag; + GtkWidget *vbox1, *hbox_temp; + GtkWidget *vbox_temp1, *vbox_temp2, *vbox_temp3; + GtkWidget *vbox2_1_sub1; + GtkWidget *separator; + GtkWidget *label; + GtkWidget *button; + GtkWidget *frame; + /* GtkWidget *clist; */ + GtkWidget *table1, *table2, *table3; + /* GtkWidget *calendar; */ + GtkWidget *notebook_tab; + long ivalue; + const char *svalue; + + + int i, i1, i2; + int order[23]={19,0,20,1,13,21,2,3,4,5,6,7,12,11,10,9,8,14,15,16,17,18,19 + }; + int ncol[4]={12,17,22,100}; + + clist_row_selected=0; + + init(); + + get_address_app_info(&address_app_info); + + if (address_app_info.category.name[address_category][0]=='\0') { + address_category=CATEGORY_ALL; + } + + pane = gtk_hpaned_new(); + get_pref(PREF_ADDRESS_PANE, &ivalue, &svalue); + gtk_paned_set_position(GTK_PANED(pane), ivalue + 2); + + gtk_box_pack_start(GTK_BOX(hbox), pane, TRUE, TRUE, 5); + + vbox1 = gtk_vbox_new(FALSE, 0); + vbox2_1 = gtk_vbox_new(FALSE, 0); + vbox2_2 = gtk_vbox_new(FALSE, 0); + hbox_temp = gtk_hbox_new(FALSE, 0); + gtk_box_pack_start(GTK_BOX(hbox_temp), vbox2_1, TRUE, TRUE, 5); + gtk_box_pack_start(GTK_BOX(hbox_temp), vbox2_2, TRUE, TRUE, 5); + gtk_paned_pack1(GTK_PANED(pane), vbox1, TRUE, FALSE); + gtk_paned_pack2(GTK_PANED(pane), hbox_temp, TRUE, FALSE); + gtk_widget_show(GTK_WIDGET(pane)); + gtk_widget_show(GTK_WIDGET(hbox_temp)); + /*gtk_box_pack_start(GTK_BOX(hbox), vbox1, TRUE, TRUE, 5);*/ + /*gtk_box_pack_start(GTK_BOX(hbox), vbox2_1, TRUE, TRUE, 5);*/ + /*gtk_box_pack_start(GTK_BOX(hbox), vbox2_2, TRUE, TRUE, 5);*/ + + /*Add buttons in left vbox */ + button = gtk_button_new_with_label(_("Delete")); + gtk_signal_connect(GTK_OBJECT(button), "clicked", + GTK_SIGNAL_FUNC(cb_delete_address), + GINT_TO_POINTER(DELETE_FLAG)); + gtk_box_pack_start(GTK_BOX(vbox), button, TRUE, TRUE, 0); + gtk_widget_show(button); + + /* gtk_widget_set_usize(GTK_WIDGET(vbox1), 210, 0); */ + /* gtk_widget_set_usize(GTK_WIDGET(vbox1), 10, 10); */ + /*Separator */ + separator = gtk_hseparator_new(); + gtk_box_pack_start(GTK_BOX(vbox1), separator, FALSE, FALSE, 5); + gtk_widget_show(separator); + + /*Make the Today is: label */ + glob_date_label = gtk_label_new(" "); + gtk_box_pack_start(GTK_BOX(vbox1), glob_date_label, FALSE, FALSE, 0); + gtk_widget_show(glob_date_label); + timeout_date(NULL); + glob_date_timer_tag = gtk_timeout_add(CLOCK_TICK, timeout_date, NULL); + + /*Separator */ + separator = gtk_hseparator_new(); + gtk_box_pack_start(GTK_BOX(vbox1), separator, FALSE, FALSE, 5); + gtk_widget_show(separator); + + /*Put the category menu up */ + make_category_menu1(&category_menu1); + gtk_box_pack_start(GTK_BOX(vbox1), category_menu1, FALSE, FALSE, 0); + gtk_widget_show(category_menu1); + + /*Put the address list window up */ + scrolled_window = gtk_scrolled_window_new(NULL, NULL); + /*gtk_widget_set_usize(GTK_WIDGET(scrolled_window), 150, 0); */ + gtk_container_set_border_width(GTK_CONTAINER(scrolled_window), 0); + gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled_window), + GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); + gtk_box_pack_start(GTK_BOX(vbox1), scrolled_window, TRUE, TRUE, 0); + gtk_widget_show(scrolled_window); + + clist = gtk_clist_new(3); + gtk_signal_connect(GTK_OBJECT(clist), "select_row", + GTK_SIGNAL_FUNC(cb_address_clist_sel), + text); + gtk_clist_set_shadow_type(GTK_CLIST(clist), SHADOW); + gtk_clist_set_selection_mode(GTK_CLIST(clist), GTK_SELECTION_BROWSE); + gtk_clist_set_column_width(GTK_CLIST(clist), 0, 140); + gtk_clist_set_column_width(GTK_CLIST(clist), 1, 140); + gtk_clist_set_column_width(GTK_CLIST(clist), 2, 11); + /* gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW */ + /* (scrolled_window), clist); */ + gtk_container_add(GTK_CONTAINER(scrolled_window), GTK_WIDGET(clist)); + /*gtk_viewport_set_shadow_type(GTK_VIEWPORT(scrolled_window), GTK_SHADOW_NONE); */ + /*gtk_clist_set_sort_column (GTK_CLIST(clist1), 0); */ + /*gtk_clist_set_auto_sort(GTK_CLIST(clist1), TRUE); */ + /* */ + /*gtk_clist_set_column_justification(GTK_CLIST(clist), 1, GTK_JUSTIFY_RIGHT); */ + + hbox_temp = gtk_hbox_new(FALSE, 0); + gtk_box_pack_start(GTK_BOX(vbox1), hbox_temp, FALSE, FALSE, 0); + gtk_widget_show(hbox_temp); + + label = gtk_label_new(_("Quick Find")); + gtk_box_pack_start(GTK_BOX(hbox_temp), label, FALSE, FALSE, 0); + gtk_widget_show(label); + + address_quickfind_entry = gtk_entry_new(); + gtk_signal_connect(GTK_OBJECT(address_quickfind_entry), "changed", + GTK_SIGNAL_FUNC(cb_address_quickfind), + NULL); + gtk_box_pack_start(GTK_BOX(hbox_temp), address_quickfind_entry, TRUE, TRUE, 0); + gtk_widget_show(address_quickfind_entry); + + /*calendar = gtk_calendar_new(); */ + /*gtk_box_pack_start(GTK_BOX(vbox2), calendar, TRUE, TRUE, 0); */ + /*gtk_widget_show(calendar); */ + + /*gtk_box_pack_start (GTK_BOX (vbox_detail), hbox_text1, TRUE, TRUE, 0); */ + + /*The Frame on the right side */ + frame = gtk_frame_new(_("Quick View")); + gtk_frame_set_label_align(GTK_FRAME(frame), 0.5, 0.0); + gtk_box_pack_start(GTK_BOX(vbox2_1), frame, TRUE, TRUE, 0); + vbox2_1_sub1 = gtk_vbox_new(FALSE, 0); + gtk_container_set_border_width(GTK_CONTAINER(vbox2_1_sub1), 5); + gtk_container_add(GTK_CONTAINER(frame), vbox2_1_sub1); + gtk_widget_show(frame); + gtk_widget_show(vbox2_1_sub1); + + + /*The Right hand side of the screen */ + button = gtk_button_new_with_label(_("Add or Modify a Record")); + gtk_signal_connect(GTK_OBJECT(button), "clicked", + GTK_SIGNAL_FUNC(cb_new_address_mode), NULL); + gtk_box_pack_start(GTK_BOX(vbox2_1_sub1), button, FALSE, FALSE, 0); + gtk_widget_show(button); + + /*Separator */ + separator = gtk_hseparator_new(); + gtk_box_pack_start(GTK_BOX(vbox2_1_sub1), separator, FALSE, FALSE, 5); + gtk_widget_show(separator); + + + /*The text box on the right side */ + hbox_temp = gtk_hbox_new (FALSE, 0); + gtk_box_pack_start(GTK_BOX(vbox2_1_sub1), hbox_temp, TRUE, TRUE, 0); + + text = gtk_text_new(NULL, NULL); + gtk_text_set_editable(GTK_TEXT(text), FALSE); + gtk_text_set_word_wrap(GTK_TEXT(text), TRUE); + vscrollbar = gtk_vscrollbar_new(GTK_TEXT(text)->vadj); + gtk_box_pack_start(GTK_BOX(hbox_temp), text, TRUE, TRUE, 0); + gtk_box_pack_start(GTK_BOX(hbox_temp), vscrollbar, FALSE, FALSE, 0); + /*gtk_widget_set_usize(GTK_WIDGET(text), 100, 50); */ + gtk_widget_show(text); + gtk_widget_show(vscrollbar); + gtk_widget_show(hbox_temp); + + + /*The new entry gui */ + hbox_temp = gtk_hbox_new(FALSE, 0); + gtk_box_pack_start(GTK_BOX(vbox2_2), hbox_temp, FALSE, FALSE, 0); + gtk_widget_show(hbox_temp); + + button = gtk_button_new_with_label(_("Add It")); + gtk_signal_connect(GTK_OBJECT(button), "clicked", + GTK_SIGNAL_FUNC(cb_new_address_done), + GINT_TO_POINTER(NEW_FLAG)); + gtk_box_pack_start(GTK_BOX(hbox_temp), button, TRUE, TRUE, 0); + gtk_widget_show(button); + + button = gtk_button_new_with_label(_("Apply Changes")); + gtk_signal_connect(GTK_OBJECT(button), "clicked", + GTK_SIGNAL_FUNC(cb_new_address_done), + GINT_TO_POINTER(MODIFY_FLAG)); + gtk_box_pack_start(GTK_BOX(hbox_temp), button, TRUE, TRUE, 0); + gtk_widget_show(button); + + button = gtk_button_new_with_label(_("Cancel")); + gtk_signal_connect(GTK_OBJECT(button), "clicked", + GTK_SIGNAL_FUNC(cb_new_address_done), + GINT_TO_POINTER(CANCEL_FLAG)); + gtk_box_pack_end(GTK_BOX(hbox_temp), button, TRUE, TRUE, 0); + gtk_widget_show(button); + + + button = gtk_button_new_with_label(_("New")); + gtk_signal_connect(GTK_OBJECT(button), "clicked", + GTK_SIGNAL_FUNC(cb_address_clear), NULL); + gtk_box_pack_end(GTK_BOX(hbox_temp), button, TRUE, TRUE, 0); + gtk_widget_show(button); + + + /*Separator */ + separator = gtk_hseparator_new(); + gtk_box_pack_start(GTK_BOX(vbox2_2), separator, FALSE, FALSE, 5); + gtk_widget_show(separator); + + + /*Add the new category menu */ + make_category_menu2(); + gtk_box_pack_start(GTK_BOX(vbox2_2), address_cat_menu2, FALSE, FALSE, 0); + gtk_widget_show(address_cat_menu2); + + + /*Add the notebook for new entries */ + notebook = gtk_notebook_new(); + gtk_notebook_set_tab_pos(GTK_NOTEBOOK(notebook), GTK_POS_TOP); + gtk_box_pack_start(GTK_BOX(vbox2_2), notebook, TRUE, TRUE, 0); + gtk_widget_show(notebook); + + /*Page 1 */ + notebook_tab = gtk_label_new(_("Name")); + vbox_temp1 = gtk_vbox_new(FALSE, 0); + gtk_notebook_append_page(GTK_NOTEBOOK(notebook), vbox_temp1, notebook_tab); + gtk_widget_show(vbox_temp1); + gtk_widget_show(notebook_tab); + + /*Page 2 */ + notebook_tab = gtk_label_new(_("Address")); + vbox_temp2 = gtk_vbox_new(FALSE, 0); + gtk_notebook_append_page(GTK_NOTEBOOK(notebook), vbox_temp2, notebook_tab); + gtk_widget_show(vbox_temp2); + gtk_widget_show(notebook_tab); + + + /*Page 3 */ + notebook_tab = gtk_label_new(_("Other")); + vbox_temp3 = gtk_vbox_new(FALSE, 0); + gtk_notebook_append_page(GTK_NOTEBOOK(notebook), vbox_temp3, notebook_tab); + gtk_widget_show(vbox_temp3); + gtk_widget_show(notebook_tab); + + /*Put a table on every page */ + table1 = gtk_table_new(9, 2, FALSE); + gtk_box_pack_start(GTK_BOX(vbox_temp1), table1, TRUE, TRUE, 0); + table2 = gtk_table_new(9, 2, FALSE); + gtk_box_pack_start(GTK_BOX(vbox_temp2), table2, TRUE, TRUE, 0); + table3 = gtk_table_new(9, 2, FALSE); + gtk_box_pack_start(GTK_BOX(vbox_temp3), table3, TRUE, TRUE, 0); + + label = NULL; + for (i=0; i2 && i2<8) { + make_phone_menu(i2-3, (i2-3)<<4, i2-3); + } else if (i2>=19 && i2<=21) { + label = gtk_label_new(je_label[i2-19]); + gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5); + } else { + label = gtk_label_new(address_app_info.labels[i2]); + /*gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_LEFT); */ + gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5); + } + address_text[i2] = gtk_text_new(NULL, NULL); + + gtk_text_set_editable(GTK_TEXT(address_text[i2]), TRUE); + gtk_text_set_word_wrap(GTK_TEXT(address_text[i2]), TRUE); + gtk_widget_set_usize(GTK_WIDGET(address_text[i2]), 0, 25); + /*gtk_box_pack_start(GTK_BOX(hbox_temp), address_text[i2], TRUE, TRUE, 0); */ + /*hbox_temp = gtk_hbox_new(FALSE, 0); */ + if (i2 && i2<8) { + gtk_table_attach_defaults(GTK_TABLE(table1), GTK_WIDGET(phone_list_menu[i2-3]), + 0, 1, i, i+1); + } else { + gtk_table_attach_defaults(GTK_TABLE(table1), GTK_WIDGET(label), + 0, 1, i, i+1); + } + gtk_table_attach_defaults(GTK_TABLE(table1), GTK_WIDGET(address_text[i2]), + 1, 2, i, i+1); + /*gtk_box_pack_start(GTK_BOX(vbox_temp1), hbox_temp, TRUE, TRUE, 0); */ + } + if (i>=ncol[0] && i=ncol[1] && i\n" "Language-Team: LANGUAGE \n" --- 6,12 ---- msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" ! "POT-Creation-Date: 2000-06-30 13:42+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" *************** *** 19,25 **** msgstr "" #: address.c:188 address.c:209 address.c:290 address.c:318 address.c:408 ! #: address.c:432 datebook.c:598 datebook.c:626 datebook.c:852 memo.c:138 #: memo.c:158 memo.c:202 memo.c:231 memo.c:309 memo.c:333 memo.c:415 #: todo.c:232 todo.c:251 todo.c:335 todo.c:363 todo.c:443 todo.c:467 #: todo.c:546 --- 19,25 ---- msgstr "" #: address.c:188 address.c:209 address.c:290 address.c:318 address.c:408 ! #: address.c:432 datebook.c:602 datebook.c:630 datebook.c:856 memo.c:138 #: memo.c:158 memo.c:202 memo.c:231 memo.c:309 memo.c:333 memo.c:415 #: todo.c:232 todo.c:251 todo.c:335 todo.c:363 todo.c:443 todo.c:467 #: todo.c:546 *************** *** 32,38 **** msgstr "" #: address.c:240 address.c:284 address.c:400 address.c:557 datebook.c:279 ! #: datebook.c:592 datebook.c:845 datebook.c:1004 memo.c:103 memo.c:196 #: memo.c:302 todo.c:283 todo.c:328 todo.c:436 #, c-format msgid "Error opening %s\n" --- 32,38 ---- msgstr "" #: address.c:240 address.c:284 address.c:400 address.c:557 datebook.c:279 ! #: datebook.c:596 datebook.c:849 datebook.c:1008 memo.c:103 memo.c:196 #: memo.c:302 todo.c:283 todo.c:328 todo.c:436 #, c-format msgid "Error opening %s\n" *************** *** 59,393 **** msgid "Out of memory 4\n" msgstr "" ! #: address_gui.c:348 msgid "Category: " ! msgstr "" ! #: address_gui.c:449 memo_gui.c:315 todo_gui.c:472 msgid "0 records" msgstr "" ! #: address_gui.c:560 memo_gui.c:424 todo_gui.c:583 #, c-format msgid "%d of %d records" ! msgstr "" ! #: address_gui.c:615 datebook_gui.c:315 memo_gui.c:440 todo_gui.c:600 msgid "All" ! msgstr "" ! #: address_gui.c:847 datebook_gui.c:2108 memo_gui.c:620 todo_gui.c:811 msgid "Delete" msgstr "削除" ! #: address_gui.c:909 msgid "Quick Find" msgstr "簡易検索" ! #: address_gui.c:927 msgid "Quick View" msgstr "内容" ! #: address_gui.c:938 msgid "Add or Modify a Record" msgstr "レコードの追加/変更" ! #: address_gui.c:971 datebook_gui.c:2335 memo_gui.c:687 todo_gui.c:884 msgid "Add It" msgstr "追加" ! #: address_gui.c:978 datebook_gui.c:2342 memo_gui.c:694 todo_gui.c:890 msgid "Apply Changes" msgstr "変更" ! #: address_gui.c:985 print_gui.c:220 msgid "Cancel" ! msgstr "" ! #: address_gui.c:993 datebook_gui.c:2349 memo_gui.c:701 todo_gui.c:896 msgid "New" msgstr "新規" ! #: address_gui.c:1019 msgid "Name" ! msgstr "" ! #: address_gui.c:1026 msgid "Address" ! msgstr "/表示/アドレス帳" ! #: address_gui.c:1034 msgid "Other" ! msgstr "" #: datebook.c:193 datebook.c:212 datebook.c:243 #, c-format msgid "Error on reading %s\n" msgstr "" ! #: datebook.c:206 datebook.c:321 datebook.c:328 datebook.c:358 datebook.c:947 ! #: datebook.c:1024 memo.c:151 memo.c:222 memo.c:356 memo.c:409 memo.c:438 ! #: memo.c:472 sync.c:1385 todo.c:245 todo.c:354 todo.c:490 todo.c:574 #: todo.c:615 msgid "Out of memory\n" msgstr "" ! #: datebook.c:982 msgid "Out of memory" msgstr "" ! #: datebook_gui.c:309 install_gui.c:281 prefs_gui.c:386 search_gui.c:634 msgid "Done" msgstr "完了" ! #: datebook_gui.c:321 datebook_gui.c:2712 msgid "None" msgstr "なし" ! #: datebook_gui.c:457 monthview_gui.c:239 monthview_gui.c:246 ! #: weekview_gui.c:111 msgid "Sunday" msgstr "日曜日" ! #: datebook_gui.c:458 monthview_gui.c:240 weekview_gui.c:112 msgid "Monday" msgstr "月曜日" ! #: datebook_gui.c:459 monthview_gui.c:241 weekview_gui.c:113 msgid "Tuesday" msgstr "火曜日" ! #: datebook_gui.c:460 monthview_gui.c:242 weekview_gui.c:114 msgid "Wednesday" msgstr "水曜日" ! #: datebook_gui.c:461 monthview_gui.c:243 weekview_gui.c:115 msgid "Thursday" msgstr "木曜日" ! #: datebook_gui.c:462 monthview_gui.c:244 weekview_gui.c:116 msgid "Friday" msgstr "金曜日" ! #: datebook_gui.c:463 monthview_gui.c:245 weekview_gui.c:117 msgid "Saturday" msgstr "土曜日" ! #: datebook_gui.c:631 msgid "none" msgstr "なし" ! #: datebook_gui.c:632 msgid "day" msgstr "日" ! #: datebook_gui.c:633 msgid "week" msgstr "週" ! #: datebook_gui.c:634 msgid "month" msgstr "月" ! #: datebook_gui.c:635 msgid "year" msgstr "年" ! #: datebook_gui.c:880 #, c-format msgid "You cannot have an appointment that repeats every %d %s(s)\n" msgstr "" ! #: datebook_gui.c:889 msgid "" "You can not have a weekly repeating appointment that doesn't repeat on any " "day of the week.\n" msgstr "" ! #: datebook_gui.c:987 msgid "No Time" msgstr "" ! #: datebook_gui.c:1814 datebook_gui.c:1821 datebook_gui.c:2075 ! #: datebook_gui.c:2082 msgid "Su" msgstr "日" ! #: datebook_gui.c:1815 datebook_gui.c:2076 msgid "Mo" msgstr "月" ! #: datebook_gui.c:1816 datebook_gui.c:2077 msgid "Tu" msgstr "火" ! #: datebook_gui.c:1817 datebook_gui.c:2078 msgid "We" msgstr "水" ! #: datebook_gui.c:1818 datebook_gui.c:2079 msgid "RTh" msgstr "木" ! #: datebook_gui.c:1819 datebook_gui.c:2080 msgid "Fr" msgstr "金" ! #: datebook_gui.c:1820 datebook_gui.c:2081 msgid "Sa" msgstr "土" ! #: datebook_gui.c:2155 msgid "Go backward 1 year" msgstr "" ! #: datebook_gui.c:2168 msgid "Go backward 1 month" msgstr "" ! #: datebook_gui.c:2186 msgid "Go forward 1 month" msgstr "" ! #: datebook_gui.c:2199 msgid "Go forward 1 year" msgstr "" ! #: datebook_gui.c:2217 datebook_gui.c:2714 msgid "Week" msgstr "週" ! #: datebook_gui.c:2223 datebook_gui.c:2715 msgid "Month" msgstr "月" ! #: datebook_gui.c:2249 msgid "Daily Schedule" msgstr "一日の予定" ! #: datebook_gui.c:2359 msgid "Details" msgstr "詳細" ! #: datebook_gui.c:2371 msgid "Alarm" msgstr "アラーム" ! #: datebook_gui.c:2390 msgid "Minutes" msgstr "分" ! #: datebook_gui.c:2394 msgid "Hours" msgstr "時" ! #: datebook_gui.c:2396 msgid "Days" msgstr "日" ! #: datebook_gui.c:2416 msgid "This Event has no particular time" msgstr "時刻指定なし" ! #: datebook_gui.c:2435 msgid "Begin: " msgstr "開始:" ! #: datebook_gui.c:2463 todo_gui.c:983 msgid "Month:" msgstr "月:" ! #: datebook_gui.c:2477 todo_gui.c:985 msgid "Day:" msgstr "日:" ! #: datebook_gui.c:2492 todo_gui.c:987 msgid "Year:" msgstr "年:" ! #: datebook_gui.c:2510 msgid "Hour:" msgstr "時:" ! #: datebook_gui.c:2528 msgid "Min:" msgstr "分:" ! #: datebook_gui.c:2545 msgid "End: " msgstr "終わり:" ! #: datebook_gui.c:2713 msgid "Day" msgstr "日" ! #: datebook_gui.c:2716 msgid "Year" msgstr "年" ! #: datebook_gui.c:2723 msgid "This event will not repeat" msgstr "繰り返しなし" ! #: datebook_gui.c:2734 datebook_gui.c:2822 datebook_gui.c:2939 ! #: datebook_gui.c:3048 msgid "Frequency is Every" msgstr "繰り返し周期" ! #: datebook_gui.c:2742 msgid "Day(s)" msgstr "日毎" ! #: datebook_gui.c:2746 datebook_gui.c:2834 datebook_gui.c:2951 ! #: datebook_gui.c:3060 msgid "End on" msgstr "終わりは" ! #: datebook_gui.c:2830 msgid "Week(s)" msgstr "週毎" ! #: datebook_gui.c:2902 msgid "Repeat on Days:" msgstr "繰り返し曜日:" ! #: datebook_gui.c:2947 msgid "Month(s)" msgstr "月毎" ! #: datebook_gui.c:3020 msgid "Repeat by:" msgstr "繰り返し設定:" ! #: datebook_gui.c:3025 msgid "Day of week" msgstr "曜日" ! #: datebook_gui.c:3035 msgid "Date" msgstr "日付" ! #: datebook_gui.c:3056 msgid "Year(s)" msgstr "年毎" ! #: install_gui.c:222 msgid "Install" msgstr "/ファイル/インストール" ! #: install_gui.c:238 msgid "Files to be installed" msgstr "インストールするファイル" ! #: install_gui.c:261 msgid "To change to a hidden directory type it below and hit TAB" msgstr "隠されたディレクトリに移動するにはディレクトリ名を入力して TAB" ! #: install_gui.c:267 msgid "Add" msgstr "追加" ! #: install_gui.c:274 msgid "Remove" msgstr "削除" --- 59,424 ---- msgid "Out of memory 4\n" msgstr "" ! #: address_gui.c:363 msgid "Category: " ! msgstr "カテゴリー: " ! #: address_gui.c:509 memo_gui.c:315 todo_gui.c:472 msgid "0 records" msgstr "" ! #: address_gui.c:635 memo_gui.c:424 todo_gui.c:583 #, c-format msgid "%d of %d records" ! msgstr "%d件です(%d件中)" ! #. Create a "All" button ! #: address_gui.c:690 datebook_gui.c:314 memo_gui.c:440 todo_gui.c:600 msgid "All" ! msgstr "すべて" ! #. gtk_box_pack_start(GTK_BOX(hbox), vbox1, TRUE, TRUE, 5); ! #. gtk_box_pack_start(GTK_BOX(hbox), vbox2_1, TRUE, TRUE, 5); ! #. gtk_box_pack_start(GTK_BOX(hbox), vbox2_2, TRUE, TRUE, 5); ! #. Add buttons in left vbox ! #: address_gui.c:923 datebook_gui.c:2107 memo_gui.c:620 todo_gui.c:811 msgid "Delete" msgstr "削除" ! #: address_gui.c:985 msgid "Quick Find" msgstr "簡易検索" ! #. calendar = gtk_calendar_new(); ! #. gtk_box_pack_start(GTK_BOX(vbox2), calendar, TRUE, TRUE, 0); ! #. gtk_widget_show(calendar); ! #. gtk_box_pack_start (GTK_BOX (vbox_detail), hbox_text1, TRUE, TRUE, 0); ! #. The Frame on the right side ! #: address_gui.c:1003 msgid "Quick View" msgstr "内容" ! #. The Right hand side of the screen ! #: address_gui.c:1014 msgid "Add or Modify a Record" msgstr "レコードの追加/変更" ! #. Add record modification buttons on right side ! #: address_gui.c:1047 datebook_gui.c:2334 memo_gui.c:687 todo_gui.c:884 msgid "Add It" msgstr "追加" ! #: address_gui.c:1054 datebook_gui.c:2341 memo_gui.c:694 todo_gui.c:890 msgid "Apply Changes" msgstr "変更" ! #. Create a "Quit" button ! #: address_gui.c:1061 print_gui.c:220 msgid "Cancel" ! msgstr "キャンセル" ! #: address_gui.c:1069 datebook_gui.c:2348 memo_gui.c:701 todo_gui.c:896 msgid "New" msgstr "新規" ! #. Page 1 ! #: address_gui.c:1095 msgid "Name" ! msgstr "名前・電話" ! #. Page 2 ! #: address_gui.c:1102 msgid "Address" ! msgstr "住所" ! #. Page 3 ! #: address_gui.c:1110 msgid "Other" ! msgstr "その他" #: datebook.c:193 datebook.c:212 datebook.c:243 #, c-format msgid "Error on reading %s\n" msgstr "" ! #: datebook.c:206 datebook.c:321 datebook.c:328 datebook.c:358 datebook.c:951 ! #: datebook.c:1028 memo.c:151 memo.c:222 memo.c:356 memo.c:409 memo.c:438 ! #: memo.c:472 sync.c:1478 todo.c:245 todo.c:354 todo.c:490 todo.c:574 #: todo.c:615 msgid "Out of memory\n" msgstr "" ! #: datebook.c:986 msgid "Out of memory" msgstr "" ! #. Create a "Quit" button ! #: datebook_gui.c:308 install_gui.c:283 prefs_gui.c:386 search_gui.c:634 msgid "Done" msgstr "完了" ! #. Create a "None" button ! #: datebook_gui.c:320 datebook_gui.c:2711 msgid "None" msgstr "なし" ! #: datebook_gui.c:456 monthview_gui.c:237 monthview_gui.c:244 prefs.c:270 ! #: weekview_gui.c:109 msgid "Sunday" msgstr "日曜日" ! #: datebook_gui.c:457 monthview_gui.c:238 prefs.c:271 weekview_gui.c:110 msgid "Monday" msgstr "月曜日" ! #: datebook_gui.c:458 monthview_gui.c:239 weekview_gui.c:111 msgid "Tuesday" msgstr "火曜日" ! #: datebook_gui.c:459 monthview_gui.c:240 weekview_gui.c:112 msgid "Wednesday" msgstr "水曜日" ! #: datebook_gui.c:460 monthview_gui.c:241 weekview_gui.c:113 msgid "Thursday" msgstr "木曜日" ! #: datebook_gui.c:461 monthview_gui.c:242 weekview_gui.c:114 msgid "Friday" msgstr "金曜日" ! #: datebook_gui.c:462 monthview_gui.c:243 weekview_gui.c:115 msgid "Saturday" msgstr "土曜日" ! #: datebook_gui.c:630 msgid "none" msgstr "なし" ! #: datebook_gui.c:631 msgid "day" msgstr "日" ! #: datebook_gui.c:632 msgid "week" msgstr "週" ! #: datebook_gui.c:633 msgid "month" msgstr "月" ! #: datebook_gui.c:634 msgid "year" msgstr "年" ! #: datebook_gui.c:879 #, c-format msgid "You cannot have an appointment that repeats every %d %s(s)\n" msgstr "" ! #: datebook_gui.c:888 msgid "" "You can not have a weekly repeating appointment that doesn't repeat on any " "day of the week.\n" msgstr "" ! #. This is a timeless event ! #: datebook_gui.c:986 msgid "No Time" msgstr "" ! #: datebook_gui.c:1813 datebook_gui.c:1820 datebook_gui.c:2074 ! #: datebook_gui.c:2081 msgid "Su" msgstr "日" ! #: datebook_gui.c:1814 datebook_gui.c:2075 msgid "Mo" msgstr "月" ! #: datebook_gui.c:1815 datebook_gui.c:2076 msgid "Tu" msgstr "火" ! #: datebook_gui.c:1816 datebook_gui.c:2077 msgid "We" msgstr "水" ! #: datebook_gui.c:1817 datebook_gui.c:2078 msgid "RTh" msgstr "木" ! #: datebook_gui.c:1818 datebook_gui.c:2079 msgid "Fr" msgstr "金" ! #: datebook_gui.c:1819 datebook_gui.c:2080 msgid "Sa" msgstr "土" ! #: datebook_gui.c:2154 msgid "Go backward 1 year" msgstr "" ! #: datebook_gui.c:2167 msgid "Go backward 1 month" msgstr "" ! #: datebook_gui.c:2185 msgid "Go forward 1 month" msgstr "" ! #: datebook_gui.c:2198 msgid "Go forward 1 year" msgstr "" ! #. Make Monthview button ! #: datebook_gui.c:2216 datebook_gui.c:2713 msgid "Week" msgstr "週" ! #. Make Weekview button ! #: datebook_gui.c:2222 datebook_gui.c:2714 msgid "Month" msgstr "月" ! #: datebook_gui.c:2248 msgid "Daily Schedule" msgstr "一日の予定" ! #. start details ! #: datebook_gui.c:2358 msgid "Details" msgstr "詳細" ! #: datebook_gui.c:2370 msgid "Alarm" msgstr "アラーム" ! #: datebook_gui.c:2389 msgid "Minutes" msgstr "分" ! #: datebook_gui.c:2393 msgid "Hours" msgstr "時" ! #: datebook_gui.c:2395 msgid "Days" msgstr "日" ! #: datebook_gui.c:2415 msgid "This Event has no particular time" msgstr "時刻指定なし" ! #: datebook_gui.c:2434 msgid "Begin: " msgstr "開始:" ! #. Put Month spinner in ! #: datebook_gui.c:2462 todo_gui.c:983 msgid "Month:" msgstr "月:" ! #. Put Day spinner in ! #: datebook_gui.c:2476 todo_gui.c:985 msgid "Day:" msgstr "日:" ! #. Put year spinner in ! #: datebook_gui.c:2491 todo_gui.c:987 msgid "Year:" msgstr "年:" ! #: datebook_gui.c:2509 msgid "Hour:" msgstr "時:" ! #: datebook_gui.c:2527 msgid "Min:" msgstr "分:" ! #. End Begin spinners ! #. Begin End spinners ! #: datebook_gui.c:2544 msgid "End: " msgstr "終わり:" ! #: datebook_gui.c:2712 msgid "Day" msgstr "日" ! #: datebook_gui.c:2715 msgid "Year" msgstr "年" ! #. no repeat page for notebook ! #: datebook_gui.c:2722 msgid "This event will not repeat" msgstr "繰り返しなし" ! #: datebook_gui.c:2733 datebook_gui.c:2821 datebook_gui.c:2938 ! #: datebook_gui.c:3047 msgid "Frequency is Every" msgstr "繰り返し周期" ! #: datebook_gui.c:2741 msgid "Day(s)" msgstr "日毎" ! #. checkbutton ! #: datebook_gui.c:2745 datebook_gui.c:2833 datebook_gui.c:2950 ! #: datebook_gui.c:3059 msgid "End on" msgstr "終わりは" ! #: datebook_gui.c:2829 msgid "Week(s)" msgstr "週毎" ! #. end spinners ! #: datebook_gui.c:2901 msgid "Repeat on Days:" msgstr "繰り返し曜日:" ! #: datebook_gui.c:2946 msgid "Month(s)" msgstr "月毎" ! #. end spinners ! #: datebook_gui.c:3019 msgid "Repeat by:" msgstr "繰り返し設定:" ! #: datebook_gui.c:3024 msgid "Day of week" msgstr "曜日" ! #: datebook_gui.c:3034 msgid "Date" msgstr "日付" ! #: datebook_gui.c:3055 msgid "Year(s)" msgstr "年毎" ! #: install_gui.c:224 msgid "Install" msgstr "/ファイル/インストール" ! #: install_gui.c:240 msgid "Files to be installed" msgstr "インストールするファイル" ! #: install_gui.c:263 msgid "To change to a hidden directory type it below and hit TAB" msgstr "隠されたディレクトリに移動するにはディレクトリ名を入力して TAB" ! #: install_gui.c:269 msgid "Add" msgstr "追加" ! #: install_gui.c:276 msgid "Remove" msgstr "削除" *************** *** 401,412 **** #: jpilot.c:304 print_gui.c:214 msgid "Print" ! msgstr "" #: jpilot.c:305 msgid "There is no print support for this conduit." ! msgstr "" #: jpilot.c:529 msgid "Hide this window" msgstr "このウインドウを隠す" --- 432,444 ---- #: jpilot.c:304 print_gui.c:214 msgid "Print" ! msgstr "印刷" #: jpilot.c:305 msgid "There is no print support for this conduit." ! msgstr "このコンジットでは印刷はサポートされていません." + #. Button #: jpilot.c:529 msgid "Hide this window" msgstr "このウインドウを隠す" *************** *** 433,441 **** #: jpilot.c:690 msgid "/File/Preferences" ! msgstr "/ファイル/プリファレンス" ! ## kei added manually #: jpilot.c:691 msgid "/File/Print" msgstr "/ファイル/印刷" --- 465,473 ---- #: jpilot.c:690 msgid "/File/Preferences" ! msgstr "/ファイル/設定" ! # # kei added manually #: jpilot.c:691 msgid "/File/Print" msgstr "/ファイル/印刷" *************** *** 450,456 **** #: jpilot.c:695 msgid "/View/Datebook" ! msgstr "/表示/Datebook" #: jpilot.c:696 msgid "/View/Addresses" --- 482,488 ---- #: jpilot.c:695 msgid "/View/Datebook" ! msgstr "/表示/予定表" #: jpilot.c:696 msgid "/View/Addresses" *************** *** 486,524 **** msgid "/_Help/%s" msgstr "/ヘルプ/%s" #: jpilot.c:1154 msgid "Quit!" msgstr "終了" #: jpilot.c:1169 msgid "Sync your palm to the desktop" ! msgstr "" #: jpilot.c:1173 msgid "Backup" ! msgstr "" #: jpilot.c:1182 msgid "" "Sync your palm to the desktop\n" "and then do a backup" ! msgstr "" #: jpilot.c:1234 msgid "Datebook/Go to Today" ! msgstr "" #: jpilot.c:1236 msgid "Address Book" ! msgstr "" #: jpilot.c:1238 msgid "ToDo List" ! msgstr "" #: jpilot.c:1240 msgid "Memo Pad" ! msgstr "" #: log.c:69 msgid "Cannot open log file, giving up.\n" --- 518,563 ---- msgid "/_Help/%s" msgstr "/ヘルプ/%s" + #. Create "Quit" button #: jpilot.c:1154 msgid "Quit!" msgstr "終了" + #. Create "Sync" button + #: jpilot.c:1161 + msgid "Sync" + msgstr "同期" + #: jpilot.c:1169 msgid "Sync your palm to the desktop" ! msgstr "Palmとデスクトップのデータを同期します" + #. Create "Backup" button in left column #: jpilot.c:1173 msgid "Backup" ! msgstr "バックアップ" #: jpilot.c:1182 msgid "" "Sync your palm to the desktop\n" "and then do a backup" ! msgstr "Palmとデスクトップのデータを同期し、バックアップを行います" #: jpilot.c:1234 msgid "Datebook/Go to Today" ! msgstr "予定表" #: jpilot.c:1236 msgid "Address Book" ! msgstr "アドレス帳" #: jpilot.c:1238 msgid "ToDo List" ! msgstr "ToDo" #: jpilot.c:1240 msgid "Memo Pad" ! msgstr "メモ帳" #: log.c:69 msgid "Cannot open log file, giving up.\n" *************** *** 542,577 **** #: prefs_gui.c:204 msgid "Preferences" ! msgstr "/ファイル/プリファレンス" #: prefs_gui.c:221 msgid "Short date format " msgstr "短い日付形式" #: prefs_gui.c:234 msgid "Long date format " msgstr "長い日付形式" #: prefs_gui.c:248 msgid "Time format " msgstr "時刻形式" #: prefs_gui.c:262 msgid "The first day of the week is " msgstr "一週間の始まり" #: prefs_gui.c:276 msgid "My GTK colors file is " msgstr "GTK カラーファイルの設定" #: prefs_gui.c:290 msgid "Serial Port " msgstr "シリアルポートの選択" #: prefs_gui.c:305 msgid "Serial Rate " msgstr "シリアル速度の選択" #: prefs_gui.c:318 msgid "Number of backups to be archived" msgstr "保存するバックアップの個数" --- 581,624 ---- #: prefs_gui.c:204 msgid "Preferences" ! msgstr "設定" + #. Shortdate #: prefs_gui.c:221 msgid "Short date format " msgstr "短い日付形式" + #. Longdate #: prefs_gui.c:234 msgid "Long date format " msgstr "長い日付形式" + #. Time #: prefs_gui.c:248 msgid "Time format " msgstr "時刻形式" + #. FDOW #: prefs_gui.c:262 msgid "The first day of the week is " msgstr "一週間の始まり" + #. GTK colors file #: prefs_gui.c:276 msgid "My GTK colors file is " msgstr "GTK カラーファイルの設定" + #. Port #: prefs_gui.c:290 msgid "Serial Port " msgstr "シリアルポートの選択" + #. Rate #: prefs_gui.c:305 msgid "Serial Rate " msgstr "シリアル速度の選択" + #. Number of backups #: prefs_gui.c:318 msgid "Number of backups to be archived" msgstr "保存するバックアップの個数" *************** *** 588,632 **** msgid "Highlight calendar days with appointments" msgstr "約束のある日をハイライトする" - ## kei added manually - msgid "Use DateBk3 note tags" - msgstr "DateBk3 のノートタグを使う" - #: prefs_gui.c:374 msgid "Use DateBk3 note tags" ! msgstr "" #: print_gui.c:135 msgid "Print Options" ! msgstr "" #: print_gui.c:149 msgid "One record" ! msgstr "" #: print_gui.c:153 msgid "All records in this category" ! msgstr "" #: print_gui.c:157 msgid "Print all records" ! msgstr "" #: print_gui.c:177 msgid "One record per page" ! msgstr "" #: print_gui.c:191 msgid " Blank lines between each record" ! msgstr "" #: print_gui.c:200 msgid "Print Command (e.g. lpr, or cat > file.ps)" ! msgstr "" #: search_gui.c:512 msgid "No records found" ! msgstr "" #: search_gui.c:583 msgid "Search" --- 635,676 ---- msgid "Highlight calendar days with appointments" msgstr "約束のある日をハイライトする" #: prefs_gui.c:374 msgid "Use DateBk3 note tags" ! msgstr "DateBk3 のノートタグを使う" #: print_gui.c:135 msgid "Print Options" ! msgstr "印刷オプション" #: print_gui.c:149 msgid "One record" ! msgstr "現在のレコード" #: print_gui.c:153 msgid "All records in this category" ! msgstr "現在のカテゴリの全てのレコード" #: print_gui.c:157 msgid "Print all records" ! msgstr "全てのレコード" #: print_gui.c:177 msgid "One record per page" ! msgstr "1ページにつき1レコードにする" #: print_gui.c:191 msgid " Blank lines between each record" ! msgstr "レコード間の行数" + #. Print Command #: print_gui.c:200 msgid "Print Command (e.g. lpr, or cat > file.ps)" ! msgstr "印刷コマンド (例: lpr, or cat > file.ps)" #: search_gui.c:512 msgid "No records found" ! msgstr "レコードが見付かりません." #: search_gui.c:583 msgid "Search" *************** *** 642,660 **** #: sync.c:362 msgid " Press the HotSync button now\n" ! msgstr "" #: sync.c:381 msgid "Check your serial port and settings\n" msgstr "" #: sync.c:487 msgid "Doing a fast sync.\n" ! msgstr "" #: sync.c:494 msgid "Doing a slow sync.\n" ! msgstr "" #: sync.c:542 msgid "Thank you for using J-Pilot." --- 686,755 ---- #: sync.c:362 msgid " Press the HotSync button now\n" ! msgstr "HotSyncボタンを押して下さい\n" #: sync.c:381 msgid "Check your serial port and settings\n" + msgstr "シリアルポートと設定を見直して下さい\n" + + #. These are carefully worded so as not to be read by + #. * the parent program and interpreted + #: sync.c:414 sync.c:427 sync.c:438 + #, c-format + msgid "Last Username-->\"%s\"\n" + msgstr "" + + #: sync.c:415 sync.c:428 sync.c:439 + #, c-format + msgid "Last UserID-->\"%d\"\n" + msgstr "" + + #: sync.c:416 sync.c:429 sync.c:440 + #, c-format + msgid "Username-->\"%s\"\n" + msgstr "" + + #: sync.c:417 sync.c:430 sync.c:441 + #, c-format + msgid "User ID-->%d\n" msgstr "" + #. User name and User ID is read by the parent process and stored + #. * in the preferences + #. * So, this is more than just displaying it to the user + #: sync.c:450 + #, c-format + msgid "Username is \"%s\"\n" + msgstr "ユーザー名は \"%s\"\n" + + #: sync.c:451 + #, c-format + msgid "User ID is %d\n" + msgstr "ユーザーIDは %d\n" + + #. writef(pipe_out, "passwordlen = [%d]\n", U.passwordLength); + #. writef(pipe_out, "password = [%s]\n", U.password); + #: sync.c:460 + #, c-format + msgid "lastSyncPC = %d\n" + msgstr "最後に同期したPC = %d\n" + + #: sync.c:461 + #, c-format + msgid "This PC = %d\n" + msgstr "このPC = %d\n" + + #: sync.c:464 + msgid "Sync canceled\n" + msgstr "同期はキャンセルされました\n" + #: sync.c:487 msgid "Doing a fast sync.\n" ! msgstr "高速同期を行います.\n" #: sync.c:494 msgid "Doing a slow sync.\n" ! msgstr "低速同期を行います.\n" #: sync.c:542 msgid "Thank you for using J-Pilot." *************** *** 662,707 **** #: sync.c:570 msgid "Finished.\n" ! msgstr "" ! #: sync.c:842 #, c-format ! msgid "Skipping %s\n" ! msgstr "" ! #: sync.c:917 #, c-format msgid "%s is up to date, fetch skipped.\n" ! msgstr "" ! #: sync.c:921 #, c-format msgid "Fetching '%s'... " ! msgstr "" ! #: sync.c:938 sync.c:1016 msgid "OK\n" msgstr "" ! #: sync.c:973 #, c-format ! msgid "Installing %s... " msgstr "" ! #: sync.c:1003 #, c-format msgid "Install %s failed" ! msgstr "" ! #: sync.c:1012 #, c-format msgid "Installed %s" ! msgstr "" #: todo_gui.c:844 msgid "Hide Completed ToDos" msgstr "完了したToDoを表示しない" #: todo_gui.c:909 msgid "Completed" msgstr "完了" --- 757,837 ---- #: sync.c:570 msgid "Finished.\n" ! msgstr "終了しました.\n" ! #: sync.c:599 sync.c:1877 #, c-format ! msgid "Syncing %s\n" ! msgstr "同期中 %s\n" ! #: sync.c:815 sync.c:1005 #, c-format msgid "%s is up to date, fetch skipped.\n" ! msgstr "%s は同期する必要がありません.スキップします.\n" ! #: sync.c:819 sync.c:1009 #, c-format msgid "Fetching '%s'... " ! msgstr "取得中 '%s'... " ! #: sync.c:834 sync.c:1028 sync.c:1106 msgid "OK\n" msgstr "" ! #: sync.c:866 ! msgid "DatebookDB" ! msgstr "予定表" ! ! #: sync.c:867 ! msgid "AddressDB" ! msgstr "アドレス" ! ! #: sync.c:868 ! msgid "ToDoDB" ! msgstr "ToDo" ! ! #: sync.c:869 ! msgid "MemoDB" ! msgstr "メモ帳" ! ! #: sync.c:870 ! msgid "Saved Preferences" ! msgstr "本体設定" ! ! #: sync.c:930 #, c-format ! msgid "Skipping %s\n" msgstr "" ! #: sync.c:1063 ! #, c-format ! msgid "Installing %s... " ! msgstr "インストール中 %s... " ! ! #: sync.c:1093 #, c-format msgid "Install %s failed" ! msgstr "%s のインストールに失敗しました" ! #: sync.c:1102 #, c-format msgid "Installed %s" ! msgstr "インストール成功 %s" + #: sync.c: + msgid "ExpenseDB" + msgstr "支払メモ" + + #: sync.c: + msgid "MailDB" + msgstr "メール" + + #. The hide completed check box #: todo_gui.c:844 msgid "Hide Completed ToDos" msgstr "完了したToDoを表示しない" + #. The completed check box #: todo_gui.c:909 msgid "Completed" msgstr "完了" *************** *** 710,715 **** --- 840,847 ---- msgid "Priority: " msgstr "優先度" + #. Due date stuff + #. The No due date check box #: todo_gui.c:947 msgid "No Due Date" msgstr "締め切りなし" *************** *** 734,747 **** #, c-format msgid "I generated a new PC ID. It is %d\n" msgstr "" - - #~ msgid "4th" - #~ msgstr "第4" - - #~ msgid "Last" - #~ msgstr "最後" - - # msgid "WeekView" - # msgstr "一週間の予定" - #~ msgid "MonthView" - #~ msgstr "一月の予定" --- 866,868 ---- diff -C 3 -r -P jpilot-0.98.1-bak/prefs.c jpilot-0.98.1/prefs.c *** jpilot-0.98.1-bak/prefs.c Sat Feb 5 12:13:21 2000 --- jpilot-0.98.1/prefs.c Wed Jul 5 19:37:54 2000 *************** *** 267,274 **** }; static const char *days[] = { ! "Sunday", ! "Monday" }; static const char *rates[] = { --- 267,274 ---- }; static const char *days[] = { ! gettext_noop("Sunday"), ! gettext_noop("Monday") }; static const char *rates[] = { *************** *** 320,326 **** pref_str[0]='\0'; return -1; } ! strcpy(pref_str, days[n]); break; case PREF_RATE: --- 320,326 ---- pref_str[0]='\0'; return -1; } ! strcpy(pref_str, gettext(days[n])); break; case PREF_RATE: diff -C 3 -r -P jpilot-0.98.1-bak/sync.c jpilot-0.98.1/sync.c *** jpilot-0.98.1-bak/sync.c Wed Jul 5 19:32:47 2000 --- jpilot-0.98.1/sync.c Wed Jul 5 19:37:54 2000 *************** *** 411,420 **** * the last time */ if (U.userID == 0) { ! writef(pipe_out, "Last Username-->\"%s\"\n", sync_info->username); ! writef(pipe_out, "Last UserID-->\"%d\"\n", sync_info->userID); ! writef(pipe_out, "Username-->\"%s\"\n", U.username); ! writef(pipe_out, "User ID-->%d\n", U.userID); dlp_EndOfSync(sd, 0); pi_close(sd); return SYNC_ERROR_NULL_USERID; --- 411,420 ---- * the last time */ if (U.userID == 0) { ! writef(pipe_out, _("Last Username-->\"%s\"\n"), sync_info->username); ! writef(pipe_out, _("Last UserID-->\"%d\"\n"), sync_info->userID); ! writef(pipe_out, _("Username-->\"%s\"\n"), U.username); ! writef(pipe_out, _("User ID-->%d\n"), U.userID); dlp_EndOfSync(sd, 0); pi_close(sd); return SYNC_ERROR_NULL_USERID; *************** *** 424,433 **** (!(sync_info->flags & SYNC_OVERRIDE_USER))) { /* These are carefully worded so as not to be read by * the parent program and interpreted */ ! writef(pipe_out, "Last Username-->\"%s\"\n", sync_info->username); ! writef(pipe_out, "Last UserID-->\"%d\"\n", sync_info->userID); ! writef(pipe_out, "Username-->\"%s\"\n", U.username); ! writef(pipe_out, "User ID-->%d\n", U.userID); dlp_EndOfSync(sd, 0); pi_close(sd); return SYNC_ERROR_NOT_SAME_USERID; --- 424,433 ---- (!(sync_info->flags & SYNC_OVERRIDE_USER))) { /* These are carefully worded so as not to be read by * the parent program and interpreted */ ! writef(pipe_out, _("Last Username-->\"%s\"\n"), sync_info->username); ! writef(pipe_out, _("Last UserID-->\"%d\"\n"), sync_info->userID); ! writef(pipe_out, _("Username-->\"%s\"\n"), U.username); ! writef(pipe_out, _("User ID-->%d\n"), U.userID); dlp_EndOfSync(sd, 0); pi_close(sd); return SYNC_ERROR_NOT_SAME_USERID; *************** *** 435,444 **** if ((strcmp(sync_info->username, U.username)) && (sync_info->username[0]!='\0') && (!(sync_info->flags & SYNC_OVERRIDE_USER))) { ! writef(pipe_out, "Last Username-->\"%s\"\n", sync_info->username); ! writef(pipe_out, "Last UserID-->\"%d\"\n", sync_info->userID); ! writef(pipe_out, "Username-->\"%s\"\n", U.username); ! writef(pipe_out, "User ID-->%d\n", U.userID); dlp_EndOfSync(sd, 0); pi_close(sd); return SYNC_ERROR_NOT_SAME_USER; --- 435,444 ---- if ((strcmp(sync_info->username, U.username)) && (sync_info->username[0]!='\0') && (!(sync_info->flags & SYNC_OVERRIDE_USER))) { ! writef(pipe_out, _("Last Username-->\"%s\"\n"), sync_info->username); ! writef(pipe_out, _("Last UserID-->\"%d\"\n"), sync_info->userID); ! writef(pipe_out, _("Username-->\"%s\"\n"), U.username); ! writef(pipe_out, _("User ID-->%d\n"), U.userID); dlp_EndOfSync(sd, 0); pi_close(sd); return SYNC_ERROR_NOT_SAME_USER; *************** *** 449,467 **** * So, this is more than just displaying it to the user */ writef(pipe_out, "Username is \"%s\"\n", U.username); writef(pipe_out, "User ID is %d\n", U.userID); ! jpilot_logf(LOG_DEBUG, "Last Username = [%s]\n", sync_info->username); ! jpilot_logf(LOG_DEBUG, "Last UserID = %d\n", sync_info->userID); ! jpilot_logf(LOG_DEBUG, "Username = [%s]\n", U.username); ! jpilot_logf(LOG_DEBUG, "userID = %d\n", U.userID); ! jpilot_logf(LOG_DEBUG, "lastSyncPC = %d\n", U.lastSyncPC); /*writef(pipe_out, "passwordlen = [%d]\n", U.passwordLength); */ /*writef(pipe_out, "password = [%s]\n", U.password); */ ! writef(pipe_out, "lastSyncPC = %d\n", U.lastSyncPC); ! writef(pipe_out, "This PC = %d\n", sync_info->PC_ID); if (dlp_OpenConduit(sd)<0) { ! writef(pipe_out, "Sync canceled\n"); #ifdef ENABLE_PLUGINS free_plugin_list(&plugin_list); #endif --- 449,467 ---- * So, this is more than just displaying it to the user */ writef(pipe_out, "Username is \"%s\"\n", U.username); writef(pipe_out, "User ID is %d\n", U.userID); ! jpilot_logf(LOG_DEBUG, _("Last Username = [%s]\n"), sync_info->username); ! jpilot_logf(LOG_DEBUG, _("Last UserID = %d\n"), sync_info->userID); ! jpilot_logf(LOG_DEBUG, _("Username = [%s]\n"), U.username); ! jpilot_logf(LOG_DEBUG, _("userID = %d\n"), U.userID); ! jpilot_logf(LOG_DEBUG, _("lastSyncPC = %d\n"), U.lastSyncPC); /*writef(pipe_out, "passwordlen = [%d]\n", U.passwordLength); */ /*writef(pipe_out, "password = [%s]\n", U.password); */ ! writef(pipe_out, _("lastSyncPC = %d\n"), U.lastSyncPC); ! writef(pipe_out, _("This PC = %d\n"), sync_info->PC_ID); if (dlp_OpenConduit(sd)<0) { ! writef(pipe_out, _("Sync canceled\n")); #ifdef ENABLE_PLUGINS free_plugin_list(&plugin_list); #endif *************** *** 596,602 **** if ((DB_name==NULL) || (strlen(DB_name) > 250)) { return -1; } ! g_snprintf(log_entry, 255, "Syncing %s\n", DB_name); log_entry[255]='\0'; writef(pipe_out, log_entry); g_snprintf(pc_filename, 255, "%s.pc", DB_name); --- 596,602 ---- if ((DB_name==NULL) || (strlen(DB_name) > 250)) { return -1; } ! g_snprintf(log_entry, 255, _("Syncing %s\n"), gettext(DB_name)); log_entry[255]='\0'; writef(pipe_out, log_entry); g_snprintf(pc_filename, 255, "%s.pc", DB_name); *************** *** 816,822 **** continue; } ! writef(pipe_out, _("Fetching '%s'... "), info.name); info.flags &= 0xff; --- 816,822 ---- continue; } ! writef(pipe_out, _("Fetching '%s'... "), gettext(info.name)); info.flags &= 0xff; *************** *** 863,873 **** struct DBInfo info; char db_copy_name[MAX_DBNAME]; char *palm_dbname[]={ ! "DatebookDB", ! "AddressDB", ! "ToDoDB", ! "MemoDB", ! "Saved Preferences", NULL }; char *extra_dbname[]={ --- 863,873 ---- struct DBInfo info; char db_copy_name[MAX_DBNAME]; char *palm_dbname[]={ ! gettext_noop("DatebookDB"), ! gettext_noop("AddressDB"), ! gettext_noop("ToDoDB"), ! gettext_noop("MemoDB"), ! gettext_noop("Saved Preferences"), NULL }; char *extra_dbname[]={ *************** *** 1006,1012 **** continue; } ! writef(pipe_out, _("Fetching '%s'... "), info.name); info.flags &= 0xff; --- 1006,1012 ---- continue; } ! writef(pipe_out, _("Fetching '%s'... "), gettext(info.name)); info.flags &= 0xff; *************** *** 1884,1890 **** if ((DB_name==NULL) || (strlen(DB_name) > 250)) { return -1; } ! g_snprintf(log_entry, 255, "Syncing %s\n", DB_name); log_entry[255]='\0'; writef(pipe_out, log_entry); --- 1884,1890 ---- if ((DB_name==NULL) || (strlen(DB_name) > 250)) { return -1; } ! g_snprintf(log_entry, 255, _("Syncing %s\n"), gettext(DB_name)); log_entry[255]='\0'; writef(pipe_out, log_entry);