/[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 2482 by bernhard, Sat Dec 18 02:36:59 2004 UTC revision 2671 by bernhard, Mon Oct 17 20:10:18 2005 UTC
# Line 1  Line 1 
1    2005-10-17  Bernhard Reiter <[email protected]>
2    
3            svgexport 1.0.0cvs: Fixed ARC layer writing: No filling is done.
4            You could actually get polylines with filling in between,
5            when the classification for the lines had a fill color.
6            E.g. this happens when you generate a classification from a ramp.
7    
8            * Extensions/svgexport/test/test_svgmapwriter.py:
9            New test_export_arc_no_fill(). Extend copyright notice to 2005.
10    
11            * Extensions/svgexport/svgmapwriter.py
12            (SVGRenderer.draw_shape_layer_incrementally()):
13            Setting TRANSPARENT_BRUSH for shaptype ARC.
14            Extend copyright notice to 2005.
15    
16            * Extensions/svgexport/__init__.py: Extend copyright notice to 2005.
17    
18    2005-09-08  Frank Koormann <[email protected]>
19    
20            * Doc/manual/thuban-manual.xml (Map Management): Fixed typo reported
21            by Erik (sigra.at.home.se)
22    
23    2005-08-18  Jan-Oliver Wagner <[email protected]>
24    
25            * Thuban/UI/renderer.py (ScreenRenderer.draw_selection_incrementally):
26            Call the right method for the default size.
27    
28    2005-08-11  Jan-Oliver Wagner <[email protected]>
29    
30            * Extensions/export_shapefile: New.
31    
32            * Extensions/export_shapefile/__init__.py: New. Initialize
33            the export_shapefile extension.
34    
35            * Extensions/export_shapefile/export_shapefile.py: New.
36            Exports a layer as a Shapefile.
37    
38    2005-08-08  Jan-Oliver Wagner <[email protected]>
39    
40            * po/de.po: String fixes. This fixes Debian bug #313843.
41    
42    2005-07-27  Jan-Oliver Wagner <[email protected]>
43    
44            Remove the attributes from the layer element in
45            .thuban files for the save routine.
46            This also solves RT bug #3149,
47            https://intevation.de/rt/webrt?serial_num=3149
48    
49            * test/test_load.py: (TestSingleLayer, TestNonAsciiColumnName,
50            TestLayerVisibility, TestSymbolSize, TestClassification, TestLabels,
51            TestLayerProjection, TestJoinedTable, TestLabelLayer): Removed
52            attributes from layer element to classification clnull element.
53    
54            * test/test_save.py (SaveSessionTest.testSingleLayer,
55            SaveSessionTest.testLayerProjection,
56            SaveSessionTest.testClassifiedLayer,
57            SaveSessionTest.test_joined_table, SaveSessionTest.test_save_postgis):
58            Removed attributes from layer element to classification clnull element.
59            (test_save_postgis.NonConnectionStore._fetch_table_information):
60            added pretending to have a shape_type.
61    
62            * Resources/XML/thuban-1.1.dtd: Make the attributes field
63            and field_type of classification optional.
64    
65            * Thuban/Model/classification.py (Classification.TreeItem.build_info):
66            Added output of size.
67    
68            * Thuban/Model/load.py (SessionLoader.start_classification):
69            Change attribute 'field' and 'field_type' from obligatory to
70            optional to allow empty classes (ie.  only with a default=clnull).
71    
72            * Thuban/Model/save.py (SessionSaver.write_layer): Don't write
73            any attributes anymore for the layer element.
74            (SessionSaver.write_classification): Even if there is no
75            classification field, still write the classification because
76            the clnull (default) symbol will not be defined anymore as
77            part of the layer element.
78    
79    2005-07-05  Bernhard Herzog  <[email protected]>
80    
81            * setup.py (setup call): Version 1.1.0
82    
83            * NEWS: Update for 1.1.0
84    
85            * MANIFEST.in: Add *.txt to files taken from Doc.  Otherwise the
86            technores won't be included
87    
88            * Thuban/UI/about.py (About.__init__): Extend copyright notice to
89            2005
90    
91            * po/de.po: Updated.
92    
93    2005-07-05  Bernhard Herzog  <[email protected]>
94    
95            * README: gdal 1.1.8 is too old.  1.2.5 works.
96    
97    2005-07-05  Bernhard Herzog  <[email protected]>
98    
99            * Resources/XML/thuban-1.1.dtd (rasterlayer): Add the opacity and
100            masktype attributes.
101    
102    2005-07-05  Bernhard Herzog  <[email protected]>
103    
104            * Thuban/Model/layer.py (Layer.__mangle_bounding_box)
105            (Layer.ClipBoundingBox): Rename ClipBoundingBox to
106            __mangle_bounding_box.  See the comments in the code and RT #2845
107    
108            * test/test_layer.py (TestLayer.test_arc_layer_with_projection):
109            Remove the explicit test of ClipBoundingBox.  The method isn't
110            public anymore and the direct call in the test wasn't necessary in
111            the first place.  If ClipBoundingBox (now __mangle_bounding_box)
112            isn't called, the return value of ShapesInRegion will be
113            different.
114    
115    2005-07-05  Bernhard Herzog  <[email protected]>
116    
117            * Thuban/UI/viewport.py (ViewPort.set_view_transform): Handle
118            ZeroDivisionError exceptions.  I don't know when they happen
119            exactly.  It probably happens when the projections aren't set
120            properly.
121    
122    2005-07-01  Bernhard Herzog  <[email protected]>
123    
124            First step towards unicode.  With this roughly we're at step 1
125            string_representation.txt
126    
127            * Doc/technotes/string_representation.txt: New.  Document how
128            strings are represented in Thuban and how to get to a Unicode
129            Thuban.
130    
131            * Thuban/__init__.py (set_internal_encoding)
132            (unicode_from_internal, internal_from_unicode): New. The first few
133            functions for the internal string representation
134    
135            * Thuban/UI/about.py (unicodeToLocale): Removed.  Use
136            internal_from_unicode instead.
137    
138            * Thuban/UI/__init__.py (install_wx_translation): Determine the
139            encoding to use for the internal string representation.  Also,
140            change the translation function to return strings in internal
141            representation even on unicode builds of wxPython
142    
143            * Thuban/Model/load.py (SessionLoader.check_attrs): Decode
144            filenames too.
145            (SessionLoader.start_clrange): Use check_attrs to decode and check
146            the attributes.
147    
148            * Thuban/Model/xmlreader.py (XMLReader.encode): Use
149            internal_from_unicode to convert unicode strings.
150    
151            * Thuban/Model/xmlwriter.py (XMLWriter.encode): Use
152            unicode_from_internal when applicable
153    
154            * test/runtests.py (main): New command line option:
155            internal-encoding to specify the internal string encoding to use
156            in the tests.
157    
158            * test/support.py (initthuban): Set the internal encoding to
159            latin-1
160    
161            * test/test_load.py (TestSingleLayer.test, TestClassification.test)
162            (TestLabelLayer.test): Use the internal string representation when
163            dealing with non-ascii characters
164    
165            * test/test_load_1_0.py (TestSingleLayer.test)
166            (TestClassification.test, TestLabelLayer.test): Use the internal
167            string representation when dealing with non-ascii characters
168    
169            * test/test_load_0_9.py (TestSingleLayer.test)
170            (TestClassification.test): Use the internal string representation
171            when dealing with non-ascii characters
172    
173            * test/test_load_0_8.py (TestUnicodeStrings.test): Use the
174            internal string representation when dealing with non-ascii
175            characters
176    
177            * test/test_save.py (XMLWriterTest.testEncode)
178            (SaveSessionTest.testClassifiedLayer): Use the internal string
179            representation when dealing with non-ascii characters where
180            applicable
181    
182    2005-06-30  Bernhard Herzog  <[email protected]>
183    
184            * test/runtests.py: Untabify.
185    
186    2005-06-30  Bernhard Herzog  <[email protected]>
187    
188            * Thuban/UI/renderer.py (ScreenRenderer.draw_selection_incrementally):
189            untabify.
190    
191    2005-06-30  Bernhard Herzog  <[email protected]>
192    
193            * Extensions/ogr/test/__init__.py: Add missing coding directive
194    
195    2005-06-28  Jan-Oliver Wagner <[email protected]>
196    
197            * Thuban/UI/renderer.py (ScreenRenderer.draw_selection_incrementally):
198            Use the default size for rendering selected items of default type.
199            Fixes part 2 of https://intevation.de/rt/webrt?serial_num=3149
200    
201    2005-06-28  Jan-Oliver Wagner <[email protected]>
202    
203            * Extensions/importAPR/apr.py (APR_BShSym): Extend by 'Stripple'.
204            (APR_TClr.GetThubanColor): Fix bug in color interpretation.
205            Thanks to Frank Koormann who identified this problem.
206    
207            * Extensions/importAPR/importAPR.py (APR_VShSym): New. Just
208            another symbol identified.
209    
210    2005-06-27  Jan-Oliver Wagner <[email protected]>
211    
212            * Doc/manual/thuban-manual-de.xml: More translations.
213    
214    2005-05-12  Jonathan Coles <[email protected]>
215            
216            * Thuban/UI/projdialog.py: Add missing import, which led to an
217            exception when opening a layer's projection.
218    
219    2005-05-09  Bernhard Herzog  <[email protected]>
220    
221            * test/support.py (FileLoadTestCase.filename): Fix doc-string.
222    
223    2005-05-09  Bernhard Herzog  <[email protected]>
224    
225            * Thuban/Model/postgisdb.py (PostGISConnection.connect): Set the
226            connection to autoconnect.  Fixes RT#3148.
227    
228            * test/test_postgis_db.py
229            (TestPostGISSpecialCases.test_simple_error_handling): New test
230            that attempts to reproduce RT#3148.
231    
232    2005-05-06  Jonathan Coles <[email protected]>
233    
234            Add support for saving and loading the opacity and mask type
235            properties of RasterLayers. Also add support for proper use
236            of alpha information while drawing images not in 'RAW' format.
237            If transparency in an image format (e.g, PNG) is supported by
238            wxWidgets then the image would previously have been draw with
239            transparent regions, but the opaque regions would have been
240            unaffected by a change in the layer's opacity. This patch
241            corrects the problem.
242    
243            * Thuban/Model/layer.py (RasterLayer): Added opacity and
244            masktype parameters to the constructor, and set the
245            appropriate variables to those values.
246    
247            * Thuban/Model/load.py (SessionLoader.start_rasterlayer): Added
248            code to read the opacity and mask type of the layer and construct
249            a new layer with the additional parameters.
250    
251            * Thuban/Model/save.py (SessionSaver.write_layer): Added code
252            to save the opacity and mask type of a layer.
253    
254            * Thuban/UI/baserenderer.py (BaseRenderer.draw_raster_layer): Pass
255            the opacity of the layer to draw_raster_data rather than the layer.
256            (BaseRenderer.draw_raster_data): Remove the layer parameter because
257            the function doesn't need to know about the layer. Add the optional
258            opacity parameter whose default is 1.0. Add 'PNG' as a supported
259            graphics format.
260    
261            * Thuban/UI/renderer.py (MapRenderer.draw_raster_data): Fixed
262            signature to match that in BaseRenderer. Use the new opacity argument
263            in place of calling layer.Opacity(). In the case where the
264            format is not 'RAW', alpha_data is None and the loaded image has
265            alpha information, use the file's alpha information. This is
266            still subject to the layer's opacity setting.
267    
268            * test/test_baserenderer.py (SimpleRenderer.draw_raster_data):
269            Fixed signature to match that in BaseRenderer.
270    
271            * test/test_load.py (TestRasterLayer): Change file_contents to
272            include opacity and masktype variables.
273            (TestRasterLayer.test): Include tests for opacity and masktype
274            changes.
275    
276            * test/test_save.py (SaveSessionTest.testRasterLayer): Restructure
277            test to cover a variety of combinations of masktype and opacity
278            settings.
279    
280    2005-05-02  Jan-Oliver Wagner <[email protected]>
281    
282            * debian/rules: add --use-wx-python-swig-hack
283            to the build command.
284            Thanks to Moritz Lennert for pointing this out.
285    
286    2005-04-28  Jan-Oliver Wagner <[email protected]>
287    
288            Introduce OGRFileShapeStore in ogr extension.
289            This allows at least that loaded shapefile shape stores
290            can be saved correctly in the thuban session file
291            and reloaded again (reload is via core shapefile
292            routine, not OGR). For other types, .thuban files
293            can not be reloaded for the time being.
294    
295            * Extensions/ogr/ogrshapes.py (OGRFileShapeStore): New. This
296            class ist to be used for any file-based shape stores
297            accessed through OGR.
298    
299            * Extensions/ogr/ogrstart.py (open_with_ogr): Added
300            forgotten _ for i18n. Adapted call OpenFileShapestore
301            regarding new parameter.
302            (OpenFileShapestore): Use OGRFileShapeStore instead of
303            OGRShapeStore. Fix return value (None instead of null).
304            Add new parameter "mainwindow" to avoid accessing global
305            context.
306    
307    2005-04-27  Jan-Oliver Wagner <[email protected]>
308    
309            Introduce FileShapeStore as generalization for
310            file-based shape stores. In a first instance
311            this allows additional modules to handle shapefile
312            format as well, namely the OGR extension.
313    
314            * Thuban/Model/data.py: Various small fixes in doc-strings.
315            (FileShapeStore): New class.
316            (ShapefileStore): Derive from FileShapeStore.
317            (ShapefileStore.__init__): Call __init__ of FileShapeStore,
318            rename self.table to self._table, initialize self._bbox
319            (ShapefileStore._open_shapefile): Use self._bbox instead of self.bbox
320            and self.FileName() instead of self.filename.
321            (ShapefileStore.Table): Use self._table instead of self.table.
322            (ShapefileStore.FileName): Removed (moved to FileShapeStore).
323            (ShapefileStore.BoundingBox):  Use self._bbox instead of self.bbox.
324    
325            * Thuban/Model/save.py: Replace ShapefileStore by FileShapeStore.
326            (SessionSaver.write_data_containers): Only use methods of the
327            base class FileShapeStore.
328    
329    2005-04-26  Martin Schulze  <[email protected]>
330    
331            * Extensions/wms/wms.py (render_wms_layer): Adjusted the render
332            function to the modified render engine
333    
334    2005-04-25  Martin Schulze  <[email protected]>
335    
336            * Thuban/UI/renderer.py (MapRenderer.projected_raster_layer):
337            Added a description according to the CVS log message
338    
339    2005-04-23  Martin Schulze  <[email protected]>
340    
341            * Thuban/UI/renderer.py: Added a missing import
342    
343    2005-04-23  Russell Nelson  <[email protected]>
344    
345            * Thuban/UI/view.py (MapCanvas.OnMiddle{Up,Down}): Changed the
346            way the previous tool is remembered, so that middle-button
347            panning works even if you haven't selected a tool.
348    
349    2005-04-11  Bernhard Herzog  <[email protected]>
350    
351            * libraries/thuban/wxproj.cpp: Move the compatibility code that
352            deals with the wxPython 2.4 version of wxPython.h into the #ifdef
353            branch that includes wxPython.h because it's only needed when
354            wxPython.h is used.  Also, it won't compile when
355            USE_WX_PYTHON_SWIG_HACK is set otherwise.
356    
357    2005-04-07  Bernhard Herzog  <[email protected]>
358    
359            * Thuban/UI/classifier.py (ClassGrid.__init__): Use -1 as the ID.
360            (ID_CLASS_TABLE): Removed. It wasn't used anywhere except in
361            ClassGrid.__init__ and it's value is outside of the valid
362            range (must be < 32768).  wxPython 2.5 complains about it with an
363            exception.
364    
365    2005-04-05  Jan-Oliver Wagner <[email protected]>
366    
367            * Doc/manual/thuban-manual-de.xml: More translations.
368    
369    2005-04-05  Bernhard Herzog  <[email protected]>
370    
371            * libraries/thuban/wxproj.cpp: Make it work with a wxPython.h from
372            wxPython 2.4 as well.  Also, remove a now obsolete comment.
373    
374    2005-04-05  Bernhard Herzog  <[email protected]>
375    
376            Use wxPython.h by default but provide a workaround when it isn't
377            available.
378    
379            * setup.py (wxproj_extension): New variable.  Assign the Extension
380            instance for Lib.wxproj to this variable instead of putting it
381            directly into the listso that it can be accessed by other code
382            later.
383            (thuban_build_ext.user_options): Added boolean option
384            --use-wx-python-swig-hack.
385            (thuban_build_ext.initialize_options): Initialize the new option
386            to False.
387            (thuban_build_ext.finalize_options): If the new option was given,
388            define the preprocesser macro USE_WX_PYTHON_SWIG_HACK.
389            (thuban_build_ext): Update the doc-string
390    
391            * libraries/thuban/wxproj.cpp: Normally we use
392            wx/wxPython/wxPython.h now.  Only if USE_WX_PYTHON_SWIG_HACK is
393            defined, use swigPtrConvertHack.h instead.
394    
395            * libraries/thuban/swigPtrConvertHack.h: Remove the code that was
396            copied over from wxPython.h.
397            (decode_pointer_new): New.  Equivalent of decode_pointer for
398            wxPython 2.5.
399            (wxPyConvertSwigPtr): Modified to cope with wxPython 2.5 as well.
400    
401            * README: Add section on potential build problems which explains
402            how the work-around for a missing wxPython.h is activated.
403    
404    2005-03-29  Bernhard Herzog  <[email protected]>
405    
406            * test/postgissupport.py (find_postgis_sql): Added yet another
407            potential location for (lw)postgis.sql because the file has moved
408            again in postgis 1.0.0 rc4.
409    
410    2005-03-29  Bernhard Herzog  <[email protected]>
411    
412            * Thuban/UI/legend.py (BMP_SIZE_W, BMP_SIZE_H): Set both to 16 to
413            match the site of the legend_icon_layer icon.  Otherwise wxpython
414            2.5 complains when the legend is created with the error:
415    
416            PyAssertionError: C++ assertion "(bitmap.GetWidth() == m_width &&
417            bitmap.GetHeight() == m_height) || (m_width == 0 && m_height ==
418            0)" failed in ./src/generic/imaglist.cpp(81): invalid bitmap size
419            in wxImageList: this might work on this platform but definitely
420            won't under Windows.
421    
422    2005-03-23  Jonathan Coles <[email protected]>
423    
424            These changes add support for adjusting the opacity of a raster layer.
425    
426            * Thuban/Model/layer.py (RasterLayer.Opacity): Replaces AlphaOpacity.
427            (RasterLayer.SetOpacity): Replaces SetAlphaOpacity. Also triggers
428            a LAYER_CHANGED event if the opacity actually changes.
429    
430            * Thuban/UI/baserenderer.py (BaseRenderer.draw_raster_data): Added
431            layer parameter needed in the implementation of this method in
432            renderer.py.
433    
434            * Thuban/UI/layerproperties.py (LayerProperties.dialog_layout): Fixed
435            typo 00 -> 0.
436    
437            * Thuban/UI/rasterlayerproperties.py (RasterLayerProperties): Added
438            control to adjust opacity.
439    
440            * Thuban/UI/renderer.py (MapRenderer.draw_raster_data): Scale the
441            alpha data based on the opacity level of the layer.
442    
443            * test/test_baserenderer.py (SimpleRenderer.draw_raster_data): Now
444            accepts a layer parameter.
445    
446            * test/test_layer.py (TestLayerModification.test_raster_layer):
447            Rename opacity method calls and add test for LAYER_CHANGED.
448    
449    2005-03-16  Bernhard Herzog  <[email protected]>
450    
451            * test/test_connector.py (DeletionTestMixin.check_deletions)
452            (DeletionTestMixin.check_deletetions): renamed to check_deletions.
453            update the callers.
454    
455    2005-03-14  Jan-Oliver Wagner <[email protected]>
456    
457            * Doc/manual/thuban-manual-de.xml: More translations.
458    
459    2005-03-10  Jan-Oliver Wagner <[email protected]>
460    
461            Introducing initialization callbacks for extensions.
462    
463            * Thuban/UI/extensionregistry.py (ExtensionDesc.__init__): Added
464            optional parameter init_callback.
465            (ExtensionDesc.init_ext): New. Executes the callback and sets
466            a status.
467    
468            * Thuban/UI/application.py (ThubanApplication.OnInit): Add the
469            initialization of the extensions.
470            (ThubanApplication.init_extensions): Init all extensions.
471    
472            * Thuban/UI/about.py (About.__init__): Added status of the extensions
473            to the about text.
474    
475            * Extensions/gns2shp/__init__.py: Added init method for Extension
476            description.
477            (init): New. Contains the initialization of the module.
478    
479    2005-03-04  Nina H�ffmeyer <[email protected]>
480    
481            * Extensions/ogr/ogrdialog.py: Added a dialog, which asks for
482            OGRConnection to open a datasource. Removed dialog to display all
483            available drivers. Added some doc strings.
484    
485            * Extensions/ogr/ogrstart.py: Added menu entry for opening an
486            OGRDatasource with a string. Added two opening methods which return an
487            OGRDatasource (either data from file or from DB).
488    
489            * Extensions/ogr/ogrshapes.py: Added class OGRGeometry, which
490            represents a geometry reference of an OGRFeature. OGRShape now has a
491            list of referenced geometry objects (important for geometry
492            collections).
493            For OGRShapeStores loaded from a DB an ID column can be specified now.
494    
495    2005-02-22  Jan-Oliver Wagner <[email protected]>
496    
497            * test/test_map.py (TestMapWithContents.test_tree_info):
498            Added label layer for comparison.
499    
500    2005-02-18  Jonathan Coles <[email protected]>
501    
502            * libraries/thuban/gdalwarp.cpp (GetImageData): Optimize the loop
503            which builds a mask. Handle the majority of an image in a loop,
504            creating 8 bits at a time. Later, handle the edge case where less
505            than 8 bits are packed.
506    
507    2005-02-18  Bernhard Herzog  <[email protected]>
508    
509            * test/test_baserenderer.py (TestBaseRenderer.setUp): Fix
510            doc-string
511    
512    2005-02-18  Jonathan Coles <[email protected]>
513    
514            * setup.py: Remove wx_cs_params from gdal compile options.
515    
516    2005-02-18  Jonathan Coles <[email protected]>
517    
518            Refactored baserenderer.py and renderer.py to remove baserenderer.py's
519            dependencies on wxPython. Added a new method projected_raster_layer()
520            that returns a raster layer image in projected space. This must be
521            implemented in classes derived from BaseRenderer. This also eliminates
522            the dependency on gdal in baserenderer.py.
523    
524            * Thuban/UI/baserenderer.py (BaseRenderer.draw_raster_layer): Call
525            new projected_raster_layer() to get projected raster image instead
526            of directly calling ProjectRasterFile().
527            (BaseRenderer.projected_raster_layer): New. This must be implemented
528            by derived classes. It takes almost the same arguments as ProjectRasterFile
529            did and returns a projected image with mask and alpha data (if requested).
530            (BaseRenderer.render_map_incrementally): Remove the check for gdal since
531            that check will be done in MapRenderer.projected_raster_layer(). This
532            also allows other implementations to use different projection code.
533    
534            * Thuban/UI/renderer.py (MapRenderer.projected_raster_layer):
535            Implementation of BaseRenderer.projected_raster_layer. Checks for
536            gdal support and wxPython version. Also handles exceptions from
537            ProjectRasterFile.
538    
539            * libraries/thuban/gdalwarp.cpp: Removed checks for wxPython versions
540            and added a variable which can be set through the options argument
541            of ProjectRasterFile.
542    
543            * test/test_baserenderer.py (SimpleRenderer.projected_raster_layer): New.
544            Calls ProjectRasterFile and returns the result.
545            (TestBaseRenderer.test_projected_raster_layer): New. Tests the results
546            of calling projected_raster_layer() with different options.
547            (TestBaseRenderer.test_raster_no_projection): Removed tests based on
548            wxPython version and all tests of masks and alpha channels. These are
549            now in test_projected_raster_layer().
550    
551    2005-02-17  Jan-Oliver Wagner <[email protected]>
552    
553            * Thuban/Model/map.py, Thuban/Model/label.py: Fixed
554            doc-strings to comply with coding_guidelines.
555    
556    2005-02-17  Jan-Oliver Wagner <[email protected]>
557    
558            Docstring improvements and minor fixes for labellayer.
559    
560            * Thuban/Model/map.py:
561            (Map, Map.Destroy, Map.RemoveLayer, Map.ClearLayers,
562            Map.Layers, Map.HasLayers, Map.MoveLayerToTop,
563            Map.RaiseLayer, Map.LowerLayer, Map.MoveLayerToBottom,
564            Map.ProjectedBoundingBox, Map.GetProjection): Improved/added
565            doc string.
566            (Map.BoundingBox): Removed superfluous test for label_layer
567            and improved doc string.
568            (Map.TreeInfo): Added label_layer and improved sdo string.
569    
570            * Thuban/Model/label.py: Added import of _.
571            (Label, Label.__init__): Improved/added doc string.
572            (LabelLayer, LabelLayer.__init__, LabelLayer.Labels,
573            LabelLayer.RemoveLabel, LabelLayer.ClearLabels):
574            Improved/added doc string.
575            (LabelLayer.AddLabel): Use already defined names for
576            align strings and improved doc string.
577            (LabelLayer.TreeInfo): New. Return the object data for
578            the tree view.
579    
580    2005-02-16  Jonathan Coles <[email protected]>
581    
582            Further wxPython 2.5 changes using patches from Daniel Calvelo Aros
583            so that that wxproj doesn't crash. Added GUI support for selecting
584            alpha channel (opacity can't be selected yet).
585    
586            NOTE: If wxPython.h is including in future distribution packages
587            then it will not be necessary to have the files swigPtrConvertHack.h
588            and wxPython_int.h included with Thuban. This is hopefully
589            a temporary workaround.
590    
591            * setup.py (thuban_build_ext.finalize_options): gdalwarp needs
592            access to the macro wxCHECK_VERSION so that it will properly
593            generate a bit mask. There was a problem between wx2.4 and wx2.5
594            that this works around.
595    
596            * Thuban/Model/layer.py (RasterLayer.UseMask): Removed in favor
597            of RasterLayer.MaskType.
598            (RasterLayer.SetUseMask): Removed in favor of RasterLayer.SetMaskType
599            (RasterLayer.MaskType): New. Returns the type of mask to use. Can
600            specify none, a bitmap, or an alpha channel.
601            (RasterLayer.SetMaskType): New. Set what kind of mask to use.
602    
603            * Thuban/UI/baserenderer.py (BaseRenderer.draw_raster_layer):
604            Set the raster warping options for the mask based on the value
605            of RasterLayer.MaskType.
606    
607            * Thuban/UI/legend.py (LegendTree.__FillTreeLayer): Remove
608            deprecated calls to SetItemSelectedImage in favor of SetItemImage
609            with wxTreeItemIcon_Selected.
610    
611            * Thuban/UI/rasterlayerproperties.py: Support selecting to use
612            an alpha channel for the mask.
613    
614            * Thuban/UI/renderer.py (MapRenderer.draw_raster_data): Use alpha
615            data if it is available and an alpha channel is supported under
616            the current version of wxPython.
617    
618            * libraries/thuban/gdalwarp.cpp (GetImageData): Added compiler define
619            to select whether 1's or 0's select the desired portion of an image
620            in the bit mask. wx2.4 has a bug where the documentation is the opposite
621            from behavior.
622            (ProjectRasterFile): Only generate an alpha channel if the version
623            of wxPython is >= 2.5.3.
624    
625            * libraries/thuban/wxproj.cpp: Applied patches from Daniel Calvelo Aros.
626            When wxPython >= 2.5.3 use the special swig functions to decode an
627            object's address.
628    
629            * libraries/thuban/swigPtrConvertHack.h: Includes conditional code
630            based on the version of wxPython. If >= 2.5.3 use the special swig
631            functions from wxPython to decode wxPython objects, otherwise use
632            the old method of retrieving the address from the object __repr__ string.
633    
634            * libraries/thuban/wxPython_int.h: Copied from wxPython source.
635            Unnecessary code was removed to make it smaller.
636    
637            * test/test_baserenderer.py (TestBaseRenderer.test_raster_no_projection):
638            Add tests for returning an alpha channel.
639    
640            * test/test_layer.py (TestLayerModification.test_raster_layer): Fix
641            tests that used removed functions UseMask and SetUseMask
642    
643    
644    2005-02-08  Bernhard Herzog  <[email protected]>
645    
646            More wxPython 2.5 changes.  This time taken from a patch from
647            Daniel Calvelo Aros.
648    
649            * Thuban/UI/tableview.py (QueryTableFrame.__init__)
650            (QueryTableFrame.__init__): Pass the size of a spacer as a single
651            item.
652    
653            * Thuban/UI/projdialog.py (ProjFrame.build_dialog)
654            (ProjFrame.build_dialog): Pass the size of a spacer as a single
655            item.
656    
657            * Thuban/UI/dbdialog.py (ChooseDBTableDialog.__init__): Pass the
658            size of a spacer as a single item.
659    
660            * Thuban/UI/classifier.py (Classifier.dialog_layout): Pass the
661            size of a spacer as a single item.
662    
663    2005-02-08  Bernhard Herzog  <[email protected]>
664    
665            Compatibility with wxPython 2.5.  The changes should make it work
666            better with 2.5 while still keeping compatibility with 2.4.  There
667            are still problems with 2.5, though.
668    
669            * Thuban/UI/dock.py (DockableWindow.__CreateBorder): Pass the size
670            of a spacer as a single item.
671    
672            * Thuban/UI/classifier.py (ClassGroupPropertiesCtrl): Derive only
673            from wxControl
674    
675            * Thuban/UI/legend.py (LegendTree): When running with wxPython <
676            2.5, add an implementation of the GetFirstChild method that does
677            not require the second parameter.
678            (LegendTree.find_layer, LegendTree._OnMsgMapLayersAdded)
679            (LegendTree._OnMsgMapLayersRemoved, LegendTree.DeleteAllItems)
680            (LegendTree.DeleteChildren, LegendTree.__ShowHideLayer): Do not
681            pass the second parameter to GetFirstChild
682    
683    2005-02-08  Nina H�ffmeyer <[email protected]>
684    
685            * Extensions/ogr/ogrshapes.py: Removed some print commands.
686    
687            * Extensions/ogr/ogrstart.py: Changed the GUI. OGR is no longer an
688            additional menu but appears as a possibility in the menu Map.
689    
690    2005-02-07  Jonathan Coles <[email protected]>
691            * libraries/thuban/gdalwarp.cpp: Removed the macros PYTHON_ERR
692            and PYTHON_ERRF since they were no longer necessary.
693    
694    2005-02-07  Bernhard Reiter <[email protected]>
695            * Thuban/UI/classifier.py (ClassGrid.DeleteSelectedRows):
696            Enable translation for message string.
697    
698    2005-02-06  Martin Schulze  <[email protected]>
699    
700            * Extensions/wms/infodialog.py (wmsInfoDialog.__init__): Adjusted
701            the arguments of the contstructor to fit the global scheme
702    
703    2005-01-31  Nina H�ffmeyer <[email protected]>
704    
705            * Extensions/ogr/ogrdialog.py: Added class ogrdialog.py, which provides
706            some dialogs needed to start ogr.
707            
708            * Extensions/ogr/__init__.py: Changed comments to avoid encoding
709            warnings.
710    
711            * Extensions/ogr/test/test_OGRShapestore.py: Changed comments to avoid
712            encoding warnings.
713    
714    2005-01-28  Jonathan Coles <[email protected]>
715    
716            * libraries/thuban/gdalwarp.cpp (GetImageData): Recode how the
717            mask is packed into a bit array. It's now slightly faster.
718    
719    2005-01-28  Jonathan Coles <[email protected]>
720    
721            * Thuban/Model/layer.py (RasterLayer.__init__): Make use_mask
722            default to true.
723    
724            * Thuban/Model/load.py (SessionLoader.start_rasterlayer): Remove
725            code that loads the state of the layer's use_mask flag. Its
726            usefulness is still being debated.
727    
728            * Thuban/Model/save.py (SessionSaver.write_layer): Remove
729            code that saves the state of the layer's use_mask flag. Its
730            usefulness is still being debated.
731    
732            * Thuban/UI/baserenderer.py (BaseRenderer.draw_raster_layer): Pass
733            options to ProjectRasterFile based on the state of layer.UseMask().
734            Catch more exceptions from ProjectRasterFile so that Thuban doesn't
735            quit is there is a problem projecting.
736            (BaseRenderer.draw_raster_data): Change the documentation to
737            describe the new format (XBM) that the mask data will be in.
738    
739            * Thuban/UI/renderer.py (MapRenderer.draw_raster_data): The mask
740            data is in XBM format when format='RAW' which means it doesn't
741            need to be converted to a wxImage before being used as a mask
742            for a wxBitmap. Assume that if format != 'RAW' that the image
743            data and mask data are in the same format.
744    
745            * libraries/thuban/gdalwarp.cpp (GetImageData): If alpha is enabled
746            and a mask is requested, convert the alpha band to a bit array in
747            XBM format. if an alpha channel is requested, simply return the
748            data in the alpha band. Provide better error handling by returning
749            python error messages (also fixes RT #2947).
750            (ProjectRasterFile): Support multiple mask options, rather than simply
751            a flag indicating that a mask should or should not be used. Provide
752            better error handling by returning python error messages.
753    
754            * test/test_baserenderer.py (TestBaseRenderer.test_raster_no_projection):
755            Add mask data to test.
756    
757            * test/test_layer.py (TestLayer.test_raster_layer): Test that a layer
758            should use the mask by default.
759            (TestLayerModificaton.test_raster_layer): Test that a layer should use
760            the mask by default.
761    
762            * test/test_load.py (TestRasterLayer.test): Remove testing for
763            use_mask flag in file.
764    
765            * test/test_save.py (SaveSessionTest.testRasterLayer): Remove testing
766            for use_mask in file.
767    
768            * test/test_load_1_0_1.py: Removed. Shouldn't have been checked in.
769            
770    2005-01-26  Jonathan Coles <[email protected]>
771    
772            Add a new dialog box for raster layers. The dialog box allows
773            the user to toggle a mask that is generated by ProjectRasterFile
774            and is used to only draw the real parts of the projected image.
775    
776            * Thuban/UI/baserenderer.py (BaseRenderer.draw_raster_layer):
777            Instruct the warping code to generate a mask if the raster layer
778            requests one.
779            (BaseRenderer.draw_raster_data): Removed obsolete optional mask argument.
780    
781            * Thuban/UI/renderer.py (MapRenderer.draw_raster_data): Removed
782            obsolete optional mask argument.
783    
784            * Thuban/UI/classifier.py (Classifier): Change the parent class
785            to LayerProperties and rework the code to support layout calls
786            from the parent.
787            (Classifier.dialog_layout): New. Layout the dialog box.
788            (Classifier.map_layers_removed): Removed. Moved to parent class.
789            (Classifier.map_replaced): Removed. Moved to parent class.
790            (Classifier._OnTry): Renamed to OnTry to support parent class.
791            (Classifier.OnClose): Removed. Supplied in parent class.
792            (Classifier._OnCloseBtn): Removed. Supplied in parent class as OnCloseBtn.
793            (Classifier._OnOK): Renamed to OnOK to support parent class.
794            (Classifier._OnRevert): Renamed to OnRevert to support parent class.
795    
796            * Thuban/UI/layerproperties.py: New. Base class for layer properties
797            dialog boxes.
798    
799            * Thuban/UI/rasterlayerproperties.py: New. Class for displaying
800            raster layer properties.
801    
802            * libraries/thuban/gdalwarp.cpp: Replace the old gdalwarp.cpp code
803            with the non-simple version supplied with gdal. This allows added
804            features such as creating an alpha band.
805            (GetImageData): Generate a mask array from the alpha band that is
806            generated by gdal if the user has selected it. Try to support images
807            that have more than three bands, such as images with RGB plus an
808            alpha band.
809            (ProjectRasterFile): Convert python argument for mask and tell
810            gdal to enable or disable an alpha band.
811    
812            * Thuban/Model/layer.py (BaseLayer.Type): New. Returns a string
813            describing what kind of layer the class is. Defaults to "Unknown",
814            but should be overridden by subclasses.
815            (Layer.Type): New. Override base class method.
816            (RasterLayer.__init__): Create a flag for using a mask. Record extra
817            data from gdal for display in the properties dialog.
818            (RasterLayer.Type): New. Override base class method.
819            (RasterLayer.UseMask): New. Returns True if the mask should be used.
820            (RasterLayer.SetUseMask): New. Set if the mask should be used.
821            (RasterLayer.ImageInfo): New. Return extra information about the image.
822    
823            * Thuban/Model/load.py (SessionLoader.start_rasterlayer): Load
824            the mask information.
825    
826            * Thuban/Model/save.py (SessionSaver.write_layer): Save mask information.
827    
828            * Thuban/UI/mainwindow.py: Register the RasterLayerProperties and
829            Classifier classes as dialogs to use with the proper layer types.
830    
831            * test/test_baserenderer.py (TestBaseRenderer.test_raster_no_projection):
832            Fix test.
833    
834            * test/test_layer.py (TestLayer.test_raster_layer): Test new methods.
835            (TestLayerModification.build_path): New. Support function.
836            (TestLayerModification.test_raster_layer): New. Test new methods.
837    
838            * test/test_save.py (SaveSessionTest.testRasterLayer): Add tests for mask.
839    
840            * test/test_load.py (TestRasterLayer): Add tests for mask.
841    
842            * test/test_load_1_0_1.py: New. Copied from test_load.py.
843    
844            * test/test_baserenderer.py (SimpleRenderer.draw_raster_data): Removed
845            obsolete optional mask argument.
846    
847    2005-01-26  Nina H�ffmeyer <[email protected]>
848    
849            * Extensions/ogr/ogrshapes.py: Added two dictionaries to ShapeStore
850            which maps the ids and the ordinals. Fixed RowIdToOrdinal(),
851            RowOrdinalToId() and ReadRowAsDict().
852    
853            * Extensions/ogr/ogrstart.py: Added menu item which opens database
854            layers for existing database connections.
855    
856            * Extensions/ogr/test/test_OGRShapestore.py: Fixed a message string.
857    
858    
859    2005-01-26  Jan-Oliver Wagner <[email protected]>
860    
861            * Doc/manual/thuban-manual-de.xml: More translations.
862    
863    2005-01-24  Bernhard Herzog  <[email protected]>
864    
865            Rework the status bar updates a bit to make sure the message about
866            the projections is produced at the right times.
867    
868            * Thuban/UI/mainwindow.py (MainWindow.update_status_bar_messages):
869            New class variable with messages that may require a status bar
870            update.
871            (MainWindow.view_position_changed)
872            (MainWindow.update_status_bar): Rename from view_position_changed
873            to update_status_bar.  It's meaning has changed now that it may
874            also generate messages about problems with projection settings.
875            (MainWindow.__init__): Use the new update_status_bar_messages
876            class variable to subscribe update_status_bar
877            (MainWindow.set_position_text): Update doc-string.  This method
878            has to be renamed at some point.  See doc-string and comments.
879            (MainWindow.OnClose): Unsubscribe update_status_bar from all
880            messages in update_status_bar_messages
881    
882            * Thuban/UI/viewport.py (ViewPort.forwarded_map_messages): New
883            class attribute.  map messages to be forwarded by the viewport.
884            (ViewPort._subscribe_map, ViewPort._unsubscribe_map): (un)subscribe
885            the messages in forwarded_map_messages
886    
887    2005-01-21  Bernhard Herzog  <[email protected]>
888    
889            * test/postgissupport.py (PostGISDatabase.__init__): Tweak
890            doc-string
891            (find_postgis_sql): Update for postgis-1.0.0-rc1, which uses a
892            different name for the initialization SQL file.
893    
894    2005-01-21  Jonathan Coles <[email protected]>
895    
896            * Thuban/UI/baserenderer.py (proj_params_to_str): New. Takes
897            a projection and returns a formatted string representing the
898            parameters to feed to gdalwarp. This function eliminates
899            redundancy in draw_raster_layer().
900            (BaseRenderer.render_map_incrementally): Removed the optimization which
901            drew the top most raster layer first and then only those vector-
902            based layers that are above it. With the support for transparency
903            this optimization breaks correct behaviour.
904            (BaseRenderer.draw_raster_layer): Reorganize code to support possible
905            future enhancements to raster layer bounding box. The old behaviour has
906            not changed. Also, change calling parameters to draw_raster_data()
907            to specify new RAW data format and mask.
908            (BaseRenderer.draw_raster_data): Change signature to include an optional
909            parameter for mask information. Change documentation to mention
910            support for new parameter and added option for RAW data format.
911            The data argument is now a list of [width, height, data].
912    
913            * Thuban/UI/renderer.py (MapRenderer.draw_raster_data): Add new optional
914            mask parameter. Add new condition for RAW format, which
915            significantly reduces rendering time. Add condition for
916            mask parameter.
917    
918            * libraries/thuban/gdalwarp.cpp (GetImageData): New. Creates a
919            data array of RGB values from the projected image returned from
920            the gdal warping functions. In the case of palette based images, it
921            converts the NO_DATA index to the mask color.
922            (ProjectRasterFile): Removed all custom memory driver references
923            and replaced it with the standard in-memory dataset provided
924            by gdal. The return data is no longer a BMP file, but an array
925            of RGB values, one set triple per pixel.
926    
927            * libraries/thuban/bmpdataset.cpp: Removed. Unnecessary.
928            * libraries/thuban/cpl_mfile.h: Removed. Unnecessary.
929            * libraries/thuban/cpl_mfile.cpp: Removed. Unnecessary.
930    
931            * setup.py (thuban_build_ext.finalize_options): Removed mention
932            of cpl_mfile.cpp and bmpdataset.cpp files in the list of source
933            files. These are obsolete with the new version of gdalwarp.cpp
934    
935            * test/test_baserenderer.py (SimpleRenderer.draw_raster_data):
936            Updated signature.
937            (TestBaseRenderer.test_raster_no_projection): Changed the test
938            data to be data in the uncompressed RAW format returned from
939            ProjectRasterFile.
940    
941    2005-01-21  Jan-Oliver Wagner <[email protected]>
942    
943            * Thuban/UI/mainwindow.py (MainWindow.view_position_changed): Made
944            string available for i18n.
945    
946    2005-01-20  Russell Nelson  <[email protected]>
947    
948            * Resources/Projections/defaults.proj: Ruin the speling of the
949            Lambert-93 projection so it doesn't run into the wx UTF-8 bug.
950            It's the wrong thing to do in the long run, but it's necessary for
951            those users until that bug is fixed.  Otherwise the projection
952            dialog segfaults.  Better to annoy some Lambert-93 users with a
953            spelling mistake than every Fedora Core 3 user of Thuban-CVS.
954    
955    2005-01-20  Bernhard Reiter <[email protected]>
956    
957            * Thuban/UI/mainwindow.py (MainWindow.view_position_changed): Added
958            docstring and comment that the warning code here is a hack.
959    
960    2005-01-20  Russell Nelson  <[email protected]>
961    
962            * Thuban/UI/mainwindow.py (MainWindow.view_position_changed): Warn
963            user about misprojected layers when their lat/lon bounding
964            box exceeds rational lat/lon values.
965    
966    2005-01-20  Bernhard Reiter <[email protected]>
967    
968            * Thuban/UI/about.py (unicodeToLocale): Improved:
969            Use 'ascii' and then 'replace' for other characters
970            when getdefaultlocale returns None. Thanks to Bernhard H. .
971    
972    2005-01-20  Bernhard Reiter <[email protected]>
973    
974            * Thuban/UI/classgen.py (GenQuantilesPanel.OnRetrieve): Added a comment
975            that OnRangeText might be called twice and using None as argument.
976    
977    2005-01-20  Bernhard Reiter <[email protected]>
978    
979            * Thuban/UI/classgen.py (GenQuantilesPanel.OnRetrieve): Add a
980            OnRangeText(0) to work around a different in wx Behaviour noticed
981            on MacOSX, thanks to Lorenzo Moretti and Daniel Calvelo for the fix.
982    
983    2005-01-20  Bernhard Reiter <[email protected]>
984    
985            * Thuban/UI/about.py: take iso-8859-15 when getdefaultlocale returns
986            None. (Fixes rt#2910.)
987            
988    2005-01-18  Frank Koormann <[email protected]>
989    
990            New Extension: mouseposition
991            Tool to collect mouse click positions (map coordinates) in a dialog.
992    
993            * Extensions/mouseposition/__init__.py: New, extension registration
994    
995            * Extensions/mouseposition/mouseposition.py: New, implements the
996            dialog and adds a tool to Thuban mainwindow.
997    
998            * Extensions/mouseposition/position.xpm: New, icon for tool.
999    
1000    2005-01-14  Jan-Oliver Wagner <[email protected]>
1001    
1002            * Doc/manual/thuban-manual-de.xml: More translations.
1003    
1004    2005-01-11  Frank Koormann <[email protected]>
1005    
1006            * Thuban/UI/mainwindow.py (MainWindow.DuplicateLayer):
1007            Fix indention bug.
1008    
1009    2005-01-09  Frank Koormann <[email protected]>
1010    
1011            * Thuban/UI/mainwindow.py (MainWindow.DuplicateLayer):
1012            BugFix 2901: Explicitly copy layers ClassificationColumn since it
1013            is not part of the layers Classification.
1014    
1015    2005-01-03  Frank Koormann <[email protected]>
1016    
1017            * Thuban/UI/renderer.py (ScreenRendererdraw_selection_incrementally):
1018            BugFix 2883: Former implementation only worked on classified point
1019            layers: KeyError was raised, now use the default size if field is None.
1020    
1021    2004-12-27  Bernhard Reiter <[email protected]>
1022    
1023            svgexport 1.0.0cvs: Fixed label export.
1024    
1025            * Extensions/svgexport/test/test_svgmapwriter.py:
1026            class TestSVGRenderer(): New class; new test test_label_font().
1027    
1028            * Extensions/svgexport/svgmapwriter.py
1029            (SVGRenderer.label_font()): initialised Font size with self.factor now,
1030            makes test_label_font happy.
1031    
1032            * Extensions/svgexport/TODO: crossed out fixed label export item.
1033            Added item for options.
1034    
1035            * Extensions/svgexport/__init__.py: Bumped version to 1.0.0cvs.
1036    
1037    2004-12-27  Russell Nelson  <[email protected]>
1038    
1039            Middle mouse button pans.
1040    
1041            * Thuban/UI/view.py (MapCanvas.__init__): Subscribe also
1042            OnMiddleDown and OnMiddleUp events.
1043            (MapCanvas.OnMiddleDown): New. Activate the pan tool and remember the
1044            previously used tool.
1045            (MapCanvas.OnMiddleUp): New. Reactivate the remebered tool used before
1046            pressing the middle mouse button.
1047    
1048    2004-12-27  Jan-Oliver Wagner <[email protected]>
1049    
1050            * Doc/manual/thuban-manual-de.xml: More translations.
1051    
1052    2004-12-23  Jan-Oliver Wagner <[email protected]>
1053    
1054            * Thuban/UI/projdialog.py (ProjFrame.load_user_proj): Added a
1055            \n to stderr after the warnings. Thanks to Russell Nelson.
1056    
1057    2004-12-20  Nina Hueffmeyer <[email protected]>
1058    
1059            * Extensions/ogr/ogrshapes.py: Fixed some issues from
1060            Bernhard (coding guidelines etc.). Additionally it is now possible to
1061            display shapefiles containing feature collections (e.g.polygons
1062            with holes). Works with gdal 1.2.1 now.
1063    
1064            * Extensions/ogr/test/test_OGRShapestore.py: Fixed some issues
1065            from Bernhard (coding guidelines etc.). If ogr can't be imported,
1066            tests are skipped now.
1067    
1068            * Extensions/ogr/ogrstart.py: Fixed some typings.
1069    
1070    2004-12-20  Bernhard Reiter <[email protected]>
1071    
1072            * Extensions/svgexport/TODO: updated to add support for
1073            raster layers and labels for 1.0.1.
1074    
1075            * Extensions/svgexport/svgmapwriter.py (draw_raster_layer):
1076            Issue a warning now.
1077    
1078    2004-12-19  Bernhard Reiter <[email protected]>
1079    
1080            * Extensions/svgexport/TODO: Added idea to support triggering
1081            the application down the pipe.
1082    
1083    2004-12-19  Bernhard Reiter <[email protected]>
1084    
1085            svgexport: Improved code quality, mainly by better naming.
1086    
1087            * Extensions/svgexport/svgmapwriter.py:
1088            DrawPath() renamed to DrawPolygonPath(),
1089            added documentation, improved comments and variable names.
1090            
1091            * Extensions/svgexport/svgmapwriter.py,
1092              Extensions/svgexport/test/test_svgmapwriter.py:
1093            All using DrawPolygonPath() now, the default parameter closed=True
1094            omitted.
1095    
1096            * Extensions/svgexport/test/test_svgmapwriter.py:
1097            renamed test_polygon_opened() to test_polyline()
1098            renamed test_transparent_polygon() to test_transparent_polyline()
1099    
1100    2004-12-18  Jan-Oliver Wagner <[email protected]>
1101    
1102            Some fixes of gns2shp extension.
1103    
1104            * Extensions/gns2shp/test/__init__.py: New. Make this directory a
1105            package.
1106    
1107            * Extensions/gns2shp/test/test_gns2shp.py: Add some import paths
1108            dynamically.
1109    
1110            * Extensions/gns2shp/test/README: Simplified description how to test.
1111    
1112            * Extensions/gns2shp/gns2shp.py (gns2shp): Fixed doc-string,
1113            fixed some dimensions of fields according to the GNS documentation
1114            which seems to change undocumented.
1115            Now killing trailing \n and/or \r from MODIFY_DATE.
1116            This fixes RT#2453.
1117    
1118  2004-12-18  Bernhard Reiter <[email protected]>  2004-12-18  Bernhard Reiter <[email protected]>
1119    
1120          svgexport 1.0.0: Treats holes and islands nicely. Documentation added.          svgexport 1.0.0: Treats holes and islands nicely. Documentation added.
# Line 14  Line 1131 
1131          * Doc/manual/thuban-manual-de.xml: Copied English section about          * Doc/manual/thuban-manual-de.xml: Copied English section about
1132          svexport over.          svexport over.
1133    
1134          * Extensions/svgexport/__init__.py: Bumped version number to 1.0.0.          * Extensions/svgexport/__init__.py: Bumped version number to 1.0.0.
1135    
1136          * Extensions/svgexport/svgsaver.py,maplegend.py:          * Extensions/svgexport/svgsaver.py,maplegend.py:
1137          Moved from experimental to stable extension menu.          Moved from experimental to stable extension menu.

Legend:
Removed from v.2482  
changed lines
  Added in v.2671

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26