/[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 1403 by jonathan, Thu Jul 10 14:56:46 2003 UTC revision 1470 by jonathan, Tue Jul 22 14:04:49 2003 UTC
# Line 1  Line 1 
1    2003-07-22  Jonathan Coles   <[email protected]>
2    
3            * Doc/manual/thuban-manual.xml: Continue to write first revision
4            of the manual.
5    
6            * Thuban/UI/renderer.py (MapRenderer.render_map): Wrap method
7            with Begin/EndDrawing() calls to ensure we aren't doing to
8            many updates to the dc during rendering.
9            (ScreenRenderer.draw_shape_layer): self.draw_point_shape takes
10            a pen and brush argument so they need to be passed to the function.
11    
12            * Thuban/UI/viewport.py (ViewPort.calc_min_max_scales): New.
13            Calculates the minimum and maximum scale values. Factored out
14            of set_view_transform so that it could be used to zoom all the
15            way into a single point.
16            (ViewPort.set_view_transform): Call calc_min_max_scales().
17            (ViewPort.FitSelectedToWindow): Zoom to the maximum scale
18            if only a single point is selected.
19    
20            * Doc/manual/images/1_2_legend_close.png,
21            Doc/manual/images/1_2_legend_dock.png,
22            Doc/manual/images/1_2_mainwindow.png,
23            Doc/manual/images/1_2_mainwindow.ps,
24            Doc/manual/images/1_2_mainwindow.sk,
25            Doc/manual/images/3_2_fullextent.png,
26            Doc/manual/images/3_2_fulllayerextent.png,
27            Doc/manual/images/3_2_fullshapeextent.png,
28            Doc/manual/images/3_2_pan.png,
29            Doc/manual/images/3_2_zoomin.png,
30            Doc/manual/images/3_2_zoomout.png,
31            Doc/manual/images/3_3_identify.png,
32            Doc/manual/images/3_3_label.png,
33            Doc/manual/images/3_5_invisible.png,
34            Doc/manual/images/3_5_movedown.png,
35            Doc/manual/images/3_5_moveup.png,
36            Doc/manual/images/3_5_props.png,
37            Doc/manual/images/3_5_tobottom.png,
38            Doc/manual/images/3_5_totop.png,
39            Doc/manual/images/3_5_visible.png: New. Images for the documentation.
40    
41    2003-07-18  Bernhard Herzog  <[email protected]>
42    
43            * Thuban/UI/messages.py (MAP_REPLACED): New message.
44    
45            * Thuban/UI/viewport.py (ViewPort.SetMap): Issue MAP_REPLACED
46            after the new map has been assigned
47    
48            * Thuban/UI/mainwindow.py (MainWindow.delegated_messages):
49            Delegate MAP_REPLACED to the canvas too
50            (MainWindow.prepare_new_session): Removed. Thanks to the new
51            MAP_REPLACED message it's no longer needed
52            (MainWindow.OpenSession, MainWindow.NewSession):
53            prepare_new_session has been removed.
54    
55            * Thuban/UI/classifier.py (Classifier.__init__): Subscribe to
56            MAP_REPLACED so that we can close the dialog if a new map is set.
57            (Classifier.unsubscribe_messages): Unsubscribe from MAP_REPLACED
58            (Classifier.map_replaced): Handle MAP_REPLACED by closing the
59            dialog
60    
61            * test/test_viewport.py (SimpleViewPortTest)
62            (SimpleViewPortTest.test_default_size): Add doc-strings
63            (ViewPortTest.setUp): Bind map to self.map so we can use it in
64            tests. Subscribe to MAP_REPLACED messages too.
65            (ViewPortTest.tearDown): No need to explicitly unsubscribe
66            (ViewPortTest.test_set_map): New test for the SetMap method.
67    
68    2003-07-18  Bernhard Herzog  <[email protected]>
69    
70            * test/test_viewport.py (SimpleViewPortTest.test_default_size):
71            Move this test from ViewPortTest.setUp to this new separate test
72            case. setUp is not the place for the actual tests.
73            (ViewPortTest.test_inital_settings, ViewPortTest.setUp): Move some
74            more of the test from setUp to the new test test_inital_settings.
75            (ViewPortTest.test_win_to_proj, ViewPortTest.test_proj_to_win)
76            (ViewPortTest.test_proj_conv): Split test_proj_conv into
77            test_win_to_proj and test_proj_to_win and make the tests easier to
78            understand
79            (ViewPortTest.testFitRectToWindow, ViewPortTest.testZoomFactor)
80            (ViewPortTest.testZoomOutToRect, ViewPortTest.testTranslate)
81            (ViewPortTest.test_unprojected_rect_around_point)
82            (ViewPortTest.test_find_shape_at, ViewPortTest.testTools):
83            Reformat to increase readability.
84    
85    2003-07-18  Bernhard Herzog  <[email protected]>
86    
87            * Thuban/UI/view.py (MapCanvas.OnLeftDown): Capture the mouse.
88    
89    2003-07-18  Bernhard Herzog  <[email protected]>
90    
91            * test/runtests.py: The test suite can now be run without an X
92            connection. To make sure this remains true, remove the DISPLAY
93            environment variable so that an error occurs if the wxGTK is
94            imported accidentally
95    
96    2003-07-18  Bernhard Herzog  <[email protected]>
97    
98            * Thuban/UI/viewport.py: Remove unused imports
99    
100            * Thuban/UI/view.py: Remove unused imports
101    
102    2003-07-18  Bernhard Herzog  <[email protected]>
103    
104            * test/test_export.py Remove unused imports. The OutputTransform
105            function is now in viewport.py and is called output_transform
106            (TestScalebar.test_output_transform)
107            (TestScalebar.test_OutputTransform): Renamed to
108            test_output_transform and updated to use output_transform instead
109            of OutputTransform
110    
111            * Thuban/UI/view.py (OutputTransform): Moved to viewport.py and
112            renamed.
113            (MapCanvas.Export, MapPrintout.draw_on_dc): OutputTransform was
114            renamed to output_transform
115    
116            * Thuban/UI/viewport.py (OutputTransform, output_transform):
117            Rename to output_transform
118    
119    2003-07-18  Bernhard Herzog  <[email protected]>
120    
121            * Thuban/Model/layer.py (Layer.__init__): Rename
122            classificationField to classificatin_column and init it here so
123            that it can be used in SetClassificationColumn
124            (Layer.GetClassificationColumn, Layer.GetClassificationField):
125            Rename to GetClassificationColumn.
126            (Layer.SetClassificationColumn, Layer.SetClassificationField):
127            Rename to SetClassificationColumn and issue a LAYER_CHANGED
128            message if the column changes.
129            (Layer._classification_changed, Layer.ClassChanged): Rename to
130            _classification_changed. Update the callers.
131            (Layer.SetShapeStore): Further field->column renames.
132    
133            * Thuban/Model/load.py (SessionLoader.start_classification)
134            (SessionLoader.start_clpoint): Updates because of
135            field->column method name changes in the Layer class
136    
137            * Thuban/Model/save.py (SessionSaver.write_classification): Updates
138            because of field->column method name changes in the Layer class
139    
140            * Thuban/UI/classifier.py (Classifier.__init__)
141            (Classifier._OnTry, Classifier._OnRevert): Updates because of
142            field->column method name changes in the Layer class
143    
144            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Updates
145            because of field->column method name changes in the Layer class
146    
147            * Thuban/UI/viewport.py (ViewPort.find_shape_at): Updates because
148            of field->column method name changes in the Layer class
149    
150            * test/test_save.py (SaveSessionTest.testClassifiedLayer)
151            (SaveSessionTest.testClassifiedLayer): Update because of
152            field->column method name changes in the Layer class
153    
154            * test/test_layer.py (SetShapeStoreTests.setUp)
155            (SetShapeStoreTests.test_sanity): Update because of field->column
156            method name changes in the Layer class
157            (TestLayerModification.setUp): Subscribe to LAYER_CHANGED as well
158            (TestLayerModification.test_sanity)
159            (TestLayerModification.test_initial_settings): remove unsued code
160            and rename to test_sanity.
161            (TestLayerModification.test_set_classification): New test for
162            SetClassification and SetClassificationField.
163    
164    2003-07-18  Bernhard Herzog  <[email protected]>
165    
166            * test/test_classgen.py (TestFixedRamp.test): Extend test to check
167            the non-fixed values as well. The old test would have accepted a
168            fixed ramp that only returnes the fixed properties
169    
170    2003-07-17  Jonathan Coles   <[email protected]>
171    
172            * Doc/manual/mainwindow.png, Doc/manual/mainwindow.xcf: Screen
173            shots for the manual. The XCF file is the source image and
174            has additional layers to support changes.
175    
176            * Doc/manual/thuban-manual.xml: Wrote an initial Introduction.
177    
178            * Thuban/UI/classifier.py (Classifier.__BuildClassification):
179            Return both the new class and the field name.
180    
181            * Thuban/UI/mainwindow.py (MainWindow.ToggleLegend): Don't
182            fit the map to the window as this changes any zoom level that
183            the user may have set.
184    
185    2003-07-16  Jonathan Coles   <[email protected]>
186    
187            * Thuban/Model/classgen.py (generate_singletons,
188            generate_uniform_distribution, generate_quantiles): Remove
189            fixes parameter, but maintain the same functionality by having
190            the calling function pass a FixedRamp object for the ramp.
191            (FixedRamp): New. Adapts a ramp to have fixed property values.
192    
193            * Thuban/Model/classification.py: Use new CLASS_CHANGED message.
194            (Classification): Inherit from Publisher.
195            (Classification.__init__): Remove the layer parameter.
196            Classifications no longer need to have a parent layer.
197            (Classification.GetField, Classification.GetFieldType,
198            Classification.SetFieldInfo): Removed. The field name is stored
199            in the layer, and the type can be retreived by calling
200            Layer.GetFieldType().
201            (Classification._set_layer, Classification.GetLayer): Removed.
202            Classifications no longer have a parent layer.
203    
204            * Thuban/Model/layer.py (Layer.Destroy): Unsubscribe from the
205            classification.
206            (Layer.SetShapeStore): Reset the classification first while
207            we still have the old shape store to work with.
208            (Layer.GetClassificationField, Layer.SetClassificationField):
209            New. Method for getting/setting the field to classify on.
210            (Layer.SetClassification): Simplified now that the layer
211            simply has to hold a reference to the classification and not
212            tell the classification who owns it.
213            Fixes RTbug #2023.
214    
215            * Thuban/Model/load.py (SessionLoader.start_classification):
216            Set the field name on the layer, not the classification.
217    
218            * Thuban/Model/messages.py: Add CLASS_CHANGED for when a
219            classification is modified.
220    
221            * Thuban/Model/save.py (SessionSaver.write_classification):
222            Get the field name and type from the layer.
223    
224            * Thuban/Model/table.py (table_to_dbf, table_to_csv): Renamed
225            parameter records to rows and add docstring. Fixes RTbug #1997.
226    
227            * Thuban/UI/classgen.py (ClassGenDialog.OnOK): Use a fixed
228            ramp when we need to fix certain values of a ramp rather than
229            using the old fixes parameter. Fixes RTbug #2024.
230    
231            * Thuban/UI/classifier.py (ClassGrid.CreateTable): Add fieldType
232            parameter.
233            (ClassTable.Reset): Add fieldType parameter and use it, rather
234            than asking the classification.
235            (Classifier.__init__): Remember the original class's field
236            and ask the layer for the field type, rather than the classification.
237            (Classifier.__SetGridTable): Retrieve the field and field type
238            for the table because they are not in the classification.
239            (Classifier._OnTry, Classifier._OnRevert): Set the classification
240            field on the layer in addition to the classification itself.
241    
242            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Get the
243            classification field from layer.
244    
245            * Thuban/UI/viewport.py (ViewPort.find_shape_at): Get the
246            classification field from layer. Split up tests and remove
247            *-imports. Fixes RTbug #1992.
248    
249            * test/test_classgen.py (TestFixedRamp): Test for the FixedRamp class.
250    
251            * test/test_classification.py
252            (TestClassification.test_classification): Remove tests for methods
253            that no longer exist.
254    
255            * test/test_layer.py (SetShapeStoreTests.setUp): Classification
256            __init__ no longer has a field parameter, use SetClassificationField.
257            (SetShapeStoreTests.test_sanity): Use layer object to get class
258            field info.
259    
260            * test/test_save.py (SaveSessionTest.testClassifiedLayer): Use
261            SetClassificationField on layer to set class field info.
262    
263            * test/test_viewport.py: Renamed from test/test_view.py.
264    
265    2003-07-16  Jan-Oliver Wagner <[email protected]>
266    
267            * Doc/manual/thuban-manual.xml: Added authors and an initial
268            coarse structure.
269    
270    2003-07-15  Bernhard Herzog  <[email protected]>
271    
272            * test/support.py (FloatComparisonMixin): This is a mix-in class
273            and therefore should not be derived from any other class.
274    
275            * test/test_range.py (RangeTest): FloatComparisonMixin is a
276            mix-in, so derive from TestCase as well.
277    
278    2003-07-15  Bernhard Herzog  <[email protected]>
279    
280            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Rework the
281            draw_func handling a bit to remove one layer of indirection. This
282            makes the renderer about 10% faster in the non-classifying case
283            and the code a bit cleaner
284            (MapRenderer.draw_point_shape): Add the pen and brush parameters
285            and set them in the dc. Now the draw_point_shape method and
286            wxproj's draw_polygon_shape function have basically the same
287            signature so that both can be directly used as draw_func
288    
289    2003-07-15  Bernhard Herzog  <[email protected]>
290    
291            * Thuban/Model/save.py (SessionSaver.write_classification): Encode
292            string values (in addition to the labels) as UTF 8
293    
294            * Thuban/Model/load.py (SessionLoader.start_clpoint): Decode the
295            values if the field type is string
296    
297            * test/test_save.py (SaveSessionTest.testClassifiedLayer): Test
298            saving a session with non-ascii string classification values.
299    
300            * test/test_load.py (TestClassification.file_contents)
301            (TestClassification.test): Check for non-ascii values in string
302            classifications
303    
304    2003-07-14  Jonathan Coles   <[email protected]>
305    
306            * test/test_view.py: New. Tests for ViewPort.
307    
308    2003-07-14  Frank Koormann   <[email protected]>
309    
310            * Thuban/Model/load.py (SessionLoader.start_map): Encode map
311            title to latin1.  Fixes https://intevation.de/rt/webrt?serial_num=2013
312    
313            * test/test_load_0_8.py (TestUnicodeStrings): New, test load of
314            unicode strings from session file: session title, map title and
315            projection name.
316            
317    2003-07-10  Jonathan Coles   <[email protected]>
318    
319            * Thuban/UI/viewport.py (Tool.MouseUp): Should have called
320            drag_stop, not drag_move when the mouse is released.
321    
322  2003-07-10  Jonathan Coles   <[email protected]>  2003-07-10  Jonathan Coles   <[email protected]>
323    
324          The most important part of this is the seperation of view.py into          The most important part of this is the seperation of view.py into

Legend:
Removed from v.1403  
changed lines
  Added in v.1470

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26