/[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 1582 by bh, Tue Aug 12 15:08:40 2003 UTC revision 1626 by jan, Thu Aug 21 16:04:06 2003 UTC
# Line 1  Line 1 
1    2003-08-21  Jan-Oliver Wagner <[email protected]>
2    
3            * Doc/manual/thuban-manual.xml: Added CVS revision for rev-history.
4            (section Adding and Removing Layers): Added text and described
5            multi-selection.
6            (chapter Extensions): New.
7    
8    2003-08-21  Jan-Oliver Wagner <[email protected]>
9    
10            * Thuban/UI/mainwindow.py (MainWindow.AddLayer): Changed dialog
11            settings to allow multiple files to load into the map.
12            Also reduced selection to *.shp as a default.
13    
14    2003-08-20  Bernhard Herzog  <[email protected]>
15    
16            Add dialogs and commands to open database connections and add
17            database layers.
18    
19            * Thuban/UI/mainwindow.py (MainWindow.DatabaseManagement): New
20            method to open the database connection management dialog
21            (MainWindow.AddDBLayer): New method to add a layer from a database
22            (_has_dbconnections): New helper function to use for sensitivity
23            (database_management command, layer_add_db command): New commands
24            that call the above new methods.
25            (main_menu): Add the new commands to the menu.
26    
27            * Thuban/Model/postgisdb.py (PostGISConnection.__init__)
28            (PostGISConnection.connect): Establish the actual connection in a
29            separate method and call it in __init__. This makes it easier to
30            override the behavior in test cases
31            (PostGISConnection.BriefDescription): New method to return a brief
32            description for use in dialogs.
33    
34            * test/test_postgis_db.py (NonConnection): DB connection that
35            doesn't actually connect
36            (TestBriefDescription): New class with tests for the new
37            BriefDescription method
38    
39    2003-08-19  Jan-Oliver Wagner <[email protected]>
40    
41            Moved anything from extensions to libraries.
42    
43            * libraries: New.
44    
45            * libraries/ pyprojection, pyshapelib, shapelib, thuban: New.
46    
47            * libraries/pyprojection/ LICENSE, MANIFEST.in, Projection.i,
48            Projection.py, Projection_wrap.c, setup.py, swighelp.txt: These files have
49            been moved here from thuban/extensions/pyprojection/
50            See there in the Attic for the older history.
51    
52            * libraries/pyshapelib/ COPYING, ChangeLog, NEWS, README, dbflib.i,
53            dbflib.py, dbflib_wrap.c, pyshapelib_api.h, pytest.py, setup.py,
54            shapelib.i, shapelib.py, shapelib_wrap.c, shptreemodule.c: These files
55            have been moved here from thuban/extensions/pyshapelib/
56            See there in the Attic for the older history.
57    
58            * libraries/shapelib/ dbfopen.c, shapefil.h, shpopen.c, shptree.c: These
59            files have been moved here from thuban/extensions/shapelib/
60            See there in the Attic for the older history.
61    
62            * libraries/thuban/ bmpdataset.cpp, cpl_mfile.cpp, cpl_mfile.h,
63            gdalwarp.cpp, wxproj.cpp: These files have been moved here from
64            thuban/extensions/thuban/
65            See there in the Attic for the older history.
66    
67            * MANIFEST.in, setup.cfg, setup.py: renamed extensions to libraries.
68    
69            * extensions/thuban/ bmpdataset.cpp, cpl_mfile.cpp, cpl_mfile.h,
70            gdalwarp.cpp, wxproj.cpp: Moved to libraries/thuban.
71    
72            * extensions/shapelib/ dbfopen.c, shapefil.h, shpopen.c, shptree.c:
73            Moved to libraries/shapelib.
74    
75            * extensions/pyshapelib/ COPYING, NEWS, dbflib.py, pytest.py,
76            shapelib.py, README, dbflib_wrap.c, setup.py, shapelib_wrap.c,
77            ChangeLog, dbflib.i, pyshapelib_api.h, shapelib.i, shptreemodule.c:
78            Moved to libraries/pyshapelib.
79    
80            * extensions/pyprojection/ MANIFEST.in, Projection.py, setup.py,
81            LICENSE, Projection.i, Projection_wrap.c, swighelp.txt:
82            Moved to libraries/pyprojection.
83    
84            * extensions/ pyprojection, pyshapelib, shapelib, thuban: Removed.
85    
86            * extensions: Removed.
87    
88    2003-08-19  Bernhard Herzog  <[email protected]>
89    
90            * test/test_viewport.py (ViewPortTest): We don't use the
91            facilities of FileTestMixin so don't derive from it.
92            (TestViewportWithPostGIS): New class with tests for using a
93            viewport on a map with postgis layers.
94    
95    2003-08-19  Bernhard Herzog  <[email protected]>
96    
97            Add the db connection management to the session.
98    
99            * Thuban/Model/session.py (Session.__init__): New instance
100            variable db_connections
101            (Session.AddDBConnection, Session.DBConnections)
102            (Session.HasDBConnections, Session.CanRemoveDBConnection)
103            (Session.RemoveDBConnection): New methods to manage and query the
104            db connections managed by the session
105            (Session.OpenDBShapeStore): New method to open a shapestore from a
106            db connection
107    
108            * Thuban/Model/messages.py (DBCONN_REMOVED, DBCONN_ADDED): New
109            messages for the db connection handling in the session
110    
111            * test/test_postgis_session.py: New. test cases for the session's
112            db connection handling with postgis connections
113    
114    2003-08-19  Bernhard Herzog  <[email protected]>
115    
116            Add very basic postgis database support and the corresponding test
117            cases. The test cases require a PostgreSQL + postgis installation
118            but no existing database. The database will be created
119            automatically by the test cases
120    
121            * test/README: Add note about skipped tests and the requirements
122            of the postgis tests.
123    
124            * Thuban/Model/postgisdb.py: New. Basic postgis database support.
125    
126            * test/test_postgis_db.py: New. Test cases for the postgis
127            support.
128    
129            * Thuban/Model/wellknowntext.py: New. Parser for well-known-text
130            format
131    
132            * test/test_wellknowntext.py: New. Test cases for the
133            wellknowntext parser
134    
135            * test/postgissupport.py: New. Support module for tests involving
136            a postgis database.
137    
138            * test/support.py (execute_as_testsuite): Shut down the postmaster
139            if it's still running after the tests
140    
141            * Thuban/Model/data.py (RAW_WKT): New constant for raw data in
142            well known text format
143    
144    2003-08-19  Jan-Oliver Wagner <[email protected]>
145    
146            * Examples/simple_extensions/hello_world.py: New. Raises a Hello World
147            message dialog.
148    
149    2003-08-18  Bernhard Herzog  <[email protected]>
150    
151            * test/support.py (ThubanTestResult.printErrors): Indent the
152            reason for the skips in the output to make it a bit more readable.
153            (execute_as_testsuite): New helper function to run a test suite
154            and print some more information.
155            (run_tests): Use execute_as_testsuite to run the tests
156    
157            * test/runtests.py (main): Use execute_as_testsuite to run the
158            tests
159    
160    2003-08-18  Bernhard Herzog  <[email protected]>
161    
162            Fix some bugs in Thuban and the test suite that were uncovered by
163            changes introduced in Python 2.3:
164    
165            * Thuban/Model/table.py (DBFTable.__init__): Make sure the
166            filename is an absolute name
167    
168            * Thuban/Model/layer.py (RasterLayer.__init__): Make sure the
169            filename is an absolute name
170    
171            * test/test_save.py (SaveSessionTest.testRasterLayer): Use a
172            unique filename to save to and use the correct relative filename
173            in the expected output.
174            (SaveSessionTest.test_dbf_table): Use the correct relative
175            filename in the expected output.
176    
177            * test/test_layer.py (TestLayer.test_raster_layer): Update the
178            test to check whether the filename is absolute.
179    
180    2003-08-18  Jan-Oliver Wagner <[email protected]>
181    
182            * Thuban/UI/about.py (About.__init__): Added Silke Reimer.
183    
184    2003-08-15  Bernhard Herzog  <[email protected]>
185    
186            Change the way shapes are returned by a shape store. The
187            ShapesInRegion method returns an iterator over actual shape
188            objects instead of a list of shape ids.
189    
190            * Thuban/Model/data.py (ShapefileShape.ShapeID): New. Return shape
191            id.
192            (ShapefileStore.ShapesInRegion): Return an iterator over the
193            shapes which yields shape objects instead of returning a list of
194            shape ids
195            (ShapefileStore.AllShapes): New. Return an iterator over all
196            shapes in the shape store
197            (DerivedShapeStore.AllShapes): New. Like in ShapefileStore
198    
199            * Thuban/Model/layer.py (Layer.ShapesInRegion): Update
200            doc-string.
201    
202            * Thuban/UI/baserenderer.py
203            (BaseRenderer.layer_ids, BaseRenderer.layer_shapes): Rename to
204            layer_shapes and make it return an iterator containg shapes
205            instead of a list of ids.
206            (BaseRenderer.draw_shape_layer): Update doc-string; Adapt to
207            layer_shapes() change
208    
209            * Thuban/UI/renderer.py (ScreenRenderer.layer_ids)
210            (ScreenRenderer.layer_shapes): Rename as in BaseRenderer
211    
212            * Thuban/UI/viewport.py (ViewPort._find_shape_in_layer): Adapt to
213            changes in the ShapesInRegion return value.
214            (ViewPort._get_hit_tester): Remove commented out code
215    
216            * test/mockgeo.py (SimpleShapeStore.ShapesInRegion): Adapt to the
217            new return value.
218            (SimpleShapeStore.AllShapes): New. Implement this method too.
219    
220            * test/test_layer.py (TestLayer.test_arc_layer)
221            (TestLayer.test_polygon_layer, TestLayer.test_point_layer)
222            (TestLayer.test_point_layer_with_projection)
223            (TestLayer.test_derived_store): Adapt to changes in the
224            ShapesInRegion return value.
225    
226            * test/test_shapefilestore.py
227            (TestShapefileStoreArc.test_shapes_in_region)
228            (TestShapefileStorePolygon.test_shapes_in_region)
229            (TestShapefileStorePoint.test_shapes_in_region): Adapt to changes
230            in the ShapesInRegion return value.
231            (TestShapefileStorePoint.test_all_shapes)
232            (TestShapefileStoreArc.test_shape_shapeid): New tests for the new
233            methods
234    
235            * test/test_derivedshapestore.py
236            (TestDerivedShapeStore.test_shapes_in_region): Adapt to changes in
237            the ShapesInRegion return value.
238            (TestDerivedShapeStore.test_all_shapes)
239            (TestDerivedShapeStore.test_shape_shapeid): New tests for the new
240            methods
241    
242    2003-08-15  Bernhard Herzog  <[email protected]>
243    
244            Make the renderers deal correctly with raw vs. python level
245            representation of shape geometries
246    
247            * Thuban/UI/baserenderer.py (BaseRenderer.low_level_renderer):
248            Return a flag useraw in addition to the callable and the parameter
249            to indicate whether the callable can deal with the raw shape data
250            or uses the higher level python lists of coordinates. The callable
251            now should accept either the raw data or the return value of the
252            shape's Points() method.
253            (BaseRenderer.draw_shape_layer): Adapt to the low_level_renderer
254            change
255            (BaseRenderer.projected_points): Instead of the shape id use the
256            points list as parameter.
257            (BaseRenderer.draw_polygon_shape, BaseRenderer.draw_arc_shape)
258            (BaseRenderer.draw_point_shape): Adapt to projected_points()
259            change and accept the points list as parameter instead of the
260            shape id.
261    
262            * Thuban/UI/renderer.py (MapRenderer.low_level_renderer): Return
263            the useraw flag as required by the BaseRenderer
264            (ScreenRenderer.draw_shape_layer): Adapt to low-level renderer
265            changes.
266    
267            * test/test_baserenderer.py
268            (TestBaseRenderer.test_point_with_classification): New test for
269            rendering a map with classifications.
270    
271    2003-08-15  Bernhard Herzog  <[email protected]>
272    
273            * Thuban/UI/viewport.py (ViewPort.find_shape_at)
274            (ViewPort._find_shape_in_layer, ViewPort._find_shape_in_layer)
275            (ViewPort._get_hit_tester, ViewPort.projected_points)
276            (ViewPort._hit_point, ViewPort._hit_arc, ViewPort._hit_polygon)
277            (ViewPort._find_label_at): Split the find_shape_at method into
278            several new methods and use the functions in the hit-test module.
279    
280            * Thuban/UI/hittest.py: New module with Python-level hit-testing
281            functions
282    
283            * test/test_hittest.py: New. Test for the new hittest module
284    
285    2003-08-15  Bernhard Herzog  <[email protected]>
286    
287            * Thuban/Model/layer.py (Layer.ShapesInRegion): Apply the layer
288            projection to all corners of the bounding box to get a better
289            approximation of the projected bounding box
290    
291            * test/test_layer.py (TestLayer.test_point_layer_with_projection):
292            New. Test coordinate handling of a layer with a projection.
293            Catches the bug fixed in Layer.ShapesInRegion
294    
295    2003-08-15  Bernhard Herzog  <[email protected]>
296    
297            Move some of the mock objects in test_baserenderer into their own
298            module so they can easily be used from other tests
299    
300            * test/mockgeo.py: New test helper module with some mock objects
301            for geometry related things like shapes, shapestores and
302            projections.
303    
304            * test/test_mockgeo.py: New. Tests for the new helper module
305    
306            * test/test_baserenderer.py: Some of the mock-objects are in
307            mockgeo now.
308    
309    2003-08-12  Jan-Oliver Wagner <[email protected]>
310    
311            * Thuban/UI/about.py (About.__init__): Added Bj�rn Broscheit.
312    
313  2003-08-12  Bernhard Herzog  <[email protected]>  2003-08-12  Bernhard Herzog  <[email protected]>
314    
315          * po/de.po: New. German translations by Bjoern Broscheit          * po/de.po: New. German translations by Bjoern Broscheit

Legend:
Removed from v.1582  
changed lines
  Added in v.1626

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26