1 |
|
2003-07-29 Jonathan Coles <[email protected]> |
2 |
|
|
3 |
|
* Thuban/UI/application.py (ThubanApplication.OnInit): set the |
4 |
|
python exception hook here so that we are sure to catch any |
5 |
|
Thuban exception that happen during initialization. |
6 |
|
|
7 |
|
* Thuban/UI/main.py (main): Don't set the exception hook here, |
8 |
|
it will get set in ThubanApplication.OnInit. |
9 |
|
|
10 |
|
2003-07-29 Jonathan Coles <[email protected]> |
11 |
|
|
12 |
|
* Thuban/UI/application.py (ThubanApplication.ShowExceptionDialog): |
13 |
|
Removed and called it show_exception_dialog() so that the exception |
14 |
|
handler can be set before the class is created. |
15 |
|
|
16 |
|
* Thuban/UI/main.py (main): Install the exception handler before |
17 |
|
a ThubanApplication is created. |
18 |
|
|
19 |
|
2003-07-29 Bernhard Herzog <[email protected]> |
20 |
|
|
21 |
|
* po/it.po: New. Italian translation by Maurizio Napolitano |
22 |
|
|
23 |
|
* po/ru.po: New. Russian translation by Alex Shevlakov |
24 |
|
|
25 |
|
2003-07-29 Frank Koormann <[email protected]> |
26 |
|
|
27 |
|
* Doc/manual/thuban-manual.xml: gaspell-checked. |
28 |
|
|
29 |
|
2003-07-29 Jonathan Coles <[email protected]> |
30 |
|
|
31 |
|
* Doc/manual/images/3_5_legend.png: Added border to improve look |
32 |
|
on white background. |
33 |
|
|
34 |
|
2003-07-29 Jonathan Coles <[email protected]> |
35 |
|
|
36 |
|
* Doc/manual/thuban-manual.xml: Fixed grammar and typos. Added |
37 |
|
descriptions for the legend toolbar. |
38 |
|
|
39 |
|
* Doc/manual/images/4_2_raster_layer_properties.png: Removed |
40 |
|
cursor from dialog box. |
41 |
|
|
42 |
|
2003-07-28 Jonathan Coles <[email protected]> |
43 |
|
|
44 |
|
* Doc/manual/thuban-manual.xml: More screenshots and more chapters. |
45 |
|
|
46 |
|
* Doc/manual/images/2_4_session_tree.png, |
47 |
|
Doc/manual/images/3_5_legend.png, Doc/manual/images/3_rename_map.png, |
48 |
|
Doc/manual/images/4_2_layer_properties.png, |
49 |
|
Doc/manual/images/4_2_raster_layer_properties.png, |
50 |
|
Doc/manual/images/5_3_genclass.png, |
51 |
|
Doc/manual/images/5_classification.png, |
52 |
|
Doc/manual/images/6_projection.png, |
53 |
|
Doc/manual/images/7_1_table_view.png, |
54 |
|
Doc/manual/images/7_2_5_join.png: New screenshots. |
55 |
|
|
56 |
|
2003-07-24 Jonathan Coles <[email protected]> |
57 |
|
|
58 |
|
* Doc/manual/thuban-manual.xml: Chapter on Projection Management. |
59 |
|
|
60 |
|
2003-07-24 Jonathan Coles <[email protected]> |
61 |
|
|
62 |
|
* Doc/manual/thuban-manual.xml: Added EPS images and wrote |
63 |
|
chapter on Layer Management. |
64 |
|
|
65 |
|
* Doc/manual/Makefile: New. Makefile to generate all formats for the |
66 |
|
manual and images. |
67 |
|
|
68 |
|
2003-07-24 Bernhard Herzog <[email protected]> |
69 |
|
|
70 |
|
* Thuban/Model/range.py, Thuban/version.py: Remove the #! line as |
71 |
|
it annoys lintian which warns about these files not being |
72 |
|
executable. The #1 isn't necessary here since if you absolutely |
73 |
|
must execute them you can always say "python <filename>". |
74 |
|
|
75 |
|
* Thuban/UI/renderer.py (ScreenRenderer.draw_shape_layer): Remove |
76 |
|
superfluous code to set brush and pen for point shapes |
77 |
|
|
78 |
|
* Thuban/UI/viewport.py: Remove commented out code that wouldn't |
79 |
|
belong in viewport anyway |
80 |
|
|
81 |
|
2003-07-24 Frank Koormann <[email protected]> |
82 |
|
|
83 |
|
* Doc/manual/thuban-manual.xml: Added section on table management. |
84 |
|
|
85 |
|
2003-07-24 Bernhard Herzog <[email protected]> |
86 |
|
|
87 |
|
* test/runtests.py (main): Recognize the long "verbose" option |
88 |
|
correctly. |
89 |
|
|
90 |
|
2003-07-22 Jonathan Coles <[email protected]> |
91 |
|
|
92 |
|
* Doc/manual/thuban-manual.xml: Continue to write first revision |
93 |
|
of the manual. |
94 |
|
|
95 |
|
* Thuban/UI/renderer.py (MapRenderer.render_map): Wrap method |
96 |
|
with Begin/EndDrawing() calls to ensure we aren't doing to |
97 |
|
many updates to the dc during rendering. |
98 |
|
(ScreenRenderer.draw_shape_layer): self.draw_point_shape takes |
99 |
|
a pen and brush argument so they need to be passed to the function. |
100 |
|
|
101 |
|
* Thuban/UI/viewport.py (ViewPort.calc_min_max_scales): New. |
102 |
|
Calculates the minimum and maximum scale values. Factored out |
103 |
|
of set_view_transform so that it could be used to zoom all the |
104 |
|
way into a single point. |
105 |
|
(ViewPort.set_view_transform): Call calc_min_max_scales(). |
106 |
|
(ViewPort.FitSelectedToWindow): Zoom to the maximum scale |
107 |
|
if only a single point is selected. |
108 |
|
|
109 |
|
* Doc/manual/images/1_2_legend_close.png, |
110 |
|
Doc/manual/images/1_2_legend_dock.png, |
111 |
|
Doc/manual/images/1_2_mainwindow.png, |
112 |
|
Doc/manual/images/1_2_mainwindow.ps, |
113 |
|
Doc/manual/images/1_2_mainwindow.sk, |
114 |
|
Doc/manual/images/3_2_fullextent.png, |
115 |
|
Doc/manual/images/3_2_fulllayerextent.png, |
116 |
|
Doc/manual/images/3_2_fullshapeextent.png, |
117 |
|
Doc/manual/images/3_2_pan.png, |
118 |
|
Doc/manual/images/3_2_zoomin.png, |
119 |
|
Doc/manual/images/3_2_zoomout.png, |
120 |
|
Doc/manual/images/3_3_identify.png, |
121 |
|
Doc/manual/images/3_3_label.png, |
122 |
|
Doc/manual/images/3_5_invisible.png, |
123 |
|
Doc/manual/images/3_5_movedown.png, |
124 |
|
Doc/manual/images/3_5_moveup.png, |
125 |
|
Doc/manual/images/3_5_props.png, |
126 |
|
Doc/manual/images/3_5_tobottom.png, |
127 |
|
Doc/manual/images/3_5_totop.png, |
128 |
|
Doc/manual/images/3_5_visible.png: New. Images for the documentation. |
129 |
|
|
130 |
|
2003-07-18 Bernhard Herzog <[email protected]> |
131 |
|
|
132 |
|
* Thuban/UI/messages.py (MAP_REPLACED): New message. |
133 |
|
|
134 |
|
* Thuban/UI/viewport.py (ViewPort.SetMap): Issue MAP_REPLACED |
135 |
|
after the new map has been assigned |
136 |
|
|
137 |
|
* Thuban/UI/mainwindow.py (MainWindow.delegated_messages): |
138 |
|
Delegate MAP_REPLACED to the canvas too |
139 |
|
(MainWindow.prepare_new_session): Removed. Thanks to the new |
140 |
|
MAP_REPLACED message it's no longer needed |
141 |
|
(MainWindow.OpenSession, MainWindow.NewSession): |
142 |
|
prepare_new_session has been removed. |
143 |
|
|
144 |
|
* Thuban/UI/classifier.py (Classifier.__init__): Subscribe to |
145 |
|
MAP_REPLACED so that we can close the dialog if a new map is set. |
146 |
|
(Classifier.unsubscribe_messages): Unsubscribe from MAP_REPLACED |
147 |
|
(Classifier.map_replaced): Handle MAP_REPLACED by closing the |
148 |
|
dialog |
149 |
|
|
150 |
|
* test/test_viewport.py (SimpleViewPortTest) |
151 |
|
(SimpleViewPortTest.test_default_size): Add doc-strings |
152 |
|
(ViewPortTest.setUp): Bind map to self.map so we can use it in |
153 |
|
tests. Subscribe to MAP_REPLACED messages too. |
154 |
|
(ViewPortTest.tearDown): No need to explicitly unsubscribe |
155 |
|
(ViewPortTest.test_set_map): New test for the SetMap method. |
156 |
|
|
157 |
|
2003-07-18 Bernhard Herzog <[email protected]> |
158 |
|
|
159 |
|
* test/test_viewport.py (SimpleViewPortTest.test_default_size): |
160 |
|
Move this test from ViewPortTest.setUp to this new separate test |
161 |
|
case. setUp is not the place for the actual tests. |
162 |
|
(ViewPortTest.test_inital_settings, ViewPortTest.setUp): Move some |
163 |
|
more of the test from setUp to the new test test_inital_settings. |
164 |
|
(ViewPortTest.test_win_to_proj, ViewPortTest.test_proj_to_win) |
165 |
|
(ViewPortTest.test_proj_conv): Split test_proj_conv into |
166 |
|
test_win_to_proj and test_proj_to_win and make the tests easier to |
167 |
|
understand |
168 |
|
(ViewPortTest.testFitRectToWindow, ViewPortTest.testZoomFactor) |
169 |
|
(ViewPortTest.testZoomOutToRect, ViewPortTest.testTranslate) |
170 |
|
(ViewPortTest.test_unprojected_rect_around_point) |
171 |
|
(ViewPortTest.test_find_shape_at, ViewPortTest.testTools): |
172 |
|
Reformat to increase readability. |
173 |
|
|
174 |
|
2003-07-18 Bernhard Herzog <[email protected]> |
175 |
|
|
176 |
|
* Thuban/UI/view.py (MapCanvas.OnLeftDown): Capture the mouse. |
177 |
|
|
178 |
|
2003-07-18 Bernhard Herzog <[email protected]> |
179 |
|
|
180 |
|
* test/runtests.py: The test suite can now be run without an X |
181 |
|
connection. To make sure this remains true, remove the DISPLAY |
182 |
|
environment variable so that an error occurs if the wxGTK is |
183 |
|
imported accidentally |
184 |
|
|
185 |
|
2003-07-18 Bernhard Herzog <[email protected]> |
186 |
|
|
187 |
|
* Thuban/UI/viewport.py: Remove unused imports |
188 |
|
|
189 |
|
* Thuban/UI/view.py: Remove unused imports |
190 |
|
|
191 |
|
2003-07-18 Bernhard Herzog <[email protected]> |
192 |
|
|
193 |
|
* test/test_export.py Remove unused imports. The OutputTransform |
194 |
|
function is now in viewport.py and is called output_transform |
195 |
|
(TestScalebar.test_output_transform) |
196 |
|
(TestScalebar.test_OutputTransform): Renamed to |
197 |
|
test_output_transform and updated to use output_transform instead |
198 |
|
of OutputTransform |
199 |
|
|
200 |
|
* Thuban/UI/view.py (OutputTransform): Moved to viewport.py and |
201 |
|
renamed. |
202 |
|
(MapCanvas.Export, MapPrintout.draw_on_dc): OutputTransform was |
203 |
|
renamed to output_transform |
204 |
|
|
205 |
|
* Thuban/UI/viewport.py (OutputTransform, output_transform): |
206 |
|
Rename to output_transform |
207 |
|
|
208 |
|
2003-07-18 Bernhard Herzog <[email protected]> |
209 |
|
|
210 |
|
* Thuban/Model/layer.py (Layer.__init__): Rename |
211 |
|
classificationField to classificatin_column and init it here so |
212 |
|
that it can be used in SetClassificationColumn |
213 |
|
(Layer.GetClassificationColumn, Layer.GetClassificationField): |
214 |
|
Rename to GetClassificationColumn. |
215 |
|
(Layer.SetClassificationColumn, Layer.SetClassificationField): |
216 |
|
Rename to SetClassificationColumn and issue a LAYER_CHANGED |
217 |
|
message if the column changes. |
218 |
|
(Layer._classification_changed, Layer.ClassChanged): Rename to |
219 |
|
_classification_changed. Update the callers. |
220 |
|
(Layer.SetShapeStore): Further field->column renames. |
221 |
|
|
222 |
|
* Thuban/Model/load.py (SessionLoader.start_classification) |
223 |
|
(SessionLoader.start_clpoint): Updates because of |
224 |
|
field->column method name changes in the Layer class |
225 |
|
|
226 |
|
* Thuban/Model/save.py (SessionSaver.write_classification): Updates |
227 |
|
because of field->column method name changes in the Layer class |
228 |
|
|
229 |
|
* Thuban/UI/classifier.py (Classifier.__init__) |
230 |
|
(Classifier._OnTry, Classifier._OnRevert): Updates because of |
231 |
|
field->column method name changes in the Layer class |
232 |
|
|
233 |
|
* Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Updates |
234 |
|
because of field->column method name changes in the Layer class |
235 |
|
|
236 |
|
* Thuban/UI/viewport.py (ViewPort.find_shape_at): Updates because |
237 |
|
of field->column method name changes in the Layer class |
238 |
|
|
239 |
|
* test/test_save.py (SaveSessionTest.testClassifiedLayer) |
240 |
|
(SaveSessionTest.testClassifiedLayer): Update because of |
241 |
|
field->column method name changes in the Layer class |
242 |
|
|
243 |
|
* test/test_layer.py (SetShapeStoreTests.setUp) |
244 |
|
(SetShapeStoreTests.test_sanity): Update because of field->column |
245 |
|
method name changes in the Layer class |
246 |
|
(TestLayerModification.setUp): Subscribe to LAYER_CHANGED as well |
247 |
|
(TestLayerModification.test_sanity) |
248 |
|
(TestLayerModification.test_initial_settings): remove unsued code |
249 |
|
and rename to test_sanity. |
250 |
|
(TestLayerModification.test_set_classification): New test for |
251 |
|
SetClassification and SetClassificationField. |
252 |
|
|
253 |
2003-07-18 Bernhard Herzog <[email protected]> |
2003-07-18 Bernhard Herzog <[email protected]> |
254 |
|
|
255 |
* test/test_classgen.py (TestFixedRamp.test): Extend test to check |
* test/test_classgen.py (TestFixedRamp.test): Extend test to check |