[widgets] Remove paddings

Signed-off-by: Julien Danjou <julien@danjou.info>
This commit is contained in:
Julien Danjou 2008-03-31 10:04:03 +02:00
parent 6439ab0597
commit c4cc8c5e04
3 changed files with 9 additions and 39 deletions

View File

@ -372,8 +372,6 @@ cfg_opt_t widget_graph_opts[] =
CFG_INT((char *) "width", 100, CFGF_NONE), CFG_INT((char *) "width", 100, CFGF_NONE),
/** Put new values onto the 'left' or 'right'. */ /** Put new values onto the 'left' or 'right'. */
CFG_POSITION((char *) "grow", (char *) "left", CFGF_NONE), CFG_POSITION((char *) "grow", (char *) "left", CFGF_NONE),
/** Empty space on the left in pixel. */
CFG_INT((char *) "padding_left", 0, CFGF_NONE),
/** Set height (i.e. 0.9 = 90%). */ /** Set height (i.e. 0.9 = 90%). */
CFG_FLOAT((char *) "height", 0.67, CFGF_NONE), CFG_FLOAT((char *) "height", 0.67, CFGF_NONE),
/** Background color. */ /** Background color. */
@ -426,8 +424,6 @@ cfg_opt_t widget_progressbar_opts[] =
CFG_INT((char *) "ticks_gap", 1, CFGF_NONE), CFG_INT((char *) "ticks_gap", 1, CFGF_NONE),
/** Number of 'ticks' to draw. */ /** Number of 'ticks' to draw. */
CFG_INT((char *) "ticks_count", 0, CFGF_NONE), CFG_INT((char *) "ticks_count", 0, CFGF_NONE),
/** Empty space on both sides. */
CFG_INT((char *) "padding", 0, CFGF_NONE),
/** Set height (i.e. 0.9 = 90%). */ /** Set height (i.e. 0.9 = 90%). */
CFG_FLOAT((char *) "height", 0.67, CFGF_NONE), CFG_FLOAT((char *) "height", 0.67, CFGF_NONE),
/** Draw the bar(s) vertically. */ /** Draw the bar(s) vertically. */

View File

