/[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 1836 by bh, Tue Oct 21 09:00:19 2003 UTC revision 1880 by bh, Wed Oct 29 17:43:52 2003 UTC
# Line 1  Line 1 
1    2003-10-29  Bernhard Herzog  <[email protected]>
2    
3            * Thuban/UI/baserenderer.py
4            (BaseRenderer.draw_shape_layer_incrementally): Speed up the
5            special case of a classification that only has the default group
6    
7    2003-10-27  Bernhard Herzog  <[email protected]>
8    
9            * po/fr.po, po/es.po: Updated translations from Daniel Calvelo
10    
11            * po/de.po: Update.
12    
13            * Thuban/UI/application.py
14            (ThubanApplication.ShowExceptionDialog): Handle translation of the
15            dialog message properly
16    
17    2003-10-27  Bernhard Herzog  <[email protected]>
18    
19            Rework how localization works so that we use wx's translation
20            functions when running Thuban as a normal application but not when
21            we don't need any UI, such as in the test suite. See the comment
22            in Thuban/__init__.py for details
23    
24            * Thuban/__init__.py (_): Add one level of indirection to make the
25            translation handling more flexible and to make it possible to use
26            either wx's translation services or not.
27            (gettext_identity, translation_function_installed)
28            (install_translation_function): New function to help with this
29    
30            * Thuban/UI/__init__.py: Install the wx specific translation
31            function if it's OK to do that
32    
33            * test/support.py (initthuban): Install a dummy translation
34            function so that importing Thuban.UI doesn't install a wx specific
35            one for which would need to import wxPython
36    
37    2003-10-27  Bernhard Herzog  <[email protected]>
38    
39            * HOWTO-Release: Source archives should be created first and the
40            binary packages should be created from the source archives.
41            There's an official debian package now so there's no need to test
42            the rpm on debian anymore
43    
44    2003-10-27  Bernhard Herzog  <[email protected]>
45    
46            Several rendering changes:
47    
48             - Render the selection into a separate bitmap so that only that
49               bitmap needs to be redrawn when the selection changes
50    
51             - Render incrementally showing previews and allowing interaction
52               before rendering is complete
53    
54             - Update the renderer interface a bit. Most parameters of
55               RenderMap are now parameters of the constructor
56    
57            * Thuban/UI/baserenderer.py (BaseRenderer.__init__): Add the map
58            and the update region as parameters. Update the doc-string
59            (BaseRenderer.render_map_incrementally): New. Generator function
60            to renders the map incrementally
61            (BaseRenderer.render_map): Remove the map argument (it's now in
62            the constructor) and simply iterate over the
63            render_map_incrementally generator to draw the map.
64            (BaseRenderer.draw_shape_layer_incrementally)
65            (BaseRenderer.draw_shape_layer): Renamed to
66            draw_shape_layer_incrementally and changed into a generator that
67            yields True every 500 shapes. Used by render_map_incrementally to
68            render shape layers incrementally
69    
70            * Thuban/UI/renderer.py (ScreenRenderer.RenderMap): Removed the
71            map and region parameters which are now in the constructor
72            (ScreenRenderer.RenderMapIncrementally): New. Public frontend for
73            the inherited render_map_incrementally.
74            (BaseRenderer.draw_shape_layer): Removed.
75            (ScreenRenderer.draw_selection_incrementally): New. The selection
76            drawing part of the removed draw_shape_layer as a generator
77            (ScreenRenderer.layer_shapes): Update because of the region
78            parameter change
79            (ExportRenderer.__init__): New. Extend the inherited constructor
80            with the destination region for the drawing
81            (ExportRenderer.RenderMap): Removed the map and region parameters
82            which are now in the constructor
83    
84            * Thuban/UI/view.py (MapCanvas.PreviewBitmap): New. Return a
85            bitmap suitable for a preview in a tool
86            (CanvasPanTool.MouseMove): Use the PreviewBitmap method to get the
87            bitmap
88            (MapPrintout.draw_on_dc): Adapt to new renderer interface
89            (MapCanvas.OnPaint): Handle drawing the selection bitmap if it
90            exists
91            (MapCanvas.OnIdle): Update the logic to deal with incremental
92            rendering and the selection bitmap
93            (MapCanvas._do_redraw): Handle the instantiation of the render
94            iterator and the redraws during rendering
95            (MapCanvas._render_iterator): New. Generator to incrementally
96            redraw both bitmaps
97            (MapCanvas.Export): Adapt to new renderer interface.
98            (MapCanvas.full_redraw): Reset the selection bitmap and the
99            renderer iterator too
100            (MapCanvas.redraw_selection): New. Force a redraw of the selection
101            bitmap
102            (MapCanvas.shape_selected): Only redraw the selection bitmap
103    
104            * test/test_baserenderer.py
105            (TestBaseRenderer.test_polygon_no_projection)
106            (TestBaseRenderer.test_raster_no_projection)
107            (TestBaseRenderer.test_point_map_projection)
108            (TestBaseRenderer.test_point_layer_and_map_projection)
109            (TestBaseRenderer.test_point_layer_projection)
110            (TestBaseRenderer.test_point_with_classification): Adapt to new
111            renderer interface
112    
113    2003-10-24  Bernhard Herzog  <[email protected]>
114    
115            * libraries/thuban/wxproj.cpp (draw_polygon_shape)
116            (point_in_polygon_shape, shape_centroid): Raise an exception if
117            the shape can't be read. Previously invalid shape ids would lead
118            to a segfault.
119    
120            * test/test_wxproj.py (TestShapeCentroid.test_invalid_shape_id):
121            New. test whether an exception is raised for invalid shape ids
122    
123    2003-10-24  Jan-Oliver Wagner <[email protected]>
124    
125            * Thuban/Model/proj.py (Projection.GetProjectedUnits): Added 'longlat'
126            as alias for 'latlong'.
127    
128            * Thuban/UI/projdialog.py (ProjFrame.__init__): Added 'longlat'
129            as alias for 'latlong'.
130    
131    2003-10-24  Jan-Oliver Wagner <[email protected]>
132    
133            * Thuban/UI/projdialog.py (ProjFrame.proj_selection_changed): Set
134            the projection even for the UnknownPanel.
135            (UnknownProjPanel.__init__): Define the text and create the textctrl
136            widget.
137            (UnknownProjPanel._DoLayout): Replaced static text widget by the
138            textctrl created in __init__.
139            (UnknownProjPanel.SetProjection): Set the text for the text ctrl
140            including the parameters of the projection.
141            
142    2003-10-24  Jan-Oliver Wagner <[email protected]>
143    
144            * Resources/Projections/epsg.proj: New. This is a list of
145            EPSG codes with parameters for proj. The list has been
146            generated using devtools/create_epsg.py based on the
147            file nad/epsg of the proj 4.4.7 package. Four projection
148            definitions have been deleted as they are not accepted by proj:
149            "CH1903+ / LV95", "Bern 1898 (Bern) / LV03C", "CH1903 / LV03"
150            and "HD72 / EOV".
151    
152    2003-10-22  Bernhard Herzog  <[email protected]>
153    
154            Some more tweaks to the projection dialog which should fix RT
155            #1886.
156    
157            * Thuban/UI/projlist.py (ProjectionList.Destroy): Unsubscribe from
158            the ProjFile's messages and call the base class methods correctly
159            (ProjectionList.SelectProjection): Set the wxLIST_STATE_FOCUSED
160            flag on the newly selected item too. Otherwise some other item is
161            focused and the first time the focus is moved with the keyboard
162            the selection moves in unexpected ways.
163    
164            * Thuban/UI/projdialog.py (ProjFrame.__init__): Do not set the
165            focus on the OK button, only on the projection list. That way the
166            list really has the focus initially
167            (ProjFrame.OnClose): Call the projection list's Destroy method to
168            make it unsubscribe all messages
169    
170    2003-10-21  Bernhard Herzog  <[email protected]>
171    
172            Rework the projection dialog to fix a few bugs, including RT 2166
173            and most of 2168
174    
175            * Thuban/UI/projlist.py: New. The class ProjectionList is a
176            special wxListCtrl to show a list of projections in a more MVC
177            fashion
178    
179            * Thuban/UI/projdialog.py (ProjFrame): Substantial changes
180            throughout the class. The main change is to use the ProjectionList
181            class instead of a normal wxListBox. Also, add an explicit
182            "Unknown" projection to the projection choice control.
183            (ProjPanel.__init__): Add an "unknown" ellipsoid
184            (TMPanel.__init__, LCCPanel.__init__): Tweak the order of
185            instantiation of the panel's controls to make the tab-order more
186            natural
187    
188    2003-10-21  Bernhard Herzog  <[email protected]>
189    
190            * test/test_load.py (TestSingleLayer.file_contents)
191            (TestSingleLayer.test): Add non-ascii characters to the titles of
192            session, map and layer. This is effectively a port of the
193            TestUnicodeStrings test in test_load_0_8.py which for some reason
194            was only added there.
195    
196            * test/test_load_0_9.py (TestSingleLayer.file_contents)
197            (TestSingleLayer.test): Same as in test_load.py: add non-ascii
198            characters to the titles of session, map and layer,.
199    
200    2003-10-21  Bernhard Herzog  <[email protected]>
201    
202            Add EPSG projection handling to .thuban files
203    
204            * test/test_save.py (SaveSessionTest.dtd)
205            (SaveSessionTest.testEmptySession)
206            (SaveSessionTest.testLayerProjection)
207            (SaveSessionTest.testRasterLayer)
208            (SaveSessionTest.testClassifiedLayer)
209            (SaveSessionTest.test_dbf_table)
210            (SaveSessionTest.test_joined_table)
211            (SaveSessionTest.test_save_postgis): Update to 1.0-dev namespace
212            (SaveSessionTest.testSingleLayer): Update to 1.0-dev namespace and
213            use a and epsg projection to test saving them
214    
215            * test/test_load.py (LoadSessionTest.dtd): Update to 1.0-dev
216            namespace
217            (TestLayerVisibility.file_contents, TestLabels.file_contents)
218            (TestLayerProjection.file_contents)
219            (TestRasterLayer.file_contents, TestJoinedTable.file_contents)
220            (TestPostGISLayer.file_contents)
221            (TestPostGISLayerPassword.file_contents)
222            (TestLoadError.file_contents, TestLoadError.test): Update to use
223            1.0-dev namespace
224            (TestSingleLayer.file_contents, TestSingleLayer.test): Update to
225            use 1.0-dev namespace and use an EPSG projection to test whether
226            loading it works
227    
228            * test/test_load_0_9.py: New. Effectively a copy of test_load.py
229            as of Thuban 0.9. These are now tests to determine whether Thuban
230            can still read files generated by Thuban 0.9
231    
232            * Thuban/Model/save.py (SessionSaver.write)
233            (SessionSaver.write_session): Use the 1.0 dtd and 1.0-dev
234            namespace
235            (SessionSaver.write_projection): Write the projection's epsg
236            attribute
237    
238            * Thuban/Model/load.py (SessionLoader.__init__): Also accept the
239            thuban-1.0-dev.dtd namespace
240            (SessionLoader.check_attrs): Allow a callable object as conversion
241            too
242            (SessionLoader.start_projection, SessionLoader.end_projection)
243            (SessionLoader.start_parameter): Handle the epsg attribute and
244            rename a few instance variables to lower case
245    
246            * Resources/XML/thuban-1.0.dtd: New. Only difference to
247            thuban-0.9.dtd is the epsg attribute for projections.
248    
249    2003-10-21  Bernhard Herzog  <[email protected]>
250    
251            * test/runtests.py (main): Let the user specify which tests to run
252            on the command line
253    
254            * test/support.py (ThubanTestResult.getDescription): Override to
255            give a better short description. The description can be used as a
256            parameter to run_tests to run that particular test in isolation.
257    
258    2003-10-21  Frank Koormann   <[email protected]>
259    
260            Popup menu for legend. Scheduled for the 1.2 release this was too
261            simple to implement: The popup menu is bound to the legend tree, while
262            the events are hanlded by its anchestor, the legend panel. This
263            allows reuse of all the event handlers already implemented for the
264            legend toolbar buttons.
265    
266            * Thuban/UI/legend.py (LegendPanel.__init__): EVT_MENU macros
267            to add handlers for the events issued by the popup menu.
268            (LegendPanel._OnToggleVisibility): Handler for toggling layer
269            visibility event
270            (LegendPanel._OnProjection): Handler for layer projection event.
271            (LegendTree.__init__): Added EVT_TREE_ITEM_RIGHT_CLICK
272            (LegendTree._OnRightClick): Event handler for right click, select item
273            and pop up menu.
274            (LegendTree.ToggleVisibility): Toggle layer visibility
275            (LegendTree.LayerProjection): Raise layer projection dialog for
276            current layer.
277    
278  2003-10-21  Bernhard Herzog  <[email protected]>  2003-10-21  Bernhard Herzog  <[email protected]>
279    
280          * Resources/Projections/defaults.proj: Use correct DOCTYPE          * Resources/Projections/defaults.proj: Use correct DOCTYPE

Legend:
Removed from v.1836  
changed lines
  Added in v.1880

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26