/[thuban]/branches/greater-ms3/thuban/ChangeLog
ViewVC logotype

Contents of /branches/greater-ms3/thuban/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 192 - (show annotations)
Tue May 28 16:09:04 2002 UTC (22 years, 9 months ago) by bh
Original Path: trunk/thuban/ChangeLog
File size: 24462 byte(s)
update ChangeLog

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

Properties

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

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26