forked from AuroraMiddleware/gtk
levelbar: start filling from the bottom
As long as we don't have an API for explicitly inverting the bar, it makes more sense for the progress in vertical orientation to fill from the bottom.
This commit is contained in:
parent
7af52ba222
commit
4b3ed75f7d
@ -339,9 +339,14 @@ gtk_level_bar_draw_fill_continuous (GtkLevelBar *self,
|
||||
(self->priv->max_value - self->priv->min_value);
|
||||
|
||||
if (self->priv->orientation == GTK_ORIENTATION_HORIZONTAL)
|
||||
{
|
||||
block_area.width = (gint) floor (block_area.width * fill_percentage);
|
||||
}
|
||||
else
|
||||
{
|
||||
block_area.height = (gint) floor (block_area.height * fill_percentage);
|
||||
block_area.y += base_area.height - block_area.height;
|
||||
}
|
||||
|
||||
gtk_render_background (context, cr, block_area.x, block_area.y,
|
||||
block_area.width, block_area.height);
|
||||
@ -392,6 +397,7 @@ gtk_level_bar_draw_fill_discrete (GtkLevelBar *self,
|
||||
{
|
||||
block_draw_width = MAX (block_draw_width, block_area.width - block_margin.left - block_margin.right);
|
||||
block_area.x += block_margin.left;
|
||||
block_area.y += block_area.height - block_draw_height;
|
||||
}
|
||||
|
||||
for (idx = 0; idx < num_blocks; idx++)
|
||||
@ -399,7 +405,7 @@ gtk_level_bar_draw_fill_discrete (GtkLevelBar *self,
|
||||
if (self->priv->orientation == GTK_ORIENTATION_HORIZONTAL)
|
||||
block_area.x += block_margin.left;
|
||||
else
|
||||
block_area.y += block_margin.top;
|
||||
block_area.y -= block_margin.bottom;
|
||||
|
||||
if (idx > num_filled - 1)
|
||||
gtk_style_context_add_class (context, STYLE_CLASS_EMPTY_FILL_BLOCK);
|
||||
@ -414,7 +420,7 @@ gtk_level_bar_draw_fill_discrete (GtkLevelBar *self,
|
||||
if (self->priv->orientation == GTK_ORIENTATION_HORIZONTAL)
|
||||
block_area.x += block_draw_width + block_margin.right;
|
||||
else
|
||||
block_area.y += block_draw_height + block_margin.bottom;
|
||||
block_area.y -= block_draw_height + block_margin.top;
|
||||
}
|
||||
|
||||
gtk_style_context_restore (context);
|
||||
|
Loading…
Reference in New Issue
Block a user