mirror of
https://github.com/MidnightCommander/mc
synced 2025-02-04 09:24:18 +03:00
patches by Rostislav Beneš: mc-16-boxes
Some changes for correct display of boxes.
This commit is contained in:
parent
2423fabcf4
commit
f79ea0e917
55
src/boxes.c
55
src/boxes.c
@ -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;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user