summaryrefslogtreecommitdiff
path: root/objects
diff options
context:
space:
mode:
authorHans Breuer <hans@breuer.org>2014-06-01 22:13:16 +0200
committerHans Breuer <hans@breuer.org>2014-06-08 10:58:23 +0200
commite73883f26a6c1e247e5c47cb83b6508fa1443159 (patch)
treeba02812f8e0c1665a8854a9888547caeb70ffc87 /objects
parentfa11a8fd57059aa4ffcebe54aa5d1d6db2e2e7c1 (diff)
downloaddia-e73883f26a6c1e247e5c47cb83b6508fa1443159.tar.xz
DiaRenderer: refine set_linestyle to also contain dashlength
These two parameter are closely related, just fixed a bug where the line style was set without the dash length being set (i.e. still zero). Instead of putting all the burden on the renderer's site, just give both parameters at once.
Diffstat (limited to 'objects')
-rwxr-xr-xobjects/AADL/aadlbus.c2
-rwxr-xr-xobjects/AADL/aadldata.c2
-rwxr-xr-xobjects/AADL/aadldevice.c2
-rwxr-xr-xobjects/AADL/aadlmemory.c2
-rwxr-xr-xobjects/AADL/aadlpackage.c2
-rwxr-xr-xobjects/AADL/aadlport.c18
-rwxr-xr-xobjects/AADL/aadlprocess.c3
-rwxr-xr-xobjects/AADL/aadlprocessor.c2
-rwxr-xr-xobjects/AADL/aadlsubprogram.c2
-rwxr-xr-xobjects/AADL/aadlsystem.c3
-rw-r--r--objects/Database/reference.c3
-rw-r--r--objects/Database/table.c2
-rw-r--r--objects/ER/attribute.c10
-rw-r--r--objects/ER/entity.c4
-rw-r--r--objects/ER/participation.c2
-rw-r--r--objects/ER/relationship.c2
-rw-r--r--objects/FS/flow-ortho.c7
-rw-r--r--objects/FS/flow.c7
-rw-r--r--objects/FS/function.c8
-rw-r--r--objects/GRAFCET/action.c2
-rw-r--r--objects/GRAFCET/action_text_draw.c2
-rw-r--r--objects/GRAFCET/boolequation.c2
-rw-r--r--objects/GRAFCET/condition.c2
-rw-r--r--objects/GRAFCET/step.c2
-rw-r--r--objects/GRAFCET/transition.c2
-rw-r--r--objects/GRAFCET/vector.c2
-rw-r--r--objects/GRAFCET/vergent.c2
-rw-r--r--objects/Istar/goal.c2
-rw-r--r--objects/Istar/link.c2
-rw-r--r--objects/Istar/other.c2
-rw-r--r--objects/Jackson/domain.c2
-rw-r--r--objects/Jackson/phenomenon.c5
-rw-r--r--objects/Jackson/requirement.c3
-rw-r--r--objects/KAOS/goal.c2
-rw-r--r--objects/KAOS/metaandorrel.c2
-rw-r--r--objects/KAOS/metabinrel.c2
-rw-r--r--objects/KAOS/other.c2
-rw-r--r--objects/Misc/analog_clock.c2
-rw-r--r--objects/Misc/grid_object.c2
-rw-r--r--objects/Misc/measure.c2
-rw-r--r--objects/Misc/n_gon.c3
-rw-r--r--objects/Misc/tree.c2
-rw-r--r--objects/SADT/annotation.c2
-rw-r--r--objects/SADT/arrow.c2
-rw-r--r--objects/SADT/box.c2
-rw-r--r--objects/UML/activity.c19
-rw-r--r--objects/UML/actor.c2
-rw-r--r--objects/UML/association.c2
-rw-r--r--objects/UML/branch.c2
-rw-r--r--objects/UML/class.c5
-rw-r--r--objects/UML/classicon.c2
-rw-r--r--objects/UML/component.c2
-rw-r--r--objects/UML/component_feature.c2
-rw-r--r--objects/UML/constraint.c3
-rw-r--r--objects/UML/dependency.c3
-rw-r--r--objects/UML/fork.c2
-rw-r--r--objects/UML/generalization.c2
-rw-r--r--objects/UML/implements.c2
-rw-r--r--objects/UML/large_package.c2
-rw-r--r--objects/UML/lifeline.c7
-rw-r--r--objects/UML/message.c9
-rw-r--r--objects/UML/node.c2
-rw-r--r--objects/UML/note.c2
-rw-r--r--objects/UML/object.c2
-rw-r--r--objects/UML/realizes.c3
-rw-r--r--objects/UML/small_package.c2
-rw-r--r--objects/UML/state.c2
-rw-r--r--objects/UML/state_term.c2
-rw-r--r--objects/UML/transition.c2
-rw-r--r--objects/UML/usecase.c4
-rw-r--r--objects/chronogram/chronoline.c6
-rw-r--r--objects/chronogram/chronoref.c2
-rw-r--r--objects/custom/custom_object.c10
-rw-r--r--objects/flowchart/box.c3
-rw-r--r--objects/flowchart/diamond.c3
-rw-r--r--objects/flowchart/ellipse.c3
-rw-r--r--objects/flowchart/parallelogram.c3
-rw-r--r--objects/network/basestation.c2
-rw-r--r--objects/network/bus.c2
-rw-r--r--objects/network/radiocell.c3
-rw-r--r--objects/network/wanlink.c2
-rw-r--r--objects/standard/arc.c6
-rw-r--r--objects/standard/bezier.c3
-rw-r--r--objects/standard/beziergon.c3
-rw-r--r--objects/standard/box.c3
-rw-r--r--objects/standard/ellipse.c3
-rw-r--r--objects/standard/image.c3
-rw-r--r--objects/standard/line.c3
-rw-r--r--objects/standard/outline.c2
-rw-r--r--objects/standard/polygon.c3
-rw-r--r--objects/standard/polyline.c3
-rw-r--r--objects/standard/zigzagline.c3
92 files changed, 133 insertions, 168 deletions
diff --git a/objects/AADL/aadlbus.c b/objects/AADL/aadlbus.c
index 8ceb4f34..c1d88024 100755
--- a/objects/AADL/aadlbus.c
+++ b/objects/AADL/aadlbus.c
@@ -76,7 +76,7 @@ static void aadlbus_draw_borders(Aadlbox *aadlbox, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, AADLBOX_BORDERWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->draw_polygon(renderer, points, 10, &aadlbox->fill_color, &aadlbox->line_color);
}
diff --git a/objects/AADL/aadldata.c b/objects/AADL/aadldata.c
index 7447507f..d304efa6 100755
--- a/objects/AADL/aadldata.c
+++ b/objects/AADL/aadldata.c
@@ -47,7 +47,7 @@ aadldata_draw_borders(Aadlbox *aadlbox, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, AADLBOX_BORDERWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
points[0].x = x; points[0].y = y;
points[1].x = x + w; points[1].y = y + h;
diff --git a/objects/AADL/aadldevice.c b/objects/AADL/aadldevice.c
index 8d9f7f9e..f36ed9fe 100755
--- a/objects/AADL/aadldevice.c
+++ b/objects/AADL/aadldevice.c
@@ -46,7 +46,7 @@ static void aadldevice_draw_borders(Aadlbox *aadlbox, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, AADLBOX_BORDERWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
points[0].x = x; points[0].y = y;
points[1].x = x + w; points[1].y = y + h;
diff --git a/objects/AADL/aadlmemory.c b/objects/AADL/aadlmemory.c
index 7bf2d509..26c4a96c 100755
--- a/objects/AADL/aadlmemory.c
+++ b/objects/AADL/aadlmemory.c
@@ -72,7 +72,7 @@ static void aadlmemory_draw_borders(Aadlbox *aadlbox, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, AADLBOX_BORDERWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->draw_beziergon(renderer, bez, 5, &aadlbox->fill_color, &aadlbox->line_color);
diff --git a/objects/AADL/aadlpackage.c b/objects/AADL/aadlpackage.c
index 7169fa12..a0b19744 100755
--- a/objects/AADL/aadlpackage.c
+++ b/objects/AADL/aadlpackage.c
@@ -50,7 +50,7 @@ static void aadlpackage_draw_borders(Aadlbox *aadlbox, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, AADLBOX_BORDERWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
points[0].x = x; points[0].y = y;
points[1].x = x + 0.03 * w ; points[1].y = y;
diff --git a/objects/AADL/aadlport.c b/objects/AADL/aadlport.c
index 3b6ab139..6510a8ef 100755
--- a/objects/AADL/aadlport.c
+++ b/objects/AADL/aadlport.c
@@ -92,7 +92,7 @@ rotate_around_origin (Point *p, real angle) /* FIXME: no namespace */
\
renderer_ops->set_linewidth(renderer, AADL_PORT_LINEWIDTH); \
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER); \
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID); \
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0); \
\
renderer_ops->draw_polygon(renderer, p, 3, &color_black, &color_black);
@@ -116,7 +116,7 @@ rotate_around_origin (Point *p, real angle) /* FIXME: no namespace */
\
renderer_ops->set_linewidth(renderer, AADL_PORT_LINEWIDTH); \
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER); \
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID); \
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0); \
\
renderer_ops->draw_polyline(renderer, p, 3, &color_black);
@@ -140,7 +140,7 @@ rotate_around_origin (Point *p, real angle) /* FIXME: no namespace */
\
renderer_ops->set_linewidth(renderer, AADL_PORT_LINEWIDTH); \
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER); \
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID); \
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0); \
\
renderer_ops->draw_polygon(renderer, p, 3, &color_black, &color_black);
@@ -164,7 +164,7 @@ rotate_around_origin (Point *p, real angle) /* FIXME: no namespace */
\
renderer_ops->set_linewidth(renderer, AADL_PORT_LINEWIDTH); \
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER); \
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID); \
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0); \
\
renderer_ops->draw_polyline(renderer, p, 3, &color_black);
@@ -193,7 +193,7 @@ rotate_around_origin (Point *p, real angle) /* FIXME: no namespace */
\
renderer_ops->set_linewidth(renderer, AADL_PORT_LINEWIDTH); \
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER); \
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID); \
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0); \
\
renderer_ops->draw_polygon(renderer, p, 4, &color_black, &color_black);
@@ -224,7 +224,7 @@ rotate_around_origin (Point *p, real angle) /* FIXME: no namespace */
\
renderer_ops->set_linewidth(renderer, AADL_PORT_LINEWIDTH); \
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER); \
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID); \
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0); \
\
renderer_ops->draw_polygon(renderer, p, 4, NULL, &color_black);
@@ -272,7 +272,7 @@ aadlbox_draw_port(Aadlport *port, DiaRenderer *renderer)
renderer_ops->set_linewidth(renderer, AADL_PORT_LINEWIDTH);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->draw_polygon(renderer, p, 5, &color_white, &color_black);
@@ -308,7 +308,7 @@ aadlbox_draw_port(Aadlport *port, DiaRenderer *renderer)
renderer_ops->set_linewidth(renderer, AADL_PORT_LINEWIDTH);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->draw_polygon(renderer, p, 5, &color_white, &color_black);
@@ -367,7 +367,7 @@ aadlbox_draw_port(Aadlport *port, DiaRenderer *renderer)
renderer_ops->set_linewidth(renderer, AADL_PORT_LINEWIDTH);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->draw_ellipse(renderer, p,
6 * AADL_PORT_GROUP_SIZE,
diff --git a/objects/AADL/aadlprocess.c b/objects/AADL/aadlprocess.c
index af54d218..65f2a67c 100755
--- a/objects/AADL/aadlprocess.c
+++ b/objects/AADL/aadlprocess.c
@@ -55,8 +55,7 @@ void aadlbox_draw_inclined_box(Aadlbox *aadlbox, DiaRenderer *renderer,
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, AADLBOX_BORDERWIDTH);
- renderer_ops->set_linestyle(renderer, linestyle);
- renderer_ops->set_dashlength(renderer, AADLBOX_DASH_LENGTH);
+ renderer_ops->set_linestyle(renderer, linestyle, AADLBOX_DASH_LENGTH);
renderer_ops->draw_polygon(renderer, points, 4, &aadlbox->fill_color, &aadlbox->line_color);
}
diff --git a/objects/AADL/aadlprocessor.c b/objects/AADL/aadlprocessor.c
index ed351b81..9e56cab3 100755
--- a/objects/AADL/aadlprocessor.c
+++ b/objects/AADL/aadlprocessor.c
@@ -46,7 +46,7 @@ static void aadlprocessor_draw_borders(Aadlbox *aadlbox, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, AADLBOX_BORDERWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
points[0].x = x; points[0].y = y;
points[1].x = x + w; points[1].y = y + h;
diff --git a/objects/AADL/aadlsubprogram.c b/objects/AADL/aadlsubprogram.c
index 0ab2ad3f..80e41906 100755
--- a/objects/AADL/aadlsubprogram.c
+++ b/objects/AADL/aadlsubprogram.c
@@ -48,7 +48,7 @@ static void aadlsubprogram_draw_borders(Aadlbox *aadlbox, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, AADLBOX_BORDERWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->draw_ellipse(renderer, &center, w, h,
&aadlbox->fill_color, &aadlbox->line_color);
diff --git a/objects/AADL/aadlsystem.c b/objects/AADL/aadlsystem.c
index 5b16d3a6..a7e8db0a 100755
--- a/objects/AADL/aadlsystem.c
+++ b/objects/AADL/aadlsystem.c
@@ -87,8 +87,7 @@ void aadlbox_draw_rounded_box (Aadlbox *aadlbox, DiaRenderer *renderer,
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, AADLBOX_BORDERWIDTH);
- renderer_ops->set_linestyle(renderer, linestyle);
- renderer_ops->set_dashlength(renderer, AADLBOX_DASH_LENGTH);
+ renderer_ops->set_linestyle(renderer, linestyle, AADLBOX_DASH_LENGTH);
renderer_ops->draw_beziergon(renderer, bez, 9, &aadlbox->fill_color, &aadlbox->line_color);
}
diff --git a/objects/Database/reference.c b/objects/Database/reference.c
index ff982035..f85b6ef4 100644
--- a/objects/Database/reference.c
+++ b/objects/Database/reference.c
@@ -225,8 +225,7 @@ reference_draw (TableReference *ref, DiaRenderer *renderer)
num_points = orth->numpoints;
renderer_ops->set_linewidth (renderer, ref->line_width);
- renderer_ops->set_linestyle (renderer, ref->line_style);
- renderer_ops->set_dashlength (renderer, ref->dashlength);
+ renderer_ops->set_linestyle (renderer, ref->line_style, ref->dashlength);
renderer_ops->set_linejoin (renderer, LINEJOIN_MITER);
renderer_ops->set_linecaps (renderer, LINECAPS_BUTT);
diff --git a/objects/Database/table.c b/objects/Database/table.c
index 0128a277..67f85f26 100644
--- a/objects/Database/table.c
+++ b/objects/Database/table.c
@@ -529,7 +529,7 @@ table_draw (Table *table, DiaRenderer *renderer)
renderer_ops->set_linewidth (renderer, table->border_width);
renderer_ops->set_fillstyle (renderer, FILLSTYLE_SOLID);
- renderer_ops->set_linestyle (renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle (renderer, LINESTYLE_SOLID, 0.0);
elem = &table->element;
diff --git a/objects/ER/attribute.c b/objects/ER/attribute.c
index b63b6afc..61651c3a 100644
--- a/objects/ER/attribute.c
+++ b/objects/ER/attribute.c
@@ -276,10 +276,9 @@ attribute_draw(Attribute *attribute, DiaRenderer *renderer)
renderer_ops->set_linewidth(renderer, attribute->border_width);
if (attribute->derived) {
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
- renderer_ops->set_dashlength(renderer, 0.3);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, 0.3);
} else {
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
}
renderer_ops->draw_ellipse (renderer, &center,
@@ -305,10 +304,9 @@ attribute_draw(Attribute *attribute, DiaRenderer *renderer)
if (attribute->key || attribute->weakkey) {
if (attribute->weakkey) {
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
- renderer_ops->set_dashlength(renderer, 0.3);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, 0.3);
} else {
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
}
width = dia_font_string_width(attribute->name,
attribute->font, attribute->font_height);
diff --git a/objects/ER/entity.c b/objects/ER/entity.c
index 2107e50f..999d9d5e 100644
--- a/objects/ER/entity.c
+++ b/objects/ER/entity.c
@@ -249,7 +249,7 @@ entity_draw(Entity *entity, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, entity->border_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->draw_rect(renderer,
@@ -282,7 +282,7 @@ entity_draw(Entity *entity, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, entity->border_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->draw_polygon (renderer, corners, 4,
diff --git a/objects/ER/participation.c b/objects/ER/participation.c
index 6fea3f91..71ccf3b3 100644
--- a/objects/ER/participation.c
+++ b/objects/ER/participation.c
@@ -208,7 +208,7 @@ participation_draw(Participation *participation, DiaRenderer *renderer)
last_right = 0.0;
renderer_ops->set_linewidth(renderer, PARTICIPATION_WIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
diff --git a/objects/ER/relationship.c b/objects/ER/relationship.c
index f539caa8..1f89c566 100644
--- a/objects/ER/relationship.c
+++ b/objects/ER/relationship.c
@@ -267,7 +267,7 @@ relationship_draw(Relationship *relationship, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, relationship->border_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->draw_polygon(renderer, corners, 4,
diff --git a/objects/FS/flow-ortho.c b/objects/FS/flow-ortho.c
index 3f662f27..7905a384 100644
--- a/objects/FS/flow-ortho.c
+++ b/objects/FS/flow-ortho.c
@@ -360,18 +360,17 @@ orthflow_draw(Orthflow *orthflow, DiaRenderer *renderer)
switch (orthflow->type) {
case ORTHFLOW_SIGNAL:
linewidth = ORTHFLOW_WIDTH;
- renderer_ops->set_dashlength(renderer, ORTHFLOW_DASHLEN);
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, ORTHFLOW_DASHLEN);
render_color = &orthflow_color_signal ;
break ;
case ORTHFLOW_MATERIAL:
linewidth = ORTHFLOW_MATERIAL_WIDTH;
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
render_color = &orthflow_color_material ;
break ;
case ORTHFLOW_ENERGY:
linewidth = ORTHFLOW_WIDTH;
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
render_color = &orthflow_color_energy ;
break ;
default:
diff --git a/objects/FS/flow.c b/objects/FS/flow.c
index 05a88dbd..b60914c7 100644
--- a/objects/FS/flow.c
+++ b/objects/FS/flow.c
@@ -329,18 +329,17 @@ flow_draw(Flow *flow, DiaRenderer *renderer)
switch (flow->type) {
case FLOW_SIGNAL:
- renderer_ops->set_dashlength(renderer, FLOW_DASHLEN);
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, FLOW_DASHLEN);
render_color = &flow_color_signal ;
break ;
case FLOW_MATERIAL:
renderer_ops->set_linewidth(renderer, FLOW_MATERIAL_WIDTH ) ;
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
render_color = &flow_color_material ;
break ;
case FLOW_ENERGY:
render_color = &flow_color_energy ;
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
}
p1 = endpoints[n1];
diff --git a/objects/FS/function.c b/objects/FS/function.c
index d699631c..b34fe188 100644
--- a/objects/FS/function.c
+++ b/objects/FS/function.c
@@ -302,10 +302,10 @@ function_draw(Function *pkg, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, font_height / FUNCTION_BORDERWIDTH_SCALE );
- renderer_ops->set_linestyle(renderer, pkg->is_wish ? LINESTYLE_DASHED : LINESTYLE_SOLID);
- if ( pkg->is_wish )
- renderer_ops->set_dashlength( renderer, font_height / FUNCTION_DASHLENGTH_SCALE ) ;
-
+ if (pkg->is_wish)
+ renderer_ops->set_linestyle( renderer, LINESTYLE_DASHED, font_height / FUNCTION_DASHLENGTH_SCALE ) ;
+ else
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
p1.x = x; p1.y = y;
p2.x = x+w; p2.y = y+h;
diff --git a/objects/GRAFCET/action.c b/objects/GRAFCET/action.c
index fd695c82..54d7068a 100644
--- a/objects/GRAFCET/action.c
+++ b/objects/GRAFCET/action.c
@@ -330,7 +330,7 @@ action_draw(Action *action, DiaRenderer *renderer)
Color cl;
renderer_ops->set_linewidth(renderer, ACTION_LINE_WIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
/* first, draw the line or polyline from the step to the action label */
diff --git a/objects/GRAFCET/action_text_draw.c b/objects/GRAFCET/action_text_draw.c
index e6a2cabd..d5565c6c 100644
--- a/objects/GRAFCET/action_text_draw.c
+++ b/objects/GRAFCET/action_text_draw.c
@@ -98,7 +98,7 @@ action_text_draw(Text *text, DiaRenderer *renderer)
p2.x = curs_x;
p2.y = curs_y + text->height;
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linewidth(renderer, 0.1);
renderer_ops->draw_line(renderer, &p1, &p2, &color_black);
}
diff --git a/objects/GRAFCET/boolequation.c b/objects/GRAFCET/boolequation.c
index f446783a..58b9c5a7 100644
--- a/objects/GRAFCET/boolequation.c
+++ b/objects/GRAFCET/boolequation.c
@@ -293,7 +293,7 @@ overlineblock_draw(Block *block,Boolequation *booleq,DiaRenderer *renderer)
Point ul,ur;
g_assert(block); g_assert(block->type == BLOCK_OVERLINE);
block->d.inside->ops->draw(block->d.inside,booleq,renderer);
- renderer_ops->set_linestyle(renderer,LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer,LINESTYLE_SOLID, 0.0);
renderer_ops->set_linewidth(renderer,booleq->fontheight * OVERLINE_RATIO);
ul.x = block->bl.x;
ur.y = ul.y = block->ur.y;
diff --git a/objects/GRAFCET/condition.c b/objects/GRAFCET/condition.c
index 99841069..49876c5b 100644
--- a/objects/GRAFCET/condition.c
+++ b/objects/GRAFCET/condition.c
@@ -294,7 +294,7 @@ condition_draw(Condition *condition, DiaRenderer *renderer)
Connection *conn = &condition->connection;
renderer_ops->set_linewidth(renderer, CONDITION_LINE_WIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
if (CONDITION_ARROW_SIZE > (CONDITION_LINE_WIDTH/2.0)) {
diff --git a/objects/GRAFCET/step.c b/objects/GRAFCET/step.c
index 6ad1526b..5de8f85c 100644
--- a/objects/GRAFCET/step.c
+++ b/objects/GRAFCET/step.c
@@ -331,7 +331,7 @@ step_draw(Step *step, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, STEP_LINE_WIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
pts[0] = step->north.pos;
diff --git a/objects/GRAFCET/transition.c b/objects/GRAFCET/transition.c
index 870ceb12..152f7c9c 100644
--- a/objects/GRAFCET/transition.c
+++ b/objects/GRAFCET/transition.c
@@ -343,7 +343,7 @@ transition_draw(Transition *transition, DiaRenderer *renderer)
DiaRendererClass *renderer_ops = DIA_RENDERER_GET_CLASS (renderer);
Point pts[6];
renderer_ops->set_linewidth(renderer, TRANSITION_LINE_WIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
pts[0] = transition->north.pos;
diff --git a/objects/GRAFCET/vector.c b/objects/GRAFCET/vector.c
index 32806d70..a23bb782 100644
--- a/objects/GRAFCET/vector.c
+++ b/objects/GRAFCET/vector.c
@@ -207,7 +207,7 @@ arc_draw(Arc *arc, DiaRenderer *renderer)
n = orth->numpoints;
renderer_ops->set_linewidth(renderer, ARC_LINE_WIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
diff --git a/objects/GRAFCET/vergent.c b/objects/GRAFCET/vergent.c
index 7e206b0c..4bd2771c 100644
--- a/objects/GRAFCET/vergent.c
+++ b/objects/GRAFCET/vergent.c
@@ -245,7 +245,7 @@ vergent_draw(Vergent *vergent, DiaRenderer *renderer)
Connection *conn = &vergent->connection;
Point p1,p2;
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
switch(vergent->type) {
case VERGENT_OR:
diff --git a/objects/Istar/goal.c b/objects/Istar/goal.c
index 96d836dd..21588bef 100644
--- a/objects/Istar/goal.c
+++ b/objects/Istar/goal.c
@@ -321,7 +321,7 @@ goal_draw(Goal *goal, DiaRenderer *renderer)
elem = &goal->element;
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->set_linewidth(renderer, GOAL_LINE_WIDTH);
diff --git a/objects/Istar/link.c b/objects/Istar/link.c
index 44174b9b..340f90f1 100644
--- a/objects/Istar/link.c
+++ b/objects/Istar/link.c
@@ -506,7 +506,7 @@ link_draw(Link *link, DiaRenderer *renderer)
/** drawing line **/
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linewidth(renderer, w);
renderer_ops->draw_bezier_with_arrows(renderer, link->line, 3, w, &LINK_FG_COLOR, NULL, &arrow);
diff --git a/objects/Istar/other.c b/objects/Istar/other.c
index 0c6f58ac..df32736a 100644
--- a/objects/Istar/other.c
+++ b/objects/Istar/other.c
@@ -300,7 +300,7 @@ other_draw(Other *other, DiaRenderer *renderer)
elem = &other->element;
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
switch (other->type) {
diff --git a/objects/Jackson/domain.c b/objects/Jackson/domain.c
index a0f308e3..b961c375 100644
--- a/objects/Jackson/domain.c
+++ b/objects/Jackson/domain.c
@@ -350,7 +350,7 @@ jackson_box_draw(Box *box, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, JACKSON_BOX_LINE_WIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->draw_rect(renderer, &b0, &b1, &JACKSON_BOX_BG_COLOR, &JACKSON_BOX_FG_COLOR);
diff --git a/objects/Jackson/phenomenon.c b/objects/Jackson/phenomenon.c
index df644dcc..9f7075c9 100644
--- a/objects/Jackson/phenomenon.c
+++ b/objects/Jackson/phenomenon.c
@@ -275,11 +275,10 @@ message_draw(Message *message, DiaRenderer *renderer)
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
if (message->type==MSG_REQ) {
- renderer_ops->set_dashlength(renderer, MESSAGE_DASHLEN);
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, MESSAGE_DASHLEN);
arrow.type = ARROW_FILLED_TRIANGLE;
} else {
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
arrow.type = ARROW_NONE;
}
diff --git a/objects/Jackson/requirement.c b/objects/Jackson/requirement.c
index 5f19bb61..9498f86c 100644
--- a/objects/Jackson/requirement.c
+++ b/objects/Jackson/requirement.c
@@ -242,8 +242,7 @@ req_draw(Requirement *req, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, REQ_LINEWIDTH);
- renderer_ops->set_dashlength(renderer, REQ_DASHLEN);
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, REQ_DASHLEN);
renderer_ops->draw_ellipse(renderer, &c, w, h, &color_white, &color_black);
diff --git a/objects/KAOS/goal.c b/objects/KAOS/goal.c
index 2b1c5d6c..403b4402 100644
--- a/objects/KAOS/goal.c
+++ b/objects/KAOS/goal.c
@@ -394,7 +394,7 @@ goal_draw(Goal *goal, DiaRenderer *renderer)
break;
}
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
if (goal->type!=SOFTGOAL) {
diff --git a/objects/KAOS/metaandorrel.c b/objects/KAOS/metaandorrel.c
index 12056594..510f53da 100644
--- a/objects/KAOS/metaandorrel.c
+++ b/objects/KAOS/metaandorrel.c
@@ -447,7 +447,7 @@ maor_draw(Maor *maor, DiaRenderer *renderer)
/** drawing directed line **/
renderer_ops->set_linewidth(renderer, MAOR_WIDTH);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0);
renderer_ops->draw_line_with_arrows(renderer,&p1,&p2,MAOR_WIDTH,&MAOR_FG_COLOR,NULL,&arrow);
/** drawing vector decoration **/
diff --git a/objects/KAOS/metabinrel.c b/objects/KAOS/metabinrel.c
index fc4ab283..b8c96a18 100644
--- a/objects/KAOS/metabinrel.c
+++ b/objects/KAOS/metabinrel.c
@@ -381,7 +381,7 @@ mbr_draw(Mbr *mbr, DiaRenderer *renderer)
/** drawing directed line **/
renderer_ops->set_linewidth(renderer, MBR_WIDTH);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
dx=p1.x-p2.x;
dy=p1.y-p2.y;
diff --git a/objects/KAOS/other.c b/objects/KAOS/other.c
index d398bf76..8d4fac27 100644
--- a/objects/KAOS/other.c
+++ b/objects/KAOS/other.c
@@ -348,7 +348,7 @@ other_draw(Other *other, DiaRenderer *renderer)
assert(other != NULL);
assert(renderer != NULL);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
if (other->type==AGENT) {
diff --git a/objects/Misc/analog_clock.c b/objects/Misc/analog_clock.c
index c2d31c71..51cd651a 100644
--- a/objects/Misc/analog_clock.c
+++ b/objects/Misc/analog_clock.c
@@ -319,7 +319,7 @@ analog_clock_draw(Analog_Clock *analog_clock, DiaRenderer *renderer)
g_assert(renderer != NULL);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0);
renderer_ops->set_linewidth(renderer, analog_clock->border_line_width);
renderer_ops->draw_ellipse(renderer,&analog_clock->centre,
diff --git a/objects/Misc/grid_object.c b/objects/Misc/grid_object.c
index 5d161294..c572d970 100644
--- a/objects/Misc/grid_object.c
+++ b/objects/Misc/grid_object.c
@@ -332,7 +332,7 @@ grid_object_draw(Grid_Object *grid_object, DiaRenderer *renderer)
lr_corner.y = elem->corner.y + elem->height;
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
/* draw gridlines */
renderer_ops->set_linewidth(renderer, grid_object->gridline_width);
diff --git a/objects/Misc/measure.c b/objects/Misc/measure.c
index 5469c103..7b962688 100644
--- a/objects/Misc/measure.c
+++ b/objects/Misc/measure.c
@@ -265,7 +265,7 @@ measure_draw(Measure *measure, DiaRenderer *renderer)
Arrow arrow = MEASURE_ARROW(measure);
DIA_RENDERER_GET_CLASS (renderer)->set_linewidth (renderer, measure->line_width);
- DIA_RENDERER_GET_CLASS (renderer)->set_linestyle (renderer, LINESTYLE_SOLID);
+ DIA_RENDERER_GET_CLASS (renderer)->set_linestyle (renderer, LINESTYLE_SOLID, 0.0);
DIA_RENDERER_GET_CLASS (renderer)->set_linejoin(renderer, LINEJOIN_MITER);
DIA_RENDERER_GET_CLASS (renderer)->set_linecaps(renderer, LINECAPS_ROUND);
diff --git a/objects/Misc/n_gon.c b/objects/Misc/n_gon.c
index c41c80fe..ac921722 100644
--- a/objects/Misc/n_gon.c
+++ b/objects/Misc/n_gon.c
@@ -234,9 +234,8 @@ _ngon_draw(Ngon *ng, DiaRenderer *renderer)
g_return_if_fail (ng->points->len);
renderer_ops->set_linewidth(renderer, ng->line_width);
- renderer_ops->set_linestyle(renderer, ng->line_style);
+ renderer_ops->set_linestyle(renderer, ng->line_style, ng->dashlength);
renderer_ops->set_linejoin(renderer, ng->line_join);
- renderer_ops->set_dashlength(renderer, ng->dashlength);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
if (ng->pattern)
dia_pattern_get_fallback_color (ng->pattern, &fill);
diff --git a/objects/Misc/tree.c b/objects/Misc/tree.c
index cad88236..1576d4bd 100644
--- a/objects/Misc/tree.c
+++ b/objects/Misc/tree.c
@@ -303,7 +303,7 @@ tree_draw(Tree *tree, DiaRenderer *renderer)
endpoints = &tree->real_ends[0];
renderer_ops->set_linewidth(renderer, LINE_WIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
renderer_ops->draw_line(renderer,
diff --git a/objects/SADT/annotation.c b/objects/SADT/annotation.c
index 463db4e4..1464b08a 100644
--- a/objects/SADT/annotation.c
+++ b/objects/SADT/annotation.c
@@ -286,7 +286,7 @@ annotation_draw(Annotation *annotation, DiaRenderer *renderer)
assert(renderer != NULL);
renderer_ops->set_linewidth(renderer, ANNOTATION_LINE_WIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
vect = annotation->connection.endpoints[1];
diff --git a/objects/SADT/arrow.c b/objects/SADT/arrow.c
index 268dd7a6..f59d3de0 100644
--- a/objects/SADT/arrow.c
+++ b/objects/SADT/arrow.c
@@ -250,7 +250,7 @@ sadtarrow_draw(Sadtarrow *sadtarrow, DiaRenderer *renderer)
n = orth->numpoints;
renderer_ops->set_linewidth(renderer, ARROW_LINE_WIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
col = sadtarrow->line_color;
diff --git a/objects/SADT/box.c b/objects/SADT/box.c
index 76fd3c9d..1981db41 100644
--- a/objects/SADT/box.c
+++ b/objects/SADT/box.c
@@ -280,7 +280,7 @@ sadtbox_draw(Box *box, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, SADTBOX_LINE_WIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->draw_rect(renderer,
diff --git a/objects/UML/activity.c b/objects/UML/activity.c
index 216c19a7..a7245317 100644
--- a/objects/UML/activity.c
+++ b/objects/UML/activity.c
@@ -223,16 +223,15 @@ state_draw(State *state, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, STATE_LINEWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
-
- p1.x = x;
- p1.y = y;
- p2.x = x + w;
- p2.y = y + h;
- renderer_ops->draw_rounded_rect(renderer, &p1, &p2,
- &state->fill_color, &state->line_color, 1.0);
-
- text_draw(state->text, renderer);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
+
+ p1.x = x;
+ p1.y = y;
+ p2.x = x + w;
+ p2.y = y + h;
+ renderer_ops->draw_rounded_rect(renderer, &p1, &p2,
+ &state->fill_color, &state->line_color, 1.0);
+ text_draw(state->text, renderer);
}
diff --git a/objects/UML/actor.c b/objects/UML/actor.c
index 5a034da2..a65d7c15 100644
--- a/objects/UML/actor.c
+++ b/objects/UML/actor.c
@@ -230,7 +230,7 @@ actor_draw(Actor *actor, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, actor->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
r = ACTOR_HEAD(actor_height);
r1 = 2*r;
diff --git a/objects/UML/association.c b/objects/UML/association.c
index caac8c51..95356990 100644
--- a/objects/UML/association.c
+++ b/objects/UML/association.c
@@ -419,7 +419,7 @@ association_draw(Association *assoc, DiaRenderer *renderer)
n = orth->numpoints;
renderer_ops->set_linewidth(renderer, assoc->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
diff --git a/objects/UML/branch.c b/objects/UML/branch.c
index 0e86940a..cd56026d 100644
--- a/objects/UML/branch.c
+++ b/objects/UML/branch.c
@@ -216,7 +216,7 @@ static void branch_draw(Branch *branch, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, BRANCH_BORDERWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->draw_polygon(renderer, points, 4, &branch->fill_color, &branch->line_color);
}
diff --git a/objects/UML/class.c b/objects/UML/class.c
index dcbfa34b..98516492 100644
--- a/objects/UML/class.c
+++ b/objects/UML/class.c
@@ -1129,8 +1129,7 @@ umlclass_draw_template_parameters_box(UMLClass *umlclass, DiaRenderer *renderer,
LowerRight.x += umlclass->templates_width;
LowerRight.y += umlclass->templates_height;
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
- renderer_ops->set_dashlength(renderer, 0.3);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, 0.3);
renderer_ops->draw_rect(renderer, &UpperLeft, &LowerRight, fill_color, line_color);
TextInsert.x += 0.3;
@@ -1177,7 +1176,7 @@ umlclass_draw(UMLClass *umlclass, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, umlclass->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
elem = &umlclass->element;
diff --git a/objects/UML/classicon.c b/objects/UML/classicon.c
index ac25e10e..f6dd9b92 100644
--- a/objects/UML/classicon.c
+++ b/objects/UML/classicon.c
@@ -265,7 +265,7 @@ classicon_draw(Classicon *icon, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, icon->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->draw_ellipse(renderer,
&center,
diff --git a/objects/UML/component.c b/objects/UML/component.c
index 887defc2..6562c386 100644
--- a/objects/UML/component.c
+++ b/objects/UML/component.c
@@ -237,7 +237,7 @@ component_draw(Component *cmp, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, COMPONENT_BORDERWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
p1.x = x + COMPONENT_CWIDTH/2; p1.y = y;
p2.x = x+w; p2.y = y+h;
diff --git a/objects/UML/component_feature.c b/objects/UML/component_feature.c
index 4b04c32e..49a75ec7 100644
--- a/objects/UML/component_feature.c
+++ b/objects/UML/component_feature.c
@@ -331,7 +331,7 @@ compfeat_draw(Compfeat *compfeat, DiaRenderer *renderer)
n = orth->numpoints;
renderer_ops->set_linewidth(renderer, compfeat->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
if (compfeat->orth.orientation[orth->numorient - 1] == HORIZONTAL) {
diff --git a/objects/UML/constraint.c b/objects/UML/constraint.c
index 35baf3bf..9f853394 100644
--- a/objects/UML/constraint.c
+++ b/objects/UML/constraint.c
@@ -260,8 +260,7 @@ constraint_draw(Constraint *constraint, DiaRenderer *renderer)
endpoints = &constraint->connection.endpoints[0];
renderer_ops->set_linewidth(renderer, constraint->line_width);
- renderer_ops->set_dashlength(renderer, CONSTRAINT_DASHLEN);
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, CONSTRAINT_DASHLEN);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
arrow.type = ARROW_LINES;
diff --git a/objects/UML/dependency.c b/objects/UML/dependency.c
index 2ca6957e..f5cdd892 100644
--- a/objects/UML/dependency.c
+++ b/objects/UML/dependency.c
@@ -237,8 +237,7 @@ dependency_draw(Dependency *dep, DiaRenderer *renderer)
n = orth->numpoints;
renderer_ops->set_linewidth(renderer, dep->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
- renderer_ops->set_dashlength(renderer, DEPENDENCY_DASHLEN);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, DEPENDENCY_DASHLEN);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
diff --git a/objects/UML/fork.c b/objects/UML/fork.c
index 02e922d9..8669b339 100644
--- a/objects/UML/fork.c
+++ b/objects/UML/fork.c
@@ -216,7 +216,7 @@ fork_draw(Fork *branch, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, FORK_BORDERWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
p1.x = elem->corner.x;
p1.y = elem->corner.y;
diff --git a/objects/UML/generalization.c b/objects/UML/generalization.c
index c4a9b012..21c762c6 100644
--- a/objects/UML/generalization.c
+++ b/objects/UML/generalization.c
@@ -231,7 +231,7 @@ generalization_draw(Generalization *genlz, DiaRenderer *renderer)
n = orth->numpoints;
renderer_ops->set_linewidth(renderer, genlz->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
diff --git a/objects/UML/implements.c b/objects/UML/implements.c
index 769d21a1..a8306442 100644
--- a/objects/UML/implements.c
+++ b/objects/UML/implements.c
@@ -269,7 +269,7 @@ implements_draw(Implements *implements, DiaRenderer *renderer)
endpoints = &implements->connection.endpoints[0];
renderer_ops->set_linewidth(renderer, implements->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
renderer_ops->draw_line(renderer,
diff --git a/objects/UML/large_package.c b/objects/UML/large_package.c
index 63f2c992..b6e5b726 100644
--- a/objects/UML/large_package.c
+++ b/objects/UML/large_package.c
@@ -253,7 +253,7 @@ largepackage_draw(LargePackage *pkg, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, pkg->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
p1.x = x; p1.y = y;
diff --git a/objects/UML/lifeline.c b/objects/UML/lifeline.c
index d0755d07..c110a2bb 100644
--- a/objects/UML/lifeline.c
+++ b/objects/UML/lifeline.c
@@ -371,10 +371,7 @@ lifeline_draw(Lifeline *lifeline, DiaRenderer *renderer)
endpoints = &lifeline->connection.endpoints[0];
renderer_ops->set_linewidth(renderer, LIFELINE_LINEWIDTH);
- renderer_ops->set_dashlength(renderer, LIFELINE_DASHLEN);
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
-
-
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, LIFELINE_DASHLEN);
/* Ok, instead rendering one big line between two endpoints we just
from endpoints to rtop and rbottom respectively.
@@ -393,7 +390,7 @@ lifeline_draw(Lifeline *lifeline, DiaRenderer *renderer)
renderer_ops->set_linewidth(renderer, LIFELINE_BOXWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
p1.x = endpoints[0].x - LIFELINE_WIDTH/2.0;
p1.y = endpoints[0].y + lifeline->rtop;
diff --git a/objects/UML/message.c b/objects/UML/message.c
index 0160383f..1e2f9a75 100644
--- a/objects/UML/message.c
+++ b/objects/UML/message.c
@@ -310,13 +310,12 @@ message_draw(Message *message, DiaRenderer *renderer)
}
if (message->type==MESSAGE_RETURN) {
- renderer_ops->set_dashlength(renderer, MESSAGE_DASHLEN);
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, MESSAGE_DASHLEN);
n1 = 0;
n2 = 1;
- } else
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
-
+ } else {
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
+ }
p1 = endpoints[n1];
p2 = endpoints[n2];
diff --git a/objects/UML/node.c b/objects/UML/node.c
index afe165a7..e9111f97 100644
--- a/objects/UML/node.c
+++ b/objects/UML/node.c
@@ -245,7 +245,7 @@ static void node_draw(Node *node, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, node->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
/* Draw outer box */
points[0].x = x; points[0].y = y;
diff --git a/objects/UML/note.c b/objects/UML/note.c
index dd032416..fa39f2c9 100644
--- a/objects/UML/note.c
+++ b/objects/UML/note.c
@@ -230,7 +230,7 @@ note_draw(Note *note, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, note->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
poly[0].x = x;
poly[0].y = y;
diff --git a/objects/UML/object.c b/objects/UML/object.c
index 97c47b40..6673d1f9 100644
--- a/objects/UML/object.c
+++ b/objects/UML/object.c
@@ -294,7 +294,7 @@ objet_draw(Objet *ob, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, bw);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
p1.x = x; p1.y = y;
diff --git a/objects/UML/realizes.c b/objects/UML/realizes.c
index 30c7c418..fcb2ede1 100644
--- a/objects/UML/realizes.c
+++ b/objects/UML/realizes.c
@@ -230,8 +230,7 @@ realizes_draw(Realizes *realize, DiaRenderer *renderer)
n = orth->numpoints;
renderer_ops->set_linewidth(renderer, realize->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
- renderer_ops->set_dashlength(renderer, REALIZES_DASHLEN);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, REALIZES_DASHLEN);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
diff --git a/objects/UML/small_package.c b/objects/UML/small_package.c
index 85df8891..16d36294 100644
--- a/objects/UML/small_package.c
+++ b/objects/UML/small_package.c
@@ -252,7 +252,7 @@ smallpackage_draw(SmallPackage *pkg, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, pkg->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
p1.x = x; p1.y = y;
p2.x = x+w; p2.y = y+h;
diff --git a/objects/UML/state.c b/objects/UML/state.c
index f6f653ac..e1de050a 100644
--- a/objects/UML/state.c
+++ b/objects/UML/state.c
@@ -283,7 +283,7 @@ state_draw(State *state, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, state->line_width);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
if (state->state_type!=STATE_NORMAL) {
p1.x = x + w/2;
diff --git a/objects/UML/state_term.c b/objects/UML/state_term.c
index 59e85078..fb851d38 100644
--- a/objects/UML/state_term.c
+++ b/objects/UML/state_term.c
@@ -213,7 +213,7 @@ state_draw(State *state, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, STATE_LINEWIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0);
p1.x = x + w/2;
p1.y = y + h/2;
diff --git a/objects/UML/transition.c b/objects/UML/transition.c
index 0d5ab9ad..9ca169c6 100644
--- a/objects/UML/transition.c
+++ b/objects/UML/transition.c
@@ -359,7 +359,7 @@ static void transition_draw(Transition* transition, DiaRenderer* renderer)
renderer_ops->set_linewidth(renderer, TRANSITION_WIDTH);
/* TODO, find out about the meaning of this... */
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
if (transition->direction_inverted) {
start_arrow = &arrow;
diff --git a/objects/UML/usecase.c b/objects/UML/usecase.c
index 8a2d43ba..c52e8efd 100644
--- a/objects/UML/usecase.c
+++ b/objects/UML/usecase.c
@@ -264,9 +264,9 @@ usecase_draw(Usecase *usecase, DiaRenderer *renderer)
renderer_ops->set_linewidth(renderer, usecase->line_width);
if (usecase->collaboration)
- renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DASHED, 1.0);
else
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->draw_ellipse(renderer,
&c,
diff --git a/objects/chronogram/chronoline.c b/objects/chronogram/chronoline.c
index abf0b746..c7f07434 100644
--- a/objects/chronogram/chronoline.c
+++ b/objects/chronogram/chronoline.c
@@ -382,7 +382,7 @@ chronoline_draw_really(Chronoline *chronoline, DiaRenderer *renderer,
lst = chronoline->evtlist;
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linewidth(renderer,chronoline->data_lwidth);
while (lst) {
@@ -435,7 +435,7 @@ chronoline_draw(Chronoline *chronoline, DiaRenderer *renderer)
elem = &chronoline->element;
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
- renderer_ops->set_linestyle(renderer, LINESTYLE_DOTTED);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DOTTED, 1.0);
renderer_ops->set_linewidth(renderer, chronoline->main_lwidth);
p1.x = elem->corner.x + elem->width;
p1.y = elem->corner.y;
@@ -444,7 +444,7 @@ chronoline_draw(Chronoline *chronoline, DiaRenderer *renderer)
chronoline_draw_really(chronoline,renderer,TRUE);
chronoline_draw_really(chronoline,renderer,FALSE);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
lr_corner.x = elem->corner.x + elem->width;
lr_corner.y = elem->corner.y + elem->height;
diff --git a/objects/chronogram/chronoref.c b/objects/chronogram/chronoref.c
index aa207bc1..a82e532d 100644
--- a/objects/chronogram/chronoref.c
+++ b/objects/chronogram/chronoref.c
@@ -273,7 +273,7 @@ chronoref_draw(Chronoref *chronoref, DiaRenderer *renderer)
elem = &chronoref->element;
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
diff --git a/objects/custom/custom_object.c b/objects/custom/custom_object.c
index 9cb032fb..9e22a9e4 100644
--- a/objects/custom/custom_object.c
+++ b/objects/custom/custom_object.c
@@ -865,8 +865,7 @@ custom_draw(Custom *custom, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, custom->border_width);
cur_line = custom->border_width;
- renderer_ops->set_linestyle(renderer, cur_style);
- renderer_ops->set_dashlength(renderer, custom->dashlength);
+ renderer_ops->set_linestyle(renderer, cur_style, custom->dashlength);
renderer_ops->set_linecaps(renderer, cur_caps);
renderer_ops->set_linejoin(renderer, cur_join);
@@ -941,12 +940,13 @@ custom_draw_element(GraphicElement* el, Custom *custom, DiaRenderer *renderer,
(*cur_style) != custom->line_style) || el->any.s.linestyle != (*cur_style)) {
(*cur_style) = (el->any.s.linestyle!=DIA_SVG_LINESTYLE_DEFAULT) ?
el->any.s.linestyle : custom->line_style;
- renderer_ops->set_linestyle(renderer, (*cur_style));
+ renderer_ops->set_linestyle(renderer, (*cur_style),
+ custom->dashlength*(*cur_dash));
}
if (el->any.s.dashlength != (*cur_dash)) {
(*cur_dash) = el->any.s.dashlength;
- renderer_ops->set_dashlength(renderer,
- custom->dashlength*(*cur_dash));
+ renderer_ops->set_linestyle(renderer, (*cur_style),
+ custom->dashlength*(*cur_dash));
}
(*cur_line) = el->any.s.line_width;
diff --git a/objects/flowchart/box.c b/objects/flowchart/box.c
index 1ae65dc2..5441d958 100644
--- a/objects/flowchart/box.c
+++ b/objects/flowchart/box.c
@@ -332,8 +332,7 @@ box_draw(Box *box, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, box->border_width);
- renderer_ops->set_linestyle(renderer, box->line_style);
- renderer_ops->set_dashlength(renderer, box->dashlength);
+ renderer_ops->set_linestyle(renderer, box->line_style, box->dashlength);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
/* Problem: How do we make the fill with rounded corners?
* It's solved in the base class ...
diff --git a/objects/flowchart/diamond.c b/objects/flowchart/diamond.c
index ffa37abb..47fc99e8 100644
--- a/objects/flowchart/diamond.c
+++ b/objects/flowchart/diamond.c
@@ -347,8 +347,7 @@ diamond_draw(Diamond *diamond, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, diamond->border_width);
- renderer_ops->set_linestyle(renderer, diamond->line_style);
- renderer_ops->set_dashlength(renderer, diamond->dashlength);
+ renderer_ops->set_linestyle(renderer, diamond->line_style, diamond->dashlength);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->draw_polygon (renderer,
diff --git a/objects/flowchart/ellipse.c b/objects/flowchart/ellipse.c
index 8b4d67dd..5a312a93 100644
--- a/objects/flowchart/ellipse.c
+++ b/objects/flowchart/ellipse.c
@@ -336,8 +336,7 @@ ellipse_draw(Ellipse *ellipse, DiaRenderer *renderer)
if (ellipse->show_background)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, ellipse->border_width);
- renderer_ops->set_linestyle(renderer, ellipse->line_style);
- renderer_ops->set_dashlength(renderer, ellipse->dashlength);
+ renderer_ops->set_linestyle(renderer, ellipse->line_style, ellipse->dashlength);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->draw_ellipse (renderer, &center,
diff --git a/objects/flowchart/parallelogram.c b/objects/flowchart/parallelogram.c
index 7d4a20af..1a12922e 100644
--- a/objects/flowchart/parallelogram.c
+++ b/objects/flowchart/parallelogram.c
@@ -357,8 +357,7 @@ pgram_draw(Pgram *pgram, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linewidth(renderer, pgram->border_width);
- renderer_ops->set_linestyle(renderer, pgram->line_style);
- renderer_ops->set_dashlength(renderer, pgram->dashlength);
+ renderer_ops->set_linestyle(renderer, pgram->line_style, pgram->dashlength);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->draw_polygon (renderer,
diff --git a/objects/network/basestation.c b/objects/network/basestation.c
index 6bba40f2..87be9473 100644
--- a/objects/network/basestation.c
+++ b/objects/network/basestation.c
@@ -245,7 +245,7 @@ basestation_draw(Basestation *basestation, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linejoin(renderer, LINEJOIN_ROUND);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0);
renderer_ops->set_linewidth(renderer, BASESTATION_LINEWIDTH);
ct.x = x + w/2.0;
diff --git a/objects/network/bus.c b/objects/network/bus.c
index 70725423..3333058b 100644
--- a/objects/network/bus.c
+++ b/objects/network/bus.c
@@ -311,7 +311,7 @@ bus_draw(Bus *bus, DiaRenderer *renderer)
endpoints = &bus->real_ends[0];
renderer_ops->set_linewidth(renderer, LINE_WIDTH);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
renderer_ops->draw_line(renderer,
diff --git a/objects/network/radiocell.c b/objects/network/radiocell.c
index c422bf5b..1aaad215 100644
--- a/objects/network/radiocell.c
+++ b/objects/network/radiocell.c
@@ -256,9 +256,8 @@ radiocell_draw(RadioCell *radiocell, DiaRenderer *renderer)
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
- renderer_ops->set_linestyle(renderer, radiocell->line_style);
+ renderer_ops->set_linestyle(renderer, radiocell->line_style, radiocell->dashlength);
renderer_ops->set_linewidth(renderer, radiocell->line_width);
- renderer_ops->set_dashlength(renderer, radiocell->dashlength);
renderer_ops->draw_polygon(renderer, points, n,
(radiocell->show_background) ? &radiocell->fill_colour : NULL,
&radiocell->line_colour);
diff --git a/objects/network/wanlink.c b/objects/network/wanlink.c
index a9666753..61b4c1f3 100644
--- a/objects/network/wanlink.c
+++ b/objects/network/wanlink.c
@@ -225,7 +225,7 @@ wanlink_draw (WanLink *wanlink, DiaRenderer *renderer)
renderer_ops->set_linewidth(renderer, FLASH_LINE);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
- renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_SOLID, 0.0);
renderer_ops->draw_polygon (renderer, wanlink->poly, WANLINK_POLY_LEN,
&wanlink->fill_color, &wanlink->line_color);
diff --git a/objects/standard/arc.c b/objects/standard/arc.c
index c40af2a7..0b276fbe 100644
--- a/objects/standard/arc.c
+++ b/objects/standard/arc.c
@@ -610,8 +610,7 @@ arc_draw(Arc *arc, DiaRenderer *renderer)
arc_compute_midpoint(arc, &gaptmp[0], &gaptmp[1], &gaptmp[2]);
renderer_ops->set_linewidth(renderer, arc->line_width);
- renderer_ops->set_linestyle(renderer, arc->line_style);
- renderer_ops->set_dashlength(renderer, arc->dashlength);
+ renderer_ops->set_linestyle(renderer, arc->line_style, arc->dashlength);
renderer_ops->set_linecaps(renderer, arc->line_caps);
/* Special case when almost line: */
@@ -657,8 +656,7 @@ arc_draw(Arc *arc, DiaRenderer *renderer)
Color line_color = { 0.0, 0.0, 0.6, 1.0 };
renderer_ops->set_linewidth(renderer, 0);
- renderer_ops->set_linestyle(renderer, LINESTYLE_DOTTED);
- renderer_ops->set_dashlength(renderer, 1);
+ renderer_ops->set_linestyle(renderer, LINESTYLE_DOTTED, 1);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
diff --git a/objects/standard/bezier.c b/objects/standard/bezier.c
index e3286a27..183ceab5 100644
--- a/objects/standard/bezier.c
+++ b/objects/standard/bezier.c
@@ -373,8 +373,7 @@ bezierline_draw(Bezierline *bezierline, DiaRenderer *renderer)
DiaRendererClass *renderer_ops = DIA_RENDERER_GET_CLASS (renderer);
renderer_ops->set_linewidth(renderer, bezierline->line_width);
- renderer_ops->set_linestyle(renderer, bezierline->line_style);
- renderer_ops->set_dashlength(renderer, bezierline->dashlength);
+ renderer_ops->set_linestyle(renderer, bezierline->line_style, bezierline->dashlength);
renderer_ops->set_linejoin(renderer, bezierline->line_join);
renderer_ops->set_linecaps(renderer, bezierline->line_caps);
diff --git a/objects/standard/beziergon.c b/objects/standard/beziergon.c
index 9484eaf0..6e905c53 100644
--- a/objects/standard/beziergon.c
+++ b/objects/standard/beziergon.c
@@ -225,8 +225,7 @@ beziergon_draw(Beziergon *beziergon, DiaRenderer *renderer)
n = bez->bezier.num_points;
renderer_ops->set_linewidth(renderer, beziergon->line_width);
- renderer_ops->set_linestyle(renderer, beziergon->line_style);
- renderer_ops->set_dashlength(renderer, beziergon->dashlength);
+ renderer_ops->set_linestyle(renderer, beziergon->line_style, beziergon->dashlength);
renderer_ops->set_linejoin(renderer, beziergon->line_join);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
diff --git a/objects/standard/box.c b/objects/standard/box.c
index 172ea554..db8165cc 100644
--- a/objects/standard/box.c
+++ b/objects/standard/box.c
@@ -312,8 +312,7 @@ box_draw(Box *box, DiaRenderer *renderer)
lr_corner.y = elem->corner.y + elem->height;
renderer_ops->set_linewidth(renderer, box->border_width);
- renderer_ops->set_linestyle(renderer, box->line_style);
- renderer_ops->set_dashlength(renderer, box->dashlength);
+ renderer_ops->set_linestyle(renderer, box->line_style, box->dashlength);
if (box->corner_radius > 0)
renderer_ops->set_linejoin(renderer, LINEJOIN_ROUND);
else
diff --git a/objects/standard/ellipse.c b/objects/standard/ellipse.c
index 7f2e6929..7fc7e807 100644
--- a/objects/standard/ellipse.c
+++ b/objects/standard/ellipse.c
@@ -309,8 +309,7 @@ ellipse_draw(Ellipse *ellipse, DiaRenderer *renderer)
center.y = elem->corner.y + elem->height/2;
renderer_ops->set_linewidth(renderer, ellipse->border_width);
- renderer_ops->set_linestyle(renderer, ellipse->line_style);
- renderer_ops->set_dashlength(renderer, ellipse->dashlength);
+ renderer_ops->set_linestyle(renderer, ellipse->line_style, ellipse->dashlength);
if (ellipse->show_background) {
Color fill = ellipse->inner_color;
renderer_ops->set_fillstyle(renderer, FILLSTYLE_SOLID);
diff --git a/objects/standard/image.c b/objects/standard/image.c
index 16fef119..95125b8a 100644
--- a/objects/standard/image.c
+++ b/objects/standard/image.c
@@ -406,8 +406,7 @@ image_draw(Image *image, DiaRenderer *renderer)
if (image->draw_border) {
renderer_ops->set_linewidth(renderer, image->border_width);
- renderer_ops->set_linestyle(renderer, image->line_style);
- renderer_ops->set_dashlength(renderer, image->dashlength);
+ renderer_ops->set_linestyle(renderer, image->line_style, image->dashlength);
renderer_ops->set_linejoin(renderer, LINEJOIN_MITER);
renderer_ops->draw_rect(renderer,
diff --git a/objects/standard/line.c b/objects/standard/line.c
index f2f2edf3..3627a38a 100644
--- a/objects/standard/line.c
+++ b/objects/standard/line.c
@@ -444,8 +444,7 @@ line_draw(Line *line, DiaRenderer *renderer)
assert(renderer != NULL);
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_linestyle(renderer, line->line_style, line->dashlength);
renderer_ops->set_linecaps(renderer, line->line_caps);
if (line->absolute_start_gap || line->absolute_end_gap ) {
diff --git a/objects/standard/outline.c b/objects/standard/outline.c
index 147b0e5d..1cb5541a 100644
--- a/objects/standard/outline.c
+++ b/objects/standard/outline.c
@@ -354,7 +354,7 @@ outline_draw(Outline *outline, DiaRenderer *renderer)
if (!outline->path)
return;
DIA_RENDERER_GET_CLASS (renderer)->set_linewidth (renderer, outline->line_width);
- DIA_RENDERER_GET_CLASS (renderer)->set_linestyle (renderer, LINESTYLE_SOLID);
+ DIA_RENDERER_GET_CLASS (renderer)->set_linestyle (renderer, LINESTYLE_SOLID, 0.0);
DIA_RENDERER_GET_CLASS (renderer)->set_linejoin(renderer, LINEJOIN_MITER);
DIA_RENDERER_GET_CLASS (renderer)->set_linecaps(renderer, LINECAPS_ROUND);
diff --git a/objects/standard/polygon.c b/objects/standard/polygon.c
index 9f0b8caf..fbe668e0 100644
--- a/objects/standard/polygon.c
+++ b/objects/standard/polygon.c
@@ -227,8 +227,7 @@ polygon_draw(Polygon *polygon, DiaRenderer *renderer)
n = poly->numpoints;
renderer_ops->set_linewidth(renderer, polygon->line_width);
- renderer_ops->set_linestyle(renderer, polygon->line_style);
- renderer_ops->set_dashlength(renderer, polygon->dashlength);
+ renderer_ops->set_linestyle(renderer, polygon->line_style, polygon->dashlength);
renderer_ops->set_linejoin(renderer, polygon->line_join);
renderer_ops->set_linecaps(renderer, LINECAPS_BUTT);
diff --git a/objects/standard/polyline.c b/objects/standard/polyline.c
index 8fc8dca8..ce279951 100644
--- a/objects/standard/polyline.c
+++ b/objects/standard/polyline.c
@@ -290,8 +290,7 @@ polyline_draw(Polyline *polyline, DiaRenderer *renderer)
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);
+ renderer_ops->set_linestyle(renderer, polyline->line_style, polyline->dashlength);
renderer_ops->set_linejoin(renderer, polyline->line_join);
renderer_ops->set_linecaps(renderer, polyline->line_caps);
diff --git a/objects/standard/zigzagline.c b/objects/standard/zigzagline.c
index 9953a35f..af5456de 100644
--- a/objects/standard/zigzagline.c
+++ b/objects/standard/zigzagline.c
@@ -217,8 +217,7 @@ zigzagline_draw(Zigzagline *zigzagline, DiaRenderer *renderer)
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);
+ renderer_ops->set_linestyle(renderer, zigzagline->line_style, zigzagline->dashlength);
renderer_ops->set_linejoin(renderer, zigzagline->line_join);
renderer_ops->set_linecaps(renderer, zigzagline->line_caps);