Howdy.

Please reference the enclosed attachment for 2 dia bugfixes and one
preference change.  Read the disclaimer on the preference :).  It is
combined within the diffs nonetheless.

Cheers,
cjr



Attached are the diffs I made to dia.  This is relative to the
source (CVS) tree I had checked out.

There are several distinct changes:

 (1) grid display subsetting
 (2) default default [sic] values
 (3) font list bug fixes

The main trick is that #2 is a user-visible non-bug fix, which
everybody might not agree with my choices.  The best thing would
be to parameterize or config-file that (or figure out how it is
already config-file'd and just fix my environment)

  +- Donovan Kolbly      +1 512 493-8351   /
 /  Netpliance <[EMAIL PROTECTED]>   /
/  Pager <[EMAIL PROTECTED]>     /

pez:dia> cvs diff -c
cvs server: Diffing .
cvs server: Diffing app
Index: app/grid.c
===================================================================
RCS file: /cvs/gnome/dia/app/grid.c,v
retrieving revision 1.13
diff -c -r1.13 grid.c
*** app/grid.c  2000/02/26 11:54:52     1.13
--- app/grid.c  2000/04/19 15:53:48
***************
*** 33,43 ****
    int width = ddisp->renderer->pixel_width;
    int height = ddisp->renderer->pixel_height;
  
!   if ( (ddisplay_transform_length(ddisp, grid->width_x) <= 1.0) ||
!        (ddisplay_transform_length(ddisp, grid->width_y) <= 1.0) ) {
!     return;
    }
!   
    if (grid->visible) {
      real pos;
      int x,y;
--- 33,55 ----
    int width = ddisp->renderer->pixel_width;
    int height = ddisp->renderer->pixel_height;
  
!   double grid_dx, grid_dy;
!   int i, grid_skip;
!   static int skip_list[10] = { 1, 2, 5, 10, 25, 50, 100, 250, 500, 1000 };
! 
!   grid_dx = ddisplay_transform_length(ddisp, grid->width_x);
!   grid_dy = ddisplay_transform_length(ddisp, grid->width_y);
! 
!   i = 0;
!   while (i<10
!        && (grid_dx * skip_list[i]) < 10.0
!        && (grid_dy * skip_list[i]) < 10.0) {
!     i++;
    }
!   if (i == 10)
!     return; /* can't find a big enough skip size! */
!   grid_skip = skip_list[i];
! 
    if (grid->visible) {
      real pos;
      int x,y;
***************
*** 52,76 ****
      }
      
      /* Vertical lines: */
!     pos = ceil( update->left / grid->width_x )*grid->width_x;
      while (pos <= update->right) {
        ddisplay_transform_coords(ddisp, pos,0,&x,&y);
        (renderer->interactive_ops->draw_pixel_line)(renderer,
                                                   x, 0,
                                                   x, height,
                                                   &prefs.grid.colour);
!       pos += grid->width_x;
      }
  
      /* Horizontal lines: */
!     pos = ceil( update->top / grid->width_y )*grid->width_y;
      while (pos <= update->bottom) {
        ddisplay_transform_coords(ddisp, 0,pos,&x,&y);
        (renderer->interactive_ops->draw_pixel_line)(renderer,
                                                   0, y,
                                                   width, y,
                                                   &prefs.grid.colour);
!       pos += grid->width_y;
      }
    }
  
--- 64,88 ----
      }
      
      /* Vertical lines: */
!     pos = ceil( update->left / (grid->width_x * grid_skip) )*grid->width_x*grid_skip;
      while (pos <= update->right) {
        ddisplay_transform_coords(ddisp, pos,0,&x,&y);
        (renderer->interactive_ops->draw_pixel_line)(renderer,
                                                   x, 0,
                                                   x, height,
                                                   &prefs.grid.colour);
!       pos += grid->width_x * grid_skip;
      }
  
      /* Horizontal lines: */
