/[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 1112 by bh, Fri May 30 09:55:04 2003 UTC revision 1152 by frank, Wed Jun 11 11:06:27 2003 UTC
# Line 1  Line 1 
1    2003-06-11  Frank Koormann  <[email protected]>
2    
3            * Thuban/Lib/fileutil.py (get_application_dir): Minor stability
4            update.
5    
6    2003-06-11  Frank Koormann  <[email protected]>
7    
8            * Thuban/Lib/fileutil.py (get_application_dir): New function to
9            determine the absolute .thuban/thuban directory under
10            "posix" (os.expanduser) and "nt" (read AppData registry key).
11    
12            * Thuban/Model/resource.py: Use get_application_dir
13    
14            * Thuban/UI/application.py (ThubanApplication.read_startup_files):
15            Use get_application_dir.
16    
17    2003-06-10  Bernhard Herzog  <[email protected]>
18    
19            * Thuban/UI/tableview.py (LayerTableFrame.__init__): Subscribe to
20            the messages MAP_LAYERS_REMOVED messages
21            (LayerTableFrame.OnClose): Unsubscribe from it.
22            (LayerTableFrame.map_layers_removed): New. Receiver for
23            MAP_LAYERS_REMOVED. Close the dialog when the layer whose the
24            dialog is showing is removed.
25    
26    2003-06-10  Bernhard Herzog  <[email protected]>
27    
28            * Thuban/Lib/connector.py (Connector.Issue): Iterate over a copy
29            of the receivers list so that unsubscribing in a receiver doesn't
30            modify it while iterating over it.
31    
32            * test/test_connector.py
33            (ConnectorTest.test_disconnect_in_receiver): New. Test whether
34            unsubscribing in a receiver works correctly. See docstring for
35            details
36    
37    2003-06-10  Bernhard Herzog  <[email protected]>
38    
39            * Thuban/Model/messages.py (LAYER_SHAPESTORE_REPLACED): New
40            message.
41    
42            * Thuban/Model/layer.py (Layer.SetShapeStore): Send
43            LAYER_SHAPESTORE_REPLACED when the shapestore changes. A
44            LAYER_CHANGED will still be sent if the classification changes.
45    
46            * Thuban/UI/classifier.py (Classifier.__init__): Add the map as
47            parameter so we can subscribe to some of its messages
48            (Classifier.__init__): Subscribe to the map's MAP_LAYERS_REMOVED
49            and the layer's LAYER_SHAPESTORE_REPLACED
50            (Classifier.unsubscribe_messages): New. Unsubscribe from message
51            subscribed to in __init__
52            (Classifier.map_layers_removed)
53            (Classifier.layer_shapestore_replaced): receivers for the messages
54            subscribed to in __init__. Unsubscribe and close the dialog
55    
56            * Thuban/UI/mainwindow.py (MainWindow.OpenLayerProperties): Pass
57            the map to the Classifier dialog
58    
59            * test/test_layer.py (SetShapeStoreTests): Derive from
60            SubscriberMixin as well so we can test messages
61            (SetShapeStoreTests.setUp): Subscribe to some of the layer's
62            messages
63            (SetShapeStoreTests.tearDown): Clear the messages again
64            (SetShapeStoreTests.test_sanity): Expand the doc-string and check
65            for the modified flag too
66            (SetShapeStoreTests.test_set_shape_store_modified_flag): New test
67            to check whether SetShapeStore sets the modified flag
68            (SetShapeStoreTests.test_set_shape_store_different_field_name)
69            (SetShapeStoreTests.test_set_shape_store_same_field)
70            (SetShapeStoreTests.test_set_shape_store_same_field_different_type):
71            Add tests for the messages. This checks both the new
72            LAYER_SHAPESTORE_REPLACED and the older LAYER_CHANGED
73    
74    2003-06-06  Jan-Oliver Wagner <[email protected]>
75    
76            * Thuban/UI/mainwindow.py: Improved and partly added help texts for
77            the menu items.
78    
79    2003-06-05  Frank Koormann  <[email protected]>
80    
81            * Thuban/UI/identifyview.py (IdentifyView.__init__):
82            Layout reimplemented without panel. Make life easier to fit the list
83            in the dialog.
84    
85    2003-06-05  Frank Koormann  <[email protected]>
86    
87            * Thuban/UI/projdialog.py (ProjFrame.__init__): Fill the projchoice
88            once on initialisation (Former implementation resulted in multiple
89            entries for each projection).
90            (ProjFrame.__FillAvailList): selectProj as second optional parameter,
91            if set, select the projection found under the specified name. This
92            overwrites any other selection estimate.
93            Removed projchoice filling from this method.
94            (ProjFrame._OnSave, ProjFrame._OnAddToList):
95            Updated call of ProjFrame.__FillAvailList
96            (LCCPanel._DoLayout): Moved parameter controls in more common order.
97    
98            * Resources/Projections/defaults.proj: Extended defaults representing
99            various common European projections.
100    
101    2003-06-05  Frank Koormann  <[email protected]>
102    
103            * Thuban/UI/identifyview.py (IdentifyView.__init__):
104            Use ListCtrl instead of GridCtrl
105    
106            * Thuban/Model/resource.py:
107            Guess location of .thuban directory from tempdir parent directory.
108    
109            * Thuban/UI/application.py (ThubanApplication.read_startup_files):
110            Guess location of .thuban directory from tempdir parent directory.
111    
112    2003-06-04  Bernhard Herzog  <[email protected]>
113    
114            Do not cache the values returned by the tree widget's
115            GetFirstChild and GetNextChild methods because it led to lots of
116            segfaults. The new way requires more brute force but is more
117            reliable.
118    
119            * Thuban/UI/legend.py (LegendTree.__init__): Remove instance
120            variable layer2id
121            (LegendTree.find_layer): New method to do with brute force what
122            layer2id tried to accomplish
123            (LegendTree._OnMsgLayerChanged)
124            (LegendTree._OnMsgLayerTitleChanged, LegendTree.__ShowHideLayer):
125            Use find_layer instead of layer2id
126            (LegendTree.__RemoveLayer, LegendTree.__AddLayer): No need to
127            update layer2id anymore
128            (LegendTree._OnMsgMapLayersRemoved)
129            (LegendTree._OnMsgMapLayersAdded): Get by without layer2id.
130    
131    2003-06-03  Thomas Koester  <[email protected]>
132    
133            * Thuban/Model/classgen.py (GenQuantiles0): New function.
134    
135    2003-06-02  Bernhard Herzog  <[email protected]>
136    
137            * Thuban/UI/mainwindow.py (layer_rename command, table_rename command):
138            New commands.
139            (main_menu): Add the new commands.
140            (MainWindow.TableRename): New. Implementation of the table_rename
141            command.
142            (MainWindow.RenameLayer): New. Implementation of the layer_rename
143            command.
144    
145            * Thuban/Model/session.py (Session.AddTable): call self.changed to
146            set the modified flag
147    
148            * test/test_session.py (TestSessionSimple.test_add_table): Test
149            whether the modified flag is set properly
150    
151            * Thuban/Model/base.py (TitledObject.SetTitle): Call changed
152            instead of issue so that the modified flags get updated.
153    
154            * test/test_base.py (SomeTitledObject): Derive from Modifiable
155            instead of Publisher to reflect reality better and to accomodate
156            the fact that SetTitle now calls changed instead of issue
157    
158    2003-06-02  Bernhard Herzog  <[email protected]>
159    
160            * Thuban/UI/classgen.py (GenQuantilesPanel.GetList): Resource
161            acquisition has to happen before the try in a try-finally.
162    
163    2003-06-02  Bernhard Herzog  <[email protected]>
164    
165            * Thuban/UI/legend.py (LegendTree._OnMsgMapLayersRemoved): It's
166            possible that a layer is removed that is not currently selected in
167            the legend so don't check for this.
168    
169    2003-05-30  Bernhard Herzog  <[email protected]>
170    
171            * Thuban/Model/layer.py (Layer.Destroy): Set all instance
172            variables to None that have direct or indirect references to
173            shapefiles or dbf files to make sure that they do go away and the
174            files are closed.
175    
176    2003-05-30  Bernhard Herzog  <[email protected]>
177    
178            * Thuban/UI/legend.py (LegendTree.GetRootItem): Reset
179            availImgListIndices when a new image list is created
180            
181    2003-05-30  Bernhard Herzog  <[email protected]>
182    
183            * Thuban/UI/legend.py (LegendTree.__init__): New instance variable
184            changing_selection to indicate whether the LegendTree code itself
185            is currently changing the selection
186            (LegendTree.normalize_selection): New method to normalize the
187            selection by selecting the layer item even if the user clicked on
188            the classification.
189            (LegendTree._OnSelChanged): normalize the selection. This works
190            around a bug in wx which doesn't keep track of the selection
191            properly when subtrees are deleted.
192    
193  2003-05-30  Bernhard Herzog  <[email protected]>  2003-05-30  Bernhard Herzog  <[email protected]>
194    
195          * Thuban/UI/view.py (MapCanvas.set_view_transform): Limit the          * Thuban/UI/view.py (MapCanvas.set_view_transform): Limit the

Legend:
Removed from v.1112  
changed lines
  Added in v.1152

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26