/[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 743 by jonathan, Fri Apr 25 10:26:03 2003 UTC revision 788 by bh, Wed Apr 30 10:57:36 2003 UTC
# Line 1  Line 1 
1    2003-04-30  Bernhard Herzog  <[email protected]>
2    
3            * Thuban/UI/mainwindow.py (MainWindow.identify_view_on_demand): Do
4            not pop up the dialog if the selection becomes empty (this could
5            happen if e.g. a new selection is opened while the identify tool
6            is active and dialog had been closed)
7    
8    2003-04-30  Bernhard Herzog  <[email protected]>
9    
10            * Thuban/Model/transientdb.py (TransientTableBase.__init__): New
11            instance variable read_record_last_result
12            (TransientTableBase.read_record): Make sure reading the same
13            record twice works. The implementation uses the new instance
14            variable read_record_last_result
15    
16            * test/test_transientdb.py
17            (TestTransientTable.test_transient_table_read_twice): New test
18            case for the above bug-fix.
19    
20    2003-04-29  Bernhard Herzog  <[email protected]>
21    
22            * Thuban/Model/session.py (Session.Destroy): Explicitly close the
23            transient DB if it exists to make sure it doesn't leave a journal
24            file in the temp directory.
25    
26            * Thuban/Model/transientdb.py (TransientDatabase.close): Set
27            self.conn to None after closing the connection to make sure it's
28            not closed twice
29    
30    2003-04-29  Jonathan Coles   <[email protected]>
31    
32            Add a visible parameter in the layer XML tag. The default value is
33            "true". If anything other than "false" is specified we also assume
34            "true". Addresses RTbug #1025.
35    
36            * Doc/thuban.dtd: Add visible parameter to a layer.
37    
38            * Thuban/Model/layer.py (BaseLayer.__init__): Change default value
39            of visible from 1 to True.
40            (Layer.__init__): Change default value of visible from 1 to True.
41    
42            * Thuban/Model/load.py (SessionLoader.start_layer): Read visible
43            parameter.
44    
45            * Thuban/Model/save.py (SessionSaver.write_layer): Save visible
46            parameter.
47    
48            * test/test_load.py: Add new test data contents_test_visible.
49            (LoadSessionTest.setUp): save test data.
50            (LoadSessionTest.testLayerVisibility): Test if the visible flag
51            is loaded correctly.
52    
53            * test/test_save.py (SaveSessionTest.testSingleLayer): Add test
54            for saving an invisible layer.
55    
56    2003-04-29  Jonathan Coles   <[email protected]>
57    
58            * Thuban/UI/mainwindow.py (MainWindow.SetMap): Look up the
59            legend dialog box and tell it to change its map to the one
60            supplied to SetMap(). Fixes RTbug #1770.
61    
62    2003-04-29  Bernhard Herzog  <[email protected]>
63    
64            Next step of table implementation. Introduce a transient database
65            using SQLite that some of the data is copied to on demand. This
66            allows us to do joins and other operations that require an index
67            for good performance with reasonable efficiency. Thuban now needs
68            SQLite 2.8.0 and pysqlite 0.4.1. Older versions may work but I
69            haven't tested that.
70            
71            * Thuban/Model/transientdb.py: New. Transient database
72            implementation.
73    
74            * test/test_transientdb.py: New. Tests for the transient DB
75            classes.
76    
77            * Thuban/Model/session.py (AutoRemoveFile, AutoRemoveDir): New
78            classes to help automatically remove temporary files and
79            directories.
80            (Session.__init__): New instance variables temp_dir for the
81            temporary directory and transient_db for the SQLite database
82            (Session.temp_directory): New. Create a temporary directory if not
83            yet done and return its name. Use AutoRemoveDir to have it
84            automatically deleted
85            (Session.TransientDB): Instantiate the transient database if not
86            done yet and return it.
87    
88            * Thuban/Model/data.py (ShapefileStore.__init__): Use an
89            AutoTransientTable so that data is copied to the transient DB on
90            demand.
91            (SimpleStore): New class that simply combines a table and a
92            shapefile
93    
94            * Thuban/Model/table.py (Table, DBFTable): Rename Table into
95            DBFTable and update its doc-string to reflect the fact that this
96            is only the table interface to a DBF file. Table is now an alias
97            for DBFTable for temporary backwards compatibility.
98    
99            * Thuban/UI/application.py (ThubanApplication.OnExit): Make sure
100            the last reference to the session goes away so that the temporary
101            files are removed properly.
102    
103            * test/test_load.py (LoadSessionTest.tearDown): Remove the
104            reference to the session to make sure the temporary files are
105            removed.
106    
107    2003-04-29  Bernhard Herzog  <[email protected]>
108    
109            * Thuban/Model/load.py (XMLReader.__init__, XMLReader.read): Turn
110            the __parser instance variable into a normal local variable in
111            read. It's only used there and read will never be called more than
112            once. Plus it introduces a reference cycle that keeps can keep the
113            session object alive for a long time.
114    
115    2003-04-29  Jonathan Coles   <[email protected]>
116    
117            * Thuban/Model/proj.py (Projection): Removed Set*() methods to make
118            Projection an immutable item. Fixes RTbug #1825.
119            (Projection.__init__): Initialize instance variables here.
120            (ProjFile.Replace): New. Replace the given projection object with
121            the new projection object. This solves the problem of needing the
122            mutator Projection.SetProjection() in the ProjFrame class and
123            allows a projection to change parameters without changing its
124            location in the file.
125    
126            * Thuban/UI/mainwindow.py (MainWindow.SaveSessionAs): Dialog should
127            be of type wxSAVE and should verify overwriting a file.
128    
129            * Thuban/UI/projdialog.py (ProjFrame._OnSave): Use the new
130            ProjFile.Replace() method instead of the mutator
131            Projection.SetProjection(). Also requires that we reassign the
132            client data to the new projection.
133    
134            * test/test_proj.py (TestProjection.test): Test GetName() and
135            GetAllParameters()
136            (TestProjFile.test): Remove tests for Set*() methods. Add tests
137            for Replace().
138    
139    2003-04-25  Jonathan Coles   <[email protected]>
140    
141            * Thuban/Model/save.py (SessionSaver.write_projection): Make sure
142            to save the name of the projection.
143    
144            * test/test_save.py (SaveSessionTest.testLayerProjection): New
145            test to verify layer projections are saved correctly.
146    
147    2003-04-25  Jonathan Coles   <[email protected]>
148    
149            * Thuban/Model/proj.py (Projection.SetName): Set the name
150            to "Unknown" if name is None.
151            (Projection.SetAllParameters): New. Set the projection's
152            parameter list to the one supplied.
153            (Projection.SetProjection): New. Set the projection's
154            properties to those of the supplied Projection.
155    
156            * Thuban/UI/mainwindow.py (MainWindow.MapProjection): Set
157            the dialog title to include the map's title.
158            (MainWindow.LayerProjection): Set the dialog title to include
159            the layer's title.
160    
161            * Thuban/UI/projdialog.py (ProjFrame.__ShowError): Consolidate
162            error dialogs into a single method call.
163            (ProjFrame.__VerifyButtons): Add more states to check.
164            (ProjFrame.__GetProjection): Return the current state of an
165            edited projection or None.
166            (ProjFrame.__FillAvailList): Remove checks for states that
167            shouldn't exist.
168            (ProjFrame._OnNew): Clear all selected items and supply
169            a projection panel if necessary.
170    
171            * test/test_proj.py (TestProjFile.test): Add tests for
172            ProjFile.SetAllParameters, ProjFile.SetProjection,
173            ProjFile.SetName.
174    
175    2003-04-25  Jonathan Coles   <[email protected]>
176    
177            * Thuban/UI/projdialog.py (ProjFrame.__FillAvailList): Now
178            takes an optional argument to select the current projection.
179            This does not guarantee that the item is visible due to
180            limited wxWindows functionality. Fixes RTBug #1821.
181    
182  2003-04-25  Jonathan Coles   <[email protected]>  2003-04-25  Jonathan Coles   <[email protected]>
183    
184          * Thuban/Model/load.py (SessionLoader.start_projection): Remember          * Thuban/Model/load.py (SessionLoader.start_projection): Remember

Legend:
Removed from v.743  
changed lines
  Added in v.788

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26