]> granicus.if.org Git - graphviz/commitdiff
vaious fixes for rendering to gtk or xlig from a script. modgraph.tcl demo
authorellson <devnull@localhost>
Tue, 18 Oct 2005 18:59:02 +0000 (18:59 +0000)
committerellson <devnull@localhost>
Tue, 18 Oct 2005 18:59:02 +0000 (18:59 +0000)
tclpkg/gv/demo/modgraph.tcl [new file with mode: 0755]

diff --git a/tclpkg/gv/demo/modgraph.tcl b/tclpkg/gv/demo/modgraph.tcl
new file mode 100755 (executable)
index 0000000..07e8d62
--- /dev/null
@@ -0,0 +1,33 @@
+#!/usr/bin/tclsh
+
+# display the kernel module dependencies 
+
+package require gv
+
+set f [open /proc/modules r]
+set modules [read -nonewline $f]
+close $f
+
+set g [gv::digraph G]
+gv::setv $g rankdir LR
+gv::setv $g nodesep .05
+
+gv::setv $g node shape box
+gv::setv $g node width 0
+gv::setv $g node height 0
+gv::setv $g node margin .03
+gv::setv $g node fontsize 8
+gv::setv $g node fontname helvetica
+
+gv::setv $g edge arrowsize .4
+
+foreach rec [split $modules \n] {
+  set n [gv::node $g [lindex $rec 0]]
+  foreach usedby [split [lindex $rec 3] ,] {
+    if {[string equal $usedby -] || [string equal $usedby {}]} {continue}
+    set e [gv::edge $n [gv::node $g $usedby]]
+  }
+}
+
+gv::layout $g dot
+gv::render $g xlib