/[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 2525 by bernhard, Thu Jan 20 10:00:34 2005 UTC revision 2560 by bh, Tue Feb 8 20:25:22 2005 UTC
# Line 1  Line 1 
1    2005-02-08  Bernhard Herzog  <[email protected]>
2    
3            Compatibility with wxPython 2.5.  The changes should make it work
4            better with 2.5 while still keeping compatibility with 2.4.  There
5            are still problems with 2.5, though.
6    
7            * Thuban/UI/dock.py (DockableWindow.__CreateBorder): Pass the size
8            of a spacer as a single item.
9    
10            * Thuban/UI/classifier.py (ClassGroupPropertiesCtrl): Derive only
11            from wxControl
12    
13            * Thuban/UI/legend.py (LegendTree): When running with wxPython <
14            2.5, add an implementation of the GetFirstChild method that does
15            not require the second parameter.
16            (LegendTree.find_layer, LegendTree._OnMsgMapLayersAdded)
17            (LegendTree._OnMsgMapLayersRemoved, LegendTree.DeleteAllItems)
18            (LegendTree.DeleteChildren, LegendTree.__ShowHideLayer): Do not
19            pass the second parameter to GetFirstChild
20    
21    2005-02-08  Nina H�ffmeyer <[email protected]>
22    
23            * Extensions/ogr/ogrshapes.py: Removed some print commands.
24    
25            * Extensions/ogr/ogrstart.py: Changed the GUI. OGR is no longer an
26            additional menu but appears as a possibility in the menu Map.
27    
28    2005-02-07  Jonathan Coles <[email protected]>
29            * libraries/thuban/gdalwarp.cpp: Removed the macros PYTHON_ERR
30            and PYTHON_ERRF since they were no longer necessary.
31    
32    2005-02-07  Bernhard Reiter <[email protected]>
33            * Thuban/UI/classifier.py (ClassGrid.DeleteSelectedRows):
34            Enable translation for message string.
35    
36    2005-02-06  Martin Schulze  <[email protected]>
37    
38            * Extensions/wms/infodialog.py (wmsInfoDialog.__init__): Adjusted
39            the arguments of the contstructor to fit the global scheme
40    
41    2005-01-31  Nina H�ffmeyer <[email protected]>
42    
43            * Extensions/ogr/ogrdialog.py: Added class ogrdialog.py, which provides
44            some dialogs needed to start ogr.
45            
46            * Extensions/ogr/__init__.py: Changed comments to avoid encoding
47            warnings.
48    
49            * Extensions/ogr/test/test_OGRShapestore.py: Changed comments to avoid
50            encoding warnings.
51    
52    2005-01-28  Jonathan Coles <[email protected]>
53    
54            * libraries/thuban/gdalwarp.cpp (GetImageData): Recode how the
55            mask is packed into a bit array. It's now slightly faster.
56    
57    2005-01-28  Jonathan Coles <[email protected]>
58    
59            * Thuban/Model/layer.py (RasterLayer.__init__): Make use_mask
60            default to true.
61    
62            * Thuban/Model/load.py (SessionLoader.start_rasterlayer): Remove
63            code that loads the state of the layer's use_mask flag. Its
64            usefulness is still being debated.
65    
66            * Thuban/Model/save.py (SessionSaver.write_layer): Remove
67            code that saves the state of the layer's use_mask flag. Its
68            usefulness is still being debated.
69    
70            * Thuban/UI/baserenderer.py (BaseRenderer.draw_raster_layer): Pass
71            options to ProjectRasterFile based on the state of layer.UseMask().
72            Catch more exceptions from ProjectRasterFile so that Thuban doesn't
73            quit is there is a problem projecting.
74            (BaseRenderer.draw_raster_data): Change the documentation to
75            describe the new format (XBM) that the mask data will be in.
76    
77            * Thuban/UI/renderer.py (MapRenderer.draw_raster_data): The mask
78            data is in XBM format when format='RAW' which means it doesn't
79            need to be converted to a wxImage before being used as a mask
80            for a wxBitmap. Assume that if format != 'RAW' that the image
81            data and mask data are in the same format.
82    
83            * libraries/thuban/gdalwarp.cpp (GetImageData): If alpha is enabled
84            and a mask is requested, convert the alpha band to a bit array in
85            XBM format. if an alpha channel is requested, simply return the
86            data in the alpha band. Provide better error handling by returning
87            python error messages (also fixes RT #2947).
88            (ProjectRasterFile): Support multiple mask options, rather than simply
89            a flag indicating that a mask should or should not be used. Provide
90            better error handling by returning python error messages.
91    
92            * test/test_baserenderer.py (TestBaseRenderer.test_raster_no_projection):
93            Add mask data to test.
94    
95            * test/test_layer.py (TestLayer.test_raster_layer): Test that a layer
96            should use the mask by default.
97            (TestLayerModificaton.test_raster_layer): Test that a layer should use
98            the mask by default.
99    
100            * test/test_load.py (TestRasterLayer.test): Remove testing for
101            use_mask flag in file.
102    
103            * test/test_save.py (SaveSessionTest.testRasterLayer): Remove testing
104            for use_mask in file.
105    
106            * test/test_load_1_0_1.py: Removed. Shouldn't have been checked in.
107            
108    2005-01-26  Jonathan Coles <[email protected]>
109    
110            Add a new dialog box for raster layers. The dialog box allows
111            the user to toggle a mask that is generated by ProjectRasterFile
112            and is used to only draw the real parts of the projected image.
113    
114            * Thuban/UI/baserenderer.py (BaseRenderer.draw_raster_layer):
115            Instruct the warping code to generate a mask if the raster layer
116            requests one.
117            (BaseRenderer.draw_raster_data): Removed obsolete optional mask argument.
118    
119            * Thuban/UI/renderer.py (MapRenderer.draw_raster_data): Removed
120            obsolete optional mask argument.
121    
122            * Thuban/UI/classifier.py (Classifier): Change the parent class
123            to LayerProperties and rework the code to support layout calls
124            from the parent.
125            (Classifier.dialog_layout): New. Layout the dialog box.
126            (Classifier.map_layers_removed): Removed. Moved to parent class.
127            (Classifier.map_replaced): Removed. Moved to parent class.
128            (Classifier._OnTry): Renamed to OnTry to support parent class.
129            (Classifier.OnClose): Removed. Supplied in parent class.
130            (Classifier._OnCloseBtn): Removed. Supplied in parent class as OnCloseBtn.
131            (Classifier._OnOK): Renamed to OnOK to support parent class.
132            (Classifier._OnRevert): Renamed to OnRevert to support parent class.
133    
134            * Thuban/UI/layerproperties.py: New. Base class for layer properties
135            dialog boxes.
136    
137            * Thuban/UI/rasterlayerproperties.py: New. Class for displaying
138            raster layer properties.
139    
140            * libraries/thuban/gdalwarp.cpp: Replace the old gdalwarp.cpp code
141            with the non-simple version supplied with gdal. This allows added
142            features such as creating an alpha band.
143            (GetImageData): Generate a mask array from the alpha band that is
144            generated by gdal if the user has selected it. Try to support images
145            that have more than three bands, such as images with RGB plus an
146            alpha band.
147            (ProjectRasterFile): Convert python argument for mask and tell
148            gdal to enable or disable an alpha band.
149    
150            * Thuban/Model/layer.py (BaseLayer.Type): New. Returns a string
151            describing what kind of layer the class is. Defaults to "Unknown",
152            but should be overridden by subclasses.
153            (Layer.Type): New. Override base class method.
154            (RasterLayer.__init__): Create a flag for using a mask. Record extra
155            data from gdal for display in the properties dialog.
156            (RasterLayer.Type): New. Override base class method.
157            (RasterLayer.UseMask): New. Returns True if the mask should be used.
158            (RasterLayer.SetUseMask): New. Set if the mask should be used.
159            (RasterLayer.ImageInfo): New. Return extra information about the image.
160    
161            * Thuban/Model/load.py (SessionLoader.start_rasterlayer): Load
162            the mask information.
163    
164            * Thuban/Model/save.py (SessionSaver.write_layer): Save mask information.
165    
166            * Thuban/UI/mainwindow.py: Register the RasterLayerProperties and
167            Classifier classes as dialogs to use with the proper layer types.
168    
169            * test/test_baserenderer.py (TestBaseRenderer.test_raster_no_projection):
170            Fix test.
171    
172            * test/test_layer.py (TestLayer.test_raster_layer): Test new methods.
173            (TestLayerModification.build_path): New. Support function.
174            (TestLayerModification.test_raster_layer): New. Test new methods.
175    
176            * test/test_save.py (SaveSessionTest.testRasterLayer): Add tests for mask.
177    
178            * test/test_load.py (TestRasterLayer): Add tests for mask.
179    
180            * test/test_load_1_0_1.py: New. Copied from test_load.py.
181    
182            * test/test_baserenderer.py (SimpleRenderer.draw_raster_data): Removed
183            obsolete optional mask argument.
184    
185    2005-01-26  Nina H�ffmeyer <[email protected]>
186    
187            * Extensions/ogr/ogrshapes.py: Added two dictionaries to ShapeStore
188            which maps the ids and the ordinals. Fixed RowIdToOrdinal(),
189            RowOrdinalToId() and ReadRowAsDict().
190    
191            * Extensions/ogr/ogrstart.py: Added menu item which opens database
192            layers for existing database connections.
193    
194            * Extensions/ogr/test/test_OGRShapestore.py: Fixed a message string.
195    
196    
197    2005-01-26  Jan-Oliver Wagner <[email protected]>
198    
199            * Doc/manual/thuban-manual-de.xml: More translations.
200    
201    2005-01-24  Bernhard Herzog  <[email protected]>
202    
203            Rework the status bar updates a bit to make sure the message about
204            the projections is produced at the right times.
205    
206            * Thuban/UI/mainwindow.py (MainWindow.update_status_bar_messages):
207            New class variable with messages that may require a status bar
208            update.
209            (MainWindow.view_position_changed)
210            (MainWindow.update_status_bar): Rename from view_position_changed
211            to update_status_bar.  It's meaning has changed now that it may
212            also generate messages about problems with projection settings.
213            (MainWindow.__init__): Use the new update_status_bar_messages
214            class variable to subscribe update_status_bar
215            (MainWindow.set_position_text): Update doc-string.  This method
216            has to be renamed at some point.  See doc-string and comments.
217            (MainWindow.OnClose): Unsubscribe update_status_bar from all
218            messages in update_status_bar_messages
219    
220            * Thuban/UI/viewport.py (ViewPort.forwarded_map_messages): New
221            class attribute.  map messages to be forwarded by the viewport.
222            (ViewPort._subscribe_map, ViewPort._unsubscribe_map): (un)subscribe
223            the messages in forwarded_map_messages
224    
225    2005-01-21  Bernhard Herzog  <[email protected]>
226    
227            * test/postgissupport.py (PostGISDatabase.__init__): Tweak
228            doc-string
229            (find_postgis_sql): Update for postgis-1.0.0-rc1, which uses a
230            different name for the initialization SQL file.
231    
232    2005-01-21  Jonathan Coles <[email protected]>
233    
234            * Thuban/UI/baserenderer.py (proj_params_to_str): New. Takes
235            a projection and returns a formatted string representing the
236            parameters to feed to gdalwarp. This function eliminates
237            redundancy in draw_raster_layer().
238            (BaseRenderer.render_map_incrementally): Removed the optimization which
239            drew the top most raster layer first and then only those vector-
240            based layers that are above it. With the support for transparency
241            this optimization breaks correct behaviour.
242            (BaseRenderer.draw_raster_layer): Reorganize code to support possible
243            future enhancements to raster layer bounding box. The old behaviour has
244            not changed. Also, change calling parameters to draw_raster_data()
245            to specify new RAW data format and mask.
246            (BaseRenderer.draw_raster_data): Change signature to include an optional
247            parameter for mask information. Change documentation to mention
248            support for new parameter and added option for RAW data format.
249            The data argument is now a list of [width, height, data].
250    
251            * Thuban/UI/renderer.py (MapRenderer.draw_raster_data): Add new optional
252            mask parameter. Add new condition for RAW format, which
253            significantly reduces rendering time. Add condition for
254            mask parameter.
255    
256            * libraries/thuban/gdalwarp.cpp (GetImageData): New. Creates a
257            data array of RGB values from the projected image returned from
258            the gdal warping functions. In the case of palette based images, it
259            converts the NO_DATA index to the mask color.
260            (ProjectRasterFile): Removed all custom memory driver references
261            and replaced it with the standard in-memory dataset provided
262            by gdal. The return data is no longer a BMP file, but an array
263            of RGB values, one set triple per pixel.
264    
265            * libraries/thuban/bmpdataset.cpp: Removed. Unnecessary.
266            * libraries/thuban/cpl_mfile.h: Removed. Unnecessary.
267            * libraries/thuban/cpl_mfile.cpp: Removed. Unnecessary.
268    
269            * setup.py (thuban_build_ext.finalize_options): Removed mention
270            of cpl_mfile.cpp and bmpdataset.cpp files in the list of source
271            files. These are obsolete with the new version of gdalwarp.cpp
272    
273            * test/test_baserenderer.py (SimpleRenderer.draw_raster_data):
274            Updated signature.
275            (TestBaseRenderer.test_raster_no_projection): Changed the test
276            data to be data in the uncompressed RAW format returned from
277            ProjectRasterFile.
278    
279    2005-01-21  Jan-Oliver Wagner <[email protected]>
280    
281            * Thuban/UI/mainwindow.py (MainWindow.view_position_changed): Made
282            string available for i18n.
283    
284    2005-01-20  Russell Nelson  <[email protected]>
285    
286            * Resources/Projections/defaults.proj: Ruin the speling of the
287            Lambert-93 projection so it doesn't run into the wx UTF-8 bug.
288            It's the wrong thing to do in the long run, but it's necessary for
289            those users until that bug is fixed.  Otherwise the projection
290            dialog segfaults.  Better to annoy some Lambert-93 users with a
291            spelling mistake than every Fedora Core 3 user of Thuban-CVS.
292    
293    2005-01-20  Bernhard Reiter <[email protected]>
294    
295            * Thuban/UI/mainwindow.py (MainWindow.view_position_changed): Added
296            docstring and comment that the warning code here is a hack.
297    
298    2005-01-20  Russell Nelson  <[email protected]>
299    
300            * Thuban/UI/mainwindow.py (MainWindow.view_position_changed): Warn
301            user about misprojected layers when their lat/lon bounding
302            box exceeds rational lat/lon values.
303    
304    2005-01-20  Bernhard Reiter <[email protected]>
305    
306            * Thuban/UI/about.py (unicodeToLocale): Improved:
307            Use 'ascii' and then 'replace' for other characters
308            when getdefaultlocale returns None. Thanks to Bernhard H. .
309    
310    2005-01-20  Bernhard Reiter <[email protected]>
311    
312            * Thuban/UI/classgen.py (GenQuantilesPanel.OnRetrieve): Added a comment
313            that OnRangeText might be called twice and using None as argument.
314    
315    2005-01-20  Bernhard Reiter <[email protected]>
316    
317            * Thuban/UI/classgen.py (GenQuantilesPanel.OnRetrieve): Add a
318            OnRangeText(0) to work around a different in wx Behaviour noticed
319            on MacOSX, thanks to Lorenzo Moretti and Daniel Calvelo for the fix.
320    
321  2005-01-20  Bernhard Reiter <[email protected]>  2005-01-20  Bernhard Reiter <[email protected]>
322    
323          * Thuban/UiI/about.py: take iso-8859-15 when getdefaultlocale returns          * Thuban/UI/about.py: take iso-8859-15 when getdefaultlocale returns
324          None. (Fixes rt#2910.)          None. (Fixes rt#2910.)
325                    
326  2005-01-18  Frank Koormann <[email protected]>  2005-01-18  Frank Koormann <[email protected]>

Legend:
Removed from v.2525  
changed lines
  Added in v.2560

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26