/[thuban]/branches/greater-ms3/thuban/ChangeLog
ViewVC logotype

Diff of /branches/greater-ms3/thuban/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 817 by jonathan, Mon May 5 15:05:36 2003 UTC revision 843 by bh, Tue May 6 17:13:15 2003 UTC
# Line 1  Line 1 
1    2003-05-06  Bernhard Herzog  <[email protected]>
2    
3            * Thuban/Model/transientdb.py (TransientTableBase.SimpleQuery):
4            Implement a simple query method for the query dialog
5            (TransientTableBase.create): Add an INTEGER PRIMARY KEY that holds
6            the row index or shapeid.
7            (TransientTable.create): Insert the right value of the row index
8            (TransientJoinedTable.create): Copy the row index of the left
9            table to the joined result table
10    
11            * test/test_transientdb.py
12            (TestTransientTable.test_transient_table_read_twice): Fix
13            doc-string
14            (TestTransientTable.test_transient_table_query): New. Test for the
15            SimpleQuery method
16    
17    2003-05-06  Bernhard Herzog  <[email protected]>
18    
19            Convert all table users to use the new table interface. This only
20            covers Thuban itself, not GREAT-ER or other applications built on
21            Thuban yet, so the compatibility interface stays in place for the
22            time being but it now issues DeprecationWarnings.
23    
24            Finally, the new Table interface has a new method, HasColumn.
25    
26            * Thuban/Model/table.py (OldTableInterfaceMixin): All methods
27            issue deprecation warnings when they're. The warnings refer to the
28            caller of the method.
29            (OldTableInterfaceMixin.__deprecation_warning): New. Helper method
30            for the deprecation warnings
31    
32            * test/test_table.py: Ignore the deprecation warnings for the old
33            table in the tests in this module. The purpose of the tests is to
34            test the old interface, after all.
35    
36            * test/test_transientdb.py
37            (TestTransientTable.run_iceland_political_tests): Use the
38            constants for the types. Add a test for HasColumn
39            (TestTransientTable.test_transient_joined_table): Adapt to new
40            table interface. Add a test for HasColumn
41            (TestTransientTable.test_transient_table_read_twice): Adapt to new
42            table interface
43    
44            * Thuban/UI/tableview.py (DataTable.SetTable, DataTable.GetValue):
45            Adapt to new table interface
46    
47            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Adapt to
48            new table interface
49    
50            * Thuban/UI/controls.py (RecordListCtrl.fill_list)
51            (RecordTable.SetTable): Adapt to new table interface
52    
53            * Thuban/UI/classifier.py (Classifier.__init__)
54            (Classifier.__init__): Adapt to new table interface
55    
56            * Thuban/UI/classgen.py (ClassGenDialog.__init__)
57            (GenUniformPanel._OnRetrieve, GenUniquePanel._OnRetrieve): Adapt
58            to new table interface
59    
60            * Thuban/Model/transientdb.py (TransientTableBase.HasColumn)
61            (AutoTransientTable.HasColumn): Implement the new table interface
62            method
63            (AutoTransientTable.ReadRowAsDict, AutoTransientTable.ValueRange)
64            (AutoTransientTable.UniqueValues): Adapt to new table interface
65    
66            * Thuban/Model/layer.py (Layer.SetShapeStore, Layer.GetFieldType):
67            Adapt to new table interface
68    
69            * test/test_layer.py (TestLayer.open_shapefile): Helper method to
70            simplify opening shapefiles a bit easier.
71            (TestLayer.test_arc_layer, TestLayer.test_polygon_layer)
72            (TestLayer.test_point_layer): Use the new helper method
73            (TestLayer.test_get_field_type): New. Test for the GetFieldType
74            method
75    
76            * test/test_dbf_table.py (TestDBFTable.test_has_column): Test for
77            the new table method
78    
79            * test/test_memory_table.py (TestMemoryTable.test_has_column):
80            Test for the new table method HasColumn
81    
82    2003-05-06  Jonathan Coles   <[email protected]>
83    
84            Addresses the "Selection Extent" wish of RTbug #1787.
85    
86            * Resources/Bitmaps/fulllayerextent.xpm,
87            Resources/Bitmaps/fullselextent.xpm: Bitmaps for layer and selection
88            extent. These are just place holders for the real bitmaps.
89    
90            * Thuban/Model/layer.py (Shape): Since a Shape is immutable only
91            calculate the bounding box once (the first time compute_bbox() is
92            called).
93            (Layer.ShapesBoundingBox): New. Given a list of shape ids, return
94            the bounding box for the shapes in lat/long coordinates.
95    
96            * Thuban/UI/mainwindow.py: Added new "Full selection extent" menu
97            option.
98            (MainWindow.has_selected_shapes): New. Returns true if there are
99            any selected shapes.
100            (MainWindow.FullSelectionExtent): New. Calls
101            MapCanvas.FitSelectedToWindow() when the user selects the menu option.
102            (_has_selected_shapes): New. Returns true if there are any
103            selected shapes.
104    
105            * Thuban/UI/selection.py (Selection.HasSelectedShapes): New. Returns
106            true if there are any selected shapes.
107    
108            * Thuban/UI/view.py (MapCanvas): Added delegated method
109            HasSelectedShapes.
110            (MapCanvas.FitSelectedToWindow): New. Centers and scales any selected
111            shapes on the canvas using the map projection (if any).
112    
113            * test/test_layer.py (TestLayer.test_arc_layer): Add some tests
114            for Layer.ShapesBoundingBox().
115    
116    2003-05-06  Bernhard Herzog  <[email protected]>
117    
118            * Resources/Projections/defaults.proj: Fix spelling of Mercator
119    
120    2003-05-05  Jonathan Coles   <[email protected]>
121    
122            Addresses the "Full Layer Extent" wish of RTbug #1787.
123    
124            * Resources/Projections/defaults.proj: Added UK National Grid.
125    
126            * Thuban/UI/mainwindow.py: Added new "Full layer extent" menu option.
127            (MainWindow.FullLayerExtent): New. Calls MapCanvas.FitLayerToWindow()
128            when the user selects the menu option.
129    
130            * Thuban/UI/view.py (MapCanvas.FitLayerToWindow): New. Centers and
131            scales the given layer on the canvas using the map projection.
132    
133    2003-05-05  Bernhard Herzog  <[email protected]>
134    
135            Convert the table implementations to a new table interface. All
136            tables use a common mixin class to provide backwards compatibility
137            until all table users have been updated.
138    
139            * Thuban/Model/table.py (OldTableInterfaceMixin): Mixin class to
140            provide backwards compatibility for table classes implementing the
141            new interface
142            (DBFTable, MemoryTable): Implement the new table interface. Use
143            OldTableInterfaceMixin as base for compatibility
144            (DBFColumn, MemoryColumn): New. Column description for DBFTable
145            and MemoryTable resp.
146    
147            * test/test_dbf_table.py: New. Test cases for the DBFTable with
148            the new table interface.
149    
150            * test/test_memory_table.py: New. Test cases for the MemoryTable
151            with the new table interface.
152    
153            * test/test_table.py: Document the all tests in this file as only
154            for backwards compatibility. The equivalent tests for the new
155            interface are in test_memory_table.py and test_dbf_table.py
156            (MemoryTableTest.test_read): field_info should be returning tuples
157            with four items
158            (MemoryTableTest.test_write): Make doc-string a more precise.
159    
160            * Thuban/Model/transientdb.py (TransientTableBase): Convert to new
161            table interface. Derive from from OldTableInterfaceMixin for
162            compatibility.
163            (TransientTableBase.create): New intance variable column_map to
164            map from names and indices to column objects
165            (TransientTable.create): Use the new table interface of the input
166            table
167            (AutoTransientTable): Convert to new table interface. Derive from
168            from OldTableInterfaceMixin for compatibility.
169            (AutoTransientTable.write_record): Removed. It's not implemented
170            yet and we still have to decide how to handle writing with the new
171            table and data framework.
172    
173            * test/test_transientdb.py
174            (TestTransientTable.run_iceland_political_tests)
175            (TestTransientTable.test_transient_joined_table): Use the new
176            table interface
177    
178  2003-05-05  Jonathan Coles   <[email protected]>  2003-05-05  Jonathan Coles   <[email protected]>
179    
180          This is namely a collection of UI updates to improve user interactivity.          This is namely a collection of UI updates to improve user interactivity.

Legend:
Removed from v.817  
changed lines
  Added in v.843

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26