!     pos = ceil( update->top / (grid->width_y * grid_skip) )*grid->width_y*grid_skip;
      while (pos <= update->bottom) {
        ddisplay_transform_coords(ddisp, 0,pos,&x,&y);
        (renderer->interactive_ops->draw_pixel_line)(renderer,
                                                   0, y,
                                                   width, y,
                                                   &prefs.grid.colour);
!       pos += grid->width_y * grid_skip;
      }
    }
  
Index: app/linewidth_area.c
===================================================================
RCS file: /cvs/gnome/dia/app/linewidth_area.c,v
retrieving revision 1.4
diff -c -r1.4 linewidth_area.c
*** app/linewidth_area.c        2000/02/09 01:41:11     1.4
--- app/linewidth_area.c        2000/04/19 15:53:48
***************
*** 19,28 ****
  #include "attributes.h"
  #include "intl.h"
  
- #define BASE_WIDTH 0.05
  #define PIXELS_BETWEEN_LINES 6
  #define NUMLINES 5
  
  #define X_OFFSET(i) (PIXELS_BETWEEN_LINES*(i)+((i)-1)*(i)/2)
  
  #define AREA_WIDTH X_OFFSET(NUMLINES+1)
--- 19,29 ----
  #include "attributes.h"
  #include "intl.h"
  
  #define PIXELS_BETWEEN_LINES 6
  #define NUMLINES 5
  
+ static float width_suite[NUMLINES] = { 0, 0.01, 0.02, 0.03, 0.05, 0.1 };
+ 
  #define X_OFFSET(i) (PIXELS_BETWEEN_LINES*(i)+((i)-1)*(i)/2)
  
  #define AREA_WIDTH X_OFFSET(NUMLINES+1)
***************
*** 131,139 ****
        target = linewidth_area_target (bevent->x, bevent->y);
  
        if (target != 0) {
          active_linewidth = target;
          linewidth_area_draw(widget);
!         attributes_set_default_linewidth(BASE_WIDTH*(target-1));
        }
        }
        break;
--- 132,145 ----
        target = linewidth_area_target (bevent->x, bevent->y);
  
        if (target != 0) {
+         float lw;
          active_linewidth = target;
          linewidth_area_draw(widget);
!         if ((target > 0) && (target <= NUMLINES))
!           lw = width_suite[target-1];
!         else
!           lw = 0.05*target;
!         attributes_set_default_linewidth(lw);
        }
        }
        break;
***************
*** 167,173 ****
                      (GtkSignalFunc) linewidth_area_events,
                      NULL);
  
!   attributes_set_default_linewidth(BASE_WIDTH*active_linewidth);
  
    linewidth_area_widget = linewidth_area;
    return linewidth_area;
--- 173,179 ----
                      (GtkSignalFunc) linewidth_area_events,
                      NULL);
  
!   attributes_set_default_linewidth(width_suite[active_linewidth]);
  
    linewidth_area_widget = linewidth_area;
    return linewidth_area;
***************
*** 175,189 ****
  
  static void
  linewidth_dialog_ok(GtkWidget *widget, gpointer data) {
!   float newvalue = 
gtk_spin_button_get_value_as_float(GTK_SPIN_BUTTON(linewidth_button));
!   if (fabs(newvalue/BASE_WIDTH-rint(newvalue/BASE_WIDTH)) > 0.0005 ||
!       (newvalue/BASE_WIDTH > NUMLINES)) {
!     active_linewidth = 0;
    } else {
!     active_linewidth = newvalue/BASE_WIDTH+1.0005;
    }
    linewidth_area_draw(GTK_WIDGET(linewidth_area_widget));
!   attributes_set_default_linewidth(newvalue);
    gtk_widget_hide(linewidth_dialog);
  }
  
