1
1

* boxes.c (display_callback): Use common_dialog_repaint().

(display_init): Avoid using two different translations.
Этот коммит содержится в:
Pavel Roskin 2002-09-02 05:09:45 +00:00
родитель 03e1f0638e
Коммит 9f5b82fe08
2 изменённых файлов: 60 добавлений и 58 удалений

Просмотреть файл

@ -1,3 +1,8 @@
2002-09-02 Pavel Roskin <proski@gnu.org>
* boxes.c (display_callback): Use common_dialog_repaint().
(display_init): Avoid using two different translations.
2002-09-01 Pavel Roskin <proski@gnu.org>
* help.c (interactive_display): Don't reuse the old value of

Просмотреть файл

@ -68,10 +68,8 @@ static WCheck *check_status;
static int current_mode;
static char **displays_status;
static char* display_title = N_(" Listing mode ");
/* Controls whether the array strings have been translated */
static int i18n_displays_flag;
static char *displays [LIST_TYPES] = {
N_("&Full file list"),
N_("&Brief file list"),
@ -87,14 +85,7 @@ display_callback (struct Dlg_head *h, int id, int Msg)
{
switch (Msg){
case DLG_DRAW:
attrset (COLOR_NORMAL);
dlg_erase (h);
draw_box (h, 1, 2, h->lines - 2, h->cols - 4);
attrset (COLOR_HOT_NORMAL);
dlg_move (h, 1, (h->cols - strlen(display_title))/2);
addstr (display_title);
attrset (COLOR_NORMAL);
common_dialog_repaint (h);
break;
case DLG_UNFOCUS:
@ -137,79 +128,85 @@ display_callback (struct Dlg_head *h, int id, int Msg)
}
static void
display_init (int radio_sel, char *init_text,
int _check_status, char ** _status)
display_init (int radio_sel, char *init_text, int _check_status,
char **_status)
{
char* user_mini_status = _("user &Mini status");
char* ok_button = _("&Ok");
char* cancel_button = _("&Cancel");
static int button_start = 30;
static char *display_title = N_("Listing mode");
static int i18n_displays_flag;
char *user_mini_status = _("user &Mini status");
char *ok_button = _("&Ok");
char *cancel_button = _("&Cancel");
static int button_start = 30;
displays_status = _status;
if (!i18n_displays_flag){
int i, l, maxlen = 0;
char* cp;
if (!i18n_displays_flag) {
int i, l, maxlen = 0;
char *cp;
display_title = _(display_title);
for (i = 0; i < LIST_TYPES; i++)
{
displays [i] = _(displays [i]);
if ((l = strlen(displays [i])) > maxlen)
maxlen = l;
}
display_title = _(display_title);
for (i = 0; i < LIST_TYPES; i++) {
displays[i] = _(displays[i]);
if ((l = strlen (displays[i])) > maxlen)
maxlen = l;
}
i = strlen (ok_button) + 5;
l = strlen (cancel_button) + 3;
l = max(i, l);
i = strlen (ok_button) + 5;
l = strlen (cancel_button) + 3;
l = max (i, l);
i = maxlen + l + 16;
if (i > DISPLAY_X)
DISPLAY_X = i;
i = maxlen + l + 16;
if (i > DISPLAY_X)
DISPLAY_X = i;
i = strlen (user_mini_status) + 13;
if (i > DISPLAY_X)
DISPLAY_X = i;
i = strlen (display_title) + 8;
if (i > DISPLAY_X)
DISPLAY_X = i;
i = strlen (user_mini_status) + 13;
if (i > DISPLAY_X)
DISPLAY_X = i;
button_start = DISPLAY_X - l - 5;
/* get hotkey of user-defined format string */
cp = strchr(displays[LIST_TYPES-1],'&');
if (cp != NULL && *++cp != '\0')
user_hotkey = tolower(*cp);
i = strlen (display_title) + 10;
if (i > DISPLAY_X)
DISPLAY_X = i;
i18n_displays_flag = 1;
button_start = DISPLAY_X - l - 5;
/* get hotkey of user-defined format string */
cp = strchr (displays[LIST_TYPES - 1], '&');
if (cp != NULL && *++cp != '\0')
user_hotkey = tolower (*cp);
i18n_displays_flag = 1;
}
dd = create_dlg (0, 0, DISPLAY_Y, DISPLAY_X, dialog_colors,
display_callback, "[Listing Mode...]", "display",
DLG_CENTER);
x_set_dialog_title (dd, _("Listing mode"));
x_set_dialog_title (dd, display_title);
add_widget (dd,
button_new (4, button_start, B_CANCEL,
NORMAL_BUTTON, cancel_button, 0, 0, "cancel-button"));
button_new (4, button_start, B_CANCEL, NORMAL_BUTTON,
cancel_button, 0, 0, "cancel-button"));
add_widget (dd,
button_new (3, button_start, B_ENTER,
DEFPUSH_BUTTON, ok_button, 0, 0, "ok-button"));
button_new (3, button_start, B_ENTER, DEFPUSH_BUTTON,
ok_button, 0, 0, "ok-button"));
status = input_new (10, 9, INPUT_COLOR, DISPLAY_X-14, _status [radio_sel], "mini-input");
status =
input_new (10, 9, INPUT_COLOR, DISPLAY_X - 14, _status[radio_sel],
"mini-input");
add_widget (dd, status);
input_set_point (status, 0);
check_status = check_new (9, 5, _check_status, user_mini_status, "mini-status");
check_status =
check_new (9, 5, _check_status, user_mini_status, "mini-status");
add_widget (dd, check_status);
user = input_new (7, 9, INPUT_COLOR, DISPLAY_X-14, init_text, "user-fmt-input");
user =
input_new (7, 9, INPUT_COLOR, DISPLAY_X - 14, init_text,
"user-fmt-input");
add_widget (dd, user);
input_set_point (user, 0);
my_radio = radio_new (3, 5, LIST_TYPES-1, displays, 1, "radio");
my_radio = radio_new (3, 5, LIST_TYPES - 1, displays, 1, "radio");
my_radio->sel = my_radio->pos = current_mode;
add_widget (dd, my_radio);
}