/[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 2174 by joey, Tue Apr 13 19:28:47 2004 UTC revision 2527 by bernhard, Thu Jan 20 11:45:15 2005 UTC
# Line 1  Line 1 
1    2005-01-20  Bernhard Reiter <[email protected]>
2    
3            * Thuban/UI/classgen.py (OnRetrieve()): Added a comment
4            that OnRangeText might be called twice and using None as argument.
5            
6    2005-01-20  Bernhard Reiter <[email protected]>
7    
8            * Thuban/UI/classgen.py (OnRetrieve()): Add a OnRangeText(0)
9            to work around a different in wx Behaviour noticed on MacOSX,
10            thanks to Lorenzo Moretti and Daniel Calvelo for the fix.
11            
12    2005-01-20  Bernhard Reiter <[email protected]>
13    
14            * Thuban/UI/about.py: take iso-8859-15 when getdefaultlocale returns
15            None. (Fixes rt#2910.)
16            
17    2005-01-18  Frank Koormann <[email protected]>
18    
19            New Extension: mouseposition
20            Tool to collect mouse click positions (map coordinates) in a dialog.
21    
22            * Extensions/mouseposition/__init__.py: New, extension registration
23    
24            * Extensions/mouseposition/mouseposition.py: New, implements the
25            dialog and adds a tool to Thuban mainwindow.
26    
27            * Extensions/mouseposition/position.xpm: New, icon for tool.
28    
29    2005-01-14  Jan-Oliver Wagner <[email protected]>
30    
31            * Doc/manual/thuban-manual-de.xml: More translations.
32    
33    2005-01-11  Frank Koormann <[email protected]>
34    
35            * Thuban/UI/mainwindow.py (MainWindow.DuplicateLayer):
36            Fix indention bug.
37    
38    2005-01-09  Frank Koormann <[email protected]>
39    
40            * Thuban/UI/mainwindow.py (MainWindow.DuplicateLayer):
41            BugFix 2901: Explicitly copy layers ClassificationColumn since it
42            is not part of the layers Classification.
43    
44    2005-01-03  Frank Koormann <[email protected]>
45    
46            * Thuban/UI/renderer.py (ScreenRendererdraw_selection_incrementally):
47            BugFix 2883: Former implementation only worked on classified point
48            layers: KeyError was raised, now use the default size if field is None.
49    
50    2004-12-27  Bernhard Reiter <[email protected]>
51    
52            svgexport 1.0.0cvs: Fixed label export.
53    
54            * Extensions/svgexport/test/test_svgmapwriter.py:
55            class TestSVGRenderer(): New class; new test test_label_font().
56    
57            * Extensions/svgexport/svgmapwriter.py
58            (SVGRenderer.label_font()): initialised Font size with self.factor now,
59            makes test_label_font happy.
60    
61            * Extensions/svgexport/TODO: crossed out fixed label export item.
62            Added item for options.
63    
64            * Extensions/svgexport/__init__.py: Bumped version to 1.0.0cvs.
65    
66    2004-12-27  Russell Nelson  <[email protected]>
67    
68            Middle mouse button pans.
69    
70            * Thuban/UI/view.py (MapCanvas.__init__): Subscribe also
71            OnMiddleDown and OnMiddleUp events.
72            (MapCanvas.OnMiddleDown): New. Activate the pan tool and remember the
73            previously used tool.
74            (MapCanvas.OnMiddleUp): New. Reactivate the remebered tool used before
75            pressing the middle mouse button.
76    
77    2004-12-27  Jan-Oliver Wagner <[email protected]>
78    
79            * Doc/manual/thuban-manual-de.xml: More translations.
80    
81    2004-12-23  Jan-Oliver Wagner <[email protected]>
82    
83            * Thuban/UI/projdialog.py (ProjFrame.load_user_proj): Added a
84            \n to stderr after the warnings. Thanks to Russell Nelson.
85    
86    2004-12-20  Nina Hueffmeyer <[email protected]>
87    
88            * Extensions/ogr/ogrshapes.py: Fixed some issues from
89            Bernhard (coding guidelines etc.). Additionally it is now possible to
90            display shapefiles containing feature collections (e.g.polygons
91            with holes). Works with gdal 1.2.1 now.
92    
93            * Extensions/ogr/test/test_OGRShapestore.py: Fixed some issues
94            from Bernhard (coding guidelines etc.). If ogr can't be imported,
95            tests are skipped now.
96    
97            * Extensions/ogr/ogrstart.py: Fixed some typings.
98    
99    2004-12-20  Bernhard Reiter <[email protected]>
100    
101            * Extensions/svgexport/TODO: updated to add support for
102            raster layers and labels for 1.0.1.
103    
104            * Extensions/svgexport/svgmapwriter.py (draw_raster_layer):
105            Issue a warning now.
106    
107    2004-12-19  Bernhard Reiter <[email protected]>
108    
109            * Extensions/svgexport/TODO: Added idea to support triggering
110            the application down the pipe.
111    
112    2004-12-19  Bernhard Reiter <[email protected]>
113    
114            svgexport: Improved code quality, mainly by better naming.
115    
116            * Extensions/svgexport/svgmapwriter.py:
117            DrawPath() renamed to DrawPolygonPath(),
118            added documentation, improved comments and variable names.
119            
120            * Extensions/svgexport/svgmapwriter.py,
121              Extensions/svgexport/test/test_svgmapwriter.py:
122            All using DrawPolygonPath() now, the default parameter closed=True
123            omitted.
124    
125            * Extensions/svgexport/test/test_svgmapwriter.py:
126            renamed test_polygon_opened() to test_polyline()
127            renamed test_transparent_polygon() to test_transparent_polyline()
128    
129    2004-12-18  Jan-Oliver Wagner <[email protected]>
130    
131            Some fixes of gns2shp extension.
132    
133            * Extensions/gns2shp/test/__init__.py: New. Make this directory a
134            package.
135    
136            * Extensions/gns2shp/test/test_gns2shp.py: Add some import paths
137            dynamically.
138    
139            * Extensions/gns2shp/test/README: Simplified description how to test.
140    
141            * Extensions/gns2shp/gns2shp.py (gns2shp): Fixed doc-string,
142            fixed some dimensions of fields according to the GNS documentation
143            which seems to change undocumented.
144            Now killing trailing \n and/or \r from MODIFY_DATE.
145            This fixes RT#2453.
146    
147    2004-12-18  Bernhard Reiter <[email protected]>
148    
149            svgexport 1.0.0: Treats holes and islands nicely. Documentation added.
150    
151            * Extensions/svgexport/test/test_svgmapwriter.py:
152            Added new tests: test_export_polygon_with_hole()
153            and test_polygon_with_hole().
154    
155            * Extensions/svgexport/svgmapwriter.py
156            (draw_polygon_shape()): Uses DrawPath correctly now.
157    
158            * Doc/manual/thuban-manual.xml: Added documentation for stable
159            extention svgexport.    
160            * Doc/manual/thuban-manual-de.xml: Copied English section about
161            svexport over.
162    
163            * Extensions/svgexport/__init__.py: Bumped version number to 1.0.0.
164    
165            * Extensions/svgexport/svgsaver.py,maplegend.py:
166            Moved from experimental to stable extension menu.
167    
168            * Extensions/svgexport/TODO: updated.
169    
170    
171    2004-12-18  Bernhard Reiter <[email protected]>
172    
173            Added Extensions/svgexport/TODO
174    
175    2004-12-18  Bernhard Reiter <[email protected]>
176    
177            Refactored in svgexport:
178            DrawPath replaces DrawPolygon; added newline in front of "M" in paths.
179    
180            * Extensions/svgexport/svgmapwriter.py
181            Added verbosity level 3 to print out polygon points.
182            (class Point): added __repr__
183            (class Brush, __str__()): Added space after ,.
184            (DrawPolygon): Renamed to DrawPath()
185            (DrawPath): Takes list of polygons as input now, adds \n before "M"s.
186            (DrawLines): Using DrawPath now.
187    
188            * Extensions/svgexport/test/test_svgmapwriter.py:
189            Replaced DrawPolygon() calls with DrawPath() and put the first argument
190            inside another list. Adapted test data with a newline before "M".
191    
192    2004-12-18  Bernhard Reiter <[email protected]>
193            
194            Refactored svgexport tests: 9 double tests runs eliminated;
195            code size reduced by 8 lines.
196    
197            * Extensions/svgexport/test/test_svgmapwriter.py:
198            (class TestWithDC): Renamed to BaseTestWithDC, moved to top.
199            (class BaseWithDCtools): New, subclass from BaseTestWithDC.
200            (class TestDrawSplines): now subclass from BaseTestWithDCtools,
201            this fixed the double running of the nine tests of TestVirtualDC.
202            (class TestVirtualDC): Using self.dc and self.file from setUp().
203    
204    2004-12-17  Bernhard Herzog  <[email protected]>
205    
206            Two windows specific fixes ported from thuban-1�0-branch:
207    
208            * Thuban/UI/about.py (unicodeToLocale): Use getdefaultlocale
209            instead of getlocale because getlocale doesn't return a usable
210            encoding name on a german windows 2000
211    
212            * setup.py: windows build: Removed the absolute path names and
213            made all prfixes relative to the directory containing setup.py.
214            Makes it a little easier to adapt to a different system.
215    
216    2004-12-16  Bernhard Herzog  <[email protected]>
217    
218            Add support for PostGIS tables with LINESTRING geometries.
219            Fixes RT#2299
220    
221            * Thuban/Model/postgisdb.py (shapetype_map): Add LINESTRING
222    
223            * test/postgissupport.py
224            (PostgreSQLServer.get_default_static_data_db): Rename the "roads"
225            table to "roads-multi" because it now uses MULTILINESTRING
226            geometries and introduce a new "roads" table that uses LINESTRING
227            (coords_to_multilinestring): Make the doc string more precise
228            (coords_to_linestring): New.  Create a LINESTRING WKT
229            representatin
230            (wkt_converter): Add coords_to_linestring
231            (upload_shapefile): Rephrase the doc-string a bit.
232    
233            * test/test_postgis_db.py (TestPostGISShapestoreArc)
234            (LineStringTests)
235            (TestPostGISShapestoreLineString)
236            (TestPostGISShapestoreMultiLineString): Split
237            TestPostGISShapestoreArc into a base class LineStringTests and two
238            derived classes TestPostGISShapestoreLineString for LINESTRING
239            geometries and TestPostGISShapestoreMultiLineString for
240            MULTILINESTRING geometries.  Most test methods are in the base
241            class with the exception of tests that explicitly check the raw
242            format.
243    
244    2004-12-16  Bernhard Herzog  <[email protected]>
245    
246            Make the test suite work with PostGIS 0.8.2 and PostgreSQL 7.4
247    
248            * test/postgissupport.py (find_postgis_sql): Different postgis
249            versions put the postgis.sql file into slightly different places
250            so we have to look in both.  The updated doc string describes this
251            is more detail.
252    
253            * test/test_postgis_db.py
254            (TestPostGISSpecialCases.test_column_name_quoting): The return
255            value of UniqueValues is unsorted, so it has to be sorted for
256            comparison.
257    
258    2004-12-16  Bernhard Herzog  <[email protected]>
259    
260            Fix for RT#2237
261    
262            * Thuban/UI/projdialog.py (ProjFrame._show_proj_panel): If the
263            panel to be shown is the UnknownProjPanel disable the OK and Try
264            buttons.  Otherwise enable them.
265            (ProjFrame.__GetProjection): The UnknownProjPanel returns None for
266            the parameters.  In that case __GetProjection also returns None
267            now.
268    
269    2004-12-15  Bernhard Herzog  <[email protected]>
270    
271            * Thuban/UI/classgen.py (GenQuantilesPanel.__init__): Set the
272            minimum number of classes to 2.  The calculate_quantiles needs at
273            least two and raises an exception otherwise.  
274            Fixes RT#2549
275    
276    2004-12-15  Bernhard Herzog  <[email protected]>
277    
278            * test/postgissupport.py (PostgreSQLServer.execute_sql): Extend to
279            so that it returns a result for select statements.
280            (PostgreSQLServer.server_version): New.  Return the version of the
281            server software.
282            (PostgreSQLServer.require_authentication): The format of
283            pg_hba.conf has changed between PostgrSQL 7.2 and 7.3.  Check the
284            server version and generate the file in the correct format
285    
286    2004-12-15  Bernhard Herzog  <[email protected]>
287    
288            * test/postgissupport.py (PostgreSQLServer.is_running): Fix typo
289            in the doc string and rephrase it a little.
290    
291    2004-12-15  Frank Koormann <[email protected]>
292    
293            * test/test_load.py (TestAltPath.checkSession): New, extended checks if
294            session has been loaded successfully. The check is called by the relevant
295            tests after executing load_session().
296    
297    2004-12-13  Bernhard Herzog  <[email protected]>
298    
299            Make sure the region used to determine which shapes are visible
300            actually matches the region on the printed page.  If this isn't
301            done properly some shapes might not be printed.  
302            Fixes RT #2692
303    
304            * Thuban/UI/view.py (MapPrintout.draw_on_dc): The region for the
305            renderer has to be at the same position as the mapregion
306    
307            * Thuban/UI/renderer.py (ExportRenderer.RenderMap): self.region
308            has to be moved by (self.shiftx, self.shifty) too.
309    
310    2004-12-13  Bernhard Herzog  <[email protected]>
311    
312            * libraries/pyprojection/Projection.i: Work around a bug in the
313            generated python code which leads to exception in the __del__
314            method when the constructor fails.  See the comments in the code
315            for more details.
316    
317            * libraries/pyprojection/Projection.py: Updated from Projection.i
318            with SWIG.
319    
320    2004-12-13  Bernhard Herzog  <[email protected]>
321    
322            * test/test_load.py (TestAltPath.test_01_single_path_error_fix)
323            (TestAltPath.test_02_path_error_fix_from_list)
324            (TestAltPath.test_05_path_error_fix_from_list_changed)
325            (TestAltPath.test_06_path_error_fix_from_list_fails): self.session
326            is destroyed in tearDown, so there's no need to do it in a test
327            case.
328    
329            * Thuban/Model/load.py (SessionLoader.open_shapefile): Remove a
330            debug print
331    
332    2004-12-13  Bernhard Herzog  <[email protected]>
333    
334            * Extensions/svgexport/test/test_svgmapwriter.py
335            (TestDrawSplines.setUp): Do not use super with the unittest
336            classes because in Python 2.2 they're still old-style classes.
337    
338    2004-12-13  Frank Koormann <[email protected]>
339    
340        Alternative Path feature: When loading a (moved) session where
341            shapefiles cannot be found, ask the user. Use the specified path
342            if further shapefiles are missing. However, ask the usr for confirmation
343            in such cases.
344    
345            * test/test_load.py (TestAltPath): New, tests for alternative path feature
346            in load_session()
347            (Shapefile_CallBack): Helper, implements controllable callback.
348    
349            * Thuban/UI/application.py (ThubanApplication.OnInit):
350            Added "alt_path" to self.path
351            (ThubanApplication.OpenSession): Added shapefile_callback as second
352            callback similar to db_connection_callback.
353            (ThubanApplication.run_alt_path_dialog): New, implementaion of
354            shapefile_callback. In addition to raising the dialog the control of
355            self.path('alt_path') is implemented here.
356    
357            * Thuban/Model/load.py (SessionLoader.__init__): Added shapefile_callback.
358            (SessionLoader.open_shapefile): Open shapefile, eventually with
359            alternative path. This wrapps the "theSession.OpenShapefile(filename)"
360            formerly used in start_fileshapesource()/start_layer().
361            (SessionLoader.start_fileshapesource): Call open_shapefile().
362            (SessionLoader.start_layer): Call open_shapefile().
363            (load_session): Added shapefile_callback.
364    
365            * Thuban/UI/altpathdialog.py: New, implements dialogs for alternative path
366            feature (search / check).
367            
368            * Doc/manual/thuban-manual.xml: Added documentation of new feature.
369    
370    2004-12-11  Bernhard Reiter <[email protected]>
371    
372             svgexport 0.9.2: Point size supports for maps.
373    
374            * Extensions/svgexport/svgmapwriter.py: Added import of SHAPETYPE_POINT
375            (def draw_point_shape): new parameter size defaults to 2 as before.
376            (draw_shape_layer_incrementally): Moved draw_func log line higher.
377            Added draw_func call with size when dealing with a point layer.
378    
379            * Extensions/svgexport/__init__.py: bumped version to 0.9.2.
380            
381    2004-12-11  Bernhard Reiter <[email protected]>
382    
383            Made sure that newlines are inserted in the svg path d attributes
384            to raise the chance that the line length will be below 255 characters,
385            as recommended by REC SVG 1.1 in section 8.3.1.
386    
387            * Extensions/svgexport/svgmapwriter.py(DrawPolygon):
388            Adding \n before L's and changed whitespace handling.
389    
390            * Extensions/svgexport/test/test_svgmapwriter.py:
391            Adapted tests to new whitespace handling of DrawPolygon.
392    
393    2004-12-11  Bernhard Reiter <[email protected]>
394    
395            * Doc/technotes/coding_guidelines.txt: easy typo fixed.
396    
397            * Extensions/svgexport/test/test_svgmapwriter.py:
398            Removed test_drawbezier in favour of new test_drawspline3 and
399            test_drawspline4 within new class TestDrawSplines(TestVirtualDC).
400            All only to test DrawSpline.
401    
402            * Extensions/svgexport/svgmapwriter.py(DrawSpline):
403            New implementation now really using the strange algorithm of
404            xfig 3.1's approximated splines and its conversion to postscript
405            with one twist: SVG can do quadratic beziers, so skipped translation
406            to cubic beziers.
407            (TestWithDC): Typo in comment fixed.
408    
409    2004-12-09  Martin Schulze  <[email protected]>
410    
411            * Thuban/Model/classgen.py: Added missing character encoding
412    
413            * Extensions/wms/properties.py (OpenWMSProperties): removed
414    
415            * Extensions/wms/parser.py (WMSCapabilitiesParser.error): Dropped
416            support for get_srs_discrepancies() since there are no
417            discrepancies anymore (was a thinko)
418    
419            * Extensions/wms/layer.py (WMSLayer.GetMapImg): Improved graphic
420            format priority now that more formats are supported globally by
421            the render engine.
422    
423    2004-12-08  Silke Reimer <[email protected]>
424            * Extensions/ogr/ogrshapes.py: Substituted ogr-method CloseRings
425            because it is not available in all versions of ogr
426    
427    2004-12-08  Bernhard Reiter <[email protected]>
428            * Extensions/ogr/__init__.py: Added empty __init__.py to heal
429            global tests until a real one is commited.
430    
431    2004-12-07 Nina H�ffmeyer <[email protected]>
432    
433            * /Extensions/ogr/: Adding a new extension to read shapefiles with
434            ogr. It is planned to add other vector formats.
435    
436            * /test/runtests.py: Adding tests from /Extensions/ogr/test/.
437    
438    2004-12-07  Jan-Oliver Wagner <[email protected]>
439    
440            * /Extensions/svgexport/test/test_svgmapwriter.py: Reverting
441            part of a (non-)fix to renable that the tests are always
442            executed.
443    
444    2004-12-07  Bernhard Reiter <[email protected]>
445    
446            * Extensions/svgexport/test/test_svgmapwriter.py:
447            Added test_drawbezier() to test DrawSpline().
448    
449            * Extensions/svgexport/svgmapwriter.py(DrawSpline):
450            Really implemented bezier drawing.
451    
452            * Extensions/svgexport/__init__.py: Bumped version of svgexport
453            to 0.9.1 because now the legend examples lines styles
454            will be drawing with beziers.
455    
456    2004-12-05  Martin Schulze  <[email protected]>
457    
458            * Thuban/UI/renderer.py (raster_format_map): Added PNG, TIFF and
459            GIF as supported bitmap image formats (helpful for the WMS extension)
460    
461    2004-11-30  Martin Schulze  <[email protected]>
462    
463            * Extensions/wms/test/test_ogclib.py (TestOGCLib.test_compareURLs):
464            Improved the test for the internal compare method
465    
466    2004-11-27  Jan-Oliver Wagner <[email protected]>
467    
468            * Thuban/UI/about.py (About.__init__): Added
469            Norbert Solymosi for hungarian translation and Ole Rahn
470            as contrbutor. Moved Bernhard Reiter from Contributor
471            to Developer.
472    
473    2004-11-27  Bernhard Reiter <[email protected]>
474    
475            * Extensions/svgexport/test/test_svgmapwriter.py:
476            Removed Jan from author list as he did not change enough significant
477            lines yet.
478    
479            * Extensions/svgexport/__init__.py: Added Bernhard as author
480            of the Extension.
481    
482    2004-11-27  Jan-Oliver Wagner <[email protected]>
483    
484            * po/hu.po: New. Hungarian translation. Contributed
485            by Norbert Solymosi.
486    
487    2004-11-26  Bernhard Herzog  <[email protected]>
488    
489            * Extensions/svgexport/test/test_svgmapwriter.py
490            (Testobjectexport.test_transparent_polygon): Commented out some
491            debug prints
492    
493    2004-11-24  Jan-Oliver Wagner <[email protected]>
494    
495            Fix broken tests for svg extension and added svg legend
496            to Experimental menu.
497    
498            * Extensions/svgexport/test/test_svgmapwriter.py: Fix to have
499            the test run correctly even if the extension is a package.
500            Also removed the "import Thuban" which makes no sense.
501    
502            * Extensions/svgexport/__init__.py: Fix to have the extensions'
503            test module also be executed from the global test routine.
504            This is done by looking for the absense of the DISPLAY variable.
505    
506            * Extensions/svgexport/maplegend.py: Moved the menu entry from Extensions
507            to Experimental menu since this module has yet not reached a stable
508            status (ie. 1.0).
509    
510    2004-11-22  Bernhard Reiter <[email protected]>
511    
512            * Extensions/svgexport/svgmapwriter.py:
513            Added verbose variable and some logging depending on it.
514            (class VirtualDC(XMLWriter)): Minor improvement in the polygon loop,
515            because counting i is not necessary.
516            (class Pen, class Brush): Added simple __str__ methods.
517            (SVGRenderer.draw_polygone_shape): Fix #2698 (transparent polygons are
518            not exported to svg file) Note: holes still unhandled.
519    
520            * Extensions/svgexport/test/test_svgmapwriter.py:
521                    Made a baseclass TestWithDC for test needed a DC.
522                    Added tests for bug #2698 (transparent polygons are not
523                    exported to svg file):
524                    Testobjectexport.test_transparent_polygon()
525    
526            * Thuban/Model/base.py (UnsetModified):
527            Fixed some typos in docstring.
528    
529            * Thuban/UI/baserenderer.py (BaseRenderer.draw_polygon_shape()):
530            Added hints on the used algorithm for handling holes.
531    
532    2004-11-20  Jan-Oliver Wagner <[email protected]>
533    
534            Some face lifting for the examples.
535    
536            * Examples/__init__.py: Make this directory a package.
537    
538            * Examples/simple_extensions/__init__.py: Make this directory a package.
539    
540            * Examples/simple_extensions/hello_world.py: Moved entry from Extensions
541            menu to Examples menu.
542    
543            * Examples/simple_extensions/simple_command.py: Some more comments,
544            minor changes.
545    
546            * Examples/simple_extensions/simple_tool.py: Minor changes.
547    
548    2004-11-20  Jan-Oliver Wagner <[email protected]>
549    
550            Changed way of extension registry for wms and added extension
551            registry for umn_mapserver extension.
552    
553            * Extensions/wms/__init__.py: Added registry entry and the importing
554            of the actual wms module. Included a test for the required PyOGCLib.
555    
556            * Extensions/wms/wms.py: Removed registry entry (moved to __init__.py).
557    
558            * Extensions/umn_mapserver/__init__.py: Added registry entry and the
559            importing of the actual umn mapserver management modules.
560            Included a test for the required Python MapScript.
561    
562    2004-11-20  Jan-Oliver Wagner <[email protected]>
563    
564            Changed way of extension registry for importAPR, bboxdump
565            and added extension registry for svgexport.extension registry for
566            svgexport.
567    
568            * Extensions/importAPR/__init__.py: Added registry entry and the importing
569            of the actual importAPR module.
570    
571            * Extensions/importAPR/importAPR.py: Removed registry entry (moved to
572            __init__.py).
573    
574            * Extensions/bboxdump/__init__.py: Added registry entry and the importing
575            ����of the actual bboxdump module.
576    
577            * Extensions/bboxdump/bboxdump.py: Removed registry entry (moved to
578            ����__init__.py).
579    
580            * Extensions/svgexport/__init__.py: Added registry entry and the importing
581            of the svgsaver module.
582    
583            * Extensions/svgexport/svgsaver.py: Moved the menu entry from Extensions
584            to Experimental menu since this module has yet not reached a stable
585            status (ie. 1.0).
586    
587    2004-11-18  Jan-Oliver Wagner <[email protected]>
588    
589            Now the hit test considers the size of point symbols.
590    
591            * Thuban/UI/viewport.py (ViewPort._hit_point): Added optional parameter
592            'size' defaulting to the previously fixed value 5.
593            Extended doc-string.
594            (Viewport._find_shape_in_layer): Resolved FIXME regarding flexibility
595            for symbols.
596            Now the size of the largest point symbol is determined to find out
597            about whether the point has been hit.
598            This fixes the problem that only clicks inside a fixed distance of
599            5 where found.
600    
601    2004-11-17  Jan-Oliver Wagner <[email protected]>
602    
603            Another open issue fixed regarding sizeable symbols: correct rendering of
604            selected symbols.
605    
606            * Thuban/UI/renderer.py (ScreenRenderer.draw_selection_incrementally):
607            Added consideration of the specific size of point symbols.
608            The property for each point symbol is retrieved and the size applied
609            for the rendering method.
610            Added doc-string.
611    
612    2004-11-16  Jan-Oliver Wagner <[email protected]>
613    
614            Changed way of Extension Registry for gns2shp and profiling.
615    
616            * Extensions/gns2shp/gns2shp.py: Removed registry entry (moved to
617            __init__.py).
618    
619            * Extensions/gns2shp/__init__.py: Added registry entry and the importing
620            of the actual gns2shp module.
621    
622            * Extensions/profiling/profiling.py: Removed registry entry (moved to
623            __init__.py).
624    
625            * Extensions/profiling/__init__.py: Added registry entry and the importing
626            of the actual profiling module.
627    
628    2004-10-28  Bernhard Reiter <[email protected]>
629    
630            * Extensions/svgexport/: Minor improvements to doc strings.
631    
632    2004-10-07  Jan-Oliver Wagner <[email protected]>
633    
634            Further elements for sizable point objects now
635            making this feature usable though not yet complete.
636    
637            * Thuban/Model/save.py (SessionSaver.write_classification): Write
638            attribute 'size' for cldata when the shape layer is of point type.
639            This also now make the test_load.py tests happy.
640    
641            * Thuban/Model/classgen.py (CustomRamp.GetProperties): Added size
642            gradient.
643    
644            * Thuban/UI/classifier.py (ID_SELPROP_SPINCTRL): Renamed to
645            ID_SELPROP_SPINCTRL_LINEWIDTH.
646            (ID_SELPROP_SPINCTRL_LINEWIDTH): New Id replaces ID_SELPROP_SPINCTRL.
647            (ID_SELPROP_SPINCTRL_SIZE): New Id.
648            (SelectPropertiesDialog.__init__): Added a second spin control
649            for the size in case the corresponding layer is of point type.
650            (SelectPropertiesDialog._OnSpin): Renamed to _OnSpinLineWidth.
651            (SelectPropertiesDialog._OnSpinLineWidth): New. Former _OnSpin.
652            (SelectPropertiesDialog._OnSpinSize): New. Set size of property
653            and refresh preview.
654    
655    
656    
657    2004-10-04  Martin Schulze  <[email protected]>
658    
659            * Extensions/wms/test/test_parser.py
660            (TestWMSCapabilitiesParser.test_compareLists): Added missing
661            self-test for compareLists()
662            (TestWMSCapabilitiesParser.test_compareDicts): Added missing
663            self-test for compareDicts()
664            (TestWMSCapabilitiesParser.test_compareLists): Adding more tests
665            to verify the test routine fails with non-equal arguments
666            (TestWMSCapabilitiesParser.test_compareDicts): Adding more tests
667            to verify the test routine fails with non-equal arguments
668    
669    2004-10-03  Jan-Oliver Wagner <[email protected]>
670    
671            First elements for sizeable point objects.
672    
673            * Resources/XML/thuban-1.1.dtd: Added size attribute to cldata.
674    
675            * Data/iceland_sample_size.thuban: New. Sample for sized point objects.
676    
677            * test/test_load.py (ClassificationTest.TestLayers): Added SetSize in case
678            of a corresponding argument is given.
679            (TestSymbolSize): New. Test the size attribute of cldata.
680    
681            * Thuban/Model/classification.py: Removed some trailing whitespaces.
682            (ClassGroupProperties.__init__): Set default size.
683            (ClassGroupProperties.SetProperties): Set the size.
684            (ClassGroupProperties.GetSize): New. Return the size.
685            (ClassGroupProperties.SetSize): New. Set the size.
686            (ClassGroupProperties__eq__): Compare also size.
687            (ClassGroupProperties__repr__): Print also size.
688    
689            * Thuban/Model/load.py (SessionLoader.start_cldata): Also parse
690            the size attribute.
691    
692            * Thuban/UI/classifier.py (ClassDataPreviewer.Draw): Added doc-string.
693            Also, now there is a return value that indicates whether the drawing
694            size exceeded the given rect extent and if so the new extent.
695            Finally, point objects are drawn depending on the size. If either
696            the width or height is exceeded, the new extent is returned.
697            (ClassRenderer.Draw): Now when calling the previewer drawing function,
698            evaluate the return value and, if not None, adapt the grid widget size
699            accordingly and redraw again.
700    
701            * Thuban/UI/baserenderer.py (BaseRenderer.draw_shape_layer_incrementally):
702            If the draw function is for points, call it with the size as additional
703            parameter.
704            (BaseRenderer.draw_point_shape): Added additional, optional parameter for
705            the size. Compute the radius using the size.
706    
707            * Extensions/importAPR/apr.py (APR_BMkSym.GetThubanProp): Now
708            that Thuban supports size, apply this correctly.
709    
710            * Extensions/importAPR/importAPR.py: Bumped version to 0.1.1.
711    
712    2004-10-03  Jan-Oliver Wagner <[email protected]>
713    
714            * Doc/manual/thuban-manual-de.xml: Started translation of
715            Map chapter.
716    
717    2004-10-01  Martin Schulze  <[email protected]>
718    
719            * Extensions/wms/properties.py (wmsProperties.__init__): Extended
720            argument for general use through properties-dialog selector
721            
722            * Thuban/UI/classifier.py: Register properties dialog classes for
723            both provided layer classes/types.
724    
725            * Thuban/UI/mainwindow.py (MainWindow.OpenLayerProperties): The
726            map can be retrieved through the parent which is passed to the
727            constructor anyway and doesn't require an argument of its own,
728            required for the unification of arguments for general use through
729            properties-dialog selector.
730            (MainWindow.OpenOrRaiseDialog): Move the logic for checking
731            whether a dialog is already opened (and raising it to the users
732            attention) and creating a new dialog into a function of its own
733            (MainWindow.OpenLayerProperties): Use the new OpenOrRaiseDialog()
734            method
735            (MainWindow.OpenLayerProperties): Utilise the new ClassMapper for
736            global registration of properties dialog classes (which are indeed
737            layer-specific).
738    
739            * Thuban/UI/classifier.py (Classifier.__init__): Unify arguments
740            for general use through properties-dialog selector, the map can be
741            retrieved through the parent and doesn't require an argument of
742            its own.
743    
744            * Extensions/wms/wms.py: Register the properties dialog class for
745            the provided WMS layer
746    
747    2004-09-28  Jan-Oliver Wagner <[email protected]>
748    
749            New feature: Registry for Extensions.
750    
751            * Thuban/UI/extensionregistry.py: This module defines a registry for
752            Extensions.
753    
754            * Thuban/UI/about.py (About.__init__): Added description
755            of the registered extensions with all of the information.
756    
757            * Thuban/Model/extension.py (Extension): Improved doc-string.
758    
759            * Extensions/gns2shp/gns2shp.py, Extensions/importAPR/importAPR.py,
760            Extensions/bboxdump/bboxdump.py, Extensions/profiling/profiling.py,
761            Extensions/wms/wms.py: Added registration of the extension.
762    
763    2004-09-27  Bernhard Reiter <[email protected]>
764    
765            More fixes to svgexport to make used ids unique and
766            conforming to XML's Name production.
767    
768            * Extensions/svgexport/test/test_svgmapwriter.py: Added new tests
769            test_xml_id_constraints(), test_make_ide_nosetbaseid() and
770            test_make_id_nonintegersetid().  Switched SetID and SetBaseID.
771            Added Bernhard R. as author.
772            * Extensions/svgexport/svgmapwriter.py (make_id): Using "_" as
773            concatenation char now (makes test_make_ide_nosetbaseid() valid).
774            Also transform second id part with "%d" and catch the TypeError
775            to raise SVGMapWriterError (making test_make_id_nonintegersetid() ok).
776            Corrected typo inBernhard's author line.
777            (SetBaseID): Return the transformed base id. Transform characters
778            which are not alnum() or in ".-_" to binascii.b2a_hex(). Added
779            import binascii. If to be set string starts with "xml" or so, add "t".
780            (draw_shape_layer_incrementally): use the returned value of SetBaseID
781            for used_baseids checks.
782    
783    2004-09-25  Bernhard Herzog  <[email protected]>
784    
785            * test/test_layer.py (TestLayer.test_arc_layer_with_projection):
786            Remove a debug print and some tab characters.
787    
788    2004-09-25  Bernhard Reiter <[email protected]>
789    
790            * Extensions/svgexport/svgmapwriter.py: Added Bernhard R. as Author.
791            (SetBaseID, SetID, make_id): Improved docstring comments to explain
792            the interaction of the three functions and the XML id contrains.
793    
794    
795    2004-09-23  Jan-Oliver Wagner <[email protected]>
796    
797            * Doc/ThubanModel.xmi: New. UML file for Thuban Model
798            Module.
799    
800            * Doc/README: Added info on ThubanModel.xmi.
801    
802    2004-09-23  Jan-Oliver Wagner <[email protected]>
803    
804            * Doc/README: New. Some info about how to generate technical
805            documentation from the source code.
806            This text was send to the Thuban developer mailing list on
807            September 21st 2004 by Bernhard Reiter.
808    
809    2004-09-21  Bernhard Reiter <[email protected]>
810    
811            Improved the svgexport to only use unique ids. Will issues
812            an error message dialoge when two layer names are the same.
813            ShapeIDs are now added with a dash within the svg ids.
814    
815            * Extensions/svgexport/svgmapwriter.py (SVGMapWriterError): New.
816            * Extensions/svgexport/test/test_svgmapwriter.py: Added imports
817            (TestSVGRenderer): New test class with test_make_in() and
818            test_check_for_layer_name_clash()
819            * Extensions/svgexport/svgmapwriter.py (SVGRenderer): Fixed __init__()
820            and draw_shape_layer_incrementally() to not use a baseid twice,
821            satisfying test_check_for_layer_name_clash()
822            (VirtualDC.make_id): Use a dash between baseit and id, satisfies
823            test_make_in().
824            * Extensions/svexport/svgsaver.py: Import SVGMapWriterError, wxOK
825            and wxICON_HAND.
826            (write_to_svg): Put dc and rendering in a try statement and on
827            catching SVGmapWriterError notify the user and delete the target file.
828    
829    2004-09-20  Bernhard Reiter <[email protected]>
830    
831            * Model/base.by, Model/layer.py: Fixed typos in docstrings.
832    
833    2004-09-03  Jan Sch�ngel  <[email protected]>
834    
835            * Extensions/umn_mapserver/mapfile(MF_Class.add_thubanstyle): Fix a
836            small bug with the line color. Now the line color will now only set
837            if it is set in Thuban an not Transparent.
838            
839            * Extensions/umn_mapserver/mf_export(tblayer_to_map): Fixed a bug with
840            deleting the layers from mapfile. Now all layers will delete backwards
841            from the last.
842    
843    2004-08-20  Silke Reimer <[email protected]>
844    
845            * Thuban/Model/layer.py:
846            Fixes bug in projection handling: Otherwise very large region might not
847            have valid values in the layer's projection.
848    
849    2004-08-20  Silke Reimer <[email protected]>
850    
851            * Thuban/UI/about.py:
852            small changes to be consistent with coding style.
853              
854    2004-08-13  Martin Schulze  <[email protected]>
855    
856            * Extensions/wms/test/test_ogclib.py (TestOGCLib.compare_URLs):
857            Adjusted a comment
858    
859    2004-08-11  Silke Reimer <[email protected]>
860    
861            * Thuban/UI/about.py: Small changes to encoding related stuff to avoid
862                    too many and too enhanced imports of locale
863    
864    2004-08-10  Silke Reimer <[email protected]>
865    
866            * Thuban/UI/about.py: Fixed encoding problem of about dialog: Added
867                    function unicodeToLocale() to convert special characters to users
868                    locale encoding
869    
870    2004-08-10  Jan-Oliver Wagner <[email protected]>
871    
872            * Doc/technotes/coding_guidelines.txt: Added rule 'Method names start with
873            lower case letter'
874    
875    2004-08-09  Jan Sch�ngel  <[email protected]>
876    
877            * ChangeLog: Rewrite the last ChangeLog entry to follow
878            the standard way.
879    
880            * Extensions/umn_mapserver/mapfile: Moved the import AnnotationLayer to
881            the function where it is needed, because it don't works if it stands
882            at the beginning.
883            (MF_Layer.__init__): Removed the extra numclassed variable. Now
884            numclasses from the mapscript will be used.
885            (MF_Layer.get_index): New. Return the index of the layer in mapfile.
886            (MF_Layer.set_classes): New. A Classlist will be set to the layer.
887            (MF_Layer.set_metadata): New. A Metadata mapscript object will set.
888            (MF_Layer.remove_allclasses): New. All class of the layer will remove.
889            (MF_Map.create_new_layer): New. A new Layer is created and associated
890            with the mapscript object.
891            (MF_Map.set_layerorder): New. The Layer order like in thuban is set in
892            the mapscript.
893            (MF_Map.add_thubanlayer): Now a new layerobj is created if no one is
894            linked to the layer in thuban, else the layerobject linked to the
895            thubanlayer will be used.
896            AnnotationLayer will now store the filename of the shapefile.
897            (MF_Map.remove_layer): If a layer is removed the associated object
898            must be set new.
899            
900            * Extensions/umn_mapserver/mf_export.py(tb_layer_to_map): Add all
901            layers which are exists in thuban to the mapobj. All removed Layers
902            will be removed from the mapobj.
903            Added comments to all functions.
904            (thuban_to_map): No layer will be removed here.
905            
906            * Extensions/umn_mapserver/mf_handle.py
907            (_has_umn_mapobj_and_selectedlayer): Activating the layer menu. Now
908            Layersettings for the mapserver kann be edited.
909    
910            * Extensions/umn_mapserver/mf_import.py: Now all layers which are
911            imported, will be linked with the associated MF_Layer.
912            (import_mapfile): All layers, which are not selected, will be removed.
913            Disable the "import layer from mapfile" menu option.
914    
915            * Extensions/umn_mapserver/sample/iceland.map: Set the status of the
916            Annotation Layer from DEFAULT to OFF. The DEFAULT setting turns the
917            layer on permanently.
918    
919    2004-08-03  Jan Sch�ngel  <[email protected]>
920    
921            * Extensions/umn_mapserver/mapfile.py(MF_Metadata.remove_allmetadata):
922            New. This function removes all metadata
923            (MF_Layer.set_group): New. Set the group setting.
924            (MF_Layer.get_group): New. Get the group setting.
925            (MF_Map): Removed the extra numlayers variable, used the mapscript
926            parameter instead.
927            (MF_Map.get_numlayers): New. This get numlayers.
928            (MF_Map.remove_all_layers): New. Removes all layers from the mapobj.
929            (MF_Map.add_thubanlayer): Replaced the exception handling by a check
930            if the object is an instance. Also added the annotation layer here to
931            export, but only the layer is created in the mapfile.
932    
933            * Extensions/umn_mapserver/mf_export.py(export_mapfile): Removed
934            the check if a mapobj exist, because its not needed anymore. The
935            export function is only available if a mapobj exist.
936            Use the new function to remove all layers.
937            
938            * Extensions/umn_mapserver/mf_handle.py(Layer_Dialog): Added a group
939            option and the metadata button. The layer dialog is temporary disabled.
940            (Metadata_CustomDataTable): Added some functions to show the grid
941            correct.
942    
943            * Extensions/umn_mapserver/mf_import.py: Moved the code for showing
944            the number of layer from import_mapfile to this function.
945            (AnnotationLayer): New. This Class shows the Annotation layer in
946            thuban. The layer don't do anything. It's only to show the layer
947            and to save the layer order.
948            (add_annotationlayer): New. Import an annotation layer to thuban.
949            (select_layer2import): New. Import only layers to thuban and not
950            the other settings like projection or scalebar.
951            (create_new_mapfile): Moved the _has_umn_mapobj function and the
952            create_new_mapfile functions from mf_handle.py to mf_import.py.
953            
954            * Extensions/umn_mapserver/sample/iceland.map: Added the group
955            parameter to the roads and cultural layers. Also added a new
956            Annotation Layer for the cultural points.
957    
958            * Extensions/umn_mapserver/sample/iceland.html: Added the select
959            option for the annotation layer.
960    
961            * Extensions/umn_mapserver/sample/index.html: Added the start
962            parameter for the annotation layer.
963    
964    2004-08-01  Jan-Oliver Wagner <[email protected]>
965    
966            * Doc/manual/thuban-manual-de.xml (Chapter Session Management):
967            translation completed.
968    
969            * Doc/manual/thuban-manual.xml (Chapter Session Management):
970            Fixed unprecise description for Save Session.
971    
972    2004-07-31  Jan-Oliver Wagner <[email protected]>
973    
974            Started translation of Users Manual into german.
975    
976            * Doc/manual/thuban-manual-de.xml: New. German Users Manual.
977    
978            * Doc/manual/Makefile: Added build instructions for german
979            users manual.
980    
981            * Doc/manual/thuban-manual.xml: Minor corrections in Introduction.
982    
983    2004-07-28  Jan Sch�ngel  <[email protected]>
984    
985            * Extensions/umn_mapserver/mapfile.py(MF_Metadata): Changed all class
986            functions. Now all metadata will handle by the function and its not
987            needed to initialize it from outside. Therefor the associated mapobj
988            will be stored in the Metadata Object. So we can use the special
989            functions from the associated mapobj to get the Metadata.
990            Therefor all initialization code for the metadata is removed from the
991            other classes.
992            (MF_Layer): Added a function to get the metadata object.
993            (MF_Map): Added a function to set the mappath, the path where
994            the mapfile ist stored.
995    
996            * Extensions/umn_mapserver/mf_export.py(thuban_to_map): Changed the code
997            to set the extent in the mapfile. Now the code is set by the displayed
998            data in the Thuban-view.
999            (export_mapfile): The shapepath is now set empty, until relative
1000            pathnames are supported.
1001    
1002            * Extension/umn_mapserver/mf_handle.py: Added a dialog to handle
1003            metadata. Yet only mapfile metadata are supported. Layer and class
1004            supported are not implemented.
1005            Added a dialog to handle layer informations. The dialog only shows the
1006            selected layer at the moment.
1007    
1008            * Extensions/umn_mapserver/mf_import.py(import_mapfile): Changed the
1009            code for setting the extent in thuban. Now the extent is set to the
1010            given extent from the mapfile.
1011            Fixed a logical mistake. Now the extent is set when realy a layer is
1012            loaded, and not if one is selected to load.
1013    
1014            * Extensions/umn_mapserver/sample/iceland.html: Added code to zoom and
1015            move the shown map in the browser.
1016    
1017            * Extensions/umn_mapserver/sample/iceland.map: Added a new metadata
1018            line to the mapobj and added metadata to the political layer.
1019    
1020            * Extensions/umn_mapserver/test/test_mapserver.py: Changed the test
1021            for Metadata.
1022    
1023    2004-07-26  Martin Schulze  <[email protected]>
1024    
1025            * Thuban/Lib/classmapper.py (ClassMapper.has): Added the new
1026            ClassMapper
1027    
1028            * test/test_classmapper.py (TestMapping.test_mapper): Added a Test
1029            case for the new ClassMapper
1030    
1031    
1032    2004-07-22  Bernhard Herzog  <[email protected]>
1033    
1034            * Thuban/UI/viewport.py (ViewPort.VisibleExtent): New.  Return the
1035            visible extent of the map in projected coordinates
1036    
1037            * test/test_viewport.py (SimpleViewPortTest.test_default_size)
1038            (SimpleViewPortTest.test_init_with_size): Add some VisibleExtent()
1039            tests.
1040            (SimpleViewPortTest.test_visible_extent): New. The real test for
1041            VisibleExtent()
1042    
1043    2004-07-22  Bernhard Herzog  <[email protected]>
1044    
1045            * test/test_viewport.py: Use support.run_tests as the main
1046            function when running asa script.
1047    
1048    2004-07-22  Jan Sch�ngel <[email protected]>
1049    
1050            * Extensions/umn_mapserver/mf_export.py: Added "import os"
1051            Removed the old "import Thuban.UI.mainwindow" code.
1052            (tbextent_to_map): Removed the extra function and at the code direct
1053            to "thuban_to_map" function.
1054            (write_creatorcomment): Added. Now a short comment is added to the
1055            beginning of an generated mapfile.
1056            (export_mapfile): Now the Path and filename are saved in to variables,
1057            and not together in one variable. This is needed for the new
1058            write_creatorcomment function.
1059                    
1060            * Extensions/umn_mapserver/mf_import.py (import_mapfile): Added the
1061            import module "re". Also added Range and the ClassGroupRange import
1062            from Thuban. Both are needed for the new range expression import.
1063            (create_rangeexpression): Added. Creates a Range Expression in Thuban
1064            style from a given mapfile expression.
1065            (added_rasterlayer): Make some small code changes. The shapepath is
1066            now stored in an extra variable and the clazz_name is set empty if no
1067            class name set in the mapfile.
1068            Changed the Error message for Range Expressions, becaus the new
1069            function create a error string which will be shown in the dialog.
1070    
1071            * Extensions/umn_mapserver/test/test_mapserver.py: Added a test for the
1072            range expression import.
1073    
1074    2004-07-21  Jan-Oliver Wagner <[email protected]>
1075    
1076            * Extensions/umn_mapserver/README: Added hint that
1077            installation as root can be avoided. Removed all tabs.
1078    
1079    2004-07-16  Bernhard Herzog  <[email protected]>
1080    
1081            * test/test_viewport.py
1082            (ViewPortTest.test_changing_map_projection): Check that changing
1083            the projection of an empty map shown in a viewport doesn't lead to
1084            exceptions in the viewport's handler for the
1085            MAP_PROJECTION_CHANGED messages
1086    
1087            * Thuban/UI/viewport.py (ViewPort.map_projection_changed): Only
1088            try to keep the same region visible when the map actually contains
1089            something
1090    
1091    2004-07-15  Jan Sch�ngel <[email protected]>
1092    
1093            * Extensions/umn_mapserver/mapfile.py: Added a function to get the
1094            mappath directly from the mapobj. Is needed because of the changes
1095            in mf_import.py.
1096            (MF_Layer.add_thubanclass): Added a new comment.
1097            (MF_Map.set_extent): Fixed a bug with exporting empty mapobj. If the
1098            mapobj is empty there is no extent get from thuban an so no one can
1099            set to th mapobj.
1100            
1101            * Extensions/umn_mapserver/mf_import.py (import_mapfile): Updated
1102            the discription.
1103            Split the funktion in to three smaller ones. The new functions are
1104            add_rasterlayer, add_polygonlayer and select_layer2import.
1105            Removed the mapfilepath and filepath initialisation, because its know
1106            include in the new functions.
1107            Now nothing will be imported if cancel is pressed in the
1108            layer choice dialog.
1109    
1110    2004-07-14  Jan Sch�ngel <[email protected]>
1111    
1112            * Extensions/umn_mapserver/mapfile.py: Added ClassGroupDefault to
1113            import.
1114            (MF_Symbolset): Removed the extra variable for numsymbols.
1115            (MF_Class.__init__): Added a comment to the exception clause.
1116            Removed the extent init, because it was not needed anymore.
1117            (MF_Layer.add_thubanclass): Added the code to set the class name to
1118            the expression value from thuban if no label is defined.
1119            Added the code to export Range expressions from thuban to the mapfile.
1120            (MF_Map.set_extent): Removed the exception and replace it by some if
1121            code. If the size of a map is not defined the size will be set to 1,1.
1122            This is necessary because if the extent is set, mapscript checks if
1123            the size is greater than zero.
1124            (MF_Web): Added the get and set function for the template.
1125    
1126            * Extensions/umn_mapserver/mf_export.py: Added the function to check
1127            if a mapobject exists and used it to set the status of the menu items.
1128            If no mapfile exists the settings could not be edditied.
1129            Define after which menuitem the exportitem will include.
1130            
1131            * Extensions/umn_mapserver/mf_handle.py: Removed the import
1132            Thuban.UI.mainwindow clause, because it is not needed.
1133            Added the command Refresh() to all "OnChangeColor()" functions,
1134            because the color preview window was not updated on a color change.
1135            Added the function to check if a mapobject exists and used it to set the
1136            status of the menu items. If no mapobject exists the settings could not
1137            be edditied.
1138            (Map_Dialog): Moved the imagetype selector from the
1139            Outputformat_Dialog to Map_Dialog and removed Outputformat_Dialog.
1140            (Web_Dialog): Removed the name label and added the template textbox.
1141    
1142            * Extensions/umn_mapserver/mf_import.py (import_mapfile): Replace
1143            the exception handling on loading the layers by an if statement. It
1144            is not necessary to us the exception there.
1145            The Filepath creation now use os.path.join to build the path.
1146    
1147            * Extensions/umn_mapserver/test/test_mapserver.py: Moved the testMap
1148            definition from global to the setUp function. Now the testMap will
1149            initialize new on each test.
1150    
1151            * Extensions/umn_mapserver/sample/iceland.map: Include three new
1152            classes in the Line Layer, to test logical Expressions.
1153            Set the status of the class "Point9" in the Point Layer to off
1154            
1155    2004-07-13  Bernhard Herzog  <[email protected]>
1156    
1157            * Thuban/UI/baserenderer.py
1158            (BaseRenderer.render_map_incrementally): Fix a logic bug in the
1159            optimization that tries not to draw layers under a raster layer.
1160            The bug was harmless.  All it effectively did was to produce The a
1161            strange messages about not being able to draw Layer instances for
1162            all vector layers below a raster layer which would be invisible
1163            anyway because the raster layer currently always covers the entire
1164            window
1165    
1166    2004-07-08  Jan Sch�ngel <[email protected]>
1167    
1168            * Extensions/umn_mapserver/mapfile.py: Added code to generade and get
1169            a list of supported outputformats. This formats are not alle supported
1170            because there is no possibility to get the outputformat without the
1171            name known. Make some formal changes to the code.
1172            (MF_Map.set_name()): Fixed a bug if the name is None.
1173    
1174            * Extensions/umn_mapserver/mf_handle.py: Removed the image_type import
1175            statement, because its not needed anymore. The Outputformat is now
1176            given as string from the object. Make some formal changes to the code.
1177    
1178            * Extensions/umn_mapserver/test/test_mapserver.py: Added new test for
1179            most of the new setting which were added during the last changes.
1180            Removed the MF_Size Test.
1181            
1182            * Extensions/umn_mapserver/test/test.map: Added a new class to the
1183            cultural Layer to test expressions and the the status of that layer
1184            from on to default.
1185            Changed the data path the the correct Thuban Data
1186            Added the Outputformat Object and Symbol Object
1187            
1188    2004-07-07  Jan Sch�ngel <[email protected]>
1189    
1190            * Extensions/umn_mapserver/mapfile.py: Added some new
1191            settings to edit (outputformat, label, imagetype)
1192    
1193            * Extensions/umn_mapserver/mf_handle.py: Added some setting to
1194            the Label Dialog and add the OutputDialog.
1195            Make some changes to the code order.
1196    
1197    2004-07-06  Jan Sch�ngel <[email protected]>
1198    
1199            * Extensions/umn_mapserver/mapfile.py: Added the symbolObj, pointObj
1200            and line Obj and add the scalebar_status_type, scalebar_style_type and
1201            scalebar_position_type.
1202            Added the symbol- and symbolsetObject (MF_Symbol,MF_Symbolset). The
1203            are only used to create a Symbol like the circle in Thuban.
1204            Added the scalebarObject (MF_Scalebar)
1205            (MF_Class): Added set_status and get_status.
1206            (MF_Layer.add_thubanclass): Added code to set the class status
1207            (MF_Map): Added code to handle the symbols and scalebar
1208            (MF_Label): Added the set_partials and get_partials functions
1209            
1210            * Extensions/umn_mapserver/mf_export.py: Added MF_Symbol to import
1211            from mapfile. Added a function to create a circle object like the one
1212            from thuban if no one exists.
1213            
1214            * Extensions/umn_mapserver/mf_handle.py: All colors are now set when
1215            press ok in the assosiated dialog and not at the end of the
1216            colordialog.
1217            Added the Dialog for the Scalebar.
1218            (Label_Dialog): Added the offset option
1219    
1220            * Extensions/umn_mapserver/mf_import.py: Added code to import the
1221            status of the Classes.
1222            Fixed a bug with the projection. Now the to_meter parameter will be
1223            added to the Projection only if it doesn't exists.
1224    
1225    2004-07-01  Jan Sch�ngel <[email protected]>
1226    
1227            Added the functionality to handle the content thuban is not
1228            able to handle directly.
1229    
1230            * Extensions/umn_mapserver/mf_handle.py: New. This module extents
1231            Thuban with the possibility to edit the mapfile content.        
1232            
1233            * Extensions/umn_mapserver/mf_import.py: Added the possibility
1234            to import mapfiles without any layer selected. So it is possible
1235            to edit the other settings in a mapfile.
1236            (import_mapfile): Added code to use the editing functions.
1237            Added the possibility to import the projection to a layer if one
1238            is defined.
1239            Status settings (On,Off) will now set in thuban (visible, invisible).
1240            fixed a bug with with classnames. If no classname is set in mapfile
1241            the value in Thuban will set to the expression.
1242            
1243            * Extensions/umn_mapserver/mf_export.py(export_mapfile): Added the
1244            possibility to save a new mapfile or use the old one which is
1245            imported or new created.
1246            Added code to use the editing functions.
1247            Remove some not needed import statements
1248    
1249            * Extensions/umn_mapserver/mapfile.py: Added new types which are
1250            need for the editing functions.
1251            Added needed set-functions for the editing functions.
1252            Added the possibility to export rasterimages.
1253            Added new classes (MF_Web, MF_Label, MF_Legend, MF_Symbol,
1254            MF_SymbolSet). MF_Symbol and MF_SymbolSet are not needed at the
1255            moment.
1256            (MF_Class.set_thubanstyle): Now point layers will set to a default
1257            symbol to show a circle in mapserver and not only a 1px dot.
1258            (MF_Style.__init__): Fixed a bug with the color. Color was not set
1259            correct before.
1260            (MF_Size): Removed, because it is not needed.
1261            
1262            * Extensions/umn_mapserver/README: Added the hints to use the
1263            export and editing functions, too.
1264    
1265            * Extensions/umn_mapserver/sample/iceland.map: Added the
1266            new parameter "UNITS METERS".
1267            Change the political layer to status OFF.
1268    
1269            * Extensions/umn_mapserver/sample/README: Added some
1270            more details to setup the sample in the MapServer.
1271            
1272    2004-06-26  Bernhard Reiter <[email protected]>
1273    
1274            * Extensions/svgexport/test/test_svgmapwriter.py:
1275            Removed class VFile and used standard StringIO instead.
1276    
1277    2004-06-23  Jan Sch�ngel  <[email protected]>
1278    
1279            Add the export function to the umn_mapserver extension.
1280    
1281            * Extension/umn_mapserver/mf_export.py: New. This module extents
1282            Thuban with the possibility to export the Thuban content.
1283    
1284            * Extensions/umn_mapserver/mapfile.py: Expand the classes to use
1285            with the export module. Especially added the possibility to
1286            add thuban objects directly to the map objects.
1287    
1288            * Extensions/umn_mapserver/mf_import.py: Removed the wxCHANGE_DIR,
1289            because of the hint from Bernhard Herzog.
1290            Corrected the handling of absolute pathnames.
1291            Changed the Text of the Menu-Item, now the beginning is upper case.
1292    
1293            * Extensions/umn_mapserver/README: Added the --with-tiff statement.
1294    
1295    2004-06-16  Jan Sch�ngel  <[email protected]>
1296    
1297            Add a sample and make some changes.
1298    
1299            * Extension/umn_mapserver/mf_import.py: Changed the wxPython.wx
1300            import from * to explicit used statements. Changed the
1301            Thuban.UI.mainwindow import phrase, too.
1302            (import_mapfile):Corrected a clerical mistake.
1303            Added wxCHANGE_DIR in OpenFile Dialog.
1304            Added a MultipleChoiceDialog, to select the layers to load from
1305            mapfile into thuban. Thereby the projection is only set if one layer
1306            is selected.
1307            Added the possibility to handle relative pathnames which uses
1308            up-level references.
1309            Removed some doubled code.
1310            Corrected an error with integer values used as label in thuban
1311            ClassGroup.
1312            
1313            * Extensions/umn_mapserver/sample: New.
1314    
1315            * Extensions/umn_mapserver/sample/README: New. Describes the
1316            usage of the sample files.
1317    
1318            * Extensions/umn_mapserver/sample/iceland.map: New. This is
1319            a suitable .map-file for the iceland data.
1320    
1321            * Extensions/umn_mapserver/sample/index.html: New. The template
1322            for the mapfile.  
1323    
1324            * Extensions/umn_mapserver/sample/iceland.html: New. Initialisation
1325            file for the Iceland Application on web.
1326    
1327            * Extensions/umn_mapserver/README: Corrected a inaccuracy and added
1328            some details.
1329    
1330            * Extensions/umn_mapserver/test/test_mapserver
1331            (mapserver_import_Test_generalClasses.test_MF_Color):
1332            Corrected the thubancolor test.
1333    
1334    2004-06-15  Jan Sch�ngel  <[email protected]>
1335    
1336            * Extensions/umn_mapserver/README: New. Install instruction.
1337    
1338    2004-06-14  Bernhard Reiter <[email protected]>
1339    
1340            * libraries/thuban/cpl_mfile.h: Added copyright header.
1341    
1342            * libraries/thuban/ cpl_mfile.cpp, cpl_mfile.h: Added non-protecting
1343            Free Software License so that it is most useful with gdalwarp
1344            and bmpdataset.
1345    
1346    2004-06-14  Bernhard Herzog  <[email protected]>
1347    
1348            * Thuban/UI/multiplechoicedialog.py (__version__): Add missing
1349            import of wxPython.wx itself (as opposed to the contents of
1350            wxPython.wx).  For some reason wxPython.wx is available as
1351            wxPython.wx.wx in at least some 2.4 releases.  Fixes RT#2482
1352            wrt. wxPython 2.4.
1353    
1354    2004-06-10  Jan Sch�ngel  <[email protected]>
1355    
1356            Initial version of new extension "umn_mapserver".  This extension aims
1357            to manage configuration for the UMN MapServer application.  This
1358            inital version just imports the .map-files and displays all, Thuban is
1359            capable of.
1360    
1361            * Extensions/umn_mapserver, Extensions/umn_mapserver/test: New.
1362    
1363            * Extensions/umn_mapserver/test/README: New. Describes how to run the
1364            tests.
1365    
1366            * Extensions/umn_mapserver/test/test.map: New. This is a test
1367            .map-file for automated tests of the umn_mapserver extension of
1368            Thuban.
1369    
1370            * Extensions/umn_mapserver/test/test_mapserver.py: New. Tests for
1371            UMN Mapserver classes.
1372    
1373            * Extensions/umn_mapserver/__init__.py: New. Init to make this
1374            directory a package.
1375    
1376            * Extensions/umn_mapserver/mapfile.py: New. Classes to represent
1377            '.map'-file objects.
1378    
1379            * Extensions/umn_mapserver/mf_import.py: New. This module extends
1380            Thuban with the possibility to handle UMN MapServer mapfiles.
1381    
1382    2004-06-03  Bernhard Herzog  <[email protected]>
1383    
1384            * Thuban/Model/layer.py (Layer.TreeInfo): Convert the bounding box
1385            to a tuple before using it as arguments to the % operator.  This
1386            fixes the formatting issue filed in RT#2239 on 2004-01-13 and
1387            reported today on thuban-list by Jan Sch�ngel
1388    
1389            * test/test_layer.py (TestLayerModification.setUp): Save the
1390            filename as an instance variable so we can refer to it in tests
1391            (TestLayerModification.test_tree_info): Uncomment this method
1392            again and make it work.  This tests for the formatting issue
1393            filed in RT#2239 on 2004-01-13
1394    
1395    2004-05-28  Bernhard Herzog  <[email protected]>
1396    
1397            * Thuban/UI/baserenderer.py: Fix some typos.
1398    
1399    2004-05-18  Jan-Oliver Wagner <[email protected]>
1400    
1401            * Extensions/gns2shp/gns2shp.py (gns2shp): Fixed a bug
1402            by increasing a field size.
1403    
1404    2004-05-17  Bernhard Herzog  <[email protected]>
1405    
1406            Update to newest shapelib and get rid of Thuban specific
1407            extensions, i.e. use the new DBFUpdateHeader instead of our
1408            DBFCommit kludge
1409    
1410            * libraries/shapelib/shpopen.c: Update to version from current
1411            shapelib CVS.
1412    
1413            * libraries/shapelib/shapefil.h: Update to version from current
1414            shapelib CVS.
1415    
1416            * libraries/shapelib/dbfopen.c: Update to version from current
1417            shapelib CVS.
1418            (DBFCommit): Effectively removed since shapelib itself has
1419            DBFUpdateHeader now which is better for what DBFCommit wanted to
1420            achieve.  
1421            We're now using an unmodified version of dbfopen.
1422    
1423            * setup.py (extensions): Add the HAVE_UPDATE_HEADER macro with
1424            value '1' to the Lib.dbflibc extension.  This simply reflects the
1425            shapelib and pyshapelib updates
1426    
1427    2004-05-16  Jan-Oliver Wagner <[email protected]>
1428    
1429            Finished introduction of Menu.FindOrInsertMenu.
1430    
1431            * Extensions/drawshape/drawshape.py: Add the command
1432            to the experimental menu additionally to the toolbar.
1433    
1434            * Extensions/svgexport/svgsaver.py: Use FindOrInsertMenu() instead of
1435            finding menu on its own.
1436    
1437            * Doc/manual/thuban-manual.xml: updated sample file
1438            to use FindOrInsertMenu().
1439    
1440            * Examples/simple_extensions/hello_world.py: Use FindOrInsertMenu()
1441            instead of finding menu on its own.
1442    
1443    2004-05-11  Jan-Oliver Wagner <[email protected]>
1444    
1445            * test/test_menu.py (MenuTest.test): Added testing
1446            of method Menu.FindOrInsertMenu.
1447    
1448    2004-05-10  Jan-Oliver Wagner <[email protected]>
1449    
1450            Introduce and use Menu.FindOrInsertMenu.
1451    
1452            * Thuban/UI/menu.py (Menu.FindOrInsertMenu): New. Find a
1453              given menu or, if not found, insert it.
1454    
1455            * Extensions/bboxdump/bboxdump.py, /Extensions/gns2shp/gns2shp.py,
1456            /Extensions/importAPR/importAPR.py, Extensions/profiling/profiling.py,
1457            /Extensions/wms/wms.py: Use FindOrInsertMenu() instead of finding
1458            menu on its own.
1459    
1460    2004-05-06  Jan-Oliver Wagner <[email protected]>
1461    
1462            Introduce a abstract ColorDialog class and remove
1463            and outdated file.
1464    
1465            * Thuban/UI/proj4dialog.py: Removed. It is has been
1466            replaced by projdialog for quite a while and is not used
1467            anymore.
1468    
1469            * Thuban/UI/colordialog.py: New. Abstraction for color selection
1470            dialog(s).
1471    
1472            * Thuban/UI/classifier.py (SelectPropertiesDialog.__GetColor):
1473            Now calls the abstract ColorDialog instead of wxColourDialog.
1474            This also removed the dependency to Color class conversion
1475            from this function.
1476    
1477    2004-05-04  Frank Koormann  <[email protected]>
1478    
1479            * Extensions/bboxdump/__init__.py: Fixed string left over from
1480            copying.
1481    
1482            * Extensions/bboxdump/bboxdump.py (bboxdump):
1483            Use layer.ShapeStore().AllShapes() to loop over shapes instead of
1484            xrange(layer.NumShapes()). Compile the bboxmessage from a list
1485            of formatted outputs (string.join) instead of appending to the
1486            message. Two progress bar dialogs to report progress on the sometimes
1487            lenghty processing.
1488    
1489    2004-04-22  Frank Koormann  <[email protected]>
1490    
1491            New Extension to dump bounding boxes of all shapes of the selected
1492            layer. An optional column can be specified to group the objects,
1493            in this case the bounding box is a union of the separate boxes.
1494            Dump can be displayed in a ScrolledMessageDialog or written to file.
1495            The Extension is simply a combination of available and well tested
1496            Thuban functionality.
1497    
1498            * Extensions/bboxdump/__init__.py: New: Init to make this
1499            directory a package.
1500    
1501            * Extensions/bboxdump/bboxdump.py: New: Dump bounding boxes of
1502            all shapes of the selected layer.
1503    
1504    2004-04-22  Jan-Oliver Wagner <[email protected]>
1505    
1506            * Thuban/UI/classgen.py (GenUniquePanel.__init__): Fixed two
1507            strings to be i18n now.
1508    
1509    2004-04-18  Jan-Oliver Wagner <[email protected]>
1510    
1511            Changing popup menu of legend from direct building
1512            to using the Menu construction as used for the mainwindow.
1513    
1514            * Thuban/UI/mainwindow.py: New method commands: layer_to_top,
1515            layer_to_bottom, layer_visibility
1516            (MainWindow.LayerToTop): New. Put current layer to the top.
1517            (MainWindow.LayerToBottom): New. Put current layer to bottom.
1518            (MainWindow.HideLayer, MainWindow.ShowLayer, _has_visible_map):
1519            Replace 1,0 by True, False.
1520            (MainWindow.ToggleLayerVisibility): New. Toggle visibility of
1521            current layer.
1522            (MainWindow.LayerShowTable): Removed raising of dialog.
1523            (_has_selected_layer_visible): New. Support function.
1524    
1525            * Thuban/UI/legend.py: ID_POP_xxx: removed.
1526            (LegendPanel.__init__): Removed EVT_MENU bindings.
1527            (LegendTree._OnRightClick): Replace direct creation of
1528            menu via wx Classes by applying the menu definition
1529            as of Menu class of menu.py.
1530            
1531    2004-04-16  Jan-Oliver Wagner <[email protected]>
1532    
1533            * Thuban/UI/exceptiondialog.py (ExceptionDialog.dialog_layout): Improved
1534        button string to stronger clearify that Thuban will be closed when hitting
1535            the button.
1536    
1537            * Thuban/UI/mainwindow.py (MainWindow.LayerShowTable): Added docstring.
1538            Now for layers without a ShapeStore a corresponding message is given
1539            to the user, that this layer has no table to show.
1540    
1541    2004-04-15  Martin Schulze  <[email protected]>
1542    
1543            * Extensions/wms/layer.py (WMSLayer.setWMSFormat): Need to
1544            recalculate the format for the internal render engine as well.
1545    
1546            * Extensions/wms/properties.py (wmsProperties): First start for a
1547            properties dialog.  It's functional for a first selection of
1548            layers, but still has some weired wxWidgets/GTK problems but
1549            beautification can be done later.
1550    
1551            * Extensions/wms/layer.py: Added more documentation
1552            (WMSLayer.getFormats): New: Return list of supported image formats
1553            by the WMS server
1554            (WMSLayer.getLayers): New: Return the list of layer names
1555            supported by the WMS server
1556            (WMSLayer.getLayerTitle): New: Return the title of the named layer
1557            (WMSLayer.getWMSFormat): New: Return the image format that is used
1558            for WMS GetMap requests
1559            (WMSLayer.setWMSFormat): New: Set the image format that is used
1560            for WMS GetMap requests
1561            (WMSLayer.__init__): Move away from using only one layer to using
1562            a list of layers (unsorted at the moment, though).
1563            (WMSLayer.getVisibleLayers): New: Return the list of names for all
1564            visible layers
1565            (WMSLayer.setVisibleLayers): New: Set the list of names for all
1566            visible layers
1567    
1568            * Extensions/wms/wms.py: Moved the WMS layer into layer.py in
1569            order to establish a clean structure.
1570    
1571            * Extensions/wms/layer.py: Moved the WMS layer into a file on its
1572            own in order to establish a clean structure.
1573    
1574  2004-04-13  Martin Schulze  <[email protected]>  2004-04-13  Martin Schulze  <[email protected]>
1575    
1576          * Extensions/wms/parser.py (WMSCapabilitiesParser.grok): Added          * Extensions/wms/parser.py (WMSCapabilitiesParser.grok): Added

Legend:
Removed from v.2174  
changed lines
  Added in v.2527

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26