--- 181,204 ----
  
  static void
  linewidth_dialog_ok(GtkWidget *widget, gpointer data) {
!   float lw = gtk_spin_button_get_value_as_float(GTK_SPIN_BUTTON(linewidth_button));
!   int i, best = 0;
! 
!   /* see if it is "pretty close" to an existing line width,
!    * and round it to that one if so
!    */
!   for (i=1; i<NUMLINES; i++) {
!     if (fabs( lw - width_suite[i] ) < fabs( lw - width_suite[best] ))
!       best = i;
!   }
!   if (fabs( lw - width_suite[best] ) < 0.0005) {
!     active_linewidth = best+1;
!     lw = width_suite[best];
    } else {
!     active_linewidth = 0;
    }
    linewidth_area_draw(GTK_WIDGET(linewidth_area_widget));
!   attributes_set_default_linewidth(lw);
    gtk_widget_hide(linewidth_dialog);
  }
  
cvs server: Diffing app/pixmaps
cvs server: Diffing broken-files
cvs server: Diffing doc
cvs server: Diffing lib
Index: lib/arrows.c
===================================================================
RCS file: /cvs/gnome/dia/lib/arrows.c,v
retrieving revision 1.7
diff -c -r1.7 arrows.c
*** lib/arrows.c        2000/03/03 17:05:52     1.7
--- lib/arrows.c        2000/04/19 15:53:48
***************
*** 358,363 ****
--- 358,397 ----
    
  }
  
+ static int 
+ arrow_needs_setback( ArrowType type )
+ {
+   switch (type)
+     {
+     case ARROW_HALF_HEAD:
+     case ARROW_HOLLOW_TRIANGLE:
+     case ARROW_FILLED_TRIANGLE:
+     case ARROW_HOLLOW_DIAMOND:
+     case ARROW_FILLED_DIAMOND:
+       return 1;
+     default:
+       return 0;
+     }
+ }
  
+ /*
+  *  set back the line for an arrow so that it doesn't
+  *  clobber the tip of the arrow
+  */
  
+ int
+ setback_points( Arrow *arrow, Point *from, Point *to )
+ {
+   if (arrow_needs_setback( arrow->type ))
+     {
+       Point d = *to;
  
+       point_sub( &d, from );
+       point_normalize( &d );
+       
+       point_scale( &d, arrow->length / 2.0 );
+       point_sub( to, &d );
+       return 1;
+     }
+   return 0;
+ }
Index: lib/arrows.h
===================================================================
RCS file: /cvs/gnome/dia/lib/arrows.h,v
retrieving revision 1.6
diff -c -r1.6 arrows.h
*** lib/arrows.h        2000/01/25 23:54:35     1.6
--- lib/arrows.h        2000/04/19 15:53:48
***************
*** 48,51 ****
--- 48,56 ----
                       real length, real width, real linewidth,
                       Color *fg_color, Color *bg_color);
  
+ /*
+  *  adjust `to' so it doesn't overwrite the tip of `arrow'
+  */
+ extern int setback_points(Arrow *arrow, Point *from, Point *to);
+ 
  #endif /* ARROWS_H */
Index: lib/attributes.c
===================================================================
RCS file: /cvs/gnome/dia/lib/attributes.c,v
retrieving revision 1.3
diff -c -r1.3 attributes.c
*** lib/attributes.c    1999/08/23 07:02:25     1.3
--- lib/attributes.c    2000/04/19 15:53:48
***************
*** 22,29 ****
  
  static real attributes_default_linewidth = 0.1;
  
! static Arrow attributes_start_arrow = { ARROW_NONE, 0.8, 0.8 };
! static Arrow attributes_end_arrow = { ARROW_NONE, 0.8, 0.8 };
  
  static LineStyle attributes_linestyle = LINESTYLE_SOLID;
  static real attributes_dash_length = 1.0;
--- 22,29 ----
  
  static real attributes_default_linewidth = 0.1;
  
! static Arrow attributes_start_arrow = { ARROW_NONE, 0.6, 0.2 };
! static Arrow attributes_end_arrow = { ARROW_NONE, 0.6, 0.2 };
  
  static LineStyle attributes_linestyle = LINESTYLE_SOLID;
  static real attributes_dash_length = 1.0;
