/[thuban]/branches/greater-ms3/thuban/ChangeLog
ViewVC logotype

Diff of /branches/greater-ms3/thuban/ChangeLog

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

revision 396 by jonathan, Mon Feb 10 15:28:17 2003 UTC revision 426 by jonathan, Mon Feb 24 18:45:37 2003 UTC
# Line 1  Line 1 
1    2003-02-24  Jonathan Coles   <[email protected]>
2    
3            * Thuban/common.py (Color2wxColour, wxColour2Color): Conversion
4            functions from Thuban color objects to wxWindow colour objects.
5    
6            * Thuban/Model/classification.py (Classification): Renamed
7            GetProperties() to GetClassData(). Used the new iterator
8            in TreeInfo().
9            (ClassIterator): Iterator implementation to iterate over the
10            ClassData objects in a classification object.
11    
12            * Thuban/Model/save.py (Saver.write_classificaton): Uses
13            the new iterator to save the classification information.
14    
15            * Thuban/UI/classifier.py (SelectPropertiesDialog): Support
16            for changing the stroke and fill colors and previewing the
17            changes.
18    
19            * Thuban/UI/mainwindow.py (MainWindow.OpenSession,
20            MainWindow.SaveSessionAs): Text string changes so the dialogs
21            have more meaningful titles.
22    
23            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Change
24            Classification method name from GetProperties to GetClassData.
25    
26            * Thuban/UI/view.py (MapCanvas.find_shape_at): Use method calls
27            instead of accessing now non-existent class variables.
28    
29    2003-02-24  Bernhard Herzog  <[email protected]>
30    
31            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Remove
32            unneeded Shape() call. Rendering is substantially faster without
33            it and it avoids some problems with broken shape files.
34    
35    2003-02-20  Frank Koormann   <[email protected]>
36    
37            Force minimal size of identify and label dialogs. The autosizing
38            looked too ugly.
39    
40            * Thuban/UI/controls.py (RecordListCtrl): Set minimal width for columns.
41            * Thuban/UI/labeldialog.py (LabelDialog.dialog_layout):
42            Set size of listctrl.
43            * Thuban/UI/identifyview.py (IdentifyView.__init__):
44            Set size of dialog.
45    
46    2003-02-19  Jonathan Coles   <[email protected]>
47    
48            * test/test_classification.py, test/test_layer.py,
49            test/test_load.py, test/test_map.py, test/test_session.py:
50            Updated the tests to use the new functions that are in the
51            respective classes.
52    
53            * Thuban/Model/classification.py (Classification):
54            Uses the new ClassData* classes. Modification messages are
55            passed up to the parent layer (if it exists).
56            (ClassData): New class to encapsulate the common data in each
57            classification property.
58            (ClassDataDefault): Represents the Default class. data.
59            (ClassDataPoint): Represents a single class. data point
60            (ClassDataRange): Represents a class. range
61            (ClassDataMap): Represents a class. map (unused).
62    
63            * Thuban/Model/color.py: Added Color.None to represent something
64            with no color. Color.Black represents the color black.
65            (NoColor): Helper class derived from Color to represent something
66            with no color.
67    
68            * Thuban/Model/layer.py (Layer): Removed references to fill, stroke,
69            stroke_width attributes. Made the 'classification' attribute private.
70            New methods for setting/getting the classification.
71    
72            * Thuban/Model/load.py (ProcessSession): Use new methods on Layer
73            to get the classifcation and use the new ClassData* classes to
74            hold the classification data. Use Str2Num to convert numbers
75            properly.
76    
77            * Thuban/Model/save.py (Saver): Use new Color and Classification
78            methods
79    
80            * Thuban/UI/classifier.py (ClassGrid): New class to represent a
81            custom grid.
82            (ClassTable): Support for editing Values and Labels and for
83            changing what type (point or range) of data is stored in each
84            property based on how the user enters the data.
85            (Classifier): Support for saving the new classifications and
86            launching the dialog to edit a property.
87            (SelectPropertiesDialog): New class for editing the visual
88            properties of a classification (stroke color, width, and fill color)
89            (ClassPreviewer): Took the Draw method from ClassRenderer and
90            made most of it into this new class. Intend to use this class in
91            the SelectPropertiesDialog for previewing changes.
92    
93            * Thuban/UI/renderer.py: Use new Color and Classification methods.
94    
95            * Thuban/UI/tree.py: Formatting changes.
96    
97            * Doc/thuban.dtd: Add 'label' element
98    
99            * Thuban/common.py: New. Contains common routines used throughout
100            the code.
101            (Str2Num): Takes a string and converts it to the "best" type of
102            number.
103    
104    2003-02-14  Bernhard Herzog  <[email protected]>
105    
106            * Thuban/UI/view.py (MapCanvas.OnLeftUp): Make sure that the
107            dragging flag is always set to 0 even when the tool implementation
108            raises an exception
109    
110    2003-02-11  Bernhard Herzog  <[email protected]>
111    
112            * Thuban/UI/application.py (ThubanApplication.splash_screen): New
113            method to create a splash screen.
114            (ThubanApplication.ShowMainWindow): New. Show the main window.
115            Needed so the splash screen can display the mainwindow
116            (ThubanApplication.OnInit): Call the
117            new splash_screen method to determine whether the application
118            should display a splash screen. If it displays a splash screen do
119            not immediately show the main window.
120    
121    2003-02-11  Jonathan Coles  <[email protected]>
122    
123            * Thuban/Model/classification.py: Added import line to fix
124            feature conflicts between running on python2.2 and python2.1.
125    
126            * Thuban/UI/classifier.py (ClassTable): Didn't need to hang
127            onto the clinfo parameter, so removed the deepcopy().
128    
129  2003-02-10  Jonathan Coles  <[email protected]>  2003-02-10  Jonathan Coles  <[email protected]>
130    
131          * Thuban/Model/save.py (Saver.open_element, Saver.close_element):          * Thuban/Model/save.py (Saver.open_element, Saver.close_element):
132          Added element_open variable to track opening and closing of tags          Added element_open variable to track opening and closing of tags
133          so that tags that don't span more than one line are closed with          so that tags that don't span more than one line are closed with
134          /> instead of </tag_name>. Use the GetDefault*() methods of          /> instead of </tag_name>. Use the GetDefault*() methods of
# Line 13  Line 141 
141          (ClassData): New class to encapsulate the classification data          (ClassData): New class to encapsulate the classification data
142    
143          * Thuban/Model/layer.py (Layer): Remove the          * Thuban/Model/layer.py (Layer): Remove the
144          Set[Fill|Stroke|StrokeWidth]() methods. Code should call the          Set[Fill|Stroke|StrokeWidth]() methods. Code should call the
145          SetDefault*() methods on the layer's classification object.          SetDefault*() methods on the layer's classification object.
146          (Layer.__init__): Use the new SetDefault*() methods in the          (Layer.__init__): Use the new SetDefault*() methods in the
147          Classification class.          Classification class.
148    
149          * Thuban/Model/load.py (ProcessSession): Use the new ClassData          * Thuban/Model/load.py (ProcessSession): Use the new ClassData
150          object instead of a dictionary.          object instead of a dictionary.
151    
152          * Thuban/UI/classifier.py (ClassRenderer): New class to          * Thuban/UI/classifier.py (ClassRenderer): New class to
153          draw the classifications in the dialog box's table.          draw the classifications in the dialog box's table.
154          (Classifier): Modified to use the ClassRenderer class.          (Classifier): Modified to use the ClassRenderer class.
155    
156          * Thuban/UI/mainwindow.py (MainWindow): Use the SetDefault*()          * Thuban/UI/mainwindow.py (MainWindow): Use the SetDefault*()
157          methods of the Classification class.              methods of the Classification class.
158    
159          * Thuban/UI/renderer.py (MapRenderer): Use the Get*() methods          * Thuban/UI/renderer.py (MapRenderer): Use the Get*() methods
160          of the ClassData class.          of the ClassData class.
# Line 49  Line 177 
177  2003-01-28  Jonathan Coles  <[email protected]>  2003-01-28  Jonathan Coles  <[email protected]>
178    
179          * Thuban/UI/classifier.py (Classifier): Resolved merging conflicts.          * Thuban/UI/classifier.py (Classifier): Resolved merging conflicts.
180          Fixed crashing problem on some systems. Dialog box shows          Fixed crashing problem on some systems. Dialog box shows
181          classification data.          classification data.
182    
183          * Thuban/UI/tree.py (SessionTreeCtrl.add_items): Handle drawing          * Thuban/UI/tree.py (SessionTreeCtrl.add_items): Handle drawing
# Line 62  Line 190 
190          function to add information about the classification into the          function to add information about the classification into the
191          tree view.          tree view.
192    
193  2003-01-27      Jan-Oliver Wagner <[email protected]>  2003-01-27  Jan-Oliver Wagner <[email protected]>
194    
195          * Thuban/__init__.py (_): New.          * Thuban/__init__.py (_): New.
196    
197          * Thuban/Model/classification.py, Thuban/Model/extension.py,          * Thuban/Model/classification.py, Thuban/Model/extension.py,
198          Thuban/Model/layer.py, Thuban/Model/load.py, Thuban/Model/map.py,          Thuban/Model/layer.py, Thuban/Model/load.py, Thuban/Model/map.py,
199          Thuban/Model/session.py, Thuban/UI/application.py, Thuban/UI/classifier.py,          Thuban/Model/session.py, Thuban/UI/application.py,
200          Thuban/UI/context.py, Thuban/UI/controls.py, Thuban/UI/identifyview.py,          Thuban/UI/classifier.py, Thuban/UI/context.py, Thuban/UI/controls.py,
201          Thuban/UI/labeldialog.py, Thuban/UI/mainwindow.py, Thuban/UI/menu.py,          Thuban/UI/identifyview.py, Thuban/UI/labeldialog.py,
202          Thuban/UI/proj4dialog.py, Thuban/UI/renderer.py, Thuban/UI/tree.py,          Thuban/UI/mainwindow.py, Thuban/UI/menu.py, Thuban/UI/proj4dialog.py,
203          Thuban/Lib/connector.py, Thuban/Lib/fileutil.py:          Thuban/UI/renderer.py, Thuban/UI/tree.py, Thuban/Lib/connector.py,
204          Replace user string by _() for i18n.          Thuban/Lib/fileutil.py: Replace user string by _() for i18n.
205    
206  2003-01-27  Jonathan Coles  <[email protected]>  2003-01-27  Jonathan Coles  <[email protected]>
207    
208    * Thuban/Model/layer.py: Classification initialization calls.          * Thuban/Model/layer.py: Classification initialization calls.
209    
210    * Thuban/Model/classification.py: Created class to encapsulate          * Thuban/Model/classification.py: Created class to encapsulate
211    a layer classification. Supports specific data points and          a layer classification. Supports specific data points and
212    ranges.          ranges.
213    
214    * Thuban/Model/load.py: Added support for loading classification          * Thuban/Model/load.py: Added support for loading classification
215    information.          information.
216    
217    * Thuban/Model/save.py: Added support for saving classification          * Thuban/Model/save.py: Added support for saving classification
218    information.          information.
219    
220    * Thuban/UI/classifier.py: Initial class for a dialog box for          * Thuban/UI/classifier.py: Initial class for a dialog box for
221    specifying classification information.          specifying classification information.
222    
223    * Thuban/UI/mainwindows.py: Support for opening the classifier          * Thuban/UI/mainwindows.py: Support for opening the classifier
224    dialog.          dialog.
225    
226    * Thuban/UI/renderer.py: Support for drawing a layer with the          * Thuban/UI/renderer.py: Support for drawing a layer with the
227    classification information.          classification information.
228    
229    * Data/iceland_sample_class.thuban: iceland_sample with          * Data/iceland_sample_class.thuban: iceland_sample with
230    classification data.          classification data.
231    
232    * test/test_classification: Tests for the Classification class.          * test/test_classification: Tests for the Classification class.
233    
234  2002-12-09  Bernhard Herzog  <[email protected]>  2002-12-09  Bernhard Herzog  <[email protected]>
235    
# Line 137  Line 265 
265          * Thuban/UI/mainwindow.py: Altered the order of tools in the          * Thuban/UI/mainwindow.py: Altered the order of tools in the
266          toolbar: First now are all navigation tools (Zoom In/Out, Pan,          toolbar: First now are all navigation tools (Zoom In/Out, Pan,
267          Full Extent).          Full Extent).
268        
269  2002-10-23  Bernhard Herzog  <[email protected]>  2002-10-23  Bernhard Herzog  <[email protected]>
270    
271          * setup.py (setup call): version now 0.1.3          * setup.py (setup call): version now 0.1.3
# Line 248  Line 376 
376          * Thuban/UI/mainwindow.py (MainWindow.OnClose): Unsubscribe          * Thuban/UI/mainwindow.py (MainWindow.OnClose): Unsubscribe
377          VIEW_POSITION          VIEW_POSITION
378    
379  2002-09-04  Frank Koormann   <[email protected]>  2002-09-04  Frank Koormann  <[email protected]>
380    
381          * Resources/Bitmaps/fullextent.xpm: Updated Icon (removed "potatoe")          * Resources/Bitmaps/fullextent.xpm: Updated Icon (removed "potatoe")
382    
# Line 335  Line 463 
463    
464          * Thuban/Model/table.py (Table.write_record): New method to write          * Thuban/Model/table.py (Table.write_record): New method to write
465          records.          records.
466          (Table.__init__): Open the DBF file for writing too.          (Table.__init__): Open the DBF file for writing too.
467    
468          * Thuban/UI/controls.py (RecordTable.SetValue): Write the value          * Thuban/UI/controls.py (RecordTable.SetValue): Write the value
469          into the underlying table.          into the underlying table.
# Line 373  Line 501 
501          * setup.py (ThubanInstall.run): Don't repr install_lib_orig          * setup.py (ThubanInstall.run): Don't repr install_lib_orig
502          because thubaninit_contents will do it for us.          because thubaninit_contents will do it for us.
503    
504  2002-08-16      Jan-Oliver Wagner <[email protected]>  2002-08-16  Jan-Oliver Wagner <[email protected]>
505    
506          * Thuban/UI/mainwindow.py: menu item 'show session tree' now disable if          * Thuban/UI/mainwindow.py: menu item 'show session tree' now disable if
507          tree window already open          tree window already open
# Line 501  Line 629 
629          * Thuban/UI/tree.py: We can now simply subscribe to the session's          * Thuban/UI/tree.py: We can now simply subscribe to the session's
630          CHANGED channel to be informed of changes.          CHANGED channel to be informed of changes.
631          (SessionTreeCtrl.session_channels): Not needed any longer.          (SessionTreeCtrl.session_channels): Not needed any longer.
632          (SessionTreeCtrl.unsubscribe_all, SessionTreeCtrl.session_changed):          (SessionTreeCtrl.unsubscribe_all, SessionTreeCtrl.session_changed):
633          Only have to (un)subscribe CHANGED          Only have to (un)subscribe CHANGED
634    
635          * Thuban/Model/map.py (Map.TreeInfo): Deal better with empty maps.          * Thuban/Model/map.py (Map.TreeInfo): Deal better with empty maps.
# Line 562  Line 690 
690          * Thuban/Model/layer.py (Layer.TreeInfo),          * Thuban/Model/layer.py (Layer.TreeInfo),
691          Thuban/Model/extension.py (Extension.TreeInfo),          Thuban/Model/extension.py (Extension.TreeInfo),
692          Thuban/Model/map.py (Map.TreeInfo),          Thuban/Model/map.py (Map.TreeInfo),
693          Thuban/Model/session.py (Session.TreeInfo):          Thuban/Model/session.py (Session.TreeInfo):
694          Add TreeInfo methods to implement the new tree view update scheme          Add TreeInfo methods to implement the new tree view update scheme
695    
696  2002-07-16  Bernhard Herzog  <[email protected]>  2002-07-16  Bernhard Herzog  <[email protected]>
# Line 643  Line 771 
771          * setup.py: In the setup call, make sure that the library          * setup.py: In the setup call, make sure that the library
772          directories are under $prefix/lib not directly under $prefix.          directories are under $prefix/lib not directly under $prefix.
773    
774  2002-06-20      Jan-Oliver Wagner <[email protected]>  2002-06-20  Jan-Oliver Wagner <[email protected]>
775    
776          * Thuban/Model/extension.py: new module to handle extension objects.          * Thuban/Model/extension.py: new module to handle extension objects.
777          * Thuban/Model/messages.py: new messages for extensions.          * Thuban/Model/messages.py: new messages for extensions.
# Line 872  Line 1000 
1000          * Thuban/UI/messages.py (VIEW_POSITION): New message for the          * Thuban/UI/messages.py (VIEW_POSITION): New message for the
1001          position in the statusbar          position in the statusbar
1002    
1003  2002-04-26      Frank Koormann <[email protected]>  2002-04-26  Frank Koormann <[email protected]>
1004    
1005          * Thuban/UI/mainwindow.py: AddLayer, Dialog title s/session/data          * Thuban/UI/mainwindow.py: AddLayer, Dialog title s/session/data
1006    
1007  2002-04-24      Frank Koormann <[email protected]>  2002-04-24  Frank Koormann <[email protected]>
1008            
1009          * Resources/Bitmaps/identify.xpm: shadow added          * Resources/Bitmaps/identify.xpm: shadow added
1010    
1011          * Resources/Bitmaps/fullextent.xpm: new          * Resources/Bitmaps/fullextent.xpm: new
           
 2002-04-22      Jan-Oliver Wagner <[email protected]>  
