/[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 1655 by bh, Mon Aug 25 16:05:33 2003 UTC revision 1807 by bh, Fri Oct 10 10:36:43 2003 UTC
# Line 1  Line 1 
1    2003-10-10  Bernhard Herzog  <[email protected]>
2    
3            * Thuban/UI/projdialog.py (ProjFrame.build_dialog): New method
4            that contains all the setup for the dialog's widgets, layout and
5            event handling.
6            (__): Call build_dialog to build the dialog.
7            (ProjFrame.__set_properties, ProjFrame.__do_layout): Removed.
8            Their functionality is now in build_dialog
9            (ProjFrame.__VerifyButtons, ProjFrame.__VerifyButtons)
10            (ProjFrame.__DoOnProjAvail, ProjFrame.__DoOnProjAvail)
11            (ProjFrame.__DoOnProjChoice): Small updates due to slightly
12            different widget names and hierarchy introduced with build_dialog.
13    
14    2003-10-10  Bernhard Herzog  <[email protected]>
15    
16            * README: Fix typo.
17    
18    2003-10-09  Bernhard Herzog  <[email protected]>
19    
20            * Thuban/Model/proj.py (ProjFile.Add): Do not check whether the
21            projection is already in the list. This is *a lot* faster when
22            loading files with hundreds of projections since it saves a linear
23            search. OTOH this will allow adding the same projection to the
24            user.proj file multiple times in the projection dialog but we'll
25            deal with that later
26    
27    2003-10-09  Jan-Oliver Wagner <[email protected]>
28    
29            * devtools: New. Directory for developer tools that are not intended
30            for the regular user.
31    
32            * devtools/create_epsg.py: New. Convert the epsg file of proj into
33            a python .proj file.
34    
35    2003-10-09  Bernhard Herzog  <[email protected]>
36    
37            * test/test_proj.py
38            (TestProjection.test_get_parameter_without_equals_sign): New. Test
39            whether GetParameter handles parameters without "=" sign correctly
40    
41            * Thuban/Model/proj.py (Projection.GetParameter): Handle
42            parameters that do not contain a "=". Update the doc-string
43    
44    2003-10-08  Bernhard Herzog  <[email protected]>
45    
46            * Thuban/UI/projdialog.py (ProjFrame.__set_properties): Remove the
47            length limit on the projname text control
48    
49    2003-10-08  Bernhard Herzog  <[email protected]>
50    
51            * test/test_proj.py (TestProjection.test_get_projection_units_geo)
52            (TestProjection.test_get_projection_units_normal): New. Tests for
53            the Projection.GetProjectedUnits method
54    
55    2003-10-08  Jan-Oliver Wagner <[email protected]>
56    
57            * Thuban/Model/resource.py (get_user_proj_file): small bug-fix:
58            Added missing 'val' parameter.
59    
60    2003-10-08  Bernhard Herzog  <[email protected]>
61    
62            * Thuban/UI/projdialog.py (ProjFrame.__DoOnProjAvail): When the
63            projection type of the currently selected projection is not known,
64            i.e. there's no panel for it, use the UnknownProjPanel
65            (ProjFrame.__DoOnProjChoice, ProjFrame._show_proj_panel): Split
66            the actual replacing of the proj panel into the new method
67            _show_proj_panel.
68            (UnknownProjPanel): Add doc-string.
69            (UnknownProjPanel._DoLayout): Insert a newline into the text so
70            that the panel is not so wide.
71    
72    2003-10-08  Bernhard Herzog  <[email protected]>
73    
74            * Thuban/Model/resource.py (read_proj_file): Return the warnings
75            too. Update the doc-string
76            (get_proj_files): Removed. It wasn't used anywhere
77            (get_system_proj_files, get_system_proj_file): Rename to
78            get_system_proj_file and return the ProjFile object and not a list
79            of ProjFile objects. Update the callers.
80            (get_user_proj_files, get_user_proj_file): Rename to
81            get_user_proj_file return the ProjFile object and not a list of
82            ProjFile objects. Update the callers.
83            (ProjFileReader.__init__): New instance variable for the warnings.
84            Rename the __pf ivar to projfile. Update the methods referring to
85            __pf
86            (ProjFileReader.end_projection): Catch any errors raised when
87            instantiating the projection and record that as an error. The
88            projection will not be in the final ProjFile object.
89            (ProjFileReader.GetWarnings): New method to return the warnings.
90    
91            * Thuban/UI/projdialog.py (ProjFrame.show_warnings): New method to
92            show the warnings from the projfile reader
93            (ProjFrame._OnImport): Deal with any warnings returned by
94            read_proj_file
95            (ProjFrame.__FillAvailList): Deal with any warnings returned by
96            get_system_proj_file or get_user_proj_file.
97    
98            * test/test_proj.py (TestProjFile.doTestRead): Check the warnings.
99            (TestProjFileWithInvalidParameters.file_contents): New test cases
100            to test whether read_proj_file handles invalid projection
101            parameters correctly
102            (TestProjFile.test_get_system_proj_file): New. Simple test for
103            resource.get_system_proj_file
104    
105    2003-10-07  Bernhard Herzog  <[email protected]>
106    
107            * test/test_derivedshapestore.py
108            (TestDerivedShapeStoreExceptions.tearDown): Clear the session
109            properly so that the temporary directories get deleted correctly
110    
111    2003-10-06  Bernhard Herzog  <[email protected]>
112    
113            Handle the title changes in a proper MVC way.
114    
115            * Thuban/UI/mainwindow.py (MainWindow.__init__): Subscribe to the
116            canvas' TITLE_CHANGED messages
117            (MainWindow.update_title): New. Update the main window's title
118            (MainWindow.__SetTitle): Removed. Use update_title instead.
119            (MainWindow.SetMap): Use update_title instead of __SetTitle
120            (MainWindow.RenameMap): Do change the window title explicitly
121            here. That's handled in a proper MVC way now.
122            (MainWindow.title_changed): New. Subscriber for the TITLE_CHANGED
123            messages
124    
125            * Thuban/Lib/connector.py (Conduit): New class to help classes
126            that forward messages
127    
128            * Thuban/UI/viewport.py: Forward the map's TITLE_CHANGED messages
129            (ViewPort): Derive from Conduit instead of Publisher
130            (ViewPort.Subscribe, ViewPort.Unsubscribe): Use the new base class
131            when calling the inherited versions
132            (ViewPort._subscribe_map, ViewPort._unsubscribe_map): New helper
133            methods to subscribe and unsubscribe map messages
134            (ViewPort.SetMap, ViewPort.Destroy): Use the new helper methods to
135            handle the map subscriptions
136            (ViewPort.Map, ViewPort.map_projection_changed)
137            (ViewPort.layer_projection_changed): Add or update doc-strings
138    
139            * test/test_connector.py (TestPublisher.test_issue_simple): Fix
140            typo
141            (MyConduit): Helper class for the Conduit test.
142            (TestConduit): Test cases for Conduit
143    
144            * test/test_connector.py: Use support.run_tests as main.
145    
146            * test/test_viewport.py (ViewPortTest.setUp): Also subscribe to
147            the TITLE_CHANGED messages
148            (ViewPortTest.test_forwarding_title_changed): New test to check
149            whether the viewport forwards the map's TITLE_CHANGED messages
150            (TestViewportWithPostGIS.tearDown): Call the map's Destroy method
151            after the port's because the latter may require a still functional
152            map.
153    
154    2003-10-06  Bernhard Herzog  <[email protected]>
155    
156            * Thuban/UI/application.py (ThubanApplication.maps_changed): Add
157            doc-string
158    
159    2003-10-06  Bernhard Herzog  <[email protected]>
160    
161            * test/test_viewport.py (ViewPortTest.setUp)
162            (SimpleViewPortTest.test_init_with_size): Move the test for the
163            initial size as a constructor parameter from ViewPortTest.setUp
164            method to a new separate test in SimpleViewPortTest.
165    
166    2003-10-06  Bernhard Herzog  <[email protected]>
167    
168            * test/test_viewport.py (MockView): New class derived from
169            ViewPort with a mock implementation of GetTextExtent to be used in
170            the test cases
171            (ViewPortTest.setUp): Use MockView instead of ViewPort
172    
173            * Thuban/UI/viewport.py (ViewPort.GetTextExtent): Turn this method
174            into what would be a "pure virtual function" in C++: always raise
175            NotImplementedError. Mock implementations for test cases don't
176            belong into the real code
177    
178    2003-10-02  Bernhard Herzog  <[email protected]>
179    
180            * test/test_layer.py (TestLayer.test_empty_layer): Explicitly
181            close the dbf file we create so that it's contents have been
182            written properly.
183    
184            * libraries/shapelib/shptree.c, libraries/shapelib/shpopen.c,
185            libraries/shapelib/shapefil.h, libraries/shapelib/dbfopen.c:
186            Update to shapelib 1.2.10
187    
188    2003-10-01  Jan-Oliver Wagner <[email protected]>
189    
190            * Thuban/UI/tree.py, Thuban/UI/main.py: Remove the #! line as
191            it annoys lintian which warns about these files not being
192            executable. The #! isn't necessary here since if you absolutely
193            must execute them you can always say "python <filename>".
194    
195    2003-09-26  Bernhard Herzog  <[email protected]>
196    
197            * Thuban/Model/classgen.py (GenQuantiles0): Removed since it's
198            only used in GREAT-ER but not used in Thuban itself. When GREAT-ER
199            is ported to a newer the import will fail, so it should be noticed
200            immediately that this function is gone.
201            Fixes RT#1919
202    
203    2003-09-26  Bernhard Herzog  <[email protected]>
204    
205            Add a DTD for the projection files and make thuban write valid
206            projection files
207    
208            * Resources/XML/projfile.dtd: New. DTD for thuban's projection
209            files
210    
211            * Thuban/Model/resource.py (ProjFileSaver.write): Use
212            'projectionlist' as the name in the document type declaration so
213            that it matches the element type of the root element.
214    
215            * test/test_proj.py (sample_projfile, sample_projfile2): Use
216            'projectionlist' as the name in the document type declaration just
217            as it is done now in the files thuban would write
218            (sample_projfile, sample_projfile_data): Fix spelling of
219            "Mercator"
220            (TestProjFile.doTestWrite): Validate the written and the expected
221            XML data
222            (TestProjFile): Derive from ValidationTest so that we can run xml
223            validation tests
224    
225    2003-09-24  Bernhard Herzog  <[email protected]>
226    
227            * Thuban/UI/renderer.py (ExportRenderer.render_legend): Do not
228            modify the list returned by map.Layers() in place since it is the
229            actual list of layers used by the map.
230    
231    2003-09-23  Jan-Oliver Wagner <[email protected]>
232    
233            * Doc/manual/thuban-manual.xml: Added subsection to chapter
234            Extensions to describe the extensions coming with the Thuban
235            standard package (gns2shp and importAPR).
236    
237    2003-09-23  Bernhard Herzog  <[email protected]>
238    
239            * libraries/thuban/wxproj.cpp (project_point): if there's an
240            inverse but no forward projection, convert to degrees after
241            applying the inverse projection. Fixes RT#2096
242    
243            * test/test_wxproj.py: New. Test cases for wxproj.so. One test
244            implicitly tests for the fix to RT#2096
245    
246            * test/support.py (FloatComparisonMixin.assertFloatSeqEqual):
247            Check that the sequences have the same lengths
248    
249            * Resources/Projections/defaults.proj (Geographic projection): Use
250            a much more precise value for the to_meter attribute.
251    
252    2003-09-22  Bernhard Herzog  <[email protected]>
253    
254            * test/support.py (initthuban): Make sure to unset the LANG env.
255            var. so that tests that compare translated strings work. Solves RT
256            #2094
257    
258    2003-09-22  Jan-Oliver Wagner <[email protected]>
259    
260            Small improvement of APR import.
261    
262            * Extensions/importAPR/test/test_apr.py (aprTest.test_LClass):
263            Added tests for text-ranges.
264    
265            * Extensions/importAPR/apr.py (APR_LClass.GetThubanRange): Now
266            returns a string object if the range is based on text.
267    
268            * Extensions/importAPR/importAPR.py (import_apr_dialog): Unified
269            range retrieval.
270    
271    2003-09-22  Jan-Oliver Wagner <[email protected]>
272    
273            Initial version of the importAPR extension which is in
274            experimental state.
275    
276            * /Extensions/importAPR/, /Extensions/importAPR/samples/,
277            /Extensions/importAPR/test/: New directories.
278    
279            * /Extensions/importAPR/samples/README: New: Howto load the samples.
280    
281            * /Extensions/importAPR/samples/iceland.apr: New: A sample APR
282            file which refers to the Thuban Iceland demo data.
283    
284            * /Extensions/importAPR/test/README: New: Howto execute the tests.
285    
286            * /Extensions/importAPR/test/test_apr.py: New: Tests for APR classes.
287    
288            * /Extensions/importAPR/apr.py: New: Classes for ArcView Objects
289            as in '.apr'-files.
290    
291            * /Extensions/importAPR/odb.py: New: Classes for generic ArcView
292            ODB Objects as in '.apr', '.avl' and other files.
293    
294            * /Extensions/importAPR/__init__.py: New: Init to make this
295            directory a package.
296    
297            * /Extensions/importAPR/importAPR.py: New: Import a ArcView
298            project file (.apr) and convert it to Thuban.
299    
300    2003-09-22  Jan-Oliver Wagner <[email protected]>
301    
302            * Extensions/gns2shp.gns2shp.py: The main module of gns2shp.
303    
304    2003-09-19  Jan-Oliver Wagner <[email protected]>
305    
306            * Doc/manual/thuban-manual.xml: Extended section 'Installation'
307            with description on RPM installation and RPM binary package
308            creation.
309    
310    2003-09-18  Bernhard Herzog  <[email protected]>
311    
312            * setup.py (data_files): Only add the mo files if the Locales
313            directory actually exists, so that setup.py works with a fresh CVS
314            checkout
315    
316    2003-09-12  Jan-Oliver Wagner <[email protected]>
317    
318            * Examples/simple_extensions/simple_tool.py: bugfix: Tool is now
319            in viewport, not anymore in view
320    
321    2003-09-04  Jan-Oliver Wagner <[email protected]>
322    
323            Introducing first Extension (gns2shp).
324    
325            * Extensions, Extensions/gns2shp, Extensions/gns2shp/test: New.
326    
327            * Extensions/__init__.py: New. init to make this dir a package.
328    
329            * Extensions/gns2shp/__init__.py: New. init to make this dir a package.
330    
331            * Extensions/gns2shp/test/README: New. some info on this test directory.
332    
333            * Extensions/gns2shp/test/ls.txt: New. test data set (Liechtenstein).
334    
335            * Extensions/gns2shp/test/test_gns2shp.py: New. Test for correct creation
336            of Shapefile from GNS text file format
337    
338    2003-09-03  Jan-Oliver Wagner <[email protected]>
339    
340            Fix/workaround for bug #2019:
341            https://intevation.de/rt/webrt?serial_num=2019
342    
343            * Thuban/UI/identifyview.py (IdentifyView.ID_STOP): New.
344            (IdentifyView.__init__): Added another button that allows to
345            stop the identify mode.
346            (IdentifyView.OnStop): New. Stops the identify mode.
347    
348    2003-09-03  Jan-Oliver Wagner <[email protected]>
349    
350            Introducing a new exception dialog that allows to exit the
351            application immediately.
352            This fixes bug #2060: https://intevation.de/rt/webrt?serial_num=2060
353    
354            * Thuban/UI/exceptiondialog.py: New. A special exception dialog.
355    
356            * Thuban/UI/application.py (ThubanApplication.ShowExceptionDialog):
357            Made strings available to translations. Exchanged the simple
358            ScrolledMessageDialog by the new ExceptionDialog.
359    
360    2003-09-01  Bernhard Herzog  <[email protected]>
361    
362            * NEWS: New. Summary of changes and release notes.
363    
364            * MANIFEST.in: Add NEWS
365    
366    2003-09-01  Bernhard Herzog  <[email protected]>
367    
368            * MANIFEST.in: Correct the include statement for the mo-files and
369            include the documentation too.
370    
371            * setup.py (data_files): Add the .mo files
372            (setup call): Up to version 0.9.0
373    
374    2003-09-01  Bernhard Herzog  <[email protected]>
375    
376            * Thuban/UI/dbdialog.py (ChooseDBTableDialog.__init__): Change the
377            parameter list to just parent and session
378            (ChooseDBTableDialog.__set_properties): Removed. Setting the
379            selection of empty list boxes is not allowed (and produces C++
380            assertion errors) and the rest of the setup is better done in
381            __init__ anyway.
382            (ChooseDBTableDialog.OnCancel, ChooseDBTableDialog.OnOK)
383            (ChooseDBTableDialog.OnLBDClick, DBDialog.OnOK): Use the Python
384            builtins True/False for booleans to avoid warnings from wxPython
385    
386            * Thuban/UI/mainwindow.py (MainWindow.AddDBLayer): Adapt to new
387            ChooseDBTableDialog constructor parameters.
388    
389    2003-09-01  Bernhard Herzog  <[email protected]>
390    
391            * Thuban/Model/postgisdb.py
392            (PostGISTable): Extend doc-string
393            (PostGISTable._fetch_table_information): Set the column index
394            correctly, pretending ignored columns don't exist.
395    
396            * test/test_postgis_db.py (TestPostGISIgnoredColumns): New tests
397            for postgis tables with data types not yet supported by thuban.
398    
399    2003-08-29  Bernhard Herzog  <[email protected]>
400    
401            * HOWTO-Release: Tweak item about running the tests.
402    
403    2003-08-29  Jan-Oliver Wagner <[email protected]>
404    
405            * /Doc/manual/thuban-manual.xml: updated to version 1.0pre2.
406    
407    2003-08-29  Bernhard Herzog  <[email protected]>
408    
409            Add some missing parameters to projections. Proj complains about
410            them on windows but for some reason not on Linux.
411    
412            * test/test_save.py (SaveSessionTest.testLayerProjection): Add
413            missing required projection parameters
414    
415            * test/test_proj.py (TestProjFile.test): Add missing required
416            projection parameters
417    
418            * test/test_load_0_8.py (TestLayerProjection.file_contents)
419            (TestLayerProjection.test): Add missing required projection
420            parameters and tests for them
421    
422            * test/test_load.py (TestLayerProjection.file_contents)
423            (TestLayerProjection.test): Add missing required projection
424            parameters and tests for them
425    
426            * test/test_layer.py (TestLayer.test_base_layer): Add missing
427            required projection parameters
428    
429    2003-08-29  Bernhard Herzog  <[email protected]>
430    
431            * libraries/pyprojection/Projection.i: Use pj_get_errno_ref to
432            access the pj_errno because directly accessing pj_errno doesn't
433            work on windows if the proj library is in a DLL
434    
435            * libraries/pyprojection/Projection_wrap.c: Update from Projection.i
436    
437    2003-08-28  Bernhard Herzog  <[email protected]>
438    
439            * test/test_proj.py: Import things from Thuban after calling
440            initthuban
441    
442            * test/test_load.py (LoadSessionTest.filenames): New class
443            variable with the filename attributes to normalize
444            (LoadSessionTest.check_format): Pass self.filenames to
445            sax_eventlist to normalize the filename attributes
446    
447            * test/xmlsupport.py: Add cvs keywords
448            (SaxEventLister.__init__): New parameter filenames which indicates
449            attributes that contain filenames
450            (SaxEventLister.startElementNS): Normalize the filename attributes
451            with os.path.normpath
452            (sax_eventlist): New parameter filenames to pass through to
453            SaxEventLister
454    
455            * test/test_derivedshapestore.py: Make this file callable as a
456            program to execute the tests
457            (TestDerivedShapeStoreExceptions.test_table_with_wrong_size): Bind
458            the session to self.session so that it gets destroyed properly
459    
460            * test/test_layer.py (TestLayer.tearDown): Call the session's
461            Destroy method
462    
463            * test/test_map.py (TestMapBase.tearDown): Destroy self.session
464            too if it exists
465            (TestMapAddLayer.test_add_layer): Bind the session to self.session
466            so that it gets destroyed properly
467    
468            * test/postgissupport.py (reason_for_not_running_tests): Add a
469            test for the existence of popen2.Popen4.
470    
471            * test/test_save.py (SaveSessionTest.tearDown): New. Provide a
472            reliable way to destroy the sessions created in the test cases
473            (SaveSessionTest.test_dbf_table): Bind the session to self.session
474            so that it gets destroyed properly
475            (SaveSessionTest.testLayerProjection): Bind the session to
476            self.session so that it gets destroyed properly
477    
478            * test/test_session.py (UnreferencedTablesTests.tearDown): Make
479            sure that the session is destroyed properly
480    
481            * test/test_shapefilestore.py: Make this callable as a program to
482            execute the tests
483    
484            * test/test_scalebar.py: Remove unnecessary import of _ from
485            Thuban
486    
487            * test/support.py (print_garbage_information): Call initthuban
488            here because it may be called indirectly from test cases that test
489            test support modules which do not use anything from thuban itself
490            (ThubanTestProgram.runTests): Remove unnecessary debug print
491    
492    2003-08-28  Bernhard Herzog  <[email protected]>
493    
494            * Thuban/version.py (longversion): Update to 0.9
495    
496            * Thuban/UI/mainwindow.py: Remove some unused imports
497    
498            * README: Add section about required additional software. Add date
499            and revision CVS keywords
500    
501            * HOWTO-Release: Add item about the translations. Add date and
502            revision CVs keywords and change formatting to match README a bit
503            better
504    
505            * po/de.po: Update for 0.9
506    
507            * test/README: Tweak the wording a little because many tests are
508            not really unittest.
509    
510    2003-08-27  Bernhard Herzog  <[email protected]>
511    
512            As preparation for the 0.9 release, switch thuban files to a
513            non-dev namespace
514    
515            * Thuban/Model/save.py (SessionSaver.write_session): Write files
516            with the http://thuban.intevation.org/dtds/thuban-0.9.dtd
517            namespace
518    
519            * Thuban/Model/load.py (SessionLoader.__init__): Accept the
520            http://thuban.intevation.org/dtds/thuban-0.9.dtd namespace too
521    
522            * test/test_save.py (SaveSessionTest.dtd)
523            (SaveSessionTest.testEmptySession)
524            (SaveSessionTest.testSingleLayer)
525            (SaveSessionTest.testLayerProjection)
526            (SaveSessionTest.testRasterLayer)
527            (SaveSessionTest.testClassifiedLayer)
528            (SaveSessionTest.test_dbf_table)
529            (SaveSessionTest.test_joined_table)
530            (SaveSessionTest.test_save_postgis): Update for new namespace
531    
532            * test/test_load.py (LoadSessionTest.dtd, TestSingleLayer)
533            (TestLayerVisibility.file_contents, TestLabels.file_contents)
534            (TestLayerProjection.file_contents)
535            (TestRasterLayer.file_contents, TestJoinedTable.file_contents)
536            (TestPostGISLayer.file_contents)
537            (TestPostGISLayerPassword.file_contents)
538            (TestLoadError.file_contents, TestLoadError.test): Update for new
539            namespace
540    
541    2003-08-27  Bernhard Herzog  <[email protected]>
542    
543            Make the table interface distinguish between row ids (an integer
544            that uniquely identifies a row) and row ordinals (a simple row
545            count from 0 to NumRows() - 1)
546    
547            * Thuban/Model/postgisdb.py (PostGISTable.RowIdToOrdinal)
548            (PostGISTable.RowOrdinalToId): New methods to conver between row
549            ids and row ordinals
550            (PostGISTable.ReadRowAsDict, PostGISTable.ReadValue): New keyword
551            parameter row_is_ordinal to indicate whether the row parameter is
552            the row id or the ordinal
553    
554            * Thuban/Model/transientdb.py (TransientTableBase.RowIdToOrdinal)
555            (TransientTableBase.RowOrdinalToId)
556            (AutoTransientTable.RowIdToOrdinal)
557            (AutoTransientTable.RowOrdinalToId): Same new methods as in
558            PostGISTable.
559            (TransientTableBase.ReadRowAsDict, TransientTableBase.ReadValue)
560            (AutoTransientTable.ReadRowAsDict, AutoTransientTable.ReadValue):
561            Same new parameter as in PostGISTable.
562    
563            * Thuban/Model/table.py (DBFTable.RowIdToOrdinal)
564            (DBFTable.RowOrdinalToId, MemoryTable.RowIdToOrdinal)
565            (MemoryTable.RowOrdinalToId): Same new methods as in PostGISTable.
566            (DBFTable.ReadValue, DBFTable.ReadRowAsDict)
567            (MemoryTable.ReadValue, MemoryTable.ReadRowAsDict): Same new
568            parameter as in PostGISTable.
569    
570            * Thuban/UI/tableview.py (DataTable.RowIdToOrdinal)
571            (DataTable.RowOrdinalToId): New methods to convert between row ids
572            and row ordinals.
573            (TableGrid.SelectRowById): New method to select a row based on its
574            ID as opposed to its ordinal
575            (DataTable.GetValue, TableGrid.OnRangeSelect)
576            (TableGrid.OnSelectCell, LayerTableGrid.select_shapes)
577            (QueryTableFrame.OnQuery, QueryTableFrame.get_selected)
578            (LayerTableFrame.__init__): Convert between row ids and row
579            ordinals as appropriate
580    
581            * test/postgissupport.py (PostGISDatabase.__init__): Add
582            doc-string.
583            (PostGISDatabase.initdb): The optional third item in a tuple in
584            tables is now a (key, value) list with additional arguments to
585            pass to upload_shapefile
586            (upload_shapefile): New parameter gid_offset to allow gids that
587            are not the same as the shapeids in the shapefile
588            (PostgreSQLServer.get_default_static_data_db): Use the new
589            gid_offset to make the gids in landmarks 1000 higher than the
590            shapeids in the shapefile
591    
592            * test/test_viewport.py
593            (TestViewportWithPostGIS.test_find_shape_at_point): Adapt to the
594            new shapeids in the landmarks table
595    
596            * test/test_transientdb.py
597            (TestTransientTable.run_iceland_political_tests)
598            (TestTransientTable.test_transient_joined_table): Add tests for
599            the new table methods and new keywords arguments.
600    
601            * test/test_postgis_db.py
602            (TestPostGISTable.test_read_row_as_dict_row_count_mode)
603            (TestPostGISTable.test_read_value_row_count_mode)
604            (TestPostGISTable.test_row_id_to_ordinal)
605            (TestPostGISTable.test_row_oridnal_to_id): New test for the new
606            table methods and the new arguments
607            (TestPostGISShapestorePoint.test_shapes_in_region)
608            (TestPostGISShapestorePoint.test_shape_raw_data)
609            (TestPostGISShapestorePoint.test_shape_points)
610            (TestPostGISShapestorePoint.test_shape_shapeid)
611            (TestPostGISShapestorePoint.test_all_shapes)
612            (TestPostGISTable.test_simple_query)
613            (TestPostGISTable.test_simple_query)
614            (TestPostGISTable.test_simple_query)
615            (TestPostGISTable.test_read_value)
616            (TestPostGISTable.test_read_row_as_dict): Adapt to the new
617            shapeids in the landmarks table
618    
619            * test/test_memory_table.py
620            (TestMemoryTable.test_read_row_as_dict_row_count_mode)
621            (TestMemoryTable.test_read_value_row_count_mode)
622            (TestMemoryTable.test_row_id_to_ordinal)
623            (TestMemoryTable.test_row_oridnal_to_id): New test for the new
624            table methods and the new arguments
625    
626            * test/test_dbf_table.py
627            (TestDBFTable.test_read_row_as_dict_row_count_mode)
628            (TestDBFTable.test_read_value_row_count_mode)
629            (TestDBFTable.test_row_id_to_ordinal)
630            (TestDBFTable.test_row_oridnal_to_id): New test for the new table
631            methods and the new arguments
632    
633    2003-08-26  Bernhard Herzog  <[email protected]>
634    
635            * Thuban/Model/postgisdb.py (PostGISShapeStore.BoundingBox): Use a
636            more postgis specific but much faster method to get the bounding
637            box
638    
639    2003-08-26  Bernhard Herzog  <[email protected]>
640    
641            * Thuban/Model/postgisdb.py (PostGISTable.Title)
642            (PostGISShapeStore.AllShapes): Add these missing methods.
643            (PostGISShapeStore.ShapesInRegion): No need to raise
644            StopIteration. We can simply return
645    
646            * test/test_postgis_db.py (TestPostGISTable.test_title)
647            (TestPostGISShapestorePoint.test_all_shapes): New tests for the
648            new methods
649    
650    2003-08-25  Bernhard Herzog  <[email protected]>
651    
652            * Thuban/Model/postgisdb.py (shapetype_map): Add MUTLIPOLYGON.
653    
654            * test/test_postgis_db.py (PolygonTests): New class containing
655            those tests from TestPostGISShapestorePolygon that can also be
656            used to test MUTLIPOLYGON tables
657            (TestPostGISShapestorePolygon): Most tests are now in PolygonTests
658            so derive from that
659            (TestPostGISShapestoreMultiPolygon): New class with tests for
660            MUTLIPOLYGON tables
661    
662            * test/postgissupport.py (PostGISDatabase.initdb): Allow the
663            tables argument to have tuples with three items to override the
664            WKT type used.
665            (PostgreSQLServer.get_default_static_data_db): Use the above to
666            create a polygon table with MUTLIPOLYGONs
667            (point_to_wkt, coords_to_point, polygon_to_wkt, coords_to_polygon)
668            (arc_to_wkt, coords_to_multilinestring): Rename from *_to_wkt to
669            coords_to*
670            (coords_to_multipolygon): New. Convert to MUTLIPOLYGON
671            (wkt_converter): New. Map WKT types to converters
672            (upload_shapefile): New parameter force_wkt_type to use a
673            different WKT type than the default
674    
675  2003-08-25  Bernhard Herzog  <[email protected]>  2003-08-25  Bernhard Herzog  <[email protected]>
676    
677          * Thuban/UI/application.py          * Thuban/UI/application.py
# Line 941  Line 1615 
1615    
1616          * Thuban/Model/range.py, Thuban/version.py: Remove the #! line as          * Thuban/Model/range.py, Thuban/version.py: Remove the #! line as
1617          it annoys lintian which warns about these files not being          it annoys lintian which warns about these files not being
1618          executable. The #1 isn't necessary here since if you absolutely          executable. The #! isn't necessary here since if you absolutely
1619          must execute them you can always say "python <filename>".          must execute them you can always say "python <filename>".
1620    
1621          * Thuban/UI/renderer.py (ScreenRenderer.draw_shape_layer): Remove          * Thuban/UI/renderer.py (ScreenRenderer.draw_shape_layer): Remove

Legend:
Removed from v.1655  
changed lines
  Added in v.1807

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26