/[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

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

Legend:
Removed from v.2509  
changed lines
  Added in v.2737

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26