ruby-graphviz 0.7.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/AUTHORS +2 -0
- data/ChangeLog +3 -0
- data/lib/graphviz.rb +7 -8
- data/lib/graphviz/constants.rb +116 -15
- metadata +3 -3
data/AUTHORS
CHANGED
data/ChangeLog
CHANGED
data/lib/graphviz.rb
CHANGED
@@ -144,6 +144,13 @@ class GraphViz
|
|
144
144
|
|
145
145
|
xLastType = kElement["type"]
|
146
146
|
|
147
|
+
#Modified by
|
148
|
+
#Brandon Coleman
|
149
|
+
#verify value is NOT NULL
|
150
|
+
if kElement["value"] == nil then
|
151
|
+
raise ArgumentError, "#{kElement["name"]} has a nil value!"
|
152
|
+
end
|
153
|
+
|
147
154
|
case kElement["type"]
|
148
155
|
when "graph_attr"
|
149
156
|
xData << xSeparator + kElement["name"] + " = \"" + kElement["value"] + "\""
|
@@ -311,13 +318,5 @@ class GraphViz
|
|
311
318
|
end
|
312
319
|
return cmd
|
313
320
|
end
|
314
|
-
# def find_executable(bin, path = nil)
|
315
|
-
# path = (path || ENV['PATH']).split(File::PATH_SEPARATOR)
|
316
|
-
# file = nil
|
317
|
-
# path.each do |dir|
|
318
|
-
# return file if File.executable?(file = File.join(dir, bin))
|
319
|
-
# end
|
320
|
-
# nil
|
321
|
-
# end
|
322
321
|
end
|
323
322
|
|
data/lib/graphviz/constants.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright (C) 2004
|
1
|
+
# Copyright (C) 2004 Gregoire Lejeune <gregoire.lejeune@free.fr>
|
2
2
|
#
|
3
3
|
# This program is free software; you can redistribute it and/or modify
|
4
4
|
# it under the terms of the GNU General Public License as published by
|
@@ -15,6 +15,9 @@
|
|
15
15
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
16
16
|
|
17
17
|
module Constants
|
18
|
+
RGV_VERSION = "0.8.0"
|
19
|
+
RGV_DATE = "2007-05-15"
|
20
|
+
|
18
21
|
## Const: Output formats
|
19
22
|
FORMATS = [
|
20
23
|
"dot",
|
@@ -41,14 +44,15 @@ module Constants
|
|
41
44
|
"plain",
|
42
45
|
"text",
|
43
46
|
"canon",
|
44
|
-
|
47
|
+
"none"
|
45
48
|
]
|
46
49
|
|
47
50
|
## Const: programs
|
48
51
|
PROGRAMS = [
|
49
52
|
"dot",
|
50
|
-
|
51
|
-
"twopi"
|
53
|
+
"neato",
|
54
|
+
"twopi",
|
55
|
+
"fdp"
|
52
56
|
]
|
53
57
|
|
54
58
|
## Const: type de graphs
|
@@ -60,6 +64,7 @@ module Constants
|
|
60
64
|
# E, N, G, S and C represent edges, nodes, the root graph, subgraphs and cluster subgraphs, respectively
|
61
65
|
GENCS_ATTRS = {
|
62
66
|
"Damping" => { "UseBy" => "G", "Type" => "double" },
|
67
|
+
"K" => { "UseBy" => "GC", "Tyep" => "double" },
|
63
68
|
"URL" => { "UseBy" => "ENGC", "Type" => "escString, string" },
|
64
69
|
"arrowhead" => { "UseBy" => "E", "Type" => "arrowType" },
|
65
70
|
"arrowsize" => { "UseBy" => "E", "Type" => "double" },
|
@@ -68,9 +73,11 @@ module Constants
|
|
68
73
|
"bgcolor" => { "UseBy" => "GC", "Type" => "color" },
|
69
74
|
"bottomlabel" => { "UseBy" => "N", "Type" => "string" },
|
70
75
|
"center" => { "UseBy" => "G", "Type" => "bool" },
|
76
|
+
"charset" => { "UseBy" => "G", "Type" => "string" },
|
71
77
|
"clusterrank" => { "UseBy" => "G", "Type" => "clusterMode" },
|
72
78
|
"color" => { "UseBy" => "ENC", "Type" => "color, colorList" },
|
73
|
-
"
|
79
|
+
"colorscheme" => { "UseBy" => "ENCG", "Type" => "string" },
|
80
|
+
"comment" => { "UseBy" => "ENG", "Type" => "string" },
|
74
81
|
"compound" => { "UseBy" => "G", "Type" => "bool" },
|
75
82
|
"concentrate" => { "UseBy" => "G", "Type" => "bool" },
|
76
83
|
"constraint" => { "UseBy" => "E", "Type" => "bool" },
|
@@ -78,9 +85,15 @@ module Constants
|
|
78
85
|
"defaultdist" => { "UseBy" => "G", "Type" => "double" },
|
79
86
|
"dim" => { "UseBy" => "G", "Type" => "int" },
|
80
87
|
"dir" => { "UseBy" => "E", "Type" => "dirType" },
|
88
|
+
"diredgeconstraints"=> { "UseBy" => "N", "Type" => "double" },
|
81
89
|
"distortion" => { "UseBy" => "N", "Type" => "double" },
|
82
90
|
"dpi" => { "UseBy" => "G", "Type" => "double" },
|
91
|
+
"edgeURL" => { "UseBy" => "E", "Type" => "lblString" },
|
92
|
+
"edgehref" => { "UseBy" => "E", "Type" => "lblString" },
|
93
|
+
"edgetarget" => { "UseBy" => "E", "Type" => "escString" },
|
94
|
+
"edgetooltip" => { "UseBy" => "E", "Type" => "escString" },
|
83
95
|
"epsilon" => { "UseBy" => "G", "Type" => "double" },
|
96
|
+
"esep" => { "UseBy" => "G", "Type" => "double" },
|
84
97
|
"fillcolor" => { "UseBy" => "NC", "Type" => "color" },
|
85
98
|
"fixedsize" => { "UseBy" => "N", "Type" => "bool" },
|
86
99
|
"fontcolor" => { "UseBy" => "ENGC", "Type" => "color" },
|
@@ -96,21 +109,26 @@ module Constants
|
|
96
109
|
"headtarget" => { "UseBy" => "E", "Type" => "escString" },
|
97
110
|
"headtooltip" => { "UseBy" => "E", "Type" => "escString" },
|
98
111
|
"height" => { "UseBy" => "N", "Type" => "double" },
|
99
|
-
"href" => { "UseBy" => "E", "Type" => "
|
100
|
-
"label" => { "UseBy" => "ENGC", "Type" => "lblString" },
|
112
|
+
"href" => { "UseBy" => "E", "Type" => "lblString" },
|
101
113
|
"html" => { "UseBy" => "N", "Type" => "lblString" }, # API extension
|
114
|
+
"labelURL" => { "UseBy" => "E", "Type" => "double" },
|
102
115
|
"labelangle" => { "UseBy" => "E", "Type" => "double" },
|
103
116
|
"labeldistance" => { "UseBy" => "E", "Type" => "double" },
|
104
117
|
"labelfloat" => { "UseBy" => "E", "Type" => "bool" },
|
105
118
|
"labelfontcolor" => { "UseBy" => "E", "Type" => "color" },
|
106
119
|
"labelfontname" => { "UseBy" => "E", "Type" => "string" },
|
107
120
|
"labelfontsize" => { "UseBy" => "E", "Type" => "double" },
|
121
|
+
"labelhref" => { "UseBy" => "E", "Type" => "double" },
|
108
122
|
"labeljust" => { "UseBy" => "GC", "Type" => "string" },
|
109
123
|
"labelloc" => { "UseBy" => "GC", "Type" => "string" },
|
124
|
+
"labeltarget" => { "UseBy" => "E", "Type" => "escString" },
|
125
|
+
"labeltooltip" => { "UseBy" => "E", "Type" => "escString" },
|
126
|
+
"landscape" => { "UseBy" => "G", "Type" => "bool" },
|
110
127
|
"layer" => { "UseBy" => "EN", "Type" => "layerRange" },
|
111
128
|
"layers" => { "UseBy" => "G", "Type" => "layerList" },
|
112
129
|
"layersep" => { "UseBy" => "G", "Type" => "string" },
|
113
130
|
"len" => { "UseBy" => "E", "Type" => "double" },
|
131
|
+
"levelsgap" => { "UseBy" => "G", "Type" => "double" },
|
114
132
|
"lhead" => { "UseBy" => "E", "Type" => "string" },
|
115
133
|
"lp" => { "UseBy" => "EGC", "Type" => "point" },
|
116
134
|
"ltail" => { "UseBy" => "E", "Type" => "string" },
|
@@ -121,10 +139,12 @@ module Constants
|
|
121
139
|
"minlen" => { "UseBy" => "E", "Type" => "int" },
|
122
140
|
"mode" => { "UseBy" => "G", "Type" => "string" },
|
123
141
|
"model" => { "UseBy" => "G", "Type" => "string" },
|
142
|
+
"mosek" => { "UseBy" => "G", "Type" => "bool" },
|
124
143
|
"nodesep" => { "UseBy" => "G", "Type" => "double" },
|
125
144
|
"nojustify" => { "UseBy" => "GCNE", "Type" => "bool" },
|
126
145
|
"normalize" => { "UseBy" => "G", "Type" => "bool" },
|
127
|
-
"
|
146
|
+
"nslimit" => { "UseBy" => "G", "Type" => "double" },
|
147
|
+
"nslimit1" => { "UseBy" => "G", "Type" => "double" },
|
128
148
|
"ordering" => { "UseBy" => "G", "Type" => "string" },
|
129
149
|
"orientation" => { "UseBy" => "N", "Type" => "double" },
|
130
150
|
"orientation" => { "UseBy" => "G", "Type" => "string" },
|
@@ -132,6 +152,7 @@ module Constants
|
|
132
152
|
"overlap" => { "UseBy" => "G", "Type" => "string, bool" },
|
133
153
|
"pack" => { "UseBy" => "G", "Type" => "bool, int" },
|
134
154
|
"packmode" => { "UseBy" => "G", "Type" => "packMode" },
|
155
|
+
"pad" => { "UseBy" => "G", "Type" => "double, pointf" },
|
135
156
|
"page" => { "UseBy" => "G", "Type" => "pointf" },
|
136
157
|
"pagedir" => { "UseBy" => "G", "Type" => "pagedir" },
|
137
158
|
"pencolor" => { "UseBy" => "C", "Type" => "color" },
|
@@ -153,7 +174,7 @@ module Constants
|
|
153
174
|
"sametail" => { "UseBy" => "E", "Type" => "string" },
|
154
175
|
"samplepoints" => { "UseBy" => "G", "Type" => "int" },
|
155
176
|
"searchsize" => { "UseBy" => "G", "Type" => "int" },
|
156
|
-
"sep" => { "UseBy" => "G", "Type" => "double" },
|
177
|
+
"sep" => { "UseBy" => "G", "Type" => "double, pointf" },
|
157
178
|
"shape" => { "UseBy" => "N", "Type" => "shape" },
|
158
179
|
"shapefile" => { "UseBy" => "N", "Type" => "string" },
|
159
180
|
"showboxes" => { "UseBy" => "ENG", "Type" => "int" },
|
@@ -185,49 +206,93 @@ module Constants
|
|
185
206
|
|
186
207
|
## Const: Graph attributs
|
187
208
|
GRAPHSATTRS = [
|
209
|
+
"Damping",
|
210
|
+
"K",
|
211
|
+
"URL",
|
212
|
+
"bb",
|
188
213
|
"bgcolor",
|
189
214
|
"center",
|
215
|
+
"charset",
|
190
216
|
"clusterrank",
|
191
217
|
"color",
|
218
|
+
"colorscheme",
|
192
219
|
"comment",
|
193
220
|
"compound",
|
194
221
|
"concentrate",
|
222
|
+
"defaultdist",
|
223
|
+
"dim",
|
224
|
+
"diredgeconstraints",
|
225
|
+
"dpi",
|
226
|
+
"epsilon",
|
227
|
+
"esep",
|
195
228
|
"fillcolor",
|
196
229
|
"fontcolor",
|
197
230
|
"fontname",
|
231
|
+
"fontnames",
|
198
232
|
"fontpath",
|
199
233
|
"fontsize",
|
200
234
|
"label",
|
201
235
|
"labeljust",
|
202
236
|
"labelloc",
|
237
|
+
"landscape",
|
203
238
|
"layer",
|
239
|
+
"layers",
|
240
|
+
"layersep",
|
241
|
+
"lp",
|
204
242
|
"margin",
|
243
|
+
"maxiter",
|
205
244
|
"mclimit",
|
245
|
+
"mindist",
|
246
|
+
"mode",
|
247
|
+
"model",
|
248
|
+
"mosek",
|
206
249
|
"nodesep",
|
250
|
+
"nojustify",
|
251
|
+
"normalize",
|
207
252
|
"nslimit",
|
208
253
|
"nslimit1",
|
209
254
|
"ordering",
|
210
255
|
"orientation",
|
256
|
+
"outputorder",
|
257
|
+
"overlap",
|
258
|
+
"pack",
|
259
|
+
"packmode",
|
260
|
+
"pad",
|
211
261
|
"page",
|
212
262
|
"pagedir",
|
263
|
+
"pencolor",
|
264
|
+
"peripheries",
|
213
265
|
"quantum",
|
214
266
|
"rank",
|
215
267
|
"rankdir",
|
216
268
|
"ranksep",
|
217
269
|
"ratio",
|
218
270
|
"remincross",
|
271
|
+
"resolution",
|
272
|
+
"root",
|
219
273
|
"rotate",
|
220
274
|
"samplepoints",
|
221
275
|
"searchsize",
|
276
|
+
"sep",
|
277
|
+
"showboxes",
|
222
278
|
"size",
|
279
|
+
"splines",
|
280
|
+
"start",
|
223
281
|
"style",
|
224
|
-
"
|
282
|
+
"stylesheet",
|
283
|
+
"target",
|
284
|
+
"tooltip",
|
285
|
+
"truecolor",
|
286
|
+
"viewport",
|
287
|
+
"voro_margin"
|
225
288
|
]
|
226
289
|
|
227
290
|
## Const: Node attributs
|
228
291
|
NODESATTRS = [
|
292
|
+
"URL",
|
229
293
|
"bottomlabel",
|
230
294
|
"color",
|
295
|
+
"colorscheme",
|
231
296
|
"comment",
|
232
297
|
"distortion",
|
233
298
|
"fillcolor",
|
@@ -239,16 +304,26 @@ module Constants
|
|
239
304
|
"height",
|
240
305
|
"label", "html",
|
241
306
|
"layer",
|
307
|
+
"margin",
|
308
|
+
"nojustify",
|
242
309
|
"orientation",
|
243
310
|
"peripheries",
|
311
|
+
"pin",
|
312
|
+
"pos",
|
313
|
+
"rects",
|
244
314
|
"regular",
|
315
|
+
"root",
|
316
|
+
"samplepoints",
|
245
317
|
"shape",
|
246
318
|
"shapefile",
|
247
319
|
"sides",
|
248
320
|
"skew",
|
249
321
|
"style",
|
250
|
-
"
|
251
|
-
"
|
322
|
+
"target",
|
323
|
+
"tooltip",
|
324
|
+
#"toplabel",
|
325
|
+
#does not appear to be an option according to attributes info
|
326
|
+
"vertices",
|
252
327
|
"width",
|
253
328
|
"z"
|
254
329
|
]
|
@@ -259,32 +334,58 @@ module Constants
|
|
259
334
|
"arrowsize",
|
260
335
|
"arrowtail",
|
261
336
|
"color",
|
337
|
+
"colorscheme",
|
338
|
+
"comment",
|
262
339
|
"constraint",
|
263
340
|
"decorate",
|
264
341
|
"dir",
|
342
|
+
"edgeURL",
|
343
|
+
"edgehref",
|
344
|
+
"edgetarget",
|
345
|
+
"edgetooltip",
|
265
346
|
"fontcolor",
|
266
347
|
"fontname",
|
267
348
|
"fontsize",
|
349
|
+
"headURL",
|
350
|
+
"headclip",
|
351
|
+
"headhref",
|
268
352
|
"headlabel",
|
269
353
|
"headport",
|
270
|
-
"
|
354
|
+
"headtarget",
|
355
|
+
"headtooltip",
|
356
|
+
"href",
|
271
357
|
"label",
|
358
|
+
"labelURL",
|
272
359
|
"labelangle",
|
273
360
|
"labeldistance",
|
274
361
|
"labelfloat",
|
275
362
|
"labelfontcolor",
|
276
363
|
"labelfontname",
|
277
364
|
"labelfontsize",
|
365
|
+
"labelhref",
|
366
|
+
"labeltarget",
|
367
|
+
"labeltooltip",
|
278
368
|
"layer",
|
369
|
+
"len",
|
279
370
|
"lhead",
|
371
|
+
"lp",
|
280
372
|
"ltail",
|
281
373
|
"minlen",
|
374
|
+
"nojustify",
|
375
|
+
"pos",
|
282
376
|
"samehead",
|
283
377
|
"sametail",
|
378
|
+
"showboxes",
|
284
379
|
"style",
|
285
|
-
"taillael",
|
286
|
-
"tailport",
|
287
380
|
"tailURL",
|
381
|
+
"tailclip",
|
382
|
+
"tailhref",
|
383
|
+
"taillabel",
|
384
|
+
"tailport",
|
385
|
+
"tailtarget",
|
386
|
+
"tailtooltip",
|
387
|
+
"target",
|
388
|
+
"tooltip",
|
288
389
|
"weight"
|
289
390
|
]
|
290
391
|
end
|
metadata
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
|
-
rubygems_version: 0.9.
|
2
|
+
rubygems_version: 0.9.3
|
3
3
|
specification_version: 1
|
4
4
|
name: ruby-graphviz
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.
|
7
|
-
date: 2007-05-
|
6
|
+
version: 0.8.0
|
7
|
+
date: 2007-05-15 00:00:00 +02:00
|
8
8
|
summary: Interface to the GraphViz graphing tool
|
9
9
|
require_paths:
|
10
10
|
- lib
|