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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 70 - (hide annotations)
Thu Oct 18 14:52:30 2001 UTC (23 years, 4 months ago) by bh
Original Path: trunk/thuban/ChangeLog
File size: 12511 byte(s)
update ChangeLog

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

Properties

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

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26