/[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 1370 by bh, Thu Jul 3 16:27:31 2003 UTC
# Line 1  Line 1 
1    2003-07-03  Bernhard Herzog  <[email protected]>
2    
3            * Doc/manual/thuban-manual.xml: Fix the CVS Revision Tag syntax
4    
5    2003-07-03  Bernhard Herzog  <[email protected]>
6    
7            * Doc/manual/thuban-manual.xml, Doc/manual/README: New. Skeleton
8            for the Thuban manual and README with some basic information about
9            the manual
10    
11    2003-07-03  Bernhard Herzog  <[email protected]>
12    
13            * Thuban/Model/transientdb.py (TransientJoinedTable.__init__):
14            Update doc-string
15            (TransientJoinedTable.create): Do not modify the column objects of
16            the input tables in place and copy all columns of the input tables
17            into the joined table after all.
18    
19            * test/test_transientdb.py
20            (TestTransientTable.test_transient_joined_table_same_column_name):
21            Update to reflect the new behavior
22            (TestTransientTable.test_transient_joined_table_with_equal_column_names):
23            Update to reflect the new behavior
24            (TestTransientTable.test_transient_joined_table_name_collisions_dont_modify_in_place):
25            New test case for a bug which modified the column objects in place
26    
27    2003-07-02  Jonathan Coles   <[email protected]>
28    
29            * Thuban/Model/classgen.py (generate_singletons,
30            generate_uniform_distribution, generate_quantiles,
31            GenQuantiles0): Make sure maxValue isn't less than
32            one, otherwise we could divide by zero.
33    
34            * test/test_classgen.py (ClassGenTest.doClassRangeTest,
35            ClassGenTest.doClassSingleTest): Call doBoundsTest to
36            check the end classification groups against the
37            proper property values.
38            (ClassGenTest.doBoundsTest): New. Checks the first and
39            last classification groups to make sure their properties
40            are the correct upper and lower bounds for a color ramp.
41    
42    2003-07-02  Jonathan Coles   <[email protected]>
43    
44            * Thuban/Model/classgen.py (generate_singletons,
45            generate_uniform_distribution, generate_quantiles,
46            GenQuantiles0): The denominator was one to high when
47            calculating the index for the ramp causing the index
48            to never to reach one.
49    
50    2003-07-02  Jonathan Coles   <[email protected]>
51    
52            Changed the singature of ClassGroupRange.__init__ and
53            ClassGroupRange.SetRange() so that the min/max values are
54            passed as a tuple. This makes a better calling scheme for
55            when a Range object is passed instead.
56    
57            * Thuban/Model/classgen.py: Fixed parameters to
58            ClassGroupRange constructor.
59    
60            * Thuban/Model/classification.py (ClassGroupRange.__init__):
61            Consolidate the min/max parameters into a single _range which
62            can either be a tuple or a Range object.
63            (ClassGroupRange.SetRange): Consolidate the min/max parameters
64            into a single _range which can either be a tuple or a Range object.
65    
66            * Thuban/Model/load.py (SessionLoader.start_clrange): Fix
67            call to ClassGroupRange constructor to use a tuple.
68    
69            * Thuban/Model/layer.py (Layer.SetClassification): Switch
70            the classification instance variable to the new class
71            before calling _set_layer otherwise subscribers to a
72            LAYER_CHANGED event will not see any difference.
73    
74            * test/test_classification.py: Fix tests of ClassGroupRange
75            so that they use the new signature.
76    
77            * test/test_load.py: Fix use of ClassGroupRange so that it
78            uses the new signature.
79    
80            * test/test_load_0_2.py: Fix use of ClassGroupRange so that it
81            uses the new signature.
82    
83            * test/test_save.py: Fix use of ClassGroupRange so that it
84            uses the new signature.
85    
86    
87    2003-07-01  Jonathan Coles   <[email protected]>
88    
89            * Thuban/Model/classgen.py: Fixes RTbug #1972, 1971.
90            Import used objects/class from color.
91            (generate_singletons): We don't
92            need the numGroups parameter anymore because we are using
93            the new ramps with GetProperties().
94            (generate_uniform_distribution): Use new ramp method
95            GetProperties().
96            (generate_quantiles, GenQuantiles0): Use new ramp method
97            GetProperties().
98            (CustomRamp.SetNumGroups): Removed. The ramps now map
99            a value from 0 to 1 to class properties so the number
100            of groups is not needed ahead of time.
101            (CustomRamp.next): Removed. CustomRamp does not support
102            interation anymore.
103            (CustomRamp.GetProperties): Returns a ClassGroupProperties
104            object based on the index value from 0 to 1 that is
105            passed to it.
106            (GreyRamp, RedRamp, GreenRamp, BlueRamp, GreenToRedRamp):
107            Made into instances of Monochromatic class instread of
108            deriving from it.
109            (HotToCold.SetNumGroups): Removed. See CustomRamp.
110            (HotToCold.next): Removed. See CustomRamp.
111    
112            * Thuban/Model/classification.py: Fixes RTbug #1973, 1971.
113            (Classification.SetField, Classification.SetFieldType):
114            Replaced with SetFieldInfo.
115            (Classification.SetFieldInfo): New. Does a better job of
116            what SetField and SetFieldType used to do by combining
117            their function since they should really always be done
118            at the same time.
119            (Classification.SetLayer): Renamed to _set_layer.
120            (Classification._set_layer): Should only be called from
121            Layer's SetClassification. This does not cause a recursive
122            call as SetLayer did because we know that Layer knows about
123            the classification.
124    
125            * Thuban/Model/color.py: Fixes RTbug #1971.
126            (_Transparent): Renamed from Transparent so it doesn't
127            conflict with the module variable.
128            (Transparent, Black): Renamed from Color.Transparent,
129            Color.Black so they are not class variables.
130    
131            * Thuban/Model/layer.py: Fixes RTbug #1971, 1973.
132            (Layer.Destroy): We don't need to call SetClassification
133            anymore to clear out the back reference in the classifcation
134            to the layer. It's better to set it to None using _set_layer,
135            and we won't be creating another clas object too.
136            (Layer.SetClassification): Classification._set_layer is not
137            recursive so remove all the locking variables. Also clean
138            up the code so that it remains unchanged if something fails.
139    
140            * Thuban/Model/load.py: Fixes RTbug #1971.
141            (SessionLoader.start_classification): Call
142            Classification.SetFieldInfo().
143    
144            * Thuban/Model/save.py: Removed import of Color which wasn't
145            being used.
146    
147            * Thuban/UI/classgen.py: Fixes RTbug #1972.
148            (ClassGenDialog.__init__): Color ramps are now instances
149            already so we don't need to create any new objects.
150            (ClassGenDialog.OnOK): Check for numGroups is no longer
151            necessary because we never use it.
152    
153            * Thuban/UI/classifier.py: Fixes RTbug #1971.
154            (Classifier.__BuildClassification, Classifier.__SetGridTable):
155            Call Classification.SetFieldInfo() instead of SetFieldType.
156    
157            * Thuban/UI/renderer.py: Fixes RTbug #1971.
158    
159            * Thuban/UI/view.py: Fixes RTbug #1974, 1971.
160            (MapCanvas.__init__): Subscribe to the idle time event. Set
161            background color to white.
162            (MapCanvas.OnPaint): Set a flag indicating that we should
163            render the map during idle time. If we already have a bitmap
164            just draw it now.
165            (MapCanvas.OnIdle): New. Render the map only during idle time.
166            This also fixes a problem with the busy cursor under gtk.
167    
168            * test/test_classgen.py (ClassGenTest.test_generate_singletons):
169            Fix calls to generate_singletons because the signature changed.
170    
171            * test/test_classification.py: Fix color references and
172            change calls to Classification.[SetField|SetFieldType] to
173            SetFieldInfo.
174    
175            * test/test_load.py: Fix color references.
176    
177            * test/test_load_0_2.py: Fix color references.
178    
179            * test/test_save.py (SaveSessionTest.testClassifiedLayer):
180            Change calls to Classification.[SetField|SetFieldType] to
181            SetFieldInfo.
182    
183    2003-07-01  Frank Koormann   <[email protected]>
184    
185            MERGE from the greater-ms3 branch.
186    
187            * test/test_transientdb.py
188            (TestTransientTable.test_transient_joined_table_with_equal_column_names):
189            New. Test join of two tables with partly equal column names.
190    
191            * Thuban/Model/transientdb.py (TransientJoinedTable.create):
192            If duplicates in left and right tables column names are found,
193            append '_' (underscores) to the name until it is unique.
194            Create always new internal names for the resulting table and reference
195            columns in the join statement with <table>.<column>
196    
197    2003-07-01  Bernhard Herzog  <[email protected]>
198    
199            * test/test_transientdb.py
200            (TestTransientTable.test_transient_joined_table_same_column_name):
201            New. Test whether joining on columns with the same names in both
202            tables works.
203            
204            * Thuban/Model/transientdb.py (TransientJoinedTable.create): Make
205            sure to use the right internal names even when joining on field
206            with the same names in both tables. Also, detect duplicate names
207            in the joined table correctly.
208    
209    2003-07-01  Frank Koormann   <[email protected]>
210    
211            * Thuban/UI/renderer.py (ExportRenderer.render_legend):
212            Reverse List of layers to render in same order as in desktop legend.
213    
214    2003-06-30  Jonathan Coles   <[email protected]>
215    
216            * Thuban/version.py (make_tuple): Takes a version string
217            and splits it into a tuple of at most three integers.
218            Used make_tuple() to make tuple versions of the version
219            numbers.
220    
221            * Thuban/UI/about.py: Add Thuban email addresses.
222    
223    2003-06-30  Jonathan Coles   <[email protected]>
224    
225            * Thuban/version.py: SQLite/PySQLite version dependencies
226            were too high.
227    
228    2003-06-30  Jonathan Coles   <[email protected]>
229    
230            * Thuban/version.py: Update version to 0.8.1
231            
232            * MANIFEST.in: Added Projections so that default.proj is
233            included.
234    
235    2003-06-26  Jonathan Coles   <[email protected]>
236    
237            New About box with lots more information including library
238            versions and credits. More/better version checking before
239            Thuban starts.
240    
241            * Thuban/UI/about.py: New. New About box that displays
242            library version information and credits.
243    
244            * Thuban/version.py: Added new 'versions' dictionary which
245            contains the verions of various libraries which are checked
246            when the module loads.
247            (verify_versions): Check all version numbers and returns
248            a list of errors.
249    
250            * Thuban/UI/classifier.py (Classifier.__EnableButtons):
251            Reset the status of the buttons as the situation warrants,
252            but in a better more reliable way by not relying on the
253            current status to determine what needs to change.
254    
255            * Thuban/UI/main.py (wxCHECK_VERSION): Removed. Not needed.
256            (verify_versions): Remove most of the code since it is
257            now in Thuban.version.verify_versions.o
258    
259            * Thuban/UI/mainwindow.py (MainWindow.About): Call new
260            About box in Thuban.UI.about.
261    
262            * extensions/thuban/gdalwarp.cpp (get_gdal_version): New.
263            Returns the version of gdal library being used as a string.
264    
265            * extensions/thuban/wxproj.cpp (check_version, check_version_gtk):
266            Removed.
267            (get_proj_version): Return the version of PROJ that the file
268            was compiled with.
269            (get_gtk_version): Return th version of GTK that the file
270            was compiled with.
271    
272    2003-06-25  Jonathan Coles   <[email protected]>
273    
274            * Thuban/UI/classifier.py (Classifier.EditSymbol): The parent
275            of the SelectPropertiesDialog should be self so the window
276            appears on top.
277            (ClassGroupPropertiesCtrl.DoEdit): The parent
278            of the SelectPropertiesDialog should be self so the window
279            appears on top.
280    
281            * Thuban/UI/resource.py: Cleaned up how we determine file
282            extensions.
283            (GetImageResource): Return an wxImage from our Resources.
284    
285    2003-06-24  Jonathan Coles   <[email protected]>
286    
287            * Thuban/UI/renderer.py (ExportRenderer.render_legend):
288            Check that a layer has a classification before trying
289            to get it. Raster layers don't have classifications.
290    
291    2003-06-23  Jonathan Coles   <[email protected]>
292            
293            * setup.py: Add Resources/XML to resource list.
294        
295    2003-06-23  Jonathan Coles   <[email protected]>
296    
297            * setup.cfg: Fix copyright dates
298        
299    2003-06-23  Jonathan Coles   <[email protected]>
300    
301            * MANIFEST.in: Update with Resources/XML
302    
303            * setup.py: Don't include Locale resources yet as we don't
304            have any and it causes problems building the distribution
305            for Windows. Update version to 0.8.0.
306    
307            * Doc/thuban.dtd: Removed since it is now in Resources/XML.
308    
309            * Thuban/UI/mainwindow.py: Add blank line at the end because
310            file was not being read correctly building the Windows
311            distribution.
312    
313    2003-06-23  Jonathan Coles   <[email protected]>
314    
315            * Thuban/UI/mainwindow.py (MainWindow.About): Fix text.
316    
317            * Thuban/version.py: Temporarily update longversion for
318            the 0.8 release so that it doesn't have the cvs revision.
319    
320    2003-06-23  Jonathan Coles   <[email protected]>
321    
322            * Thuban/UI/common.py (ThubanBeginBusyCursor): Call wxSafeYield
323            to make sure that we don't create reentrant possibilities with
324            wxYield.
325    
326            * Thuban/UI/view.py (MapCanvas.OnPaint): Call wxBeginBusyCursor()
327            directly to avoid the wxSafeYield() call which generates an
328            OnPaint event causing infinite recursion. Don't try to catch
329            exception anymore. This was for before there were limits on map
330            scaling.
331    
332    2003-06-23  Bernhard Herzog  <[email protected]>
333    
334            Bug fix for RT #1961:
335    
336            * Thuban/Model/load.py (SessionLoader.start_derivedshapesource):
337            Register DerivedShapestores with the session
338    
339            * Thuban/Model/session.py (Session.Tables): Make sure each table
340            is only listed once.
341    
342            * test/test_load.py (TestJoinedTable.test): Add check_format call.
343            Update file contents to match the one written out.
344    
345    2003-06-20  Bernhard Herzog  <[email protected]>
346    
347            * test/xmlsupport.py (SaxEventLister.startElementNS)
348            (SaxEventLister.endElementNS): Do not include the qname. Python
349            2.2.1 and 2.2.2 and 2.2.3 differ in this regard. In 2.2.1 qname it
350            is (presumably incorrectly) None, whereas it's a string with the
351            element name in the later versions.
352    
353            * test/test_xmlsupport.py (TestEventList.test_even_list_simple)
354            (TestEventList.test_even_list_namespace): Update tests to reflect
355            the new behaviour
356            (TestEventList.test_even_list_id_normalization): Fix doc-string
357    
358    2003-06-20  Jonathan Coles   <[email protected]>
359    
360            * Thuban/Model/layer.py (BaseLayer.HasShapes): New. Overridden
361            by deriving classes to determine if that layer supports shapes.
362            (Layer): Override HasShapes and return true.
363    
364            * Thuban/UI/classgen.py: Use Thuban[Begin|End]BusyCursor()
365            instead of a direct call to wx[Begin|End]CusyCursor().
366            (GenUniquePanel._OnRetrieve): Set busy cursor while retrieving
367            table data.
368    
369            * Thuban/UI/common.py (ThubanBeginBusyCursor, ThubanEndBusyCursor):
370            New. Wrappers around the wxWindows functions that allow us to
371            make additional calls such as wxYield which gives the native
372            system a chance to update the cursor correctly.
373    
374            * Thuban/UI/tableview.py: Use Thuban[Begin|End]BusyCursor()
375            instead of a direct call to wx[Begin|End]CusyCursor().
376    
377            * Thuban/UI/view.py: Use Thuban[Begin|End]BusyCursor()
378            instead of a direct call to wx[Begin|End]CusyCursor().
379            (MapCanvas.find_shape_at): Check if the current search layer
380            support shapes, otherwise go on to the next layer.
381    
382            * test/test_layer.py: Add tests in each type of layer for
383            HasClassification() and HasShapes()
384    
385  2003-06-20  Jonathan Coles   <[email protected]>  2003-06-20  Jonathan Coles   <[email protected]>
386    
387          * 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.1370

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26