forked from e16/e16
1
0
Fork 0

Make coordinate system in vertical sliders same as in horizontal.

SVN revision: 37628
This commit is contained in:
Kim Woelders 2008-11-14 18:30:45 +00:00
parent 6f1390acba
commit b85d1f0533
3 changed files with 38 additions and 48 deletions

View File

@ -1428,9 +1428,9 @@ CB_ConfigureBG(Dialog * d __UNUSED__, int val, void *data __UNUSED__)
tmp_bg->bg_tile = tmp_bg_tile;
tmp_bg->bg.keep_aspect = tmp_bg_keep_aspect;
tmp_bg->bg.xjust = tmp_bg_xjust;
tmp_bg->bg.yjust = 1024 - tmp_bg_yjust;
tmp_bg->bg.yjust = tmp_bg_yjust;
tmp_bg->bg.xperc = tmp_bg_xperc;
tmp_bg->bg.yperc = 1024 - tmp_bg_yperc;
tmp_bg->bg.yperc = tmp_bg_yperc;
if (!tmp_bg_image)
BackgroundFilesRemove(tmp_bg);
@ -1467,13 +1467,13 @@ CB_DesktopMiniDisplayRedraw(Dialog * d __UNUSED__, int val __UNUSED__,
fbg = (tmp_bg_image) ? BackgroundGetBgFile(tmp_bg) : NULL;
ffg = (tmp_bg_image) ? BackgroundGetFgFile(tmp_bg) : NULL;
SET_COLOR(&color, tmp_bg_r, tmp_bg_g, tmp_bg_b);
bg = BackgroundCreate("TEMP", &color, fbg, tmp_bg_tile,
tmp_bg_keep_aspect, tmp_bg_xjust,
1024 - tmp_bg_yjust, tmp_bg_xperc,
1024 - tmp_bg_yperc, ffg,
tmp_bg->top.keep_aspect, tmp_bg->top.xjust,
tmp_bg->top.yjust, tmp_bg->top.xperc,
tmp_bg->top.yperc);
bg = BackgroundCreate("TEMP", &color,
fbg, tmp_bg_tile, tmp_bg_keep_aspect,
tmp_bg_xjust, tmp_bg_yjust,
tmp_bg_xperc, tmp_bg_yperc,
ffg, tmp_bg->top.keep_aspect,
tmp_bg->top.xjust, tmp_bg->top.yjust,
tmp_bg->top.xperc, tmp_bg->top.yperc);
BackgroundApplyPmap(bg, win, pmap, w, h);
BackgroundDestroy(bg);
@ -1490,9 +1490,9 @@ BG_GetValues(void)
tmp_bg_tile = tmp_bg->bg_tile;
tmp_bg_keep_aspect = tmp_bg->bg.keep_aspect;
tmp_bg_xjust = tmp_bg->bg.xjust;
tmp_bg_yjust = 1024 - tmp_bg->bg.yjust;
tmp_bg_yjust = tmp_bg->bg.yjust;
tmp_bg_xperc = tmp_bg->bg.xperc;
tmp_bg_yperc = 1024 - tmp_bg->bg.yperc;
tmp_bg_yperc = tmp_bg->bg.yperc;
}
static void
@ -1559,13 +1559,13 @@ CB_ConfigureNewBG(Dialog * d __UNUSED__, int val __UNUSED__,
SET_COLOR(&color, tmp_bg_r, tmp_bg_g, tmp_bg_b);
tmp_bg = BackgroundCreate(s, &color, tmp_bg->bg.file, tmp_bg_tile,
tmp_bg_keep_aspect, tmp_bg_xjust,
1024 - tmp_bg_yjust, tmp_bg_xperc,
1024 - tmp_bg_yperc, tmp_bg->top.file,
tmp_bg->top.keep_aspect, tmp_bg->top.xjust,
tmp_bg->top.yjust, tmp_bg->top.xperc,
tmp_bg->top.yperc);
tmp_bg = BackgroundCreate(s, &color,
tmp_bg->bg.file, tmp_bg_tile, tmp_bg_keep_aspect,
tmp_bg_xjust, tmp_bg_yjust,
tmp_bg_xperc, tmp_bg_yperc,
tmp_bg->top.file, tmp_bg->top.keep_aspect,
tmp_bg->top.xjust, tmp_bg->top.yjust,
tmp_bg->top.xperc, tmp_bg->top.yperc);
DialogItemSliderGetBounds(bg_sel_slider, &lower, &upper);
upper += 4;

View File

@ -2405,7 +2405,7 @@ CB_ConfigureAreas(Dialog * d __UNUSED__, int val, void *data __UNUSED__)
{
if (val < 2)
{
SetNewAreaSize(tmp_area_x, 9 - tmp_area_y);
SetNewAreaSize(tmp_area_x, tmp_area_y);
Conf.desks.areas_wraparound = tmp_area_wraparound;
Conf.desks.edge_flip_mode = tmp_edge_flip;
if (tmp_edge_resist < 1)
@ -2450,13 +2450,13 @@ CB_AreaDisplayRedraw(Dialog * d __UNUSED__, int val, void *data)
ImageclassApplySimple(ic, awin, pmap, STATE_NORMAL, 0, 0, 18, 14);
}
EMoveResizeWindow(awin, ((w / 2) - (9 * tmp_area_x)),
((h / 2) - (7 * (9 - tmp_area_y))), 18 * tmp_area_x,
14 * (9 - tmp_area_y));
((h / 2) - (7 * tmp_area_y)), 18 * tmp_area_x,
14 * tmp_area_y);
EMapWindow(awin);
if ((tmp_area_x > 1) || ((9 - tmp_area_y) > 1))
Esnprintf(s, sizeof(s), _("%i x %i\nScreens in size"), tmp_area_x,
9 - tmp_area_y);
if ((tmp_area_x > 1) || (tmp_area_y > 1))
Esnprintf(s, sizeof(s), _("%i x %i\nScreens in size"),
tmp_area_x, tmp_area_y);
else
Esnprintf(s, sizeof(s), _("1\nScreen in size"));
DialogItemSetText(tmp_area_text, s);
@ -2481,7 +2481,6 @@ _DlgFillAreas(Dialog * d __UNUSED__, DItem * table, void *data __UNUSED__)
tmp_edge_resist = Conf.desks.edge_flip_resistance;
DesksGetAreaSize(&tmp_area_x, &tmp_area_y);
tmp_area_y = 9 - tmp_area_y;
DialogItemTableSetOptions(table, 1, 0, 0, 0);
@ -2490,8 +2489,8 @@ _DlgFillAreas(Dialog * d __UNUSED__, DItem * table, void *data __UNUSED__)
di = tmp_area_text = DialogAddItem(table, DITEM_TEXT);
if ((tmp_area_x > 1) || (tmp_area_y > 1))
Esnprintf(s, sizeof(s), _("%i x %i\nScreens in size"), tmp_area_x,
9 - tmp_area_y);
Esnprintf(s, sizeof(s), _("%i x %i\nScreens in size"),
tmp_area_x, tmp_area_y);
else
Esnprintf(s, sizeof(s), _("1\nScreen in size"));
DialogItemSetText(di, s);

View File

@ -1552,27 +1552,20 @@ DialogDrawItem(Dialog * d, DItem * di)
case DITEM_SLIDER:
if (di->item.slider.horizontal)
{
di->item.slider.knob_x =
di->item.slider.base_x +
(((di->item.slider.base_w -
di->item.slider.knob_w) * (di->item.slider.val -
di->item.slider.lower)) /
di->item.slider.knob_x = di->item.slider.base_x +
(((di->item.slider.base_w - di->item.slider.knob_w) *
(di->item.slider.val - di->item.slider.lower)) /
(di->item.slider.upper - di->item.slider.lower));
di->item.slider.knob_y =
di->item.slider.base_y +
di->item.slider.knob_y = di->item.slider.base_y +
((di->item.slider.base_h - di->item.slider.knob_h) / 2);
}
else
{
di->item.slider.knob_y =
(di->item.slider.base_y + di->item.slider.base_h -
di->item.slider.knob_h) -
(((di->item.slider.base_h -
di->item.slider.knob_h) * (di->item.slider.val -
di->item.slider.lower)) /
di->item.slider.knob_y = di->item.slider.base_y +
(((di->item.slider.base_h - di->item.slider.knob_h) *
(di->item.slider.val - di->item.slider.lower)) /
(di->item.slider.upper - di->item.slider.lower));
di->item.slider.knob_x =
di->item.slider.base_x +
di->item.slider.knob_x = di->item.slider.base_x +
((di->item.slider.base_w - di->item.slider.knob_w) / 2);
}
if (di->item.slider.knob_win)
@ -2106,7 +2099,6 @@ DItemEventMotion(Win win __UNUSED__, DItem * di, XEvent * ev)
sr = di->item.slider.base_h - di->item.slider.knob_h;
dx = ev->xbutton.y + di->item.slider.knob_y -
di->item.slider.knob_h / 2;
dx = sr - dx;
}
vr = di->item.slider.upper - di->item.slider.lower;
dx = (int)(((float)dx / (sr * di->item.slider.unit)) * vr + .5);
@ -2169,9 +2161,9 @@ DItemEventMouseDown(Win win, DItem * di, XEvent * ev)
{
if (ev->xbutton.y >
(di->item.slider.knob_y + (di->item.slider.knob_h / 2)))
di->item.slider.val -= di->item.slider.jump;
else
di->item.slider.val += di->item.slider.jump;
else
di->item.slider.val -= di->item.slider.jump;
}
break;
@ -2180,9 +2172,8 @@ DItemEventMouseDown(Win win, DItem * di, XEvent * ev)
di->item.slider.val = x *
(di->item.slider.upper - di->item.slider.lower) / di->w;
else
di->item.slider.val = ((di->h - y) *
(di->item.slider.upper -
di->item.slider.lower) / di->h);
di->item.slider.val = y *
(di->item.slider.upper - di->item.slider.lower) / di->h;
break;
case 4: