diff options
author | Derrell Lipman <derrell@samba.org> | 2007-02-06 03:23:52 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:44:34 -0500 |
commit | ef256c958066c19bb10cbe9745bdf96b6514762d (patch) | |
tree | dbe379cb3021c5af2d1b8f74528e4fff968fc712 /webapps/qooxdoo-0.6.5-sdk/frontend/framework/tool/modules/graph.py | |
parent | a8d0f5df6266aeacdb20326094c0401618ab62e8 (diff) | |
download | samba-ef256c958066c19bb10cbe9745bdf96b6514762d.tar.gz samba-ef256c958066c19bb10cbe9745bdf96b6514762d.tar.bz2 samba-ef256c958066c19bb10cbe9745bdf96b6514762d.zip |
r21167: - Upgrade to latest released qooxdoo. This is step 1 of the upgrade process,
which involves adding the latest SDK. This new version has not 2, but 4
icon themes. In order to quiet Andrew B. who thinks that 9000+ files in a
gui api is too many (come on, disk space is free these days :-), I have
removed 3 of the 4 icon themes, leaving only the default, Nuvola. That
lowers the file count by 1/3. I'm sure Andrew still isn't happy, but I hope
he's a bit happier... Step 2 will make him happier yet.
(This used to be commit d161c1382c36238105b85d0499d5a1011f580f52)
Diffstat (limited to 'webapps/qooxdoo-0.6.5-sdk/frontend/framework/tool/modules/graph.py')
-rwxr-xr-x | webapps/qooxdoo-0.6.5-sdk/frontend/framework/tool/modules/graph.py | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/tool/modules/graph.py b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/tool/modules/graph.py new file mode 100755 index 0000000000..b5bac4c94e --- /dev/null +++ b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/tool/modules/graph.py @@ -0,0 +1,73 @@ +import os +import math +import filetool +################################################################################ +# +# qooxdoo - the new era of web development +# +# http://qooxdoo.org +# +# Copyright: +# 2006-2007 1&1 Internet AG, Germany, http://www.1and1.org +# +# License: +# LGPL: http://www.gnu.org/licenses/lgpl.html +# EPL: http://www.eclipse.org/org/documents/epl-v10.php +# See the LICENSE file in the project's top-level directory for details. +# +# Authors: +# * Fabian Jakobs (fjakobs) +# +################################################################################ + +# Write dependencies to a Graphviz compatible file (http://www.graphviz.org/) + +def dotLine(fileDb, fileId, depEntry, largetFileSize): + file = fileId.split(".") + dep = depEntry.split(".") + weight = 1 + + for i in range(len(file)): + if file[i] == dep[i]: + weight += 1 + else: + break + + size = os.path.getsize(fileDb[fileId]["path"]) + + content = ' "%s" [color="%s %s 1.000"];\n' % (fileId, math.log(size)/math.log(largetFileSize), math.log(size)/math.log(largetFileSize)) + content += ' "%s" -> "%s" [weight=%s];\n' % (fileId, depEntry, weight) + + return content + + +def store(fileDb, sortedIncludeList, options): + content = '''digraph "qooxdoo" { +node [style=filled]; +''' + + largest = 0 + for fileId in sortedIncludeList: + size = os.path.getsize(fileDb[fileId]["path"]) + if size > largest: + largest = size + + for fileId in sortedIncludeList: + if len(fileDb[fileId]["loadtimeDeps"]) > 0: + for depEntry in fileDb[fileId]["loadtimeDeps"]: + content += dotLine(fileDb, fileId, depEntry, largest) + + if len(fileDb[fileId]["afterDeps"]) > 0: + for depEntry in fileDb[fileId]["afterDeps"]: + content += dotLine(fileDb, fileId, depEntry, largest) + + if len(fileDb[fileId]["runtimeDeps"]) > 0: + for depEntry in fileDb[fileId]["runtimeDeps"]: + content += dotLine(fileDb, fileId, depEntry, largest) + + if len(fileDb[fileId]["loadDeps"]) > 0: + for depEntry in fileDb[fileId]["loadDeps"]: + content += dotLine(fileDb, fileId, depEntry, largest) + + content += '}' + filetool.save(options.depDotFile, content)
\ No newline at end of file |