/[thuban]/branches/WIP-pyshapelib-bramz/ChangeLog
ViewVC logotype

Annotation of /branches/WIP-pyshapelib-bramz/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 152 - (hide annotations)
Tue May 7 17:01:49 2002 UTC (22 years, 10 months ago) by bh
Original Path: trunk/thuban/ChangeLog
File size: 21281 byte(s)
update ChangeLog

1 bh 146 2002-05-07 Bernhard Herzog <[email protected]>
2    
3 bh 152 * Thuban/UI/tree.py (session_channels): New class constant with
4     all the session channels to subscribe to to update the tree
5     (SessionTreeCtrl.session_changed): Remember the session so that we
6     can unsubscribe properly. Use the new class constant to
7     unsubscribe from the old session and subscribe to the new one.
8     (SessionTreeCtrl.unsubscribe_all): New method to unsubscribe all
9     subscriptions of the SessionTreeCtrl.
10     (SessionTreeView.OnClose): Call the tree's unsubscribe_all method.
11    
12     * Thuban/UI/mainwindow.py (MainWindow.__init__): Add the "Show
13     Session Tree" command to the file menu.
14    
15     * Thuban/UI/view.py (MapCanvas.do_redraw): Pass the entire bitmap
16     as update_region to the renderer.
17    
18     * Thuban/UI/renderer.py
19     (ScreenRenderer.layer_ids, ScreenRenderer.draw_shape_layer): The
20     update box is now directly a tuple, not a wxRect anymore.
21    
22     * Thuban/Model/layer.py (Layer.ShapesInRegion): Remove some debug
23     prints.
24    
25     2002-05-07 Bernhard Herzog <[email protected]>
26    
27 bh 146 * setup.py: Add the shptree extension module. See
28     extensions/pyshapelib/ChangeLog for more details.
29    
30     * extensions/shapelib/shpopen.c, extensions/shapelib/shapefil.h,
31     extensions/shapelib/dbfopen.c: Really update to the versions of
32     shapelib 1.2.9. For some reason it wasn't really done on
33     2002-04-11.
34    
35     * extensions/shapelib/shptree.c: Modified version of shptree.c of
36     shapelib 1.2.9. The only real difference is the use of qsort
37     instead of a bubble sort implementation
38    
39     * Thuban/Model/layer.py (Layer.__init__): New instance variable
40     shapetree to hold the shapelib quadtree for the shapefile
41     (Layer.open_shapefile): Create the quad tree.
42     (Layer.ShapesInRegion): New method to return the ids of shapes in
43     a given region using the quad tree.
44    
45     * extensions/thuban/wxproj.cpp (project_points): Fix some typos in
46     comment
47     (draw_polygon_shape): Accept both arcs and polygons.
48     (initwxproj): Use the new PYSHAPELIB_IMPORT_API macro to import
49     the api.
50    
51     * Thuban/UI/renderer.py (MapRenderer.layer_ids): New method to
52     return the shape ids to be rendered in a given layer.
53     (MapRenderer.draw_shape_layer): Call layer_ids to get the list of
54     ids. Use draw_polygon_shape to draw arc shapes as well.
55     (ScreenRenderer.RenderMap): New parameter for the rectangle that
56     has to be updated
57     (ScreenRenderer.layer_ids): Make use of the layer's quadtree by
58     calling it's ShapesInRegion method.
59    
60     * Thuban/UI/view.py (MapCanvas.__init__): New instance variable
61     update_region for the update region.
62     (MapCanvas.OnPaint): Maintain the update region
63     (MapCanvas.do_redraw): Pass the bounding box of the update_region
64     to the renderer when drawing the bitmap. Reset the update_region.
65    
66 bh 129 2002-05-03 Bernhard Herzog <[email protected]>
67    
68 bh 131 * Thuban/UI/mainwindow.py (MainWindow.SaveSessionAs,
69     MainWindow.OpenSession): Change the file extension of the session
70     files to .thuban
71    
72 bh 129 * Thuban/Model/session.py (Session.AddMap, forwarded_channels):
73     Move the map channels to be forwarded by the session into the
74 bh 146 class constant with forwarded_channels. Also add
75     LAYER_PROJECTION_CHANGED and LAYER_VISIBILITY_CHANGED to
76     forwarded_channels
77 bh 129
78     * Thuban/Model/base.py (Modifiable.changed): Fix doc-string (a
79     typo and some rewording).
80    
81 bh 126 2002-05-02 Bernhard Herzog <[email protected]>
82    
83     * Thuban/UI/view.py: Keep the temporary bitmap used during drawing
84     around to speed up most redraws:
85     (MapCanvas.__init__): New instance variable bitmap which holds the
86     bitmap
87     (MapCanvas.do_redraw): Redraw self.bitmap if necessary. Use
88     self.bitmap to draw.
89     (MapCanvas.full_redraw): New method to force a full redraw
90     including the bitmap
91     (MapCanvas.SetMap): Subscribe full_redraw instead of redraw to
92     make sure the bitmap is redrawn.
93     (MapCanvas.projection_changed, MapCanvas.set_view_transform,
94     MapCanvas.shape_selected): Call full_redraw instead of readraw to
95     make sure the bitmap is redrawn.
96     (MapCanvas.OnSize): New method to handle size events so that the
97     bitmap can be redrawn.
98    
99 bh 124 2002-04-29 Bernhard Herzog <[email protected]>
100    
101     * Thuban/UI/mainwindow.py (MainWindow.__init__): Subscribe to the
102     canvas' VIEW_POSITION event
103     (MainWindow.view_position_changed): Handler for VIEW_POSITION.
104     Update the text in the status-bar accordingly.
105    
106     * Thuban/UI/view.py (MapCanvas): Derive from Publisher as well
107     (MapCanvas.__del__): Implement because Publisher.__del__ has to be
108     called.
109     (MapCanvas.__init__): Bind EVT_LEAVE_WINDOW too. Initialize
110     current_position
111     (MapCanvas.set_current_position): New method to set
112     current_position. Issue a VIEW_POSITION event
113     (MapCanvas.CurrentPosition): New public method to return the value
114     of current_position. Should be called when the VIEW_POSITION event
115     is processed.
116     (MapCanvas.OnLeftDown, MapCanvas.OnLeftUp, MapCanvas.OnMotion):
117     Update the position.
118     (MapCanvas.OnLeaveWindow): Set the position to None.
119    
120     * Thuban/UI/messages.py (VIEW_POSITION): New message for the
121     position in the statusbar
122    
123 frank 120 2002-04-26 Frank Koormann <[email protected]>
124    
125     * Thuban/UI/mainwindow.py: AddLayer, Dialog title s/session/data
126    
127     2002-04-24 Frank Koormann <[email protected]>
128 frank 118
129     * Resources/Bitmaps/identify.xpm: shadow added
130    
131     * Resources/Bitmaps/fullextent.xpm: new
132    
133 jan 116 2002-04-22 Jan-Oliver Wagner <[email protected]>
134    
135     * Thuban/UI/tree.py (update_tree): added test for None on map bounding box
136    
137 jan 114 2002-04-21 Jan-Oliver Wagner <[email protected]>
138    
139     * Thuban/UI/proj4dialog.py (UTMProposeZoneDialog): new
140    
141     * Thuban/UI/tree.py (update_tree): added added map extent
142    
143     * Thuban/UI/mainwindow.py (_method_command): extended by parameter
144     icon; added map_full_extend as tool
145    
146 jan 107 2002-04-19 Jan-Oliver Wagner <[email protected]>
147    
148     * Thuban/UI/mainwindow.py (SaveSession): launch save as dialog for
149     saving _new_ sessions
150    
151     * Thuban/Model/session.py (create_empty_session): new session
152     don't have a filename (set to None)
153    
154     * Thuban/UI/tree.py (update_tree): added filename and modified flag
155    
156     * Thuban/Model/load.py (ProcessSession): convert projection
157     parameters from unicode to regular string
158    
159     * Data/iceland_sample.session: Added UTM Zone 26 projection.
160    
161 bh 100 2002-04-11 Bernhard Herzog <[email protected]>
162    
163     * extensions/shapelib/shapefil.h, extensions/shapelib/shpopen.c,
164     extensions/shapelib/dbfopen.c: Update to the versions of shapelib
165     1.2.9
166    
167     * setup.py (Lib.wxproj extension): Don't link shpopen.c and put
168     the pyshapelib directoy into the list of include dirs, so that
169     pyshapelib_api.h can be found.
170    
171     * extensions/thuban/wxproj.cpp (pyshapelib_api): New variable that
172     holds the pyshapelib C-API
173     (draw_polygon_shape, point_in_polygon_shape, shape_centroid): Use
174     pyshapelib_api to access the shapelib functions.
175     (initwxproj): Import the c_api from the shapelib module and
176     initialize pyshapelib_api.
177    
178 bh 89 2002-04-04 Bernhard Herzog <[email protected]>
179    
180 bh 91 * setup.py (thuban_bdist_rpm.initialize_options): Use
181     initialize_options to create the scripts for the rpm.
182    
183 bh 89 * extensions/pyprojection/setup.py (PROJ4_PREFIX): Just use /
184    
185 bh 85 2002-04-03 Bernhard Herzog <[email protected]>
186    
187 bh 87 * setup.py: Increment version to 0.1.1
188    
189 bh 85 * Thuban/UI/mainwindow.py (MainWindow.__init__): Move the "Add
190     Layer" and "Remove Layer" commands from the layer menu to the map
191     menu
192    
193 bh 83 2002-02-15 Bernhard Herzog <[email protected]>
194    
195     * Thuban/Model/layer.py (Layer.Shape): list append only takes one
196     argument (python <= 1.5.2 erroneously accepted multiuple
197     arguments)
198    
199 bh 81 2002-02-04 Bernhard Herzog <[email protected]>
200    
201     * Thuban/UI/identifyview.py (IdentifyGridCtrl): New class to use a
202     RecordGrid in the identifyview.
203     (IdentifyView.__init__): Use IdentifyGridCtrl instead of
204     IdentifyListCtrl. The grid allows editing of the values.
205    
206     * Thuban/UI/controls.py (RecordTable, RecordGridCtrl): New classes
207     implementing a grid for a single row of a thuban table.
208    
209     * Thuban/UI/view.py (MapCanvas.SelectShapeAt): Search through all
210     layers by default. Easier to use than the previous default of only
211     searching through the select layer which meant that if no layer
212     was selected, you couldn't select a shape.
213    
214     * Thuban/UI/tableview.py (TableGrid.__init__): Fix typo
215    
216     * Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Honour the
217     stroke_width attribute
218    
219     * Thuban/Model/save.py (save_session): Write the new stroke_width
220     attribute
221    
222     * Thuban/Model/load.py (ProcessSession.startElement): Read the
223     stroke_width attribute
224    
225     * Thuban/Model/layer.py (Layer.__init__): New parameter and
226     instance variable stroke_width
227     (Layer.SetStrokeWidth): Set the stroke_width.
228    
229 bh 72 2002-02-01 Bernhard Herzog <[email protected]>
230    
231     * extensions/thuban/wxproj.cpp (project_points): Fix two
232     off-by-one errors in the last loop that joins the various parts
233     together.
234    
235 bh 71 2002-01-14 Bernhard Herzog <[email protected]>
236    
237     * setup.py (data_dist.make_distribution): Fix some typos
238    
239 bh 70 2001-09-18 Bernhard Herzog <[email protected]>
240    
241     * README: Slight tweaking in preparation for the 0.1 release
242    
243     * setup.cfg: Add section for sdist to create both tgz and zip
244     archives
245    
246     * setup.py: increase version number to 0.1
247     (data_dist): New command class for data distribution
248    
249    
250 bh 64 2001-09-14 Bernhard Herzog <[email protected]>
251    
252 bh 70 * Thuban/UI/identifyview.py (IdentifyListCtrl.selected_shape):
253     Handle the case of no layer (i.e. layer is None) properly.
254    
255     * Thuban/UI/proj4dialog.py (UTMDialog.__init__, Proj4Dialog.__init__):
256     Set the initial selection of the combo boxes to reflect the
257     projection we're starting with in a way that works on windows,
258     too.
259    
260 bh 64 * Thuban/Lib/connector.py (Connector.print_connections): Print the
261     puiblisher's ids in hex to make it easier to compare them to the
262     standard repr of python methods
263    
264     * Thuban/Model/map.py (Map.Destroy): Unsubscribe the label_layer
265     messages
266    
267 bh 59 2001-09-13 Bernhard Herzog <[email protected]>
268    
269 bh 64 * Thuban/UI/tree.py (SessionTreeCtrl.OnSelChanged): Make sure to
270     deselect the layer if no layer is selected
271    
272 bh 59 * Thuban/UI/view.py (MapCanvas.OnPaint): Only delay drawing to
273     idle time when there actually is something to draw. If there's
274     nothing to draw simply clear the window
275     (MapCanvas.do_redraw): Call dc.EndDrawing and add some comments.
276     (MapCanvas.SetMap): force a redraw in all cases because
277     FitMapToWindow doesn't always do it.
278     (MapCanvas.ZoomFactor): Add an optional parameter, center, to
279     specify the point to move into the center of the window
280     (ZoomOutTool.MouseUp, ZoomInTool.MouseUp): If the mouse wasn't
281     dragged, zoon in/out by a factor of 2
282 bh 64 (MapCanvas.find_shape_at): Iterate backwards (i.e. with decreasing
283     index, i.e. reversed drawing order) so that objects appearing to
284     be in from of others are selected first. This is probably mostly
285     relevant for point shapes where the symbols used may overlap
286 bh 59
287     * Thuban/Model/session.py (create_empty_session): Unset the
288     modified bit before returning it
289    
290     * Thuban/UI/mainwindow.py (MainWindow.NewSession): Use
291     create_empty_session session to create the new, empty session.
292    
293     * Thuban/UI/mainwindow.py (MainWindow.__init__): Set the size of
294     the tool bitmaps.
295     (MainWindow.OnClose, MainWindow.save_modified_session): Separate
296     the code that asks whether the session should be saved into the
297     new method save_modified_session.
298     (MainWindow.OpenSession, MainWindow.NewSession): Use the new
299     method to save modified session here too.
300    
301 bh 55 2001-09-11 Bernhard Herzog <[email protected]>
302    
303     * setup.py (InnoIconItem): fix typo
304    
305     (thuban_bdist_inno.run):
306     (bdist_inno.run): Move the decision not to create symlinks on
307     non-nt platforms to thuban_bdist_inno and do it unconditinally
308     since we never want to create the symlinks here
309    
310 bh 48 2001-09-10 Bernhard Herzog <[email protected]>
311    
312 bh 53 * Thuban/UI/mainwindow.py (MainWindow.IdentifyTool): Popup the
313     identify view immediately
314    
315     * Thuban/UI/controls.py: New file with two classes RecordListCtrl
316     and SelectableRecordListCtrl that implement the code shared by the
317     identify view and the label dialog
318    
319     * Thuban/UI/identifyview.py (IdentifyListCtrl): Derive from the
320     new class RecordListCtrl
321    
322     * Thuban/UI/labeldialog.py (LabelDialog.OnOK): Check whether the
323     return value of GetValue is None instead of using it as a boolean
324     directly so that Zero numbers are handled properly.
325     (LabelListCtrl): Derive from the new class
326     SelectableRecordListCtrl
327    
328 bh 48 * Thuban/UI/proj4dialog.py (Proj4Dialog.__init__):
329     (Proj4Dialog.dialogLayout): Make the window resizable and set the
330     size of the text control explicitly to make the sizers work on
331     both Windows and X.
332    
333 bh 44 2001-09-07 Bernhard Herzog <[email protected]>
334    
335     * Thuban/UI/view.py (MapCanvas.find_shape_at):Add a new parameter
336     that can limit the search to the currently selected layer.
337     (MapCanvas.SelectShapeAt): Make sure that the currently selected
338     layer stays selected even when no shape is found
339 bh 46 (MapCanvas.FitRectToWindow): If the rect has zero with or zero
340     height do nothing (avoids zero division errors)
341 bh 44
342 bh 32 2001-09-06 Bernhard Herzog <[email protected]>
343    
344 bh 42 * Thuban/UI/tree.py (SessionTreeCtrl, SessionTreeView.__init__):
345     Correct the spelling of SessionTreeCtrl. dabbrev is too damn
346     convenient :-)
347     (SessionTreeCtrl.__init__, SessionTreeCtrl.update_tree): Introduce
348     a new instvar layer_to_item to map layers to tree items
349     (SessionTreeCtrl.layer_selected): Select the appropriate tree item
350     to match the current selection in the interactor
351    
352 bh 40 * Thuban/UI/interactor.py (Interactor.SelectedLayer):
353     (Interactor.HasSelectedLayer): New methods to query the current
354     selection
355    
356     * Thuban/UI/mainwindow.py (MainWindow.current_layer):
357     (MainWindow.has_selected_layer): Simply call the appropriate
358     interactor method
359    
360     * Thuban/UI/mainwindow.py (MainWindow.__init__):
361     (MainWindow.LayerShowTable):
362     (MainWindow.identify_view_on_demand): Store the interactor in an
363     instvar and use that reference instead of going through main.app
364    
365     * Thuban/UI/mainwindow.py (MainWindow.ShowSessionTree):
366     * Thuban/UI/application.py (ThubanApplication.OnInit):
367     * Thuban/UI/main.py (main): Create the session tree view in main
368     with the new mainwindow method ShowSessionTree and not directly
369     the application's OnInit method
370    
371     * Thuban/UI/tree.py (myTreeCtrlPanel):
372     (SessioinTreeCtrl): Rename to SessioinTreeCtrl and turn it into a
373     TreeCtrl isntead of a panel. This affects most method since we now
374     refer to self instead of self.tree
375     (SessionTreeView): New class implementing a non-modal dialog
376     showing the session tree.
377    
378 bh 35 * Thuban/UI/mainwindow.py (MainWindow.LayerShowTable): Pass the
379     layer to the tableview dialog.
380    
381     * Thuban/UI/tableview.py: Add some doc-strings
382     (TableGrid):
383     (TableGrid.OnRangeSelect):
384     (TableGrid.OnSelectCell):
385     (TableFrame.__init__):
386     (TableFrame.row_selected):
387     Selecting rows in the grid view now updates the selected shapes
388     through the TableFrame. To achieve this we derive TableGrid from
389     Publisher and introduce the message type ROW_SELECTED which the
390     TableFrame subscribes to and which is issued by OnRangeSelect and
391     OnSelectCell
392    
393     (DataTable.SelectRow): Removed because it's no longer needed in
394     the row/shape selection scheme
395    
396 bh 32 * Thuban/UI/dialogs.py: New file implementing common classes for
397     dialogs
398    
399     * Thuban/UI/tableview.py (TableGrid.__init__): Don't subscribe to
400     the SELECTED_SHAPE message anymore. This is now handled by the
401     parent.
402     (TableGrid.select_shape): Only update the selection if the shape
403     is not None.
404     (TableFrame): Inherit from the new NonModalDialog class.
405     (TableFrame.__init__, TableFrame.select_shape): Handle the
406     SELECT_SHAPE message.
407     (TableFrame.OnClose): Extend the inherited method to unsubscribe
408     SELECT_SHAPE
409    
410     * Thuban/UI/mainwindow.py (MainWindow.init_dialogs):
411     (MainWindow.add_dialog):
412     (MainWindow.dialog_open):
413     (MainWindow.remove_dialog):
414     (MainWindow.get_open_dialog): New methods to maintain a dictionary
415     of opened non-modal dialogs.
416    
417     (MainWindow.__init__): Initialize the new non-modal dictionary
418     management code
419     (MainWindow.LayerShowTable): maintain separate dialogs for each
420     table using the non-modal dialog management code to only open a
421     view once for each table.
422    
423     (MainWindow.IdentifyTool):
424     (MainWindow.__init__):
425     (MainWindow.identify_view_on_demand): Don't open the identify view
426     in IdentifyTool anymore. This will be done automatically by the
427     new method identify_view_on_demand which handles the
428     SELECTED_SHAPE message so that the identify view will be opened on
429     demand
430    
431     * Thuban/UI/identifyview.py (IdentifyListCtrl.__init__): Remove
432     the interactor argument. The SELECTED_SHAPE message is now handled
433     by the parent.
434     (IdentifyView.__init__): Add the interactor argument so that we
435     can handle the SELECTED_SHAPE message here
436     (IdentifyView.selected_shape): New method to handle the
437     SELECTED_SHAPE messages
438    
439     * Thuban/UI/identifyview.py (IdentifyView): Derive from the new
440     NonModalDialog class
441     (IdentifyView.OnClose): Extend the inherited version to
442     unsubscribe SELECT_SHAPE
443    
444     * Thuban/Model/session.py (Session.UnsetModified): Remove debug prints
445    
446 bh 26 2001-09-05 Bernhard Herzog <[email protected]>
447    
448     * Thuban/UI/view.py (MapCanvas.__init__): New argument, interactor.
449    
450     * Thuban/UI/mainwindow.py (MainWindow.__init__): New argument
451     interactor to pass through to the MapCanvas
452    
453     * Thuban/UI/application.py (ThubanApplication.OnInit): Use the new
454     argument to the MainWindow constructor to get rid of the ugly hack
455     that made main.app available early just so that the mapcanvas
456     could access the interactor object.
457    
458 bh 19 2001-09-04 Bernhard Herzog <[email protected]>
459    
460 bh 22 * Thuban/UI/mainwindow.py (MainWindow.RunMessageBox): New method
461     that runs a modal message box
462     (MainWindow.OnClose): Use the new method
463     (MainWindow.RemoveLayer): Just do nothing in case no layer is
464     selected. The command should be grayed out anyway, so there's no
465     need to pop up a message box.
466     (MainWindow.AddLayer): Pop up a message box with an error message
467     if the shape file can't be opened
468    
469     * Thuban/Model/layer.py (Layer.__init__): Open the shapefile
470     immediately. This will cause an exception in case the file can't
471     be opened and we can display an appropriate message.
472    
473 bh 19 * MANIFEST.in: Add extensions/pyprojection/LICENSE
474    
475     * setup.py (thuban_bdist_rpm): New class implementing a Thuban
476     specific bdist_rpm command.
477    
478     * Thuban/UI/main.py: Catch ImportError exceptions when importing
479     the locale module because it may not be available on some
480     installations.
481    
482     * extensions/pyprojection/LICENSE: Copy of the license text in
483     Projection.i. Having it in a separate file makes it easier to
484     refer to license text in e.g. RPMs
485    
486 bh 18 2001-09-03 Bernhard Herzog <[email protected]>
487    
488 bh 19 * setup.py: use wx-config instead of wxgtk-config because it's
489     more generic
490    
491     * setup.py (ThubanInstall.get_outputs): Add the symlink in
492     <prefix>/bin to the outputs
493     (ThubanInstall.link_file): New method to link files. We need this
494     because the standard copy_files refuses to link non-existing
495     files.
496     (ThubanInstall.run): Remove the leading install root from the
497     script filename if an install root was specified and use the new
498     link_file method
499    
500 bh 18 * Thuban/UI/mainwindow.py (MainWindow.AddLayer): Fit the map to
501     the window when the first layer is added to the map.
502    
503     * setup.py (ThubanInstall.run): Honor the build root (self.root)
504     when linking thuban.py to <prefix>/bin
505    
506 bh 16 2001-08-31 Bernhard Herzog <[email protected]>
507    
508     * setup.py: In the setup call, the install parameters shouldn't
509     have trailing slashes because distutils on non-posix platforms
510     doesn't like that. The same applies to other directories like
511     "Resources/Bitmaps"
512    
513     In the configuration section for nt, move the wxWindows directory
514     optins into the part clearly marked as editable.
515    
516     (InstallLocal.initialize_options):
517     (InstallLocal.user_options): remove the currently unused debug
518     flag
519     (thuban_build_py.find_all_modules): Add this method so that it
520     works for our case of having packages and modules in one
521     distribution as well.
522     (ThubanInstall.initialize_options):
523     (ThubanInstall.finalize_options):
524     (ThubanInstall.user_options):
525     (ThubanInstall.boolean_options): Add new options, do-symlink and
526     extra files. Since these are the first ThubanInstall specific
527     options, override user_options and boolean_options
528     (ThubanInstall.run): Honor the new do-symlink and extra-files
529     options.
530     (ThubanInstall.get_outputs): Add to override the base-class's
531     version and add the extra-files to the outputs
532     (bdist_inno): New class for windows distributions with Inno Setup
533     (InnoIconItem): Helper class for bdist_inno
534     (thuban_bdist_inno): Thuban specific version of bdist_inno. Added
535     this together with the appropriate parameters, to the setup call.
536    
537     * setup.cfg (bdist_inno): added new section for the inno setup
538     installer
539    
540     * Thuban/UI/tree.py (myTreeCtrlPanel.__init__): New inst var
541     changing_selection to avoid recursive selection events when
542     modifying the selection in response to a selection event.
543     (myTreeCtrlPanel.normalize_selection): Set the new inst var when
544     changing the tree's selection.
545     (myTreeCtrlPanel.OnSelChanged): Only normalize the selection when
546     we're not being called indirectly from normalize_selection.
547    
548     * Thuban/UI/mainwindow.py (MainWindow.update_command_ui): Call
549     event.Check only if the command is actuall checkable.
550     (MainWindow.__init__): Call the toolbar's Realize method to make
551     sure that the items are actually shown
552    
553 bh 7 2001-08-28 Bernhard Herzog <[email protected]>
554    
555 bh 9 * setup.py: Fix some doc strings
556    
557 bh 7 * ChangeLog: started
558    

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26