gzz-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gzz-commits] navidoc/navidoc link/__init__.py mp/__init__.py...


From: Asko Soukka
Subject: [Gzz-commits] navidoc/navidoc link/__init__.py mp/__init__.py...
Date: Thu, 24 Apr 2003 05:04:19 -0400

CVSROOT:        /cvsroot/navidoc
Module name:    navidoc
Changes by:     Asko Soukka <address@hidden>    03/04/24 05:04:19

Modified files:
        navidoc/link   : __init__.py 
        navidoc/mp     : __init__.py uml.py 

Log message:
        context_menu

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/link/__init__.py.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/mp/__init__.py.diff?tr1=1.13&tr2=1.14&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/mp/uml.py.diff?tr1=1.10&tr2=1.11&r1=text&r2=text

Patches:
Index: navidoc/navidoc/link/__init__.py
diff -u navidoc/navidoc/link/__init__.py:1.8 
navidoc/navidoc/link/__init__.py:1.9
--- navidoc/navidoc/link/__init__.py:1.8        Thu Apr 24 03:48:04 2003
+++ navidoc/navidoc/link/__init__.py    Thu Apr 24 05:04:19 2003
@@ -19,7 +19,7 @@
 # MA  02111-1307  USA
 # 
 
-#$Id: __init__.py,v 1.8 2003/04/24 07:48:04 humppake Exp $
+#$Id: __init__.py,v 1.9 2003/04/24 09:04:19 humppake Exp $
 
 #
 # Written by Tuomas Lukka, Asko Soukka
@@ -51,8 +51,7 @@
         self.title = s.strip()
 
         if len(list) > 0:
-            self.target = slashify(config.working_directory) \
-                          + slashify(config.linkpackage) + list[0]
+            self.target = os.path.realpath(slashify(config.working_directory) 
+ list[0])
             self.set_status(set_title=1)
         
         dbg(self.key+" title: %s, target: %s, error: %s" % (self.title, 
self.target, self.error))
Index: navidoc/navidoc/mp/__init__.py
diff -u navidoc/navidoc/mp/__init__.py:1.13 navidoc/navidoc/mp/__init__.py:1.14
--- navidoc/navidoc/mp/__init__.py:1.13 Thu Apr 24 03:48:04 2003
+++ navidoc/navidoc/mp/__init__.py      Thu Apr 24 05:04:19 2003
@@ -19,7 +19,7 @@
 # MA  02111-1307  USA
 # 
 
-# $Id: __init__.py,v 1.13 2003/04/24 07:48:04 humppake Exp $
+# $Id: __init__.py,v 1.14 2003/04/24 09:04:19 humppake Exp $
 
 #
 # Written by Tuomas Lukka, Asko Soukka
@@ -33,6 +33,7 @@
 import navidoc.link, navidoc.parser
 
 from navidoc.util.path import *
+from navidoc.util.parser import random_var
 
 dbg = config.dbg.shorthand('mp')
 dbg_fail = config.dbg.shorthand('mp.fail')
@@ -70,6 +71,83 @@
         if self.link != None:
             self.link.bbox = ('bboxmeasuredpic(%s)' % (self.var))
 
+class mptitle(MetapostElement):
+    key = 'title'
+    def __init__(self, var, s, list = []):
+       dbg("mp: %s %s" % (s,list))
+       self.var = var or s
+       self.name = s
+        self.do_contents(list)
+        if self.link != None:
+            self.link.bbox = ('bboxmeasuredpic(%s)' % (self.var))
+            self.link.rough_edge = 0
+    def setup_code(self):
+       s = """
+           picture %%.pict;
+           %%.pict = diagramTitle("%name%");
+           picmeasurements(%%);
+           """
+       return self.repl(s)
+    def draw_code(self):
+       s = """
+           drawmeasuredpic(%%);
+           """ 
+       return self.repl(s)
+
+def context_menu(diagram):
+    """ Creates the "menu" above the diagram. """
+
+    context_menu = ''
+    
+    # Refers must exist.
+    filepath = slashify(config.mp_directory)+diagram+'.gen.refers'
+    if (filepath):
+        refers_file = open(filepath, "r")
+        refers = refers_file.readlines()
+        refers_file.close()
+
+        # Removing white spaces, just for case
+        for index in range(len(refers)):
+            refers[index] = refers[index].strip()
+        while refers.count(''): refers.remove('')
+        
+        # List through in descending order.
+        refer_names = {}
+        for id_inv in range(len(refers)):
+            id = len(refers)-(id_inv+1)
+            refers[id] = refers[id].replace("\n", '')
+
+            refers_file = open(refers[id], 'r')                
+            title = re.compile('<title>([^<]*)</title>')
+            title = title.findall(refers_file.read())
+            refers_file.close()
+
+            print title
+            if len(title) > 0: title = title[0]
+            else: title = refers[id].split("/")[-1].split(".")[0]
+            print title
+            target = relative_path(config.working_directory, refers[id])
+            refer_names[id] = random_var()
+
+            element = mptitle(refer_names[id], title,
+                              [['link', target+'#'+diagram]])
+            if id == len(refers)-1:
+                context_menu += "\tdraw ulcorner(bbox(currentpicture))+(0,10) 
-- urcorner(bbox(currentpicture))+(0,10) withpen pencircle scaled 1.5pt;\n"
+                context_menu += element.setup_code()
+                context_menu += "\t"+refer_names[id]+".sw = 
ulcorner(bbox(currentpicture))+(35,0);\n"
+                context_menu += element.link.draw_code()
+                context_menu += element.draw_code()
+            else:
+                context_menu += element.setup_code()
+                context_menu += "\t"+refer_names[id]+".sw = "\
+                                  +refer_names[id+1]\
+                                  +".nw;\n"
+                context_menu += element.link.draw_code()
+                context_menu += element.draw_code()
+            if id == 0:
+                context_menu += "\tdraw (infontBB(\"from:\", \"Helvetica\") 
scaled 1.3) shifted (ulcorner(bbox(currentpicture))+(2,-13));\n"                
    
