/[fenfire]/fenfire/org/fenfire/view/lava/mindMapView2D.py
ViewVC logotype

Diff of /fenfire/org/fenfire/view/lava/mindMapView2D.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.43 by humppake, Mon Aug 25 23:11:37 2003 UTC revision 1.44 by humppake, Tue Aug 26 09:40:36 2003 UTC
# Line 65  class MindMapMainNode2D(ff.view.buoy.Mai Line 65  class MindMapMainNode2D(ff.view.buoy.Mai
65      def renderMain(self, vs, into):      def renderMain(self, vs, into):
66          ff.view.buoy.MainNode2D.renderMain(self, vs, into)          ff.view.buoy.MainNode2D.renderMain(self, vs, into)
67          self.context.floatingHash = java.util.HashMap()          self.context.floatingHash = java.util.HashMap()
68            self.floatingView.matchingParent = into
69    
70          accursed = self.context.c.getAccursed()          accursed = self.context.c.getAccursed()
71          # adding accursed to multiplexer          # adding accursed to multiplexer
# Line 83  class MindMapMainNode2D(ff.view.buoy.Mai Line 84  class MindMapMainNode2D(ff.view.buoy.Mai
84              buffer.append(obj)              buffer.append(obj)
85    
86          buffer.extend(self.context.components)          buffer.extend(self.context.components)
87          floating = self.floatingBuffer(vs, buffer)          floating = self.floatingBuffer(vs, into, buffer)
88          i = floating.keySet().iterator()          i = floating.keySet().iterator()
89    
90          while i.hasNext():          while i.hasNext():
91              node = i.next()              node = i.next()
92              if self.structLink.isLinked(node):              if self.structLink.isLinked(node):
                 self.floatingView.matchingParent = into  
93                  self.floatingView.net = floating.get(node)                  self.floatingView.net = floating.get(node)
94                  self.floatingView.drawMindMap(vs)                  self.floatingView.drawMindMap(vs)
95                  j = self.floatingView.net.iterator(node)                  j = self.floatingView.net.iterator(node)
# Line 98  class MindMapMainNode2D(ff.view.buoy.Mai Line 98  class MindMapMainNode2D(ff.view.buoy.Mai
98              else:              else:
99                  self.place(vs, node, floating.get(node))                  self.place(vs, node, floating.get(node))
100                            
101      def floatingBuffer(self, vs, buffer):      def floatingBuffer(self, vs, into, buffer):
102          map = java.util.HashMap()          map = java.util.HashMap()
103          if len(buffer) == 0: return map          if len(buffer) == 0: return map
104    
# Line 107  class MindMapMainNode2D(ff.view.buoy.Mai Line 107  class MindMapMainNode2D(ff.view.buoy.Mai
107              if self.structLink.isLinked(buffer[i]):              if self.structLink.isLinked(buffer[i]):
108                  path = java.util.ArrayList(1)                  path = java.util.ArrayList(1)
109                  path.add(buffer[i])                  path.add(buffer[i])
110                  cs = self.singleCS(vs, buffer[i], Math.toRadians(i*d))                  cs = self.singleCS(vs, into, buffer[i], Math.toRadians(i*d))
111                  cs = vs.coords.translate(cs, 0,0, 100)                  cs = vs.coords.translate(cs, 0,0, 100)
112                  vs.matcher.add(cs, "Floating_"+buffer[i])                  vs.matcher.add(cs, "Floating_"+buffer[i])
113                  map.put(buffer[i], self.floatingView.geometry.buildMindNet(vs, cs, path))                  map.put(buffer[i], self.floatingView.geometry.buildMindNet(vs, cs, path))
114              else:              else:
115                  map.put(buffer[i], self.singleCS(vs, buffer[i], Math.toRadians(i*d)))                  map.put(buffer[i], self.singleCS(vs, into, buffer[i], Math.toRadians(i*d)))
116                                    
117          return map          return map
118                            
119      def singleCS(self, vs, node, angle):      def singleCS(self, vs, into, node, angle):
120          angle += 0.5 * Math.PI          angle += 0.5 * Math.PI
121          angle %= 2.0 * Math.PI          angle %= 2.0 * Math.PI
122          wi, h = vs.size.width, vs.size.height          wi, h = vs.size.width, vs.size.height
123          a, b = wi/2.3, h/2.99          a, b = wi/2.3, h/2.3
124          x0,y0 = wi/2.0, h/2.0          x0,y0 = wi/2.0, h/2.0
125          bx, by = wi/7, h/27          bx, by = 1,1
126                    
127          e = Math.sqrt(1 - b**2/a**2)          e = Math.sqrt(1 - b**2/a**2)
128    
# Line 131  class MindMapMainNode2D(ff.view.buoy.Mai Line 131  class MindMapMainNode2D(ff.view.buoy.Mai
131          x = r * Math.cos(angle) + x0          x = r * Math.cos(angle) + x0
132          y = -r * Math.sin(angle) + y0          y = -r * Math.sin(angle) + y0
133                    
134          cs = vs.orthoBoxCS(0, node, -100, x-bx/2,y-by/2, 1,1, bx,by)          cs = vs.orthoBoxCS(into, node, -100, x-bx/2,y-by/2, 1,1, bx,by)
135          return cs          return cs
136    
137      def place(self, vs, node, cs):      def place(self, vs, node, cs):

Legend:
Removed from v.1.43  
changed lines
  Added in v.1.44

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26