Index: lib/text.c
===================================================================
RCS file: /cvs/gnome/dia/lib/text.c,v
retrieving revision 1.11
diff -c -r1.11 text.c
*** lib/text.c  1999/11/21 15:49:08     1.11
--- lib/text.c  2000/04/19 15:53:48
***************
*** 430,436 ****
      p2.y = curs_y + text->height;
      
      renderer->ops->set_linestyle(renderer, LINESTYLE_SOLID);
!     renderer->ops->set_linewidth(renderer, 0.1);
      renderer->ops->draw_line(renderer, &p1, &p2, &color_black);
    }
  }
--- 430,436 ----
      p2.y = curs_y + text->height;
      
      renderer->ops->set_linestyle(renderer, LINESTYLE_SOLID);
!     renderer->ops->set_linewidth(renderer, 0.0);
      renderer->ops->draw_line(renderer, &p1, &p2, &color_black);
    }
  }
Index: lib/widgets.c
===================================================================
RCS file: /cvs/gnome/dia/lib/widgets.c,v
retrieving revision 1.18
diff -c -r1.18 widgets.c
*** lib/widgets.c       2000/01/25 23:54:35     1.18
--- lib/widgets.c       2000/04/19 15:53:49
***************
*** 102,108 ****
        
        g_hash_table_insert(font_nr_hashtable,
                          fontname,
!                         GINT_TO_POINTER(i));
    
        list = g_list_next(list);
        i++;
--- 102,108 ----
        
        g_hash_table_insert(font_nr_hashtable,
                          fontname,
!                         GINT_TO_POINTER(i+1));
    
        list = g_list_next(list);
        i++;
***************
*** 132,138 ****
      message_error("Trying to set invalid font!\n");
      font_nr = 0;
    } else {
!     font_nr = GPOINTER_TO_INT(font_nr_ptr);
    }
    
    gtk_option_menu_set_history(GTK_OPTION_MENU(fs), font_nr);
--- 132,138 ----
      message_error("Trying to set invalid font!\n");
      font_nr = 0;
    } else {
!     font_nr = GPOINTER_TO_INT(font_nr_ptr)-1;
    }
    
    gtk_option_menu_set_history(GTK_OPTION_MENU(fs), font_nr);
Index: lib/widgets.h
===================================================================
RCS file: /cvs/gnome/dia/lib/widgets.h,v
retrieving revision 1.10
diff -c -r1.10 widgets.h
*** lib/widgets.h       1999/05/18 20:03:38     1.10
--- lib/widgets.h       2000/04/19 15:53:49
***************
*** 160,167 ****
  #define IS_DIAARROWSELECTOR(obj)       GTK_CHECK_TYPE (obj, 
dia_arrow_selector_get_type ())
  
  #define DEFAULT_ARROW ARROW_NONE
! #define DEFAULT_ARROW_LENGTH 0.8 
! #define DEFAULT_ARROW_WIDTH 0.8
  
  typedef struct _DiaArrowSelector       DiaArrowSelector;
  typedef struct _DiaArrowSelectorClass  DiaArrowSelectorClass;
--- 160,167 ----
  #define IS_DIAARROWSELECTOR(obj)       GTK_CHECK_TYPE (obj, 
dia_arrow_selector_get_type ())
  
  #define DEFAULT_ARROW ARROW_NONE
! #define DEFAULT_ARROW_LENGTH  0.3
! #define DEFAULT_ARROW_WIDTH   0.2
  
  typedef struct _DiaArrowSelector       DiaArrowSelector;
  typedef struct _DiaArrowSelectorClass  DiaArrowSelectorClass;
