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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 71 - (show annotations)
Mon Jan 14 15:10:29 2002 UTC (23 years, 1 month ago) by bh
Original Path: trunk/thuban/ChangeLog
File size: 12619 byte(s)
Fix some typos

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

Properties

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

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26