1012    
1013          * Thuban/UI/tree.py (update_tree): added test for None on map bounding box  2002-04-22  Jan-Oliver Wagner <[email protected]>
1014    
1015  2002-04-21      Jan-Oliver Wagner <[email protected]>          * Thuban/UI/tree.py (update_tree): added test for None on map bounding
1016            box
1017    
1018    2002-04-21  Jan-Oliver Wagner <[email protected]>
1019    
1020          * Thuban/UI/proj4dialog.py (UTMProposeZoneDialog): new          * Thuban/UI/proj4dialog.py (UTMProposeZoneDialog): new
1021    
1022          * Thuban/UI/tree.py (update_tree): added added map extent          * Thuban/UI/tree.py (update_tree): added added map extent
1023    
1024          * Thuban/UI/mainwindow.py (_method_command): extended by parameter          * Thuban/UI/mainwindow.py (_method_command): extended by parameter
1025          icon; added map_full_extend as tool          icon; added map_full_extend as tool
1026    
1027  2002-04-19      Jan-Oliver Wagner <[email protected]>  2002-04-19  Jan-Oliver Wagner <[email protected]>
1028    
1029          * Thuban/UI/mainwindow.py (SaveSession): launch save as dialog for          * Thuban/UI/mainwindow.py (SaveSession): launch save as dialog for
1030          saving _new_ sessions          saving _new_ sessions
# Line 997  Line 1126 
1126    
1127          * setup.py: increase version number to 0.1          * setup.py: increase version number to 0.1
1128          (data_dist): New command class for data distribution          (data_dist): New command class for data distribution
           
