/[thuban]/branches/WIP-pyshapelib-bramz/Thuban/UI/legend.py
ViewVC logotype

Diff of /branches/WIP-pyshapelib-bramz/Thuban/UI/legend.py

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

revision 605 by jonathan, Fri Apr 4 12:16:13 2003 UTC revision 639 by jonathan, Thu Apr 10 14:35:39 2003 UTC
# Line 25  from Thuban.Lib.connector import Connect Line 25  from Thuban.Lib.connector import Connect
25  ID_LEGEND_MOVEUP = 4001  ID_LEGEND_MOVEUP = 4001
26  ID_LEGEND_MOVEDOWN = 4002  ID_LEGEND_MOVEDOWN = 4002
27  ID_LEGEND_TREE = 4003  ID_LEGEND_TREE = 4003
28  ID_LEGEND_CLASSIFY = 4004  ID_LEGEND_PROPS = 4004
29  ID_LEGEND_SHOWLAYER = 4005  ID_LEGEND_SHOWLAYER = 4005
30  ID_LEGEND_HIDELAYER = 4006  ID_LEGEND_HIDELAYER = 4006
31    
# Line 54  class LegendPanel(DockPanel): Line 54  class LegendPanel(DockPanel):
54          buttonBox.Add(button, 0, wxGROW | wxLEFT | wxRIGHT, 0)          buttonBox.Add(button, 0, wxGROW | wxLEFT | wxRIGHT, 0)
55          self.buttons.append(button)          self.buttons.append(button)
56    
57          button = wxButton(self, ID_LEGEND_CLASSIFY, _("Classify"))          button = wxButton(self, ID_LEGEND_PROPS, _("Properties"))
58          buttonBox.Add(button, 0, wxGROW | wxLEFT | wxRIGHT, 0)          buttonBox.Add(button, 0, wxGROW | wxLEFT | wxRIGHT, 0)
59          self.buttons.append(button)          self.buttons.append(button)
60    
# Line 68  class LegendPanel(DockPanel): Line 68  class LegendPanel(DockPanel):
68    
69          EVT_BUTTON(self, ID_LEGEND_MOVEUP, self._OnMoveUp)          EVT_BUTTON(self, ID_LEGEND_MOVEUP, self._OnMoveUp)
70          EVT_BUTTON(self, ID_LEGEND_MOVEDOWN, self._OnMoveDown)          EVT_BUTTON(self, ID_LEGEND_MOVEDOWN, self._OnMoveDown)
71          EVT_BUTTON(self, ID_LEGEND_CLASSIFY, self._OnClassify)          EVT_BUTTON(self, ID_LEGEND_PROPS, self._OnProperties)
72          EVT_BUTTON(self, ID_LEGEND_SHOWLAYER, self._OnShowLayer)          EVT_BUTTON(self, ID_LEGEND_SHOWLAYER, self._OnShowLayer)
73          EVT_BUTTON(self, ID_LEGEND_HIDELAYER, self._OnHideLayer)          EVT_BUTTON(self, ID_LEGEND_HIDELAYER, self._OnHideLayer)
74    
# Line 105  class LegendPanel(DockPanel): Line 105  class LegendPanel(DockPanel):
105          if ok:          if ok:
106              self.mainWindow.SelectLayer(layer)              self.mainWindow.SelectLayer(layer)
107    
108      def DoOnClassify(self):      def DoOnProperties(self):
109          list = self.tree.GetSelectedHierarchy()          list = self.tree.GetSelectedHierarchy()
110    
111          ok = isinstance(list[0], Layer)          ok = isinstance(list[0], Layer)
112          if ok:          if ok:
113              self.mainWindow.OpenClassifier(list[0], list[1])              self.mainWindow.OpenLayerProperties(list[0], list[1])
114    
115      def Destroy(self):      def Destroy(self):
116          self.__Close()          self.__Close()
117    
118      def _OnClassify(self, event):      def _OnProperties(self, event):
119          self.DoOnClassify()          self.DoOnProperties()
120    
121      def _OnMoveUp(self, event):      def _OnMoveUp(self, event):
122          self.tree.MoveCurrentItemUp()          self.tree.MoveCurrentItemUp()
# Line 261  class LegendTree(wxTreeCtrl): Line 261  class LegendTree(wxTreeCtrl):
261          layer, group = self.GetSelectedHierarchy()          layer, group = self.GetSelectedHierarchy()
262          layer.SetVisible(False)          layer.SetVisible(False)
263    
 #   def DoOnClassify(self):  
 #       id = self.GetSelection()  
 #       assert id.IsOk()  
   
 #       item = self.GetPyData(id)  
 #       if isinstance(item, ClassGroup):  
 #           id = self.GetItemParent(id)  
 #           assert id.IsOk()  
 #           item = self.GetPyData(id)  
   
 #       # XXX: THIS IS SUCH AWFUL STYLE! YUCK!  
 #       self.parent.mainWindow.OpenClassifier(item)  
 #       #assert False, "XXX: FIXME HERE"  
   
