/[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 354 by bh, Tue Dec 3 17:35:47 2002 UTC revision 514 by jonathan, Tue Mar 11 16:44:44 2003 UTC
# Line 1  Line 1 
1    2003-03-11  Jonathan Coles   <[email protected]>
2    
3            * Thuban/UI/classifier.py: Add normal border to SelectPropertiesDialog.
4            Use True instead of true.
5            (Classifier): Should have a single panel in which all the controls lie.
6    
7            * Thuban/UI/proj4dialog.py: Add normal border.
8    
9            * Thuban/UI/tree.py: Fixed problem with bad item images under Windows.
10    
11            * Thuban/UI/mainwindow.py: Use True instead of true.
12    
13            * setup.py: Update some definitions to use wxWindows2.4 files
14    
15            * Data/iceland_sample_class.thuban: Fixed file so that the
16            field_type information is present.
17    
18    2003-03-10  Jonathan Coles   <[email protected]>
19    
20            * Thuban/UI/classifier.py (Classifier.__init__): Make the
21            field type label grow so that when the text changes the
22            size is updated correctly. This may be a wxWindows bug.
23    
24    2003-03-10  Jonathan Coles   <[email protected]>
25    
26            * Thuban/UI/application.py: Changed SESSION_CHANGED to
27            SESSION_REPLACED.
28    
29            * Thuban/UI/classifier.py: Wrap text with _().
30            (ClassGrid.CreateTable): Set dimensions and size hints here,
31            instead of in Reset, so we only set the size once.
32    
33            * Thuban/UI/dialogs.py: Don't need Shutdown(); just use Close()!
34    
35            * Thuban/UI/mainwindow.py (MainWindow.prepare_new_session):
36            Call Close() instead of Shutdown().
37    
38            * Thuban/UI/messages.py: Changed SESSION_CHANGED to SESSION_REPLACED.
39    
40            * Thuban/UI/tree.py: Changed SESSION_CHANGED to SESSION_REPLACED.
41            Go back to using OnClose() instead of Shutdown().
42    
43    2003-03-10  Jonathan Coles   <[email protected]>
44    
45            * Thuban/UI/classifier.py (Classifier): SelectField() needed
46            to know the old field index as well as the new one.
47    
48    2003-03-10  Jonathan Coles   <[email protected]>
49    
50            * Thuban/UI/classifier.py (Classifier): Use __SelectField()
51            to correctly set the table information and call this from
52            __init__ and from _OnFieldSelect so that all the information
53            is up to date when the dialog opens and when a field is changed.
54    
55    2003-03-10  Jonathan Coles   <[email protected]>
56    
57            * Thuban/Model/classification.py (Classification): Don't use
58            layer's message function directly, use the ClassChanged() method
59            when then classification changes. SetField/SetFieldType/SetLayer
60            must keep the information about field name and field type in
61            sync when an owning layer is set or removed.
62    
63            * Thuban/Model/layer.py: Added ClassChanged() so that the
64            classification can tell the layer when its data has changed.
65            (Layer.SetClassification): Accepts None as an arguement to
66            remove the current classification and correctly handles
67            adding a new classification.
68    
69            * Thuban/Model/load.py: Comment out print statement
70    
71            * test/test_classification.py, test/test_save.py: New and
72            improved tests.
73    
74    2003-03-07  Jonathan Coles   <[email protected]>
75    
76            * Thuban/Model/classification.py: Implemented __copy__ and
77            __deepcopy__ for ClassGroup* and ClassGroupProperites so
78            they can easily be copied by the classifier dialog.
79            (ClassGroupProperites.__init__): The default line color should
80            have been Color.Black.
81    
82            * Thuban/UI/classifier.py: Setting and Getting table values now
83            uses a consistent set of functions.
84            (Classifier): Now non-modal. Has field type label which changes
85            as the field changes. Keep track of buttons in a list so that
86            we can enable/disable the buttons when the None field is selected.
87            (SelectPropertiesDialog): Add buttons to make the colors transparent.
88    
89            * Thuban/UI/dialogs.py (NonModalDialog.Shutdown): New method which
90            does what OnClose did, but can be called by the application to
91            close a window. Needed when a session changes, and we have to
92            close the classifier windows.
93    
94            * Thuban/UI/mainwindow.py (MainWindow.prepare_new_session):
95            Shuts down open dialogs. Used when a new session is created
96            or a session is opened.
97            (MainWindow.SaveSession): Should only call application.SaveSession()
98            if we don't call SaveSessionAs first.
99            (MainWindow.Classify): Allow different classifier dialogs for
100            different layers.
101    
102            * Thuban/UI/tree.py (SessionTreeView): Remove OnClose and let
103            the parent class handle it. Add Shutdown() to unsubscibe from
104            event notification and call the parent Shutdown(). This was
105            necessary so the application can close the tree window.
106    
107    2003-03-06  Jonathan Coles   <[email protected]>
108    
109            * Thuban/Model/classification.py: Minor documentation changes,
110            Addition of __eq__ and __ne__ methods.
111            (Classification.SetLayer): prevent recursion between this method
112            and Layer.SetClassification().
113    
114            * Thuban/Model/color.py: Addition of __eq__ and __ne__ methods.
115    
116            * Thuban/Model/layer.py (SetClassification): prevent recursion
117            between this method and Classification.SetLayer().
118    
119            * test/test_classification.py, test/test_load.py,
120            test/test_session.py: Fixed and added tests for the classification
121            classes.
122    
123    2003-03-06  Bernhard Herzog  <[email protected]>
124    
125            * Thuban/UI/classifier.py (ClassGrid.__init__)
126            (ClassGrid.CreateTable): Move the SetSelectionMode call to
127            CreateTable because otherwise it triggers an assertion in
128            wxPython/wxGTK 2.4.
129    
130    2003-03-05  Jonathan Coles   <[email protected]>
131    
132            * Thuban/common.py: Move FIELDTYPE constants back to table.py.
133    
134            * Thuban/Model/load.py: import FIELDTYPE constants from table.
135    
136            * Thuban/UI/classifier.py: import FIELDTYPE constants from table.
137    
138            * Thuban/Model/table.py: Put FIELDTYPE constants back.
139    
140    2003-03-05  Jonathan Coles   <[email protected]>
141    
142            * Thuban/UI/classifier.py: Added class documentation.
143            Fixed RTbug #1713, #1714. Added Move[Up|Down] buttons.
144            Store just the groups in the table and generate the other
145            column information when it is requested. Add "None" field
146            to pull-down to select no classification.
147    
148            * Thuban/common.py: Moved FIELDTYPE constants from table.py
149            (Str2Num): Only catch ValueError exceptions.
150    
151            * Thuban/Model/classification.py: Class documentation. Renaming
152            of methods with Stroke to Line. Groups are stored in a single
153            list with the default as the first element. Groups are searched
154            in the order they appear in the list.
155    
156            * Thuban/Model/color.py: Documentation.
157    
158            * Thuban/Model/layer.py (Layer): Add GetFieldType to retreive
159            the kind of data represented by a field.
160    
161            * Thuban/Model/load.py (ProcessSession): Use proper string
162            conversion function; fixes RTbug #1713.
163    
164            * Thuban/Model/save.py (Saver): Store field type information.
165    
166            * Thuban/Model/table.py: Put FIELDTYPE constants in common.py.
167            (Table): Add field_info_by_name() to retrieve field information
168            by specifying the field name, not the number.
169    
170            * Thuban/UI/mainwindow.py: Function name changes.
171    
172            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Only
173            get the layer classification once. Don't try to classify
174            values when the field is None: just use the default properties.
175    
176            * Thuban/UI/view.py: Function name changes.
177    
178            * Doc/thuban.dtd: Add field_type attribute to a classification.
179    
180    2003-03-04  Bernhard Herzog  <[email protected]>
181    
182            * Doc/thuban.dtd: Use correct syntax for optional attributes. Make
183            the fill and stroke layer attributes optional with suitable
184            default values. Add the stroke_width layer attribute. Use correct
185            syntax for empty elements. Make the attribute list for labels
186            refer to the label element.
187    
188    2003-03-04  Bernhard Herzog  <[email protected]>
189    
190            * setup.py (thuban_build_py.build): Add a comment about distutils in
191            Python 2.3 containing some of the functionality we implement in
192            setup.py ourselves.
193    
194            * Thuban/UI/classifier.py (ClassGrid.__init__): Set the table
195            before the selection mode. Doing it the other way round triggers
196            an assertion in wxWindows.
197    
198            * Thuban/Model/save.py (escape): Fix typo in doc-string
199    
200            * Thuban/Model/classification.py: Remove unnecessary wxPython
201            import
202    
203    2003-03-04  Jonathan Coles   <[email protected]>
204    
205            * Thuban/Model/classification.py (ClassGroupRange.GetProperties):
206            Parameter 'value' should default to None.
207    
208            * Thuban/UI/mainwindow.py: Use Layer.GetClassification() since
209            the class attribute __classification is now private.
210    
211            * Thuban/UI/classifier.py (ClassGrid): Moved OnCellDClick() from
212            Classifier to ClassGrid. Added support for removing selected rows,
213            which including code for keeping track of when cells are selected,
214            and deselected.
215            (ClassTable): Support for added/removing rows. Fixed a problem
216            with __ParseInput whereby it would not allow strings (only numbers)
217            to be entered.
218            (Classifier): Added button and supporting code for removing
219            selected rows.
220    
221    2003-02-27  Jonathan Coles   <[email protected]>
222    
223            * Thuban/common.py: Moved color conversion functions into
224            Thuban/UI/common.py.
225            (Str2Num): Now converts the float (not the string) to a long/int
226            so that an exception isn't thrown.
227    
228            * Thuban/UI/common.py: Common functions used in several UI modules
229    
230            * Thuban/Model/classification.py: Changed the class hierarchy
231            so that a Classification consists of Groups which return
232            Properties when a value matches a Group.
233    
234            * Thuban/Model/layer.py: Fixed name resolution problem.
235    
236            * Thuban/Model/load.py: Use new Classification and Group functions.
237    
238            * Thuban/Model/save.py (Saver.write_attribs): Fixes a test case
239            failure.
240            (Saver.write_classification): Use new Classification and Group
241            functions.
242    
243            * Thuban/UI/classifier.py: Changes to use new Classification and Group
244            functions. Fix to create a tuple with a single value instead of
245            simply returning the value.
246    
247            * Thuban/UI/renderer.py: Use new Classification and Group functions.
248            Use common.py functions.
249    
250            * Thuban/UI/tree.py: Use common.py functions.
251            
252            * test/test_classification.py: Use new Classification and Group
253            classes.
254    
255    2003-02-24  Jonathan Coles   <[email protected]>
256    
257            * Thuban/common.py (Color2wxColour, wxColour2Color): Conversion
258            functions from Thuban color objects to wxWindow colour objects.
259    
260            * Thuban/Model/classification.py (Classification): Renamed
261            GetProperties() to GetClassData(). Used the new iterator
262            in TreeInfo().
263            (ClassIterator): Iterator implementation to iterate over the
264            ClassData objects in a classification object.
265    
266            * Thuban/Model/save.py (Saver.write_classificaton): Uses
267            the new iterator to save the classification information.
268    
269            * Thuban/UI/classifier.py (SelectPropertiesDialog): Support
270            for changing the stroke and fill colors and previewing the
271            changes.
272    
273            * Thuban/UI/mainwindow.py (MainWindow.OpenSession,
274            MainWindow.SaveSessionAs): Text string changes so the dialogs
275            have more meaningful titles.
276    
277            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Change
278            Classification method name from GetProperties to GetClassData.
279    
280            * Thuban/UI/view.py (MapCanvas.find_shape_at): Use method calls
281            instead of accessing now non-existent class variables.
282    
283    2003-02-24  Bernhard Herzog  <[email protected]>
284    
285            * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Remove
286            unneeded Shape() call. Rendering is substantially faster without
287            it and it avoids some problems with broken shape files.
288    
289    2003-02-20  Frank Koormann   <[email protected]>
290    
291            Force minimal size of identify and label dialogs. The autosizing
292            looked too ugly.
293    
294            * Thuban/UI/controls.py (RecordListCtrl): Set minimal width for columns.
295            * Thuban/UI/labeldialog.py (LabelDialog.dialog_layout):
296            Set size of listctrl.
297            * Thuban/UI/identifyview.py (IdentifyView.__init__):
298            Set size of dialog.
299    
300    2003-02-19  Jonathan Coles   <[email protected]>
301    
302            * test/test_classification.py, test/test_layer.py,
303            test/test_load.py, test/test_map.py, test/test_session.py:
304            Updated the tests to use the new functions that are in the
305            respective classes.
306    
307            * Thuban/Model/classification.py (Classification):
308            Uses the new ClassData* classes. Modification messages are
309            passed up to the parent layer (if it exists).
310            (ClassData): New class to encapsulate the common data in each
311            classification property.
312            (ClassDataDefault): Represents the Default class. data.
313            (ClassDataPoint): Represents a single class. data point
314            (ClassDataRange): Represents a class. range
315            (ClassDataMap): Represents a class. map (unused).
316    
317            * Thuban/Model/color.py: Added Color.None to represent something
318            with no color. Color.Black represents the color black.
319            (NoColor): Helper class derived from Color to represent something
320            with no color.
321    
322            * Thuban/Model/layer.py (Layer): Removed references to fill, stroke,
323            stroke_width attributes. Made the 'classification' attribute private.
324            New methods for setting/getting the classification.
325    
326            * Thuban/Model/load.py (ProcessSession): Use new methods on Layer
327            to get the classifcation and use the new ClassData* classes to
328            hold the classification data. Use Str2Num to convert numbers
329            properly.
330    
331            * Thuban/Model/save.py (Saver): Use new Color and Classification
332            methods
333    
334            * Thuban/UI/classifier.py (ClassGrid): New class to represent a
335            custom grid.
336            (ClassTable): Support for editing Values and Labels and for
337            changing what type (point or range) of data is stored in each
338            property based on how the user enters the data.
339            (Classifier): Support for saving the new classifications and
340            launching the dialog to edit a property.
341            (SelectPropertiesDialog): New class for editing the visual
342            properties of a classification (stroke color, width, and fill color)
343            (ClassPreviewer): Took the Draw method from ClassRenderer and
344            made most of it into this new class. Intend to use this class in
345            the SelectPropertiesDialog for previewing changes.
346    
347            * Thuban/UI/renderer.py: Use new Color and Classification methods.
348    
349            * Thuban/UI/tree.py: Formatting changes.
350    
351            * Doc/thuban.dtd: Add 'label' element
352    
353            * Thuban/common.py: New. Contains common routines used throughout
354            the code.
355            (Str2Num): Takes a string and converts it to the "best" type of
356            number.
357    
358    2003-02-14  Bernhard Herzog  <[email protected]>
359    
360            * Thuban/UI/view.py (MapCanvas.OnLeftUp): Make sure that the
361            dragging flag is always set to 0 even when the tool implementation
362            raises an exception
363    
364    2003-02-11  Bernhard Herzog  <[email protected]>
365    
366            * Thuban/UI/application.py (ThubanApplication.splash_screen): New
367            method to create a splash screen.
368            (ThubanApplication.ShowMainWindow): New. Show the main window.
369            Needed so the splash screen can display the mainwindow
370            (ThubanApplication.OnInit): Call the
371            new splash_screen method to determine whether the application
372            should display a splash screen. If it displays a splash screen do
373            not immediately show the main window.
374    
375    2003-02-11  Jonathan Coles  <[email protected]>
376    
377            * Thuban/Model/classification.py: Added import line to fix
378            feature conflicts between running on python2.2 and python2.1.
379    
380            * Thuban/UI/classifier.py (ClassTable): Didn't need to hang
381            onto the clinfo parameter, so removed the deepcopy().
382    
383    2003-02-10  Jonathan Coles  <[email protected]>
384    
385            * Thuban/Model/save.py (Saver.open_element, Saver.close_element):
386            Added element_open variable to track opening and closing of tags
387            so that tags that don't span more than one line are closed with
388            /> instead of </tag_name>. Use the GetDefault*() methods of
389            the Classification class.
390    
391            * Thuban/Model/classification.py (Classificaton): Added set and
392            get methods for the default data. The class also takes a layer
393            reference so that modification messages can be sent. Fixed the
394            methods to use the new ClassData class.
395            (ClassData): New class to encapsulate the classification data
396    
397            * Thuban/Model/layer.py (Layer): Remove the
398            Set[Fill|Stroke|StrokeWidth]() methods. Code should call the
399            SetDefault*() methods on the layer's classification object.
400            (Layer.__init__): Use the new SetDefault*() methods in the
401            Classification class.
402    
403            * Thuban/Model/load.py (ProcessSession): Use the new ClassData
404            object instead of a dictionary.
405    
406            * Thuban/UI/classifier.py (ClassRenderer): New class to
407            draw the classifications in the dialog box's table.
408            (Classifier): Modified to use the ClassRenderer class.
409    
410            * Thuban/UI/mainwindow.py (MainWindow): Use the SetDefault*()
411            methods of the Classification class.
412    
413            * Thuban/UI/renderer.py (MapRenderer): Use the Get*() methods
414            of the ClassData class.
415    
416            * test/test_classification.py, test/test_layer.py,
417            test/test_map.py, test/test_session.py: Fix the tests to work
418            with the above code changes.
419    
420    2003-02-03  Jonathan Coles  <[email protected]>
421    
422            * Thuban/Model/classification.py (Classification): Added getNull()
423            to return the NullData reference
424    
425            * Thuban/Model/layer.py (Layer.SetFill, Layer.SetStroke,
426            Layer.SetStrokeWidth): Modified these functions to change the
427            null data in the classification rather than keep these values
428            directly in the Layer class. Menu options to change these values
429            work again.
430    
431    2003-01-28  Jonathan Coles  <[email protected]>
432    
433            * Thuban/UI/classifier.py (Classifier): Resolved merging conflicts.
434            Fixed crashing problem on some systems. Dialog box shows
435            classification data.
436    
437            * Thuban/UI/tree.py (SessionTreeCtrl.add_items): Handle drawing
438            Colors in the tree view.
439    
440            * Thuban/Model/layer.py (Layer.TreeInfo): Added a call to build
441            the tree info for classifications. Commented out unnecessary lines.
442    
443            * Thuban/Model/classification.py (Classification.TreeInfo): New
444            function to add information about the classification into the
445            tree view.
446    
447    2003-01-27  Jan-Oliver Wagner <[email protected]>
448    
449            * Thuban/__init__.py (_): New.
450    
451            * Thuban/Model/classification.py, Thuban/Model/extension.py,
452            Thuban/Model/layer.py, Thuban/Model/load.py, Thuban/Model/map.py,
453            Thuban/Model/session.py, Thuban/UI/application.py,
454            Thuban/UI/classifier.py, Thuban/UI/context.py, Thuban/UI/controls.py,
455            Thuban/UI/identifyview.py, Thuban/UI/labeldialog.py,
456            Thuban/UI/mainwindow.py, Thuban/UI/menu.py, Thuban/UI/proj4dialog.py,
457            Thuban/UI/renderer.py, Thuban/UI/tree.py, Thuban/Lib/connector.py,
458            Thuban/Lib/fileutil.py: Replace user string by _() for i18n.
459    
460    2003-01-27  Jonathan Coles  <[email protected]>
461    
462            * Thuban/Model/layer.py: Classification initialization calls.
463    
464            * Thuban/Model/classification.py: Created class to encapsulate
465            a layer classification. Supports specific data points and
466            ranges.
467    
468            * Thuban/Model/load.py: Added support for loading classification
469            information.
470    
471            * Thuban/Model/save.py: Added support for saving classification
472            information.
473    
474            * Thuban/UI/classifier.py: Initial class for a dialog box for
475            specifying classification information.
476    
477            * Thuban/UI/mainwindows.py: Support for opening the classifier
478            dialog.
479    
480            * Thuban/UI/renderer.py: Support for drawing a layer with the
481            classification information.
482    
483            * Data/iceland_sample_class.thuban: iceland_sample with
484            classification data.
485    
486            * test/test_classification: Tests for the Classification class.
487    
488    2002-12-09  Bernhard Herzog  <[email protected]>
489    
490            * test/test_command.py: New. Tests for the command classes.
491    
492            * Thuban/UI/command.py (ToolCommand): New class for tool commands.
493            (Command.IsTool): New method to distinguish between command
494            switching tools and other commands.
495    
496            * Thuban/UI/view.py (MapCanvas.SelectTool): New method to select
497            the tool to avoid direct assignments to instance variables
498            (MapCanvas.ZoomInTool, MapCanvas.ZoomOutTool, MapCanvas.PanTool)
499            (MapCanvas.IdentifyTool, MapCanvas.LabelTool): Use SelectTool to
500            change the tool
501    
502            * Thuban/UI/mainwindow.py (MainWindow.update_command_ui): If an
503            active tool's command turns insensitive, disable the tool.
504            (_tool_command): Use the new ToolCommand class
505    
506            * Examples/simple_extensions/simple_tool.py (simple_tool): Use the
507            SelectTool method to change the tool
508            (iconfile): Use the ToolCommand class
509    
510  2002-12-03  Bernhard Herzog  <[email protected]>  2002-12-03  Bernhard Herzog  <[email protected]>
511    
512          * Thuban/UI/tree.py (SessionTreeCtrl.normalize_selection): Handle          * Thuban/UI/tree.py (SessionTreeCtrl.normalize_selection): Handle
# Line 10  Line 519 
519          * Thuban/UI/mainwindow.py: Altered the order of tools in the          * Thuban/UI/mainwindow.py: Altered the order of tools in the
520          toolbar: First now are all navigation tools (Zoom In/Out, Pan,          toolbar: First now are all navigation tools (Zoom In/Out, Pan,
521          Full Extent).          Full Extent).
522        
523  2002-10-23  Bernhard Herzog  <[email protected]>  2002-10-23  Bernhard Herzog  <[email protected]>
524    
525          * setup.py (setup call): version now 0.1.3          * setup.py (setup call): version now 0.1.3
# Line 121  Line 630 
630          * Thuban/UI/mainwindow.py (MainWindow.OnClose): Unsubscribe          * Thuban/UI/mainwindow.py (MainWindow.OnClose): Unsubscribe
631          VIEW_POSITION          VIEW_POSITION
632    
633  2002-09-04  Frank Koormann   <[email protected]>  2002-09-04  Frank Koormann  <[email protected]>
634    
635          * Resources/Bitmaps/fullextent.xpm: Updated Icon (removed "potatoe")          * Resources/Bitmaps/fullextent.xpm: Updated Icon (removed "potatoe")
636    
# Line 208  Line 717 
717    
718          * Thuban/Model/table.py (Table.write_record): New method to write          * Thuban/Model/table.py (Table.write_record): New method to write
719          records.          records.
720          (Table.__init__): Open the DBF file for writing too.          (Table.__init__): Open the DBF file for writing too.
721    
722          * Thuban/UI/controls.py (RecordTable.SetValue): Write the value          * Thuban/UI/controls.py (RecordTable.SetValue): Write the value
723          into the underlying table.          into the underlying table.
# Line 246  Line 755 
755          * setup.py (ThubanInstall.run): Don't repr install_lib_orig          * setup.py (ThubanInstall.run): Don't repr install_lib_orig
756          because thubaninit_contents will do it for us.          because thubaninit_contents will do it for us.
757    
758  2002-08-16      Jan-Oliver Wagner <[email protected]>  2002-08-16  Jan-Oliver Wagner <[email protected]>
759    
760          * Thuban/UI/mainwindow.py: menu item 'show session tree' now disable if          * Thuban/UI/mainwindow.py: menu item 'show session tree' now disable if
761          tree window already open          tree window already open
# Line 374  Line 883 
883          * Thuban/UI/tree.py: We can now simply subscribe to the session's          * Thuban/UI/tree.py: We can now simply subscribe to the session's
884          CHANGED channel to be informed of changes.          CHANGED channel to be informed of changes.
885          (SessionTreeCtrl.session_channels): Not needed any longer.          (SessionTreeCtrl.session_channels): Not needed any longer.
886          (SessionTreeCtrl.unsubscribe_all, SessionTreeCtrl.session_changed):          (SessionTreeCtrl.unsubscribe_all, SessionTreeCtrl.session_changed):
887          Only have to (un)subscribe CHANGED          Only have to (un)subscribe CHANGED
888    
889          * Thuban/Model/map.py (Map.TreeInfo): Deal better with empty maps.          * Thuban/Model/map.py (Map.TreeInfo): Deal better with empty maps.
# Line 435  Line 944 
944          * Thuban/Model/layer.py (Layer.TreeInfo),          * Thuban/Model/layer.py (Layer.TreeInfo),
945          Thuban/Model/extension.py (Extension.TreeInfo),          Thuban/Model/extension.py (Extension.TreeInfo),
946          Thuban/Model/map.py (Map.TreeInfo),          Thuban/Model/map.py (Map.TreeInfo),
947          Thuban/Model/session.py (Session.TreeInfo):          Thuban/Model/session.py (Session.TreeInfo):
948          Add TreeInfo methods to implement the new tree view update scheme          Add TreeInfo methods to implement the new tree view update scheme
949    
950  2002-07-16  Bernhard Herzog  <[email protected]>  2002-07-16  Bernhard Herzog  <[email protected]>
# Line 516  Line 1025 
1025          * setup.py: In the setup call, make sure that the library          * setup.py: In the setup call, make sure that the library
1026          directories are under $prefix/lib not directly under $prefix.          directories are under $prefix/lib not directly under $prefix.
1027    
1028  2002-06-20      Jan-Oliver Wagner <[email protected]>  2002-06-20  Jan-Oliver Wagner <[email protected]>
1029    
1030          * Thuban/Model/extension.py: new module to handle extension objects.          * Thuban/Model/extension.py: new module to handle extension objects.
1031          * Thuban/Model/messages.py: new messages for extensions.          * Thuban/Model/messages.py: new messages for extensions.
# Line 745  Line 1254 
1254          * Thuban/UI/messages.py (VIEW_POSITION): New message for the          * Thuban/UI/messages.py (VIEW_POSITION): New message for the
1255          position in the statusbar          position in the statusbar
1256    
1257  2002-04-26      Frank Koormann <[email protected]>  2002-04-26  Frank Koormann <[email protected]>
1258    
1259          * Thuban/UI/mainwindow.py: AddLayer, Dialog title s/session/data          * Thuban/UI/mainwindow.py: AddLayer, Dialog title s/session/data
1260    
1261  2002-04-24      Frank Koormann <[email protected]>  2002-04-24  Frank Koormann <[email protected]>
1262            
1263          * Resources/Bitmaps/identify.xpm: shadow added          * Resources/Bitmaps/identify.xpm: shadow added
1264    
1265          * Resources/Bitmaps/fullextent.xpm: new          * Resources/Bitmaps/fullextent.xpm: new
           
 2002-04-22      Jan-Oliver Wagner <[email protected]>  
1266    
1267          * Thuban/UI/tree.py (update_tree): added test for None on map bounding box  2002-04-22  Jan-Oliver Wagner <[email protected]>
1268    
1269            * Thuban/UI/tree.py (update_tree): added test for None on map bounding
1270            box
1271    
1272  2002-04-21      Jan-Oliver Wagner <[email protected]>  2002-04-21  Jan-Oliver Wagner <[email protected]>
1273    
1274          * Thuban/UI/proj4dialog.py (UTMProposeZoneDialog): new          * Thuban/UI/proj4dialog.py (UTMProposeZoneDialog): new
1275    
1276          * Thuban/UI/tree.py (update_tree): added added map extent          * Thuban/UI/tree.py (update_tree): added added map extent
1277    
1278          * Thuban/UI/mainwindow.py (_method_command): extended by parameter          * Thuban/UI/mainwindow.py (_method_command): extended by parameter
1279          icon; added map_full_extend as tool          icon; added map_full_extend as tool
1280    
1281  2002-04-19      Jan-Oliver Wagner <[email protected]>  2002-04-19  Jan-Oliver Wagner <[email protected]>
1282    
1283          * Thuban/UI/mainwindow.py (SaveSession): launch save as dialog for          * Thuban/UI/mainwindow.py (SaveSession): launch save as dialog for
1284          saving _new_ sessions          saving _new_ sessions
# Line 870  Line 1380 
1380    
1381          * setup.py: increase version number to 0.1          * setup.py: increase version number to 0.1
1382          (data_dist): New command class for data distribution          (data_dist): New command class for data distribution
           
1383    
1384  2001-09-14  Bernhard Herzog  <[email protected]>  2001-09-14  Bernhard Herzog  <[email protected]>
1385    
1386          * Thuban/UI/identifyview.py (IdentifyListCtrl.selected_shape):          * Thuban/UI/identifyview.py (IdentifyListCtrl.selected_shape):
1387          Handle the case of no layer (i.e. layer is None) properly.          Handle the case of no layer (i.e. layer is None) properly.
1388    
1389          * Thuban/UI/proj4dialog.py (UTMDialog.__init__, Proj4Dialog.__init__):          * Thuban/UI/proj4dialog.py (UTMDialog.__init__, Proj4Dialog.__init__):
1390          Set the initial selection of the combo boxes to reflect the          Set the initial selection of the combo boxes to reflect the
1391          projection we're starting with in a way that works on windows,          projection we're starting with in a way that works on windows,
1392          too.          too.
# Line 987  Line 1496 
1496          (MainWindow.identify_view_on_demand): Store the interactor in an          (MainWindow.identify_view_on_demand): Store the interactor in an
1497          instvar and use that reference instead of going through main.app          instvar and use that reference instead of going through main.app
1498    
1499          * Thuban/UI/mainwindow.py (MainWindow.ShowSessionTree):          * Thuban/UI/mainwindow.py (MainWindow.ShowSessionTree):
1500          * Thuban/UI/application.py (ThubanApplication.OnInit):          * Thuban/UI/application.py (ThubanApplication.OnInit):
1501          * Thuban/UI/main.py (main): Create the session tree view in main          * Thuban/UI/main.py (main): Create the session tree view in main
1502          with the new mainwindow method ShowSessionTree and not directly          with the new mainwindow method ShowSessionTree and not directly
1503          the application's OnInit method          the application's OnInit method
# Line 1004  Line 1513 
1513          layer to the tableview dialog.          layer to the tableview dialog.
1514    
1515          * Thuban/UI/tableview.py: Add some doc-strings          * Thuban/UI/tableview.py: Add some doc-strings
1516          (TableGrid):          (TableGrid):
1517          (TableGrid.OnRangeSelect):          (TableGrid.OnRangeSelect):
1518          (TableGrid.OnSelectCell):          (TableGrid.OnSelectCell):
1519          (TableFrame.__init__):          (TableFrame.__init__):
# Line 1071  Line 1580 
1580  2001-09-05  Bernhard Herzog  <[email protected]>  2001-09-05  Bernhard Herzog  <[email protected]>
1581    
1582          * Thuban/UI/view.py (MapCanvas.__init__): New argument, interactor.          * Thuban/UI/view.py (MapCanvas.__init__): New argument, interactor.
1583            
1584          * Thuban/UI/mainwindow.py (MainWindow.__init__): New argument          * Thuban/UI/mainwindow.py (MainWindow.__init__): New argument
1585          interactor to pass through to the MapCanvas          interactor to pass through to the MapCanvas
1586            
1587          * Thuban/UI/application.py (ThubanApplication.OnInit): Use the new          * Thuban/UI/application.py (ThubanApplication.OnInit): Use the new
1588          argument to the MainWindow constructor to get rid of the ugly hack          argument to the MainWindow constructor to get rid of the ugly hack
1589          that made main.app available early just so that the mapcanvas          that made main.app available early just so that the mapcanvas
# Line 1121  Line 1630 
1630          (ThubanInstall.run): Remove the leading install root from the          (ThubanInstall.run): Remove the leading install root from the
1631          script filename if an install root was specified and use the new          script filename if an install root was specified and use the new
1632          link_file method          link_file method
1633            
1634          * Thuban/UI/mainwindow.py (MainWindow.AddLayer): Fit the map to          * Thuban/UI/mainwindow.py (MainWindow.AddLayer): Fit the map to
1635          the window when the first layer is added to the map.          the window when the first layer is added to the map.
1636    
# Line 1158  Line 1667 
1667          (InnoIconItem): Helper class for bdist_inno          (InnoIconItem): Helper class for bdist_inno
1668          (thuban_bdist_inno): Thuban specific version of bdist_inno. Added          (thuban_bdist_inno): Thuban specific version of bdist_inno. Added
1669          this together with the appropriate parameters, to the setup call.          this together with the appropriate parameters, to the setup call.
1670            
1671          * setup.cfg (bdist_inno): added new section for the inno setup          * setup.cfg (bdist_inno): added new section for the inno setup
1672          installer          installer
1673    

Legend:
Removed from v.354  
changed lines
  Added in v.514

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26