+    return context_menu
+
 def create_uml(diagram, context='', scale=1.0):
     """
     """
@@ -82,57 +160,11 @@
     l = navidoc.util.parser.parse_indented(s)
     m = navidoc.parser.ElementList(l)
 
-    if len(context) > 0:
-        context = '_'+context
-
     draw_extra = ''
 
-#    """ Creates the "menu" above the diagram. """
-#    """ Some variables are needed :/ """
-#    if menu and settings.has_key('name') and settings.has_key('path'):
-#        """Refers must exist"""
-#        if (os.path.isfile(path+settings['name']+".gen.refers")):
-#            refer_file = open(path+settings['name']\
-#                          +".gen.refers", "r")
-#            refers = refer_file.readlines()
-#            refer_file.close()
-#            """List through in descending order."""
-#            refer_names = {}
-#            for id_inv in range(len(refers)):
-#                id = len(refers)-(id_inv+1)
-#                refer_file = open(refers[id].replace(".rst", 
".gen.html").replace("\n",""))                
-#                refer_title = re.compile('<title>([^<]*)</title>')
-#                refer_title = refer_title.findall(refer_file.read())
-#                refer_file.close()
-#                if len(refer_title) > 0: refer_title = refer_title[0]
-#                else: refer_title = refers[id].split("/")[-1].split(".")[0]
-#
-#                slash = settings['path'].rfind("/")
-#                if slash != -1:
-#                    refer_path = settings['path'][0:slash+1].replace("//", 
"/")
-#                    refer_jlink = mputils.transition_path(refer_path,
-#                              refers[id].replace(".rst", 
".gen.html").replace("\n",""))
-#                else: refer_jlink = refers[id].replace(".rst", 
".gen.html").replace("\n","")
-##                print "refer:", refers[id], "jlink:",refer_jlink, "path:", 
settings['path']
-##                refer_name = refers[id].split("/")[-1].split(".")[0]
-#                refer_name = randomVar()
-#                refer_names[id] = refer_name
-#                refer_obj = mptitle(refer_name, refer_title)
-#                refer_obj.jlink = refer_jlink+"#"+settings['name']
-#                titles[refer_obj.jlink] = refer_title
-#                if id == len(refers)-1:
-#                    refer_draw += "\tdraw 
ulcorner(bbox(currentpicture))+(0,10) -- urcorner(bbox(currentpicture))+(0,10) 
withpen pencircle scaled 1.5pt;\n"
-#                    refer_draw += refer_obj.setupCode()
-#                    refer_draw += "\t"+refer_name+".sw = 
ulcorner(bbox(currentpicture))+(35,0);\n"
-#                    refer_draw += refer_obj.drawCode()
-#                else:
-#                    refer_draw += refer_obj.setupCode()
-#                    refer_draw += "\t"+refer_name+".sw = "\
-#                                  +refer_names[id+1]\
-#                                  +".nw;\n"
-#                    refer_draw += refer_obj.drawCode()
-#                if id == 0:
-#                    refer_draw += "\tdraw (infontBB(\"from:\", \"Helvetica\") 
scaled 1.3) shifted (ulcorner(bbox(currentpicture))+(2,-13));\n"                
    
+    if len(context) > 0:
+        context = '_'+context
+        draw_extra = context_menu(diagram);
 
     dir = slashify(config.mp_directory)
 
Index: navidoc/navidoc/mp/uml.py
diff -u navidoc/navidoc/mp/uml.py:1.10 navidoc/navidoc/mp/uml.py:1.11
--- navidoc/navidoc/mp/uml.py:1.10      Thu Apr 17 03:38:01 2003
+++ navidoc/navidoc/mp/uml.py   Thu Apr 24 05:04:19 2003
@@ -19,7 +19,7 @@
 # MA  02111-1307  USA
 # 
 
-# $Id: uml.py,v 1.10 2003/04/17 07:38:01 humppake Exp $
+# $Id: uml.py,v 1.11 2003/04/24 09:04:19 humppake Exp $
 
 #
 # Written by Tuomas Lukka, Asko Soukka
@@ -261,29 +261,6 @@
            drawmeasuredpic(%%);
            draw bboxmeasuredpic(%%);
            draw (((0,0)--(15,0)--(15,5)--(0,5)--cycle) shifted %%.nw);
-           """ 
-       return self.repl(s)
-
-class mptitle(navidoc.mp.MetapostElement):
-    key = 'title'
-    def __init__(self, var, s, list = []):
-       dbg("mp: %s %s" % (s,list))
-       self.var = var or s
-       self.name = s
-        self.do_contents(list)
-        if self.link != None:
-            self.link.bbox = ('bboxmeasuredpic(%s)' % (self.var))
-            self.link.rough_edge = 0
-    def setup_code(self):
-       s = """
-           picture %%.pict;
-           %%.pict = diagramTitle("%name%");
-           picmeasurements(%%);
-           """
-       return self.repl(s)
-    def draw_code(self):
-       s = """
-           drawmeasuredpic(%%);
            """ 
        return self.repl(s)
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]