graphvizml 0.4.5 → 0.5.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3ba6679dbfb36498af73546767fd8e751ef774af
4
- data.tar.gz: cda9fbc78586c332282eb3d5cb8e70b1d9f4eea7
3
+ metadata.gz: b4bdf526de42c11fc8ce95cae6fb00ab33da0060
4
+ data.tar.gz: 95bbde7cc050c1505f6da0d1d88a115f4e12b587
5
5
  SHA512:
6
- metadata.gz: ad0c4b1354f05d0bae6a8da70ea9eb3596a7671244621e2d627963c8f7213d3617e0e27745d3dfafb8e71e21d8d82b7affb087132a14d79762430ff29ae2e93c
7
- data.tar.gz: acab68d1a61b4b941d687172cb55a640823d0a05f1ccdb64bfde001c096c190c53ed3ecc48be3254013c887c0d314366e2f470844d7520b4871ebd5c50b0c1e4
6
+ metadata.gz: 660a430841c9c74ee2a96c5d0c710368339fab5af3233337d8777040ce852eaec9addccae47558a0ad253f9563a175c625e4a73f54c92608eacb93cc30d373a8
7
+ data.tar.gz: 7446bdea1e72372999a5011fc3197ee8347689cb561953b06d105a2265316528b594b79c32b8723bc10f840dc071cce302369237d8271884fffca0d343a3899a
checksums.yaml.gz.sig CHANGED
Binary file
data/lib/graphvizml.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  # file: graphvizml.rb
4
4
 
5
5
 
6
- require 'rexle'
6
+ require 'domle'
7
7
  require 'graphviz'
8
8
 
9
9
 
@@ -15,7 +15,7 @@ class GraphVizML
15
15
 
16
16
  @doc = if obj.is_a? String then
17
17
 
18
- Rexle.new(File.read @filename=obj)
18
+ Domle.new(File.read @filename=obj)
19
19
 
20
20
  elsif obj.is_a? Rexle
21
21
 
@@ -80,7 +80,8 @@ class GraphVizML
80
80
  # shape options: box, ellipse, record, diamond, circle, polygon, point
81
81
  shape = h.has_key?(:shape) ? h[:shape] : :box
82
82
  #puts "adding node id: %s label: %s" % [id, label]
83
- r.merge(id => [label, {shape: shape}, nil])
83
+ r.merge(id => [label, node.style.merge({shape: shape}), nil])
84
+
84
85
  end
85
86
 
86
87
 
@@ -89,7 +90,6 @@ class GraphVizML
89
90
  id_1 = e_edges.root.element('records/edge/records/node/attribute::gid').to_s
90
91
  nodes[id_1][-1] = @g.add_node(nodes[id_1][0])
91
92
 
92
-
93
93
  e_edges.root.xpath('records/edge').each do |edge|
94
94
 
95
95
  id1, id2 = edge.xpath('records/node/attribute::gid').map(&:to_s)
@@ -97,80 +97,21 @@ class GraphVizML
97
97
  label = edge.text('summary/label').to_s
98
98
  #puts "adding edge id1: %s id2: %s label: %s" % [id1, id2, label]
99
99
  nodes[id2][-1] ||= nodes[id1].last.add_node(nodes[id2][0])
100
- nodes[id1][-1].connections.last.attributes[:label] = label
101
- end
102
-
103
-
104
- # add the styling once the objects have been created
105
-
106
- style = @doc.root.element('style')
107
-
108
- stylesheet = style ? style.text : default_stylesheet()
109
-
110
-
111
- # parse the stylesheet
112
-
113
- a = stylesheet.split(/}/)[0..-2].map do |entry|
114
-
115
- raw_selector,raw_styles = entry.split(/{/,2)
116
-
117
- h = raw_styles.strip.split(/;/).inject({}) do |r, x|
118
- k, v = x.split(/:/,2).map(&:strip)
119
- r.merge(k.to_sym => v)
120
- end
121
-
122
- [raw_selector.split(/,\s*/).map(&:strip), h]
123
- end
124
-
125
- node_style = a.detect {|x| x.assoc 'node'}
126
-
100
+ attributes = edge.style.merge({label: label})
101
+ conn = nodes[id1][-1].connections.last
102
+ conn.attributes[:label] = label
103
+ edge.style.each {|key,val| conn.attributes[key] = val }
104
+
105
+ end
106
+
127
107
  nodes.each do |id, x|
128
108
 
129
109
  _, attributes, obj = x
130
- attributes.each {|key, value| obj.attributes[key] = value }
131
- node_style.last.each {|key, value| obj.attributes[key] = value } if node_style
110
+ attributes.each {|key, value| obj.attributes[key] = value }
132
111
 
133
112
  end
134
-
135
- edge_style = a.detect {|x| x.assoc 'edge'}
136
-
137
- nodes.each do |id,x|
138
- x.last.connections.each do |conn|
139
- edge_style.last.each {|key, value| conn.attributes[key] = value } if edge_style
140
- end
141
- end
142
-
113
+
143
114
  :build
144
115
  end
145
116
 
146
- private
147
-
148
- def default_stylesheet()
149
-
150
- <<STYLE
151
- node {
152
- color: #ddaa66;
153
- fillcolor: #ffeeee;
154
- fontcolor: #113377;
155
- fontname: Trebuchet MS;
156
- fontsize: 9;
157
- margin: 0.1;
158
- penwidth: 1.3;
159
- shape: box;
160
- style: filled;
161
- }
162
-
163
- edge {
164
- arrowsize: 0.9;
165
- color: #999999;
166
- fontcolor: #444444;
167
- fontname: Verdana;
168
- fontsize: 9;
169
- #{@type == :digraph ? 'dir: forward;' : ''}
170
- weight: 1;
171
- }
172
-
173
- STYLE
174
- end
175
-
176
117
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: graphvizml
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.5
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -34,25 +34,25 @@ cert_chain:
34
34
  date: 2017-09-05 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
- name: rexle
37
+ name: domle
38
38
  requirement: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - "~>"
41
41
  - !ruby/object:Gem::Version
42
- version: '1.4'
42
+ version: '0.2'
43
43
  - - ">="
44
44
  - !ruby/object:Gem::Version
45
- version: 1.4.7
45
+ version: 0.2.0
46
46
  type: :runtime
47
47
  prerelease: false
48
48
  version_requirements: !ruby/object:Gem::Requirement
49
49
  requirements:
50
50
  - - "~>"
51
51
  - !ruby/object:Gem::Version
52
- version: '1.4'
52
+ version: '0.2'
53
53
  - - ">="
54
54
  - !ruby/object:Gem::Version
55
- version: 1.4.7
55
+ version: 0.2.0
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: graphviz
58
58
  requirement: !ruby/object:Gem::Requirement
metadata.gz.sig CHANGED
Binary file