/[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 146 by bh, Tue May 7 14:59:27 2002 UTC revision 238 by bh, Wed Jul 24 10:19:46 2002 UTC
# Line 1  Line 1 
1    2002-07-24  Bernhard Herzog  <[email protected]>
2    
3            * Thuban/UI/mainwindow.py (MainWindow.__init__): Turn the initial
4            window size into a parameter.
5    
6    2002-07-23  Bernhard Herzog  <[email protected]>
7    
8            * Thuban/UI/menu.py (Menu.item_index): Also search for menus not
9            just commands.
10    
11            * Thuban/UI/mainwindow.py (MainWindow.__init__): Change the
12            parameter list a bit to allow setting the window title and the
13            initial message in the status bar. Update the callers.
14    
15            * Thuban/UI/application.py (ThubanApplication.OnInit)
16            (ThubanApplication.CreateMainWindow): Put the mainwindow
17            instantiation into a separate method so that it can be overridden
18            by a subclass.
19    
20    2002-07-19  Bernhard Herzog  <[email protected]>
21    
22            * Thuban/Model/session.py: Issue a CHANGED message every time
23            another changed message is issued to make it easier to get
24            notified of changes.
25            (Session): Update the doc string
26            (Session.forward): Issue changed-events as CHANGED as well.
27            (Session.changed): Overwrite the inherited version to issue
28            CHANGED events as well.
29    
30            * Thuban/UI/tree.py: We can now simply subscribe to the session's
31            CHANGED channel to be informed of changes.
32            (SessionTreeCtrl.session_channels): Not needed any longer.
33            (SessionTreeCtrl.unsubscribe_all, SessionTreeCtrl.session_changed):
34            Only have to (un)subscribe CHANGED
35    
36            * Thuban/Model/map.py (Map.TreeInfo): Deal better with empty maps.
37    
38            * Thuban/UI/main.py, Thuban/UI/__init__.py: Move the work-around
39            for the wxPython locale bug to __init__.py so that it's
40            automatically executed by anybody using UI code from Thuban.
41    
42    2002-07-18  Bernhard Herzog  <[email protected]>
43    
44            * Thuban/UI/main.py (main): app no longer needs to be global
45    
46            * Thuban/UI/mainwindow.py (MainWindow.__init__): Add application
47            as parameter and store it in an instance variable
48            (MainWindow.invoke_command, MainWindow.update_command_ui)
49            (MainWindow.save_modified_session, MainWindow.NewSession)
50            (MainWindow.OpenSession, MainWindow.SaveSession)
51            (MainWindow.SaveSessionAs, MainWindow.ShowSessionTree): Use self's
52            application object.
53    
54            * Thuban/UI/application.py (ThubanApplication.OnInit): Instantiate
55            the main window with self.
56    
57            * Thuban/UI/context.py: New module with the context class
58    
59            * Thuban/UI/command.py (Command): Update doc string.
60    
61            * Thuban/UI/mainwindow.py (MainWindow.invoke_command,
62            MainWindow.update_command_ui): Pass an instance of the context
63            class to the command's methods
64            (check_current_tool, call_method): Handle the new context
65            implementation
66    
67            * Examples/simple_extensions/simple_tool.py (simple_tool,
68            check_simple_tool): Handle the new context implementation
69    
70            * Examples/simple_extensions/simple_command.py (simple_command):
71            Handle the new context implementation. Update the comments about
72            the context.
73    
74            * Thuban/UI/application.py (ThubanApplication.SetSession): Add
75            doc-string
76            (ThubanApplication.Session): New method to return the session
77            object
78    
79            * Thuban/UI/tree.py (SessionTreeCtrl.update_tree): The
80            interactor's selected_layer may not be a layer of the current
81            session when the tree is updated while a new session is being set.
82    
83    2002-07-17  Bernhard Herzog  <[email protected]>
84    
85            * Thuban/UI/tree.py (color_string): Removed. No longer used.
86            (SessionTreeCtrl.update_tree, SessionTreeCtrl.add_items): Split
87            update_tree into update_tree and add_items. The tree now uses a
88            more generic way to display the contents of the tree.
89            (SessionTreeCtrl): Add a doc string explaining the TreeInfo method
90    
91            * Thuban/Model/layer.py (Layer.TreeInfo),
92            Thuban/Model/extension.py (Extension.TreeInfo),
93            Thuban/Model/map.py (Map.TreeInfo),
94            Thuban/Model/session.py (Session.TreeInfo):
95            Add TreeInfo methods to implement the new tree view update scheme
96    
97    2002-07-16  Bernhard Herzog  <[email protected]>
98    
99            * Thuban/UI/application.py: Don't use "import from" for the
100            MainWindow. It can't always be resolved.
101            (ThubanApplication.OnInit): change reference to MainWindow
102            accordingly.
103    
104            * Thuban/UI/menu.py (Menu.SetItems): New method to replace a menu
105            completely
106    
107    2002-07-10  Bernhard Herzog  <[email protected]>
108    
109            * setup.py (create_init_module): New configurable variable whose
110            default depends on the platform we're running on.
111            (ThubanInstall.initialize_options): Initialize
112            self.create_init_module from the global create_init_module
113            (ThubanInstall.user_options): indictate that the options
114            create-init-module and init-module-dir have arguments.
115    
116            * setup.py: In the setup call change the version number to include
117            cvs.
118    
119            * MANIFEST.in: Add the files in Examples
120    
121    2002-07-09  Bernhard Herzog  <[email protected]>
122    
123            * setup.py: In the setup call, use the thuban homepage as the
124            value of the url parameter.
125    
126            * Examples: New subdirectory for examples.
127    
128            * Examples/simple_extensions/simple_tool.xpm,
129            Examples/simple_extensions/simple_tool.py,
130            Examples/simple_extensions/simple_command.py,
131            Examples/simple_extensions/README: Simple examples showing how to
132            add new commands and tools.
133    
134            * setup.cfg (bdist_rpm): Add the default value for prefix and tell
135            bdist_rpm that we also have an install script.
136            (bdist_inno): Add 2002 to the copyright notice.
137    
138            * setup.py: Create a file in python's site-packages directory to
139            make installation of Thuban as a library easier.
140            (ThubanInstall.user_options): Add two new options,
141            create-init-module and init-module-dir
142            (ThubanInstall.expand_with_pure_python_dirs): New method to expand
143            filenames for installation in the default directories.
144            (ThubanInstall.select_scheme, ThubanInstall.convert_paths): Extend
145            the inherited methods to capture some filenames before they're
146            transformed too much by distutils.
147            (ThubanInstall.run): Create the init module if requested.
148            (ThubanInstall.thuban_init_filename): New method to return the
149            full name of the init module.
150            (ThubanInstall.get_outputs): Append the filename of the init
151            module.
152    
153    2002-07-08  Bernhard Herzog  <[email protected]>
154    
155            * setup.py (thuban_bdist_rpm): Extend this version of bdist_rpm to
156            handle the prefix properly which means that the default for the
157            installation prefix should be /usr for RPMs and /usr/local when
158            doing a normal source install.
159            (bdist_rpm_install_script): Script to override the default install
160            commands in the specfile generated by the bdist_rpm command.
161            (thuban_bdist_rpm.user_options): Add a prefix option
162            (thuban_bdist_rpm.initialize_options): Init the prefix option.
163            Create the script files for the spec files as empty files here
164            (thuban_bdist_rpm._make_spec_file): Override the inherited method
165            to fill the script files with content.
166    
167            * Thuban/Model/save.py (relative_filename): Wrapper around
168            Thuban.Lib.fileutil.relative_filename that accepts an empty dir
169            argument. save_session now automatically uses this version,
170            solving a problem when saving to a relative filename.
171    
172            * setup.py: In the setup call, make sure that the library
173            directories are under $prefix/lib not directly under $prefix.
174    
175    2002-06-20      Jan-Oliver Wagner <[email protected]>
176    
177            * Thuban/Model/extension.py: new module to handle extension objects.
178            * Thuban/Model/messages.py: new messages for extensions.
179            * Thuban/Model/session.py (Session.Extensions, Session.HasExtensions,
180            Session.AddExtension): new for handling extensions.
181            Also some other minor changes to round up extension handling.
182            * Thuban/UI/tree.py (SessionTreeCrtl:update_tree): Added visualization
183            of Extension titles and title and names of its objects.
184    
185    2002-05-29  Bernhard Herzog  <[email protected]>
186    
187            * Thuban/UI/mainwindow.py (MainWindow.bind_command_events): Bind
188            the events for a command.
189            (MainWindow.add_toolbar_command, MainWindow.add_menu_command):
190            Call bind_command_events to bind the events. add_toolbar_command
191            can now bind events too so that it's possible to have commands
192            that are only available through the toolbar.
193            (MainWindow.init_ids): New instance variable events_bound to keep
194            track of for which commands events have been bound.
195    
196    2002-05-28  Bernhard Herzog  <[email protected]>
197    
198            * Thuban/UI/menu.py: New module to build and manage menus.
199    
200            * Thuban/UI/mainwindow.py: Remove some unused imports.
201            (MainWindow.__init__, main_menu): move the definition of the main
202            menu from __init__ to the Menu instance main_menu.
203            (MainWindow.build_menu_bar, MainWindow.build_menu): New methods to
204            build the menu bar and sub-menus from a menu description.
205    
206            * Thuban/UI/application.py (ThubanApplication.OnInit): Read the
207            startup file
208            (ThubanApplication.read_startup_files): New method to run
209            ~/.thuban/thubanstart.py
210    
211            * Thuban/UI/mainwindow.py (MainWindow.__init__, main_toolbar):
212            Move the toolbar definition to the Menu instance main_toolbar.
213            (MainWindow.build_toolbar): New method to build the toolbar
214            similar to the build_menu methods
215    
216    2002-05-23  Bernhard Herzog  <[email protected]>
217    
218            * Thuban/UI/mainwindow.py (MainWindow.__init__): Fix spelling of
219            layer_outline_color. Fix it in the definition of the command too.
220    
221            * Thuban/UI/command.py (Command): Fix typo in doc string
222    
223    2002-05-22  Bernhard Herzog  <[email protected]>
224    
225            * Thuban/UI/mainwindow.py (MainWindow.RunMessageBox): Fix a typo
226            in the docstring
227    
228    2002-05-15  Bernhard Herzog  <[email protected]>
229    
230            * Thuban/Model/layer.py (Layer.open_shapefile): Set bbox to None
231            when the shapefile is empty.
232            (Layer.BoundingBox, Layer.LatLongBoundingBox): Both methods may
233            now return None for empty shapefiles. Update doc-strings.
234    
235            * Thuban/Model/map.py (Map.BoundingBox): Add doc-string. Deal with
236            the layer's bbox being None.
237    
238            * Thuban/UI/tree.py (SessionTreeCtrl.update_tree): Deal with the
239            layer's bbox being None.
240    
241            * Thuban/UI/view.py (MapCanvas.shape_selected): Only redraw when
242            necessary.
243            (MapCanvas.__init__): New instance variables, last_selected_layer
244            and last_selected_shape to determine how the selection has
245            changed.
246    
247            * Thuban/UI/tableview.py (TableGrid.__init__): Do not call
248            AutoSizeColumns because it will cause a traversal of the entire
249            table which for large .dbf files will take a very long time.
250    
251    2002-05-14  Bernhard Herzog  <[email protected]>
252    
253            * Thuban/Model/layer.py (Layer.open_shapefile): Choose a better
254            maximum depth for the tree than shapelib does by default.
255    
256    2002-05-10  Bernhard Herzog  <[email protected]>
257    
258            * setup.py (py_modules): The shptree modules doesn't have a
259            wrapper, so don't include it in the py_modules
260    
261    2002-05-08  Bernhard Herzog  <[email protected]>
262    
263            * extensions/shapelib/shptree.c (compare_ints): Make arguments
264            const void * as in the qsort prototype
265            (SHPTreeFindLikelyShapes): Remove some unused variables.
266    
267            * Thuban/UI/view.py (PanTool.MouseMove): Use the bitmap the view
268            maintains to redraw the window during a drag.
269            (MapCanvas.unprojected_rect_around_point): New method to determine
270            a small region around a point for hit-testing.
271            (MapCanvas.find_shape_at): Only test the shapes in a small region
272            around the point.
273    
274            * setup.py: Increment the version to 0.1.2
275    
276            * Thuban/UI/tree.py (SessionTreeCtrl.unsubscribe_all): Remove a
277            debug print and set session to None after unsubscribing
278    
279    2002-05-07  Bernhard Herzog  <[email protected]>
280    
281            * Data/iceland_sample.session, Data/iceland_sample.thuban: Rename
282            the file to have a .thuban extension.
283    
284            * Thuban/UI/tree.py (session_channels): New class constant with
285            all the session channels to subscribe to to update the tree
286            (SessionTreeCtrl.session_changed): Remember the session so that we
287            can unsubscribe properly. Use the new class constant to
288            unsubscribe from the old session and subscribe to the new one.
289            (SessionTreeCtrl.unsubscribe_all): New method to unsubscribe all
290            subscriptions of the SessionTreeCtrl.
291            (SessionTreeView.OnClose): Call the tree's unsubscribe_all method.
292    
293            * Thuban/UI/mainwindow.py (MainWindow.__init__): Add the "Show
294            Session Tree" command to the file menu.
295    
296            * Thuban/UI/view.py (MapCanvas.do_redraw): Pass the entire bitmap
297            as update_region to the renderer.
298    
299            * Thuban/UI/renderer.py
300            (ScreenRenderer.layer_ids, ScreenRenderer.draw_shape_layer): The
301            update box is now directly a tuple, not a wxRect anymore.
302    
303            * Thuban/Model/layer.py (Layer.ShapesInRegion): Remove some debug
304            prints.
305    
306  2002-05-07  Bernhard Herzog  <[email protected]>  2002-05-07  Bernhard Herzog  <[email protected]>
307    
308          * setup.py: Add the shptree extension module. See          * setup.py: Add the shptree extension module. See

Legend:
Removed from v.146  
changed lines
  Added in v.238

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26