/[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 988 by bh, Thu May 22 16:46:23 2003 UTC revision 1071 by bh, Tue May 27 15:09:48 2003 UTC
# Line 1  Line 1 
1    2003-05-27  Bernhard Herzog  <[email protected]>
2    
3            * Thuban/UI/mainwindow.py (table_close command): Make it sensitive
4            iff there are unreferenced tables in the session
5    
6    2003-05-27  Bernhard Herzog  <[email protected]>
7    
8            * Thuban/Model/messages.py (TABLE_REMOVED): New message.
9    
10            * Thuban/Model/session.py (Session.UnreferencedTables): New method
11            to return tables that are not referenced by other tables or shape
12            stores and can be removed.
13            (Session.RemoveTable): Issue a TABLE_REMOVED message after
14            removing the table
15    
16            * Thuban/UI/mainwindow.py: Remove unused imports
17            (MainWindow.TableClose): Implement.
18    
19            * Thuban/UI/tableview.py (TableFrame.__init__): Subscribe to some
20            messages so that the frame will be automatically closed when a new
21            session is opened or the table is removed.
22            (TableFrame.OnClose): Unsubscribe the Subscriptions made in
23            __init__
24            (TableFrame.close_on_session_replaced)
25            (TableFrame.close_on_table_removed): New. Subscribers that close
26            the window
27    
28            * test/test_session.py (TestSessionMessages.test_remove_table)
29            (TestSessionSimple.test_remove_table): Move the test to
30            TestSessionSimple and add test for the TABLE_REMOVED message
31            (TestSessionBase.setUp): Also subscribe to TABLE_REMOVED
32            (TestSessionSimple.test_unreferenced_tables) New. Test for the
33            UnreferencedTables method.
34            (UnreferencedTablesTests): New. Class with some more sophisticated
35            tests for UnreferencedTables.
36    
37    2003-05-27  Frank Koormann  <[email protected]>
38    
39            * Thuban/UI/tableview.py (QueryTableFrame.__init__): The "_S_election"
40            display has some unwanted side effects. Removed again.
41    
42    2003-05-27  Frank Koormann  <[email protected]>
43    
44            * Resources/Bitmaps/legend_icon_layer.xpm: New, icon for legend.
45    
46            * Thuban/UI/legend.py (LegendTree.__FillTree): Use "legend_icon_layer"
47    
48    2003-05-27  Jan-Oliver Wagner <[email protected]>
49    
50            * test/test_menu.py (MenuTest.test): Added test for
51            Menu.RemoveItem().
52    
53            * Thuban/UI/menu.py (Menu.RemoveItem): New. Remove an item from
54            the menu.
55    
56    2003-05-27  Frank Koormann  <[email protected]>
57            
58            Nonmodal dialogs without parent (i.e. they can fall behind the main
59            window)
60    
61            * Thuban/UI/mainwindow.py (MainWindow.OnClose): Explicitly destroy
62            all dialogs in the dialogs dictionary and the canvas.
63    
64            * Thuban/UI/dialogs.py (NonModalNonParentDialog): New class, without
65            parent, i.e. can fall behind other windows.
66            (NonModalDialog.OnClose): Check is dialog is in mainwindow.dialog
67            dictionary before removing it.
68    
69            * Thuban/UI/classifier.py: Dialog derived from NonModalNonParentDialog
70    
71            * Thuban/UI/projdialog.py: Dialog derived from NonModalNonParentDialog
72            * Thuban/UI/tableview.py: Dialog derived from NonModalNonParentDialog
73            * Thuban/UI/tree.py: Dialog derived from NonModalNonParentDialog
74    
75    2003-05-27  Bernhard Herzog  <[email protected]>
76    
77            * Thuban/UI/mainwindow.py (MainWindow.ShowTableView): New. Open a
78            tableview dialog
79            (MainWindow.TableShow): Use ShowTableView to open the dialogs.
80            Also, don't use the table's titles as the dialog names. The titles
81            aren't guaranteed to be unique.
82            (MainWindow.TableOpen): Open a table view dialog after opening the
83            table
84    
85    2003-05-27  Bernhard Herzog  <[email protected]>
86    
87            * Thuban/UI/mainwindow.py: Remove the Table/Hide menu item. Its
88            effect can be achieved by simply closing the window showing the
89            table.
90            (MainWindow.TableHide): Removed.
91            (main_menu): Removed "table_hide"
92    
93    2003-05-27  Frank Koormann  <[email protected]>
94    
95            Fix legend tree display problems under Win32
96    
97            * Thuban/UI/legend.py:  BMP_SIZE_W = 15
98            (LegendTree.__FillTree): Display "legend_icon_map.xpm" with layer title.
99            (LegendTree.__FillTreeLayer): Explicitely set SelectedImage.
100    
101            * Resources/Bitmaps/legend_icon_map.xpm: New icon for legend.
102    
103    2003-05-27  Jan-Oliver Wagner <[email protected]>
104    
105            * Thuban/UI/menu.py (Menu.InsertSeparator): Additional optional parameter
106            'after' now allows to insert separators almost anywhere in the menu.
107    
108    2003-05-27  Frank Koormann  <[email protected]>
109    
110            * Thuban/UI/tableview.py (QueryTableFrame.__init__): Underline the
111            "S" of selection box label to hint on hot key (Alt-S). Works under
112            Win32 but is ignored under GTK.
113    
114    2003-05-26  Frank Koormann  <[email protected]>
115    
116            * Thuban/UI/projdialog.py (ProjFrame.__do_layout, ProjPanel._DoLayout):
117            Center Choices.
118    
119    2003-05-26  Bernhard Herzog  <[email protected]>
120    
121            Remove the Precision methods again. They're too DBF specific to be
122            part of the table interface and they're only used in table_to_dbf
123            anyway.
124            
125            * Thuban/Model/transientdb.py (TransientTableBase.Width):Use a
126            fixed precision of 12 for doubles.
127            (TransientTableBase.Precision): Removed
128            (AutoTransientTable.Width): Delegate to self.table.
129    
130            * Thuban/Model/table.py (DBFTable.Precision)
131            (MemoryTable.Precision): Removed.
132            (MemoryTable.Width): Use a fixed precision of 12 for doubles.
133            (table_to_dbf): Use a fixed precision of 12 for floats unless the
134            column object specifies something else.
135    
136            * test/test_dbf_table.py (TestTableToDBF.test_table_to_dbf): New.
137            test for table_to_dbf
138    
139    2003-05-26  Bernhard Herzog  <[email protected]>
140    
141            * test/test_transientdb.py
142            (TestTransientTable.run_iceland_political_tests): Fix a comment.
143    
144    2003-05-26  Bernhard Herzog  <[email protected]>
145    
146            * Thuban/UI/mainwindow.py (MainWindow.TableOpen): Real
147            implementation. Mark parts of the file format strings for
148            localization.
149    
150            * Thuban/Model/session.py (Session.OpenTableFile): New. Open a dbf
151            file and add the table to the tables managed by the session
152    
153            * test/test_session.py (TestSessionSimple.test_open_table_file):
154            New. test case for OpenTableFile
155    
156    2003-05-26  Jan-Oliver Wagner <[email protected]>
157    
158            * Thuban/UI/controls.py, Thuban/UI/identifyview.py, Thuban/UI/join.py,
159            Thuban/UI/labeldialog.py, Thuban/UI/mainwindow.py,
160            Thuban/UI/proj4dialog.py, Thuban/UI/tableview.py, Thuban/UI/view.py:
161            Replace the true/false of wxWindows by True/False of Python 2.2.1.
162    
163    2003-05-26  Jan-Oliver Wagner <[email protected]>
164    
165            * Thuban/UI/tableview.py (LayerTableFrame.__init__): If there is
166            already a selection present, update the grid accordingly.
167    
168            * Thuban/UI/mainwindow.py (MainWindow.TableShow): Make the dialog
169            resizeable and increase its initial size.
170    
171    2003-05-26  Frank Koormann  <[email protected]>
172    
173            Table export functionality
174    
175            * Thuban/Model/table.py (DBFTable.Width, MemoryTable.Width):
176            Return width (in characters) for a column.
177            (DBFTable.Precision, MemoryTable.Precision): Return decimal precision.
178            (table_to_dbf): Write table to dbf file.
179            (table_to_csv): Write table to csv file.
180    
181            * Thuban/Model/transientdb.py (TransientTableBase.Width,
182            TransientTableBase.Precision): Return column width and precision.
183    
184            * Thuban/UI/tableview.py (QueryTableFrame.OnSaveAs): Call table_to_dbf
185            or table_to_csv depending on file selection.
186    
187            * test/test_dbf_table.py:
188            Test table_to_dbf (extension of former part of test).
189    
190            * test/test_csv_table.py:
191            Test table_to_csv.
192    
193    2003-05-23  Jan-Oliver Wagner <[email protected]>
194    
195            * Thuban/UI/join.py (JoinDialog.OnJoin): Use _() for strings.
196            Use QueryTableFrame instead of TableFrame.
197    
198            * Thuban/UI/mainwindow.py (MainWindow.LayerShowTable): Prefix the
199            table window with 'Layer Table:' instead of 'Table:'.
200    
201    2003-05-23  Jan-Oliver Wagner <[email protected]>
202    
203            Give all tables a title via mix-in TitledObject.LayerShowTable
204    
205            * Thuban/Model/base.py (TitledObject.SetTitle): Call method 'issue'
206            only if it exists.
207    
208            * Thuban/Model/table.py (DBFTable, MemoryTable): mix-in TitledObject
209            and call its init-method with a default title. Remove Title() method.
210    
211            * Thuban/Model/transientdb.py (TransientTable, TransientJoinedTable,
212            AutoTransientTable): mix-in TitledObject and call its init-method with
213            a default title. Remove Title() method.
214    
215    2003-05-23  Bernhard Herzog  <[email protected]>
216    
217            * Thuban/Model/session.py (Session.AddShapeStore): Define
218            AddShapeStore analogously to AddTable.
219    
220            * test/test_session.py (TestSessionSimple.test_add_shapestore):
221            New. Test for AddShapeStore
222    
223    2003-05-23  Jan-Oliver Wagner <[email protected]>
224    
225            Introducing QueryTableFrame and a very coarse ShowTable implementation.
226    
227            * Thuban/UI/tableview.py (LayerTableFrame, QueryTableFrame): Split the
228            class LayerTableFrame into two classes, LayerTableFrame and QueryTableFrame.
229            The latter implements the selection GUI without dependency on a layer.
230            LayerTableFrame now is derived from QueryTableFrame and connects
231            to a layer.
232    
233            * Thuban/UI/mainwindow.py (MainWindow.TableShow): A very coarse
234            implementation that still needs work.
235    
236            * Thuban/Model/layer.py (Layer.TreeInfo): Added filename.
237    
238    2003-05-22  Frank Koormann  <[email protected]>
239    
240            * Thuban/Model/transientdb.py (TransientJoinedTable.__init__):
241            Added "outer_join = False" as optional parameter.
242            (TransientJoinedTable.create): If outer join is true, perform a
243            "LEFT OUTER JOIN" instead of "JOIN", which preserves all records of
244            the left table. Records not matching are filled with 0 / None.
245    
246            * Thuban/UI/join.py (JoinDialog.__init__): Checkbox for outer join.
247            (JoinDialog.OnJoin): Consider outer join check box.
248    
249    2003-05-22  Bernhard Herzog  <[email protected]>
250    
251            * Thuban/UI/join.py (JoinDialog.OnJoin): Use exc_info in a
252            somewhat safer way. Storing the traceback in a local variable can
253            lead to memory leaks
254    
255    2003-05-22  Bernhard Herzog  <[email protected]>
256    
257            * Thuban/UI/join.py (JoinDialog.OnJoin): Make sure to really call
258            the wxMessageDialog's Destroy() method.
259    
260    2003-05-22  Frank Koormann  <[email protected]>
261    
262            * Thuban/UI/join.py (JoinDialog.__init__): Make use of
263            TransientTable.Title()
264    
265    2003-05-22  Frank Koormann  <[email protected]>
266    
267            Join Dialog, initial version.
268    
269            * Thuban/UI/mainwindow.py (MainWindow.TableJoin): Removed print.
270    
271            * Thuban/UI/join.py (JoinDialog): Functional implementation of
272            former framework. Renamed Table1/Table2 to LeftTable/RightTable
273            in all occurences.
274    
275            * Thuban/Model/transientdb.py (TransientJoinedTable.__doc__):
276            Typo fixed.
277    
278    2003-05-22  Bernhard Herzog  <[email protected]>
279    
280            Give the tables titles so that the GUI can display more meaningful
281            names. For now the titles are fixed but depend on e.g. filenames
282            or the titles of the joined tables.
283    
284            * Thuban/Model/transientdb.py (TransientTable.Title)
285            (TransientJoinedTable.Title, AutoTransientTable.Title): New.
286    
287            * Thuban/Model/table.py (DBFTable.Title, MemoryTable.Title): New.
288    
289            * test/test_transientdb.py
290            (TestTransientTable.test_auto_transient_table_title): New. Test
291            for the Title method
292            (TestTransientTable.test_transient_joined_table)
293            (TestTransientTable.test_transient_table): Add test for the Title
294            methods
295    
296            * test/test_memory_table.py (TestMemoryTable.test_title): New.
297            Test for the Title method
298    
299            * test/test_dbf_table.py (TestDBFTable.test_title): New. Test for
300            the Title method
301    
302    2003-05-22  Bernhard Herzog  <[email protected]>
303    
304            * test/test_layer.py (TestLayer.setUp, TestLayer.tearDown):
305            Provide a better way to destroy the layers
306            (TestLayer.test_base_layer, TestLayer.test_arc_layer)
307            (TestLayer.test_point_layer, TestLayer.test_empty_layer)
308            (TestLayer.test_polygon_layer, TestLayer.test_get_field_type): Use
309            the new way to destroy the layers.
310            (TestLayer.test_derived_store): New. Test for using a layer with a
311            DerivedShapeStore
312    
313            * Thuban/Model/layer.py (Layer.SetShapeStore): Only set the
314            filename if the shape store actually has one.
315    
316    2003-05-22  Bernhard Herzog  <[email protected]>
317    
318            * Thuban/Model/table.py (DBFTable.FileName): New. Accessor method
319            for the filename
320    
321            * test/test_dbf_table.py (TestDBFTable.test_filename): New. Test
322            for the FileName method
323            (TestDBFTableWriting.test_write): Fix spelling of filename
324    
325    2003-05-22  Thomas Koester  <[email protected]>
326    
327            * Thuban/Model/range.py, test/test_range.py: Brought over new Range
328            from SciParam that now really is immutable.
329    
330    2003-05-22  Frank Koormann  <[email protected]>
331    
332            Layer Top/Bottom placement added to legend.
333    
334            * Thuban/UI/legend.py
335            (LegendPanel._OnMoveTop(), LayerPanel._OnMoveBottom): New, methods
336            bound to tool events.
337            (LegendTree.MoveCurrentItemTop(), LegendTree.MoveCurrentItemBottom):
338            New, methods binding the event methods with the map methods.
339    
340            * Thuban/Model/map.py (Map.TopLayer(), Map.BottomLayer()): New, place
341            layer at top/bottom of layer stack.
342    
343            * Resources/Bitmaps/top_layer.xpm: New button icon.
344    
345            * Resources/Bitmaps/bottom_layer.xpm: New button icon.
346    
347  2003-05-22  Bernhard Herzog  <[email protected]>  2003-05-22  Bernhard Herzog  <[email protected]>
348    
349          * Thuban/Model/session.py (Session.RemoveTable): New method to          * Thuban/Model/session.py (Session.RemoveTable): New method to

Legend:
Removed from v.988  
changed lines
  Added in v.1071

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26