patches by Rostislav Beneš: mc-16-boxes

Some changes for correct display of boxes.
This commit is contained in:
Slava Zanko 2008-12-29 01:01:58 +02:00
parent 2423fabcf4
commit f79ea0e917

View File

@ -49,6 +49,7 @@
#include "tree.h"
#include "layout.h" /* for get_nth_panel_name proto */
#include "background.h" /* task_list */
#include "strutil.h"
#ifdef HAVE_CHARSET
#include "charsets.h"
@ -119,7 +120,7 @@ display_callback (struct Dlg_head *h, dlg_msg_t msg, int parm)
}
}
if (tolower (parm) == user_hotkey && dlg_widget_active (user)
if (g_ascii_tolower (parm) == user_hotkey && dlg_widget_active (user)
&& dlg_widget_active (status)) {
my_radio->sel = 3;
dlg_select_widget (my_radio); /* force redraw */
@ -154,23 +155,23 @@ display_init (int radio_sel, char *init_text, int _check_status,
display_title = _(display_title);
for (i = 0; i < LIST_TYPES; i++) {
displays[i] = _(displays[i]);
if ((l = strlen (displays[i])) > maxlen)
if ((l = str_term_width1 (displays[i])) > maxlen)
maxlen = l;
}
i = strlen (ok_button) + 5;
l = strlen (cancel_button) + 3;
i = str_term_width1 (ok_button) + 5;
l = str_term_width1 (cancel_button) + 3;
l = max (i, l);
i = maxlen + l + 16;
if (i > DISPLAY_X)
DISPLAY_X = i;
i = strlen (user_mini_status) + 13;
i = str_term_width1 (user_mini_status) + 13;
if (i > DISPLAY_X)
DISPLAY_X = i;
i = strlen (display_title) + 10;
i = str_term_width1 (display_title) + 10;
if (i > DISPLAY_X)
DISPLAY_X = i;
@ -179,7 +180,7 @@ display_init (int radio_sel, char *init_text, int _check_status,
/* get hotkey of user-defined format string */
cp = strchr (displays[USER_TYPE], '&');
if (cp != NULL && *++cp != '\0')
user_hotkey = tolower ((unsigned char) *cp);
user_hotkey = g_ascii_tolower ((gchar) cp[0]);
i18n_displays_flag = 1;
}
@ -289,20 +290,20 @@ sort_box (sortfn *sort_fn, int *reverse, int *case_sensitive)
int maxlen = 0;
for (i = SORT_TYPES - 1; i >= 0; i--) {
sort_orders_names[i] = _(sort_orders[i].sort_name);
r = strlen (sort_orders_names[i]);
r = str_term_width1 (sort_orders_names[i]);
if (r > maxlen)
maxlen = r;
}
check_pos = maxlen + 9;
r = strlen (reverse_label) + 4;
i = strlen (case_label) + 4;
r = str_term_width1 (reverse_label) + 4;
i = str_term_width1 (case_label) + 4;
if (i > r)
r = i;
l = strlen (ok_button) + 6;
i = strlen (cancel_button) + 4;
l = str_term_width1 (ok_button) + 6;
i = str_term_width1 (cancel_button) + 4;
if (i > l)
l = i;
@ -311,7 +312,7 @@ sort_box (sortfn *sort_fn, int *reverse, int *case_sensitive)
if (i > SORT_X)
SORT_X = i;
i = strlen (sort_title) + 6;
i = str_term_width1 (sort_title) + 6;
if (i > SORT_X)
SORT_X = i;
@ -409,7 +410,7 @@ confirm_box (void)
while (i--)
{
conf_widgets [i].text = _(conf_widgets [i].text);
l1 = strlen (conf_widgets [i].text) + 3;
l1 = str_term_width1 (conf_widgets [i].text) + 3;
if (l1 > maxlen)
maxlen = l1;
}
@ -424,8 +425,8 @@ confirm_box (void)
* And this for the case when buttons with some space to the right
* do not fit within 2/6
*/
l1 = strlen (conf_widgets [0].text) + 3;
i = strlen (conf_widgets [1].text) + 5;
l1 = str_term_width1 (conf_widgets [0].text) + 3;
i = str_term_width1 (conf_widgets [1].text) + 5;
if (i > l1)
l1 = i;
@ -498,11 +499,11 @@ display_bits_box (void)
{
display_widgets [i].text = _(display_widgets[i].text);
display_bits_str [i] = _(display_bits_str [i]);
l1 = strlen (display_bits_str [i]);
l1 = str_term_width1 (display_bits_str [i]);
if (l1 > maxlen)
maxlen = l1;
}
l1 = strlen (display_widgets [2].text);
l1 = str_term_width1 (display_widgets [2].text);
if (l1 > maxlen)
maxlen = l1;
@ -510,8 +511,8 @@ display_bits_box (void)
display_bits.xlen = (maxlen + 5) * 6 / 4;
/* See above confirm_box */
l1 = strlen (display_widgets [0].text) + 3;
i = strlen (display_widgets [1].text) + 5;
l1 = str_term_width1 (display_widgets [0].text) + 3;
i = str_term_width1 (display_widgets [1].text) + 5;
if (i > l1)
l1 = i;
@ -606,7 +607,7 @@ init_disp_bits_box (void)
cpname = _("&Select");
add_widget (dbits_dlg,
button_new (4, DISPX - 8 - strlen (cpname), B_USER,
button_new (4, DISPX - 8 - str_term_width1 (cpname), B_USER,
NORMAL_BUTTON, cpname, sel_charset_button));
return dbits_dlg;
@ -817,7 +818,7 @@ cd_dialog (void)
quick_widgets [1].y_divisions =
quick_widgets [0].y_divisions = Quick_input.ylen = 5;
len = strlen (quick_widgets [1].text);
len = str_term_width1 (quick_widgets [1].text);
quick_widgets [0].relative_x =
quick_widgets [1].relative_x + len + 1;
@ -976,7 +977,7 @@ jobs_cmd (void)
{
job_buttons [i].name = _(job_buttons [i].name);
len = strlen (job_buttons [i].name) + 4;
len = str_term_width1 (job_buttons [i].name) + 4;
JOBS_X = max (JOBS_X, startx + len + 3);
job_buttons [i].xpos = startx;
@ -985,7 +986,7 @@ jobs_cmd (void)
/* Last button - Ok a.k.a. Cancel :) */
job_buttons [n_buttons - 1].xpos =
JOBS_X - strlen (job_buttons [n_buttons - 1].name) - 7;
JOBS_X - str_term_width1 (job_buttons [n_buttons - 1].name) - 7;
i18n_flag = 1;
}
@ -1043,7 +1044,7 @@ vfs_smb_get_authinfo (const char *host, const char *share, const char *domain,
while (i--)
{
l1 = strlen (labs [i] = _(labs [i]));
l1 = str_term_width1 (labs [i] = _(labs [i]));
if (l1 > maxlen)
maxlen = l1;
}
@ -1053,7 +1054,7 @@ vfs_smb_get_authinfo (const char *host, const char *share, const char *domain,
for (i = sizeof(buts)/sizeof(buts[0]), l1 = 0; i--; )
{
l1 += strlen (buts [i] = _(buts [i]));
l1 += str_term_width1 (buts [i] = _(buts [i]));
}
l1 += 15;
if (l1 > dialog_x)
@ -1062,7 +1063,7 @@ vfs_smb_get_authinfo (const char *host, const char *share, const char *domain,
ilen = dialog_x - 7 - maxlen; /* for the case of very long buttons :) */
istart = dialog_x - 3 - ilen;
b2 = dialog_x - (strlen(buts[1]) + 6);
b2 = dialog_x - (str_term_width1 (buts[1]) + 6);
i18n_flag = 1;
}