1129    
1130  2001-09-14  Bernhard Herzog  <[email protected]>  2001-09-14  Bernhard Herzog  <[email protected]>
1131    
1132          * Thuban/UI/identifyview.py (IdentifyListCtrl.selected_shape):          * Thuban/UI/identifyview.py (IdentifyListCtrl.selected_shape):
1133          Handle the case of no layer (i.e. layer is None) properly.          Handle the case of no layer (i.e. layer is None) properly.
1134    
1135          * Thuban/UI/proj4dialog.py (UTMDialog.__init__, Proj4Dialog.__init__):          * Thuban/UI/proj4dialog.py (UTMDialog.__init__, Proj4Dialog.__init__):
1136          Set the initial selection of the combo boxes to reflect the          Set the initial selection of the combo boxes to reflect the
1137          projection we're starting with in a way that works on windows,          projection we're starting with in a way that works on windows,
1138          too.          too.
# Line 1114  Line 1242 
1242          (MainWindow.identify_view_on_demand): Store the interactor in an          (MainWindow.identify_view_on_demand): Store the interactor in an
1243          instvar and use that reference instead of going through main.app          instvar and use that reference instead of going through main.app
1244    
1245          * Thuban/UI/mainwindow.py (MainWindow.ShowSessionTree):          * Thuban/UI/mainwindow.py (MainWindow.ShowSessionTree):
1246          * Thuban/UI/application.py (ThubanApplication.OnInit):          * Thuban/UI/application.py (ThubanApplication.OnInit):
1247          * Thuban/UI/main.py (main): Create the session tree view in main          * Thuban/UI/main.py (main): Create the session tree view in main
1248          with the new mainwindow method ShowSessionTree and not directly          with the new mainwindow method ShowSessionTree and not directly
1249          the application's OnInit method          the application's OnInit method
# Line 1131  Line 1259 
1259          layer to the tableview dialog.          layer to the tableview dialog.
1260    
1261          * Thuban/UI/tableview.py: Add some doc-strings          * Thuban/UI/tableview.py: Add some doc-strings
1262          (TableGrid):          (TableGrid):
1263          (TableGrid.OnRangeSelect):          (TableGrid.OnRangeSelect):
1264          (TableGrid.OnSelectCell):          (TableGrid.OnSelectCell):
1265          (TableFrame.__init__):          (TableFrame.__init__):
# Line 1198  Line 1326 
1326  2001-09-05  Bernhard Herzog  <[email protected]>  2001-09-05  Bernhard Herzog  <[email protected]>
1327    
1328          * Thuban/UI/view.py (MapCanvas.__init__): New argument, interactor.          * Thuban/UI/view.py (MapCanvas.__init__): New argument, interactor.
1329            
1330          * Thuban/UI/mainwindow.py (MainWindow.__init__): New argument          * Thuban/UI/mainwindow.py (MainWindow.__init__): New argument
1331          interactor to pass through to the MapCanvas          interactor to pass through to the MapCanvas
1332            
1333          * Thuban/UI/application.py (ThubanApplication.OnInit): Use the new          * Thuban/UI/application.py (ThubanApplication.OnInit): Use the new
1334          argument to the MainWindow constructor to get rid of the ugly hack          argument to the MainWindow constructor to get rid of the ugly hack
1335          that made main.app available early just so that the mapcanvas          that made main.app available early just so that the mapcanvas
# Line 1248  Line 1376 
1376          (ThubanInstall.run): Remove the leading install root from the          (ThubanInstall.run): Remove the leading install root from the
1377          script filename if an install root was specified and use the new          script filename if an install root was specified and use the new
1378          link_file method          link_file method
1379            
1380          * Thuban/UI/mainwindow.py (MainWindow.AddLayer): Fit the map to          * Thuban/UI/mainwindow.py (MainWindow.AddLayer): Fit the map to
1381          the window when the first layer is added to the map.          the window when the first layer is added to the map.
1382    
# Line 1285  Line 1413 
1413          (InnoIconItem): Helper class for bdist_inno          (InnoIconItem): Helper class for bdist_inno
1414          (thuban_bdist_inno): Thuban specific version of bdist_inno. Added          (thuban_bdist_inno): Thuban specific version of bdist_inno. Added
1415          this together with the appropriate parameters, to the setup call.          this together with the appropriate parameters, to the setup call.
1416            
1417          * setup.cfg (bdist_inno): added new section for the inno setup          * setup.cfg (bdist_inno): added new section for the inno setup
1418          installer          installer
1419    

Legend:
Removed from v.396  
changed lines
  Added in v.426

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26