/[thuban]/branches/WIP-pyshapelib-bramz/Thuban/Model/classification.py
ViewVC logotype

Diff of /branches/WIP-pyshapelib-bramz/Thuban/Model/classification.py

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

revision 544 by jonathan, Thu Mar 20 09:43:48 2003 UTC revision 602 by jonathan, Fri Apr 4 12:12:18 2003 UTC
# Line 150  class Classification: Line 150  class Classification:
150                  self.layer = None                  self.layer = None
151                  l.SetClassification(None)                  l.SetClassification(None)
152          else:          else:
153              assert(isinstance(layer, Thuban.Model.layer.Layer))              assert isinstance(layer, Thuban.Model.layer.Layer)
154    
155              old_layer = self.layer              old_layer = self.layer
156    
# Line 177  class Classification: Line 177  class Classification:
177             group -- group that the value maps to.             group -- group that the value maps to.
178          """          """
179    
180          assert(isinstance(group, ClassGroupDefault))          assert isinstance(group, ClassGroupDefault)
181          self.AddGroup(group)          self.AddGroup(group)
182    
183      def GetDefaultGroup(self):      def GetDefaultGroup(self):
# Line 195  class Classification: Line 195  class Classification:
195    
196          fill -- a Color object.          fill -- a Color object.
197          """          """
198          assert(isinstance(fill, Color))          assert isinstance(fill, Color)
199          self.GetDefaultGroup().GetProperties().SetFill(fill)          self.GetDefaultGroup().GetProperties().SetFill(fill)
200          self.__SendNotification()          self.__SendNotification()
201                    
# Line 208  class Classification: Line 208  class Classification:
208    
209          color -- a Color object.          color -- a Color object.
210          """          """
211          assert(isinstance(color, Color))          assert isinstance(color, Color)
212          self.GetDefaultGroup().GetProperties().SetLineColor(color)          self.GetDefaultGroup().GetProperties().SetLineColor(color)
213          self.__SendNotification()          self.__SendNotification()
214                    
# Line 221  class Classification: Line 221  class Classification:
221    
222          lineWidth -- an integer > 0.          lineWidth -- an integer > 0.
223          """          """
224          assert(isinstance(lineWidth, IntType))          assert isinstance(lineWidth, IntType)
225          self.GetDefaultGroup().GetProperties().SetLineWidth(lineWidth)          self.GetDefaultGroup().GetProperties().SetLineWidth(lineWidth)
226          self.__SendNotification()          self.__SendNotification()
227                    
# Line 235  class Classification: Line 235  class Classification:
235          item -- this must be a valid ClassGroup object          item -- this must be a valid ClassGroup object
236          """          """
237    
238          assert(isinstance(item, ClassGroup))          assert isinstance(item, ClassGroup)
239    
240          if len(self.groups) > 0 and isinstance(item, ClassGroupDefault):          if len(self.groups) > 0 and isinstance(item, ClassGroupDefault):
241              self.groups[0] = item              self.groups[0] = item
# Line 390  class ClassGroupProperties: Line 390  class ClassGroupProperties:
390      def SetProperties(self, props):      def SetProperties(self, props):
391          """Set this class's properties to those in class props."""          """Set this class's properties to those in class props."""
392    
393          assert(isinstance(props, ClassGroupProperties))          assert isinstance(props, ClassGroupProperties)
394          self.SetLineColor(props.GetLineColor())          self.SetLineColor(props.GetLineColor())
395          self.SetLineWidth(props.GetLineWidth())          self.SetLineWidth(props.GetLineWidth())
396          self.SetFill(props.GetFill())          self.SetFill(props.GetFill())
# Line 405  class ClassGroupProperties: Line 405  class ClassGroupProperties:
405          color -- the color of the line. This must be a Color object.          color -- the color of the line. This must be a Color object.
406          """          """
407    
408          assert(isinstance(color, Color))          assert isinstance(color, Color)
409          self.stroke = color          #self.stroke = Color(color.red, color.green, color.blue)
410            self.stroke = copy.copy(color)
411    
412      def GetLineWidth(self):      def GetLineWidth(self):
413          """Return the line width."""          """Return the line width."""
# Line 417  class ClassGroupProperties: Line 418  class ClassGroupProperties:
418    
419          lineWidth -- the new line width. This must be > 0.          lineWidth -- the new line width. This must be > 0.
420          """          """
421          assert(isinstance(lineWidth, IntType))          assert isinstance(lineWidth, IntType)
422          if (lineWidth < 1):          if (lineWidth < 1):
423              raise ValueError(_("lineWidth < 1"))              raise ValueError(_("lineWidth < 1"))
424    
# Line 433  class ClassGroupProperties: Line 434  class ClassGroupProperties:
434          fill -- the color of the fill. This must be a Color object.          fill -- the color of the fill. This must be a Color object.
435          """          """
436    
437          assert(isinstance(fill, Color))          assert isinstance(fill, Color)
438          self.fill = fill          self.fill = copy.copy(fill)
439            #self.fill = Color(fill.red, fill.green, fill.blue)
440    
441      def __eq__(self, other):      def __eq__(self, other):
442          """Return true if 'props' has the same attributes as this class"""          """Return true if 'props' has the same attributes as this class"""
# Line 450  class ClassGroupProperties: Line 452  class ClassGroupProperties:
452      def __copy__(self):      def __copy__(self):
453          return ClassGroupProperties(self)          return ClassGroupProperties(self)
454    
455        def __deepcopy__(self):
456            return ClassGroupProperties(self)
457    
458  class ClassGroup:  class ClassGroup:
459      """A base class for all Groups within a Classification"""      """A base class for all Groups within a Classification"""
460    
# Line 473  class ClassGroup: Line 478  class ClassGroup:
478          label -- a string representing the Group's label. This must          label -- a string representing the Group's label. This must
479                   not be None.                   not be None.
480          """          """
481          assert(isinstance(label, StringType))          assert isinstance(label, StringType)
482          self.label = label          self.label = label
483    
484      def GetDisplayText(self):      def GetDisplayText(self):
485          assert(False, "GetDisplay must be overridden by subclass!")          assert False, "GetDisplay must be overridden by subclass!"
486          return ""          return ""
487    
488      def Matches(self, value):      def Matches(self, value):
# Line 485  class ClassGroup: Line 490  class ClassGroup:
490    
491          Returns False. This needs to be overridden by all subclasses.          Returns False. This needs to be overridden by all subclasses.
492          """          """
493          assert(False, "GetMatches must be overridden by subclass!")          assert False, "GetMatches must be overridden by subclass!"
494          return False          return False
495    
496      def GetProperties(self):      def GetProperties(self):
# Line 493  class ClassGroup: Line 498  class ClassGroup:
498    
499          Returns None. This needs to be overridden by all subclasses.          Returns None. This needs to be overridden by all subclasses.
500          """          """
501          assert(False, "GetProperties must be overridden by subclass!")          assert False, "GetProperties must be overridden by subclass!"
502          return None          return None
503    
504            
# Line 556  class ClassGroupSingleton(ClassGroup): Line 561  class ClassGroupSingleton(ClassGroup):
561          """          """
562    
563          if prop is None: prop = ClassGroupProperties()          if prop is None: prop = ClassGroupProperties()
564          assert(isinstance(prop, ClassGroupProperties))          assert isinstance(prop, ClassGroupProperties)
565          self.prop = prop          self.prop = prop
566    
567      def GetDisplayText(self):      def GetDisplayText(self):
# Line 613  class ClassGroupDefault(ClassGroup): Line 618  class ClassGroupDefault(ClassGroup):
618          """          """
619    
620          if prop is None: prop = ClassGroupProperties()          if prop is None: prop = ClassGroupProperties()
621          assert(isinstance(prop, ClassGroupProperties))          assert isinstance(prop, ClassGroupProperties)
622          self.prop = prop          self.prop = prop
623    
624      def GetDisplayText(self):      def GetDisplayText(self):
# Line 732  class ClassGroupRange(ClassGroup): Line 737  class ClassGroupRange(ClassGroup):
737                  a default set of properties is created.                  a default set of properties is created.
738          """          """
739          if prop is None: prop = ClassGroupProperties()          if prop is None: prop = ClassGroupProperties()
740          assert(isinstance(prop, ClassGroupProperties))          assert isinstance(prop, ClassGroupProperties)
741          self.prop = prop          self.prop = prop
742    
743      def GetDisplayText(self):      def GetDisplayText(self):

Legend:
Removed from v.544  
changed lines
  Added in v.602

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26