264      def Sort(self):      def Sort(self):
265          self.SortChildren(self.GetRootItem())          self.SortChildren(self.GetRootItem())
266    
267      def _OnMsgMapsChanged(self):      def _OnMsgMapsChanged(self):
268          print "ADfsadfsadfsadfsa"          #print self.map is self.mainWindow.Map()
         print self.map is self.mainWindow.Map()  
269          self.SetMap(self.mainWindow.Map())          self.SetMap(self.mainWindow.Map())
270                    
271      def _OnSelChanged(self, event):      def _OnSelChanged(self, event):
# Line 289  class LegendTree(wxTreeCtrl): Line 274  class LegendTree(wxTreeCtrl):
274          self.parent.DoOnSelChanged(layer, group)          self.parent.DoOnSelChanged(layer, group)
275    
276      def _OnItemActivated(self, event):      def _OnItemActivated(self, event):
277          self.parent.DoOnClassify()          self.parent.DoOnProperties()
278    
279      def _OnMsgLayerChanged(self, layer):      def _OnMsgLayerChanged(self, layer):
280          assert isinstance(layer, Layer)          assert isinstance(layer, Layer)
# Line 368  class LegendTree(wxTreeCtrl): Line 353  class LegendTree(wxTreeCtrl):
353                  l.Subscribe(LAYER_VISIBILITY_CHANGED,                  l.Subscribe(LAYER_VISIBILITY_CHANGED,
354                              self._OnMsgLayerVisibilityChanged)                              self._OnMsgLayerVisibilityChanged)
355                  self.SetPyData(id, l)                  self.SetPyData(id, l)
356                  font = self.GetItemFont(id)                  self.__SetVisibilityStyle(l.Visible(), id)
                 if not l.Visible():  
                     font.SetStyle(wxITALIC)  
                     self.SetItemFont(id, font)  
357    
358                  self.layer2id[l] = id                  self.layer2id[l] = id
359    
# Line 391  class LegendTree(wxTreeCtrl): Line 373  class LegendTree(wxTreeCtrl):
373    
374          shapeType = layer.ShapeType()          shapeType = layer.ShapeType()
375    
376            show = layer.Visible()
377          for g in clazz:          for g in clazz:
378              id = self.AppendItem(pid, g.GetDisplayText())              if g.IsVisible():
379              self.SetPyData(id, g)                  id = self.AppendItem(pid, g.GetDisplayText())
380                    self.SetPyData(id, g)
381              bmp = self.__BuildGroupImage(g, shapeType)                  self.__SetVisibilityStyle(show, id)
382    
383              if bmp is None:                  bmp = self.__BuildGroupImage(g, shapeType)
384                  self.SetItemImage(id, self.emptyImageIndex)  
385              else:                  if bmp is None:
386                  i = self.image_list.Add(bmp)                      self.SetItemImage(id, self.emptyImageIndex)
387                  self.SetItemImage(id, i)                  else:
388                        i = self.image_list.Add(bmp)
389                        self.SetItemImage(id, i)
390    
391          self.Thaw()          self.Thaw()
392    
# Line 429  class LegendTree(wxTreeCtrl): Line 414  class LegendTree(wxTreeCtrl):
414    
415          self.DeleteAllItems()          self.DeleteAllItems()
416    
417      def __ShowHideHelper(self, show, id):      def __SetVisibilityStyle(self, visible, id):
418          font = self.GetItemFont(id)          font = self.GetItemFont(id)
419    
420          if show:          if visible:
421              font.SetStyle(wxNORMAL)              font.SetStyle(wxNORMAL)
422              color = wxBLACK              color = wxBLACK
423          else:          else:
# Line 446  class LegendTree(wxTreeCtrl): Line 431  class LegendTree(wxTreeCtrl):
431          parent = self.layer2id[layer]          parent = self.layer2id[layer]
432          assert parent.IsOk()          assert parent.IsOk()
433    
434          show = layer.Visible()          visible = layer.Visible()
   
435    
436          self.__ShowHideHelper(show, parent)          self.__SetVisibilityStyle(visible, parent)
437    
438          id, cookie = self.GetFirstChild(parent, 123)          id, cookie = self.GetFirstChild(parent, 123)
439    
440          while id.IsOk():          while id.IsOk():
441              self.__ShowHideHelper(show, id)              self.__SetVisibilityStyle(visible, id)
442              id, cookie = self.GetNextChild(parent, cookie)              id, cookie = self.GetNextChild(parent, cookie)
443                            

Legend:
Removed from v.605  
changed lines
  Added in v.639

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26