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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 72 - (hide annotations)
Fri Feb 1 17:21:18 2002 UTC (23 years, 1 month ago) by bh
Original Path: trunk/thuban/ChangeLog
File size: 12803 byte(s)
* extensions/thuban/wxproj.cpp (project_points): Fix two
off-by-one errors in the last loop that joins the various parts
together.

1 bh 72 2002-02-01 Bernhard Herzog <[email protected]>
2    
3     * extensions/thuban/wxproj.cpp (project_points): Fix two
4     off-by-one errors in the last loop that joins the various parts
5     together.
6    
7 bh 71 2002-01-14 Bernhard Herzog <[email protected]>
8    
9     * setup.py (data_dist.make_distribution): Fix some typos
10    
11 bh 70 2001-09-18 Bernhard Herzog <[email protected]>
12    
13     * README: Slight tweaking in preparation for the 0.1 release
14    
15     * setup.cfg: Add section for sdist to create both tgz and zip
16     archives
17    
18     * setup.py: increase version number to 0.1
19     (data_dist): New command class for data distribution
20    
21    
22 bh 64 2001-09-14 Bernhard Herzog <[email protected]>
23    
24 bh 70 * Thuban/UI/identifyview.py (IdentifyListCtrl.selected_shape):
25     Handle the case of no layer (i.e. layer is None) properly.
26    
27     * Thuban/UI/proj4dialog.py (UTMDialog.__init__, Proj4Dialog.__init__):
28     Set the initial selection of the combo boxes to reflect the
29     projection we're starting with in a way that works on windows,
30     too.
31    
32 bh 64 * Thuban/Lib/connector.py (Connector.print_connections): Print the
33     puiblisher's ids in hex to make it easier to compare them to the
34     standard repr of python methods
35    
36     * Thuban/Model/map.py (Map.Destroy): Unsubscribe the label_layer
37     messages
38    
39 bh 59 2001-09-13 Bernhard Herzog <[email protected]>
40    
41 bh 64 * Thuban/UI/tree.py (SessionTreeCtrl.OnSelChanged): Make sure to
42     deselect the layer if no layer is selected
43    
44 bh 59 * Thuban/UI/view.py (MapCanvas.OnPaint): Only delay drawing to
45     idle time when there actually is something to draw. If there's
46     nothing to draw simply clear the window
47     (MapCanvas.do_redraw): Call dc.EndDrawing and add some comments.
48     (MapCanvas.SetMap): force a redraw in all cases because
49     FitMapToWindow doesn't always do it.
50     (MapCanvas.ZoomFactor): Add an optional parameter, center, to
51     specify the point to move into the center of the window
52     (ZoomOutTool.MouseUp, ZoomInTool.MouseUp): If the mouse wasn't
53     dragged, zoon in/out by a factor of 2
54 bh 64 (MapCanvas.find_shape_at): Iterate backwards (i.e. with decreasing
55     index, i.e. reversed drawing order) so that objects appearing to
56     be in from of others are selected first. This is probably mostly
57     relevant for point shapes where the symbols used may overlap
58 bh 59
59     * Thuban/Model/session.py (create_empty_session): Unset the
60     modified bit before returning it
61    
62     * Thuban/UI/mainwindow.py (MainWindow.NewSession): Use
63     create_empty_session session to create the new, empty session.
64    
65     * Thuban/UI/mainwindow.py (MainWindow.__init__): Set the size of
66     the tool bitmaps.
67     (MainWindow.OnClose, MainWindow.save_modified_session): Separate
68     the code that asks whether the session should be saved into the
69     new method save_modified_session.
70     (MainWindow.OpenSession, MainWindow.NewSession): Use the new
71     method to save modified session here too.
72    
73 bh 55 2001-09-11 Bernhard Herzog <[email protected]>
74    
75     * setup.py (InnoIconItem): fix typo
76    
77     (thuban_bdist_inno.run):
78     (bdist_inno.run): Move the decision not to create symlinks on
79     non-nt platforms to thuban_bdist_inno and do it unconditinally
80     since we never want to create the symlinks here
81    
82 bh 48 2001-09-10 Bernhard Herzog <[email protected]>
83    
84 bh 53 * Thuban/UI/mainwindow.py (MainWindow.IdentifyTool): Popup the
85     identify view immediately
86    
87     * Thuban/UI/controls.py: New file with two classes RecordListCtrl
88     and SelectableRecordListCtrl that implement the code shared by the
89     identify view and the label dialog
90    
91     * Thuban/UI/identifyview.py (IdentifyListCtrl): Derive from the
92     new class RecordListCtrl
93    
94     * Thuban/UI/labeldialog.py (LabelDialog.OnOK): Check whether the
95     return value of GetValue is None instead of using it as a boolean
96     directly so that Zero numbers are handled properly.
97     (LabelListCtrl): Derive from the new class
98     SelectableRecordListCtrl
99    
100 bh 48 * Thuban/UI/proj4dialog.py (Proj4Dialog.__init__):
101     (Proj4Dialog.dialogLayout): Make the window resizable and set the
102     size of the text control explicitly to make the sizers work on
103     both Windows and X.
104    
105 bh 44 2001-09-07 Bernhard Herzog <[email protected]>
106    
107     * Thuban/UI/view.py (MapCanvas.find_shape_at):Add a new parameter
108     that can limit the search to the currently selected layer.
109     (MapCanvas.SelectShapeAt): Make sure that the currently selected
110     layer stays selected even when no shape is found
111 bh 46 (MapCanvas.FitRectToWindow): If the rect has zero with or zero
112     height do nothing (avoids zero division errors)
113 bh 44
114 bh 32 2001-09-06 Bernhard Herzog <[email protected]>
115    
116 bh 42 * Thuban/UI/tree.py (SessionTreeCtrl, SessionTreeView.__init__):
117     Correct the spelling of SessionTreeCtrl. dabbrev is too damn
118     convenient :-)
119     (SessionTreeCtrl.__init__, SessionTreeCtrl.update_tree): Introduce
120     a new instvar layer_to_item to map layers to tree items
121     (SessionTreeCtrl.layer_selected): Select the appropriate tree item
122     to match the current selection in the interactor
123    
124 bh 40 * Thuban/UI/interactor.py (Interactor.SelectedLayer):
125     (Interactor.HasSelectedLayer): New methods to query the current
126     selection
127    
128     * Thuban/UI/mainwindow.py (MainWindow.current_layer):
129     (MainWindow.has_selected_layer): Simply call the appropriate
130     interactor method
131    
132     * Thuban/UI/mainwindow.py (MainWindow.__init__):
133     (MainWindow.LayerShowTable):
134     (MainWindow.identify_view_on_demand): Store the interactor in an
135     instvar and use that reference instead of going through main.app
136    
137     * Thuban/UI/mainwindow.py (MainWindow.ShowSessionTree):
138     * Thuban/UI/application.py (ThubanApplication.OnInit):
139     * Thuban/UI/main.py (main): Create the session tree view in main
140     with the new mainwindow method ShowSessionTree and not directly
141     the application's OnInit method
142    
143     * Thuban/UI/tree.py (myTreeCtrlPanel):
144     (SessioinTreeCtrl): Rename to SessioinTreeCtrl and turn it into a
145     TreeCtrl isntead of a panel. This affects most method since we now
146     refer to self instead of self.tree
147     (SessionTreeView): New class implementing a non-modal dialog
148     showing the session tree.
149    
150 bh 35 * Thuban/UI/mainwindow.py (MainWindow.LayerShowTable): Pass the
151     layer to the tableview dialog.
152    
153     * Thuban/UI/tableview.py: Add some doc-strings
154     (TableGrid):
155     (TableGrid.OnRangeSelect):
156     (TableGrid.OnSelectCell):
157     (TableFrame.__init__):
158     (TableFrame.row_selected):
159     Selecting rows in the grid view now updates the selected shapes
160     through the TableFrame. To achieve this we derive TableGrid from
161     Publisher and introduce the message type ROW_SELECTED which the
162     TableFrame subscribes to and which is issued by OnRangeSelect and
163     OnSelectCell
164    
165     (DataTable.SelectRow): Removed because it's no longer needed in
166     the row/shape selection scheme
167    
168 bh 32 * Thuban/UI/dialogs.py: New file implementing common classes for
169     dialogs
170    
171     * Thuban/UI/tableview.py (TableGrid.__init__): Don't subscribe to
172     the SELECTED_SHAPE message anymore. This is now handled by the
173     parent.
174     (TableGrid.select_shape): Only update the selection if the shape
175     is not None.
176     (TableFrame): Inherit from the new NonModalDialog class.
177     (TableFrame.__init__, TableFrame.select_shape): Handle the
178     SELECT_SHAPE message.
179     (TableFrame.OnClose): Extend the inherited method to unsubscribe
180     SELECT_SHAPE
181    
182     * Thuban/UI/mainwindow.py (MainWindow.init_dialogs):
183     (MainWindow.add_dialog):
184     (MainWindow.dialog_open):
185     (MainWindow.remove_dialog):
186     (MainWindow.get_open_dialog): New methods to maintain a dictionary
187     of opened non-modal dialogs.
188    
189     (MainWindow.__init__): Initialize the new non-modal dictionary
190     management code
191     (MainWindow.LayerShowTable): maintain separate dialogs for each
192     table using the non-modal dialog management code to only open a
193     view once for each table.
194    
195     (MainWindow.IdentifyTool):
196     (MainWindow.__init__):
197     (MainWindow.identify_view_on_demand): Don't open the identify view
198     in IdentifyTool anymore. This will be done automatically by the
199     new method identify_view_on_demand which handles the
200     SELECTED_SHAPE message so that the identify view will be opened on
201     demand
202    
203     * Thuban/UI/identifyview.py (IdentifyListCtrl.__init__): Remove
204     the interactor argument. The SELECTED_SHAPE message is now handled
205     by the parent.
206     (IdentifyView.__init__): Add the interactor argument so that we
207     can handle the SELECTED_SHAPE message here
208     (IdentifyView.selected_shape): New method to handle the
209     SELECTED_SHAPE messages
210    
211     * Thuban/UI/identifyview.py (IdentifyView): Derive from the new
212     NonModalDialog class
213     (IdentifyView.OnClose): Extend the inherited version to
214     unsubscribe SELECT_SHAPE
215    
216     * Thuban/Model/session.py (Session.UnsetModified): Remove debug prints
217    
218 bh 26 2001-09-05 Bernhard Herzog <[email protected]>
219    
220     * Thuban/UI/view.py (MapCanvas.__init__): New argument, interactor.
221    
222     * Thuban/UI/mainwindow.py (MainWindow.__init__): New argument
223     interactor to pass through to the MapCanvas
224    
225     * Thuban/UI/application.py (ThubanApplication.OnInit): Use the new
226     argument to the MainWindow constructor to get rid of the ugly hack
227     that made main.app available early just so that the mapcanvas
228     could access the interactor object.
229    
230 bh 19 2001-09-04 Bernhard Herzog <[email protected]>
231    
232 bh 22 * Thuban/UI/mainwindow.py (MainWindow.RunMessageBox): New method
233     that runs a modal message box
234     (MainWindow.OnClose): Use the new method
235     (MainWindow.RemoveLayer): Just do nothing in case no layer is
236     selected. The command should be grayed out anyway, so there's no
237     need to pop up a message box.
238     (MainWindow.AddLayer): Pop up a message box with an error message
239     if the shape file can't be opened
240    
241     * Thuban/Model/layer.py (Layer.__init__): Open the shapefile
242     immediately. This will cause an exception in case the file can't
243     be opened and we can display an appropriate message.
244    
245 bh 19 * MANIFEST.in: Add extensions/pyprojection/LICENSE
246    
247     * setup.py (thuban_bdist_rpm): New class implementing a Thuban
248     specific bdist_rpm command.
249    
250     * Thuban/UI/main.py: Catch ImportError exceptions when importing
251     the locale module because it may not be available on some
252     installations.
253    
254     * extensions/pyprojection/LICENSE: Copy of the license text in
255     Projection.i. Having it in a separate file makes it easier to
256     refer to license text in e.g. RPMs
257    
258 bh 18 2001-09-03 Bernhard Herzog <[email protected]>
259    
260 bh 19 * setup.py: use wx-config instead of wxgtk-config because it's
261     more generic
262    
263     * setup.py (ThubanInstall.get_outputs): Add the symlink in
264     <prefix>/bin to the outputs
265     (ThubanInstall.link_file): New method to link files. We need this
266     because the standard copy_files refuses to link non-existing
267     files.
268     (ThubanInstall.run): Remove the leading install root from the
269     script filename if an install root was specified and use the new
270     link_file method
271    
272 bh 18 * Thuban/UI/mainwindow.py (MainWindow.AddLayer): Fit the map to
273     the window when the first layer is added to the map.
274    
275     * setup.py (ThubanInstall.run): Honor the build root (self.root)
276     when linking thuban.py to <prefix>/bin
277    
278 bh 16 2001-08-31 Bernhard Herzog <[email protected]>
279    
280     * setup.py: In the setup call, the install parameters shouldn't
281     have trailing slashes because distutils on non-posix platforms
282     doesn't like that. The same applies to other directories like
283     "Resources/Bitmaps"
284    
285     In the configuration section for nt, move the wxWindows directory
286     optins into the part clearly marked as editable.
287    
288     (InstallLocal.initialize_options):
289     (InstallLocal.user_options): remove the currently unused debug
290     flag
291     (thuban_build_py.find_all_modules): Add this method so that it
292     works for our case of having packages and modules in one
293     distribution as well.
294     (ThubanInstall.initialize_options):
295     (ThubanInstall.finalize_options):
296     (ThubanInstall.user_options):
297     (ThubanInstall.boolean_options): Add new options, do-symlink and
298     extra files. Since these are the first ThubanInstall specific
299     options, override user_options and boolean_options
300     (ThubanInstall.run): Honor the new do-symlink and extra-files
301     options.
302     (ThubanInstall.get_outputs): Add to override the base-class's
303     version and add the extra-files to the outputs
304     (bdist_inno): New class for windows distributions with Inno Setup
305     (InnoIconItem): Helper class for bdist_inno
306     (thuban_bdist_inno): Thuban specific version of bdist_inno. Added
307     this together with the appropriate parameters, to the setup call.
308    
309     * setup.cfg (bdist_inno): added new section for the inno setup
310     installer
311    
312     * Thuban/UI/tree.py (myTreeCtrlPanel.__init__): New inst var
313     changing_selection to avoid recursive selection events when
314     modifying the selection in response to a selection event.
315     (myTreeCtrlPanel.normalize_selection): Set the new inst var when
316     changing the tree's selection.
317     (myTreeCtrlPanel.OnSelChanged): Only normalize the selection when
318     we're not being called indirectly from normalize_selection.
319    
320     * Thuban/UI/mainwindow.py (MainWindow.update_command_ui): Call
321     event.Check only if the command is actuall checkable.
322     (MainWindow.__init__): Call the toolbar's Realize method to make
323     sure that the items are actually shown
324    
325 bh 7 2001-08-28 Bernhard Herzog <[email protected]>
326    
327 bh 9 * setup.py: Fix some doc strings
328    
329 bh 7 * ChangeLog: started
330    

Properties

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

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26