/[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 1272 by jonathan, Fri Jun 20 16:43:13 2003 UTC revision 1422 by bh, Tue Jul 15 14:47:06 2003 UTC
# Line 1  Line 1 
1    2003-07-15  Bernhard Herzog  <[email protected]>
2    
3            * test/support.py (FloatComparisonMixin): This is a mix-in class
4            and therefore should not be derived from any other class.
5    
6            * test/test_range.py (RangeTest): FloatComparisonMixin is a
7            mix-in, so derive from TestCase as well.
8    
9    2003-07-15  Bernhard Herzog  <[email protected]>
10    
11            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Rework the
12            draw_func handling a bit to remove one layer of indirection. This
13            makes the renderer about 10% faster in the non-classifying case
14            and the code a bit cleaner
15            (MapRenderer.draw_point_shape): Add the pen and brush parameters
16            and set them in the dc. Now the draw_point_shape method and
17            wxproj's draw_polygon_shape function have basically the same
18            signature so that both can be directly used as draw_func
19    
20    2003-07-15  Bernhard Herzog  <[email protected]>
21    
22            * Thuban/Model/save.py (SessionSaver.write_classification): Encode
23            string values (in addition to the labels) as UTF 8
24    
25            * Thuban/Model/load.py (SessionLoader.start_clpoint): Decode the
26            values if the field type is string
27    
28            * test/test_save.py (SaveSessionTest.testClassifiedLayer): Test
29            saving a session with non-ascii string classification values.
30    
31            * test/test_load.py (TestClassification.file_contents)
32            (TestClassification.test): Check for non-ascii values in string
33            classifications
34    
35    2003-07-14  Jonathan Coles   <[email protected]>
36    
37            * test/test_view.py: New. Tests for ViewPort.
38    
39    2003-07-14  Frank Koormann   <[email protected]>
40    
41            * Thuban/Model/load.py (SessionLoader.start_map): Encode map
42            title to latin1.  Fixes https://intevation.de/rt/webrt?serial_num=2013
43    
44            * test/test_load_0_8.py (TestUnicodeStrings): New, test load of
45            unicode strings from session file: session title, map title and
46            projection name.
47            
48    2003-07-10  Jonathan Coles   <[email protected]>
49    
50            * Thuban/UI/viewport.py (Tool.MouseUp): Should have called
51            drag_stop, not drag_move when the mouse is released.
52    
53    2003-07-10  Jonathan Coles   <[email protected]>
54    
55            The most important part of this is the seperation of view.py into
56            two pieces. viewport.py now has a class called ViewPort which
57            contains all the non-wx parts of view.py and can therefore be
58            tested. view.py contains only the wx-specific parts and is fairly
59            simple.
60    
61            * Thuban/UI/view.py: Stripped out all non-wx functionality. Fixes
62            RTTbug #1992.
63            * Thuban/UI/viewport.py: New. Contains non-wx view functionality.
64            RTTbug #1992.
65    
66            * Thuban/Model/classgen.py (generate_singletons,
67            generate_uniform_distribution, generate_quantiles):
68            Added 'fixes' parameter so that property attributes can
69            be held constant over the generated classification groups.
70            (CustomRamp.GetProperties): Remove unused variables.
71    
72            * Thuban/Model/map.py (Map.SetProjection): Send the old
73            projection as an argument to listeners of the MAP_PROJECTION_CHANGED
74            event.
75    
76            * Thuban/Model/table.py (table_to_dbf, table_to_csv): Added 'records'
77            parameter which is a list of records that restricts which
78            records are saved. Fixes RTbug #1997.
79    
80            * Thuban/UI/application.py (ThubanApplication.ShowExceptionDialog):
81            Port exception dialog from GREAT-ER. Fixes RTbug #1993.
82    
83            * Thuban/UI/classgen.py (ClassGenDialog.__init__): Add controls
84            to allow the user to fix line color/width on generated groups.
85            (ClassGenDialog.OnOK): Use new 'fixes' parameter of the generate_*
86            functions to optionally fix group properties.
87    
88            * Thuban/UI/main.py (main): Set exception hook to the
89            ShowExceptionDialog. Fixes RTbug #1993.
90    
91            * Thuban/UI/mainwindow.py (MainWindow.ShowTableView): Raise
92            the table window when it is selectd to be shown.
93    
94            * Thuban/UI/tableview.py (QueryTableFrame.__init__): Add an
95            Export Selection button and move the export buttons underneath
96            the table.
97            (QueryTableFrame.UpdateStatusText): Added event argument so
98            that it can respond to grid selection events. The status text
99            is now updated even when the table is not associated with a
100            layer as was previously assumed.
101            (QueryTableFrame.OnGridSelectRange, OnGridSelectCell): Removed.
102            UpdateStatusText responds to these events.
103            (QueryTableFrame.OnSaveAs): Renamed to doExport.
104            (QueryTableFrame.doExport): Helper function that saves the
105            entire table, or selected rows, to a file.
106            (QueryTableFrame.OnExport, QueryTableFrame.OnExportSel): New.
107            Respond to export button events and call doExport.
108    
109            * extensions/thuban/gdalwarp.cpp (ProjectRasterFile): Make sure
110            the function doesn't return NULL without first setting a Python
111            Error.
112    
113            * test/runtests.py (main): Only print "Unknown option" for
114            unsupported options.
115    
116            * test/support.py (FloatComparisonMixin.assertFloatEqual): Take
117            optional epsilon argument to specify floating point accuracy.
118            (FloatComparisonMixin.assertFloatSeqEqual): Call assertFloatEqual
119            for each item test.
120    
121            * test/test_csv_table.py (TestCSVTable.test_table_to_cvs): Add
122            tests for saving selected records.
123    
124            * test/test_dbf_table.py (TestTableToDBF.test_table_to_dbf): Add
125            tests for saving selected records.
126    
127            * test/test_map.py (TestMapWithContents.test_set_projection):
128            MAP_PROJECTION_CHANGED events send the old projection.
129    
130            * test/test_session.py
131            (TestSessionWithContent.test_forward_map_projection):
132            MAP_PROJECTION_CHANGED events send the old projection.
133    
134            * test/test_table.py (TableTest): Update tests to use non-deprecated
135            functions.
136    
137    2003-07-08  Bernhard Herzog  <[email protected]>
138    
139            * Thuban/Model/transientdb.py (TransientTableBase.Width): The type
140            constants in the column objects are the standard ones defined in
141            the table module.
142    
143            * test/test_transientdb.py
144            (TestTransientTable.test_transienttable_to_dbf): New. Test whether
145            exporting transient tables as DBF works. This should catch the bug
146            just fixed in TransientTableBase.Width.
147    
148    2003-07-08  Bernhard Herzog  <[email protected]>
149    
150            * Thuban/Model/classgen.py (CustomRamp.GetProperties): Compute the
151            interpolated colors correctly.
152    
153            * test/test_classgen.py (TestCustomRamp.test_color_interpolation):
154            New. Test case for the fix in classgen.py
155    
156    2003-07-08  Bernhard Herzog  <[email protected]>
157    
158            * test/runtests.py (main): Make the default output less verbose
159            and add a verbosity option (-v) to get the old output
160    
161    2003-07-08  Bernhard Herzog  <[email protected]>
162    
163            * Resources/XML/thuban-0.9.dtd: New. This will become the DTD for
164            0.9.
165    
166            * Thuban/Model/transientdb.py (TransientJoinedTable.JoinType):
167            New. Return the join type
168    
169            * Thuban/Model/save.py (SessionSaver.write_session): Use new 0.9
170            DTD
171            (SessionSaver.write_data_containers): Save the join type for
172            joined tables
173    
174            * Thuban/Model/load.py (SessionLoader.__init__): Add the new 0.9
175            namespace
176            (SessionLoader.start_jointable): Handle the jointype attribute
177    
178            * test/test_load_0_8.py: New. Effectively a copy of test_load.py
179            as of Thuban 0.8. These are now tests to determine whether Thuban
180            can still read files generated by Thuban 0.8
181    
182            * test/test_load.py (LoadSessionTest.dtd)
183            (TestSingleLayer.file_contents)
184            (TestLayerVisibility.file_contents, TestLabels.file_contents)
185            (TestLayerProjection.file_contents)
186            (TestRasterLayer.file_contents, TestJoinedTable.file_contents)
187            (TestJoinedTable.file_contents)
188            (TestLoadError.file_contents): Update for new DTD
189            (TestJoinedTable.file_contents, TestJoinedTable.setUp): Add test
190            for new join type attribute
191    
192            * test/test_save.py (SaveSessionTest.dtd)
193            (SaveSessionTest.testEmptySession)
194            (SaveSessionTest.testSingleLayer)
195            (SaveSessionTest.testLayerProjection)
196            (SaveSessionTest.testRasterLayer)
197            (SaveSessionTest.testClassifiedLayer)
198            (SaveSessionTest.test_dbf_table)
199            (SaveSessionTest.test_joined_table): Update for new DTD
200            (SaveSessionTest.test_joined_table): Add test for new join type
201            attribute
202    
203    2003-07-04  Bernhard Herzog  <[email protected]>
204    
205            * Thuban/Model/table.py (_find_dbf_column_names): New. Helper
206            function for table_to_dbf
207            (table_to_dbf): Deal with names longer than the 10 character limit
208    
209            * test/test_dbf_table.py (TestTableToDBF.test_table_to_dbf): Add
210            doc-string
211            (TestTableToDBF.test_table_to_dbf_long_col_names): New test for
212            long column names
213    
214    2003-07-03  Bernhard Herzog  <[email protected]>
215    
216            * Doc/manual/thuban-manual.xml: Fix the CVS Revision Tag syntax
217    
218    2003-07-03  Bernhard Herzog  <[email protected]>
219    
220            * Doc/manual/thuban-manual.xml, Doc/manual/README: New. Skeleton
221            for the Thuban manual and README with some basic information about
222            the manual
223    
224    2003-07-03  Bernhard Herzog  <[email protected]>
225    
226            * Thuban/Model/transientdb.py (TransientJoinedTable.__init__):
227            Update doc-string
228            (TransientJoinedTable.create): Do not modify the column objects of
229            the input tables in place and copy all columns of the input tables
230            into the joined table after all.
231    
232            * test/test_transientdb.py
233            (TestTransientTable.test_transient_joined_table_same_column_name):
234            Update to reflect the new behavior
235            (TestTransientTable.test_transient_joined_table_with_equal_column_names):
236            Update to reflect the new behavior
237            (TestTransientTable.test_transient_joined_table_name_collisions_dont_modify_in_place):
238            New test case for a bug which modified the column objects in place
239    
240    2003-07-02  Jonathan Coles   <[email protected]>
241    
242            * Thuban/Model/classgen.py (generate_singletons,
243            generate_uniform_distribution, generate_quantiles,
244            GenQuantiles0): Make sure maxValue isn't less than
245            one, otherwise we could divide by zero.
246    
247            * test/test_classgen.py (ClassGenTest.doClassRangeTest,
248            ClassGenTest.doClassSingleTest): Call doBoundsTest to
249            check the end classification groups against the
250            proper property values.
251            (ClassGenTest.doBoundsTest): New. Checks the first and
252            last classification groups to make sure their properties
253            are the correct upper and lower bounds for a color ramp.
254    
255    2003-07-02  Jonathan Coles   <[email protected]>
256    
257            * Thuban/Model/classgen.py (generate_singletons,
258            generate_uniform_distribution, generate_quantiles,
259            GenQuantiles0): The denominator was one to high when
260            calculating the index for the ramp causing the index
261            to never to reach one.
262    
263    2003-07-02  Jonathan Coles   <[email protected]>
264    
265            Changed the singature of ClassGroupRange.__init__ and
266            ClassGroupRange.SetRange() so that the min/max values are
267            passed as a tuple. This makes a better calling scheme for
268            when a Range object is passed instead.
269    
270            * Thuban/Model/classgen.py: Fixed parameters to
271            ClassGroupRange constructor.
272    
273            * Thuban/Model/classification.py (ClassGroupRange.__init__):
274            Consolidate the min/max parameters into a single _range which
275            can either be a tuple or a Range object.
276            (ClassGroupRange.SetRange): Consolidate the min/max parameters
277            into a single _range which can either be a tuple or a Range object.
278    
279            * Thuban/Model/load.py (SessionLoader.start_clrange): Fix
280            call to ClassGroupRange constructor to use a tuple.
281    
282            * Thuban/Model/layer.py (Layer.SetClassification): Switch
283            the classification instance variable to the new class
284            before calling _set_layer otherwise subscribers to a
285            LAYER_CHANGED event will not see any difference.
286    
287            * test/test_classification.py: Fix tests of ClassGroupRange
288            so that they use the new signature.
289    
290            * test/test_load.py: Fix use of ClassGroupRange so that it
291            uses the new signature.
292    
293            * test/test_load_0_2.py: Fix use of ClassGroupRange so that it
294            uses the new signature.
295    
296            * test/test_save.py: Fix use of ClassGroupRange so that it
297            uses the new signature.
298    
299    
300    2003-07-01  Jonathan Coles   <[email protected]>
301    
302            * Thuban/Model/classgen.py: Fixes RTbug #1972, 1971.
303            Import used objects/class from color.
304            (generate_singletons): We don't
305            need the numGroups parameter anymore because we are using
306            the new ramps with GetProperties().
307            (generate_uniform_distribution): Use new ramp method
308            GetProperties().
309            (generate_quantiles, GenQuantiles0): Use new ramp method
310            GetProperties().
311            (CustomRamp.SetNumGroups): Removed. The ramps now map
312            a value from 0 to 1 to class properties so the number
313            of groups is not needed ahead of time.
314            (CustomRamp.next): Removed. CustomRamp does not support
315            interation anymore.
316            (CustomRamp.GetProperties): Returns a ClassGroupProperties
317            object based on the index value from 0 to 1 that is
318            passed to it.
319            (GreyRamp, RedRamp, GreenRamp, BlueRamp, GreenToRedRamp):
320            Made into instances of Monochromatic class instread of
321            deriving from it.
322            (HotToCold.SetNumGroups): Removed. See CustomRamp.
323            (HotToCold.next): Removed. See CustomRamp.
324    
325            * Thuban/Model/classification.py: Fixes RTbug #1973, 1971.
326            (Classification.SetField, Classification.SetFieldType):
327            Replaced with SetFieldInfo.
328            (Classification.SetFieldInfo): New. Does a better job of
329            what SetField and SetFieldType used to do by combining
330            their function since they should really always be done
331            at the same time.
332            (Classification.SetLayer): Renamed to _set_layer.
333            (Classification._set_layer): Should only be called from
334            Layer's SetClassification. This does not cause a recursive
335            call as SetLayer did because we know that Layer knows about
336            the classification.
337    
338            * Thuban/Model/color.py: Fixes RTbug #1971.
339            (_Transparent): Renamed from Transparent so it doesn't
340            conflict with the module variable.
341            (Transparent, Black): Renamed from Color.Transparent,
342            Color.Black so they are not class variables.
343    
344            * Thuban/Model/layer.py: Fixes RTbug #1971, 1973.
345            (Layer.Destroy): We don't need to call SetClassification
346            anymore to clear out the back reference in the classifcation
347            to the layer. It's better to set it to None using _set_layer,
348            and we won't be creating another clas object too.
349            (Layer.SetClassification): Classification._set_layer is not
350            recursive so remove all the locking variables. Also clean
351            up the code so that it remains unchanged if something fails.
352    
353            * Thuban/Model/load.py: Fixes RTbug #1971.
354            (SessionLoader.start_classification): Call
355            Classification.SetFieldInfo().
356    
357            * Thuban/Model/save.py: Removed import of Color which wasn't
358            being used.
359    
360            * Thuban/UI/classgen.py: Fixes RTbug #1972.
361            (ClassGenDialog.__init__): Color ramps are now instances
362            already so we don't need to create any new objects.
363            (ClassGenDialog.OnOK): Check for numGroups is no longer
364            necessary because we never use it.
365    
366            * Thuban/UI/classifier.py: Fixes RTbug #1971.
367            (Classifier.__BuildClassification, Classifier.__SetGridTable):
368            Call Classification.SetFieldInfo() instead of SetFieldType.
369    
370            * Thuban/UI/renderer.py: Fixes RTbug #1971.
371    
372            * Thuban/UI/view.py: Fixes RTbug #1974, 1971.
373            (MapCanvas.__init__): Subscribe to the idle time event. Set
374            background color to white.
375            (MapCanvas.OnPaint): Set a flag indicating that we should
376            render the map during idle time. If we already have a bitmap
377            just draw it now.
378            (MapCanvas.OnIdle): New. Render the map only during idle time.
379            This also fixes a problem with the busy cursor under gtk.
380    
381            * test/test_classgen.py (ClassGenTest.test_generate_singletons):
382            Fix calls to generate_singletons because the signature changed.
383    
384            * test/test_classification.py: Fix color references and
385            change calls to Classification.[SetField|SetFieldType] to
386            SetFieldInfo.
387    
388            * test/test_load.py: Fix color references.
389    
390            * test/test_load_0_2.py: Fix color references.
391    
392            * test/test_save.py (SaveSessionTest.testClassifiedLayer):
393            Change calls to Classification.[SetField|SetFieldType] to
394            SetFieldInfo.
395    
396    2003-07-01  Frank Koormann   <[email protected]>
397    
398            MERGE from the greater-ms3 branch.
399    
400            * test/test_transientdb.py
401            (TestTransientTable.test_transient_joined_table_with_equal_column_names):
402            New. Test join of two tables with partly equal column names.
403    
404            * Thuban/Model/transientdb.py (TransientJoinedTable.create):
405            If duplicates in left and right tables column names are found,
406            append '_' (underscores) to the name until it is unique.
407            Create always new internal names for the resulting table and reference
408            columns in the join statement with <table>.<column>
409    
410    2003-07-01  Bernhard Herzog  <[email protected]>
411    
412            * test/test_transientdb.py
413            (TestTransientTable.test_transient_joined_table_same_column_name):
414            New. Test whether joining on columns with the same names in both
415            tables works.
416            
417            * Thuban/Model/transientdb.py (TransientJoinedTable.create): Make
418            sure to use the right internal names even when joining on field
419            with the same names in both tables. Also, detect duplicate names
420            in the joined table correctly.
421    
422    2003-07-01  Frank Koormann   <[email protected]>
423    
424            * Thuban/UI/renderer.py (ExportRenderer.render_legend):
425            Reverse List of layers to render in same order as in desktop legend.
426    
427    2003-06-30  Jonathan Coles   <[email protected]>
428    
429            * Thuban/version.py (make_tuple): Takes a version string
430            and splits it into a tuple of at most three integers.
431            Used make_tuple() to make tuple versions of the version
432            numbers.
433    
434            * Thuban/UI/about.py: Add Thuban email addresses.
435    
436    2003-06-30  Jonathan Coles   <[email protected]>
437    
438            * Thuban/version.py: SQLite/PySQLite version dependencies
439            were too high.
440    
441    2003-06-30  Jonathan Coles   <[email protected]>
442    
443            * Thuban/version.py: Update version to 0.8.1
444            
445            * MANIFEST.in: Added Projections so that default.proj is
446            included.
447    
448    2003-06-26  Jonathan Coles   <[email protected]>
449    
450            New About box with lots more information including library
451            versions and credits. More/better version checking before
452            Thuban starts.
453    
454            * Thuban/UI/about.py: New. New About box that displays
455            library version information and credits.
456    
457            * Thuban/version.py: Added new 'versions' dictionary which
458            contains the verions of various libraries which are checked
459            when the module loads.
460            (verify_versions): Check all version numbers and returns
461            a list of errors.
462    
463            * Thuban/UI/classifier.py (Classifier.__EnableButtons):
464            Reset the status of the buttons as the situation warrants,
465            but in a better more reliable way by not relying on the
466            current status to determine what needs to change.
467    
468            * Thuban/UI/main.py (wxCHECK_VERSION): Removed. Not needed.
469            (verify_versions): Remove most of the code since it is
470            now in Thuban.version.verify_versions.o
471    
472            * Thuban/UI/mainwindow.py (MainWindow.About): Call new
473            About box in Thuban.UI.about.
474    
475            * extensions/thuban/gdalwarp.cpp (get_gdal_version): New.
476            Returns the version of gdal library being used as a string.
477    
478            * extensions/thuban/wxproj.cpp (check_version, check_version_gtk):
479            Removed.
480            (get_proj_version): Return the version of PROJ that the file
481            was compiled with.
482            (get_gtk_version): Return th version of GTK that the file
483            was compiled with.
484    
485    2003-06-25  Jonathan Coles   <[email protected]>
486    
487            * Thuban/UI/classifier.py (Classifier.EditSymbol): The parent
488            of the SelectPropertiesDialog should be self so the window
489            appears on top.
490            (ClassGroupPropertiesCtrl.DoEdit): The parent
491            of the SelectPropertiesDialog should be self so the window
492            appears on top.
493    
494            * Thuban/UI/resource.py: Cleaned up how we determine file
495            extensions.
496            (GetImageResource): Return an wxImage from our Resources.
497    
498    2003-06-24  Jonathan Coles   <[email protected]>
499    
500            * Thuban/UI/renderer.py (ExportRenderer.render_legend):
501            Check that a layer has a classification before trying
502            to get it. Raster layers don't have classifications.
503    
504    2003-06-23  Jonathan Coles   <[email protected]>
505            
506            * setup.py: Add Resources/XML to resource list.
507        
508    2003-06-23  Jonathan Coles   <[email protected]>
509    
510            * setup.cfg: Fix copyright dates
511        
512    2003-06-23  Jonathan Coles   <[email protected]>
513    
514            * MANIFEST.in: Update with Resources/XML
515    
516            * setup.py: Don't include Locale resources yet as we don't
517            have any and it causes problems building the distribution
518            for Windows. Update version to 0.8.0.
519    
520            * Doc/thuban.dtd: Removed since it is now in Resources/XML.
521    
522            * Thuban/UI/mainwindow.py: Add blank line at the end because
523            file was not being read correctly building the Windows
524            distribution.
525    
526    2003-06-23  Jonathan Coles   <[email protected]>
527    
528            * Thuban/UI/mainwindow.py (MainWindow.About): Fix text.
529    
530            * Thuban/version.py: Temporarily update longversion for
531            the 0.8 release so that it doesn't have the cvs revision.
532    
533    2003-06-23  Jonathan Coles   <[email protected]>
534    
535            * Thuban/UI/common.py (ThubanBeginBusyCursor): Call wxSafeYield
536            to make sure that we don't create reentrant possibilities with
537            wxYield.
538    
539            * Thuban/UI/view.py (MapCanvas.OnPaint): Call wxBeginBusyCursor()
540            directly to avoid the wxSafeYield() call which generates an
541            OnPaint event causing infinite recursion. Don't try to catch
542            exception anymore. This was for before there were limits on map
543            scaling.
544    
545    2003-06-23  Bernhard Herzog  <[email protected]>
546    
547            Bug fix for RT #1961:
548    
549            * Thuban/Model/load.py (SessionLoader.start_derivedshapesource):
550            Register DerivedShapestores with the session
551    
552            * Thuban/Model/session.py (Session.Tables): Make sure each table
553            is only listed once.
554    
555            * test/test_load.py (TestJoinedTable.test): Add check_format call.
556            Update file contents to match the one written out.
557    
558    2003-06-20  Bernhard Herzog  <[email protected]>
559    
560            * test/xmlsupport.py (SaxEventLister.startElementNS)
561            (SaxEventLister.endElementNS): Do not include the qname. Python
562            2.2.1 and 2.2.2 and 2.2.3 differ in this regard. In 2.2.1 qname it
563            is (presumably incorrectly) None, whereas it's a string with the
564            element name in the later versions.
565    
566            * test/test_xmlsupport.py (TestEventList.test_even_list_simple)
567            (TestEventList.test_even_list_namespace): Update tests to reflect
568            the new behaviour
569            (TestEventList.test_even_list_id_normalization): Fix doc-string
570    
571    2003-06-20  Jonathan Coles   <[email protected]>
572    
573            * Thuban/Model/layer.py (BaseLayer.HasShapes): New. Overridden
574            by deriving classes to determine if that layer supports shapes.
575            (Layer): Override HasShapes and return true.
576    
577            * Thuban/UI/classgen.py: Use Thuban[Begin|End]BusyCursor()
578            instead of a direct call to wx[Begin|End]CusyCursor().
579            (GenUniquePanel._OnRetrieve): Set busy cursor while retrieving
580            table data.
581    
582            * Thuban/UI/common.py (ThubanBeginBusyCursor, ThubanEndBusyCursor):
583            New. Wrappers around the wxWindows functions that allow us to
584            make additional calls such as wxYield which gives the native
585            system a chance to update the cursor correctly.
586    
587            * Thuban/UI/tableview.py: Use Thuban[Begin|End]BusyCursor()
588            instead of a direct call to wx[Begin|End]CusyCursor().
589    
590            * Thuban/UI/view.py: Use Thuban[Begin|End]BusyCursor()
591            instead of a direct call to wx[Begin|End]CusyCursor().
592            (MapCanvas.find_shape_at): Check if the current search layer
593            support shapes, otherwise go on to the next layer.
594    
595            * test/test_layer.py: Add tests in each type of layer for
596            HasClassification() and HasShapes()
597    
598  2003-06-20  Jonathan Coles   <[email protected]>  2003-06-20  Jonathan Coles   <[email protected]>
599    
600          * Thuban/UI/view.py (MapCanvas.OnPaint): Call wxYield after          * Thuban/UI/view.py (MapCanvas.OnPaint): Call wxYield after

Legend:
Removed from v.1272  
changed lines
  Added in v.1422

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26