/[thuban]/branches/WIP-pyshapelib-bramz/ChangeLog
ViewVC logotype

Diff of /branches/WIP-pyshapelib-bramz/ChangeLog

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

revision 1411 by frank, Mon Jul 14 10:09:35 2003 UTC revision 1512 by bh, Tue Jul 29 14:49:05 2003 UTC
# Line 1  Line 1 
1    2003-07-29  Bernhard Herzog  <[email protected]>
2    
3            * Thuban/Model/transientdb.py: Remove some unnecessary imports
4    
5    2003-07-29  Jonathan Coles   <[email protected]>
6    
7            * Thuban/UI/application.py (ThubanApplication.OnInit): set the
8            python exception hook here so that we are sure to catch any
9            Thuban exception that happen during initialization.
10    
11            * Thuban/UI/main.py (main): Don't set the exception hook here,
12            it will get set in ThubanApplication.OnInit.
13    
14    2003-07-29  Jonathan Coles   <[email protected]>
15                                                                                
16            * Thuban/UI/application.py (ThubanApplication.ShowExceptionDialog):
17            Removed and called it show_exception_dialog() so that the exception
18            handler can be set before the class is created.
19                                                                                
20            * Thuban/UI/main.py (main): Install the exception handler before
21            a ThubanApplication is created.
22                                                                                    
23    2003-07-29  Bernhard Herzog  <[email protected]>
24    
25            * po/it.po: New. Italian translation by Maurizio Napolitano
26    
27            * po/ru.po: New. Russian translation by Alex Shevlakov
28    
29    2003-07-29  Frank Koormann   <[email protected]>
30    
31            * Doc/manual/thuban-manual.xml: Extended section on supported
32            projections.
33            
34    2003-07-29  Frank Koormann   <[email protected]>
35    
36            * Doc/manual/thuban-manual.xml: gaspell-checked.
37    
38    2003-07-29  Jonathan Coles   <[email protected]>
39    
40            * Doc/manual/images/3_5_legend.png: Added border to improve look
41            on white background.
42    
43    2003-07-29  Jonathan Coles   <[email protected]>
44    
45            * Doc/manual/thuban-manual.xml: Fixed grammar and typos. Added
46            descriptions for the legend toolbar.
47    
48            * Doc/manual/images/4_2_raster_layer_properties.png: Removed
49            cursor from dialog box.
50    
51    2003-07-28  Jonathan Coles   <[email protected]>
52    
53            * Doc/manual/thuban-manual.xml: More screenshots and more chapters.
54    
55            * Doc/manual/images/2_4_session_tree.png,
56            Doc/manual/images/3_5_legend.png, Doc/manual/images/3_rename_map.png,
57            Doc/manual/images/4_2_layer_properties.png,
58            Doc/manual/images/4_2_raster_layer_properties.png,
59            Doc/manual/images/5_3_genclass.png,
60            Doc/manual/images/5_classification.png,
61            Doc/manual/images/6_projection.png,
62            Doc/manual/images/7_1_table_view.png,
63            Doc/manual/images/7_2_5_join.png: New screenshots.
64    
65    2003-07-24  Jonathan Coles   <[email protected]>
66    
67            * Doc/manual/thuban-manual.xml: Chapter on Projection Management.
68    
69    2003-07-24  Jonathan Coles   <[email protected]>
70    
71            * Doc/manual/thuban-manual.xml: Added EPS images and wrote
72            chapter on Layer Management.
73    
74            * Doc/manual/Makefile: New. Makefile to generate all formats for the
75            manual and images.
76    
77    2003-07-24  Bernhard Herzog  <[email protected]>
78    
79            * Thuban/Model/range.py, Thuban/version.py: Remove the #! line as
80            it annoys lintian which warns about these files not being
81            executable. The #1 isn't necessary here since if you absolutely
82            must execute them you can always say "python <filename>".
83    
84            * Thuban/UI/renderer.py (ScreenRenderer.draw_shape_layer): Remove
85            superfluous code to set brush and pen for point shapes
86    
87            * Thuban/UI/viewport.py: Remove commented out code that wouldn't
88            belong in viewport anyway
89    
90    2003-07-24  Frank Koormann   <[email protected]>
91    
92            * Doc/manual/thuban-manual.xml: Added section on table management.
93    
94    2003-07-24  Bernhard Herzog  <[email protected]>
95    
96            * test/runtests.py (main): Recognize the long "verbose" option
97            correctly.
98    
99    2003-07-22  Jonathan Coles   <[email protected]>
100    
101            * Doc/manual/thuban-manual.xml: Continue to write first revision
102            of the manual.
103    
104            * Thuban/UI/renderer.py (MapRenderer.render_map): Wrap method
105            with Begin/EndDrawing() calls to ensure we aren't doing to
106            many updates to the dc during rendering.
107            (ScreenRenderer.draw_shape_layer): self.draw_point_shape takes
108            a pen and brush argument so they need to be passed to the function.
109    
110            * Thuban/UI/viewport.py (ViewPort.calc_min_max_scales): New.
111            Calculates the minimum and maximum scale values. Factored out
112            of set_view_transform so that it could be used to zoom all the
113            way into a single point.
114            (ViewPort.set_view_transform): Call calc_min_max_scales().
115            (ViewPort.FitSelectedToWindow): Zoom to the maximum scale
116            if only a single point is selected.
117    
118            * Doc/manual/images/1_2_legend_close.png,
119            Doc/manual/images/1_2_legend_dock.png,
120            Doc/manual/images/1_2_mainwindow.png,
121            Doc/manual/images/1_2_mainwindow.ps,
122            Doc/manual/images/1_2_mainwindow.sk,
123            Doc/manual/images/3_2_fullextent.png,
124            Doc/manual/images/3_2_fulllayerextent.png,
125            Doc/manual/images/3_2_fullshapeextent.png,
126            Doc/manual/images/3_2_pan.png,
127            Doc/manual/images/3_2_zoomin.png,
128            Doc/manual/images/3_2_zoomout.png,
129            Doc/manual/images/3_3_identify.png,
130            Doc/manual/images/3_3_label.png,
131            Doc/manual/images/3_5_invisible.png,
132            Doc/manual/images/3_5_movedown.png,
133            Doc/manual/images/3_5_moveup.png,
134            Doc/manual/images/3_5_props.png,
135            Doc/manual/images/3_5_tobottom.png,
136            Doc/manual/images/3_5_totop.png,
137            Doc/manual/images/3_5_visible.png: New. Images for the documentation.
138    
139    2003-07-18  Bernhard Herzog  <[email protected]>
140    
141            * Thuban/UI/messages.py (MAP_REPLACED): New message.
142    
143            * Thuban/UI/viewport.py (ViewPort.SetMap): Issue MAP_REPLACED
144            after the new map has been assigned
145    
146            * Thuban/UI/mainwindow.py (MainWindow.delegated_messages):
147            Delegate MAP_REPLACED to the canvas too
148            (MainWindow.prepare_new_session): Removed. Thanks to the new
149            MAP_REPLACED message it's no longer needed
150            (MainWindow.OpenSession, MainWindow.NewSession):
151            prepare_new_session has been removed.
152    
153            * Thuban/UI/classifier.py (Classifier.__init__): Subscribe to
154            MAP_REPLACED so that we can close the dialog if a new map is set.
155            (Classifier.unsubscribe_messages): Unsubscribe from MAP_REPLACED
156            (Classifier.map_replaced): Handle MAP_REPLACED by closing the
157            dialog
158    
159            * test/test_viewport.py (SimpleViewPortTest)
160            (SimpleViewPortTest.test_default_size): Add doc-strings
161            (ViewPortTest.setUp): Bind map to self.map so we can use it in
162            tests. Subscribe to MAP_REPLACED messages too.
163            (ViewPortTest.tearDown): No need to explicitly unsubscribe
164            (ViewPortTest.test_set_map): New test for the SetMap method.
165    
166    2003-07-18  Bernhard Herzog  <[email protected]>
167    
168            * test/test_viewport.py (SimpleViewPortTest.test_default_size):
169            Move this test from ViewPortTest.setUp to this new separate test
170            case. setUp is not the place for the actual tests.
171            (ViewPortTest.test_inital_settings, ViewPortTest.setUp): Move some
172            more of the test from setUp to the new test test_inital_settings.
173            (ViewPortTest.test_win_to_proj, ViewPortTest.test_proj_to_win)
174            (ViewPortTest.test_proj_conv): Split test_proj_conv into
175            test_win_to_proj and test_proj_to_win and make the tests easier to
176            understand
177            (ViewPortTest.testFitRectToWindow, ViewPortTest.testZoomFactor)
178            (ViewPortTest.testZoomOutToRect, ViewPortTest.testTranslate)
179            (ViewPortTest.test_unprojected_rect_around_point)
180            (ViewPortTest.test_find_shape_at, ViewPortTest.testTools):
181            Reformat to increase readability.
182    
183    2003-07-18  Bernhard Herzog  <[email protected]>
184    
185            * Thuban/UI/view.py (MapCanvas.OnLeftDown): Capture the mouse.
186    
187    2003-07-18  Bernhard Herzog  <[email protected]>
188    
189            * test/runtests.py: The test suite can now be run without an X
190            connection. To make sure this remains true, remove the DISPLAY
191            environment variable so that an error occurs if the wxGTK is
192            imported accidentally
193    
194    2003-07-18  Bernhard Herzog  <[email protected]>
195    
196            * Thuban/UI/viewport.py: Remove unused imports
197    
198            * Thuban/UI/view.py: Remove unused imports
199    
200    2003-07-18  Bernhard Herzog  <[email protected]>
201    
202            * test/test_export.py Remove unused imports. The OutputTransform
203            function is now in viewport.py and is called output_transform
204            (TestScalebar.test_output_transform)
205            (TestScalebar.test_OutputTransform): Renamed to
206            test_output_transform and updated to use output_transform instead
207            of OutputTransform
208    
209            * Thuban/UI/view.py (OutputTransform): Moved to viewport.py and
210            renamed.
211            (MapCanvas.Export, MapPrintout.draw_on_dc): OutputTransform was
212            renamed to output_transform
213    
214            * Thuban/UI/viewport.py (OutputTransform, output_transform):
215            Rename to output_transform
216    
217    2003-07-18  Bernhard Herzog  <[email protected]>
218    
219            * Thuban/Model/layer.py (Layer.__init__): Rename
220            classificationField to classificatin_column and init it here so
221            that it can be used in SetClassificationColumn
222            (Layer.GetClassificationColumn, Layer.GetClassificationField):
223            Rename to GetClassificationColumn.
224            (Layer.SetClassificationColumn, Layer.SetClassificationField):
225            Rename to SetClassificationColumn and issue a LAYER_CHANGED
226            message if the column changes.
227            (Layer._classification_changed, Layer.ClassChanged): Rename to
228            _classification_changed. Update the callers.
229            (Layer.SetShapeStore): Further field->column renames.
230    
231            * Thuban/Model/load.py (SessionLoader.start_classification)
232            (SessionLoader.start_clpoint): Updates because of
233            field->column method name changes in the Layer class
234    
235            * Thuban/Model/save.py (SessionSaver.write_classification): Updates
236            because of field->column method name changes in the Layer class
237    
238            * Thuban/UI/classifier.py (Classifier.__init__)
239            (Classifier._OnTry, Classifier._OnRevert): Updates because of
240            field->column method name changes in the Layer class
241    
242            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Updates
243            because of field->column method name changes in the Layer class
244    
245            * Thuban/UI/viewport.py (ViewPort.find_shape_at): Updates because
246            of field->column method name changes in the Layer class
247    
248            * test/test_save.py (SaveSessionTest.testClassifiedLayer)
249            (SaveSessionTest.testClassifiedLayer): Update because of
250            field->column method name changes in the Layer class
251    
252            * test/test_layer.py (SetShapeStoreTests.setUp)
253            (SetShapeStoreTests.test_sanity): Update because of field->column
254            method name changes in the Layer class
255            (TestLayerModification.setUp): Subscribe to LAYER_CHANGED as well
256            (TestLayerModification.test_sanity)
257            (TestLayerModification.test_initial_settings): remove unsued code
258            and rename to test_sanity.
259            (TestLayerModification.test_set_classification): New test for
260            SetClassification and SetClassificationField.
261    
262    2003-07-18  Bernhard Herzog  <[email protected]>
263    
264            * test/test_classgen.py (TestFixedRamp.test): Extend test to check
265            the non-fixed values as well. The old test would have accepted a
266            fixed ramp that only returnes the fixed properties
267    
268    2003-07-17  Jonathan Coles   <[email protected]>
269    
270            * Doc/manual/mainwindow.png, Doc/manual/mainwindow.xcf: Screen
271            shots for the manual. The XCF file is the source image and
272            has additional layers to support changes.
273    
274            * Doc/manual/thuban-manual.xml: Wrote an initial Introduction.
275    
276            * Thuban/UI/classifier.py (Classifier.__BuildClassification):
277            Return both the new class and the field name.
278    
279            * Thuban/UI/mainwindow.py (MainWindow.ToggleLegend): Don't
280            fit the map to the window as this changes any zoom level that
281            the user may have set.
282    
283    2003-07-16  Jonathan Coles   <[email protected]>
284    
285            * Thuban/Model/classgen.py (generate_singletons,
286            generate_uniform_distribution, generate_quantiles): Remove
287            fixes parameter, but maintain the same functionality by having
288            the calling function pass a FixedRamp object for the ramp.
289            (FixedRamp): New. Adapts a ramp to have fixed property values.
290    
291            * Thuban/Model/classification.py: Use new CLASS_CHANGED message.
292            (Classification): Inherit from Publisher.
293            (Classification.__init__): Remove the layer parameter.
294            Classifications no longer need to have a parent layer.
295            (Classification.GetField, Classification.GetFieldType,
296            Classification.SetFieldInfo): Removed. The field name is stored
297            in the layer, and the type can be retreived by calling
298            Layer.GetFieldType().
299            (Classification._set_layer, Classification.GetLayer): Removed.
300            Classifications no longer have a parent layer.
301    
302            * Thuban/Model/layer.py (Layer.Destroy): Unsubscribe from the
303            classification.
304            (Layer.SetShapeStore): Reset the classification first while
305            we still have the old shape store to work with.
306            (Layer.GetClassificationField, Layer.SetClassificationField):
307            New. Method for getting/setting the field to classify on.
308            (Layer.SetClassification): Simplified now that the layer
309            simply has to hold a reference to the classification and not
310            tell the classification who owns it.
311            Fixes RTbug #2023.
312    
313            * Thuban/Model/load.py (SessionLoader.start_classification):
314            Set the field name on the layer, not the classification.
315    
316            * Thuban/Model/messages.py: Add CLASS_CHANGED for when a
317            classification is modified.
318    
319            * Thuban/Model/save.py (SessionSaver.write_classification):
320            Get the field name and type from the layer.
321    
322            * Thuban/Model/table.py (table_to_dbf, table_to_csv): Renamed
323            parameter records to rows and add docstring. Fixes RTbug #1997.
324    
325            * Thuban/UI/classgen.py (ClassGenDialog.OnOK): Use a fixed
326            ramp when we need to fix certain values of a ramp rather than
327            using the old fixes parameter. Fixes RTbug #2024.
328    
329            * Thuban/UI/classifier.py (ClassGrid.CreateTable): Add fieldType
330            parameter.
331            (ClassTable.Reset): Add fieldType parameter and use it, rather
332            than asking the classification.
333            (Classifier.__init__): Remember the original class's field
334            and ask the layer for the field type, rather than the classification.
335            (Classifier.__SetGridTable): Retrieve the field and field type
336            for the table because they are not in the classification.
337            (Classifier._OnTry, Classifier._OnRevert): Set the classification
338            field on the layer in addition to the classification itself.
339    
340            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Get the
341            classification field from layer.
342    
343            * Thuban/UI/viewport.py (ViewPort.find_shape_at): Get the
344            classification field from layer. Split up tests and remove
345            *-imports. Fixes RTbug #1992.
346    
347            * test/test_classgen.py (TestFixedRamp): Test for the FixedRamp class.
348    
349            * test/test_classification.py
350            (TestClassification.test_classification): Remove tests for methods
351            that no longer exist.
352    
353            * test/test_layer.py (SetShapeStoreTests.setUp): Classification
354            __init__ no longer has a field parameter, use SetClassificationField.
355            (SetShapeStoreTests.test_sanity): Use layer object to get class
356            field info.
357    
358            * test/test_save.py (SaveSessionTest.testClassifiedLayer): Use
359            SetClassificationField on layer to set class field info.
360    
361            * test/test_viewport.py: Renamed from test/test_view.py.
362    
363    2003-07-16  Jan-Oliver Wagner <[email protected]>
364    
365            * Doc/manual/thuban-manual.xml: Added authors and an initial
366            coarse structure.
367    
368    2003-07-15  Bernhard Herzog  <[email protected]>
369    
370            * test/support.py (FloatComparisonMixin): This is a mix-in class
371            and therefore should not be derived from any other class.
372    
373            * test/test_range.py (RangeTest): FloatComparisonMixin is a
374            mix-in, so derive from TestCase as well.
375    
376    2003-07-15  Bernhard Herzog  <[email protected]>
377    
378            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Rework the
379            draw_func handling a bit to remove one layer of indirection. This
380            makes the renderer about 10% faster in the non-classifying case
381            and the code a bit cleaner
382            (MapRenderer.draw_point_shape): Add the pen and brush parameters
383            and set them in the dc. Now the draw_point_shape method and
384            wxproj's draw_polygon_shape function have basically the same
385            signature so that both can be directly used as draw_func
386    
387    2003-07-15  Bernhard Herzog  <[email protected]>
388    
389            * Thuban/Model/save.py (SessionSaver.write_classification): Encode
390            string values (in addition to the labels) as UTF 8
391    
392            * Thuban/Model/load.py (SessionLoader.start_clpoint): Decode the
393            values if the field type is string
394    
395            * test/test_save.py (SaveSessionTest.testClassifiedLayer): Test
396            saving a session with non-ascii string classification values.
397    
398            * test/test_load.py (TestClassification.file_contents)
399            (TestClassification.test): Check for non-ascii values in string
400            classifications
401    
402    2003-07-14  Jonathan Coles   <[email protected]>
403    
404            * test/test_view.py: New. Tests for ViewPort.
405    
406  2003-07-14  Frank Koormann   <[email protected]>  2003-07-14  Frank Koormann   <[email protected]>
407    
408          * Thuban/Model/load.py (SessionLoader.start_map): Encode map          * Thuban/Model/load.py (SessionLoader.start_map): Encode map

Legend:
Removed from v.1411  
changed lines
  Added in v.1512

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26