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

Legend:
Removed from v.2531  
changed lines
  Added in v.2698

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26