cvs server: Diffing lib/pixmaps
cvs server: Diffing objects
cvs server: Diffing objects/ER
cvs server: Diffing objects/ER/pixmaps
cvs server: Diffing objects/FS
cvs server: Diffing objects/FS/pixmaps
cvs server: Diffing objects/GRAFCET
cvs server: Diffing objects/GRAFCET/pixmaps
cvs server: Diffing objects/SADT
cvs server: Diffing objects/SADT/pixmaps
cvs server: Diffing objects/UML
cvs server: Diffing objects/UML/pixmaps
cvs server: Diffing objects/chronogram
cvs server: Diffing objects/chronogram/pixmaps
cvs server: Diffing objects/custom
cvs server: Diffing objects/custom/Circuit
cvs server: Diffing objects/custom/pixmaps
cvs server: Diffing objects/flowchart
cvs server: Diffing objects/flowchart/pixmaps
cvs server: Diffing objects/network
cvs server: Diffing objects/network/pixmaps
cvs server: Diffing objects/standard
Index: objects/standard/box.c
===================================================================
RCS file: /cvs/gnome/dia/objects/standard/box.c,v
retrieving revision 1.22
diff -c -r1.22 box.c
*** objects/standard/box.c      2000/02/18 11:27:28     1.22
--- objects/standard/box.c      2000/04/19 15:53:49
***************
*** 504,510 ****
  
    elem->corner = *startpoint;
    elem->width = DEFAULT_WIDTH;
!   elem->height = DEFAULT_WIDTH;
  
    box->border_width =  attributes_get_default_linewidth();
    box->border_color = attributes_get_foreground();
--- 504,510 ----
  
    elem->corner = *startpoint;
    elem->width = DEFAULT_WIDTH;
!   elem->height = DEFAULT_HEIGHT;
  
    box->border_width =  attributes_get_default_linewidth();
    box->border_color = attributes_get_foreground();
