• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

作図ソフト dia の改良版


Commit MetaInfo

Revisionbd3ff09ea20c8c6343f80f82d404202887b13681 (tree)
Time2006-03-29 04:25:55
AuthorLars Clausen <lclausen@src....>
CommiterLars Clausen

Log Message

pre7

Change Summary

Incremental Difference

--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,20 @@
1+2006-03-28 Lars Clausen <lars@raeder.dk>
2+
3+ * shapes/network/mobile_phone.{png,xpm,shape}:
4+ * shapes/network/telephone.shape:
5+ * shapes/network/disc.shape:
6+ Updates from W. Borgert <debacle@debian.org> improving looks and
7+ positioning.
8+
9+2006-03-26 Lars Clausen <lars@raeder.dk>
10+
11+ * objects/network/radiocell.c: Patch from W. Borgert
12+ <debacle@debian.org> for extra midpoint, flicker, extraneous
13+ properties.
14+
15+ * objects/network/basestation.c: Patch for BB from W. Borgert
16+ <debacle@debian.org>.
17+
118 2006-03-23 Hans Breuer <hans@breuer.org>
219
320 * lib/widgets.c : use original fontname and fallback 'sans' to
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,9 @@
1+dia-0.95-pre7: 28-Mar-2006
2+
3+* Fix (somewhat) a crash bug in font handling for Win32.
4+
5+* Minor fixes from W. Borgert.
6+
17 dia-0.95-pre6: 21-Mar-2006
28
39 * Transient (window-on-top) off till issues resolved.
--- a/config.h.win32
+++ b/config.h.win32
@@ -18,7 +18,7 @@
1818 #undef LOCALEDIR /* needs to be calculated at runtime */
1919 /* NOT: #define LOCALEDIR "../lib/locale" */
2020
21-#define VERSION "0.95-pre6"
21+#define VERSION "0.95-pre7"
2222
2323 /*
2424 * We are linking libxml as DLL with either msvc or mingw, but this
--- a/configure.in
+++ b/configure.in
@@ -1,6 +1,6 @@
11 dnl Process this -*- autoconf -*- file with autoconf to produce a
22 dnl configure script.
3-AC_INIT(dia, 0.95-pre6, http://bugzilla.gnome.org/enter_bug.cgi?product=dia)
3+AC_INIT(dia, 0.95-pre7, http://bugzilla.gnome.org/enter_bug.cgi?product=dia)
44 AC_CONFIG_SRCDIR(app/diagram.c)
55 AM_INIT_AUTOMAKE(AC_PACKAGE_NAME,AC_PACKAGE_VERSION)
66
--- a/doc/en/dia.xml
+++ b/doc/en/dia.xml
@@ -8,7 +8,7 @@
88
99 [
1010
11- <!ENTITY VERSION "0.95-pre6">
11+ <!ENTITY VERSION "0.95-pre7">
1212
1313 <!ENTITY INTRODUCTION SYSTEM "intro.xml">
1414
--- a/doc/eu/dia.xml
+++ b/doc/eu/dia.xml
@@ -4,7 +4,7 @@
44
55 <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "../../dtd/docbookx.dtd" [
66
7- <!ENTITY VERSION "0.95-pre6">
7+ <!ENTITY VERSION "0.95-pre7">
88
99 <!ENTITY INTRODUCTION SYSTEM "intro.xml">
1010
--- a/doc/pl/dia.xml
+++ b/doc/pl/dia.xml
@@ -1,7 +1,7 @@
11 <?xml version="1.0" encoding="iso-8859-1"?>
22
33 <!DOCTYPE Book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "../../dtd/docbookx.dtd"[
4-<!ENTITY VERSION "0.95-pre6">
4+<!ENTITY VERSION "0.95-pre7">
55 <!ENTITY INTRODUCTION SYSTEM "intro.xml">
66 <!ENTITY QUICKSTART SYSTEM "usage-quickstart.xml">
77 <!ENTITY CANVAS SYSTEM "usage-canvas.xml">
--- a/objects/network/basestation.c
+++ b/objects/network/basestation.c
@@ -198,13 +198,16 @@ basestation_move_handle(Basestation *basestation, Handle *handle,
198198 Point *to, ConnectionPoint *cp,
199199 HandleMoveReason reason, ModifierKeys modifiers)
200200 {
201+ ObjectChange* oc;
202+
201203 assert(basestation!=NULL);
202204 assert(handle!=NULL);
203205 assert(to!=NULL);
204-
205206 assert(handle->id < 8);
206207
207- return NULL;
208+ oc = element_move_handle (&(basestation->element), handle->id, to, cp, reason, modifiers);
209+
210+ return oc;
208211 }
209212
210213 static ObjectChange*
@@ -313,11 +316,16 @@ basestation_update_data(Basestation *basestation)
313316 Rectangle text_box;
314317 Point p;
315318
316- text_calc_boundingbox(basestation->text, &text_box);
317-
318319 elem->width = BASESTATION_WIDTH;
319320 elem->height = BASESTATION_HEIGHT+basestation->text->height;
320321
322+ p = elem->corner;
323+ p.x += elem->width/2;
324+ p.y += elem->height + basestation->text->ascent;
325+ text_set_position(basestation->text, &p);
326+
327+ text_calc_boundingbox(basestation->text, &text_box);
328+
321329 /* Update connections: */
322330 basestation->connections[0].pos.x = elem->corner.x;
323331 basestation->connections[0].pos.y = elem->corner.y;
@@ -349,11 +357,6 @@ basestation_update_data(Basestation *basestation)
349357
350358 element_update_boundingbox(elem);
351359
352- p = elem->corner;
353- p.x += elem->width/2;
354- p.y += elem->height + basestation->text->ascent;
355- text_set_position(basestation->text, &p);
356-
357360 /* Add bounding box for text: */
358361 rectangle_union(&obj->bounding_box, &text_box);
359362
--- a/objects/network/radiocell.c
+++ b/objects/network/radiocell.c
@@ -39,22 +39,12 @@
3939
4040 #include "pixmaps/radiocell.xpm"
4141
42-/* TODO? no visual effect ATM, but useful anyway */
43-typedef enum {
44- MACRO_CELL,
45- MICRO_CELL,
46- PICO_CELL,
47-} CellType;
48-
49-/* TODO: add different cell technologies, like GSM, UMTS, ... */
50-
5142 typedef struct _RadioCell RadioCell;
5243
5344 struct _RadioCell {
5445 PolyShape poly; /* always 1st! */
55- CellType celltype;
5646 real radius; /* pseudo-radius */
57- ConnectionPoint cp; /* connection point in the center */
47+ Point center; /* point in the center */
5848 Color line_colour;
5949 LineStyle line_style;
6050 real dashlength;
@@ -63,8 +53,6 @@ struct _RadioCell {
6353 Color fill_colour;
6454 Text *text;
6555 TextAttributes attrs;
66- int subscribers; /* number of subscribers in this cell,
67- always >= 0, but check is missing */
6856 };
6957
7058 #define RADIOCELL_LINEWIDTH 0.1
@@ -126,18 +114,9 @@ static ObjectOps radiocell_ops = {
126114 (SetPropsFunc) radiocell_set_props
127115 };
128116
129-static PropEnumData prop_cell_type_data[] = {
130- { N_("Macro Cell"), MACRO_CELL },
131- { N_("Micro Cell"), MICRO_CELL },
132- { N_("Pico Cell"), PICO_CELL },
133- { NULL, 0}
134-};
135-
136117 static PropDescription radiocell_props[] = {
137118 POLYSHAPE_COMMON_PROPERTIES,
138119 { "radius", PROP_TYPE_REAL, 0, N_("Radius"), NULL, NULL },
139- { "celltype", PROP_TYPE_ENUM, PROP_FLAG_VISIBLE,
140- N_("Cell Type:"), NULL, prop_cell_type_data },
141120 PROP_STD_LINE_WIDTH,
142121 PROP_STD_LINE_COLOUR,
143122 PROP_STD_LINE_STYLE,
@@ -148,8 +127,6 @@ static PropDescription radiocell_props[] = {
148127 PROP_STD_TEXT_HEIGHT,
149128 PROP_STD_TEXT_COLOUR,
150129 PROP_STD_TEXT_ALIGNMENT,
151- { "subscribers", PROP_TYPE_INT, PROP_FLAG_VISIBLE,
152- N_("Subscribers"), NULL, NULL },
153130 PROP_DESC_END
154131 };
155132
@@ -165,7 +142,6 @@ radiocell_describe_props(RadioCell *radiocell)
165142 static PropOffset radiocell_offsets[] = {
166143 POLYSHAPE_COMMON_PROPERTIES_OFFSETS,
167144 { "radius", PROP_TYPE_REAL, offsetof(RadioCell, radius) },
168- { "celltype", PROP_TYPE_ENUM, offsetof(RadioCell, celltype) },
169145 { "line_width", PROP_TYPE_REAL, offsetof(RadioCell, line_width) },
170146 { "line_colour", PROP_TYPE_COLOUR, offsetof(RadioCell, line_colour) },
171147 { "line_style", PROP_TYPE_LINESTYLE,
@@ -179,7 +155,6 @@ static PropOffset radiocell_offsets[] = {
179155 { "text_colour", PROP_TYPE_COLOUR, offsetof(RadioCell, attrs.color) },
180156 { "text_alignment", PROP_TYPE_ENUM,
181157 offsetof(RadioCell, attrs.alignment) },
182- { "subscribers", PROP_TYPE_INT, offsetof(RadioCell, subscribers) },
183158 { NULL, 0, 0 },
184159 };
185160
@@ -222,11 +197,30 @@ radiocell_move_handle(RadioCell *radiocell, Handle *handle,
222197 Point *to, ConnectionPoint *cp,
223198 HandleMoveReason reason, ModifierKeys modifiers)
224199 {
225- real distance = distance_point_point(&handle->pos, to);
226- gboolean larger = distance_point_point(&handle->pos, &radiocell->cp.pos) <
227- distance_point_point(to, &radiocell->cp.pos);
200+ real distance;
201+ gboolean larger;
202+
203+ /* prevent flicker for "negative" resizing */
204+ if ((handle->id == HANDLE_CUSTOM1 && to->x < radiocell->center.x) ||
205+ (handle->id == HANDLE_CUSTOM4 && to->x > radiocell->center.x) ||
206+ ((handle->id == HANDLE_CUSTOM2 || handle->id == HANDLE_CUSTOM3) &&
207+ to->y < radiocell->center.y) ||
208+ ((handle->id == HANDLE_CUSTOM5 || handle->id == HANDLE_CUSTOM6) &&
209+ to->y > radiocell->center.y)) {
210+ return NULL;
211+ }
228212
229- /* TODO: this flickers terribly */
213+ /* prevent flicker for "diagonal" resizing */
214+ if (handle->id == HANDLE_CUSTOM1 || handle->id == HANDLE_CUSTOM4) {
215+ to->y = handle->pos.y;
216+ }
217+ else {
218+ to->x = handle->pos.x;
219+ }
220+
221+ distance = distance_point_point(&handle->pos, to);
222+ larger = distance_point_point(&handle->pos, &radiocell->center) <
223+ distance_point_point(to, &radiocell->center);
230224 radiocell->radius += distance * (larger? 1: -1);
231225 if (radiocell->radius < 1.)
232226 radiocell->radius = 1.;
@@ -239,8 +233,8 @@ static ObjectChange*
239233 radiocell_move(RadioCell *radiocell, Point *to)
240234 {
241235 polyshape_move(&radiocell->poly, to);
242- radiocell->cp.pos = *to;
243- radiocell->cp.pos.x -= radiocell->radius;
236+ radiocell->center = *to;
237+ radiocell->center.x -= radiocell->radius;
244238 radiocell_update_data(radiocell);
245239
246240 return NULL;
@@ -288,12 +282,11 @@ radiocell_update_data(RadioCell *radiocell)
288282 Point points[] = { { 1., 0. }, { .5, .75 }, { -.5, .75 },
289283 { -1., 0. }, { -.5, -.75 }, { .5, -.75 } };
290284
291- /* TODO: the CP is invisible and does not yet work */
292- radiocell->cp.pos.x = (poly->points[0].x + poly->points[3].x) / 2.;
293- radiocell->cp.pos.y = poly->points[0].y;
285+ radiocell->center.x = (poly->points[0].x + poly->points[3].x) / 2.;
286+ radiocell->center.y = poly->points[0].y;
294287
295288 for (i = 0; i < 6; i++) {
296- poly->points[i] = radiocell->cp.pos;
289+ poly->points[i] = radiocell->center;
297290 poly->points[i].x += radiocell->radius * points[i].x;
298291 poly->points[i].y += radiocell->radius * points[i].y;
299292 }
@@ -323,6 +316,7 @@ radiocell_create(Point *startpoint,
323316 PolyShape *poly;
324317 DiaObject *obj;
325318 DiaFont *font;
319+ int i = 0;
326320
327321 radiocell = g_new0(RadioCell, 1);
328322 poly = &radiocell->poly;
@@ -331,9 +325,7 @@ radiocell_create(Point *startpoint,
331325 obj->ops = &radiocell_ops;
332326 obj->can_parent = TRUE;
333327
334- radiocell->celltype = MACRO_CELL;
335328 radiocell->radius = 4.;
336- radiocell->subscribers = 1000;
337329
338330 /* do not use default_properties.show_background here */
339331 radiocell->show_background = FALSE;
@@ -351,17 +343,17 @@ radiocell_create(Point *startpoint,
351343
352344 polyshape_init(poly, 6);
353345
354- object_add_connectionpoint(&poly->object, &radiocell->cp);
355- obj->connections[0] = &radiocell->cp;
356- radiocell->cp.object = obj;
357- radiocell->cp.connected = NULL;
358- radiocell->cp.directions = DIR_ALL;
359- radiocell->cp.pos = *startpoint;
360- radiocell->cp.pos.x -= radiocell->radius;
346+ radiocell->center = *startpoint;
347+ radiocell->center.x -= radiocell->radius;
361348
362349 radiocell_update_data(radiocell);
363350 *handle1 = poly->object.handles[0];
364351 *handle2 = poly->object.handles[2];
352+
353+ for (i=0;i<6;i++) {
354+ poly->object.handles[i]->id = HANDLE_CUSTOM1 + i;
355+ }
356+
365357 return &radiocell->poly.object;
366358 }
367359
--- a/shapes/network/disc.shape
+++ b/shapes/network/disc.shape
@@ -8,7 +8,7 @@
88 <point x="0.85" y="2.0"/>
99 <point x="1" y="1" main="yes"/>
1010 </connections>
11- <textbox x1="-1" y1="2" x2="3" y2="5" align="center" resize="no"/>
11+ <textbox x1="0" y1="2" x2="1.7" y2="5" align="center" resize="no"/>
1212 <svg:svg width="2cm" height="2cm">
1313 <svg:rect style="stroke:none; fill:background" x="0" y="0.25" width="1.7" height="1.5"/>
1414 <svg:ellipse style="stroke: none; fill:background" cx="0.85" cy="1.75" rx="0.85" ry="0.25"/>
Binary files a/shapes/network/mobile_phone.png and b/shapes/network/mobile_phone.png differ
--- a/shapes/network/mobile_phone.shape
+++ b/shapes/network/mobile_phone.shape
@@ -1,62 +1,47 @@
1-<?xml version="1.0"?>
1+<?xml version="1.0" encoding="UTF-8"?>
22 <shape xmlns="http://www.daa.com.au/~james/dia-shape-ns" xmlns:svg="http://www.w3.org/2000/svg">
33 <name>Network - A Mobile Phone</name>
44 <icon>mobile_phone.png</icon>
55 <connections>
6- <point x="0" y="1.5"/>
7- <point x="0" y="25"/>
8- <point x="10" y="1.5"/>
9- <point x="10" y="25"/>
10- <point x="0" y="12.5"/>
11- <point x="10" y="12.5"/>
12- <point x="5" y="1.5"/>
13- <point x="5" y="25"/>
14- <point x="8" y="0"/>
15- <point x="5.5" y="13" main="yes"/>
6+ <point x="0" y="0"/>
7+ <point x="5" y="0"/>
8+ <point x="10" y="0"/>
9+ <point x="10" y="11.5"/>
10+ <point x="10" y="23"/>
11+ <point x="5" y="23"/>
12+ <point x="0" y="23"/>
13+ <point x="0" y="11.5"/>
14+ <point x="5" y="11.5" main="yes"/>
1615 </connections>
1716 <aspectratio type="fixed"/>
18- <svg:svg width="11cm" height="26cm" viewBox="-1 -1 11 26">
19- <svg:rect style="fill: #3344b0" x="0" y="1.5" width="10" height="23.5"/>
20- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="0" y="1.5" width="10" height="23.5"/>
21- <svg:rect style="fill: #d0f4e5" x="1.5" y="15.5" width="2" height="2"/>
22- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="1.5" y="15.5" width="2" height="2"/>
23- <svg:rect style="fill: #193474" x="7.5" y="0" width="1" height="1.5"/>
24- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="7.5" y="0" width="1" height="1.5"/>
25- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="3" y1="3" x2="3" y2="4"/>
26- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="3.5" y1="3" x2="3.5" y2="4"/>
27- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="4" y1="2.5" x2="4" y2="4.5"/>
28- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="4.5" y1="2.5" x2="4.5" y2="4.5"/>
29- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="5" y1="2.5" x2="5" y2="4.5"/>
30- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="5.5" y1="2.5" x2="5.5" y2="4.5"/>
31- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="6" y1="2.5" x2="6" y2="4.5"/>
32- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="6.5" y1="3" x2="6.5" y2="4"/>
33- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="7" y1="3" x2="7" y2="4"/>
34- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="4" y1="23.5" x2="4" y2="24"/>
35- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="4.5" y1="23.5" x2="4.5" y2="24.5"/>
36- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="5" y1="23.5" x2="5" y2="24.5"/>
37- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="5.5" y1="23.5" x2="5.5" y2="24.5"/>
38- <svg:line style="stroke-width: 0.1; stroke: #000000" x1="6" y1="23.5" x2="6" y2="24"/>
39- <svg:rect style="fill: #d0f4e5" x="1.5" y="18" width="2" height="2"/>
40- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="1.5" y="18" width="2" height="2"/>
41- <svg:rect style="fill: #d0f4e5" x="1.5" y="20.5" width="2" height="2"/>
42- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="1.5" y="20.5" width="2" height="2"/>
43- <svg:rect style="fill: #d0f4e5" x="4" y="15.5" width="2" height="2"/>
44- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="4" y="15.5" width="2" height="2"/>
45- <svg:rect style="fill: #d0f4e5" x="4" y="18" width="2" height="2"/>
46- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="4" y="18" width="2" height="2"/>
47- <svg:rect style="fill: #d0f4e5" x="4" y="20.5" width="2" height="2"/>
48- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="4" y="20.5" width="2" height="2"/>
49- <svg:rect style="fill: #d0f4e5" x="6.5" y="15.5" width="2" height="2"/>
50- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="6.5" y="15.5" width="2" height="2"/>
51- <svg:rect style="fill: #d0f4e5" x="6.5" y="18" width="2" height="2"/>
52- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="6.5" y="18" width="2" height="2"/>
53- <svg:rect style="fill: #d0f4e5" x="6.5" y="20.5" width="2" height="2"/>
54- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="6.5" y="20.5" width="2" height="2"/>
55- <svg:rect style="fill: #d0f4e5" x="1.5" y="5.5" width="7" height="5"/>
56- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="1.5" y="5.5" width="7" height="5"/>
57- <svg:rect style="fill: #d0f4e5" x="2.5" y="11.5" width="2" height="2"/>
58- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="2.5" y="11.5" width="2" height="2"/>
59- <svg:rect style="fill: #d0f4e5" x="5.5" y="11.5" width="2" height="2"/>
60- <svg:rect style="stroke-width: 0.1; stroke: #000000" x="5.5" y="11.5" width="2" height="2"/>
17+ <svg:svg width="5cm" height="11.5cm">
18+ <svg:path style="fill: #000077 stroke-width: 0.1 stroke: #000000" d="M 0.3,0 A 0.3,0.3 0 0 0 0,0.3 L 0,22.7 A 0.3,0.3 0 0 0 0.3,23 L 9.7,23 A 0.3,0.3 0 0 0 10,22.7 L 10,0.3 A 0.3,0.3 0 0 0 9.7,0 L 0.3,0 z"/>
19+ <svg:line style="fill: none; fill-opacity:0; stroke-width: 0.1; stroke: #000000" x1="3" y1="1.2" x2="3" y2="2.8"/>
20+ <svg:line style="fill: none; fill-opacity:0; stroke-width: 0.1; stroke: #000000" x1="4" y1="1" x2="4" y2="3"/>
21+ <svg:line style="fill: none; fill-opacity:0; stroke-width: 0.1; stroke: #000000" x1="5" y1="1" x2="5" y2="3"/>
22+ <svg:line style="fill: none; fill-opacity:0; stroke-width: 0.1; stroke: #000000" x1="6" y1="1" x2="6" y2="3"/>
23+ <svg:line style="fill: none; fill-opacity:0; stroke-width: 0.1; stroke: #000000" x1="7" y1="1.2" x2="7" y2="2.8"/>
24+ <svg:path style="fill: #90ee90 stroke-width: 0.1 stroke: #000000" d="M 1.3,4 A 0.3,0.3 0 0 0 1,4.3 L 1,7.7 A 0.3,0.3 0 0 0 1.3,8 L 8.7,8 A 0.3,0.3 0 0 0 9,7.7 L 9,4.3 A 0.3,0.3 0 0 0 8.7,4 L 1.3,4 z"/>
25+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="1" y="9" width="3" height="1"/>
26+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="6" y="9" width="3" height="1"/>
27+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="1" y="11" width="3" height="1"/>
28+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="6" y="11" width="3" height="1"/>
29+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="1" y="13" width="2" height="1"/>
30+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="4" y="13" width="2" height="1"/>
31+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="7" y="13" width="2" height="1"/>
32+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="1" y="15" width="2" height="1"/>
33+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="4" y="15" width="2" height="1"/>
34+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="7" y="15" width="2" height="1"/>
35+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="1" y="17" width="2" height="1"/>
36+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="4" y="17" width="2" height="1"/>
37+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="7" y="17" width="2" height="1"/>
38+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="1" y="19" width="2" height="1"/>
39+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="4" y="19" width="2" height="1"/>
40+ <svg:rect style="fill: #bfbfbf stroke-width: 0.1; stroke: #000000" x="7" y="19" width="2" height="1"/>
41+ <svg:line style="fill: none; fill-opacity:0; stroke-width: 0.1; stroke: #000000" x1="3" y1="21.2" x2="3" y2="21.8"/>
42+ <svg:line style="fill: none; fill-opacity:0; stroke-width: 0.1; stroke: #000000" x1="4" y1="21" x2="4" y2="22"/>
43+ <svg:line style="fill: none; fill-opacity:0; stroke-width: 0.1; stroke: #000000" x1="5" y1="21" x2="5" y2="22"/>
44+ <svg:line style="fill: none; fill-opacity:0; stroke-width: 0.1; stroke: #000000" x1="6" y1="21" x2="6" y2="22"/>
45+ <svg:line style="fill: none; fill-opacity:0; stroke-width: 0.1; stroke: #000000" x1="7" y1="21.2" x2="7" y2="21.8"/>
6146 </svg:svg>
6247 </shape>
--- a/shapes/network/mobile_phone.xpm
+++ b/shapes/network/mobile_phone.xpm
@@ -1,11 +1,11 @@
11 /* XPM */
22 static char * mobile_phone_xpm[] = {
3-"22 22 4 1",
3+"22 22 5 1",
44 " c None",
55 ". c #000000",
6-"+ c #444484",
7-"@ c #B7C691",
8-" .. ",
6+"+ c #000077",
7+"@ c #90EE90",
8+"# c #BFBFBF",
99 " .......... ",
1010 " ..++++++++.. ",
1111 " .++++++++++. ",
@@ -15,15 +15,16 @@ static char * mobile_phone_xpm[] = {
1515 " .++@@@@@@++. ",
1616 " .++@@@@@@++. ",
1717 " .++++++++++. ",
18+" .+###++###+. ",
1819 " .++++++++++. ",
19-" .+..+..+..+. ",
20-" .+..+..+..+. ",
20+" .+##+##+##+. ",
2121 " .++++++++++. ",
22-" .+..+..+..+. ",
23-" .+..+..+..+. ",
22+" .+##+##+##+. ",
23+" .++++++++++. ",
24+" .+##+##+##+. ",
25+" .++++++++++. ",
26+" .+##+##+##+. ",
2427 " .++++++++++. ",
25-" .+..+..+..+. ",
26-" .+..+..+..+. ",
2728 " .++++++++++. ",
2829 " ..++++++++.. ",
2930 " .......... "};
--- a/shapes/network/telephone.shape
+++ b/shapes/network/telephone.shape
@@ -1,42 +1,29 @@
1-<?xml version="1.0" encoding="UTF-8"?>
2-<shape xmlns="http://www.daa.com.au/~james/dia-shape-ns" xmlns:svg="http://www.w3.org/2000/svg">
3-<name>Network - A Telephone</name>
4-<icon>telephone.png</icon>
5- <connections>
6- <point x="19" y="6" />
7- <point x="19" y="13" />
8- <point x="19" y="9.5" main="yes"/>
9- </connections>
10-<aspectratio type="fixed"/>
11-<svg:svg>
12-<svg:path style="fill: background" d="M 15 6 C 16,6 22,6 23,6 C 24,6 25.1,7 25,9 C 24,9 24,9 23,9 C 23.05,7.1 20,8 19,8 C 18,8 15,7.05 15,9 C 14,9 14,9 13,9 C 12.8,7 14,6 15,6z"/>
13-<svg:path style="stroke-width: 0.1; stroke: #000000" d="M 15 6 C 16,6 22,6 23,6 C 24,6 25.1,7 25,9 C 24,9 24,9 23,9 C 23.05,7.1 20,8 19,8 C 18,8 15,7.05 15,9 C 14,9 14,9 13,9 C 12.8,7 14,6 15,6"/>
14-<svg:path style="fill: background" d="M 19 7 C 23,7 23,13 22,13 C 21,13 17,13 16,13 C 15,13 15,7 19,7z"/>
15-<svg:path style="stroke-width: 0.1; stroke: #000000" d="M 19 7 C 23,7 23,13 22,13 C 21,13 17,13 16,13 C 15,13 15,7 19,7"/>
16-<svg:ellipse style="fill: #ffffff" cx="19" cy="10" rx="2" ry="2"/>
17-<svg:ellipse style="stroke-width: 0.1; stroke: #000000" cx="19" cy="10" rx="2" ry="2"/>
18-<svg:ellipse style="fill: #ffffff" cx="17.8" cy="10.875" rx="0.25" ry="0.275"/>
19-<svg:ellipse style="stroke-width: 0.1; stroke: #000000" cx="17.8" cy="10.875" rx="0.25" ry="0.275"/>
20-<svg:ellipse style="fill: #ffffff" cx="17.395" cy="9.925" rx="0.25" ry="0.275"/>
21-<svg:ellipse style="stroke-width: 0.1; stroke: #000000" cx="17.395" cy="9.925" rx="0.25" ry="0.275"/>
22-<svg:ellipse style="fill: #ffffff" cx="17.695" cy="9.025" rx="0.25" ry="0.275"/>
23-<svg:ellipse style="stroke-width: 0.1; stroke: #000000" cx="17.695" cy="9.025" rx="0.25" ry="0.275"/>
24-<svg:ellipse style="fill: #ffffff" cx="18.595" cy="8.575" rx="0.25" ry="0.275"/>
25-<svg:ellipse style="stroke-width: 0.1; stroke: #000000" cx="18.595" cy="8.575" rx="0.25" ry="0.275"/>
26-<svg:ellipse style="fill: #ffffff" cx="19.495" cy="8.625" rx="0.25" ry="0.275"/>
27-<svg:ellipse style="stroke-width: 0.1; stroke: #000000" cx="19.495" cy="8.625" rx="0.25" ry="0.275"/>
28-<svg:ellipse style="fill: #ffffff" cx="20.195" cy="9.225" rx="0.25" ry="0.275"/>
29-<svg:ellipse style="stroke-width: 0.1; stroke: #000000" cx="20.195" cy="9.225" rx="0.25" ry="0.275"/>
30-<svg:ellipse style="fill: #ffffff" cx="20.495" cy="9.925" rx="0.25" ry="0.275"/>
31-<svg:ellipse style="stroke-width: 0.1; stroke: #000000" cx="20.495" cy="9.925" rx="0.25" ry="0.275"/>
32-<svg:ellipse style="fill: #ffffff" cx="20.245" cy="10.775" rx="0.25" ry="0.275"/>
33-<svg:ellipse style="stroke-width: 0.1; stroke: #000000" cx="20.245" cy="10.775" rx="0.25" ry="0.275"/>
34-<svg:ellipse style="fill: #ffffff" cx="19.545" cy="11.325" rx="0.25" ry="0.275"/>
35-<svg:ellipse style="stroke-width: 0.1; stroke: #000000" cx="19.545" cy="11.325" rx="0.25" ry="0.275"/>
36-</svg:svg>
37-</shape>
38-
39-
40-
41-
42-
1+<?xml version="1.0" encoding="UTF-8"?>
2+<shape xmlns="http://www.daa.com.au/~james/dia-shape-ns" xmlns:svg="http://www.w3.org/2000/svg">
3+ <name>Network - A Telephone</name>
4+ <icon>telephone.png</icon>
5+ <connections>
6+ <point x="7" y="0"/>
7+ <point x="0.3" y="3"/>
8+ <point x="13.7" y="3"/>
9+ <point x="7" y="10.5"/>
10+ <point x="7" y="4.6" main="yes"/>
11+ </connections>
12+ <aspectratio type="fixed"/>
13+ <svg:svg width="20cm" height="14cm">
14+ <svg:path style="fill: #222222; stroke-width: 0.1; stroke: #000000" d="M 7 0 C 8,0 12,0.5 13,1.5 C 14,2.5 14,4 13,4.5 C 12,5 10,3.5 10,3 C 10,2.5 11,2.5 10.5,2 C 10,1.5 10,2 9.5,2 C 9,2 9.5,2 9.5,2.5 C 9.5,3 9.5,4 10,4 C 10.5,4 10.5,4 10.5,4.5 C 10.5,5 11.5,7.5 11.5,8.5 C 11.5,9.5 12,10.5 11,10.5 C 10,10.5 4,10.5 3,10.5 C 2,10.5 2.5,9.5 2.5,8.5 C 2.5,7.5 3.5,5 3.5,4.5 C 3.5,4 3.5,4 4,4 C 4.5,4 4.5,3 4.5,2.5 C 4.5,2 5,2 4.5,2 C 4,2 4,1.5 3.5,2 C 3,2.5 4,2.5 4,3 C 4,3.5 2,5 1,4.5 C 0,4 0,2.5 1,1.5 C 2,0.5 6,0 7,0 z"/>
15+ <svg:ellipse style="fill: #777777; stroke-width: 0.1; stroke: #000000" cx="7" cy="4.6" rx="2.1" ry="2.1"/>
16+ <svg:ellipse style="fill: #cccccc; stroke-width: 0.1; stroke: #000000" cx="8.1" cy="3.5" rx="0.3" ry="0.3"/>
17+ <svg:ellipse style="fill: #cccccc; stroke-width: 0.1; stroke: #000000" cx="7.4" cy="3.1" rx="0.3" ry="0.3"/>
18+ <svg:ellipse style="fill: #cccccc; stroke-width: 0.1; stroke: #000000" cx="6.6" cy="3.1" rx="0.3" ry="0.3"/>
19+ <svg:ellipse style="fill: #cccccc; stroke-width: 0.1; stroke: #000000" cx="5.9" cy="3.5" rx="0.3" ry="0.3"/>
20+ <svg:ellipse style="fill: #cccccc; stroke-width: 0.1; stroke: #000000" cx="5.5" cy="4.2" rx="0.3" ry="0.3"/>
21+ <svg:ellipse style="fill: #cccccc; stroke-width: 0.1; stroke: #000000" cx="5.5" cy="5" rx="0.3" ry="0.3"/>
22+ <svg:ellipse style="fill: #cccccc; stroke-width: 0.1; stroke: #000000" cx="5.9" cy="5.7" rx="0.3" ry="0.3"/>
23+ <svg:ellipse style="fill: #cccccc; stroke-width: 0.1; stroke: #000000" cx="6.6" cy="6.1" rx="0.3" ry="0.3"/>
24+ <svg:ellipse style="fill: #cccccc; stroke-width: 0.1; stroke: #000000" cx="7.4" cy="6.1" rx="0.3" ry="0.3"/>
25+ <svg:ellipse style="fill: #cccccc; stroke-width: 0.1; stroke: #000000" cx="8.1" cy="5.7" rx="0.3" ry="0.3"/>
26+ <svg:ellipse style="fill: #aaaaaa; stroke-width: 0.1; stroke: #000000" cx="7" cy="4.6" rx="1" ry="1"/>
27+ <svg:path style="fill: #aaaaaa; stroke-width: 0.1; stroke: #000000" d="M 8.5 5.1 C 8.7,5.2 8.8,5.1 9.1,5.1 C 9.4,5.1 9.3,5 9.3,5.2 C 9.2,5.4 9.3,5.4 9,5.4 C 8.7,5.4 8.7,5.5 8.3,5.2 C 7.9,5 8.2,4.9 8.5,5.1 z"/>
28+ </svg:svg>
29+</shape>