/[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 1479 by frank, Thu Jul 24 17:01:43 2003 UTC revision 1588 by bh, Fri Aug 15 10:31:18 2003 UTC
# Line 1  Line 1 
1    2003-08-15  Bernhard Herzog  <[email protected]>
2    
3            * Thuban/Model/layer.py (Layer.ShapesInRegion): Apply the layer
4            projection to all corners of the bounding box to get a better
5            approximation of the projected bounding box
6    
7            * test/test_layer.py (TestLayer.test_point_layer_with_projection):
8            New. Test coordinate handling of a layer with a projection.
9            Catches the bug fixed in Layer.ShapesInRegion
10    
11    2003-08-15  Bernhard Herzog  <[email protected]>
12    
13            Move some of the mock objects in test_baserenderer into their own
14            module so they can easily be used from other tests
15    
16            * test/mockgeo.py: New test helper module with some mock objects
17            for geometry related things like shapes, shapestores and
18            projections.
19    
20            * test/test_mockgeo.py: New. Tests for the new helper module
21    
22            * test/test_baserenderer.py: Some of the mock-objects are in
23            mockgeo now.
24    
25    2003-08-12  Jan-Oliver Wagner <[email protected]>
26    
27            * Thuban/UI/about.py (About.__init__): Added Bj�rn Broscheit.
28    
29    2003-08-12  Bernhard Herzog  <[email protected]>
30    
31            * po/de.po: New. German translations by Bjoern Broscheit
32    
33    2003-08-12  Bernhard Herzog  <[email protected]>
34    
35            * Thuban/UI/projdialog.py (UnknownProjPanel._DoLayout): Translated
36            strings have to be one string literal.
37    
38    2003-08-11  Bernhard Herzog  <[email protected]>
39    
40            * test/support.py (FloatComparisonMixin.assertPointListEquals):
41            New. This method was used in various derived classes, but it's
42            better to have it here.
43    
44            * test/test_shapefilestore.py
45            (ShapefileStoreTests.assertPointListEquals): Removed. It's now in
46            FloatComparisonMixin
47    
48            * test/test_layer.py (TestLayer.assertPointListEquals): Removed.
49            It's now in FloatComparisonMixin
50    
51            * test/test_derivedshapestore.py
52            (TestDerivedShapeStore.assertPointListEquals): Removed. It's now
53            in FloatComparisonMixin
54    
55    2003-08-11  Bernhard Herzog  <[email protected]>
56    
57            * Thuban/UI/join.py (JoinDialog.OnJoin): Add missing space to
58            error message
59    
60    2003-08-08  Jan-Oliver Wagner <[email protected]>
61    
62            * Doc/manual/thuban-manual.xml: Now use authorgroup. Added revhistory
63            with version number.
64            Changed title to reflect version number of Thuban.
65    
66    2003-08-08  Jan-Oliver Wagner <[email protected]>
67    
68            * Thuban/UI/about.py (About.__init__): Reworked the hall of fame. Now
69            the list corresponds to the "About" web page.
70    
71    2003-08-08  Bernhard Herzog  <[email protected]>
72    
73            * Thuban/UI/projdialog.py (UTMProposeZoneDialog.dialogLayout):
74            Make sure translated strings are recognized as one string literal.
75    
76            * Thuban/UI/proj4dialog.py (UTMProposeZoneDialog.dialogLayout):
77            Make sure translated strings are recognized as one string literal.
78    
79            * Thuban/UI/classgen.py (ClassGenDialog.OnOK): Make sure
80            translated strings are recognized as one string literal.
81    
82            * Thuban/UI/application.py (ThubanApplication.OpenSession): Make
83            sure translated strings are recognized as one string literal.
84    
85    2003-08-07  Bernhard Herzog  <[email protected]>
86    
87            * Thuban/Model/data.py (DerivedShapeStore.RawShapeFormat): New.
88            Simply delegates to the original shapestore.
89    
90            * test/test_derivedshapestore.py
91            (TestDerivedShapeStore.test_raw_format): New. Test case for
92            DerivedShapeStore.RawShapeFormat
93    
94    2003-08-07  Bernhard Herzog  <[email protected]>
95    
96            Add raw data interface to shape objects.
97    
98            * Thuban/Model/data.py (ShapefileShape, Shape): Rname the shape
99            class to ShapefileShape which now holds shapefile specific
100            information.
101            (ShapefileShape.compute_bbox): Simplified to not cache any
102            information. The way this method is used that shouldn't matter
103            performance wise.
104            (ShapefileShape.RawData): New. Return the shapeid which is the raw
105            data format for shapes from shapefiles.
106            (ShapefileStore.RawShapeFormat): New. Return the raw datatype used
107            in the shape objects returned by a shapestore. For a
108            ShapefileStore this is always RAW_SHAPEFILE.
109            (RAW_PYTHON, RAW_SHAPEFILE): Constants for the RawShapeFormat
110            method.
111    
112            * test/test_shapefilestore.py
113            (TestShapefileStore.test_raw_format): New test to test the raw
114            format feature of shapes.
115    
116            * Thuban/Model/layer.py: Remove the unused import of Shape from
117            data. It was only there for interface compatibility but it's not
118            used inside of Thuban and the generic Shape class has gone away.
119    
120            * Thuban/UI/renderer.py (MapRenderer.low_level_renderer): Check
121            the raw data format and only use an optimized version of its a
122            shapefile.
123    
124    2003-08-07  Bernhard Herzog  <[email protected]>
125    
126            * test/test_baserenderer.py (SimpleShape): Shape class for the
127            tests.
128            (SimpleShapeStore.Shape): Use SimpleShape instead of
129            Thuban.Model.data.Shape to make the tests independed of the coming
130            changes.
131    
132    2003-08-07  Bernhard Herzog  <[email protected]>
133    
134            * test/support.py (SkipTest, ThubanTestResult, ThubanTestRunner)
135            (ThubanTestProgram): New classes that extend the respective
136            classes from unittest. These new version support skipping tests
137            under certain expected conditions. In the Thuban test suite we
138            uses this for tests that require the optional gdal support.
139            (run_tests): Use ThubanTestProgram instead of the unittest.main()
140    
141            * test/runtests.py (main): Use the new ThubanTestRunner instead of
142            the normal one from unittest
143    
144            * test/test_layer.py (TestLayer.test_raster_layer): If this test
145            is not run because gdal support isn't available report this to the
146            runner.
147    
148            * test/test_baserenderer.py
149            (TestBaseRenderer.test_raster_no_projection): Do not run this test
150            if gdal support isn't available and report this to the runner.
151    
152    2003-08-06  Bernhard Herzog  <[email protected]>
153    
154            Rearrange the renderers a bit, partly in preparation for changes
155            required for the postgis merge, partly to make it more testable.
156            Also make the representation of coordinates in Shapes more
157            consistent.
158    
159            * Thuban/UI/renderer.py (MapRenderer): Most of the code/methods in
160            this class is now in BaseRenderer. This class is now practically
161            only a specialization of BaseRenderer for rendering to an actual
162            wx DC.
163            (ScreenRenderer.draw_shape_layer): Use self.low_level_renderer()
164            to get the shapetype specific rendering functions.
165    
166            * Thuban/UI/baserenderer.py: New file with the basic rendering
167            logic. The code in this file is completely independend of wx.
168            (BaseRenderer): Class with the basic rendering logic
169    
170            * test/test_baserenderer.py: New. Test cases for BaseRenderer
171    
172            * Thuban/UI/view.py (MapCanvas.__init__): New instance variable
173            error_on_redraw to guard agains endless loops and stack overflows
174            when there's a bug in the rendering code that raises exceptions.
175            (MapCanvas.OnIdle, MapCanvas._do_redraw): Split the actual
176            rendering into a separate method _do_redraw so that error handling
177            is a bit easier. When an exception occurs, set error_on_redraw to
178            true. When it's true on entry to OnIdle do nothing and return
179            immediately.
180    
181            * Thuban/Model/data.py (ShapefileStore.Shape): For consistency, a
182            Shape object will always have the coordinates as a list of list of
183            coordinate pairs (tuples).
184            (Shape.compute_bbox): Adapt to new representation.
185    
186            * Thuban/UI/viewport.py (ViewPort.find_shape_at)
187            (ViewPort.LabelShapeAt): Adapt to new coordinate representation in
188            Shape objects.
189    
190            * test/test_shapefilestore.py
191            (ShapefileStoreTests.assertFloatTuplesEqual)
192            (ShapefileStoreTests.assertPointListEquals): Rename to
193            assertPointListEquals and change purpose to checking equality of
194            the lists returned by Shape.Points().
195            (TestShapefileStoreArc.test_shape)
196            (TestShapefileStorePolygon.test_shape)
197            (TestShapefileStorePoint.test_shape): Use the new
198            assertPointListEquals instead of assertFloatTuplesEqual
199    
200            * test/test_layer.py (TestLayer.assertFloatTuplesEqual)
201            (TestLayer.assertPointListEquals): Rename to assertPointListEquals
202            and change purpose to checking equality of the lists returned by
203            Shape.Points().
204            (TestLayer.test_arc_layer, TestLayer.test_arc_layer)
205            (TestLayer.test_polygon_layer, TestLayer.test_point_layer)
206            (TestLayer.test_derived_store): Use the new assertPointListEquals
207            instead of assertFloatTuplesEqual
208    
209            * test/test_derivedshapestore.py
210            (TestDerivedShapeStore.assertFloatTuplesEqual)
211            (TestDerivedShapeStore.assertPointListEquals): Rename to
212            assertPointListEquals and change purpose to checking equality of
213            the lists returned by Shape.Points().
214            (TestDerivedShapeStore.test_shape): Use the new
215            assertPointListEquals instead of assertFloatTuplesEqual
216    
217    2003-08-06  Jan-Oliver Wagner <[email protected]>
218    
219            * Thuban/UI/projdialog.py (UTMPanel._OnPropose): Added test for
220            a bounding box. A dialog is raised in case, no bounding box
221            is found. This fixes bug #2043:
222            https://intevation.de/rt/webrt?serial_num=2043
223    
224    2003-08-05  Bernhard Herzog  <[email protected]>
225    
226            * Thuban/Model/color.py (Color.__repr__): Make the repr of a color
227            object look like a Color instantiation. Formerly it looked like a
228            tuple.
229    
230            * test/test_color.py (TestColor.test_repr)
231            (TestColor.test_equality, TestColor.test_inequality): New. test
232            some more apects of the Color class
233            (TestTransparent.test_repr, TestTransparent.test_hex)
234            (TestTransparent.test_equality): New. Test cases for the
235            Transparent object.
236    
237    2003-08-04  Jan-Oliver Wagner <[email protected]>
238    
239            * Doc/manual/thuban-manual.xml: a number of small improvements.
240            The resulting file is the version submitted for GREAT-ER II.
241    
242    2003-08-01  Bernhard Herzog  <[email protected]>
243    
244            * Thuban/UI/resource.py, Thuban/UI/projdialog.py,
245            Thuban/UI/join.py, Thuban/UI/classgen.py, Thuban/UI/about.py,
246            Thuban/Model/resource.py: Insert cvs keywords and doc-strings.
247    
248            * Thuban/UI/common.py: Insert cvs keywords and doc-strings.
249            (Color2wxColour, wxColour2Color, ThubanBeginBusyCursor)
250            (ThubanEndBusyCursor): Add doc-strings
251    
252    2003-08-01  Bernhard Herzog  <[email protected]>
253    
254            First step towards PostGIS integration. More abstraction by movin
255            more code from the layer to the shapestore. More methods of the
256            layer are now simply delegated to the equivalent method of the
257            shapestore. The SHAPETYPE_* constants are now in data not in
258            layer.
259    
260            * Thuban/Model/data.py (SHAPETYPE_POLYGON, SHAPETYPE_ARC)
261            (SHAPETYPE_POINT, Shape): Move these constants and classes from
262            layer.py to data.py
263            (ShapefileStore.__init__): More Initialization for the new methods
264            and functionality.
265            (ShapefileStore.ShapeType, ShapefileStore.NumShapes)
266            (ShapefileStore.BoundingBox, ShapefileStore.ShapesInRegion)
267            (ShapefileStore.Shape): New methods that were formerly implemented
268            in the layer.
269            (DerivedShapeStore.Shape, DerivedShapeStore.ShapesInRegion)
270            (DerivedShapeStore.ShapeType, DerivedShapeStore.NumShapes)
271            (DerivedShapeStore.BoundingBox): New. DerivedShapeStore
272            equivalents of the new shape methods. These versions are simply
273            delegated to the original shapstore.
274    
275            * Thuban/Model/layer.py (SHAPETYPE_POLYGON, SHAPETYPE_ARC)
276            (SHAPETYPE_POINT, Shape): Removed. They're now in data.py
277            (Layer.SetShapeStore): Removed the initializatin of instance
278            variables that were needed for the stuff that's now in
279            ShapefileStore
280            (Layer.BoundingBox, Layer.NumShapes, Layer.ShapeType)
281            (Layer.Shape, Layer.ShapesInRegion): Simply delegate to the
282            shapestore.
283    
284            * Thuban/UI/classifier.py, Thuban/UI/renderer.py,
285            Thuban/UI/viewport.py: Import the SHAPETYPE_* constants from data
286            instead of layer.
287    
288            * test/test_shapefilestore.py: New. Tests for ShapefileStore.
289    
290            * test/test_derivedshapestore.py: New. Tests for DerivedShapeStore.
291    
292            * test/test_layer.py: Import the SHAPETYPE_* constants from data
293            instead of layer.
294            (TestLayer.test_derived_store): Remove the test for the exception
295            when instantiating the DerivedShapeStore with an incompatible
296            table which is now in test_derivedshapestore.py. Add some more
297            tests of the layer methods to determine whether they work for a
298            DerivedShapeStore as well.
299    
300    2003-07-31  Jonathan Coles   <[email protected]>
301    
302            * Doc/manual/thuban-manual.xml: Fix the list of required packages
303            by just listing the name and where they can be found.
304    
305    2003-07-31  Frank Koormann   <[email protected]>
306    
307            * Doc/manual/thuban-manual.xml:
308            Changed the screenshot elements to figure.
309            Changed some variablelist elements to itemizedlist.
310            Added section on GDAL formats.
311    
312    2003-07-31  Jonathan Coles   <[email protected]>
313    
314            * Doc/manual/thuban-manual.xml: Added a few sentences about
315            the Fix Border Color option when generating classes.
316    
317    2003-07-30  Jonathan Coles   <[email protected]>
318    
319            * Thuban/Model/classgen.py: Add docstrings. Rename specific
320            Ramp instances to use lower_case_style.
321    
322            * Thuban/UI/classgen.py: Use renamed Ramp instances.
323            
324            * Thuban/UI/classifier.py: Add docstrings.
325    
326            * Thuban/UI/dock.py: Add docstrings.
327    
328            * test/test_classgen.py: Use renamed Ramp instances.
329    
330    2003-07-30  Bernhard Herzog  <[email protected]>
331    
332            * Thuban/Lib/connector.py (QueueingPublisher): Removed. This class
333            was never used in Thuban.
334    
335    2003-07-30  Bernhard Herzog  <[email protected]>
336    
337            * Thuban/UI/join.py (JoinDialog.__init__): Use the table's Title()
338            method directly instead of going through the transient_table
339            method. This faster because transient_table may force the copy of
340            a DBF file into the transient database and setting a table's title
341            doesnm't affect the title of the associated transient table, so
342            this fixes RT #2042
343    
344            * Thuban/UI/main.py (__version__): Don't import the already
345            removed show_exception_dialog.
346    
347    2003-07-29  Jonathan Coles   <[email protected]>
348    
349            * Thuban/UI/application.py (ThubanApplication.ShowExceptionDialog):
350            Put back this method and remove the equivalent function since we
351            are setting the exception hook from within this class (OnInit).
352    
353    2003-07-29  Jonathan Coles   <[email protected]>
354    
355            * Doc/manual/images/5_2_custom_ramp.png,
356            Doc/manual/images/5_2_quantiles.png,
357            Doc/manual/images/5_2_uniform_dist.png,
358            Doc/manual/images/5_2_unique_values.png,
359            Doc/manual/images/8_int_error.png: New screen shots.
360    
361            * Doc/manual/thuban-manual.xml: Fixed typos and wording, clarified
362            some points, and added more screen shots.
363    
364    2003-07-29  Bernhard Herzog  <[email protected]>
365    
366            * Thuban/Model/data.py: Remove the now unused import of warnings
367    
368    2003-07-29  Bernhard Herzog  <[email protected]>
369    
370            * Thuban/Model/data.py (SimpleStore): Removed. This class has been
371            deprecated since before the 0.8 release and isn't used in Thuban
372            itself anymore.
373    
374            * Thuban/Model/transientdb.py: Remove some unnecessary imports
375    
376    2003-07-29  Jonathan Coles   <[email protected]>
377    
378            * Thuban/UI/application.py (ThubanApplication.OnInit): set the
379            python exception hook here so that we are sure to catch any
380            Thuban exception that happen during initialization.
381    
382            * Thuban/UI/main.py (main): Don't set the exception hook here,
383            it will get set in ThubanApplication.OnInit.
384    
385    2003-07-29  Jonathan Coles   <[email protected]>
386                                                                                
387            * Thuban/UI/application.py (ThubanApplication.ShowExceptionDialog):
388            Removed and called it show_exception_dialog() so that the exception
389            handler can be set before the class is created.
390                                                                                
391            * Thuban/UI/main.py (main): Install the exception handler before
392            a ThubanApplication is created.
393                                                                                    
394    2003-07-29  Bernhard Herzog  <[email protected]>
395    
396            * po/it.po: New. Italian translation by Maurizio Napolitano
397    
398            * po/ru.po: New. Russian translation by Alex Shevlakov
399    
400    2003-07-29  Frank Koormann   <[email protected]>
401    
402            * Doc/manual/thuban-manual.xml: Extended section on supported
403            projections.
404            
405    2003-07-29  Frank Koormann   <[email protected]>
406    
407            * Doc/manual/thuban-manual.xml: gaspell-checked.
408    
409    2003-07-29  Jonathan Coles   <[email protected]>
410    
411            * Doc/manual/images/3_5_legend.png: Added border to improve look
412            on white background.
413    
414    2003-07-29  Jonathan Coles   <[email protected]>
415    
416            * Doc/manual/thuban-manual.xml: Fixed grammar and typos. Added
417            descriptions for the legend toolbar.
418    
419            * Doc/manual/images/4_2_raster_layer_properties.png: Removed
420            cursor from dialog box.
421    
422    2003-07-28  Jonathan Coles   <[email protected]>
423    
424            * Doc/manual/thuban-manual.xml: More screenshots and more chapters.
425    
426            * Doc/manual/images/2_4_session_tree.png,
427            Doc/manual/images/3_5_legend.png, Doc/manual/images/3_rename_map.png,
428            Doc/manual/images/4_2_layer_properties.png,
429            Doc/manual/images/4_2_raster_layer_properties.png,
430            Doc/manual/images/5_3_genclass.png,
431            Doc/manual/images/5_classification.png,
432            Doc/manual/images/6_projection.png,
433            Doc/manual/images/7_1_table_view.png,
434            Doc/manual/images/7_2_5_join.png: New screenshots.
435    
436    2003-07-24  Jonathan Coles   <[email protected]>
437    
438            * Doc/manual/thuban-manual.xml: Chapter on Projection Management.
439    
440    2003-07-24  Jonathan Coles   <[email protected]>
441    
442            * Doc/manual/thuban-manual.xml: Added EPS images and wrote
443            chapter on Layer Management.
444    
445            * Doc/manual/Makefile: New. Makefile to generate all formats for the
446            manual and images.
447    
448    2003-07-24  Bernhard Herzog  <[email protected]>
449    
450            * Thuban/Model/range.py, Thuban/version.py: Remove the #! line as
451            it annoys lintian which warns about these files not being
452            executable. The #1 isn't necessary here since if you absolutely
453            must execute them you can always say "python <filename>".
454    
455            * Thuban/UI/renderer.py (ScreenRenderer.draw_shape_layer): Remove
456            superfluous code to set brush and pen for point shapes
457    
458            * Thuban/UI/viewport.py: Remove commented out code that wouldn't
459            belong in viewport anyway
460    
461  2003-07-24  Frank Koormann   <[email protected]>  2003-07-24  Frank Koormann   <[email protected]>
462    
463          * Doc/manual/thuban-manual.xml: Added section on table management.          * Doc/manual/thuban-manual.xml: Added section on table management.

Legend:
Removed from v.1479  
changed lines
  Added in v.1588

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26