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

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

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

revision 1341 by jonathan, Tue Jul 1 16:10:42 2003 UTC revision 1391 by jonathan, Thu Jul 10 14:54:02 2003 UTC
# Line 16  from Thuban.Model.classification import Line 16  from Thuban.Model.classification import
16  from Thuban.Model.table import FIELDTYPE_INT, FIELDTYPE_DOUBLE, \  from Thuban.Model.table import FIELDTYPE_INT, FIELDTYPE_DOUBLE, \
17       FIELDTYPE_STRING       FIELDTYPE_STRING
18    
19    from Thuban.Model.layer import SHAPETYPE_ARC
20  from Thuban.Model.range import Range  from Thuban.Model.range import Range
21  from Thuban.UI.common import ThubanBeginBusyCursor, ThubanEndBusyCursor  from Thuban.UI.common import ThubanBeginBusyCursor, ThubanEndBusyCursor
22    
# Line 26  from Thuban.Model.classgen import \ Line 27  from Thuban.Model.classgen import \
27      CustomRamp, GreyRamp, RedRamp, GreenRamp, BlueRamp, GreenToRedRamp, \      CustomRamp, GreyRamp, RedRamp, GreenRamp, BlueRamp, GreenToRedRamp, \
28      HotToColdRamp      HotToColdRamp
29    
30    
31  USEALL_BMP  = "group_use_all"  USEALL_BMP  = "group_use_all"
32  USE_BMP     = "group_use"  USE_BMP     = "group_use"
33  USENOT_BMP  = "group_use_not"  USENOT_BMP  = "group_use_not"
# Line 46  PROPCOMBOSTR_HOT2COLD   = _("Hot-to-Cold Line 48  PROPCOMBOSTR_HOT2COLD   = _("Hot-to-Cold
48  ID_CLASSGEN_GENCOMBO = 4007  ID_CLASSGEN_GENCOMBO = 4007
49  ID_CLASSGEN_PROPCOMBO = 4008  ID_CLASSGEN_PROPCOMBO = 4008
50    
51    ID_BORDER_COLOR = 4009
52    ID_BORDER_COLOR_CHANGE = 4010
53    
54  class ClassGenDialog(wxDialog):  class ClassGenDialog(wxDialog):
55    
56      def __init__(self, parent, layer, fieldName):      def __init__(self, parent, layer, fieldName):
# Line 144  class ClassGenDialog(wxDialog): Line 149  class ClassGenDialog(wxDialog):
149          psizer.Add(self.propCombo, 1, wxALL | wxGROW, 4)          psizer.Add(self.propCombo, 1, wxALL | wxGROW, 4)
150          sizer.Add(psizer, 0, wxALL | wxGROW, 4)          sizer.Add(psizer, 0, wxALL | wxGROW, 4)
151    
152            if layer.ShapeType() != SHAPETYPE_ARC:
153                psizer = wxBoxSizer(wxHORIZONTAL)
154                self.fix_border_check = wxCheckBox(self, -1, _("Fix Border Color"))
155                psizer.Add(self.fix_border_check, 0, wxALL | wxGROW, 4)
156                self.border_color = classifier.ClassGroupPropertiesCtrl(
157                    self, ID_BORDER_COLOR,
158                    ClassGroupProperties(), SHAPETYPE_ARC,
159                    style=wxSIMPLE_BORDER, size=(40, 20))
160                psizer.Add(self.border_color, 0, wxALL | wxGROW, 4)
161                psizer.Add(wxButton(self, ID_BORDER_COLOR_CHANGE, _("Change")),
162                        0, wxALL, 4)
163                sizer.Add(psizer, 0, wxALL | wxGROW, 4)
164                EVT_BUTTON(self, ID_BORDER_COLOR_CHANGE, self.OnBorderColorChange)
165            else:
166                self.border_color = None
167    
168          sizer.Add(custom_ramp_panel, 1, wxGROW | wxALL, 4)          sizer.Add(custom_ramp_panel, 1, wxGROW | wxALL, 4)
169          sizer.Show(custom_ramp_panel, False)          sizer.Show(custom_ramp_panel, False)
170    
# Line 202  class ClassGenDialog(wxDialog): Line 223  class ClassGenDialog(wxDialog):
223              propPanel = self.propCombo.GetClientData(index)              propPanel = self.propCombo.GetClientData(index)
224    
225              ramp = propPanel.GetRamp()              ramp = propPanel.GetRamp()
226                if self.border_color and self.fix_border_check.IsChecked():
227                    props = self.border_color.GetProperties()
228                    lineColor = props.GetLineColor()
229                    lineWidth = props.GetLineWidth()
230                else:
231                    lineColor = None
232                    lineWidth = None
233    
234              if genSel == GENCOMBOSTR_UNIFORM:              if genSel == GENCOMBOSTR_UNIFORM:
235    
# Line 214  class ClassGenDialog(wxDialog): Line 242  class ClassGenDialog(wxDialog):
242    
243                      self.clazz = generate_uniform_distribution(                      self.clazz = generate_uniform_distribution(
244                                  min, max, numGroups, ramp,                                  min, max, numGroups, ramp,
245                                  self.type == FIELDTYPE_INT)                                  self.type == FIELDTYPE_INT,
246                                    fixes = (lineColor, lineWidth, None))
247    
248                      self.parent._SetClassification(self.clazz)                      self.parent._SetClassification(self.clazz)
249    
# Line 223  class ClassGenDialog(wxDialog): Line 252  class ClassGenDialog(wxDialog):
252                  list = genPanel.GetValueList()                  list = genPanel.GetValueList()
253    
254                  if len(list) > 0:                  if len(list) > 0:
255                      self.clazz = generate_singletons(list, ramp)                      self.clazz = generate_singletons(list, ramp,
256                                         (lineColor, lineWidth, None))
257                      self.parent._SetClassification(self.clazz)                      self.parent._SetClassification(self.clazz)
258    
259              elif genSel == GENCOMBOSTR_QUANTILES:              elif genSel == GENCOMBOSTR_QUANTILES:
# Line 235  class ClassGenDialog(wxDialog): Line 265  class ClassGenDialog(wxDialog):
265                  delta = 1 / float(numGroups)                  delta = 1 / float(numGroups)
266                  percents = [delta * i for i in range(1, numGroups + 1)]                  percents = [delta * i for i in range(1, numGroups + 1)]
267                  adjusted, self.clazz = \                  adjusted, self.clazz = \
268                      generate_quantiles(_list, percents, ramp, _range)                      generate_quantiles(_list, percents, ramp, _range,
269                                           (lineColor, lineWidth, None))
270    
271                  if adjusted:                  if adjusted:
272                      dlg = wxMessageDialog(self,                      dlg = wxMessageDialog(self,
# Line 253  class ClassGenDialog(wxDialog): Line 284  class ClassGenDialog(wxDialog):
284      def OnCancel(self, event):      def OnCancel(self, event):
285          self.Close()          self.Close()
286    
287        def OnBorderColorChange(self, event):
288            self.border_color.DoEdit()
289    
290      def _OnGenTypeSelect(self, event):      def _OnGenTypeSelect(self, event):
291          self.__DoOnGenTypeSelect()          self.__DoOnGenTypeSelect()
292          return          return

Legend:
Removed from v.1341  
changed lines
  Added in v.1391

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26