/[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 275 by bh, Thu Aug 22 16:26:05 2002 UTC revision 387 by jonathan, Mon Feb 3 11:44:41 2003 UTC
# Line 1  Line 1 
1    2003-02-03  Jonathan Coles  <[email protected]>
2    
3            * Thuban/Model/classification.py (Classification): Added getNull()
4            to return the NullData reference
5    
6            * Thuban/Model/layer.py (Layer.SetFill, Layer.SetStroke,
7            Layer.SetStrokeWidth): Modified these functions to change the
8            null data in the classification rather than keep these values
9            directly in the Layer class. Menu options to change these values
10            work again.
11    
12    2003-01-28  Jonathan Coles  <[email protected]>
13    
14            * Thuban/UI/classifier.py (Classifier): Resolved merging conflicts.
15            Fixed crashing problem on some systems. Dialog box shows
16            classification data.
17    
18            * Thuban/UI/tree.py (SessionTreeCtrl.add_items): Handle drawing
19            Colors in the tree view.
20    
21            * Thuban/Model/layer.py (Layer.TreeInfo): Added a call to build
22            the tree info for classifications. Commented out unnecessary lines.
23    
24            * Thuban/Model/classification.py (Classification.TreeInfo): New
25            function to add information about the classification into the
26            tree view.
27    
28    2003-01-27      Jan-Oliver Wagner <[email protected]>
29    
30            * Thuban/__init__.py (_): New.
31    
32            * Thuban/Model/classification.py, Thuban/Model/extension.py,
33            Thuban/Model/layer.py, Thuban/Model/load.py, Thuban/Model/map.py,
34            Thuban/Model/session.py, Thuban/UI/application.py, Thuban/UI/classifier.py,
35            Thuban/UI/context.py, Thuban/UI/controls.py, Thuban/UI/identifyview.py,
36            Thuban/UI/labeldialog.py, Thuban/UI/mainwindow.py, Thuban/UI/menu.py,
37            Thuban/UI/proj4dialog.py, Thuban/UI/renderer.py, Thuban/UI/tree.py,
38            Thuban/Lib/connector.py, Thuban/Lib/fileutil.py:
39            Replace user string by _() for i18n.
40    
41    2003-01-27  Jonathan Coles  <[email protected]>
42    
43      * Thuban/Model/layer.py: Classification initialization calls.
44    
45      * Thuban/Model/classification.py: Created class to encapsulate
46      a layer classification. Supports specific data points and
47      ranges.
48    
49      * Thuban/Model/load.py: Added support for loading classification
50      information.
51    
52      * Thuban/Model/save.py: Added support for saving classification
53      information.
54    
55      * Thuban/UI/classifier.py: Initial class for a dialog box for
56      specifying classification information.
57    
58      * Thuban/UI/mainwindows.py: Support for opening the classifier
59      dialog.
60    
61      * Thuban/UI/renderer.py: Support for drawing a layer with the
62      classification information.
63    
64      * Data/iceland_sample_class.thuban: iceland_sample with
65      classification data.
66    
67      * test/test_classification: Tests for the Classification class.
68    
69    2002-12-09  Bernhard Herzog  <[email protected]>
70    
71            * test/test_command.py: New. Tests for the command classes.
72    
73            * Thuban/UI/command.py (ToolCommand): New class for tool commands.
74            (Command.IsTool): New method to distinguish between command
75            switching tools and other commands.
76    
77            * Thuban/UI/view.py (MapCanvas.SelectTool): New method to select
78            the tool to avoid direct assignments to instance variables
79            (MapCanvas.ZoomInTool, MapCanvas.ZoomOutTool, MapCanvas.PanTool)
80            (MapCanvas.IdentifyTool, MapCanvas.LabelTool): Use SelectTool to
81            change the tool
82    
83            * Thuban/UI/mainwindow.py (MainWindow.update_command_ui): If an
84            active tool's command turns insensitive, disable the tool.
85            (_tool_command): Use the new ToolCommand class
86    
87            * Examples/simple_extensions/simple_tool.py (simple_tool): Use the
88            SelectTool method to change the tool
89            (iconfile): Use the ToolCommand class
90    
91    2002-12-03  Bernhard Herzog  <[email protected]>
92    
93            * Thuban/UI/tree.py (SessionTreeCtrl.normalize_selection): Handle
94            the case of selected items that are not children of Layers or Maps
95            properly. Previously this bug would trigger an assertion in
96            wxWindows.
97    
98    2002-11-06  Frank Koormann  <[email protected]>
99    
100            * Thuban/UI/mainwindow.py: Altered the order of tools in the
101            toolbar: First now are all navigation tools (Zoom In/Out, Pan,
102            Full Extent).
103        
104    2002-10-23  Bernhard Herzog  <[email protected]>
105    
106            * setup.py (setup call): version now 0.1.3
107    
108            * MANIFEST.in: Add the files in test/
109    
110            * test/README: Add note about tests requiring the iceland data
111    
112            * Thuban/UI/mainwindow.py (MainWindow.About): Add 2002 to
113            copyright notice.
114    
115    2002-10-18  Bernhard Herzog  <[email protected]>
116    
117            * test/test_map.py
118            (TestMapWithContents.test_projected_bounding_box): Use an explicit
119            epsilon.
120    
121            * test/support.py (FloatComparisonMixin.assertFloatEqual)
122            (FloatComparisonMixin.assertFloatSeqEqual): give a more useful
123            message if the assertion fails and don't return the return value
124            of self.assert_. In assertFloatSeqEqual the return meant that not
125            all items of the sequence were compared.
126    
127    2002-09-20  Bernhard Herzog  <[email protected]>
128    
129            * test/test_fileutil.py: New. Test cases for Thuban.Lib.fileutil
130    
131            * Thuban/Lib/fileutil.py: Fixup some whitespace and typos
132    
133            * test/test_map.py (TestMapWithContents.test_tree_info): Create
134            the string with the bounding box on the fly because of platform
135            differences in the way %g is handled.
136    
137            * test/test_layer.py (TestLayer.test_empty_layer): Create an empty
138            DBFfile too because Thuban layers can't yet cope missing DBF
139            files.
140    
141    2002-09-20  Bernhard Herzog  <[email protected]>
142    
143            * test/test_menu.py: Use initthuban instead of
144            add_thuban_dir_to_path to initialize Thuban.
145    
146            * test/support.py (FloatComparisonMixin.assertFloatEqual): New.
147            Mixin class for float comparisons
148            (SubscriberMixin): New. Mixin class to test messages sent through
149            the Connector class
150    
151            * test/README: Fix a typo and add the -v flag to the command for
152            individual tests
153    
154            * test/test_session.py: New. Test cases for Thuban.Model.session
155    
156            * test/test_proj.py: New. Test cases for Thuban.Model.proj
157    
158            * test/test_map.py: New. Test cases for Thuban.Model.map
159    
160            * test/test_layer.py: New. Test cases for Thuban.Model.layer
161    
162            * test/test_label.py: New. Test cases for Thuban.Model.label
163    
164            * test/test_connector.py: New. Test cases for Thuban.Lib.connector
165    
166            * test/test_color.py: New. Test cases for Thuban.Model.color
167    
168            * test/test_base.py: New. Test cases for Thuban.Model.base
169    
170    2002-09-13  Bernhard Herzog  <[email protected]>
171    
172            * Thuban/Model/session.py (Session.forwarded_channels): Forward
173            the CHANGED channel too.
174    
175            * Thuban/Model/map.py (Map.forwarded_channels): Forward the
176            CHANGED channel too.
177            (Map.__init__): Call the Modifiable constructor as well.
178    
179            * Thuban/Model/base.py (Modifiable.UnsetModified): Issue a CHANGED
180            event if the modified flag changes.
181            (Modifiable.changed): Tweak the doc-string.
182    
183            * Thuban/UI/mainwindow.py (MainWindow.view_position_changed)
184            (MainWindow.set_position_text): Put the code that puts the text
185            with the mouse position into the status bar into the new method
186            set_position_text so that it can overwritten in derived classes.
187    
188    2002-09-12  Bernhard Herzog  <[email protected]>
189    
190            * Thuban/UI/mainwindow.py (MainWindow.RunMessageBox): Center the
191            message box on the main window.
192    
193    2002-09-11  Bernhard Herzog  <[email protected]>
194    
195            * Thuban/UI/mainwindow.py: Underline the 'x' in "Exit" instead of
196            the 'E' because it's less likely to interfere with other menu
197            entries.
198            (MainWindow.build_menu): remove an incorrect comment.
199    
200    2002-09-10  Bernhard Herzog  <[email protected]>
201    
202            * Thuban/UI/mainwindow.py (MainWindow.Map): New.
203            (_tool_command): Add sensitive parameter
204            (_has_visible_map): Sensitivity callback to tools and other
205            commands that require a visible map. Use it in map_zoom_in_tool,
206            map_zoom_out_tool, map_pan_tool, map_identify_tool, map_label_tool
207            and map_full_extent
208    
209    2002-09-06  Bernhard Herzog  <[email protected]>
210    
211            * Thuban/UI/mainwindow.py (MainWindow.OnClose): Unsubscribe
212            VIEW_POSITION
213    
214    2002-09-04  Frank Koormann   <[email protected]>
215    
216            * Resources/Bitmaps/fullextent.xpm: Updated Icon (removed "potatoe")
217    
218    2002-09-02  Bernhard Herzog  <[email protected]>
219    
220            * Thuban/UI/view.py: Get rid of the idle redraw. This is done by
221            wxWindows already and our implementation doesn't work correctly
222            with wxGTK 2.3:
223            (MapCanvas.__init__): Remove the instance variable
224            (MapCanvas.OnPaint): Always call do_redraw when there's a map to
225            be drawin
226            (MapCanvas.OnIdle): Removed.
227    
228            * Thuban/UI/view.py (MapCanvas.unprojected_rect_around_point): Add
229            a parameter to determine the size of the rectangle.
230            (MapCanvas.find_shape_at): Create the box around the point on a
231            layer by layer basis and make the size depend on the shape type.
232            This solves a problem with the selection of point shapes at the
233            border of the layer's bounding box
234    
235    2002-08-30  Bernhard Herzog  <[email protected]>
236    
237            * Thuban/UI/mainwindow.py (MainWindow.CanRemoveLayer): New method
238            for the sensitivity  of remove layer.
239            (_can_remove_layer): New. Sensitivity callback for remove layer
240            (Command layer_remove): Use _can_remove_layer
241    
242            * Thuban/Model/map.py (Map.CanRemoveLayer): New method to
243            determine whether a given layer can be deleted.
244    
245            * Thuban/UI/view.py (MapCanvas.__init__, MapCanvas.OnPaint)
246            (MapCanvas.do_redraw): Get rid of the unused update_region
247            instance variable
248    
249            * Thuban/UI/view.py: Add/update some doc-strings.
250    
251            * test/: new subdirectory with a bunch of unit tests.
252    
253            * test/README, test/test_table.py, test/test_save.py,
254            test/test_menu.py, test/test_load.py: Initial set of tests and
255            brief instructions on how to run them
256    
257    2002-08-29  Bernhard Herzog  <[email protected]>
258    
259            * Thuban/UI/renderer.py (ScreenRenderer.draw_shape_layer): Handle
260            arcs with multiple parts.
261    
262            * Thuban/UI/view.py (ZoomInTool.MouseUp, ZoomOutTool.MouseUp):
263            Handle degenrate rectangles.
264    
265            * Thuban/Model/table.py: Make writing records work correctly:
266            (Table.__init__): Keep track of whether the DBF is open for
267            writing
268            (Table.write_record): Open the DBF file for writing when necessary
269    
270    2002-08-27  Bernhard Herzog  <[email protected]>
271    
272            * Thuban/Model/table.py (Table.write_record, Table.__init__): Open
273            dbf files only for reading by default. Use a new writable dbf
274            object for writing.
275    
276    2002-08-26  Bernhard Herzog  <[email protected]>
277    
278            * Thuban/UI/mainwindow.py: Refactor the context creation:
279            (MainWindow.Context): New method to return a context
280            (MainWindow.invoke_command, MainWindow.update_command_ui): Use the
281            new method
282    
283            * Thuban/UI/tableview.py (TableGrid, LayerTableGrid): Split the
284            layer table specific code from TableGrid into LayerTableGrid
285            (TableFrame, LayerTableFrame): Split the layer table specific code
286            from TableFrame into LayerTableFrame
287            (LayerTableGrid.select_shape): Remove a debug print
288    
289            * Thuban/UI/mainwindow.py (MainWindow.LayerShowTable): Use the
290            LayerTableFrame
291    
292    2002-08-23  Bernhard Herzog  <[email protected]>
293    
294            * Thuban/Model/layer.py (Layer.__init__): Make sure we have an
295            absolute filename.
296    
297  2002-08-22  Bernhard Herzog  <[email protected]>  2002-08-22  Bernhard Herzog  <[email protected]>
298    
299          * Thuban/Model/table.py (Table.write_record): New method to write          * Thuban/Model/table.py (Table.write_record): New method to write

Legend:
Removed from v.275  
changed lines
  Added in v.387

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26