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

Legend:
Removed from v.2548  
changed lines
  Added in v.2726

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26