/[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 85 by bh, Wed Apr 3 15:21:58 2002 UTC revision 190 by bh, Tue May 28 12:39:49 2002 UTC
# Line 1  Line 1 
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    2002-05-23  Bernhard Herzog  <[email protected]>
17    
18            * Thuban/UI/mainwindow.py (MainWindow.__init__): Fix spelling of
19            layer_outline_color. Fix it in the definition of the command too.
20    
21            * Thuban/UI/command.py (Command): Fix typo in doc string
22    
23    2002-05-22  Bernhard Herzog  <[email protected]>
24    
25            * Thuban/UI/mainwindow.py (MainWindow.RunMessageBox): Fix a typo
26            in the docstring
27    
28    2002-05-15  Bernhard Herzog  <[email protected]>
29    
30            * Thuban/Model/layer.py (Layer.open_shapefile): Set bbox to None
31            when the shapefile is empty.
32            (Layer.BoundingBox, Layer.LatLongBoundingBox): Both methods may
33            now return None for empty shapefiles. Update doc-strings.
34    
35            * Thuban/Model/map.py (Map.BoundingBox): Add doc-string. Deal with
36            the layer's bbox being None.
37    
38            * Thuban/UI/tree.py (SessionTreeCtrl.update_tree): Deal with the
39            layer's bbox being None.
40    
41            * Thuban/UI/view.py (MapCanvas.shape_selected): Only redraw when
42            necessary.
43            (MapCanvas.__init__): New instance variables, last_selected_layer
44            and last_selected_shape to determine how the selection has
45            changed.
46    
47            * Thuban/UI/tableview.py (TableGrid.__init__): Do not call
48            AutoSizeColumns because it will cause a traversal of the entire
49            table which for large .dbf files will take a very long time.
50    
51    2002-05-14  Bernhard Herzog  <[email protected]>
52    
53            * Thuban/Model/layer.py (Layer.open_shapefile): Choose a better
54            maximum depth for the tree than shapelib does by default.
55    
56    2002-05-10  Bernhard Herzog  <[email protected]>
57    
58            * setup.py (py_modules): The shptree modules doesn't have a
59            wrapper, so don't include it in the py_modules
60    
61    2002-05-08  Bernhard Herzog  <[email protected]>
62    
63            * extensions/shapelib/shptree.c (compare_ints): Make arguments
64            const void * as in the qsort prototype
65            (SHPTreeFindLikelyShapes): Remove some unused variables.
66    
67            * Thuban/UI/view.py (PanTool.MouseMove): Use the bitmap the view
68            maintains to redraw the window during a drag.
69            (MapCanvas.unprojected_rect_around_point): New method to determine
70            a small region around a point for hit-testing.
71            (MapCanvas.find_shape_at): Only test the shapes in a small region
72            around the point.
73    
74            * setup.py: Increment the version to 0.1.2
75    
76            * Thuban/UI/tree.py (SessionTreeCtrl.unsubscribe_all): Remove a
77            debug print and set session to None after unsubscribing
78    
79    2002-05-07  Bernhard Herzog  <[email protected]>
80    
81            * Data/iceland_sample.session, Data/iceland_sample.thuban: Rename
82            the file to have a .thuban extension.
83    
84            * Thuban/UI/tree.py (session_channels): New class constant with
85            all the session channels to subscribe to to update the tree
86            (SessionTreeCtrl.session_changed): Remember the session so that we
87            can unsubscribe properly. Use the new class constant to
88            unsubscribe from the old session and subscribe to the new one.
89            (SessionTreeCtrl.unsubscribe_all): New method to unsubscribe all
90            subscriptions of the SessionTreeCtrl.
91            (SessionTreeView.OnClose): Call the tree's unsubscribe_all method.
92    
93            * Thuban/UI/mainwindow.py (MainWindow.__init__): Add the "Show
94            Session Tree" command to the file menu.
95    
96            * Thuban/UI/view.py (MapCanvas.do_redraw): Pass the entire bitmap
97            as update_region to the renderer.
98    
99            * Thuban/UI/renderer.py
100            (ScreenRenderer.layer_ids, ScreenRenderer.draw_shape_layer): The
101            update box is now directly a tuple, not a wxRect anymore.
102    
103            * Thuban/Model/layer.py (Layer.ShapesInRegion): Remove some debug
104            prints.
105    
106    2002-05-07  Bernhard Herzog  <[email protected]>
107    
108            * setup.py: Add the shptree extension module. See
109            extensions/pyshapelib/ChangeLog for more details.
110    
111            * extensions/shapelib/shpopen.c, extensions/shapelib/shapefil.h,
112            extensions/shapelib/dbfopen.c: Really update to the versions of
113            shapelib 1.2.9. For some reason it wasn't really done on
114            2002-04-11.
115    
116            * extensions/shapelib/shptree.c: Modified version of shptree.c of
117            shapelib 1.2.9. The only real difference is the use of qsort
118            instead of a bubble sort implementation
119    
120            * Thuban/Model/layer.py (Layer.__init__): New instance variable
121            shapetree to hold the shapelib quadtree for the shapefile
122            (Layer.open_shapefile): Create the quad tree.
123            (Layer.ShapesInRegion): New method to return the ids of shapes in
124            a given region using the quad tree.
125    
126            * extensions/thuban/wxproj.cpp (project_points): Fix some typos in
127            comment
128            (draw_polygon_shape): Accept both arcs and polygons.
129            (initwxproj): Use the new PYSHAPELIB_IMPORT_API macro to import
130            the api.
131    
132            * Thuban/UI/renderer.py (MapRenderer.layer_ids): New method to
133            return the shape ids to be rendered in a given layer.
134            (MapRenderer.draw_shape_layer): Call layer_ids to get the list of
135            ids. Use draw_polygon_shape to draw arc shapes as well.
136            (ScreenRenderer.RenderMap): New parameter for the rectangle that
137            has to be updated
138            (ScreenRenderer.layer_ids): Make use of the layer's quadtree by
139            calling it's ShapesInRegion method.
140    
141            * Thuban/UI/view.py (MapCanvas.__init__): New instance variable
142            update_region for the update region.
143            (MapCanvas.OnPaint): Maintain the update region
144            (MapCanvas.do_redraw): Pass the bounding box of the update_region
145            to the renderer when drawing the bitmap. Reset the update_region.
146    
147    2002-05-03  Bernhard Herzog  <[email protected]>
148    
149            * Thuban/UI/mainwindow.py (MainWindow.SaveSessionAs,
150            MainWindow.OpenSession): Change the file extension of the session
151            files to .thuban
152    
153            * Thuban/Model/session.py (Session.AddMap, forwarded_channels):
154            Move the map channels to be forwarded by the session into the
155            class constant with forwarded_channels. Also add
156            LAYER_PROJECTION_CHANGED and LAYER_VISIBILITY_CHANGED to
157            forwarded_channels
158    
159            * Thuban/Model/base.py (Modifiable.changed): Fix doc-string (a
160            typo and some rewording).
161    
162    2002-05-02  Bernhard Herzog  <[email protected]>
163    
164            * Thuban/UI/view.py: Keep the temporary bitmap used during drawing
165            around to speed up most redraws:
166            (MapCanvas.__init__): New instance variable bitmap which holds the
167            bitmap
168            (MapCanvas.do_redraw): Redraw self.bitmap if necessary. Use
169            self.bitmap to draw.
170            (MapCanvas.full_redraw): New method to force a full redraw
171            including the bitmap
172            (MapCanvas.SetMap): Subscribe full_redraw instead of redraw to
173            make sure the bitmap is redrawn.
174            (MapCanvas.projection_changed, MapCanvas.set_view_transform,
175            MapCanvas.shape_selected): Call full_redraw instead of readraw to
176            make sure the bitmap is redrawn.
177            (MapCanvas.OnSize): New method to handle size events so that the
178            bitmap can be redrawn.
179    
180    2002-04-29  Bernhard Herzog  <[email protected]>
181    
182            * Thuban/UI/mainwindow.py (MainWindow.__init__): Subscribe to the
183            canvas' VIEW_POSITION event
184            (MainWindow.view_position_changed): Handler for VIEW_POSITION.
185            Update the text in the status-bar accordingly.
186    
187            * Thuban/UI/view.py (MapCanvas): Derive from Publisher as well
188            (MapCanvas.__del__): Implement because Publisher.__del__ has to be
189            called.
190            (MapCanvas.__init__): Bind EVT_LEAVE_WINDOW too. Initialize
191            current_position
192            (MapCanvas.set_current_position): New method to set
193            current_position. Issue a VIEW_POSITION event
194            (MapCanvas.CurrentPosition): New public method to return the value
195            of current_position. Should be called when the VIEW_POSITION event
196            is processed.
197            (MapCanvas.OnLeftDown, MapCanvas.OnLeftUp, MapCanvas.OnMotion):
198            Update the position.
199            (MapCanvas.OnLeaveWindow): Set the position to None.
200    
201            * Thuban/UI/messages.py (VIEW_POSITION): New message for the
202            position in the statusbar
203    
204    2002-04-26      Frank Koormann <[email protected]>
205    
206            * Thuban/UI/mainwindow.py: AddLayer, Dialog title s/session/data
207    
208    2002-04-24      Frank Koormann <[email protected]>
209            
210            * Resources/Bitmaps/identify.xpm: shadow added
211    
212            * Resources/Bitmaps/fullextent.xpm: new
213            
214    2002-04-22      Jan-Oliver Wagner <[email protected]>
215    
216            * Thuban/UI/tree.py (update_tree): added test for None on map bounding box
217    
218    2002-04-21      Jan-Oliver Wagner <[email protected]>
219    
220            * Thuban/UI/proj4dialog.py (UTMProposeZoneDialog): new
221    
222            * Thuban/UI/tree.py (update_tree): added added map extent
223    
224            * Thuban/UI/mainwindow.py (_method_command): extended by parameter
225            icon; added map_full_extend as tool
226    
227    2002-04-19      Jan-Oliver Wagner <[email protected]>
228    
229            * Thuban/UI/mainwindow.py (SaveSession): launch save as dialog for
230            saving _new_ sessions
231    
232            * Thuban/Model/session.py (create_empty_session): new session
233            don't have a filename (set to None)
234    
235            * Thuban/UI/tree.py (update_tree): added filename and modified flag
236    
237            * Thuban/Model/load.py (ProcessSession): convert projection
238            parameters from unicode to regular string
239    
240            * Data/iceland_sample.session: Added UTM Zone 26 projection.
241    
242    2002-04-11  Bernhard Herzog  <[email protected]>
243    
244            * extensions/shapelib/shapefil.h, extensions/shapelib/shpopen.c,
245            extensions/shapelib/dbfopen.c: Update to the versions of shapelib
246            1.2.9
247    
248            * setup.py (Lib.wxproj extension): Don't link shpopen.c and put
249            the pyshapelib directoy into the list of include dirs, so that
250            pyshapelib_api.h can be found.
251    
252            * extensions/thuban/wxproj.cpp (pyshapelib_api): New variable that
253            holds the pyshapelib C-API
254            (draw_polygon_shape, point_in_polygon_shape, shape_centroid): Use
255            pyshapelib_api to access the shapelib functions.
256            (initwxproj): Import the c_api from the shapelib module and
257            initialize pyshapelib_api.
258    
259    2002-04-04  Bernhard Herzog  <[email protected]>
260    
261            * setup.py (thuban_bdist_rpm.initialize_options): Use
262            initialize_options to create the scripts for the rpm.
263    
264            * extensions/pyprojection/setup.py (PROJ4_PREFIX): Just use /
265    
266  2002-04-03  Bernhard Herzog  <[email protected]>  2002-04-03  Bernhard Herzog  <[email protected]>
267    
268            * setup.py: Increment version to 0.1.1
269    
270          * Thuban/UI/mainwindow.py (MainWindow.__init__): Move the "Add          * Thuban/UI/mainwindow.py (MainWindow.__init__): Move the "Add
271          Layer" and "Remove Layer" commands from the layer menu to the map          Layer" and "Remove Layer" commands from the layer menu to the map
272          menu          menu

Legend:
Removed from v.85  
changed lines
  Added in v.190

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26