/[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 423 by frank, Thu Feb 20 16:23:59 2003 UTC revision 499 by jonathan, Mon Mar 10 15:10:48 2003 UTC
# Line 1  Line 1 
1    2003-03-10  Jonathan Coles   <[email protected]>
2    
3            * Thuban/UI/application.py: Changed SESSION_CHANGED to
4            SESSION_REPLACED.
5    
6            * Thuban/UI/classifier.py: Wrap text with _().
7            (ClassGrid.CreateTable): Set dimensions and size hints here,
8            instead of in Reset, so we only set the size once.
9    
10            * Thuban/UI/dialogs.py: Don't need Shutdown(); just use Close()!
11    
12            * Thuban/UI/mainwindow.py (MainWindow.prepare_new_session):
13            Call Close() instead of Shutdown().
14    
15            * Thuban/UI/messages.py: Changed SESSION_CHANGED to SESSION_REPLACED.
16    
17            * Thuban/UI/tree.py: Changed SESSION_CHANGED to SESSION_REPLACED.
18            Go back to using OnClose() instead of Shutdown().
19    
20    2003-03-10  Jonathan Coles   <[email protected]>
21    
22            * Thuban/UI/classifier.py (Classifier): SelectField() needed
23            to know the old field index as well as the new one.
24    
25    2003-03-10  Jonathan Coles   <[email protected]>
26    
27            * Thuban/UI/classifier.py (Classifier): Use __SelectField()
28            to correctly set the table information and call this from
29            __init__ and from _OnFieldSelect so that all the information
30            is up to date when the dialog opens and when a field is changed.
31    
32    2003-03-10  Jonathan Coles   <[email protected]>
33    
34            * Thuban/Model/classification.py (Classification): Don't use
35            layer's message function directly, use the ClassChanged() method
36            when then classification changes. SetField/SetFieldType/SetLayer
37            must keep the information about field name and field type in
38            sync when an owning layer is set or removed.
39    
40            * Thuban/Model/layer.py: Added ClassChanged() so that the
41            classification can tell the layer when its data has changed.
42            (Layer.SetClassification): Accepts None as an arguement to
43            remove the current classification and correctly handles
44            adding a new classification.
45    
46            * Thuban/Model/load.py: Comment out print statement
47    
48            * test/test_classification.py, test/test_save.py: New and
49            improved tests.
50    
51    2003-03-07  Jonathan Coles   <[email protected]>
52    
53            * Thuban/Model/classification.py: Implemented __copy__ and
54            __deepcopy__ for ClassGroup* and ClassGroupProperites so
55            they can easily be copied by the classifier dialog.
56            (ClassGroupProperites.__init__): The default line color should
57            have been Color.Black.
58    
59            * Thuban/UI/classifier.py: Setting and Getting table values now
60            uses a consistent set of functions.
61            (Classifier): Now non-modal. Has field type label which changes
62            as the field changes. Keep track of buttons in a list so that
63            we can enable/disable the buttons when the None field is selected.
64            (SelectPropertiesDialog): Add buttons to make the colors transparent.
65    
66            * Thuban/UI/dialogs.py (NonModalDialog.Shutdown): New method which
67            does what OnClose did, but can be called by the application to
68            close a window. Needed when a session changes, and we have to
69            close the classifier windows.
70    
71            * Thuban/UI/mainwindow.py (MainWindow.prepare_new_session):
72            Shuts down open dialogs. Used when a new session is created
73            or a session is opened.
74            (MainWindow.SaveSession): Should only call application.SaveSession()
75            if we don't call SaveSessionAs first.
76            (MainWindow.Classify): Allow different classifier dialogs for
77            different layers.
78    
79            * Thuban/UI/tree.py (SessionTreeView): Remove OnClose and let
80            the parent class handle it. Add Shutdown() to unsubscibe from
81            event notification and call the parent Shutdown(). This was
82            necessary so the application can close the tree window.
83    
84    2003-03-06  Jonathan Coles   <[email protected]>
85    
86            * Thuban/Model/classification.py: Minor documentation changes,
87            Addition of __eq__ and __ne__ methods.
88            (Classification.SetLayer): prevent recursion between this method
89            and Layer.SetClassification().
90    
91            * Thuban/Model/color.py: Addition of __eq__ and __ne__ methods.
92    
93            * Thuban/Model/layer.py (SetClassification): prevent recursion
94            between this method and Classification.SetLayer().
95    
96            * test/test_classification.py, test/test_load.py,
97            test/test_session.py: Fixed and added tests for the classification
98            classes.
99    
100    2003-03-06  Bernhard Herzog  <[email protected]>
101    
102            * Thuban/UI/classifier.py (ClassGrid.__init__)
103            (ClassGrid.CreateTable): Move the SetSelectionMode call to
104            CreateTable because otherwise it triggers an assertion in
105            wxPython/wxGTK 2.4.
106    
107    2003-03-05  Jonathan Coles   <[email protected]>
108    
109            * Thuban/common.py: Move FIELDTYPE constants back to table.py.
110    
111            * Thuban/Model/load.py: import FIELDTYPE constants from table.
112    
113            * Thuban/UI/classifier.py: import FIELDTYPE constants from table.
114    
115            * Thuban/Model/table.py: Put FIELDTYPE constants back.
116    
117    2003-03-05  Jonathan Coles   <[email protected]>
118    
119            * Thuban/UI/classifier.py: Added class documentation.
120            Fixed RTbug #1713, #1714. Added Move[Up|Down] buttons.
121            Store just the groups in the table and generate the other
122            column information when it is requested. Add "None" field
123            to pull-down to select no classification.
124    
125            * Thuban/common.py: Moved FIELDTYPE constants from table.py
126            (Str2Num): Only catch ValueError exceptions.
127    
128            * Thuban/Model/classification.py: Class documentation. Renaming
129            of methods with Stroke to Line. Groups are stored in a single
130            list with the default as the first element. Groups are searched
131            in the order they appear in the list.
132    
133            * Thuban/Model/color.py: Documentation.
134    
135            * Thuban/Model/layer.py (Layer): Add GetFieldType to retreive
136            the kind of data represented by a field.
137    
138            * Thuban/Model/load.py (ProcessSession): Use proper string
139            conversion function; fixes RTbug #1713.
140    
141            * Thuban/Model/save.py (Saver): Store field type information.
142    
143            * Thuban/Model/table.py: Put FIELDTYPE constants in common.py.
144            (Table): Add field_info_by_name() to retrieve field information
145            by specifying the field name, not the number.
146    
147            * Thuban/UI/mainwindow.py: Function name changes.
148    
149            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Only
150            get the layer classification once. Don't try to classify
151            values when the field is None: just use the default properties.
152    
153            * Thuban/UI/view.py: Function name changes.
154    
155            * Doc/thuban.dtd: Add field_type attribute to a classification.
156    
157    2003-03-04  Bernhard Herzog  <[email protected]>
158    
159            * Doc/thuban.dtd: Use correct syntax for optional attributes. Make
160            the fill and stroke layer attributes optional with suitable
161            default values. Add the stroke_width layer attribute. Use correct
162            syntax for empty elements. Make the attribute list for labels
163            refer to the label element.
164    
165    2003-03-04  Bernhard Herzog  <[email protected]>
166    
167            * setup.py (thuban_build_py.build): Add a comment about distutils in
168            Python 2.3 containing some of the functionality we implement in
169            setup.py ourselves.
170    
171            * Thuban/UI/classifier.py (ClassGrid.__init__): Set the table
172            before the selection mode. Doing it the other way round triggers
173            an assertion in wxWindows.
174    
175            * Thuban/Model/save.py (escape): Fix typo in doc-string
176    
177            * Thuban/Model/classification.py: Remove unnecessary wxPython
178            import
179    
180    2003-03-04  Jonathan Coles   <[email protected]>
181    
182            * Thuban/Model/classification.py (ClassGroupRange.GetProperties):
183            Parameter 'value' should default to None.
184    
185            * Thuban/UI/mainwindow.py: Use Layer.GetClassification() since
186            the class attribute __classification is now private.
187    
188            * Thuban/UI/classifier.py (ClassGrid): Moved OnCellDClick() from
189            Classifier to ClassGrid. Added support for removing selected rows,
190            which including code for keeping track of when cells are selected,
191            and deselected.
192            (ClassTable): Support for added/removing rows. Fixed a problem
193            with __ParseInput whereby it would not allow strings (only numbers)
194            to be entered.
195            (Classifier): Added button and supporting code for removing
196            selected rows.
197    
198    2003-02-27  Jonathan Coles   <[email protected]>
199    
200            * Thuban/common.py: Moved color conversion functions into
201            Thuban/UI/common.py.
202            (Str2Num): Now converts the float (not the string) to a long/int
203            so that an exception isn't thrown.
204    
205            * Thuban/UI/common.py: Common functions used in several UI modules
206    
207            * Thuban/Model/classification.py: Changed the class hierarchy
208            so that a Classification consists of Groups which return
209            Properties when a value matches a Group.
210    
211            * Thuban/Model/layer.py: Fixed name resolution problem.
212    
213            * Thuban/Model/load.py: Use new Classification and Group functions.
214    
215            * Thuban/Model/save.py (Saver.write_attribs): Fixes a test case
216            failure.
217            (Saver.write_classification): Use new Classification and Group
218            functions.
219    
220            * Thuban/UI/classifier.py: Changes to use new Classification and Group
221            functions. Fix to create a tuple with a single value instead of
222            simply returning the value.
223    
224            * Thuban/UI/renderer.py: Use new Classification and Group functions.
225            Use common.py functions.
226    
227            * Thuban/UI/tree.py: Use common.py functions.
228            
229            * test/test_classification.py: Use new Classification and Group
230            classes.
231    
232    2003-02-24  Jonathan Coles   <[email protected]>
233    
234            * Thuban/common.py (Color2wxColour, wxColour2Color): Conversion
235            functions from Thuban color objects to wxWindow colour objects.
236    
237            * Thuban/Model/classification.py (Classification): Renamed
238            GetProperties() to GetClassData(). Used the new iterator
239            in TreeInfo().
240            (ClassIterator): Iterator implementation to iterate over the
241            ClassData objects in a classification object.
242    
243            * Thuban/Model/save.py (Saver.write_classificaton): Uses
244            the new iterator to save the classification information.
245    
246            * Thuban/UI/classifier.py (SelectPropertiesDialog): Support
247            for changing the stroke and fill colors and previewing the
248            changes.
249    
250            * Thuban/UI/mainwindow.py (MainWindow.OpenSession,
251            MainWindow.SaveSessionAs): Text string changes so the dialogs
252            have more meaningful titles.
253    
254            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Change
255            Classification method name from GetProperties to GetClassData.
256    
257            * Thuban/UI/view.py (MapCanvas.find_shape_at): Use method calls
258            instead of accessing now non-existent class variables.
259    
260    2003-02-24  Bernhard Herzog  <[email protected]>
261    
262            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Remove
263            unneeded Shape() call. Rendering is substantially faster without
264            it and it avoids some problems with broken shape files.
265    
266  2003-02-20  Frank Koormann   <[email protected]>  2003-02-20  Frank Koormann   <[email protected]>
267    
268          Force minimal size of identify and label dialogs. The autosizing          Force minimal size of identify and label dialogs. The autosizing

Legend:
Removed from v.423  
changed lines
  Added in v.499

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26