@ -37,7 +37,6 @@ typedef struct
int width; /** Width of the widget */ int width; /** Width of the widget */
float height; /** Height of graph (0-1; 1 = height of statusbar) */ float height; /** Height of graph (0-1; 1 = height of statusbar) */
int box_height; /** Height of the innerbox in pixels */ int box_height; /** Height of the innerbox in pixels */
int padding_left; /** Left padding */
int size; /** Size of lines-array (also innerbox-lenght) */ int size; /** Size of lines-array (also innerbox-lenght) */
XColor bg; /** Background color */ XColor bg; /** Background color */
XColor bordercolor; /** Border color */ XColor bordercolor; /** Border color */
@ -85,7 +84,7 @@ static int
graph_draw(Widget *widget, DrawCtx *ctx, int offset, graph_draw(Widget *widget, DrawCtx *ctx, int offset,
int used __attribute__ ((unused))) int used __attribute__ ((unused)))
{ {
int margin_top, left_offset; int margin_top;
int z, y, x, tmp, cur_index, test_index; int z, y, x, tmp, cur_index, test_index;
Data *d = widget->data; Data *d = widget->data;
area_t rectangle, pattern_area; area_t rectangle, pattern_area;
@ -101,15 +100,13 @@ graph_draw(Widget *widget, DrawCtx *ctx, int offset,
if(!widget->user_supplied_y) if(!widget->user_supplied_y)
widget->area.y = 0; widget->area.y = 0;
left_offset = widget->area.x + d->padding_left;
/* box = the graph inside the rectangle */ /* box = the graph inside the rectangle */
if(!(d->box_height)) if(!(d->box_height))
d->box_height = (int) (widget->statusbar->height * d->height + 0.5) - 2; d->box_height = (int) (widget->statusbar->height * d->height + 0.5) - 2;
margin_top = (int)((widget->statusbar->height - (d->box_height + 2)) / 2 + 0.5) + widget->area.y; margin_top = (int)((widget->statusbar->height - (d->box_height + 2)) / 2 + 0.5) + widget->area.y;
rectangle.x = left_offset; rectangle.x = widget->area.x;
rectangle.y = margin_top; rectangle.y = margin_top;
rectangle.width = d->size + 2; rectangle.width = d->size + 2;
rectangle.height = d->box_height + 2; rectangle.height = d->box_height + 2;
@ -122,7 +119,7 @@ graph_draw(Widget *widget, DrawCtx *ctx, int offset,
draw_rectangle(ctx, rectangle, 1.0, True, d->bg); draw_rectangle(ctx, rectangle, 1.0, True, d->bg);
/* for graph drawing */ /* for graph drawing */
rectangle.x = left_offset + 2; rectangle.x = widget->area.x + 2;
rectangle.y = margin_top + d->box_height + 1; /* bottom left corner as starting point */ rectangle.y = margin_top + d->box_height + 1; /* bottom left corner as starting point */
rectangle.width = d->size; /* rectangle.height is not used */ rectangle.width = d->size; /* rectangle.height is not used */
@ -390,14 +387,6 @@ graph_new(Statusbar *statusbar, cfg_t *config)
d->width = cfg_getint(config, "width"); d->width = cfg_getint(config, "width");
d->height = cfg_getfloat(config, "height"); d->height = cfg_getfloat(config, "height");
d->padding_left = cfg_getint(config, "padding_left");
d->size = d->width - d->padding_left - 2;
if(d->size < 1)
{
warn("graph widget needs: (width - padding_left) >= 3\n");
return w;
}
if(!(d->data_items = cfg_size(config, "data"))) if(!(d->data_items = cfg_size(config, "data")))
{ {

View File

@ -39,8 +39,6 @@ typedef struct
char **data_title; char **data_title;
/** Width of the data_items */ /** Width of the data_items */
int width; int width;
/** Padding */
int padding;
/** Pixel between data items (bars) */ /** Pixel between data items (bars) */
int gap; int gap;
/** border width in pixels */ /** border width in pixels */
@ -78,14 +76,13 @@ Bool check_settings(Data *, int);
Bool Bool
check_settings(Data *d, int status_height) check_settings(Data *d, int status_height)
{ {
int simple, h_total, v_total; int simple, h_total;
v_total = d->width - d->padding;
h_total = (int)(status_height * d->height + 0.5); h_total = (int)(status_height * d->height + 0.5);
if(!d->vertical) /* horizontal */ if(!d->vertical) /* horizontal */
{ {
simple = v_total - 2 * (d->border_width + d->border_padding) - 1; simple = d->width - 2 * (d->border_width + d->border_padding) - 1;
if((d->ticks_count && simple - (d->ticks_count - 1) * d->ticks_gap - d->ticks_count + 1 < 0) || if((d->ticks_count && simple - (d->ticks_count - 1) * d->ticks_gap - d->ticks_count + 1 < 0) ||
(!d->ticks_count && simple < 0)) (!d->ticks_count && simple < 0))
{ {
@ -108,7 +105,7 @@ check_settings(Data *d, int status_height)
warn("progressbar's 'height' is too small for the given configuration options\n"); warn("progressbar's 'height' is too small for the given configuration options\n");
return False; return False;
} }
simple = v_total - d->data_items * (d->border_width + d->border_padding + 1) - (d->data_items - 1) * d->gap; simple = d->width - d->data_items * (d->border_width + d->border_padding + 1) - (d->data_items - 1) * d->gap;
if(simple < 0) if(simple < 0)
{ {
warn("progressbar's 'width' is too small for the given configuration options\n"); warn("progressbar's 'width' is too small for the given configuration options\n");
@ -152,7 +149,7 @@ progressbar_draw(Widget *widget, DrawCtx *ctx, int offset,
* 4. finally draw the gaps * 4. finally draw the gaps
*/ */
pb_x = widget->area.x + d->padding + 1; pb_x = widget->area.x + 1;
border_offset = d->border_width / 2; border_offset = d->border_width / 2;
pb_offset = 0; pb_offset = 0;
@ -166,7 +163,7 @@ progressbar_draw(Widget *widget, DrawCtx *ctx, int offset,
pb_height = unit * d->ticks_count - d->ticks_gap; /* rounded to match ticks... */ pb_height = unit * d->ticks_count - d->ticks_gap; /* rounded to match ticks... */
} }
pb_width = (int) ((d->width - d->padding - 2 * (d->border_width + d->border_padding) * d->data_items - pb_width = (int) ((d->width - 2 * (d->border_width + d->border_padding) * d->data_items -
d->gap * (d->data_items - 1)) / d->data_items); d->gap * (d->data_items - 1)) / d->data_items);
pb_y = widget->area.y + ((int) (widget->statusbar->height * (1 - d->height)) / 2) + d->border_width + d->border_padding; pb_y = widget->area.y + ((int) (widget->statusbar->height * (1 - d->height)) / 2) + d->border_width + d->border_padding;
@ -268,7 +265,7 @@ progressbar_draw(Widget *widget, DrawCtx *ctx, int offset,
} }
else /* a horizontal progressbar */ else /* a horizontal progressbar */
{ {
pb_width = d->width - d->padding - d->border_width - 2 * d->border_padding; pb_width = d->width - d->border_width - 2 * d->border_padding;
if(d->ticks_count && d->ticks_gap) if(d->ticks_count && d->ticks_gap)
{ {
unit = (pb_width + d->ticks_gap) / d->ticks_count; unit = (pb_width + d->ticks_gap) / d->ticks_count;
@ -443,17 +440,6 @@ progressbar_tell(Widget *widget, char *property, char *command)
return WIDGET_ERROR_CUSTOM; return WIDGET_ERROR_CUSTOM;
} }
} }
else if(!a_strcmp(property, "border_padding"))
{
tmp = d->padding;
d->padding = atoi(command);
if(!check_settings(d, widget->statusbar->height))
{
d->padding = tmp;
return WIDGET_ERROR_CUSTOM;
}
}
else else
return WIDGET_ERROR; return WIDGET_ERROR;
@ -480,7 +466,6 @@ progressbar_new(Statusbar *statusbar, cfg_t *config)
d->height = cfg_getfloat(config, "height"); d->height = cfg_getfloat(config, "height");
d->width = cfg_getint(config, "width"); d->width = cfg_getint(config, "width");
d->padding = cfg_getint(config, "padding");
d->border_padding = cfg_getint(config, "border_padding"); d->border_padding = cfg_getint(config, "border_padding");
d->ticks_gap = cfg_getint(config, "ticks_gap"); d->ticks_gap = cfg_getint(config, "ticks_gap");