goffice r2328 - in trunk: . goffice/graph plugins/plot_barcol
- From: jbrefort svn gnome org
- To: svn-commits-list gnome org
- Subject: goffice r2328 - in trunk: . goffice/graph plugins/plot_barcol
- Date: Fri, 6 Mar 2009 13:55:21 +0000 (UTC)
Author: jbrefort
Date: Fri Mar 6 13:55:21 2009
New Revision: 2328
URL: http://svn.gnome.org/viewvc/goffice?rev=2328&view=rev
Log:
2009-03-06 Jean Brefort <jean brefort normalesup org>
* goffice/graph/gog-renderer.c: (_draw_rectangle): revert previous
change.
* plugins/plot_barcol/gog-dropbar.c: (barcol_draw_rect): ensure that
the width and height are positive.
Modified:
trunk/ChangeLog
trunk/goffice/graph/gog-renderer.c
trunk/plugins/plot_barcol/gog-dropbar.c
Modified: trunk/goffice/graph/gog-renderer.c
==============================================================================
--- trunk/goffice/graph/gog-renderer.c (original)
+++ trunk/goffice/graph/gog-renderer.c Fri Mar 6 13:55:21 2009
@@ -659,7 +659,7 @@
{
GogStyle const *style;
GOPath *path;
- gboolean narrow = (fabs (rect->w) < 3.) || (fabs (rect->h) < 3.);
+ gboolean narrow = (rect->w < 3.) || (rect->h < 3.);
double o, o_2;
g_return_if_fail (IS_GOG_RENDERER (rend));
Modified: trunk/plugins/plot_barcol/gog-dropbar.c
==============================================================================
--- trunk/plugins/plot_barcol/gog-dropbar.c (original)
+++ trunk/plugins/plot_barcol/gog-dropbar.c Fri Mar 6 13:55:21 2009
@@ -105,12 +105,25 @@
GogViewAllocation const *rect)
{
GogViewAllocation r;
+ double t;
if (flip) {
r.x = gog_axis_map_to_view (x_map, rect->y);
- r.w = gog_axis_map_to_view (x_map, rect->y + rect->h) - r.x;
+ t = gog_axis_map_to_view (x_map, rect->y + rect->h);
+ if (t > r.x)
+ r.w = t - r.x;
+ else {
+ r.w = r.x - t;
+ r.x = t;
+ }
r.y = gog_axis_map_to_view (y_map, rect->x);
- r.h = gog_axis_map_to_view (y_map, rect->x + rect->w) - r.y;
+ t = gog_axis_map_to_view (y_map, rect->x + rect->w);
+ if (t > r.y)
+ r.h = t - r.y;
+ else {
+ r.h = r.y - t;
+ r.y = t;
+ }
if (fabs (r.w) < 1.) {
r.w += 1.;
r.x -= .5;
@@ -121,9 +134,21 @@
}
} else {
r.x = gog_axis_map_to_view (x_map, rect->x);
- r.w = gog_axis_map_to_view (x_map, rect->x + rect->w) - r.x;
+ t = gog_axis_map_to_view (x_map, rect->x + rect->w);
+ if (t > r.x)
+ r.w = t - r.x;
+ else {
+ r.w = r.x - t;
+ r.x = t;
+ }
r.y = gog_axis_map_to_view (y_map, rect->y);
- r.h = gog_axis_map_to_view (y_map, rect->y + rect->h) - r.y;
+ t = gog_axis_map_to_view (y_map, rect->y + rect->h);
+ if (t > r.y)
+ r.h = t - r.y;
+ else {
+ r.h = r.y - t;
+ r.y = t;
+ }
if (fabs (r.w) < 1.) {
r.w += 1.;
r.x -= .5;
@@ -133,7 +158,6 @@
r.y -= .5;
}
}
-
gog_renderer_draw_rectangle (rend, &r);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]