/[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 1788 by bh, Wed Oct 8 10:39:32 2003 UTC revision 1908 by bh, Fri Oct 31 17:35:21 2003 UTC
# Line 1  Line 1 
1    2003-10-31  Bernhard Herzog  <[email protected]>
2    
3            * test/test_classification.py (TestClassification.setUp):
4            Subscribe to the CLASS_CHANGED messages
5            (TestClassification.tearDown): New. Destroy the classification
6            properly
7            (TestClassification.test_defaults): Add tests for the default line
8            width and whether no messages were sent yet
9            (TestClassification.test_set_default_properties): Add tests for
10            messages and setting the default line width
11            (TestClassification.test_add_singleton)
12            (TestClassification.test_add_range)
13            (TestClassification.test_multiple_groups): Add tests for messages
14    
15    2003-10-31  Bernhard Herzog  <[email protected]>
16    
17            Some more refactoring in preparation for new tests:
18    
19            * test/test_classification.py (TestClassification.setUp): New.
20            Instantiate the classification here. Update the test methods
21            accordingly.
22            (TestClassification.test_multiple_groups): Make sure that the two
23            singletons matching 1 are considered different.
24    
25    2003-10-31  Bernhard Herzog  <[email protected]>
26    
27            * test/test_classification.py (red, green, blue): New. These
28            constants were used in several cases. Update the relevant methods.
29            (TestClassification.test_defaults)
30            (TestClassification.test_set_default_properties)
31            (TestClassification.test_add_singleton)
32            (TestClassification.test_add_range)
33            (TestClassification.test_multiple_groups)
34            (TestClassification.test_deepcopy): New. These were formerly all
35            part of the single method test.
36            (TestClassification.test_deepcopy): Removed.
37            (TestClassIterator): Removed. The test case is now a method of
38            TestClassification since it tests part of the public interface of
39            Classification
40            (TestClassification.test_iterator): New. Used to be
41            TestClassIterator effectively
42    
43    2003-10-31  Jan-Oliver Wagner <[email protected]>
44    
45            GUIfied the functions of the profiling extension.
46    
47            * /Extensions/profiling/__init__.py: New: Init to make this
48            directory a package.
49    
50            * Extensions/profiling/profiling.py: Moved menu entries to
51            the Extensions menu. Applied _() for strings.
52            (profile_screen_renderer): Catch the detailed printout and present
53            it in a dialog.
54            (time_screen_renderer): Raise a dialog to present the result instead
55            of printing it to stdout.
56    
57    2003-10-31  Bernhard Herzog  <[email protected]>
58    
59            * test/test_classification.py (TestClassGroupProperties)
60            (TestClassGroup, TestClassGroupDefault, TestClassGroupRange)
61            (TestClassGroupSingleton, TestClassIterator, TestClassification):
62            Split TestClassification into several classes, one for each class
63            being tested. TestClassification itself now only tests
64            Classification. This split makes changes to the tests a bit easier
65    
66    2003-10-31  Bernhard Herzog  <[email protected]>
67    
68            * Extensions/profiling/profiling.py: New. Extension to measure
69            Thuban performance
70    
71    2003-10-31  Frank Koormann <[email protected]>
72    
73            Added two items to legend popup menu: Remove Layer and Show Layer Table
74    
75            * Thuban/UI/legend.py (LegendPanel._OnRemoveLayer,
76            LegendPanel._OnShowTable): New event handlers, call the corresponding
77            mainwindow methods.
78            (LegendTree._OnRightClick): Added items to popup menu.
79    
80    2003-10-30  Bernhard Herzog  <[email protected]>
81    
82            * Thuban/UI/dialogs.py (ThubanFrame.__init__): Handle
83            EVT_WINDOW_DESTROY
84            (ThubanFrame.OnDestroy): New. Handler for EVT_WINDOW_DESTROY. Does
85            nothing but is convenient for the derived classes.
86    
87            * Thuban/UI/tableview.py
88            (TableFrame.OnDestroy, LayerTableFrame.OnDestroy): New.
89            Unsubscribe the messages here not in OnClose because that might
90            get called multiple times. Fixes RT #2196
91            (TableFrame.OnClose, LayerTableFrame.OnClose): Removed. Not needed
92            anymore.
93    
94            * README: Update the minimum requirement for wxPython. Since we
95            now use the EVT_WINDOW_DESTROY event, we need at least 2.4.0.4,
96            the version in which that was introduced for all platforms
97    
98    2003-10-30  Frank Koormann <[email protected]>
99    
100            * Thuban/UI/join.py (JoinDialog.OnJoin): Wrapped the major parts of
101            the join process in a ThubanBeginBusyCursor, ThubanEndBusyCursor
102            frame.
103    
104    2003-10-30  Jan-Oliver Wagner <[email protected]>
105    
106            Improved APR import extension, added further EPSG definitions
107            and some cleanup regarding string class.
108    
109            * test/test_proj.py (TestProjection.test_get_projection_units_geo):
110            Added test for alias 'longlat'.
111    
112            * Resources/Projections/epsg-deprecated.proj: New. Contains
113            deprecated EPSG definitions.
114    
115            * Extensions/importAPR/odb.py (ODBBaseObject.TreeInfo): Added
116            the variable names for objects.
117    
118            * Extensions/importAPR/apr.py (APR_BLnSym, APR_BMkSym, APR_BShSym): New.
119            Copied from importAPR and provided with documentation.
120    
121            * Extensions/importAPR/importAPR.py (APR_BLnSym, APR_BMkSym, APR_BShSym):
122            Moved to apr.py.
123            (APR_View): Added object ref 'ITheme'.
124    
125            * Thuban/Lib/fileutil.py, Thuban/UI/proj4dialog.py: Replaced string
126            split function by corresponding use of the string class method.
127    
128            * Thuban/Model/xmlwriter.py: Replaced string replace function by
129            corresponding string method.
130    
131    2003-10-29  Bernhard Herzog  <[email protected]>
132    
133            * Thuban/UI/baserenderer.py
134            (BaseRenderer.draw_shape_layer_incrementally): Speed up the
135            special case of a classification that only has the default group
136    
137    2003-10-27  Bernhard Herzog  <[email protected]>
138    
139            * po/fr.po, po/es.po: Updated translations from Daniel Calvelo
140    
141            * po/de.po: Update.
142    
143            * Thuban/UI/application.py
144            (ThubanApplication.ShowExceptionDialog): Handle translation of the
145            dialog message properly
146    
147    2003-10-27  Bernhard Herzog  <[email protected]>
148    
149            Rework how localization works so that we use wx's translation
150            functions when running Thuban as a normal application but not when
151            we don't need any UI, such as in the test suite. See the comment
152            in Thuban/__init__.py for details
153    
154            * Thuban/__init__.py (_): Add one level of indirection to make the
155            translation handling more flexible and to make it possible to use
156            either wx's translation services or not.
157            (gettext_identity, translation_function_installed)
158            (install_translation_function): New function to help with this
159    
160            * Thuban/UI/__init__.py: Install the wx specific translation
161            function if it's OK to do that
162    
163            * test/support.py (initthuban): Install a dummy translation
164            function so that importing Thuban.UI doesn't install a wx specific
165            one for which would need to import wxPython
166    
167    2003-10-27  Bernhard Herzog  <[email protected]>
168    
169            * HOWTO-Release: Source archives should be created first and the
170            binary packages should be created from the source archives.
171            There's an official debian package now so there's no need to test
172            the rpm on debian anymore
173    
174    2003-10-27  Bernhard Herzog  <[email protected]>
175    
176            Several rendering changes:
177    
178             - Render the selection into a separate bitmap so that only that
179               bitmap needs to be redrawn when the selection changes
180    
181             - Render incrementally showing previews and allowing interaction
182               before rendering is complete
183    
184             - Update the renderer interface a bit. Most parameters of
185               RenderMap are now parameters of the constructor
186    
187            * Thuban/UI/baserenderer.py (BaseRenderer.__init__): Add the map
188            and the update region as parameters. Update the doc-string
189            (BaseRenderer.render_map_incrementally): New. Generator function
190            to renders the map incrementally
191            (BaseRenderer.render_map): Remove the map argument (it's now in
192            the constructor) and simply iterate over the
193            render_map_incrementally generator to draw the map.
194            (BaseRenderer.draw_shape_layer_incrementally)
195            (BaseRenderer.draw_shape_layer): Renamed to
196            draw_shape_layer_incrementally and changed into a generator that
197            yields True every 500 shapes. Used by render_map_incrementally to
198            render shape layers incrementally
199    
200            * Thuban/UI/renderer.py (ScreenRenderer.RenderMap): Removed the
201            map and region parameters which are now in the constructor
202            (ScreenRenderer.RenderMapIncrementally): New. Public frontend for
203            the inherited render_map_incrementally.
204            (BaseRenderer.draw_shape_layer): Removed.
205            (ScreenRenderer.draw_selection_incrementally): New. The selection
206            drawing part of the removed draw_shape_layer as a generator
207            (ScreenRenderer.layer_shapes): Update because of the region
208            parameter change
209            (ExportRenderer.__init__): New. Extend the inherited constructor
210            with the destination region for the drawing
211            (ExportRenderer.RenderMap): Removed the map and region parameters
212            which are now in the constructor
213    
214            * Thuban/UI/view.py (MapCanvas.PreviewBitmap): New. Return a
215            bitmap suitable for a preview in a tool
216            (CanvasPanTool.MouseMove): Use the PreviewBitmap method to get the
217            bitmap
218            (MapPrintout.draw_on_dc): Adapt to new renderer interface
219            (MapCanvas.OnPaint): Handle drawing the selection bitmap if it
220            exists
221            (MapCanvas.OnIdle): Update the logic to deal with incremental
222            rendering and the selection bitmap
223            (MapCanvas._do_redraw): Handle the instantiation of the render
224            iterator and the redraws during rendering
225            (MapCanvas._render_iterator): New. Generator to incrementally
226            redraw both bitmaps
227            (MapCanvas.Export): Adapt to new renderer interface.
228            (MapCanvas.full_redraw): Reset the selection bitmap and the
229            renderer iterator too
230            (MapCanvas.redraw_selection): New. Force a redraw of the selection
231            bitmap
232            (MapCanvas.shape_selected): Only redraw the selection bitmap
233    
234            * test/test_baserenderer.py
235            (TestBaseRenderer.test_polygon_no_projection)
236            (TestBaseRenderer.test_raster_no_projection)
237            (TestBaseRenderer.test_point_map_projection)
238            (TestBaseRenderer.test_point_layer_and_map_projection)
239            (TestBaseRenderer.test_point_layer_projection)
240            (TestBaseRenderer.test_point_with_classification): Adapt to new
241            renderer interface
242    
243    2003-10-24  Bernhard Herzog  <[email protected]>
244    
245            * libraries/thuban/wxproj.cpp (draw_polygon_shape)
246            (point_in_polygon_shape, shape_centroid): Raise an exception if
247            the shape can't be read. Previously invalid shape ids would lead
248            to a segfault.
249    
250            * test/test_wxproj.py (TestShapeCentroid.test_invalid_shape_id):
251            New. test whether an exception is raised for invalid shape ids
252    
253    2003-10-24  Jan-Oliver Wagner <[email protected]>
254    
255            * Thuban/Model/proj.py (Projection.GetProjectedUnits): Added 'longlat'
256            as alias for 'latlong'.
257    
258            * Thuban/UI/projdialog.py (ProjFrame.__init__): Added 'longlat'
259            as alias for 'latlong'.
260    
261    2003-10-24  Jan-Oliver Wagner <[email protected]>
262    
263            * Thuban/UI/projdialog.py (ProjFrame.proj_selection_changed): Set
264            the projection even for the UnknownPanel.
265            (UnknownProjPanel.__init__): Define the text and create the textctrl
266            widget.
267            (UnknownProjPanel._DoLayout): Replaced static text widget by the
268            textctrl created in __init__.
269            (UnknownProjPanel.SetProjection): Set the text for the text ctrl
270            including the parameters of the projection.
271            
272    2003-10-24  Jan-Oliver Wagner <[email protected]>
273    
274            * Resources/Projections/epsg.proj: New. This is a list of
275            EPSG codes with parameters for proj. The list has been
276            generated using devtools/create_epsg.py based on the
277            file nad/epsg of the proj 4.4.7 package. Four projection
278            definitions have been deleted as they are not accepted by proj:
279            "CH1903+ / LV95", "Bern 1898 (Bern) / LV03C", "CH1903 / LV03"
280            and "HD72 / EOV".
281    
282    2003-10-22  Bernhard Herzog  <[email protected]>
283    
284            Some more tweaks to the projection dialog which should fix RT
285            #1886.
286    
287            * Thuban/UI/projlist.py (ProjectionList.Destroy): Unsubscribe from
288            the ProjFile's messages and call the base class methods correctly
289            (ProjectionList.SelectProjection): Set the wxLIST_STATE_FOCUSED
290            flag on the newly selected item too. Otherwise some other item is
291            focused and the first time the focus is moved with the keyboard
292            the selection moves in unexpected ways.
293    
294            * Thuban/UI/projdialog.py (ProjFrame.__init__): Do not set the
295            focus on the OK button, only on the projection list. That way the
296            list really has the focus initially
297            (ProjFrame.OnClose): Call the projection list's Destroy method to
298            make it unsubscribe all messages
299    
300    2003-10-21  Bernhard Herzog  <[email protected]>
301    
302            Rework the projection dialog to fix a few bugs, including RT 2166
303            and most of 2168
304    
305            * Thuban/UI/projlist.py: New. The class ProjectionList is a
306            special wxListCtrl to show a list of projections in a more MVC
307            fashion
308    
309            * Thuban/UI/projdialog.py (ProjFrame): Substantial changes
310            throughout the class. The main change is to use the ProjectionList
311            class instead of a normal wxListBox. Also, add an explicit
312            "Unknown" projection to the projection choice control.
313            (ProjPanel.__init__): Add an "unknown" ellipsoid
314            (TMPanel.__init__, LCCPanel.__init__): Tweak the order of
315            instantiation of the panel's controls to make the tab-order more
316            natural
317    
318    2003-10-21  Bernhard Herzog  <[email protected]>
319    
320            * test/test_load.py (TestSingleLayer.file_contents)
321            (TestSingleLayer.test): Add non-ascii characters to the titles of
322            session, map and layer. This is effectively a port of the
323            TestUnicodeStrings test in test_load_0_8.py which for some reason
324            was only added there.
325    
326            * test/test_load_0_9.py (TestSingleLayer.file_contents)
327            (TestSingleLayer.test): Same as in test_load.py: add non-ascii
328            characters to the titles of session, map and layer,.
329    
330    2003-10-21  Bernhard Herzog  <[email protected]>
331    
332            Add EPSG projection handling to .thuban files
333    
334            * test/test_save.py (SaveSessionTest.dtd)
335            (SaveSessionTest.testEmptySession)
336            (SaveSessionTest.testLayerProjection)
337            (SaveSessionTest.testRasterLayer)
338            (SaveSessionTest.testClassifiedLayer)
339            (SaveSessionTest.test_dbf_table)
340            (SaveSessionTest.test_joined_table)
341            (SaveSessionTest.test_save_postgis): Update to 1.0-dev namespace
342            (SaveSessionTest.testSingleLayer): Update to 1.0-dev namespace and
343            use a and epsg projection to test saving them
344    
345            * test/test_load.py (LoadSessionTest.dtd): Update to 1.0-dev
346            namespace
347            (TestLayerVisibility.file_contents, TestLabels.file_contents)
348            (TestLayerProjection.file_contents)
349            (TestRasterLayer.file_contents, TestJoinedTable.file_contents)
350            (TestPostGISLayer.file_contents)
351            (TestPostGISLayerPassword.file_contents)
352            (TestLoadError.file_contents, TestLoadError.test): Update to use
353            1.0-dev namespace
354            (TestSingleLayer.file_contents, TestSingleLayer.test): Update to
355            use 1.0-dev namespace and use an EPSG projection to test whether
356            loading it works
357    
358            * test/test_load_0_9.py: New. Effectively a copy of test_load.py
359            as of Thuban 0.9. These are now tests to determine whether Thuban
360            can still read files generated by Thuban 0.9
361    
362            * Thuban/Model/save.py (SessionSaver.write)
363            (SessionSaver.write_session): Use the 1.0 dtd and 1.0-dev
364            namespace
365            (SessionSaver.write_projection): Write the projection's epsg
366            attribute
367    
368            * Thuban/Model/load.py (SessionLoader.__init__): Also accept the
369            thuban-1.0-dev.dtd namespace
370            (SessionLoader.check_attrs): Allow a callable object as conversion
371            too
372            (SessionLoader.start_projection, SessionLoader.end_projection)
373            (SessionLoader.start_parameter): Handle the epsg attribute and
374            rename a few instance variables to lower case
375    
376            * Resources/XML/thuban-1.0.dtd: New. Only difference to
377            thuban-0.9.dtd is the epsg attribute for projections.
378    
379    2003-10-21  Bernhard Herzog  <[email protected]>
380    
381            * test/runtests.py (main): Let the user specify which tests to run
382            on the command line
383    
384            * test/support.py (ThubanTestResult.getDescription): Override to
385            give a better short description. The description can be used as a
386            parameter to run_tests to run that particular test in isolation.
387    
388    2003-10-21  Frank Koormann   <[email protected]>
389    
390            Popup menu for legend. Scheduled for the 1.2 release this was too
391            simple to implement: The popup menu is bound to the legend tree, while
392            the events are hanlded by its anchestor, the legend panel. This
393            allows reuse of all the event handlers already implemented for the
394            legend toolbar buttons.
395    
396            * Thuban/UI/legend.py (LegendPanel.__init__): EVT_MENU macros
397            to add handlers for the events issued by the popup menu.
398            (LegendPanel._OnToggleVisibility): Handler for toggling layer
399            visibility event
400            (LegendPanel._OnProjection): Handler for layer projection event.
401            (LegendTree.__init__): Added EVT_TREE_ITEM_RIGHT_CLICK
402            (LegendTree._OnRightClick): Event handler for right click, select item
403            and pop up menu.
404            (LegendTree.ToggleVisibility): Toggle layer visibility
405            (LegendTree.LayerProjection): Raise layer projection dialog for
406            current layer.
407    
408    2003-10-21  Bernhard Herzog  <[email protected]>
409    
410            * Resources/Projections/defaults.proj: Use correct DOCTYPE
411            declaration. The top-level element is projectionlist not projfile
412    
413    2003-10-20  Bernhard Herzog  <[email protected]>
414    
415            * Thuban/UI/projdialog.py (ProjFrame.write_proj_file): New. helper
416            method to write a projfile and display a busy cursor and error
417            dialogs.
418            (ProjFrame._OnSave, ProjFrame._OnAddToList, ProjFrame._OnImport)
419            (ProjFrame._OnExport, ProjFrame._OnRemove): Use write_proj_file
420            (ProjFrame.__FillAvailList): Translate "<None>" too and display a
421            busy cursor while loading the user and system prj files.
422    
423    2003-10-16  Bernhard Herzog  <[email protected]>
424    
425            * Thuban/Model/resource.py (projfile_cache): Introduce a cache for
426            ProjFile objects
427            (clear_proj_file_cache): New function to clear the cache. Mainly
428            useful for use by the test suite
429            (read_proj_file): Use the cache.
430    
431            * test/test_proj.py (TestProjFile): Clarify the doc-string
432            (ProjFileReadTests): Update doc-string
433            (ProjFileReadTests.test_get_system_proj_file): Check whether the
434            system proj files is cached.
435            (ProjFileLoadTestCase): New base class for the proj file tests
436            derived from support.FileLoadTestCase to provide some common
437            behavior.
438            (TestLoadingProjFile)
439            (TestLoadingProjFileWithEmptyProjectionlist.file_contents)
440            (TestProjFileWithInvalidParameters.file_contents): Derive from
441            ProjFileLoadTestCase
442            (TestLoadingProjFile.test_caching): New. Test whether the cache
443            works
444    
445    2003-10-16      Silke Reimer    <[email protected]>
446    
447            * debian/*: New directory with configuration files for building a thuban
448              deb-package.
449    
450    2003-10-14  Bernhard Herzog  <[email protected]>
451    
452            * test/test_proj.py: Execute support.run_tests when run as
453            __main__ so that missing unsubscribes are detected
454            (TestProjFile.tearDown): Destroy the proj_file properly
455    
456    2003-10-14  Bernhard Herzog  <[email protected]>
457    
458            * Thuban/Model/messages.py (PROJECTION_ADDED)
459            (PROJECTION_REPLACED, PROJECTION_REMOVED): New message types for
460            the ProjFile objects
461    
462            * Thuban/Model/proj.py (ProjFile): Derive from Publisher so we can
463            easily send messages when the projections change
464            (ProjFile.Add, ProjFile.Remove, ProjFile.Replace): Issue messages
465            when the change was successful
466    
467            * test/test_proj.py (TestProjFile.setUp): Subscribe to some of the
468            proj file messages
469            (TestProjFile.test_add_remove)
470            (TestProjFile.test_remove_non_existing)
471            (TestProjFile.test_replace)
472            (TestProjFile.test_replace_non_existing): Test whether the right
473            messages are sent
474    
475    2003-10-14  Bernhard Herzog  <[email protected]>
476    
477            * test/test_proj.py (TestProjFile.test): Refactor into several
478            tests
479            (TestProjFile.test_add_remove)
480            (TestProjFile.test_remove_non_existing)
481            (TestProjFile.test_replace)
482            (TestProjFile.test_replace_non_existing): Some of the new
483            individual test cases
484            (TestProjFileSimple): New class for the rest of the test cases
485            that came out of the refactoring
486            (ProjFileTest): Derive from xmlsupport.ValidationTest so that the
487            derived classes don't have to
488    
489    2003-10-13  Bernhard Herzog  <[email protected]>
490    
491            Add an optional EPSG code to the projection objects and extend the
492            .proj file format accordingly.
493    
494            * Resources/XML/projfile.dtd (element projection): Add epsg
495            attribute
496    
497            * Thuban/Model/proj.py (Projection.__init__): New parameter and
498            instance variable epsg. Update doc-string
499            (Projection.EPSGCode, Projection.Label): New methods to provide
500            access to EPSG code and a label for use in dialogs
501    
502            * Thuban/Model/resource.py (ProjFileReader.start_projection)
503            (ProjFileReader.end_projection, ProjFileSaver.write_projfile):
504            Handle the epsg code attribute when reading or writing proj files
505    
506            * Thuban/UI/projdialog.py (ProjFrame._OnSave)
507            (ProjFrame._OnAddToList, ProjFrame.__DoOnProjAvail)
508            (ProjFrame.__FillAvailList): Use the projection's Label method to
509            get the string for the list box
510    
511            * test/test_proj.py (TestProjection.test_label)
512            (TestProjection.test_label_epsg)
513            (TestProjection.test_epsgcode_for_non_epsg_projection)
514            (TestProjection.test_epsgcode_for_real_epsg_projection): New tests
515            for the label and EPSGCode methods
516            (WriteProjFileTests.doTestWrite, WriteProjFileTests.test_write)
517            (WriteProjFileTests.test_write_empty_file): Create the ProjFile
518            objects in the test cases and put the expected contents into the
519            test case methods too. Update doTestWrite accordingly
520            (TestLoadingProjFile)
521            (TestLoadingProjFileWithEmptyProjectionlist): New classes with the
522            read tests from TestProjFile.
523            (TestProjFile.doTestRead, TestProjFile.testRead): Removed. These
524            tests are now in the new classes.
525            (sample_projfile, sample_projfile_data)
526            (sample_projfile2, sample_projfile_data2): Removed. Not used
527            anymore.
528            (TestProjFile.test_read_unreadable_file): No need to reset the
529            permissions at the end anymore since we use a unique filename
530    
531    2003-10-13  Bernhard Herzog  <[email protected]>
532    
533            * test/test_proj.py: Some more refactoring of the test cases
534            (ProjFileTest): New base class for the proj file tests.
535            (TestProjFile): Derive from ProjFileTest
536            (TestProjFile.test_read_unreadable_file)
537            (TestProjFile.test_read_empty_file, TestProjFile.doTestRead): Use
538            the new filename method to get a unique filename
539            (TestProjFile.doTestWrite, TestProjFile.testWrite): Removed.
540            (WriteProjFileTests): New class for proj file write tests.
541            Contains the write test that were in TestProjFile originally.
542    
543    2003-10-13  Bernhard Herzog  <[email protected]>
544    
545            * test/test_proj.py (TestProjFile.testRead)
546            (TestProjFile.test_read_non_existing_file)
547            (TestProjFile.test_read_unreadable_file)
548            (TestProjFile.test_read_empty_file): Split into several methods.
549    
550    2003-10-10  Bernhard Herzog  <[email protected]>
551    
552            * Thuban/UI/sizers.py: New file with custom sizers.
553    
554            * Thuban/UI/projdialog.py (ProjFrame.build_dialog): Instantiate
555            all projection type specific panels and put them into a
556            NotebookLikeSizer. This way the dialog doesn't change its size
557            when a different projection is selected
558            (ProjFrame.__init__): Rename projection_panels
559            projection_panel_defs and reuse projection_panels for a list of
560            the instantiated panels.
561            (ProjFrame._show_proj_panel, ProjFrame.__DoOnProjAvail)
562            (ProjFrame.__DoOnProjChoice): Changes due to the new handling of
563            the panels
564            (UnknownProjPanel._DoLayout): Place the newlines in the message
565            differently to make the panel narrower.
566            (TMPanel._DoLayout): Layout the parameters in one column.
567    
568    2003-10-10  Bernhard Herzog  <[email protected]>
569    
570            * Thuban/UI/projdialog.py (ProjFrame.build_dialog): New method
571            that contains all the setup for the dialog's widgets, layout and
572            event handling.
573            (__): Call build_dialog to build the dialog.
574            (ProjFrame.__set_properties, ProjFrame.__do_layout): Removed.
575            Their functionality is now in build_dialog
576            (ProjFrame.__VerifyButtons, ProjFrame.__VerifyButtons)
577            (ProjFrame.__DoOnProjAvail, ProjFrame.__DoOnProjAvail)
578            (ProjFrame.__DoOnProjChoice): Small updates due to slightly
579            different widget names and hierarchy introduced with build_dialog.
580    
581    2003-10-10  Bernhard Herzog  <[email protected]>
582    
583            * README: Fix typo.
584    
585    2003-10-09  Bernhard Herzog  <[email protected]>
586    
587            * Thuban/Model/proj.py (ProjFile.Add): Do not check whether the
588            projection is already in the list. This is *a lot* faster when
589            loading files with hundreds of projections since it saves a linear
590            search. OTOH this will allow adding the same projection to the
591            user.proj file multiple times in the projection dialog but we'll
592            deal with that later
593    
594    2003-10-09  Jan-Oliver Wagner <[email protected]>
595    
596            * devtools: New. Directory for developer tools that are not intended
597            for the regular user.
598    
599            * devtools/create_epsg.py: New. Convert the epsg file of proj into
600            a python .proj file.
601    
602    2003-10-09  Bernhard Herzog  <[email protected]>
603    
604            * test/test_proj.py
605            (TestProjection.test_get_parameter_without_equals_sign): New. Test
606            whether GetParameter handles parameters without "=" sign correctly
607    
608            * Thuban/Model/proj.py (Projection.GetParameter): Handle
609            parameters that do not contain a "=". Update the doc-string
610    
611    2003-10-08  Bernhard Herzog  <[email protected]>
612    
613            * Thuban/UI/projdialog.py (ProjFrame.__set_properties): Remove the
614            length limit on the projname text control
615    
616    2003-10-08  Bernhard Herzog  <[email protected]>
617    
618            * test/test_proj.py (TestProjection.test_get_projection_units_geo)
619            (TestProjection.test_get_projection_units_normal): New. Tests for
620            the Projection.GetProjectedUnits method
621    
622    2003-10-08  Jan-Oliver Wagner <[email protected]>
623    
624            * Thuban/Model/resource.py (get_user_proj_file): small bug-fix:
625            Added missing 'val' parameter.
626    
627    2003-10-08  Bernhard Herzog  <[email protected]>
628    
629            * Thuban/UI/projdialog.py (ProjFrame.__DoOnProjAvail): When the
630            projection type of the currently selected projection is not known,
631            i.e. there's no panel for it, use the UnknownProjPanel
632            (ProjFrame.__DoOnProjChoice, ProjFrame._show_proj_panel): Split
633            the actual replacing of the proj panel into the new method
634            _show_proj_panel.
635            (UnknownProjPanel): Add doc-string.
636            (UnknownProjPanel._DoLayout): Insert a newline into the text so
637            that the panel is not so wide.
638    
639  2003-10-08  Bernhard Herzog  <[email protected]>  2003-10-08  Bernhard Herzog  <[email protected]>
640    
641          * Thuban/Model/resource.py (read_proj_file): Return the warnings          * Thuban/Model/resource.py (read_proj_file): Return the warnings

Legend:
Removed from v.1788  
changed lines
  Added in v.1908

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26