Index: objects/standard/line.c
===================================================================
RCS file: /cvs/gnome/dia/objects/standard/line.c,v
retrieving revision 1.24
diff -c -r1.24 line.c
*** objects/standard/line.c     2000/02/17 02:30:40     1.24
--- objects/standard/line.c     2000/04/19 15:53:50
***************
*** 242,261 ****
  static void
  line_draw(Line *line, Renderer *renderer)
  {
!   Point *endpoints;
!   
    assert(line != NULL);
    assert(renderer != NULL);
  
    endpoints = &line->connection.endpoints[0];
  
    renderer->ops->set_linewidth(renderer, line->line_width);
    renderer->ops->set_linestyle(renderer, line->line_style);
    renderer->ops->set_dashlength(renderer, line->dashlength);
    renderer->ops->set_linecaps(renderer, LINECAPS_BUTT);
  
    renderer->ops->draw_line(renderer,
!                          &endpoints[0], &endpoints[1],
                           &line->line_color);
  
    if (line->start_arrow.type != ARROW_NONE) {
--- 242,267 ----
  static void
  line_draw(Line *line, Renderer *renderer)
  {
!   Point from, to, *endpoints;
!   int setback_start, setback_end;
! 
    assert(line != NULL);
    assert(renderer != NULL);
  
    endpoints = &line->connection.endpoints[0];
+   from = endpoints[0];
+   to = endpoints[1];
  
    renderer->ops->set_linewidth(renderer, line->line_width);
    renderer->ops->set_linestyle(renderer, line->line_style);
    renderer->ops->set_dashlength(renderer, line->dashlength);
    renderer->ops->set_linecaps(renderer, LINECAPS_BUTT);
  
+   setback_points(&line->end_arrow, &endpoints[0], &to);
+   setback_points(&line->start_arrow, &endpoints[1], &from);
+ 
    renderer->ops->draw_line(renderer,
!                          &from, &to,
                           &line->line_color);
  
    if (line->start_arrow.type != ARROW_NONE) {
Index: objects/standard/polyline.c
===================================================================
RCS file: /cvs/gnome/dia/objects/standard/polyline.c,v
retrieving revision 1.17
diff -c -r1.17 polyline.c
*** objects/standard/polyline.c 2000/02/17 02:30:40     1.17
--- objects/standard/polyline.c 2000/04/19 15:53:50
***************
*** 204,213 ****
    PolyConn *poly = &polyline->poly;
    Point *points;
    int n;
    
-   points = &poly->points[0];
    n = poly->numpoints;
  
    renderer->ops->set_linewidth(renderer, polyline->line_width);
    renderer->ops->set_linestyle(renderer, polyline->line_style);
    renderer->ops->set_dashlength(renderer, polyline->dashlength);
--- 204,219 ----
    PolyConn *poly = &polyline->poly;
    Point *points;
    int n;
+   int setback_start, setback_end;
    
    n = poly->numpoints;
+   /* make a copy so we can setback if needed */
+   points = alloca(n * sizeof(Point));
+   memcpy(points, poly->points, sizeof(Point)*n);
  
+   setback_points(&polyline->start_arrow,&poly->points[1],&points[0]);
+   setback_points(&polyline->end_arrow,&poly->points[n-2],&points[n-1]);
+ 
    renderer->ops->set_linewidth(renderer, polyline->line_width);
    renderer->ops->set_linestyle(renderer, polyline->line_style);
    renderer->ops->set_dashlength(renderer, polyline->dashlength);
***************
*** 218,231 ****
  
    if (polyline->start_arrow.type != ARROW_NONE) {
      arrow_draw(renderer, polyline->start_arrow.type,
!              &points[0], &points[1],
               polyline->start_arrow.length, polyline->start_arrow.width,
               polyline->line_width,
               &polyline->line_color, &color_white);
    }
    if (polyline->end_arrow.type != ARROW_NONE) {
      arrow_draw(renderer, polyline->end_arrow.type,
!              &points[n-1], &points[n-2],
               polyline->end_arrow.length, polyline->end_arrow.width,
               polyline->line_width,
               &polyline->line_color, &color_white);
--- 224,237 ----
  
    if (polyline->start_arrow.type != ARROW_NONE) {
      arrow_draw(renderer, polyline->start_arrow.type,
!              &poly->points[0], &poly->points[1],
               polyline->start_arrow.length, polyline->start_arrow.width,
               polyline->line_width,
               &polyline->line_color, &color_white);
    }
    if (polyline->end_arrow.type != ARROW_NONE) {
      arrow_draw(renderer, polyline->end_arrow.type,
!              &poly->points[n-1], &poly->points[n-2],
               polyline->end_arrow.length, polyline->end_arrow.width,
               polyline->line_width,
               &polyline->line_color, &color_white);
Index: objects/standard/textobj.c
===================================================================
RCS file: /cvs/gnome/dia/objects/standard/textobj.c,v
retrieving revision 1.17
diff -c -r1.17 textobj.c
*** objects/standard/textobj.c  2000/02/17 02:30:40     1.17
--- objects/standard/textobj.c  2000/04/19 15:53:50
***************
*** 62,68 ****
  
  static TextobjDefaultsDialog *textobj_defaults_dialog;
  static TextobjProperties default_properties =
! { 1.0, NULL, ALIGN_CENTER }; /* Can't initialize the font here */
  
  static real textobj_distance_from(Textobj *textobj, Point *point);
  static void textobj_select(Textobj *textobj, Point *clicked_point,
--- 62,68 ----
  
  static TextobjDefaultsDialog *textobj_defaults_dialog;
  static TextobjProperties default_properties =
! { 0.3, NULL, ALIGN_CENTER }; /* Can't initialize the font here */
  
  static real textobj_distance_from(Textobj *textobj, Point *point);
  static void textobj_select(Textobj *textobj, Point *clicked_point,
***************
*** 236,242 ****
  init_defaults()
  {
    if (default_properties.font == NULL)
!     default_properties.font = font_getfont("Courier");
  }
  
  static GtkWidget *
--- 236,242 ----
  init_defaults()
  {
    if (default_properties.font == NULL)
!     default_properties.font = font_getfont("Times-Roman");
  }
  
  static GtkWidget *
Index: objects/standard/zigzagline.c
===================================================================
RCS file: /cvs/gnome/dia/objects/standard/zigzagline.c,v
retrieving revision 1.25
diff -c -r1.25 zigzagline.c
*** objects/standard/zigzagline.c       2000/02/17 02:30:40     1.25
--- objects/standard/zigzagline.c       2000/04/19 15:53:50
***************
*** 198,207 ****
    OrthConn *orth = &zigzagline->orth;
    Point *points;
    int n;
!   
!   points = &orth->points[0];
    n = orth->numpoints;
!   
    renderer->ops->set_linewidth(renderer, zigzagline->line_width);
    renderer->ops->set_linestyle(renderer, zigzagline->line_style);
    renderer->ops->set_dashlength(renderer, zigzagline->dashlength);
--- 198,213 ----
    OrthConn *orth = &zigzagline->orth;
    Point *points;
    int n;
!   int setback_start, setback_end;
! 
    n = orth->numpoints;
!   /* make a copy so we can setback if needed */
!   points = alloca(n * sizeof(Point));
!   memcpy(points, orth->points, sizeof(Point)*n);
! 
!   setback_points(&zigzagline->start_arrow,&orth->points[1],&points[0]);
!   setback_points(&zigzagline->end_arrow,&orth->points[n-2],&points[n-1]);
! 
    renderer->ops->set_linewidth(renderer, zigzagline->line_width);
    renderer->ops->set_linestyle(renderer, zigzagline->line_style);
    renderer->ops->set_dashlength(renderer, zigzagline->dashlength);
***************
*** 212,225 ****
    
    if (zigzagline->start_arrow.type != ARROW_NONE) {
      arrow_draw(renderer, zigzagline->start_arrow.type,
!              &points[0], &points[1],
               zigzagline->start_arrow.length, zigzagline->start_arrow.width, 
               zigzagline->line_width,
               &zigzagline->line_color, &color_white);
    }
    if (zigzagline->end_arrow.type != ARROW_NONE) {
      arrow_draw(renderer, zigzagline->end_arrow.type,
!              &points[n-1], &points[n-2],
               zigzagline->end_arrow.length, zigzagline->end_arrow.width, 
               zigzagline->line_width,
               &zigzagline->line_color, &color_white);
--- 218,231 ----
    
    if (zigzagline->start_arrow.type != ARROW_NONE) {
      arrow_draw(renderer, zigzagline->start_arrow.type,
!              &orth->points[0], &orth->points[1],
               zigzagline->start_arrow.length, zigzagline->start_arrow.width, 
               zigzagline->line_width,
               &zigzagline->line_color, &color_white);
    }
    if (zigzagline->end_arrow.type != ARROW_NONE) {
      arrow_draw(renderer, zigzagline->end_arrow.type,
!              &orth->points[n-1], &orth->points[n-2],
               zigzagline->end_arrow.length, zigzagline->end_arrow.width, 
               zigzagline->line_width,
               &zigzagline->line_color, &color_white);
cvs server: Diffing objects/standard/pixmaps
cvs server: Diffing objects/sybase
cvs server: Diffing objects/sybase/pixmaps
cvs server: Diffing plug-ins
cvs server: Diffing plug-ins/cgm
cvs server: Diffing plug-ins/python
cvs server: Diffing po
cvs server: Diffing samples
cvs server: Diffing shapes
cvs server: Diffing shapes/Circuit
cvs server: Diffing shapes/Circuit_eu
cvs server: Diffing shapes/Contact
cvs server: Diffing shapes/flowchart
cvs server: Diffing shapes/network
cvs server: Diffing sheets
cvs server: Diffing sheets/ER
cvs server: Diffing sheets/GRAFCET
cvs server: Diffing sheets/UML



-- 
A train stops at a train station.  A bus stops at a bus station.  On
my desk I have a workstation...

Reply via email to