/[thuban]/trunk
ViewVC logotype

Log of /trunk

View Directory Listing Directory Listing


Sticky Revision:

Revision 1494 - Directory Listing
Modified Tue Jul 29 09:14:50 2003 UTC (21 years, 7 months ago) by jonathan
Added border to improve look on white background.


Revision 1493 - Directory Listing
Modified Tue Jul 29 08:26:22 2003 UTC (21 years, 7 months ago) by jonathan
updated ChangeLog


Revision 1492 - Directory Listing
Modified Tue Jul 29 08:26:11 2003 UTC (21 years, 7 months ago) by jonathan
Removed cursor from dialog box.


Revision 1491 - Directory Listing
Modified Tue Jul 29 08:25:59 2003 UTC (21 years, 7 months ago) by jonathan
Fixed grammar and typos. Added descriptions for the legend toolbar.


Revision 1490 - Directory Listing
Modified Mon Jul 28 12:59:47 2003 UTC (21 years, 7 months ago) by jonathan
More screenshots and more chapters.


Revision 1489 - Directory Listing
Modified Mon Jul 28 12:59:25 2003 UTC (21 years, 7 months ago) by jonathan
New screenshots.


Revision 1483 - Directory Listing
Modified Thu Jul 24 17:53:21 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1482 - Directory Listing
Modified Thu Jul 24 17:53:04 2003 UTC (21 years, 7 months ago) by bh
Remove commented out code that wouldn't
belong in viewport anyway


Revision 1481 - Directory Listing
Modified Thu Jul 24 17:52:59 2003 UTC (21 years, 7 months ago) by bh
(ScreenRenderer.draw_shape_layer): Remove
superfluous code to set brush and pen for point shapes


Revision 1480 - Directory Listing
Modified Thu Jul 24 17:52:48 2003 UTC (21 years, 7 months ago) by bh
Remove the #! line as
it annoys lintian which warns about these files not being
executable. The #1 isn't necessary here since if you absolutely
must execute them you can always say "python <filename>".


Revision 1479 - Directory Listing
Modified Thu Jul 24 17:01:43 2003 UTC (21 years, 7 months ago) by frank
Documentation Update


Revision 1478 - Directory Listing
Modified Thu Jul 24 17:00:25 2003 UTC (21 years, 7 months ago) by frank
Added section on table management.


Revision 1477 - Directory Listing
Modified Thu Jul 24 15:16:29 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1476 - Directory Listing
Modified Thu Jul 24 15:16:15 2003 UTC (21 years, 7 months ago) by bh
(main): Recognize the long "verbose" option
correctly.


Revision 1475 - Directory Listing
Modified Thu Jul 24 11:19:51 2003 UTC (21 years, 7 months ago) by jonathan
Chapter on Projection Management.


Revision 1474 - Directory Listing
Modified Thu Jul 24 09:05:44 2003 UTC (21 years, 7 months ago) by jonathan
New. Makefile to generate all formats for the manual and images.


Revision 1473 - Directory Listing
Modified Thu Jul 24 09:05:11 2003 UTC (21 years, 7 months ago) by jonathan
Added EPS images and wrote chapter on Layer Management.


Revision 1470 - Directory Listing
Modified Tue Jul 22 14:04:49 2003 UTC (21 years, 7 months ago) by jonathan
updated ChangeLog


Revision 1469 - Directory Listing
Modified Tue Jul 22 14:04:36 2003 UTC (21 years, 7 months ago) by jonathan
New. Images for the documentation.


Revision 1468 - Directory Listing
Modified Tue Jul 22 14:03:14 2003 UTC (21 years, 7 months ago) by jonathan
(ViewPort.calc_min_max_scales): New.
        Calculates the minimum and maximum scale values. Factored out
        of set_view_transform so that it could be used to zoom all the
        way into a single point.
(ViewPort.set_view_transform): Call calc_min_max_scales().
(ViewPort.FitSelectedToWindow): Zoom to the maximum scale
        if only a single point is selected.


Revision 1467 - Directory Listing
Modified Tue Jul 22 14:02:57 2003 UTC (21 years, 7 months ago) by jonathan
(MapRenderer.render_map): Wrap method
        with Begin/EndDrawing() calls to ensure we aren't doing to
        many updates to the dc during rendering.
(ScreenRenderer.draw_shape_layer): self.draw_point_shape takes
        a pen and brush argument so they need to be passed to the function.


Revision 1466 - Directory Listing
Modified Tue Jul 22 14:02:39 2003 UTC (21 years, 7 months ago) by jonathan
Continue to write first revision of the manual.


Revision 1465 - Directory Listing
Modified Fri Jul 18 18:21:07 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1464 - Directory Listing
Modified Fri Jul 18 18:20:40 2003 UTC (21 years, 7 months ago) by bh
* Thuban/UI/messages.py (MAP_REPLACED): New message.

* Thuban/UI/viewport.py (ViewPort.SetMap): Issue MAP_REPLACED
after the new map has been assigned

* Thuban/UI/mainwindow.py (MainWindow.delegated_messages):
Delegate MAP_REPLACED to the canvas too
(MainWindow.prepare_new_session): Removed. Thanks to the new
MAP_REPLACED message it's no longer needed
(MainWindow.OpenSession, MainWindow.NewSession):
prepare_new_session has been removed.

* Thuban/UI/classifier.py (Classifier.__init__): Subscribe to
MAP_REPLACED so that we can close the dialog if a new map is set.
(Classifier.unsubscribe_messages): Unsubscribe from MAP_REPLACED
(Classifier.map_replaced): Handle MAP_REPLACED by closing the
dialog

* test/test_viewport.py (SimpleViewPortTest)
(SimpleViewPortTest.test_default_size): Add doc-strings
(ViewPortTest.setUp): Bind map to self.map so we can use it in
tests. Subscribe to MAP_REPLACED messages too.
(ViewPortTest.tearDown): No need to explicitly unsubscribe
(ViewPortTest.test_set_map): New test for the SetMap method.


Revision 1463 - Directory Listing
Modified Fri Jul 18 15:33:58 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1462 - Directory Listing
Modified Fri Jul 18 15:33:35 2003 UTC (21 years, 7 months ago) by bh
(SimpleViewPortTest.test_default_size):
Move this test from ViewPortTest.setUp to this new separate test
case. setUp is not the place for the actual tests.
(ViewPortTest.test_inital_settings, ViewPortTest.setUp): Move some
more of the test from setUp to the new test test_inital_settings.
(ViewPortTest.test_win_to_proj, ViewPortTest.test_proj_to_win)
(ViewPortTest.test_proj_conv): Split test_proj_conv into
test_win_to_proj and test_proj_to_win and make the tests easier to
understand
(ViewPortTest.testFitRectToWindow, ViewPortTest.testZoomFactor)
(ViewPortTest.testZoomOutToRect, ViewPortTest.testTranslate)
(ViewPortTest.test_unprojected_rect_around_point)
(ViewPortTest.test_find_shape_at, ViewPortTest.testTools):
Reformat to increase readability.


Revision 1461 - Directory Listing
Modified Fri Jul 18 15:23:52 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1460 - Directory Listing
Modified Fri Jul 18 15:23:48 2003 UTC (21 years, 7 months ago) by bh
(MapCanvas.OnLeftDown): Capture the mouse.


Revision 1459 - Directory Listing
Modified Fri Jul 18 15:09:32 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1458 - Directory Listing
Modified Fri Jul 18 15:09:22 2003 UTC (21 years, 7 months ago) by bh
The test suite can now be run without an X
connection. To make sure this remains true, remove the DISPLAY
environment variable so that an error occurs if the wxGTK is
imported accidentally


Revision 1457 - Directory Listing
Modified Fri Jul 18 14:56:29 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1456 - Directory Listing
Modified Fri Jul 18 14:56:13 2003 UTC (21 years, 7 months ago) by bh
* Thuban/UI/viewport.py: Remove unused imports

* Thuban/UI/view.py: Remove unused imports


Revision 1455 - Directory Listing
Modified Fri Jul 18 14:41:18 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1454 - Directory Listing
Modified Fri Jul 18 14:41:04 2003 UTC (21 years, 7 months ago) by bh
* test/test_export.py Remove unused imports. The OutputTransform
function is now in viewport.py and is called output_transform
(TestScalebar.test_output_transform)
(TestScalebar.test_OutputTransform): Renamed to
test_output_transform and updated to use output_transform instead
of OutputTransform

* Thuban/UI/view.py (OutputTransform): Moved to viewport.py and
renamed.
(MapCanvas.Export, MapPrintout.draw_on_dc): OutputTransform was
renamed to output_transform

* Thuban/UI/viewport.py (OutputTransform, output_transform):
Rename to output_transform


Revision 1453 - Directory Listing
Modified Fri Jul 18 12:58:11 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1452 - Directory Listing
Modified Fri Jul 18 12:57:59 2003 UTC (21 years, 7 months ago) by bh
* Thuban/Model/layer.py (Layer.__init__): Rename
classificationField to classificatin_column and init it here so
that it can be used in SetClassificationColumn
(Layer.GetClassificationColumn, Layer.GetClassificationField):
Rename to GetClassificationColumn.
(Layer.SetClassificationColumn, Layer.SetClassificationField):
Rename to SetClassificationColumn and issue a LAYER_CHANGED
message if the column changes.
(Layer._classification_changed, Layer.ClassChanged): Rename to
_classification_changed. Update the callers.
(Layer.SetShapeStore): Further field->column renames.

* Thuban/Model/load.py (SessionLoader.start_classification)
(SessionLoader.start_clpoint): Updates because of
field->column method name changes in the Layer class

* Thuban/Model/save.py (SessionSaver.write_classification): Updates
because of field->column method name changes in the Layer class

* Thuban/UI/classifier.py (Classifier.__init__)
(Classifier._OnTry, Classifier._OnRevert): Updates because of
field->column method name changes in the Layer class

* Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Updates
because of field->column method name changes in the Layer class

* Thuban/UI/viewport.py (ViewPort.find_shape_at): Updates because
of field->column method name changes in the Layer class

* test/test_save.py (SaveSessionTest.testClassifiedLayer)
(SaveSessionTest.testClassifiedLayer): Update because of
field->column method name changes in the Layer class

* test/test_layer.py (SetShapeStoreTests.setUp)
(SetShapeStoreTests.test_sanity): Update because of field->column
method name changes in the Layer class
(TestLayerModification.setUp): Subscribe to LAYER_CHANGED as well
(TestLayerModification.test_sanity)
(TestLayerModification.test_initial_settings): remove unsued code
and rename to test_sanity.
(TestLayerModification.test_set_classification): New test for
SetClassification and SetClassificationField.


Revision 1451 - Directory Listing
Modified Fri Jul 18 10:19:19 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1450 - Directory Listing
Modified Fri Jul 18 10:18:56 2003 UTC (21 years, 7 months ago) by bh
(TestFixedRamp.test): Extend test to check
the non-fixed values as well. The old test would have accepted
a fixed ramp that only returnes the fixed properties


Revision 1449 - Directory Listing
Modified Thu Jul 17 14:59:59 2003 UTC (21 years, 7 months ago) by jonathan
updated ChangeLog


Revision 1448 - Directory Listing
Modified Thu Jul 17 14:59:41 2003 UTC (21 years, 7 months ago) by jonathan
(MainWindow.ToggleLegend): Don't
        fit the map to the window as this changes any zoom level that
        the user may have set.


Revision 1447 - Directory Listing
Modified Thu Jul 17 14:59:29 2003 UTC (21 years, 7 months ago) by jonathan
(Classifier.__BuildClassification):
        Return both the new class and the field name.


Revision 1446 - Directory Listing
Modified Thu Jul 17 14:59:17 2003 UTC (21 years, 7 months ago) by jonathan
Wrote an initial Introduction.


Revision 1445 - Directory Listing
Modified Thu Jul 17 14:58:57 2003 UTC (21 years, 7 months ago) by jonathan
Screen shots for the manual. The XCF file is the source image and
        has additional layers to support changes.


Revision 1442 - Directory Listing
Modified Wed Jul 16 13:31:05 2003 UTC (21 years, 7 months ago) by jonathan
updated ChangeLog


Revision 1441 - Directory Listing
Modified Wed Jul 16 13:26:57 2003 UTC (21 years, 7 months ago) by jonathan
Renamed to test_viewport.py


Revision 1440 - Directory Listing
Modified Wed Jul 16 13:25:56 2003 UTC (21 years, 7 months ago) by jonathan
Renamed from test/test_view.py.


Revision 1439 - Directory Listing
Modified Wed Jul 16 13:25:42 2003 UTC (21 years, 7 months ago) by jonathan
(SaveSessionTest.testClassifiedLayer): Use
        SetClassificationField on layer to set class field info.


Revision 1438 - Directory Listing
Modified Wed Jul 16 13:25:30 2003 UTC (21 years, 7 months ago) by jonathan
(SetShapeStoreTests.setUp): Classification
        __init__ no longer has a field parameter, use SetClassificationField.
(SetShapeStoreTests.test_sanity): Use layer object to get class field info.


Revision 1437 - Directory Listing
Modified Wed Jul 16 13:25:16 2003 UTC (21 years, 7 months ago) by jonathan
(TestClassification.test_classification): Remove tests for methods
        that no longer exist.


Revision 1436 - Directory Listing
Modified Wed Jul 16 13:25:04 2003 UTC (21 years, 7 months ago) by jonathan
(TestFixedRamp): Test for the FixedRamp class.


Revision 1435 - Directory Listing
Modified Wed Jul 16 13:24:52 2003 UTC (21 years, 7 months ago) by jonathan
(ViewPort.find_shape_at): Get the classification field from layer.


Revision 1434 - Directory Listing
Modified Wed Jul 16 13:24:39 2003 UTC (21 years, 7 months ago) by jonathan
(MapRenderer.draw_shape_layer): Get the classification field from layer.


Revision 1433 - Directory Listing
Modified Wed Jul 16 13:24:25 2003 UTC (21 years, 7 months ago) by jonathan
(ClassGrid.CreateTable): Add fieldType parameter.
(ClassTable.Reset): Add fieldType parameter and use it, rather
        than asking the classification.
(Classifier.__init__): Remember the original class's field
        and ask the layer for the field type, rather than the classification.
(Classifier.__SetGridTable): Retrieve the field and field type
        for the table because they are not in the classification.
(Classifier._OnTry, Classifier._OnRevert): Set the classification
        field on the layer in addition to the classification itself.


Revision 1432 - Directory Listing
Modified Wed Jul 16 13:24:03 2003 UTC (21 years, 7 months ago) by jonathan
(ClassGenDialog.OnOK): Use a fixed
        ramp when we need to fix certain values of a ramp rather than
        using the old fixes parameter.


Revision 1431 - Directory Listing
Modified Wed Jul 16 13:23:41 2003 UTC (21 years, 7 months ago) by jonathan
(table_to_dbf, table_to_csv): Renamed
        parameter records to rows and add docstring.


Revision 1430 - Directory Listing
Modified Wed Jul 16 13:23:28 2003 UTC (21 years, 7 months ago) by jonathan
(SessionSaver.write_classification): Get the field name and type from the layer.


Revision 1429 - Directory Listing
Modified Wed Jul 16 13:23:14 2003 UTC (21 years, 7 months ago) by jonathan
Add CLASS_CHANGED for when a classification is modified.


Revision 1428 - Directory Listing
Modified Wed Jul 16 13:23:01 2003 UTC (21 years, 7 months ago) by jonathan
(SessionLoader.start_classification):
        Set the field name on the layer, not the classification.


Revision 1427 - Directory Listing
Modified Wed Jul 16 13:22:48 2003 UTC (21 years, 7 months ago) by jonathan
(Layer.Destroy): Unsubscribe from the classification.
(Layer.SetShapeStore): Reset the classification first while
        we still have the old shape store to work with.
(Layer.GetClassificationField, Layer.SetClassificationField):
        New. Method for getting/setting the field to classify on.
(Layer.SetClassification): Simplified now that the layer
        simply has to hold a reference to the classification and not
        tell the classification who owns it.


Revision 1426 - Directory Listing
Modified Wed Jul 16 13:22:20 2003 UTC (21 years, 7 months ago) by jonathan
Use new CLASS_CHANGED message.
(Classification): Inherit from Publisher.
(Classification.__init__): Remove the layer parameter.
        Classifications no longer need to have a parent layer.
(Classification.GetField, Classification.GetFieldType,
        Classification.SetFieldInfo): Removed. The field name is stored
        in the layer, and the type can be retreived by calling
        Layer.GetFieldType().
(Classification._set_layer, Classification.GetLayer): Removed.
        Classifications no longer have a parent layer.


Revision 1425 - Directory Listing
Modified Wed Jul 16 13:21:59 2003 UTC (21 years, 7 months ago) by jonathan
(generate_singletons,
        generate_uniform_distribution, generate_quantiles): Remove
        fixes parameter, but maintain the same functionality by having
        the calling function pass a FixedRamp object for the ramp.
(FixedRamp): New. Adapts a ramp to have fixed property values.


Revision 1424 - Directory Listing
Modified Wed Jul 16 09:52:49 2003 UTC (21 years, 7 months ago) by jan
structure for manual


Revision 1423 - Directory Listing
Modified Wed Jul 16 09:52:30 2003 UTC (21 years, 7 months ago) by jan
Added authors and an initial coarse structure.


Revision 1422 - Directory Listing
Modified Tue Jul 15 14:47:06 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1421 - Directory Listing
Modified Tue Jul 15 14:46:55 2003 UTC (21 years, 7 months ago) by bh
* test/support.py (FloatComparisonMixin): This is a mix-in class
and therefore should not be derived from any other class.

* test/test_range.py (RangeTest): FloatComparisonMixin is a
mix-in, so derive from TestCase as well.


Revision 1420 - Directory Listing
Modified Tue Jul 15 09:29:39 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1419 - Directory Listing
Modified Tue Jul 15 09:29:18 2003 UTC (21 years, 7 months ago) by bh
(MapRenderer.draw_shape_layer): Rework the
draw_func handling a bit to remove one layer of indirection. This
makes the renderer about 10% faster in the non-classifying case
and the code a bit cleaner
(MapRenderer.draw_point_shape): Add the pen and brush parameters
and set them in the dc. Now the draw_point_shape method and
wxproj's draw_polygon_shape function have basically the same
signature so that both can be directly used as draw_func


Revision 1418 - Directory Listing
Modified Tue Jul 15 08:44:20 2003 UTC (21 years, 7 months ago) by bh
update ChangeLog


Revision 1417 - Directory Listing
Modified Tue Jul 15 08:43:53 2003 UTC (21 years, 7 months ago) by bh
* Thuban/Model/save.py (SessionSaver.write_classification): Encode
string values (in addition to the labels) as UTF 8

* Thuban/Model/load.py (SessionLoader.start_clpoint): Decode the
values if the field type is string

* test/test_save.py (SaveSessionTest.testClassifiedLayer): Test
saving a session with non-ascii string classification values.

* test/test_load.py (TestClassification.file_contents)
(TestClassification.test): Check for non-ascii values in string
classifications


Revision 1416 - Directory Listing
Modified Mon Jul 14 15:16:57 2003 UTC (21 years, 7 months ago) by jonathan
updated ChangeLog


Revision 1415 - Directory Listing
Modified Mon Jul 14 15:14:55 2003 UTC (21 years, 7 months ago) by jonathan
New. Tests for ViewPort.


Revision 1411 - Directory Listing
Modified Mon Jul 14 10:09:35 2003 UTC (21 years, 7 months ago) by frank
Added test for #2013


Revision 1410 - Directory Listing
Modified Mon Jul 14 10:09:11 2003 UTC (21 years, 7 months ago) by frank
(TestUnicodeStrings): New, test load of unicode strings from session file:
	session title, map title and projection name.


Revision 1409 - Directory Listing
Modified Mon Jul 14 09:38:55 2003 UTC (21 years, 7 months ago) by frank
Bugfix #2013


Revision 1408 - Directory Listing
Modified Mon Jul 14 09:38:29 2003 UTC (21 years, 7 months ago) by frank
(SessionLoader.start_map): Encode map
	title to latin1.  Fixes https://intevation.de/rt/webrt?serial_num=2013


Revision 1406 - Directory Listing
Modified Thu Jul 10 16:50:08 2003 UTC (21 years, 7 months ago) by jonathan
updated ChangeLog


Revision 1405 - Directory Listing
Modified Thu Jul 10 16:49:57 2003 UTC (21 years, 7 months ago) by jonathan
(Tool.MouseUp): Should have called
    drag_stop, not drag_move when the mouse is released.


Revision 1404 - Directory Listing
Modified Thu Jul 10 16:31:07 2003 UTC (21 years, 7 months ago) by jonathan
Removed.


Revision 1403 - Directory Listing
Modified Thu Jul 10 14:56:46 2003 UTC (21 years, 7 months ago) by jonathan
updated ChangeLog


Revision 1402 - Directory Listing
Modified Thu Jul 10 14:56:38 2003 UTC (21 years, 7 months ago) by jonathan
(TableTest): Update tests to use non-deprecated functions.


Revision 1401 - Directory Listing
Modified Thu Jul 10 14:56:25 2003 UTC (21 years, 7 months ago) by jonathan
(TestSessionWithContent.test_forward_map_projection):
        MAP_PROJECTION_CHANGED events send the old projection.


Revision 1400 - Directory Listing
Modified Thu Jul 10 14:56:15 2003 UTC (21 years, 7 months ago) by jonathan
(TestMapWithContents.test_set_projection):
        MAP_PROJECTION_CHANGED events send the old projection.


Revision 1399 - Directory Listing
Modified Thu Jul 10 14:56:03 2003 UTC (21 years, 7 months ago) by jonathan
(TestTableToDBF.test_table_to_dbf): Add tests for saving selected records.


Revision 1398 - Directory Listing
Modified Thu Jul 10 14:55:49 2003 UTC (21 years, 7 months ago) by jonathan
(TestCSVTable.test_table_to_cvs): Add tests for saving selected records.


Revision 1397 - Directory Listing
Modified Thu Jul 10 14:55:37 2003 UTC (21 years, 7 months ago) by jonathan
(FloatComparisonMixin.assertFloatEqual): Take
        optional epsilon argument to specify floating point accuracy.
(FloatComparisonMixin.assertFloatSeqEqual): Call assertFloatEqual
        for each item test.


Revision 1396 - Directory Listing
Modified Thu Jul 10 14:55:22 2003 UTC (21 years, 7 months ago) by jonathan
(main): Only print "Unknown option" for unsupported options.


Revision 1395 - Directory Listing
Modified Thu Jul 10 14:55:11 2003 UTC (21 years, 7 months ago) by jonathan
(ProjectRasterFile): Make sure
        the function doesn't return NULL without first setting a Python
        Error.


Revision 1394 - Directory Listing
Modified Thu Jul 10 14:54:58 2003 UTC (21 years, 7 months ago) by jonathan
(QueryTableFrame.__init__): Add an
        Export Selection button and move the export buttons underneath
        the table.
(QueryTableFrame.UpdateStatusText): Added event argument so
        that it can respond to grid selection events. The status text
        is now updated even when the table is not associated with a
        layer as was previously assumed.
(QueryTableFrame.OnGridSelectRange, OnGridSelectCell): Removed.
        UpdateStatusText responds to these events.
(QueryTableFrame.OnSaveAs): Renamed to doExport.
(QueryTableFrame.doExport): Helper function that saves the
        entire table, or selected rows, to a file.
(QueryTableFrame.OnExport, QueryTableFrame.OnExportSel): New.
        Respond to export button events and call doExport.


Revision 1393 - Directory Listing
Modified Thu Jul 10 14:54:41 2003 UTC (21 years, 7 months ago) by jonathan
(MainWindow.ShowTableView): Raise
        the table window when it is selectd to be shown.


Revision 1392 - Directory Listing
Modified Thu Jul 10 14:54:16 2003 UTC (21 years, 7 months ago) by jonathan
(main): Set exception hook to the ShowExceptionDialog. Fixes RTbug #1993.


Revision 1391 - Directory Listing
Modified Thu Jul 10 14:54:02 2003 UTC (21 years, 7 months ago) by jonathan
(ClassGenDialog.__init__): Add controls
        to allow the user to fix line color/width on generated groups.
(ClassGenDialog.OnOK): Use new 'fixes' parameter of the generate_*
        functions to optionally fix group properties.


Revision 1390 - Directory Listing
Modified Thu Jul 10 14:53:38 2003 UTC (21 years, 7 months ago) by jonathan
(ThubanApplication.ShowExceptionDialog):
        Port exception dialog from GREAT-ER. Fixes RTbug #1993.


Revision 1389 - Directory Listing
Modified Thu Jul 10 14:53:27 2003 UTC (21 years, 7 months ago) by jonathan
(table_to_dbf, table_to_csv): Added 'records'
        parameter which is a list of records that restricts which
        records are saved. Fixes RTbug #1997.


Revision 1388 - Directory Listing
Modified Thu Jul 10 14:53:15 2003 UTC (21 years, 7 months ago) by jonathan
(Map.SetProjection): Send the old
        projection as an argument to listeners of the MAP_PROJECTION_CHANGED
        event.


Revision 1387 - Directory Listing
Modified Thu Jul 10 14:53:03 2003 UTC (21 years, 7 months ago) by jonathan
(generate_singletons,
        generate_uniform_distribution, generate_quantiles):
        Added 'fixes' parameter so that property attributes can
        be held constant over the generated classification groups.
(CustomRamp.GetProperties): Remove unused variables.


Revision 1386 - Directory Listing
Modified Thu Jul 10 14:52:48 2003 UTC (21 years, 7 months ago) by jonathan
New. Contains non-wx view functionality.  RTTbug #1992.


Revision 1385 - Directory Listing
Modified Thu Jul 10 14:52:39 2003 UTC (21 years, 7 months ago) by jonathan
Stripped out all non-wx functionality. Fixes RTTbug #1992.


Revision 1382 - Directory Listing
Modified Tue Jul 8 16:37:57 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1381 - Directory Listing
Modified Tue Jul 8 16:37:46 2003 UTC (21 years, 8 months ago) by bh
* Thuban/Model/transientdb.py (TransientTableBase.Width): The type
constants in the column objects are the standard ones defined in
the table module.

* test/test_transientdb.py
(TestTransientTable.test_transienttable_to_dbf): New. Test whether
exporting transient tables as DBF works. This should catch the bug
just fixed in TransientTableBase.Width.


Revision 1380 - Directory Listing
Modified Tue Jul 8 13:23:31 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1379 - Directory Listing
Modified Tue Jul 8 13:23:20 2003 UTC (21 years, 8 months ago) by bh
* Thuban/Model/classgen.py (CustomRamp.GetProperties): Compute the
interpolated colors correctly.

* test/test_classgen.py (TestCustomRamp.test_color_interpolation):
New. Test case for the fix in classgen.py


Revision 1378 - Directory Listing
Modified Tue Jul 8 10:54:22 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1377 - Directory Listing
Modified Tue Jul 8 10:54:16 2003 UTC (21 years, 8 months ago) by bh
(main): Make the default output less verbose
and add a verbosity option (-v) to get the old output


Revision 1376 - Directory Listing
Modified Tue Jul 8 10:53:26 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1375 - Directory Listing
Modified Tue Jul 8 10:53:05 2003 UTC (21 years, 8 months ago) by bh
* Resources/XML/thuban-0.9.dtd: New. This will become the DTD for
0.9.

* Thuban/Model/transientdb.py (TransientJoinedTable.JoinType):
New. Return the join type

* Thuban/Model/save.py (SessionSaver.write_session): Use new 0.9
DTD
(SessionSaver.write_data_containers): Save the join type for
joined tables

* Thuban/Model/load.py (SessionLoader.__init__): Add the new 0.9
namespace
(SessionLoader.start_jointable): Handle the jointype attribute

* test/test_load_0_8.py: New. Effectively a copy of test_load.py
as of Thuban 0.8. These are now tests to determine whether Thuban
can still read files generated by Thuban 0.8

* test/test_load.py (LoadSessionTest.dtd)
(TestSingleLayer.file_contents)
(TestLayerVisibility.file_contents, TestLabels.file_contents)
(TestLayerProjection.file_contents)
(TestRasterLayer.file_contents, TestJoinedTable.file_contents)
(TestJoinedTable.file_contents)
(TestLoadError.file_contents): Update for new DTD
(TestJoinedTable.file_contents, TestJoinedTable.setUp): Add test
for new join type attribute

* test/test_save.py (SaveSessionTest.dtd)
(SaveSessionTest.testEmptySession)
(SaveSessionTest.testSingleLayer)
(SaveSessionTest.testLayerProjection)
(SaveSessionTest.testRasterLayer)
(SaveSessionTest.testClassifiedLayer)
(SaveSessionTest.test_dbf_table)
(SaveSessionTest.test_joined_table): Update for new DTD
(SaveSessionTest.test_joined_table): Add test for new join type
attribute


Revision 1372 - Directory Listing
Modified Fri Jul 4 18:19:33 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1371 - Directory Listing
Modified Fri Jul 4 18:19:16 2003 UTC (21 years, 8 months ago) by bh
* Thuban/Model/table.py (_find_dbf_column_names): New. Helper
function for table_to_dbf
(table_to_dbf): Deal with names longer than the 10 character limit

* test/test_dbf_table.py (TestTableToDBF.test_table_to_dbf): Add
doc-string
(TestTableToDBF.test_table_to_dbf_long_col_names): New test for
long column names


Revision 1370 - Directory Listing
Modified Thu Jul 3 16:27:31 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1369 - Directory Listing
Modified Thu Jul 3 16:27:22 2003 UTC (21 years, 8 months ago) by bh
Fix the CVS Revision Tag syntax


Revision 1368 - Directory Listing
Modified Thu Jul 3 16:25:48 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1367 - Directory Listing
Modified Thu Jul 3 16:25:35 2003 UTC (21 years, 8 months ago) by bh
Skeleton for the Thuban manual and README with some basic information
about the manual


Revision 1365 - Directory Listing
Modified Thu Jul 3 13:10:09 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1364 - Directory Listing
Modified Thu Jul 3 13:09:43 2003 UTC (21 years, 8 months ago) by bh
* test/test_transientdb.py
(TestTransientTable.test_transient_joined_table_same_column_name):
Update to reflect the new behavior
(TestTransientTable.test_transient_joined_table_with_equal_column_names):
Update to reflect the new behavior
(TestTransientTable.test_transient_joined_table_name_collisions_dont_modify_in_place):
New test case for a bug which modified the column objects in place

* Thuban/Model/transientdb.py (TransientJoinedTable.__init__):
Update doc-string
(TransientJoinedTable.create): Do not modify the column objects of
the input tables in place and copy all columns of the input tables
into the joined table after all.


Revision 1363 - Directory Listing
Modified Wed Jul 2 12:59:42 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1362 - Directory Listing
Modified Wed Jul 2 12:59:34 2003 UTC (21 years, 8 months ago) by jonathan
(ClassGenTest.doClassRangeTest,
        ClassGenTest.doClassSingleTest): Call doBoundsTest to
        check the end classification groups against the
        proper property values.
(ClassGenTest.doBoundsTest): New. Checks the first and
        last classification groups to make sure their properties
        are the correct upper and lower bounds for a color ramp.


Revision 1361 - Directory Listing
Modified Wed Jul 2 12:59:20 2003 UTC (21 years, 8 months ago) by jonathan
(generate_singletons,
        generate_uniform_distribution, generate_quantiles,
        GenQuantiles0): Make sure maxValue isn't less than
        one, otherwise we could divide by zero.


Revision 1360 - Directory Listing
Modified Wed Jul 2 10:51:58 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1359 - Directory Listing
Modified Wed Jul 2 10:51:49 2003 UTC (21 years, 8 months ago) by jonathan
(generate_singletons,
        generate_uniform_distribution, generate_quantiles,
        GenQuantiles0): The denominator was one to high when
        calculating the index for the ramp causing the index
        to never to reach one.


Revision 1358 - Directory Listing
Modified Wed Jul 2 09:38:36 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1357 - Directory Listing
Modified Wed Jul 2 09:38:27 2003 UTC (21 years, 8 months ago) by jonathan
Fix use of ClassGroupRange so that it uses the new signature.


Revision 1356 - Directory Listing
Modified Wed Jul 2 09:37:59 2003 UTC (21 years, 8 months ago) by jonathan
Fix tests of ClassGroupRange so that they use the new signature.


Revision 1355 - Directory Listing
Modified Wed Jul 2 09:37:23 2003 UTC (21 years, 8 months ago) by jonathan
(Layer.SetClassification): Switch
        the classification instance variable to the new class
        before calling _set_layer otherwise subscribers to a
        LAYER_CHANGED event will not see any difference.


Revision 1354 - Directory Listing
Modified Wed Jul 2 09:37:07 2003 UTC (21 years, 8 months ago) by jonathan
(SessionLoader.start_clrange): Fix
        call to ClassGroupRange constructor to use a tuple.


Revision 1353 - Directory Listing
Modified Wed Jul 2 09:36:54 2003 UTC (21 years, 8 months ago) by jonathan
(ClassGroupRange.__init__):
        Consolidate the min/max parameters into a single _range which
        can either be a tuple or a Range object.
(ClassGroupRange.SetRange): Consolidate the min/max parameters
        into a single _range which can either be a tuple or a Range object.


Revision 1352 - Directory Listing
Modified Wed Jul 2 09:36:39 2003 UTC (21 years, 8 months ago) by jonathan
Fixed parameters to ClassGroupRange constructor.


Revision 1351 - Directory Listing
Modified Tue Jul 1 16:17:02 2003 UTC (21 years, 8 months ago) by jonathan
(Classificatio.__init__): Remove unused lock variable.


Revision 1350 - Directory Listing
Modified Tue Jul 1 16:13:27 2003 UTC (21 years, 8 months ago) by jonathan
fix import statement


Revision 1349 - Directory Listing
Modified Tue Jul 1 16:12:38 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1348 - Directory Listing
Modified Tue Jul 1 16:12:28 2003 UTC (21 years, 8 months ago) by jonathan
(SaveSessionTest.testClassifiedLayer):
        Change calls to Classification.[SetField|SetFieldType] to
        SetFieldInfo.


Revision 1347 - Directory Listing
Modified Tue Jul 1 16:12:14 2003 UTC (21 years, 8 months ago) by jonathan
Fix color references.


Revision 1346 - Directory Listing
Modified Tue Jul 1 16:11:55 2003 UTC (21 years, 8 months ago) by jonathan
 Fix color references and
        change calls to Classification.[SetField|SetFieldType] to
        SetFieldInfo.


Revision 1345 - Directory Listing
Modified Tue Jul 1 16:11:38 2003 UTC (21 years, 8 months ago) by jonathan
(ClassGenTest.test_generate_singletons):
        Fix calls to generate_singletons because the signature changed.


Revision 1344 - Directory Listing
Modified Tue Jul 1 16:11:26 2003 UTC (21 years, 8 months ago) by jonathan
Fixes RTbug #1974, 1971.
(MapCanvas.__init__): Subscribe to the idle time event. Set
        background color to white.
(MapCanvas.OnPaint): Set a flag indicating that we should
        render the map during idle time. If we already have a bitmap
        just draw it now.
(MapCanvas.OnIdle): New. Render the map only during idle time.
        This also fixes a problem with the busy cursor under gtk.


Revision 1343 - Directory Listing
Modified Tue Jul 1 16:11:08 2003 UTC (21 years, 8 months ago) by jonathan
Fixes RTbug #1971.


Revision 1342 - Directory Listing
Modified Tue Jul 1 16:10:54 2003 UTC (21 years, 8 months ago) by jonathan
Fixes RTbug #1971.
(Classifier.__BuildClassification, Classifier.__SetGridTable):
        Call Classification.SetFieldInfo() instead of SetFieldType.


Revision 1341 - Directory Listing
Modified Tue Jul 1 16:10:42 2003 UTC (21 years, 8 months ago) by jonathan
Fixes RTbug #1972.
(ClassGenDialog.__init__): Color ramps are now instances
        already so we don't need to create any new objects.
(ClassGenDialog.OnOK): Check for numGroups is no longer
        necessary because we never use it.


Revision 1340 - Directory Listing
Modified Tue Jul 1 16:10:25 2003 UTC (21 years, 8 months ago) by jonathan
Removed import of Color which wasn't being used.


Revision 1339 - Directory Listing
Modified Tue Jul 1 16:10:14 2003 UTC (21 years, 8 months ago) by jonathan
Fixes RTbug #1971.
(SessionLoader.start_classification): Call
        Classification.SetFieldInfo().


Revision 1338 - Directory Listing
Modified Tue Jul 1 16:10:00 2003 UTC (21 years, 8 months ago) by jonathan
Fixes RTbug #1971, 1973.
(Layer.Destroy): We don't need to call SetClassification
        anymore to clear out the back reference in the classifcation
        to the layer. It's better to set it to None using _set_layer,
        and we won't be creating another clas object too.
(Layer.SetClassification): Classification._set_layer is not
        recursive so remove all the locking variables. Also clean
        up the code so that it remains unchanged if something fails.


Revision 1337 - Directory Listing
Modified Tue Jul 1 16:09:43 2003 UTC (21 years, 8 months ago) by jonathan
Fixes RTbug #1971.
(_Transparent): Renamed from Transparent so it doesn't
        conflict with the module variable.
(Transparent, Black): Renamed from Color.Transparent,
        Color.Black so they are not class variables.


Revision 1336 - Directory Listing
Modified Tue Jul 1 16:09:26 2003 UTC (21 years, 8 months ago) by jonathan
 Fixes RTbug #1973, 1971.
(Classification.SetField, Classification.SetFieldType):
        Replaced with SetFieldInfo.
(Classification.SetFieldInfo): New. Does a better job of
        what SetField and SetFieldType used to do by combining
        their function since they should really always be done
        at the same time.
(Classification.SetLayer): Renamed to _set_layer.
(Classification._set_layer): Should only be called from
        Layer's SetClassification. This does not cause a recursive
        call as SetLayer did because we know that Layer knows about
        the classification.


Revision 1335 - Directory Listing
Modified Tue Jul 1 16:09:09 2003 UTC (21 years, 8 months ago) by jonathan
Fixes RTbug #1972, 1971.
        Import used objects/class from color.
(generate_singletons): We don't
        need the numGroups parameter anymore because we are using
        the new ramps with GetProperties().
(generate_uniform_distribution): Use new ramp method
        GetProperties().
(generate_quantiles, GenQuantiles0): Use new ramp method
        GetProperties().
(CustomRamp.SetNumGroups): Removed. The ramps now map
        a value from 0 to 1 to class properties so the number
        of groups is not needed ahead of time.
(CustomRamp.next): Removed. CustomRamp does not support
        interation anymore.
(CustomRamp.GetProperties): Returns a ClassGroupProperties
        object based on the index value from 0 to 1 that is
        passed to it.
(GreyRamp, RedRamp, GreenRamp, BlueRamp, GreenToRedRamp):
        Made into instances of Monochromatic class instread of
        deriving from it.
(HotToCold.SetNumGroups): Removed. See CustomRamp.
(HotToCold.next): Removed. See CustomRamp.


Revision 1334 - Directory Listing
Modified Tue Jul 1 15:41:38 2003 UTC (21 years, 8 months ago) by frank
Minor change to table join


Revision 1333 - Directory Listing
Modified Tue Jul 1 15:41:08 2003 UTC (21 years, 8 months ago) by frank
(TransientJoinedTable.create):
	If duplicates in left and right tables column names are found,
	append '_' (underscores) to the name until it is unique.
	Create always new internal names for the resulting table and reference
	columns in the join statement with <table>.<column>


Revision 1332 - Directory Listing
Modified Tue Jul 1 15:40:52 2003 UTC (21 years, 8 months ago) by frank
(TestTransientTable.test_transient_joined_table_with_equal_column_names):
	New. Test join of two tables with partly equal column names.


Revision 1329 - Directory Listing
Modified Tue Jul 1 12:02:11 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1328 - Directory Listing
Modified Tue Jul 1 12:01:58 2003 UTC (21 years, 8 months ago) by bh
* test/test_transientdb.py
(TestTransientTable.test_transient_joined_table_same_column_name):
New. Test whether joining on columns with the same names in both
tables works.

* Thuban/Model/transientdb.py (TransientJoinedTable.create): Make
sure to use the right internal names even when joining on field
with the same names in both tables. Also, detect duplicate names
in the joined table correctly.


Revision 1325 - Directory Listing
Modified Tue Jul 1 09:29:27 2003 UTC (21 years, 8 months ago) by frank
BugFix #1963


Revision 1324 - Directory Listing
Modified Tue Jul 1 09:28:47 2003 UTC (21 years, 8 months ago) by frank
Reverse List of layers to render in same order as in desktop legend.


Revision 1323 - Directory Listing
Modified Mon Jun 30 12:02:01 2003 UTC (21 years, 8 months ago) by jonathan
Add Thuban email addresses.


Revision 1322 - Directory Listing
Modified Mon Jun 30 12:01:50 2003 UTC (21 years, 8 months ago) by jonathan
(make_tuple): Takes a version string
        and splits it into a tuple of at most three integers.
        Used make_tuple() to make tuple versions of the version
        numbers.


Revision 1320 - Directory Listing
Modified Mon Jun 30 10:27:24 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1319 - Directory Listing
Modified Mon Jun 30 10:26:45 2003 UTC (21 years, 8 months ago) by jonathan
SQLite/PySQLite version dependencies were too high.


Revision 1318 - Directory Listing
Modified Mon Jun 30 09:57:16 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1317 - Directory Listing
Modified Mon Jun 30 09:56:56 2003 UTC (21 years, 8 months ago) by jonathan
Update version to 0.8.1


Revision 1316 - Directory Listing
Modified Mon Jun 30 09:47:04 2003 UTC (21 years, 8 months ago) by jonathan
Update version to 0.8.1


Revision 1314 - Directory Listing
Modified Mon Jun 30 08:56:21 2003 UTC (21 years, 8 months ago) by jonathan
Properly include XML and Projections


Revision 1313 - Directory Listing
Modified Mon Jun 30 08:54:52 2003 UTC (21 years, 8 months ago) by jonathan
Fixes for installing on windows, and also to include projections


Revision 1312 - Directory Listing
Modified Thu Jun 26 17:01:28 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1311 - Directory Listing
Modified Thu Jun 26 17:01:20 2003 UTC (21 years, 8 months ago) by jonathan
(check_version, check_version_gtk): Removed.
(get_proj_version): Return the version of PROJ that the file
        was compiled with.
(get_gtk_version): Return th version of GTK that the file
        was compiled with.


Revision 1310 - Directory Listing
Modified Thu Jun 26 17:00:59 2003 UTC (21 years, 8 months ago) by jonathan
(get_gdal_version): New.
        Returns the version of gdal library being used as a string.


Revision 1309 - Directory Listing
Modified Thu Jun 26 17:00:44 2003 UTC (21 years, 8 months ago) by jonathan
(MainWindow.About): Call new About box in Thuban.UI.about.


Revision 1308 - Directory Listing
Modified Thu Jun 26 17:00:31 2003 UTC (21 years, 8 months ago) by jonathan
(wxCHECK_VERSION): Removed. Not needed.
(verify_versions): Remove most of the code since it is
        now in Thuban.version.verify_versions.o


Revision 1307 - Directory Listing
Modified Thu Jun 26 17:00:17 2003 UTC (21 years, 8 months ago) by jonathan
(Classifier.__EnableButtons):
        Reset the status of the buttons as the situation warrants,
        but in a better more reliable way by not relying on the
        current status to determine what needs to change.


Revision 1306 - Directory Listing
Modified Thu Jun 26 17:00:01 2003 UTC (21 years, 8 months ago) by jonathan
Added new 'versions' dictionary which
        contains the verions of various libraries which are checked
        when the module loads.
(verify_versions): Check all version numbers and returns a list of errors.


Revision 1305 - Directory Listing
Modified Thu Jun 26 16:59:41 2003 UTC (21 years, 8 months ago) by jonathan
New. New About box that displays library version information and credits.


Revision 1304 - Directory Listing
Modified Wed Jun 25 09:40:02 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1303 - Directory Listing
Modified Wed Jun 25 09:39:51 2003 UTC (21 years, 8 months ago) by jonathan
Cleaned up how we determine file extensions.
(GetImageResource): Return an wxImage from our Resources.


Revision 1302 - Directory Listing
Modified Wed Jun 25 09:39:33 2003 UTC (21 years, 8 months ago) by jonathan
(Classifier.EditSymbol): The parent
        of the SelectPropertiesDialog should be self so the window
        appears on top.
(ClassGroupPropertiesCtrl.DoEdit): The parent
        of the SelectPropertiesDialog should be self so the window
        appears on top.


Revision 1299 - Directory Listing
Modified Tue Jun 24 18:00:36 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1298 - Directory Listing
Modified Tue Jun 24 18:00:26 2003 UTC (21 years, 8 months ago) by jonathan
(ExportRenderer.render_legend):
        Check that a layer has a classification before trying
        to get it. Raster layers don't have classifications.


Revision 1297 - Directory Listing
Modified Mon Jun 23 13:28:11 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1296 - Directory Listing
Modified Mon Jun 23 13:22:43 2003 UTC (21 years, 8 months ago) by jonathan
Add Resources/XML to resource list.


Revision 1295 - Directory Listing
Modified Mon Jun 23 13:17:38 2003 UTC (21 years, 8 months ago) by jonathan
Fix copyright dates


Revision 1294 - Directory Listing
Modified Mon Jun 23 13:06:13 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1293 - Directory Listing
Modified Mon Jun 23 13:05:58 2003 UTC (21 years, 8 months ago) by jonathan
Add blank line at the end because
        file was not being read correctly building the Windows
        distribution.


Revision 1292 - Directory Listing
Modified Mon Jun 23 13:05:44 2003 UTC (21 years, 8 months ago) by jonathan
Removed since it is now in Resources/XML.


Revision 1291 - Directory Listing
Modified Mon Jun 23 13:05:32 2003 UTC (21 years, 8 months ago) by jonathan
Don't include Locale resources yet as we don't
        have any and it causes problems building the distribution
        for Windows. Update version to 0.8.0.


Revision 1290 - Directory Listing
Modified Mon Jun 23 13:05:16 2003 UTC (21 years, 8 months ago) by jonathan
Update with Resources/XML


Revision 1289 - Directory Listing
Modified Mon Jun 23 10:47:58 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1288 - Directory Listing
Modified Mon Jun 23 10:47:44 2003 UTC (21 years, 8 months ago) by jonathan
Temporarily update longversion for
        the 0.8 release so that it doesn't have the cvs revision.


Revision 1287 - Directory Listing
Modified Mon Jun 23 10:47:11 2003 UTC (21 years, 8 months ago) by jonathan
(MainWindow.About): Fix text.


Revision 1286 - Directory Listing
Modified Mon Jun 23 10:31:01 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1285 - Directory Listing
Modified Mon Jun 23 10:30:53 2003 UTC (21 years, 8 months ago) by jonathan
(MapCanvas.OnPaint): Call wxBeginBusyCursor()
        directly to avoid the wxSafeYield() call which generates an
        OnPaint event causing infinite recursion. Don't try to catch
        exception anymore. This was for before there were limits on map
        scaling.


Revision 1284 - Directory Listing
Modified Mon Jun 23 10:30:38 2003 UTC (21 years, 8 months ago) by jonathan
(ThubanBeginBusyCursor): Call wxSafeYield
        to make sure that we don't create reentrant possibilities with
        wxYield.


Revision 1283 - Directory Listing
Modified Mon Jun 23 09:47:31 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1282 - Directory Listing
Modified Mon Jun 23 09:47:18 2003 UTC (21 years, 8 months ago) by bh
Bug fix for RT #1961:

* Thuban/Model/load.py (SessionLoader.start_derivedshapesource):
Register DerivedShapestores with the session

* Thuban/Model/session.py (Session.Tables): Make sure each table
is only listed once.

* test/test_load.py (TestJoinedTable.test): Add check_format call.
Update file contents to match the one written out.


Revision 1281 - Directory Listing
Modified Fri Jun 20 18:29:26 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1280 - Directory Listing
Modified Fri Jun 20 18:29:16 2003 UTC (21 years, 8 months ago) by bh
* test/xmlsupport.py (SaxEventLister.startElementNS)
(SaxEventLister.endElementNS): Do not include the qname. Python
2.2.1 and 2.2.2 and 2.2.3 differ in this regard. In 2.2.1 qname it
is (presumably incorrectly) None, whereas it's a string with the
element name in the later versions.

* test/test_xmlsupport.py (TestEventList.test_even_list_simple)
(TestEventList.test_even_list_namespace): Update tests to reflect
the new behaviour
(TestEventList.test_even_list_id_normalization): Fix doc-string


Revision 1279 - Directory Listing
Modified Fri Jun 20 17:47:12 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1278 - Directory Listing
Modified Fri Jun 20 17:46:58 2003 UTC (21 years, 8 months ago) by jonathan
Add tests in each type of layer for HasClassification() and HasShapes()


Revision 1277 - Directory Listing
Modified Fri Jun 20 17:46:45 2003 UTC (21 years, 8 months ago) by jonathan
Use Thuban[Begin|End]BusyCursor()
        instead of a direct call to wx[Begin|End]CusyCursor().
(MapCanvas.find_shape_at): Check if the current search layer
        support shapes, otherwise go on to the next layer.


Revision 1276 - Directory Listing
Modified Fri Jun 20 17:46:34 2003 UTC (21 years, 8 months ago) by jonathan
Use Thuban[Begin|End]BusyCursor()
        instead of a direct call to wx[Begin|End]CusyCursor().


Revision 1275 - Directory Listing
Modified Fri Jun 20 17:46:19 2003 UTC (21 years, 8 months ago) by jonathan
(ThubanBeginBusyCursor, ThubanEndBusyCursor):
        New. Wrappers around the wxWindows functions that allow us to
        make additional calls such as wxYield which gives the native
        system a chance to update the cursor correctly.


Revision 1274 - Directory Listing
Modified Fri Jun 20 17:46:04 2003 UTC (21 years, 8 months ago) by jonathan
 Use Thuban[Begin|End]BusyCursor()
        instead of a direct call to wx[Begin|End]CusyCursor().
(GenUniquePanel._OnRetrieve): Set busy cursor while retrieving
        table data.


Revision 1273 - Directory Listing
Modified Fri Jun 20 17:45:49 2003 UTC (21 years, 8 months ago) by jonathan
(BaseLayer.HasShapes): New. Overridden
        by deriving classes to determine if that layer supports shapes.
(Layer): Override HasShapes and return true.


Revision 1272 - Directory Listing
Modified Fri Jun 20 16:43:13 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1271 - Directory Listing
Modified Fri Jun 20 16:43:04 2003 UTC (21 years, 8 months ago) by jonathan
(MapCanvas.OnPaint): Call wxYield after
        turning on the busy cursor to allow the system to change the
        cursor before we begin painting. This fixes a problem that
        was occuring only under GTK. Fixes RTbug #1840.


Revision 1270 - Directory Listing
Modified Fri Jun 20 16:10:40 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1269 - Directory Listing
Modified Fri Jun 20 16:10:22 2003 UTC (21 years, 8 months ago) by bh
Add CVS keywords


Revision 1268 - Directory Listing
Modified Fri Jun 20 16:10:12 2003 UTC (21 years, 8 months ago) by bh
* Resources/XML/thuban-0.8.dtd: New DTD for the new file format
version.

* Thuban/Model/save.py (sort_data_stores): New. Make topological
sort of the data sources so they can be written with sources that
data sources that depend on other data sources come after the
sources they depend on.
(SessionSaver.__init__): Add idmap instance variable to map from
objects to the ids used in the file.
(SessionSaver.get_id, SessionSaver.define_id)
(SessionSaver.has_id): New. Methods to manage the idmap
(SessionSaver.write): Use thuban-0.8.dtd
(SessionSaver.write_session): Add a namespace on the session and
write out the data sources before the maps.
(SessionSaver.write_data_containers): New. Write the data
containers.
(SessionSaver.write_layer): Layer elements now refer to a
shapestore and don't contain filenames anymore.

* Thuban/Model/load.py (LoadError): Exception class to raise when
errors in the files are discovered
(SessionLoader.__init__): Define dispatchers for elements with a
thuban-0.8 namespace too.
(SessionLoader.check_attrs): New helper method to check and
convert attributes
(AttrDesc): New. Helper class for SessionLoader.check_attrs
(SessionLoader.start_fileshapesource)
(SessionLoader.start_derivedshapesource)
(SessionLoader.start_filetable, SessionLoader.start_jointable):
Handlers for the new elements in the new fileformat
(SessionLoader.start_layer): Handle the shapestore attribute in
addition to filename.
(SessionLoader.start_table, SessionLoader.end_table): Removed.
They were never used in the old formats and aren't needed for the
new.

* Thuban/Model/session.py (Session.DataContainers): New method to
return all "data containers", i.e. shapestores and tables

* test/xmlsupport.py (SaxEventLister.__init__)
(SaxEventLister.startElementNS, sax_eventlist): Add support to
normalize IDs.

* test/test_xmlsupport.py
(TestEventList.test_even_list_id_normalization): New test case for
id normalization

* test/test_load.py (LoadSessionTest.check_format): Use ID
normalization
(LoadSessionTest.thubanids, LoadSessionTest.thubanidrefs): New
class atrributes used for ID normalization
(TestSingleLayer, TestLayerVisibility, TestLabels.test)
(TestLayerProjection.test, TestRasterLayer.test): Adapt to new
file format
(TestJoinedTable): New test for loading sessions with joined
tables.
(TestLoadError): New. Test whether missing required attributes
cause a LoadError.

* test/test_save.py (SaveSessionTest.thubanids)
(SaveSessionTest.thubanidrefs): New class attributes for ID
normalization in .thuban files.
(SaveSessionTest.compare_xml): Use id-normalization.
(SaveSessionTest.testEmptySession)
(SaveSessionTest.testLayerProjection)
(SaveSessionTest.testRasterLayer)
(SaveSessionTest.testClassifiedLayer): Adapt to new file format.
(SaveSessionTest.testLayerProjection): The filename used was the
same as for testSingleLayer. Use a different one.
(SaveSessionTest.test_dbf_table)
(SaveSessionTest.test_joined_table): New test cases for saving the
new data sources structures.
(TestStoreSort, MockDataStore): Classes to test the sorting of the
data stores for writing.


Revision 1267 - Directory Listing
Modified Fri Jun 20 14:36:46 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1266 - Directory Listing
Modified Fri Jun 20 14:36:35 2003 UTC (21 years, 8 months ago) by jonathan
(UnreferencedTablesTests.test_unreferenced_tables_with_joins):
        Use the cultural_landmark-point.dbf file for the store so that
        the table rows and shape count match.


Revision 1265 - Directory Listing
Modified Fri Jun 20 14:16:10 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1264 - Directory Listing
Modified Fri Jun 20 14:15:56 2003 UTC (21 years, 8 months ago) by jonathan
(RangeTest): Inherit from
        support.FloatComparisonMixin now that we don't have
        support.FloatTestCase.


Revision 1263 - Directory Listing
Modified Fri Jun 20 14:15:43 2003 UTC (21 years, 8 months ago) by jonathan
(FloatTestCase): Removed since there is
        already FloatComparisonMixin. Fixes RTbug #1954.
(FloatComparisonMixin.assertFloatEqual): Include test for
        infinity that was part of FloatTestCase.


Revision 1262 - Directory Listing
Modified Fri Jun 20 14:15:30 2003 UTC (21 years, 8 months ago) by jonathan
(TestLayer.test_derived_store): Add
        a test for the new exception in DerivedShapeStore.__init__.


Revision 1261 - Directory Listing
Modified Fri Jun 20 14:14:42 2003 UTC (21 years, 8 months ago) by jonathan
(DerivedShapeStore.__init__): Raise
        an exception if the number of shapes is different from the
        number of rows in the table. Address RTbug #1933.


Revision 1260 - Directory Listing
Modified Fri Jun 20 12:32:05 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1259 - Directory Listing
Modified Fri Jun 20 12:31:48 2003 UTC (21 years, 8 months ago) by bh
* test/test_save.py (SaxEventLister, sax_eventlist): Removed. Use
the implementation in xmlsupport instead.
(SaveSessionTest.compare_xml): sax_eventlist is now in xmlsupport

* test/test_proj.py: Import sax_eventlist from xmlsupport instead
of test_save


Revision 1258 - Directory Listing
Modified Fri Jun 20 12:23:28 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1257 - Directory Listing
Modified Fri Jun 20 12:22:25 2003 UTC (21 years, 8 months ago) by bh
* test/test_load.py (LoadSessionTest.check_format): New helper
method to make sure the test files we load might have been written
by the current thuban version.
(ClassificationTest.TestLayers, TestSingleLayer.test)
(TestLayerVisibility.test, TestClassification.test)
(TestLabels.test, TestLayerProjection.test, TestRasterLayer.test):
Add check_format() calls and fix the thuban data to match the data
that would be written by saving the session loaded from it.

* test/xmlsupport.py (SaxEventLister, sax_eventlist): Copies of
the same class and function in test_save.

* test/test_xmlsupport.py (TestEventList): New. test cases for
sax_eventlist


Revision 1256 - Directory Listing
Modified Fri Jun 20 10:40:42 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1255 - Directory Listing
Modified Fri Jun 20 10:40:35 2003 UTC (21 years, 8 months ago) by bh
Add comment about which versions of
Thuban are covered by this DTD
(map): Fix content model for layers and raster layers. There can
be any number or layers and raster layers in any order.


Revision 1254 - Directory Listing
Modified Fri Jun 20 09:29:06 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1253 - Directory Listing
Modified Fri Jun 20 09:28:43 2003 UTC (21 years, 8 months ago) by jonathan
(ScaleBar.DrawScaleBar): Remove
        scale adjust code since it is now done before calling
        this method. Don't do anything if the map projection
        is None.


Revision 1252 - Directory Listing
Modified Fri Jun 20 09:28:08 2003 UTC (21 years, 8 months ago) by jonathan
(ScaleBarBitmap.__SetScale): Do scale
        adjustment here if the map projection uses degrees.


Revision 1251 - Directory Listing
Modified Fri Jun 20 09:27:55 2003 UTC (21 years, 8 months ago) by jonathan
(SessionSaver.write_classification):
        Remove unnecessary use of lambdas and nested functions.


Revision 1250 - Directory Listing
Modified Fri Jun 20 09:27:43 2003 UTC (21 years, 8 months ago) by jonathan
(Projection.GetProjectedUnits): New.
        Currently returns PROJ_UNITS_METERS or PROJ_UNITS_DEGREES
        depending on the units this projection *forwards* into.


Revision 1249 - Directory Listing
Modified Fri Jun 20 09:27:19 2003 UTC (21 years, 8 months ago) by jonathan
Remove "from __future__"
        import statement since python 2.2 is the earliest supported
        version.


Revision 1248 - Directory Listing
Modified Thu Jun 19 19:53:47 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1247 - Directory Listing
Modified Thu Jun 19 19:53:36 2003 UTC (21 years, 8 months ago) by bh
Move version specific load tests to their own file.

* test/test_load.py: Expand the doc-string to explain a bit how to
handle file format changes.
(TestClassification.test): Update the docstring as this test is
not about Thuban 0.2 anymore.

* test/test_load_0_2.py: New file with the load tests for thuban
files created with Thuban 0.2 and earlier.


Revision 1246 - Directory Listing
Modified Thu Jun 19 19:29:33 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1245 - Directory Listing
Modified Thu Jun 19 19:29:23 2003 UTC (21 years, 8 months ago) by bh
Add XML validation to some of the tests. Validation will only be
done if pyRXP is installed (http://reportlab.com/xml/pyrxp.html).
To make the DTD available to the test cases it's moved into
Resources/XML

* Resources/XML/thuban.dtd: New. This is now the real Thuban DTD
for versions up to and including 0.2. Two slight changes: added an
encoding specification and fixed the comment which refered to
GRASS, not Thuban

* test/xmlsupport.py: New support module for tests involving XML.
Currently there's a mix-in class for XML validation.

* test/test_xmlsupport.py: New. Tests for the xmlsupport module

* test/test_save.py (SaveSessionTest): Derive from ValidationTest
so that we can validate the
(SaveSessionTest.testEmptySession)
(SaveSessionTest.testSingleLayer)
(SaveSessionTest.testSingleLayer)
(SaveSessionTest.testLayerProjection)
(SaveSessionTest.testRasterLayer)
(SaveSessionTest.testClassifiedLayer): Validate the generated XML

* test/runtests.py (main): Call print_additional_summary instead
of print_garbage_information

* test/support.py (resource_dir): New function to return the
"Resource" subdirectory
(print_additional_summary): New function to combine several
summary functions
(run_tests): Use print_additional_summary instead of calling
print_garbage_information directly


Revision 1244 - Directory Listing
Modified Thu Jun 19 10:55:23 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1243 - Directory Listing
Modified Thu Jun 19 10:55:13 2003 UTC (21 years, 8 months ago) by bh
(classification): Correct the content model of
the classification element.
(projection): Add the "name" attribute


Revision 1242 - Directory Listing
Modified Thu Jun 19 09:26:10 2003 UTC (21 years, 8 months ago) by frank
MERGE from the greater-ms3 branch.


Revision 1241 - Directory Listing
Modified Thu Jun 19 09:25:53 2003 UTC (21 years, 8 months ago) by frank
(LegendTree.__init__): Instance variable
	raiseProperties initialized to prevent endless loops
(LegendTree._OnItemActivated): Depending on self.raiseProperties
	simply raise the properties or open the dialog and issue a second
	event.


Revision 1240 - Directory Listing
Modified Thu Jun 19 09:25:31 2003 UTC (21 years, 8 months ago) by frank
(ScaleBar.DrawScaleBar): Apply conversion to scale if projection is
latlong to get better estimate.


Revision 1239 - Directory Listing
Modified Wed Jun 18 15:41:11 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1238 - Directory Listing
Modified Wed Jun 18 15:37:14 2003 UTC (21 years, 8 months ago) by jonathan
Fix a few problems that occured under Windows.


Revision 1237 - Directory Listing
Modified Wed Jun 18 15:30:14 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1236 - Directory Listing
Modified Wed Jun 18 15:29:26 2003 UTC (21 years, 8 months ago) by jonathan
(MapCanvas.FitMapToWindow): This may be called
    during startup before a map has been created. Check if map is None
    before using it and do nothing if it is.


Revision 1235 - Directory Listing
Modified Wed Jun 18 14:47:50 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1234 - Directory Listing
Modified Wed Jun 18 14:47:38 2003 UTC (21 years, 8 months ago) by jonathan
Check for gdal support before importing gdalwarp.
(MapRenderer.render_map): Only try to optimize if we have gdal
        support otherwise nothing will get drawn.
(MapCanvas.FitMapToWindow): This may be called during startup
        before a map has been created. Check if map is None before
        using it and do nothing if it is.


Revision 1233 - Directory Listing
Modified Wed Jun 18 14:47:19 2003 UTC (21 years, 8 months ago) by jonathan
(MainWindow.__init__): Call ShowLegend().


Revision 1232 - Directory Listing
Modified Wed Jun 18 14:47:06 2003 UTC (21 years, 8 months ago) by jonathan
(main): Remove call to ShowLegend.


Revision 1231 - Directory Listing
Modified Wed Jun 18 14:46:57 2003 UTC (21 years, 8 months ago) by jonathan
(ScaleBarBitmap.__SetScale): Check if
        the map is None which may be the case if none has been loaded yet.


Revision 1230 - Directory Listing
Modified Wed Jun 18 14:46:43 2003 UTC (21 years, 8 months ago) by jonathan
First check if we can import
        the gdalwarp Thuban extension before checking for gdal.
        Also added some comments.


Revision 1229 - Directory Listing
Modified Wed Jun 18 14:46:30 2003 UTC (21 years, 8 months ago) by jonathan
Use a list instead of seperate variables for
        extension parameters so we can create a generic function
        that runs an appropriate *-config script.
(run_cs_script): Renamed from run_wx_script and modified
        to accept a second argument which is a list of lists to
        be filled in by the values returned from running the command.
(thuban_build_ext): New. Extends the build_ext command and
        provides the options --with-gdal/--without-gdal which then
        optionally includes the gdalwarp extension.


Revision 1224 - Directory Listing
Modified Tue Jun 17 15:26:11 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1223 - Directory Listing
Modified Tue Jun 17 15:25:56 2003 UTC (21 years, 8 months ago) by jonathan
(MFILENAME): Padding should be to twice sizeof(void*) because there are
        two digits for each hex byte.


Revision 1222 - Directory Listing
Modified Tue Jun 17 15:25:06 2003 UTC (21 years, 8 months ago) by jonathan
(BMPDataset::Open): Call VSIFClose() not VSIFCloseL() to close the file.
        Fixes a crash under Windows.


Revision 1221 - Directory Listing
Modified Tue Jun 17 15:24:45 2003 UTC (21 years, 8 months ago) by jonathan
(MapCanvas.__init__): New instance variable
        current_map_proj to remember the current map projection so that
        when the projection changes we know what the previous projection
        was.
(MapCanvas.SetMap): Unsubscribe and subscribe to
        LAYER_PROJECTION_CHANGED events.
(MapCanvas.projection_changed): Split into two methods that respond
        to map and layer projection changes.
(MapCanvas.map_projection_changed): New. Takes the current view and
        projects it using the new projection. This does not cause the
        map to be redrawn at full extent.
(MapCanvas.layer_projection_changed): New. Cause a redraw which
        will draw each layer in its new projection.


Revision 1220 - Directory Listing
Modified Mon Jun 16 17:43:09 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1219 - Directory Listing
Modified Mon Jun 16 17:42:54 2003 UTC (21 years, 8 months ago) by bh
Update to the layer interface: Direct access to the table,
shapetable, shapefile and filename attributes is now actively
deprecated by issuing deprecation warnings for all places where
this happens.

* Thuban/Model/layer.py (Layer.__getattr__): New. Implement access
to the instance variables table, shapetable, shapefile and
filename via __getattr__ so that we can issue a deprecation
warning.
(Layer.SetShapeStore): Don't set the deprecated instance variables
any more
(Layer.SetShapeStore): Don't use deprecated layer instance
variables
(Layer.Destroy): No need to explicitly remove the instance
variables any more
(Layer.GetFieldType, Layer.Shape): Don't use deprecated layer
instance variables

* Thuban/UI/classgen.py (ClassGenDialog.__init__)
(GenUniformPanel._OnRetrieve, GenUniquePanel._OnRetrieve)
(GenQuantilesPanel.GetList, GenQuantilesPanel.OnRetrieve): Don't
use deprecated layer instance variables

* Thuban/UI/classifier.py (Classifier.__init__): Don't use
deprecated layer instance variables

* Thuban/UI/identifyview.py (IdentifyListCtrl.selected_shape)
(IdentifyGridCtrl.selected_shape): Don't set the deprecated layer
instance variables

* Thuban/UI/tableview.py (LayerTableGrid.select_shapes): Don't use
deprecated layer instance variables

* Thuban/UI/mainwindow.py (MainWindow.LayerShowTable): Don't use
deprecated layer instance variables

* Thuban/Model/save.py (SessionSaver.write_layer): Don't use
deprecated layer instance variables

* Thuban/UI/renderer.py (MapRenderer.draw_shape_layer)
(MapRenderer.polygon_render_param): Don't use deprecated layer instance
variables

* test/runtests.py (main): Turn Thuban's deprecation warnings into
errors so that they're cought by the tests

* test/test_load.py (TestSingleLayer.test): Don't use deprecated
layer instance variables


Revision 1212 - Directory Listing
Modified Mon Jun 16 12:28:25 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1211 - Directory Listing
Modified Mon Jun 16 12:27:52 2003 UTC (21 years, 8 months ago) by jonathan
(LegendTree.__init__): Add instance variable
        preventExpandCollapse and subscribe to expanding and collapsing
        events.
(LegendTree.OnItemExpandCollapse): New. Responds to expanding and
        collapsing events and will veto the event if it has been triggered
        by the user double clicking on a layer.
(LegendTree._OnItemActivated): Set preventExpandCollapse to indicate
        that an expanding/collapsing event should be vetoed.


Revision 1208 - Directory Listing
Modified Fri Jun 13 18:16:15 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1207 - Directory Listing
Modified Fri Jun 13 18:16:10 2003 UTC (21 years, 8 months ago) by bh
(Classifier.OnClose)
(Classifier.map_layers_removed)
(Classifier.layer_shapestore_replaced): Unsubscribe the messages
in OnClose and not in map_layers_removed or
layer_shapestore_replaced to make sure it always happens when the
dialog is closed


Revision 1203 - Directory Listing
Modified Fri Jun 13 16:01:26 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1202 - Directory Listing
Modified Fri Jun 13 16:01:10 2003 UTC (21 years, 8 months ago) by jonathan
(TableFrame.__init__): Add a panel
        object that can be used by derived classes to place any
        controls (including the grid) onto.
(QueryTableFrame.__init__): Use the panel as the parent window
        for all the controls. Reparent the grid so that the panel is
        the parent. Call UpdateStatusText() to correctly initialize
        the status bar.


Revision 1201 - Directory Listing
Modified Fri Jun 13 15:05:01 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1200 - Directory Listing
Modified Fri Jun 13 15:04:44 2003 UTC (21 years, 8 months ago) by jonathan
(XMLWriterTest.Encode): Check return values.  Fixes RTbug #1851.


Revision 1199 - Directory Listing
Modified Fri Jun 13 15:04:28 2003 UTC (21 years, 8 months ago) by jonathan
(TableGrid.__init__): Create an
        instance variable to keep track of how many rows are selected.
        Subscribe once to the the events we are interested in.
(ThubanGrid.OnRangeSelect): Only handle event if event handling
        hasn't been turned off.
(ThubanGrid.OnSelectCell): Only handle event if event handling
        hasn't been turned off.
(ThubanGrid.ToggleEventListeners): Rather than subscribe None
        as an event listener (which changes the event handler stack)
        simply set an instance variable to False. This is checked in
        the event handlers.
(ThubanGrid.GetNumberSelected): Return the number of currently
        selected rows.
(TableFrame): Inherit from ThubanFrame so we can have a
        status bar and control buttons.
(QueryTableFrame.__init__): Create a status bar. Fixes RTbug #1942.
        Explicitly set which items are selected in the operator choice and
        action choice so there is always a valid selection. Fixes RTbug #1941.
        Subscribe to grid cell selection events so we can update the
        status bar.
(QueryTableFrame.UpdateStatusText): Update the status bar with
        how many rows are in the grid, how many columns, and how many
        rows are selected.
(QueryTableFrame.OnGridSelectRange, QueryTableFrame.OnGridSelectCell):
        Call UpdateStatusText when cells are (de)selected.
(QueryTableFrame.OnQuery): Use the string value in the value
        combo if either the selected item index is 0 or if the string
        cannot be found in the predefined list (this happens if the
        user changes the text). Fixes RTbug #1940.
        Only turn off the grid event listeners if there a query comes
        back with a none empty list of ids. in the case that the list
        is empty this causes a grid.ClearSelection() call to actually
        clear the grid selection which causes the selected items in
        the map to be deselected. Fixes RTbug #1939.


Revision 1198 - Directory Listing
Modified Fri Jun 13 15:03:32 2003 UTC (21 years, 8 months ago) by jonathan
(ThubanFrame): New: a class that inherits
        from wxFrame (as opposed to wxDialog like the other classes)
        but otherwise behaves like the other classes. This is needed
        for the TableView which isn't really a dialog and needs to
        have a status bar and control buttons.


Revision 1195 - Directory Listing
Modified Fri Jun 13 13:02:39 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1194 - Directory Listing
Modified Fri Jun 13 13:02:30 2003 UTC (21 years, 8 months ago) by bh
(IdentifyView.__init__): Call
self.selected_shape with the current selection to make sure the
contents of the dialog are up to date when it's shown for the
first time.
The dialog used to work without this by luck. The recent fix to
the connector module 'broke' a 'feature' the identify view was
relying on, i.e that subscribing to a message in response to
receiving a message of that type would mean that the new
subscriber would also be called for the same message.


Revision 1193 - Directory Listing
Modified Thu Jun 12 17:33:35 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1192 - Directory Listing
Modified Thu Jun 12 17:33:25 2003 UTC (21 years, 8 months ago) by jonathan
Removed debug printing as the image is rendered. Fixes RTbug #1937.


Revision 1191 - Directory Listing
Modified Thu Jun 12 17:01:45 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1190 - Directory Listing
Modified Thu Jun 12 17:01:37 2003 UTC (21 years, 8 months ago) by jonathan
(ProjFrame.__DoOnProjAvail): Clear
        the projfilepath if no projection is selected.


Revision 1189 - Directory Listing
Modified Thu Jun 12 17:01:13 2003 UTC (21 years, 8 months ago) by jonathan
(get_user_proj_files): Moved the
        called to get_application_dir here, so that the directory
        will only be called if this method is invoked.


Revision 1188 - Directory Listing
Modified Thu Jun 12 17:00:43 2003 UTC (21 years, 8 months ago) by jonathan
As is done under Windows, create the
        user directory if it doesn't exist on a posix system.


Revision 1182 - Directory Listing
Modified Thu Jun 12 16:31:33 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1181 - Directory Listing
Modified Thu Jun 12 16:29:06 2003 UTC (21 years, 8 months ago) by jonathan
(ProjFrame.__DoOnProjAvail): Set the
        projfilepath label to just the basename of the projection file
        rather than include the entire path.


Revision 1180 - Directory Listing
Modified Thu Jun 12 16:28:54 2003 UTC (21 years, 8 months ago) by jonathan
(ScaleBarBitmap.__SetScale): Don't draw
        the scalebar if the current map has no projection set.


Revision 1179 - Directory Listing
Modified Thu Jun 12 16:12:56 2003 UTC (21 years, 8 months ago) by jonathan
Fix missed proj functions that needed to be renamed.


Revision 1178 - Directory Listing
Modified Thu Jun 12 15:46:56 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1177 - Directory Listing
Modified Thu Jun 12 15:46:46 2003 UTC (21 years, 8 months ago) by jonathan
(Color): Remove commented code that isn't used.
(Transparent): Renamed from NoColor. Doesn't inherit from Color.
        Fixes RTbug #1835.
(Transparent.__eq__, Transparent.__ne, Transparent.__repr): New.
        Needed now that the class doesn't inherit from Color.


Revision 1176 - Directory Listing
Modified Thu Jun 12 15:46:22 2003 UTC (21 years, 8 months ago) by jonathan
Removed assert statements that tested if the variable was an instance of Color.


Revision 1175 - Directory Listing
Modified Thu Jun 12 13:37:39 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1174 - Directory Listing
Modified Thu Jun 12 13:37:29 2003 UTC (21 years, 8 months ago) by jonathan
Check for existence of gdal.


Revision 1173 - Directory Listing
Modified Thu Jun 12 13:37:18 2003 UTC (21 years, 8 months ago) by jonathan
(XMLWriterTest.testEncode): Explicitly check unicode strings.


Revision 1172 - Directory Listing
Modified Thu Jun 12 12:57:13 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1171 - Directory Listing
Modified Thu Jun 12 12:52:37 2003 UTC (21 years, 8 months ago) by jonathan
New. Contains the XMLWriter class that was in save.py


Revision 1170 - Directory Listing
Modified Thu Jun 12 12:52:19 2003 UTC (21 years, 8 months ago) by jonathan
New. Contains the XMLReader class that was in load.py.


Revision 1169 - Directory Listing
Modified Thu Jun 12 12:43:02 2003 UTC (21 years, 8 months ago) by jonathan
updated ChangeLog


Revision 1168 - Directory Listing
Modified Thu Jun 12 12:42:50 2003 UTC (21 years, 8 months ago) by jonathan
(SaveSessionTest.testClassifiedLayer): New
        test for saving classified layers. Fixes RTbug #1902.
(XMLWriterTest): New. Tests the XMLWriter class. Fixes RTbug #1851.


Revision 1167 - Directory Listing
Modified Thu Jun 12 12:42:34 2003 UTC (21 years, 8 months ago) by jonathan
Use renamed projection resource functions.


Revision 1166 - Directory Listing
Modified Thu Jun 12 12:42:24 2003 UTC (21 years, 8 months ago) by jonathan
Add tests for generate_singletons,
        generate_uniform_distribution, generate_quantiles. Fixes RTbug #1903.
(test_calculate_quantiles): Fix some tests to catch the new
        ValueError that is raised.


Revision 1165 - Directory Listing
Modified Thu Jun 12 12:42:10 2003 UTC (21 years, 8 months ago) by jonathan
(MapRenderer.render_map): Only try to
        optimize if a raster layer is visible. Fixes RTbug #1931.
        Only draw the raster layer if the gdal library is available.
        Addresses RTbug #1877.


Revision 1164 - Directory Listing
Modified Thu Jun 12 12:41:44 2003 UTC (21 years, 8 months ago) by jonathan
(_has_gdal_support): New. Used to
        determine if the "Add Image Layer" menu option should be
        greyed out or not. Addresses RTbug #1877.


Revision 1163 - Directory Listing
Modified Thu Jun 12 12:41:31 2003 UTC (21 years, 8 months ago) by jonathan
Use renamed projection resource functions.
(GenUniformPanel.__CalcStepping): Fix a slight discrepency
        when using integers versus floats.


Revision 1162 - Directory Listing
Modified Thu Jun 12 12:41:16 2003 UTC (21 years, 8 months ago) by jonathan
(ThubanApplication.OpenSession):
        Display a message box if the gdal library is not available, but
        only if there are any layers that would use it. Addresses RTbug #1877.


Revision 1161 - Directory Listing
Modified Thu Jun 12 12:41:01 2003 UTC (21 years, 8 months ago) by jonathan
Renamed functions to following the function_names_with_underscores style.
(has_gdal_support): New function that returns true if the gdal
        library is available. Addresses RTbug #1877.


Revision 1160 - Directory Listing
Modified Thu Jun 12 12:40:43 2003 UTC (21 years, 8 months ago) by jonathan
(escape, XMLWriter): Moved into seperate file xmlwriter.py.


Revision 1159 - Directory Listing
Modified Thu Jun 12 12:40:27 2003 UTC (21 years, 8 months ago) by jonathan
(XMLReader): Moved into seperate file xmlreader.py.


Revision 1158 - Directory Listing
Modified Thu Jun 12 12:40:11 2003 UTC (21 years, 8 months ago) by jonathan
Import gdal only if it available.
(RasterLayer): Handle the case where the gdal library is unavailable.
        Addresses RTbug #1877.


Revision 1157 - Directory Listing
Modified Thu Jun 12 12:39:54 2003 UTC (21 years, 8 months ago) by jonathan
Renamed functions to follow the
        function_names_with_underscores style. Fixes RTbug #1903.
(calculate_quantiles): Raise ValueError if 'percents' is invalid.


Revision 1156 - Directory Listing
Modified Thu Jun 12 12:17:30 2003 UTC (21 years, 8 months ago) by jan
Fix for http://intevation.de/rt/webrt?serial_num=1900.


Revision 1155 - Directory Listing
Modified Thu Jun 12 12:17:11 2003 UTC (21 years, 8 months ago) by jan
import wxMultipleChoiceDialog from multiplechoicedialog.py rather than
from the wxPython library.


Revision 1154 - Directory Listing
Modified Thu Jun 12 12:14:19 2003 UTC (21 years, 8 months ago) by jan
A multiple choice dialog.


Revision 1152 - Directory Listing
Modified Wed Jun 11 11:06:27 2003 UTC (21 years, 8 months ago) by frank
Minor stability update


Revision 1151 - Directory Listing
Modified Wed Jun 11 10:46:18 2003 UTC (21 years, 8 months ago) by frank
New determination of app data


Revision 1150 - Directory Listing
Modified Wed Jun 11 10:45:49 2003 UTC (21 years, 8 months ago) by frank
(ThubanApplication.read_startup_files): Use get_application_dir.


Revision 1149 - Directory Listing
Modified Wed Jun 11 10:45:34 2003 UTC (21 years, 8 months ago) by frank
Use get_application_dir


Revision 1148 - Directory Listing
Modified Wed Jun 11 10:45:18 2003 UTC (21 years, 8 months ago) by frank
(get_application_dir): New function to
	determine the absolute .thuban/thuban directory under
	"posix" (os.expanduser) and "nt" (read AppData registry key).


Revision 1147 - Directory Listing
Modified Tue Jun 10 12:00:45 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1146 - Directory Listing
Modified Tue Jun 10 12:00:16 2003 UTC (21 years, 8 months ago) by bh
(LayerTableFrame.__init__): Subscribe to
the messages MAP_LAYERS_REMOVED messages
(LayerTableFrame.OnClose): Unsubscribe from it.
(LayerTableFrame.map_layers_removed): New. Receiver for
MAP_LAYERS_REMOVED. Close the dialog when the layer whose the
dialog is showing is removed.


Revision 1145 - Directory Listing
Modified Tue Jun 10 11:57:15 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1144 - Directory Listing
Modified Tue Jun 10 11:56:55 2003 UTC (21 years, 8 months ago) by bh
* Thuban/Lib/connector.py (Connector.Issue): Iterate over a copy
of the receivers list so that unsubscribing in a receiver doesn't
modify it while iterating over it.

* test/test_connector.py
(ConnectorTest.test_disconnect_in_receiver): New. Test whether
unsubscribing in a receiver works correctly. See docstring for
details


Revision 1143 - Directory Listing
Modified Tue Jun 10 09:42:10 2003 UTC (21 years, 8 months ago) by bh
update ChangeLog


Revision 1142 - Directory Listing
Modified Tue Jun 10 09:41:57 2003 UTC (21 years, 8 months ago) by bh
* Thuban/Model/messages.py (LAYER_SHAPESTORE_REPLACED): New
message.

* Thuban/Model/layer.py (Layer.SetShapeStore): Send
LAYER_SHAPESTORE_REPLACED when the shapestore changes. A
LAYER_CHANGED will still be sent if the classification changes.

* Thuban/UI/classifier.py (Classifier.__init__): Add the map as
parameter so we can subscribe to some of its messages
(Classifier.__init__): Subscribe to the map's MAP_LAYERS_REMOVED
and the layer's LAYER_SHAPESTORE_REPLACED
(Classifier.unsubscribe_messages): New. Unsubscribe from message
subscribed to in __init__
(Classifier.map_layers_removed)
(Classifier.layer_shapestore_replaced): receivers for the messages
subscribed to in __init__. Unsubscribe and close the dialog

* Thuban/UI/mainwindow.py (MainWindow.OpenLayerProperties): Pass
the map to the Classifier dialog

* test/test_layer.py (SetShapeStoreTests): Derive from
SubscriberMixin as well so we can test messages
(SetShapeStoreTests.setUp): Subscribe to some of the layer's
messages
(SetShapeStoreTests.tearDown): Clear the messages again
(SetShapeStoreTests.test_sanity): Expand the doc-string and check
for the modified flag too
(SetShapeStoreTests.test_set_shape_store_modified_flag): New test
to check whether SetShapeStore sets the modified flag
(SetShapeStoreTests.test_set_shape_store_different_field_name)
(SetShapeStoreTests.test_set_shape_store_same_field)
(SetShapeStoreTests.test_set_shape_store_same_field_different_type):
Add tests for the messages. This checks both the new
LAYER_SHAPESTORE_REPLACED and the older LAYER_CHANGED


Revision 1141 - Directory Listing
Modified Fri Jun 6 11:19:25 2003 UTC (21 years, 9 months ago) by jan
improved menu help texts


Revision 1140 - Directory Listing
Modified Fri Jun 6 11:18:51 2003 UTC (21 years, 9 months ago) by jan
Improved and partly added help texts for the menu items.


Revision 1139 - Directory Listing
Modified Thu Jun 5 16:00:12 2003 UTC (21 years, 9 months ago) by frank
Layout update


Revision 1138 - Directory Listing
Modified Thu Jun 5 15:59:57 2003 UTC (21 years, 9 months ago) by frank
(IdentifyView.__init__):
	Layout reimplemented without panel. Make life easier to fit the list
	in the dialog.


Revision 1137 - Directory Listing
Modified Thu Jun 5 15:06:34 2003 UTC (21 years, 9 months ago) by frank
Projection updates


Revision 1136 - Directory Listing
Modified Thu Jun 5 15:05:36 2003 UTC (21 years, 9 months ago) by frank
Extended defaults representing various common European projections.


Revision 1135 - Directory Listing
Modified Thu Jun 5 15:05:21 2003 UTC (21 years, 9 months ago) by frank
(ProjFrame.__init__): Fill the projchoice
	once on initialisation (Former implementation resulted in multiple
	entries for each projection).
(ProjFrame.__FillAvailList): selectProj as second optional parameter,
	if set, select the projection found under the specified name. This
	overwrites any other selection estimate.
	Removed projchoice filling from this method.
(ProjFrame._OnSave, ProjFrame._OnAddToList):
	Updated call of ProjFrame.__FillAvailList
(LCCPanel._DoLayout): Moved parameter controls in more common order.


Revision 1134 - Directory Listing
Modified Thu Jun 5 13:28:04 2003 UTC (21 years, 9 months ago) by frank
Minor Updates for Win32 compliance


Revision 1133 - Directory Listing
Modified Thu Jun 5 13:27:33 2003 UTC (21 years, 9 months ago) by frank
(ThubanApplication.read_startup_files):
Guess location of .thuban directory from tempdir parent directory.


Revision 1132 - Directory Listing
Modified Thu Jun 5 13:27:17 2003 UTC (21 years, 9 months ago) by frank
Guess location of .thuban directory from tempdir parent directory.


Revision 1131 - Directory Listing
Modified Thu Jun 5 13:27:01 2003 UTC (21 years, 9 months ago) by frank
(IdentifyView.__init__): Use ListCtrl instead of GridCtrl


Revision 1130 - Directory Listing
Modified Wed Jun 4 18:37:57 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1129 - Directory Listing
Modified Wed Jun 4 18:36:52 2003 UTC (21 years, 9 months ago) by bh
(LegendTree.__init__): Remove instance
variable layer2id
(LegendTree.find_layer): New method to do with brute force what
layer2id tried to accomplish
(LegendTree._OnMsgLayerChanged)
(LegendTree._OnMsgLayerTitleChanged, LegendTree.__ShowHideLayer):
Use find_layer instead of layer2id
(LegendTree.__RemoveLayer, LegendTree.__AddLayer): No need to
update layer2id anymore
(LegendTree._OnMsgMapLayersRemoved)
(LegendTree._OnMsgMapLayersAdded): Get by without layer2id.


Revision 1128 - Directory Listing
Modified Tue Jun 3 17:00:47 2003 UTC (21 years, 9 months ago) by tkoester
* Thuban/Model/classgen.py (GenQuantiles0): New function.


Revision 1127 - Directory Listing
Modified Mon Jun 2 14:16:37 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1126 - Directory Listing
Modified Mon Jun 2 14:15:43 2003 UTC (21 years, 9 months ago) by bh
(layer_rename command, table_rename command):
New commands.
(main_menu): Add the new commands.
(MainWindow.TableRename): New. Implementation of the table_rename
command.
(MainWindow.RenameLayer): New. Implementation of the layer_rename
command.


Revision 1125 - Directory Listing
Modified Mon Jun 2 14:14:32 2003 UTC (21 years, 9 months ago) by bh
(TestSessionSimple.test_add_table): Test
whether the modified flag is set properly


Revision 1124 - Directory Listing
Modified Mon Jun 2 14:14:25 2003 UTC (21 years, 9 months ago) by bh
(Session.AddTable): call self.changed to
set the modified flag


Revision 1123 - Directory Listing
Modified Mon Jun 2 14:10:00 2003 UTC (21 years, 9 months ago) by bh
(SomeTitledObject): Derive from Modifiable
instead of Publisher to reflect reality better and to accomodate
the fact that SetTitle now calls changed instead of issue


Revision 1122 - Directory Listing
Modified Mon Jun 2 13:47:01 2003 UTC (21 years, 9 months ago) by bh
(GenQuantilesPanel.GetList): Resource
acquisition has to happen before the try in a try-finally.


Revision 1121 - Directory Listing
Modified Mon Jun 2 13:46:45 2003 UTC (21 years, 9 months ago) by bh
(TitledObject.SetTitle): Call changed
instead of issue so that the modified flags get updated.


Revision 1120 - Directory Listing
Modified Mon Jun 2 10:38:24 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1119 - Directory Listing
Modified Mon Jun 2 10:37:59 2003 UTC (21 years, 9 months ago) by bh
(LegendTree._OnMsgMapLayersRemoved): It's
possible that a layer is removed that is not currently selected in
the legend so don't check for this.


Revision 1118 - Directory Listing
Modified Fri May 30 18:31:35 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1117 - Directory Listing
Modified Fri May 30 18:31:19 2003 UTC (21 years, 9 months ago) by bh
(Layer.Destroy): Set all instance
variables to None that have direct or indirect references to
shapefiles or dbf files to make sure that they do go away and the
files are closed.


Revision 1116 - Directory Listing
Modified Fri May 30 16:30:34 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1115 - Directory Listing
Modified Fri May 30 16:30:26 2003 UTC (21 years, 9 months ago) by bh
(LegendTree.GetRootItem): Reset
availImgListIndices when a new image list is created


Revision 1114 - Directory Listing
Modified Fri May 30 15:59:58 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1113 - Directory Listing
Modified Fri May 30 15:59:49 2003 UTC (21 years, 9 months ago) by bh
(LegendTree.__init__): New instance variable
changing_selection to indicate whether the LegendTree code itself
is currently changing the selection
(LegendTree.normalize_selection): New method to normalize the
selection by selecting the layer item even if the user clicked on
the classification.
(LegendTree._OnSelChanged): normalize the selection. This works
around a bug in wx which doesn't keep track of the selection
properly when subtrees are deleted.


Revision 1112 - Directory Listing
Modified Fri May 30 09:55:04 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1111 - Directory Listing
Modified Fri May 30 09:54:48 2003 UTC (21 years, 9 months ago) by bh
(MapCanvas.set_view_transform): Limit the
maximum and minimum scale factors.


Revision 1110 - Directory Listing
Modified Fri May 30 09:46:57 2003 UTC (21 years, 9 months ago) by bh
(ClassGenTest.test): Update to reflect the
changes in classgen.py


Revision 1109 - Directory Listing
Modified Fri May 30 06:31:48 2003 UTC (21 years, 9 months ago) by jonathan
updated ChangeLog


Revision 1108 - Directory Listing
Modified Fri May 30 06:31:21 2003 UTC (21 years, 9 months ago) by jonathan
(MainWindow.ToggleLegend): Apply a full
        extent to the map when the legend is toggled. Fixes RTBug #1881.


Revision 1107 - Directory Listing
Modified Fri May 30 06:31:02 2003 UTC (21 years, 9 months ago) by jonathan
(TestMapWithContents.test_raise_layer_top,
        TestMapWithContents.test_lower_layer_bottom):
        Test Map.MoveLayerToTop() and Map.MoveLayerToBottom() respectively.
        Fixes RTBug #1907.


Revision 1106 - Directory Listing
Modified Fri May 30 06:30:43 2003 UTC (21 years, 9 months ago) by jonathan
Removed code that allowed gdalwarp
        to be compiled as a standalone app. Now the code can only be
        called from Python which simplifies the parameter passing.
(ProjectRasterFile): Handle Python arguments. Remove code that
        checks for a destination dataset. Add more clean up code.


Revision 1105 - Directory Listing
Modified Fri May 30 06:30:15 2003 UTC (21 years, 9 months ago) by jonathan
(MapCanvas.OnPaint): Wrap code
        with try/finally. Fixes RTBug #1904.
(MapCanvas.FitSelectedToWindow): If a single point is selected
        simply center it on the display. Fixes RTBug #1849.


Revision 1104 - Directory Listing
Modified Fri May 30 06:29:54 2003 UTC (21 years, 9 months ago) by jonathan
(QueryTableFrame.OnQuery): Wrap code with try/finally. Fixes RTBug #1904.


Revision 1103 - Directory Listing
Modified Fri May 30 06:29:25 2003 UTC (21 years, 9 months ago) by jonathan
(MapRenderer.draw_raster_layer): Call
        ProjectRasterFile with tuple arguments instead of strings.


Revision 1102 - Directory Listing
Modified Fri May 30 06:29:05 2003 UTC (21 years, 9 months ago) by jonathan
The legend was cleared and repopulated any
        time something changed which caused some state to be lost such
        as which children were expanded or collapsed. Fixes RTBug #1901.
(LegendTree._OnMsgMapLayersAdded): Add only new layers.
(LegendTree.__OnMsgMapLayersRemoved): Remove layers that exist in
        the legend but not in the map.
(LegendTree.__FillTree): Move main functionality out into smaller
        methods that can be used by other methods.
(LegendTree.__FillTreeLayer): Reuse old slots in the image list
        if they are available.
(LegendTree.DeleteAllItems): Renamed from __DeleteAllItems so
        that we override the wxTreeCtrl method. Iterate over children
        and call __RemoveLayer.
(LegendTree.__AddLayer): New. Add a new layer to the legend.
(LegendTree.__RemoveLayer): Remove a layer from the legend.
(LegendTree.DeleteChildren): New, overrides wxTreeCtrl method.
        Should only be called with the id of a layer branch.
(LegendTree.GetRootItem): New, overrides wxTreeCtrl method.
        Returns the root item or creates one if necessary.


Revision 1101 - Directory Listing
Modified Fri May 30 06:28:39 2003 UTC (21 years, 9 months ago) by jonathan
Remove unused import of ClassGenerator.


Revision 1100 - Directory Listing
Modified Fri May 30 06:28:21 2003 UTC (21 years, 9 months ago) by jonathan
Use classgen functions that were part
        of the ClassGenerator class. Put try/finally blocks around
        code that uses wxBeginBusyCursor()/wxEndBusyCursor(). Fixes
        RTBug #1904.


Revision 1099 - Directory Listing
Modified Fri May 30 06:28:02 2003 UTC (21 years, 9 months ago) by jonathan
(Map.TopLayer, Map.BottomLayer): Renamed
        to MoveLayerToTop and MoveLayerToBottom respectively. Fixes
        RTBug #1907.


Revision 1098 - Directory Listing
Modified Fri May 30 06:27:44 2003 UTC (21 years, 9 months ago) by jonathan
Remove ClassGenerator class but make
        all the methods functions. Fixes RTBug #1903.


Revision 1097 - Directory Listing
Modified Thu May 29 10:03:30 2003 UTC (21 years, 9 months ago) by jan
a bugfix in tableview.


Revision 1096 - Directory Listing
Modified Thu May 29 10:03:07 2003 UTC (21 years, 9 months ago) by jan
(LayerTableFrame.OnClose): Bug-fix: Now
unsubscribes all that is subcribed in __init__.


Revision 1095 - Directory Listing
Modified Wed May 28 18:59:58 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1094 - Directory Listing
Modified Wed May 28 18:59:46 2003 UTC (21 years, 9 months ago) by bh
(MainWindow.DuplicateLayer)
(MainWindow.CanDuplicateLayer): New methods to implement the
Layer/Duplicate command.
(layer_duplicate command): New.
(main_menu): Add layer_duplicate to the Layer menu.


Revision 1093 - Directory Listing
Modified Wed May 28 17:10:09 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1092 - Directory Listing
Modified Wed May 28 17:10:04 2003 UTC (21 years, 9 months ago) by bh
(NullRenderer.Draw): New. Our own
renderer so that NULL/None values get displayed differently (by a
gray rectangle).
(TableGrid.__init__): Override the default renderers


Revision 1091 - Directory Listing
Modified Wed May 28 14:34:32 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1090 - Directory Listing
Modified Wed May 28 14:34:14 2003 UTC (21 years, 9 months ago) by bh
* dbflib.i (DBFInfo_read_record): Read NULL fields as None unless
it's a string field. DBF files can't distinguish between NULL and
an empty string. Also, check the return value of
DBFReadStringAttribute which may return NULL to indicate errors.

* dbflib_wrap.c: Updated from dbflib.i


Revision 1089 - Directory Listing
Modified Wed May 28 12:42:33 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1088 - Directory Listing
Modified Wed May 28 12:42:23 2003 UTC (21 years, 9 months ago) by bh
* Thuban/Model/layer.py (Layer.SetShapeStore): Set the
classification to "None" if the type of the field has changed.

* test/test_layer.py (SetShapeStoreTests): New. Class with a few
test for the Layer.SetShapeStore method


Revision 1087 - Directory Listing
Modified Wed May 28 11:36:24 2003 UTC (21 years, 9 months ago) by jan
small bug-fix


Revision 1086 - Directory Listing
Modified Wed May 28 11:36:05 2003 UTC (21 years, 9 months ago) by jan
(Layer.TreeInfo): Fixed a bug (a layer does not necessarily have a filename).


Revision 1085 - Directory Listing
Modified Wed May 28 10:25:30 2003 UTC (21 years, 9 months ago) by jan
small GUI improvement


Revision 1084 - Directory Listing
Modified Wed May 28 10:25:09 2003 UTC (21 years, 9 months ago) by jan
(MainWindow.TableClose, MainWindow.TableShow): sort the selection list
for the dialog.


Revision 1083 - Directory Listing
Modified Wed May 28 10:04:30 2003 UTC (21 years, 9 months ago) by frank
Update wxproj


Revision 1082 - Directory Listing
Modified Wed May 28 10:03:55 2003 UTC (21 years, 9 months ago) by frank
(project_point): Removed cast to int for projected point coordinates.
(shape_centroid): Return last point if all polygon vertices fall
	to one point.


Revision 1081 - Directory Listing
Modified Wed May 28 09:12:25 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1080 - Directory Listing
Modified Wed May 28 09:12:21 2003 UTC (21 years, 9 months ago) by bh
(_can_unjoin): Add doc-string and cope
with layers that don't have shapestores, i.e. raster layers.


Revision 1079 - Directory Listing
Modified Wed May 28 09:07:53 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1078 - Directory Listing
Modified Wed May 28 09:07:30 2003 UTC (21 years, 9 months ago) by bh
* Thuban/Model/table.py (DBFTable.__init__): Omit the extension
when determining the title from the filename.

* test/test_dbf_table.py (TestDBFTable.test_title): Update to
reflect changes in the way the title is derived from the filename


Revision 1077 - Directory Listing
Modified Wed May 28 08:25:34 2003 UTC (21 years, 9 months ago) by frank
UI update


Revision 1076 - Directory Listing
Modified Wed May 28 08:25:12 2003 UTC (21 years, 9 months ago) by frank
(MainWindow.TableShow) Added wxDEFAULT_DIALOG_STYLE to show table dialog styles.


Revision 1075 - Directory Listing
Modified Tue May 27 17:39:54 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1074 - Directory Listing
Modified Tue May 27 17:39:43 2003 UTC (21 years, 9 months ago) by bh
* Thuban/UI/mainwindow.py (MainWindow.delegated_messages): Also
delegate SelectedLayer.
(MainWindow.LayerUnjoinTable): Implement.
(_can_unjoin): New. Helper function for the sensitivity of the
layer/unjoin command.

* Thuban/Model/data.py (ShapefileStore.OrigShapeStore)
(DerivedShapeStore.OrigShapeStore): New. Return the original
shapestore. Used to figure out how to unjoin.
(DerivedShapeStore.Shapefile): Fix a typo.


Revision 1073 - Directory Listing
Modified Tue May 27 16:48:01 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1072 - Directory Listing
Modified Tue May 27 16:47:48 2003 UTC (21 years, 9 months ago) by bh
* Thuban/UI/join.py (JoinDialog): Extend to handle layer joins as
well
(JoinDialog.__init__): Use the layer parameter and only build the
left choice when a layer is given
(JoinDialog.OnJoin): Handle layer joins as well
(JoinDialog.OnLeftTable, JoinDialog.OnRightTable): Handle the case
that the user selects the "Select..." item. The sensitivitly
updating is now in update_sensitivity
(JoinDialog.y): New method to refactor the sensitivity update of
the join button into its own method.

* Thuban/UI/mainwindow.py (MainWindow.LayerJoinTable): Implement.


Revision 1071 - Directory Listing
Modified Tue May 27 15:09:48 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1070 - Directory Listing
Modified Tue May 27 15:09:31 2003 UTC (21 years, 9 months ago) by bh
* Thuban/UI/mainwindow.py (table_close command): Make it sensitive
iff there are unreferenced tables in the session


Revision 1069 - Directory Listing
Modified Tue May 27 15:02:48 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1068 - Directory Listing
Modified Tue May 27 15:02:37 2003 UTC (21 years, 9 months ago) by bh
* Thuban/Model/messages.py (TABLE_REMOVED): New message.

* Thuban/Model/session.py (Session.UnreferencedTables): New method
to return tables that are not referenced by other tables or shape
stores and can be removed.
(Session.RemoveTable): Issue a TABLE_REMOVED message after
removing the table

* Thuban/UI/mainwindow.py: Remove unused imports
(MainWindow.TableClose): Implement.

* Thuban/UI/tableview.py (TableFrame.__init__): Subscribe to some
messages so that the frame will be automatically closed when a new
session is opened or the table is removed.
(TableFrame.OnClose): Unsubscribe the Subscriptions made in
__init__
(TableFrame.close_on_session_replaced)
(TableFrame.close_on_table_removed): New. Subscribers that close
the window

* test/test_session.py (TestSessionMessages.test_remove_table)
(TestSessionSimple.test_remove_table): Move the test to
TestSessionSimple and add test for the TABLE_REMOVED message
(TestSessionBase.setUp): Also subscribe to TABLE_REMOVED
(TestSessionSimple.test_unreferenced_tables) New. Test for the
UnreferencedTables method.
(UnreferencedTablesTests): New. Class with some more sophisticated
tests for UnreferencedTables.


Revision 1067 - Directory Listing
Modified Tue May 27 14:18:26 2003 UTC (21 years, 9 months ago) by frank
Keyboard navigation update


Revision 1066 - Directory Listing
Modified Tue May 27 14:18:05 2003 UTC (21 years, 9 months ago) by frank
(QueryTableFrame.__init__): The "_S_election" display has some unwanted side
effects. Removed again.


Revision 1065 - Directory Listing
Modified Tue May 27 14:10:33 2003 UTC (21 years, 9 months ago) by frank
Legend display update


Revision 1064 - Directory Listing
Modified Tue May 27 14:09:01 2003 UTC (21 years, 9 months ago) by frank
New, icon for legend.


Revision 1063 - Directory Listing
Modified Tue May 27 14:08:28 2003 UTC (21 years, 9 months ago) by frank
(LegendTree.__FillTree): Use 'legend_icon_layer'


Revision 1062 - Directory Listing
Modified Tue May 27 13:11:40 2003 UTC (21 years, 9 months ago) by jan
extended API of class Menu


Revision 1061 - Directory Listing
Modified Tue May 27 13:11:18 2003 UTC (21 years, 9 months ago) by jan
(Menu.RemoveItem): New. Remove an item from the menu.


Revision 1060 - Directory Listing
Modified Tue May 27 13:10:08 2003 UTC (21 years, 9 months ago) by jan
(MenuTest.test): Added test for Menu.RemoveItem().


Revision 1059 - Directory Listing
Modified Tue May 27 11:30:46 2003 UTC (21 years, 9 months ago) by frank
Nonmodal dialogs without parent (i.e. they can fall behind the main window)


Revision 1058 - Directory Listing
Modified Tue May 27 11:30:29 2003 UTC (21 years, 9 months ago) by frank
Dialog derived from NonModalNonParentDialog


Revision 1057 - Directory Listing
Modified Tue May 27 11:30:02 2003 UTC (21 years, 9 months ago) by frank
(NonModalNonParentDialog): New class, without
	parent, i.e. can fall behind other windows.
(NonModalDialog.OnClose): Check is dialog is in mainwindow.dialog
	dictionary before removing it.


Revision 1056 - Directory Listing
Modified Tue May 27 11:29:46 2003 UTC (21 years, 9 months ago) by frank
(MainWindow.OnClose): Explicitly destroy all dialogs in the dialogs
dictionary and the canvas.


Revision 1055 - Directory Listing
Modified Tue May 27 10:38:25 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1054 - Directory Listing
Modified Tue May 27 10:38:16 2003 UTC (21 years, 9 months ago) by bh
(MainWindow.ShowTableView): New. Open a
tableview dialog
(MainWindow.TableShow): Use ShowTableView to open the dialogs.
Also, don't use the table's titles as the dialog names. The titles
aren't guaranteed to be unique.
(MainWindow.TableOpen): Open a table view dialog after opening the
table


Revision 1053 - Directory Listing
Modified Tue May 27 09:34:40 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1052 - Directory Listing
Modified Tue May 27 09:34:28 2003 UTC (21 years, 9 months ago) by bh
Remove the Table/Hide menu item. Its
effect can be achieved by simply closing the window showing the
table.
(MainWindow.TableHide): Removed.
(main_menu): Removed "table_hide"


Revision 1051 - Directory Listing
Modified Tue May 27 09:32:07 2003 UTC (21 years, 9 months ago) by frank
Fix legend tree display problems under Win32


Revision 1050 - Directory Listing
Modified Tue May 27 09:31:13 2003 UTC (21 years, 9 months ago) by frank
BMP_SIZE_W = 15
(LegendTree.__FillTree): Display "legend_icon_map.xpm" with layer title.
(LegendTree.__FillTreeLayer): Explicitely set SelectedImage.


Revision 1049 - Directory Listing
Modified Tue May 27 09:30:50 2003 UTC (21 years, 9 months ago) by frank
New icon for legend.


Revision 1048 - Directory Listing
Modified Tue May 27 08:05:14 2003 UTC (21 years, 9 months ago) by jan
small extension of the Menu API


Revision 1047 - Directory Listing
Modified Tue May 27 08:04:44 2003 UTC (21 years, 9 months ago) by jan
(Menu.InsertSeparator): Additional optional parameter
'after' now allows to insert separators almost anywhere in the menu.


Revision 1046 - Directory Listing
Modified Tue May 27 06:54:29 2003 UTC (21 years, 9 months ago) by frank
UI update


Revision 1045 - Directory Listing
Modified Tue May 27 06:54:03 2003 UTC (21 years, 9 months ago) by frank
(QueryTableFrame.__init__): Underline the "S" of selection box label to
	hint on hot key (Alt-S). Works under Win32 but is ignored under GTK.


Revision 1044 - Directory Listing
Modified Mon May 26 19:27:40 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1043 - Directory Listing
Modified Mon May 26 19:27:15 2003 UTC (21 years, 9 months ago) by bh
Remove the Precision methods again. They're too DBF specific to be
part of the table interface and they're only used in table_to_dbf
anyway.

* Thuban/Model/transientdb.py (TransientTableBase.Width):Use a
fixed precision of 12 for doubles.
(TransientTableBase.Precision): Removed
(AutoTransientTable.Width): Delegate to self.table.

* Thuban/Model/table.py (DBFTable.Precision)
(MemoryTable.Precision): Removed.
(MemoryTable.Width): Use a fixed precision of 12 for doubles.
(table_to_dbf): Use a fixed precision of 12 for floats unless the
column object specifies something else.


Revision 1042 - Directory Listing
Modified Mon May 26 19:26:49 2003 UTC (21 years, 9 months ago) by bh
(TestTableToDBF.test_table_to_dbf): New.
test for table_to_dbf


Revision 1041 - Directory Listing
Modified Mon May 26 19:26:41 2003 UTC (21 years, 9 months ago) by bh
(TestTransientTable.run_iceland_political_tests): Fix a comment.


Revision 1040 - Directory Listing
Modified Mon May 26 17:31:33 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1039 - Directory Listing
Modified Mon May 26 17:31:24 2003 UTC (21 years, 9 months ago) by bh
(TestSessionSimple.test_open_table_file):
New. test case for OpenTableFile


Revision 1038 - Directory Listing
Modified Mon May 26 17:30:54 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1037 - Directory Listing
Modified Mon May 26 17:30:43 2003 UTC (21 years, 9 months ago) by bh
(MainWindow.TableOpen): Real
implementation. Mark parts of the file format strings for
localization.


Revision 1036 - Directory Listing
Modified Mon May 26 17:30:29 2003 UTC (21 years, 9 months ago) by bh
(Session.OpenTableFile): New. Open a dbf
file and add the table to the tables managed by the session


Revision 1035 - Directory Listing
Modified Mon May 26 17:03:08 2003 UTC (21 years, 9 months ago) by jan
Replace the true/false of wxWindows by True/False of Python 2.2.1.


Revision 1034 - Directory Listing
Modified Mon May 26 16:28:33 2003 UTC (21 years, 9 months ago) by frank
(ProjFrame.__do_layout, ProjPanel._DoLayout): Center Choices.


Revision 1033 - Directory Listing
Modified Mon May 26 15:33:51 2003 UTC (21 years, 9 months ago) by jan
two small GUI improvements


Revision 1032 - Directory Listing
Modified Mon May 26 15:33:20 2003 UTC (21 years, 9 months ago) by jan
(LayerTableFrame.__init__): If there is already a selection present,
update the grid accordingly.


Revision 1031 - Directory Listing
Modified Mon May 26 15:33:02 2003 UTC (21 years, 9 months ago) by jan
(MainWindow.TableShow): Make the dialog resizeable and increase its
initial size.


Revision 1030 - Directory Listing
Modified Mon May 26 11:48:12 2003 UTC (21 years, 9 months ago) by frank
Table export functionality


Revision 1029 - Directory Listing
Modified Mon May 26 11:48:00 2003 UTC (21 years, 9 months ago) by frank
Test table_to_csv.


Revision 1028 - Directory Listing
Modified Mon May 26 11:47:37 2003 UTC (21 years, 9 months ago) by frank
Test table_to_dbf (extension of former part of test).


Revision 1027 - Directory Listing
Modified Mon May 26 11:47:17 2003 UTC (21 years, 9 months ago) by frank
(QueryTableFrame.OnSaveAs): Call table_to_dbf or table_to_csv depending on
	file selection.


Revision 1026 - Directory Listing
Modified Mon May 26 11:46:42 2003 UTC (21 years, 9 months ago) by frank
TrannsientTableBase.Width, TransientTableBase.Precision):
Return column width and precision.


Revision 1025 - Directory Listing
Modified Mon May 26 11:46:17 2003 UTC (21 years, 9 months ago) by frank
(DBFTable.Width, MemoryTable.Width):
	Return width (in characters) for a column.
(DBFTable.Precision, MemoryTable.Precision): Return decimal precision.
(table_to_dbf): Write table to dbf file.
(table_to_csv): Write table to csv file.


Revision 1024 - Directory Listing
Modified Fri May 23 14:20:52 2003 UTC (21 years, 9 months ago) by jan
two small GUI fixes


Revision 1023 - Directory Listing
Modified Fri May 23 14:20:16 2003 UTC (21 years, 9 months ago) by jan
(MainWindow.LayerShowTable): Prefix the table window with 'Layer Table:'
instead of 'Table:'.


Revision 1022 - Directory Listing
Modified Fri May 23 14:17:50 2003 UTC (21 years, 9 months ago) by jan
(JoinDialog.OnJoin): Use _() for strings.  Use QueryTableFrame instead of
TableFrame.


Revision 1021 - Directory Listing
Modified Fri May 23 13:03:50 2003 UTC (21 years, 9 months ago) by jan
Give all tables a title via mix-in TitledObject.


Revision 1020 - Directory Listing
Modified Fri May 23 13:03:07 2003 UTC (21 years, 9 months ago) by jan
(TransientTable, TransientJoinedTable, AutoTransientTable): mix-in
TitledObject and call its init-method with a default title. Remove
Title() method.


Revision 1019 - Directory Listing
Modified Fri May 23 12:56:34 2003 UTC (21 years, 9 months ago) by jan
(DBFTable, MemoryTable): mix-in TitledObject and call its init-method with
a default title. Remove Title() method.


Revision 1018 - Directory Listing
Modified Fri May 23 12:54:24 2003 UTC (21 years, 9 months ago) by jan
(TitledObject.SetTitle): Call method 'issue' only if it exists.


Revision 1017 - Directory Listing
Modified Fri May 23 11:06:14 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1016 - Directory Listing
Modified Fri May 23 11:05:59 2003 UTC (21 years, 9 months ago) by bh
* Thuban/Model/session.py (Session.AddShapeStore): Define
AddShapeStore analogously to AddTable.

* test/test_session.py (TestSessionSimple.test_add_shapestore):
New. Test for AddShapeStore


Revision 1015 - Directory Listing
Modified Fri May 23 09:26:40 2003 UTC (21 years, 9 months ago) by jan
Introducing QueryTableFrame and a very coarse ShowTable implementation.


Revision 1014 - Directory Listing
Modified Fri May 23 09:26:23 2003 UTC (21 years, 9 months ago) by jan
(MainWindow.TableShow): A very coarse implementation that still needs work.


Revision 1013 - Directory Listing
Modified Fri May 23 09:18:28 2003 UTC (21 years, 9 months ago) by jan
(LayerTableFrame, QueryTableFrame): Split the class LayerTableFrame into
two classes, LayerTableFrame and QueryTableFrame.
The latter implements the selection GUI without dependency on a layer.
LayerTableFrame now is derived from QueryTableFrame and connects
to a layer.


Revision 1012 - Directory Listing
Modified Fri May 23 09:13:58 2003 UTC (21 years, 9 months ago) by jan
(Layer.TreeInfo): Added filename.


Revision 1011 - Directory Listing
Modified Fri May 23 08:27:45 2003 UTC (21 years, 9 months ago) by frank
Outer Join added to tabla management


Revision 1010 - Directory Listing
Modified Fri May 23 08:27:20 2003 UTC (21 years, 9 months ago) by frank
(JoinDialog.__init__): Checkbox for outer join.
(JoinDialog.OnJoin): Consider outer join check box.


Revision 1009 - Directory Listing
Modified Fri May 23 08:26:58 2003 UTC (21 years, 9 months ago) by frank
(TransientJoinedTable.__init__):
	Added "outer_join = False" as optional parameter.
(TransientJoinedTable.create): If outer join is true, perform a
	"LEFT OUTER JOIN" instead of "JOIN", which preserves all records of
	the left table. Records not matching are filled with 0 / None.


Revision 1008 - Directory Listing
Modified Thu May 22 20:08:12 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1007 - Directory Listing
Modified Thu May 22 20:08:02 2003 UTC (21 years, 9 months ago) by bh
(JoinDialog.OnJoin): Use exc_info in a
somewhat safer way. Storing the traceback in a local variable can
lead to memory leaks


Revision 1006 - Directory Listing
Modified Thu May 22 20:01:54 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 1005 - Directory Listing
Modified Thu May 22 20:01:50 2003 UTC (21 years, 9 months ago) by bh
(JoinDialog.OnJoin): Make sure to really call
the wxMessageDialog's Destroy() method.


Revision 1004 - Directory Listing
Modified Thu May 22 19:46:57 2003 UTC (21 years, 9 months ago) by frank
Join Dialog update.


Revision 1003 - Directory Listing
Modified Thu May 22 19:46:34 2003 UTC (21 years, 9 months ago) by frank
(JoinDialog.__init__): Make use of TransientTable.Title()


Revision 1002 - Directory Listing
Modified Thu May 22 19:41:57 2003 UTC (21 years, 9 months ago) by frank
(TransientJoinedTable.__doc__): Typo fixed.


Revision 1001 - Directory Listing
Modified Thu May 22 19:40:27 2003 UTC (21 years, 9 months ago) by frank
(MainWindow.TableJoin): Removed print.


Revision 1000 - Directory Listing
Modified Thu May 22 19:40:06 2003 UTC (21 years, 9 months ago) by frank
(JoinDialog): Functional implementation of
	former framework. Renamed Table1/Table2 to LeftTable/RightTable
	in all occurences.


Revision 999 - Directory Listing
Modified Thu May 22 19:29:50 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 998 - Directory Listing
Modified Thu May 22 19:29:39 2003 UTC (21 years, 9 months ago) by bh
Give the tables titles so that the GUI can display more meaningful
names. For now the titles are fixed but depend on e.g. filenames
or the titles of the joined tables.

* Thuban/Model/transientdb.py (TransientTable.Title)
(TransientJoinedTable.Title, AutoTransientTable.Title): New.

* Thuban/Model/table.py (DBFTable.Title, MemoryTable.Title): New.

* test/test_transientdb.py
(TestTransientTable.test_auto_transient_table_title): New. Test
for the Title method
(TestTransientTable.test_transient_joined_table)
(TestTransientTable.test_transient_table): Add test for the Title
methods

* test/test_memory_table.py (TestMemoryTable.test_title): New.
Test for the Title method

* test/test_dbf_table.py (TestDBFTable.test_title): New. Test for
the Title method


Revision 997 - Directory Listing
Modified Thu May 22 18:21:23 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 996 - Directory Listing
Modified Thu May 22 18:21:10 2003 UTC (21 years, 9 months ago) by bh
* test/test_layer.py (TestLayer.setUp, TestLayer.tearDown):
Provide a better way to destroy the layers
(TestLayer.test_base_layer, TestLayer.test_arc_layer)
(TestLayer.test_point_layer, TestLayer.test_empty_layer)
(TestLayer.test_polygon_layer, TestLayer.test_get_field_type): Use
the new way to destroy the layers.
(TestLayer.test_derived_store): New. Test for using a layer with a
DerivedShapeStore

* Thuban/Model/layer.py (Layer.SetShapeStore): Only set the
filename if the shape store actually has one.


Revision 995 - Directory Listing
Modified Thu May 22 18:05:25 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 994 - Directory Listing
Modified Thu May 22 18:05:16 2003 UTC (21 years, 9 months ago) by bh
* Thuban/Model/table.py (DBFTable.FileName): New. Accessor method
for the filename

* test/test_dbf_table.py (TestDBFTable.test_filename): New. Test
for the FileName method
(TestDBFTableWriting.test_write): Fix spelling of filename


Revision 993 - Directory Listing
Modified Thu May 22 16:54:04 2003 UTC (21 years, 9 months ago) by tkoester
* Thuban/Model/range.py, test/test_range.py: Brought over new Range
from SciParam that now really is immutable.


Revision 992 - Directory Listing
Modified Thu May 22 16:53:20 2003 UTC (21 years, 9 months ago) by frank
Layer Top/Bottom placement added to legend.


Revision 991 - Directory Listing
Modified Thu May 22 16:51:44 2003 UTC (21 years, 9 months ago) by frank
(Map.TopLayer(), Map.BottomLayer()): New, place
	layer at top/bottom of layer stack.


Revision 990 - Directory Listing
Modified Thu May 22 16:51:24 2003 UTC (21 years, 9 months ago) by frank
(LegendPanel._OnMoveTop(), LayerPanel._OnMoveBottom): New, methods
	bound to tool events.
(LegendTree.MoveCurrentItemTop(), LegendTree.MoveCurrentItemBottom):
	New, methods binding the event methods with the map methods.


Revision 989 - Directory Listing
Modified Thu May 22 16:51:03 2003 UTC (21 years, 9 months ago) by frank
New button icon


Revision 988 - Directory Listing
Modified Thu May 22 16:46:23 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 987 - Directory Listing
Modified Thu May 22 16:46:14 2003 UTC (21 years, 9 months ago) by bh
* Thuban/Model/session.py (Session.RemoveTable): New method to
remove tables

* test/test_session.py (TestSessionSimple.test_remove_table): New.
Test for RemoveTable


Revision 986 - Directory Listing
Modified Thu May 22 16:41:10 2003 UTC (21 years, 9 months ago) by tkoester
* Thuban/Model/classgen.py: Added short module doc string and CVS id.
(ClassGenerator.GenUniformDistribution): Use new Range __init__, too.


Revision 985 - Directory Listing
Modified Thu May 22 16:38:01 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 984 - Directory Listing
Modified Thu May 22 16:37:48 2003 UTC (21 years, 9 months ago) by bh
Implement a way to discover dependencies between tables and
shapestores.

* Thuban/Model/transientdb.py (TransientTableBase.Dependencies)
(TransientJoinedTable.Dependencies)
(AutoTransientTable.SimpleQuery): New. Implement the dependencies
interface
(TransientJoinedTable.__init__): Keep tack of the original table
objects in addition to the corresponding transient tables.

* Thuban/Model/table.py (DBFTable.Dependencies)
(MemoryTable.Dependencies): New. Implement the dependencies
interface

* Thuban/Model/data.py (ShapeTable): New. Helper class for
ShapefileStore
(ShapefileStore.__init__): Use ShapeTable instead of
AutoTransientTable
(ShapefileStore.Table, ShapefileStore.Shapefile): Add doc-strings
(ShapefileStore.FileName, ShapefileStore.FileType): New. Accessor
methods for filename and type
(ShapefileStore.Dependencies): New. Implement the dependencies
interface
(DerivedShapeStore): New class to replace SimpleStore. The main
difference to SimpleStore is that it depends not on a shapefile
but another shapestore which expresses the dependencies a bit
better
(SimpleStore.__init__): Add deprecation warning.

* test/test_dbf_table.py (TestDBFTable.test_dependencies): New.
Test for the Dependencies method.

* test/test_memory_table.py (TestMemoryTable.test_dependencies):
New. Test for the Dependencies method.

* test/test_transientdb.py
(TestTransientTable.test_auto_transient_table_dependencies): New.
Test for the Dependencies method.
(TestTransientTable.test_transient_joined_table): Add test for the
Dependencies method.

* test/test_session.py (TestSessionSimple.setUp)
(TestSessionSimple.tearDown): New. Implement a better way to
destroy the sessions.
(TestSessionSimple.test_initial_state)
(TestSessionSimple.test_add_table): Bind session to self.session
so that it's destroyed by tearDown
(TestSessionSimple.test_open_shapefile): New. Test for
OpenShapefile and the object it returns


Revision 983 - Directory Listing
Modified Thu May 22 12:02:30 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 982 - Directory Listing
Modified Thu May 22 12:02:15 2003 UTC (21 years, 9 months ago) by bh
* Thuban/Model/session.py (Session.AddTable): New method to
register tables with the session.
(Session.Tables): Return the tables registered with AddTable too.

* test/test_session.py (TestSessionSimple.test_add_table): New.
Test case for the AddTable method


Revision 981 - Directory Listing
Modified Thu May 22 11:41:31 2003 UTC (21 years, 9 months ago) by frank
UI polishing updates: Place main buttons (OK, Cancel, etc) in the
	lower right corner, center labels for selections, initialize controls
	in reasonable order for keyboard navigation.


Revision 980 - Directory Listing
Modified Thu May 22 11:41:14 2003 UTC (21 years, 9 months ago) by frank
(LegendTree.__SetVisibilityStyle): Only gray out
	the text if not visible. The italic font sometimes exceeds the
	rendering area.


Revision 979 - Directory Listing
Modified Thu May 22 11:40:59 2003 UTC (21 years, 9 months ago) by frank
(LayerTableFrame.__init__): Rename 'Save As'
	Button to 'Export'. Center Buttons in Selection Box, set Focus to
	Grid.
(LayerTableFrame.OnKeyDown()): New, bound to the grid with EVT_KEY_DOWN,
	changes focus to the Selection when pressing "Alt-S".


Revision 978 - Directory Listing
Modified Thu May 22 11:40:32 2003 UTC (21 years, 9 months ago) by frank
UI polishing updates: Place main buttons (OK, Cancel, etc) in the
lower right corner, center labels for selections, initialize controls
in reasonable order for keyboard navigation.
(ClassGenDialog.__DoOnGenTypeSelect): Moved initialization of the
	different classification types from here to __init__.
(GenUniquePanel.__init__): Set the column width of the first field
	in the Field ListCtrl to the full width.


Revision 977 - Directory Listing
Modified Thu May 22 11:39:51 2003 UTC (21 years, 9 months ago) by frank
(Classifier.__init__, SelectPropertiesDialog.__init__)
	UI polishing updates: Place main buttons (OK, Cancel, etc) in the
	lower right corner, center labels for selections, initialize controls
	in reasonable order for keyboard navigation.


Revision 976 - Directory Listing
Modified Thu May 22 11:39:31 2003 UTC (21 years, 9 months ago) by frank
(ProjFrame.__init__, ProjFrame.__doLayout):
	UI polishing updates: Place main buttons (OK, Cancel, etc) in the
	lower right corner, center labels for selections, initialize controls
	in reasonable order for keyboard navigation.
(ProjFrame.__DoOnProjAvail): Determine position of current projection
	using the wxListBox.FindString() method. Still a problem (#1886)


Revision 975 - Directory Listing
Modified Wed May 21 17:39:51 2003 UTC (21 years, 9 months ago) by jonathan
updated ChangeLog


Revision 974 - Directory Listing
Modified Wed May 21 17:39:43 2003 UTC (21 years, 9 months ago) by jonathan
(MainWindow.OnClose): Call DockFrame.OnClose, not DockFrame._OnClose.


Revision 973 - Directory Listing
Modified Wed May 21 17:39:31 2003 UTC (21 years, 9 months ago) by jonathan
(DockFrame): Rename references to _OnClose
        to OnClose so that Thuban closes correctly.


Revision 972 - Directory Listing
Modified Wed May 21 17:32:05 2003 UTC (21 years, 9 months ago) by jonathan
updated ChangeLog


Revision 971 - Directory Listing
Modified Wed May 21 17:26:40 2003 UTC (21 years, 9 months ago) by jonathan
updated ChangeLog


Revision 970 - Directory Listing
Modified Wed May 21 17:25:35 2003 UTC (21 years, 9 months ago) by jonathan
Copied over tests from SciParam. Removed
        tests against importing. Fixes RTBug #1867.


Revision 969 - Directory Listing
Modified Wed May 21 17:25:16 2003 UTC (21 years, 9 months ago) by jonathan
Improved the error handling
        and passed GDAL messages back up to the Python layer. Also
        tried to fix some memory leaks that were present in the original
        utility but didn't matter because the program aborted.


Revision 968 - Directory Listing
Modified Wed May 21 17:25:05 2003 UTC (21 years, 9 months ago) by jonathan
(MFILEClose): Make sure
        to set the MFILEReceiver attributes even if the data is NULL.


Revision 967 - Directory Listing
Modified Wed May 21 17:24:54 2003 UTC (21 years, 9 months ago) by jonathan
 Added checks against if scale == 0. This
        is a serious problem that can occur when an image without
        geo data is loading and causes the map projection bounds to
        go to infinity. Right now, the solution is to simply try
        to recover.


Revision 966 - Directory Listing
Modified Wed May 21 17:24:40 2003 UTC (21 years, 9 months ago) by jonathan
(TableGrid.__init__): Call
        ToggleEventListeners to turn on listening.
(TableGrid.ToggleEventListeners): New. Turns event listening on
        and off so as to prevent excessive messages.
(LayerTableFrame.OnQuery): Use TableGrid.ToggleEventListeners
        to suppress excessive messages when selecting many rows.
        Fixes RTBug #1880.


Revision 965 - Directory Listing
Modified Wed May 21 17:24:22 2003 UTC (21 years, 9 months ago) by jonathan
(MapRenderer.render_map): Check if scale
        has gone to 0 which is a serious problem. abort.
(MapRenderer.draw_raster_layer): Catch IOError seperately and
        print the error from GDAL.


Revision 964 - Directory Listing
Modified Wed May 21 17:24:09 2003 UTC (21 years, 9 months ago) by jonathan
(GeoPanel.__init__): Put Degrees as
        the first item in choices. Fixes RTBug #1882.


Revision 963 - Directory Listing
Modified Wed May 21 17:23:53 2003 UTC (21 years, 9 months ago) by jonathan
(MainWindow.AddLayer): Move OpenShapefile
        into try block. AddLayer doesn't throw any exceptions anymore.
(MainWindow.AddRasterLayer): Move constructor of RasterLayer into
        try block.


Revision 962 - Directory Listing
Modified Wed May 21 17:23:39 2003 UTC (21 years, 9 months ago) by jonathan
Brought over new Range from SciParam that
        is immutable and has an __init__ which can accept floats.


Revision 961 - Directory Listing
Modified Wed May 21 17:23:25 2003 UTC (21 years, 9 months ago) by jonathan
(RasterLayer.__init__): Test if the filename is a valid image file.
        Throw IOError otherwise.


Revision 960 - Directory Listing
Modified Wed May 21 17:23:11 2003 UTC (21 years, 9 months ago) by jonathan
(ClassGroupRange.SetRange): Use new Range ___init__ to pass floats.


Revision 959 - Directory Listing
Modified Wed May 21 17:22:58 2003 UTC (21 years, 9 months ago) by jonathan
(ClassGenerator.GenQuantiles): Remove
        references to 'inf' and use new Range __init__ to pass floats
        directly rather than converting them to strings first.
        Fixes RTBug #1876.


Revision 958 - Directory Listing
Modified Wed May 21 17:12:30 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 957 - Directory Listing
Modified Wed May 21 17:12:22 2003 UTC (21 years, 9 months ago) by bh
Remove unused imports and restructure the
test code
(LoadSessionTest): Split into one class for each test and turn
LoadSessionTest itself into the base class for all such session
tests.
(ClassificationTest): New base class for load tests that test
classifications
(TestSingleLayer, TestLayerVisibility, TestClassification)
(TestLabels, TestLayerProjection, TestRasterLayer): New classes
for the individual tests


Revision 956 - Directory Listing
Modified Wed May 21 17:11:17 2003 UTC (21 years, 9 months ago) by bh
(FileLoadTestCase.filename): New base class for
file loading tests


Revision 955 - Directory Listing
Modified Wed May 21 15:55:43 2003 UTC (21 years, 9 months ago) by jan
small data improvements


Revision 954 - Directory Listing
Modified Wed May 21 15:55:17 2003 UTC (21 years, 9 months ago) by jan
political polygon now filled transparent to have the raster image visible
at once.


Revision 953 - Directory Listing
Modified Wed May 21 15:53:25 2003 UTC (21 years, 9 months ago) by jan
Renamed 'Universal Transverse Mercator' to 'UTM Zone 32' as a more
convenient example.
Added 'Gauss Krueger Zone 6'.


Revision 952 - Directory Listing
Modified Wed May 21 14:21:23 2003 UTC (21 years, 9 months ago) by frank
BugFix: Sync method names with extension expectaions.


Revision 951 - Directory Listing
Modified Wed May 21 14:20:32 2003 UTC (21 years, 9 months ago) by frank
(MainWindow): Renamed _OnClose() back to OnClose() to keep in sync
with extensions. Internally Thuban still uses "underscored" names.


Revision 950 - Directory Listing
Modified Tue May 20 16:12:22 2003 UTC (21 years, 9 months ago) by jonathan
Add include to make sure that some definitions exist.


Revision 949 - Directory Listing
Modified Tue May 20 15:27:40 2003 UTC (21 years, 9 months ago) by jonathan
updated ChangeLog


Revision 948 - Directory Listing
Modified Tue May 20 15:27:31 2003 UTC (21 years, 9 months ago) by jonathan
(TestTransientTable.test_auto_transient_table_query): Added a test
        for using a Column object as the "right" parameter to a query.


Revision 947 - Directory Listing
Modified Tue May 20 15:27:19 2003 UTC (21 years, 9 months ago) by jonathan
Added tests associated with the raster layer code.


Revision 946 - Directory Listing
Modified Tue May 20 15:27:00 2003 UTC (21 years, 9 months ago) by jonathan
Added rasterlayer attribute definition.


Revision 945 - Directory Listing
Modified Tue May 20 15:26:54 2003 UTC (21 years, 9 months ago) by jonathan
New. Raster layer image data.


Revision 944 - Directory Listing
Modified Tue May 20 15:26:28 2003 UTC (21 years, 9 months ago) by jonathan
New. Sample file that uses a raster layer.


Revision 943 - Directory Listing
Modified Tue May 20 15:26:17 2003 UTC (21 years, 9 months ago) by jonathan
New, but basically a direct copy
        of the gdalwarp utility provided in GDAL. Added function calls
        that can be accessed from python.


Revision 942 - Directory Listing
Modified Tue May 20 15:26:04 2003 UTC (21 years, 9 months ago) by jonathan
New. Provides IO routines which write to memory, rather than a file.


Revision 941 - Directory Listing
Modified Tue May 20 15:25:45 2003 UTC (21 years, 9 months ago) by jonathan
New, but copied from GDAL.  Provides a driver to output in .bmp format.


Revision 940 - Directory Listing
Modified Tue May 20 15:25:33 2003 UTC (21 years, 9 months ago) by jonathan
(MapCanvas.set_view_transform): Try to limit
        how small the scale can get. This still needs more testing.


Revision 939 - Directory Listing
Modified Tue May 20 15:25:22 2003 UTC (21 years, 9 months ago) by jonathan
(LayerTableFrame.__init__): Change the
        Choices symbols to match those used in the table query method.
        Replace deprecated method calls on table with new method names.


Revision 938 - Directory Listing
Modified Tue May 20 15:25:10 2003 UTC (21 years, 9 months ago) by jonathan
(MapRenderer.render_map): Add support for rendering RasterLayer layers.
(MapRenderer.draw_raster_layer): Actually method that calls
        the GDALWarp python wrapper and constructs an image from the
        data returned.


Revision 937 - Directory Listing
Modified Tue May 20 15:24:51 2003 UTC (21 years, 9 months ago) by jonathan
(MainWindow.NewSession, MainWindow.OpenSession):
        Don't proceed with an action if the
        user chooses Cancel when they are asked to save changes.
(MainWindow.AddRasterLayer): New. Open a dialog to allow the
        user to select an image file. Create a new RasterLayer and add
        it to the map.


Revision 936 - Directory Listing
Modified Tue May 20 15:24:32 2003 UTC (21 years, 9 months ago) by jonathan
Change all checks that a layer is an
        instance of Layer into checks against BaseLayer.
(LegendTree.__FillTreeLayer): Only add children to a branch if
        the layer supports classification.


Revision 935 - Directory Listing
Modified Tue May 20 15:24:17 2003 UTC (21 years, 9 months ago) by jonathan
(Classifier.__init__): Rearrange how
        the dialog is constructed so that we can support layers that
        do not have classifications.
(Classifier._OnTry): Only build a classification if the layer supports one.


Revision 934 - Directory Listing
Modified Tue May 20 15:24:03 2003 UTC (21 years, 9 months ago) by jonathan
(ThubanApplication.CreateMainWindow):
        Make initial window size 600x400. Fixes RTBug #1872.


Revision 933 - Directory Listing
Modified Tue May 20 15:23:50 2003 UTC (21 years, 9 months ago) by jonathan
(AutoTransientTable.SimpleQuery):
        The right argument may not be a string, it could also be a Column.


Revision 932 - Directory Listing
Modified Tue May 20 15:23:33 2003 UTC (21 years, 9 months ago) by jonathan
(XMLWriter.encode): Don't assume that we
        get a string in Latin1. If we get such as string convert it to
        unicode first, otherwise leave if alone before encoding.
(SessionSaver.write_layer): Add support for writing both Layers
        and RasterLayers.


Revision 931 - Directory Listing
Modified Tue May 20 15:23:18 2003 UTC (21 years, 9 months ago) by jonathan
(Map.BoundingBox): Fix typo in comment.


Revision 930 - Directory Listing
Modified Tue May 20 15:23:03 2003 UTC (21 years, 9 months ago) by jonathan
(SessionLoader.__init__): Add rasterlayer tag handler.
(SessionLoader.start_layer): Encode the filename.
(SessionLoader.start_rasterlayer, SessionLoader.end_rasterlayer):
        New. Supports reading a rasterlayer tag.


Revision 929 - Directory Listing
Modified Tue May 20 15:22:42 2003 UTC (21 years, 9 months ago) by jonathan
(BaseLayer.HasClassification): New.
        Defaults to False, but can be overridden by subclasses if they
        support classification.
(RasterLayer): New. Defines a new layer that represents an image.


Revision 928 - Directory Listing
Modified Tue May 20 15:22:10 2003 UTC (21 years, 9 months ago) by jonathan
Add gdalwarp library extension.


Revision 927 - Directory Listing
Modified Mon May 19 12:09:25 2003 UTC (21 years, 9 months ago) by frank
Bugfix update.


Revision 926 - Directory Listing
Modified Mon May 19 12:09:01 2003 UTC (21 years, 9 months ago) by frank
Bugfix


Revision 925 - Directory Listing
Modified Mon May 19 12:07:37 2003 UTC (21 years, 9 months ago) by frank
(get_changelog_date): Catch exceptions if ChangeLog does not exist.


Revision 924 - Directory Listing
Modified Mon May 19 09:12:42 2003 UTC (21 years, 9 months ago) by frank
Extended version information for Thuban


Revision 923 - Directory Listing
Modified Mon May 19 09:12:25 2003 UTC (21 years, 9 months ago) by frank
Extended version information: Display Thuban, wxPython and Python version.


Revision 922 - Directory Listing
Modified Mon May 19 09:12:07 2003 UTC (21 years, 9 months ago) by frank
New, version information for Thuban: Last modification date and last
ChangeLog entry date.


Revision 921 - Directory Listing
Modified Fri May 16 17:37:37 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 920 - Directory Listing
Modified Fri May 16 17:37:29 2003 UTC (21 years, 9 months ago) by bh
Remove some unused imports including the
__future__ import for nested_scopes as Thuban relies on Python 2.2
now.
(XMLWriter.encode): Remove the special case for a None argument.
In the saver encode is always called with a string argument.


Revision 919 - Directory Listing
Modified Fri May 16 17:29:48 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 918 - Directory Listing
Modified Fri May 16 17:29:39 2003 UTC (21 years, 9 months ago) by bh
Remove the work-around for the locale bug
in wxPython (at least when usinvg wxGTK) prior to 2.4. The symptom
of the bug was that e.g. float("1.2") would fail. Thuban now
requires 2.4.x.


Revision 917 - Directory Listing
Modified Fri May 16 16:26:57 2003 UTC (21 years, 9 months ago) by frank
Printing enhancement and WMF export (under Win32)


Revision 916 - Directory Listing
Modified Fri May 16 16:26:18 2003 UTC (21 years, 9 months ago) by frank
Made test executable as standalone.


Revision 915 - Directory Listing
Modified Fri May 16 16:25:58 2003 UTC (21 years, 9 months ago) by frank
New, test Thuban.UI.view.OutputTransform()


Revision 914 - Directory Listing
Modified Fri May 16 16:25:41 2003 UTC (21 years, 9 months ago) by frank
(ScalebarBitmap.__SetScale): Update to extended scalebar.DrawScalebar header.


Revision 913 - Directory Listing
Modified Fri May 16 16:25:10 2003 UTC (21 years, 9 months ago) by frank
(roundInterval): round long instead of int


Revision 912 - Directory Listing
Modified Fri May 16 16:24:44 2003 UTC (21 years, 9 months ago) by frank
(ScaleBar.DrawScaleBar): Position and Size of scalebar drawing area as new
	parameters.


Revision 911 - Directory Listing
Modified Fri May 16 16:24:17 2003 UTC (21 years, 9 months ago) by frank
(MainWindow.ExportMap()): New. Added also new method_command to call
	ExportMap, with platform dependency (only __WXMSW__)


Revision 910 - Directory Listing
Modified Fri May 16 16:23:43 2003 UTC (21 years, 9 months ago) by frank
(MapPrintout.__init__): Enhanced parameter set to fullfil information
	needed for PrinterRenderer.
(MapCanvas.Export): New. Export Map (currently only to WMF on Win32).
(MapCanvas.Print): Adapted to new MapPrintout.
(OutputTransform): General calculations to transform from canvas
	coordinates to export/printing devices.


Revision 909 - Directory Listing
Modified Fri May 16 16:23:12 2003 UTC (21 years, 9 months ago) by frank
ExportRenderer): New, derived from ScreenRenderer. Renders
	Map, Legend and Scalebar for export.
(PrinterRenderer): New, derived from ExportRenderer. Replaces the old
	PrintRender.


Revision 908 - Directory Listing
Modified Fri May 16 15:01:18 2003 UTC (21 years, 9 months ago) by bh
update ChangeLog


Revision 907 - Directory Listing
Modified Fri May 16 15:01:04 2003 UTC (21 years, 9 months ago) by bh
* Thuban/Model/table.py (Table): Remove this compatibility alias
for DBFTable.

* test/test_table.py: Import DBFTable as Table because that alias
doesn't exist anymore.

* Thuban/UI/classgen.py: Remove some unused imports


Revision 906 - Directory Listing
Modified Wed May 14 11:16:59 2003 UTC (21 years, 9 months ago) by jonathan
updated ChangeLog


Revision 905 - Directory Listing
Modified Wed May 14 11:16:48 2003 UTC (21 years, 9 months ago) by jonathan
New. Imported from SciParam.


Revision 904 - Directory Listing
Modified Wed May 14 11:16:38 2003 UTC (21 years, 9 months ago) by jonathan
(FloatTestCase): New. Needed for the Range tests.


Revision 903 - Directory Listing
Modified Wed May 14 11:16:28 2003 UTC (21 years, 9 months ago) by jonathan
(ProjFrame.__do_layout): Fix Windows layout bug with the 'Projection' label.


Revision 902 - Directory Listing
Modified Wed May 14 11:16:13 2003 UTC (21 years, 9 months ago) by jonathan
(ClassGenDialog.OnOK): Fix name of method
        call to ClassGenerator.GenUniformDistribution.


Revision 901 - Directory Listing
Modified Wed May 14 11:15:55 2003 UTC (21 years, 9 months ago) by jonathan
(Range.number_re): Now accepts floats that
        do not have a leading 0 (.5 is now accepted as well as 0.5).


Revision 900 - Directory Listing
Modified Wed May 14 11:15:41 2003 UTC (21 years, 9 months ago) by jonathan
(ClassGenerator.GenSingletonsFromList): Fix docstring.
(ClassGenerator.GenUniformDistribution): Fix spelling of method name.
(ClassGenerator.GenQuantiles): Use the left/right brackets and min/max
        values of the supplied range to determine the beginning and end
        bounds of the generated classes.


Revision 899 - Directory Listing
Modified Mon May 12 12:20:10 2003 UTC (21 years, 9 months ago) by jonathan
updated ChangeLog


Revision 898 - Directory Listing
Modified Mon May 12 12:19:58 2003 UTC (21 years, 9 months ago) by jonathan
(GenQuantilesPanel.GetList): Replace call
        to table.UniqueValues() with calls that retrieve all the values
        from the table. This will need to be replaced by a method on table
        which can simply return the list (perhaps more efficiently).


Revision 897 - Directory Listing
Modified Mon May 12 11:21:25 2003 UTC (21 years, 9 months ago) by jonathan
updated ChangeLog


Revision 896 - Directory Listing
Modified Mon May 12 11:21:14 2003 UTC (21 years, 9 months ago) by jonathan
Modified Quantile tests to use the new return values.


Revision 895 - Directory Listing
Modified Mon May 12 11:21:02 2003 UTC (21 years, 9 months ago) by jonathan
(ClassGenerator.GenQuantiles): Add comments describing the parameters,
        use new return values from CalculateQuantiles to produce the correct
        range bounds in the Classification.
(ClassGenerator.CalculateQuantiles): Add more comments describing
        the return values and parameters. Make minor adjustments to improve
        the legibility of the code. Fix problem with adjusted not being set
        in most cases.


Revision 894 - Directory Listing
Modified Mon May 12 10:46:29 2003 UTC (21 years, 9 months ago) by frank
Old comment deleted.


Revision 893 - Directory Listing
Modified Mon May 12 10:46:05 2003 UTC (21 years, 9 months ago) by frank
Update unicode encoding


Revision 892 - Directory Listing
Modified Mon May 12 10:45:47 2003 UTC (21 years, 9 months ago) by frank
(XMLWriter.encode()): Explicite call to unicode and latin1. Fixes #1851 finally.


Revision 891 - Directory Listing
Modified Fri May 9 18:08:46 2003 UTC (21 years, 10 months ago) by jonathan
(ClassGenerator.CalculateQuantiles):
        Clean up debugging statement, add comments, fix a small bug in the
        returned adjusted percentiles.


Revision 890 - Directory Listing
Modified Fri May 9 18:08:31 2003 UTC (21 years, 10 months ago) by jonathan
New. Tests the Quantile algorithm.


Revision 889 - Directory Listing
Modified Fri May 9 16:41:52 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 888 - Directory Listing
Modified Fri May 9 16:40:50 2003 UTC (21 years, 10 months ago) by jonathan
New. Initial Join dialog. No real functionality yet.


Revision 887 - Directory Listing
Modified Fri May 9 16:38:59 2003 UTC (21 years, 10 months ago) by jonathan
Taken from SciParam. Used as the underlying
        object in ClassGroupRange, and also uesd for inputting ranges in
        the classifer table and elsewhere.


Revision 886 - Directory Listing
Modified Fri May 9 16:36:56 2003 UTC (21 years, 10 months ago) by jonathan
New. Contains the classes ClassGenerator, CustomRamp, MonochromaticRamp,
GreyRamp, RedRamp, GreenRamp, BlueRamp, HotToColdRamp from Thuban/UI/classgen.py


Revision 885 - Directory Listing
Modified Fri May 9 16:35:03 2003 UTC (21 years, 10 months ago) by jonathan
Add range parameter for clrange.


Revision 884 - Directory Listing
Modified Fri May 9 16:34:53 2003 UTC (21 years, 10 months ago) by jonathan
Explicit imports.
(TestClassification.test_ClassGroupRange): Fix test for new Range class.


Revision 883 - Directory Listing
Modified Fri May 9 16:34:39 2003 UTC (21 years, 10 months ago) by jonathan
(MapCanvas): Delegate "SelectedShapes" so the table view can call it.


Revision 882 - Directory Listing
Modified Fri May 9 16:34:28 2003 UTC (21 years, 10 months ago) by jonathan
Explicit imports.


Revision 881 - Directory Listing
Modified Fri May 9 16:34:15 2003 UTC (21 years, 10 months ago) by jonathan
(TableGrid.OnRangeSelect): Fix some issues
        with correctly selecting the rows and issuing the right events.
        Be sure to call Skip() to allow the grid to do some of its own
        handling which allows the rows to actually be selected.
(LayerTableGrid.select_shapes): Rename from select_shape. Supports
        selecting multiple shapes.
(LayerTableFrame): Support for building Queries.
(LayerTableFrame.select_shapes): Allow multiple shapes to be selected.


Revision 880 - Directory Listing
Modified Fri May 9 16:33:30 2003 UTC (21 years, 10 months ago) by jonathan
(ProjFrame.__VerifyButtons): Save button should be disabled if no projection
        is selected in the available list.


Revision 879 - Directory Listing
Modified Fri May 9 16:33:10 2003 UTC (21 years, 10 months ago) by jonathan
Add support for the Join Dialog. Added a Table menu and associated method calls.
(MainWindow.choose_color): Removed. No longer needed.


Revision 878 - Directory Listing
Modified Fri May 9 16:32:31 2003 UTC (21 years, 10 months ago) by jonathan
Explicit imports.
(ClassTable.GetValueAsCust, ClassTable.__ParseInput,
ClassTable.SetValueAsCustom): Reworked to use new Range class.


Revision 877 - Directory Listing
Modified Fri May 9 16:32:17 2003 UTC (21 years, 10 months ago) by jonathan
Explicit imports.
(ClassGenDialog.__init__): Clean up the code and add support for Quantiles.
(ClassGenDialog.OnOK): Add support for Quantiles.
(GenQuantilesPanel): New. Input panel for Quantiles.
(ClassGenerator, CustomRamp, MonochromaticRamp, GreyRamp, RedRamp,
        GreenRamp, BlueRamp, HotToColdRamp): Move to Thuban/Model/classgen.py


Revision 876 - Directory Listing
Modified Fri May 9 16:31:55 2003 UTC (21 years, 10 months ago) by jonathan
Explicit imports.
(XMLWriter.encode): New. Encode the given string from a format
        used by Thuban into UTF-8. Fixes RTbug #1851.


Revision 875 - Directory Listing
Modified Fri May 9 16:31:39 2003 UTC (21 years, 10 months ago) by jonathan
Import _.  (ProjFileSaver.write): write header using projfile.dtd.


Revision 874 - Directory Listing
Modified Fri May 9 16:31:12 2003 UTC (21 years, 10 months ago) by jonathan
(XMLReader.encode): New. Encodes the given
        string appropriately for use in Thuban. Fixes RTbug #1851.
(SessionLoader.end_projection): Handle the context of the
        projection tag a bit better by looking at what objects are not
        None. There was an assumption that a projection tag for a map
        could occur before any layers.
(SessionLoader.start_clrange): Provide backward compatibility for
        reading min/max values as well as the new range parameter.


Revision 873 - Directory Listing
Modified Fri May 9 16:30:54 2003 UTC (21 years, 10 months ago) by jonathan
Explicit imports.
(ClassGroupRange): Use the Range class to store the underlying
        range information. The interface remains the same, except for
        GetRange(), and you can also supply a Range object as the min
        parameter to SetRange or __init__.


Revision 872 - Directory Listing
Modified Fri May 9 08:33:45 2003 UTC (21 years, 10 months ago) by frank
Scalebar update


Revision 871 - Directory Listing
Modified Fri May 9 08:33:29 2003 UTC (21 years, 10 months ago) by frank
(DrawScaleBar): Draw only if interval > 0.0.


Revision 870 - Directory Listing
Modified Thu May 8 14:06:32 2003 UTC (21 years, 10 months ago) by frank
Coding style updates.


Revision 869 - Directory Listing
Modified Thu May 8 14:06:15 2003 UTC (21 years, 10 months ago) by frank
Explicit imports


Revision 868 - Directory Listing
Modified Thu May 8 14:05:49 2003 UTC (21 years, 10 months ago) by frank
Replaced tab indentation by spaces.


Revision 867 - Directory Listing
Modified Thu May 8 13:42:36 2003 UTC (21 years, 10 months ago) by frank
Bugfix


Revision 866 - Directory Listing
Modified Thu May 8 13:40:32 2003 UTC (21 years, 10 months ago) by frank
Format string bug fixed


Revision 865 - Directory Listing
Modified Thu May 8 12:35:14 2003 UTC (21 years, 10 months ago) by frank
Import Thuban.UI.scalebar


Revision 864 - Directory Listing
Modified Thu May 8 12:29:23 2003 UTC (21 years, 10 months ago) by frank
Import Thuban.UI.scalebar


Revision 863 - Directory Listing
Modified Thu May 8 12:28:39 2003 UTC (21 years, 10 months ago) by frank
Test for Thuban/Model/scalebar.py methods.


Revision 862 - Directory Listing
Modified Thu May 8 12:27:15 2003 UTC (21 years, 10 months ago) by frank
(ScaleBar): Scalebar rendering


Revision 861 - Directory Listing
Modified Thu May 8 12:26:44 2003 UTC (21 years, 10 months ago) by frank
Rendering moved to Thuban/UI/scalebar.py
(deriveInterval):
	Calculate scalebar interval and unit which fits in width for scale.
(roundInterval): Round float.


Revision 860 - Directory Listing
Modified Thu May 8 10:41:36 2003 UTC (21 years, 10 months ago) by frank
Scalebar updates.


Revision 859 - Directory Listing
Modified Thu May 8 10:41:09 2003 UTC (21 years, 10 months ago) by frank
(ScaleBar.roundInterval()): New,
	round intervals to display smarter lengths
(ScaleBar.DrawScalebar): Draw Scalebar only if the map contains a
	layer. If the maps has no projection applied grey the scalebar.


Revision 858 - Directory Listing
Modified Thu May 8 10:30:17 2003 UTC (21 years, 10 months ago) by frank
Initialize ScaleBar with canvas.map


Revision 857 - Directory Listing
Modified Wed May 7 18:25:05 2003 UTC (21 years, 10 months ago) by frank
Basic Scalebar features added.


Revision 856 - Directory Listing
Modified Wed May 7 18:24:44 2003 UTC (21 years, 10 months ago) by frank
SCALE_CHANGED added.


Revision 855 - Directory Listing
Modified Wed May 7 18:24:27 2003 UTC (21 years, 10 months ago) by frank
(MapCanvas.set_view_transform): Issue SCALE_CHANGED.


Revision 854 - Directory Listing
Modified Wed May 7 18:24:13 2003 UTC (21 years, 10 months ago) by frank
(LegendPanel): Added scalebar bitmap
(ScaleBarBitmap): New, links the scalebar bitmap with view messages
and the renderer.


Revision 853 - Directory Listing
Modified Wed May 7 18:23:58 2003 UTC (21 years, 10 months ago) by frank
New, scalebar rendering.


Revision 852 - Directory Listing
Modified Wed May 7 15:11:23 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 851 - Directory Listing
Modified Wed May 7 15:11:12 2003 UTC (21 years, 10 months ago) by bh
* Thuban/Model/session.py (Session.__init__): New instance
variable shapestores to hold a list of all open shapestore objects
(Session.ShapeStores): New. Accessor method for the shapestores
list.
(Session._add_shapestore, Session._clean_weak_store_refs): New.
Internal methods to maintain the shapestores list.
(Session.Tables): New. Return all tables open in the session.
(Session.OpenShapefile): Insert the new ShapeStore into the
shapestores list.

* test/test_session.py (TestSessionSimple.test_initial_state): Add
tests for ShapeStores and Tables
(TestSessionWithContent.test_shape_stores)
(TestSessionWithContent.test_tables): New. Test cases for
ShapeStores and Tables


Revision 850 - Directory Listing
Modified Wed May 7 11:55:45 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 849 - Directory Listing
Modified Wed May 7 11:55:31 2003 UTC (21 years, 10 months ago) by bh
* Thuban/Model/transientdb.py (TransientTableBase.ReadRowAsDict):
Add comments about the optimizations used.
(AutoTransientTable.ReadValue, TransientTableBase.ReadValue): New.
Implement the ReadValue table interface method.

* test/test_transientdb.py
(TestTransientTable.run_iceland_political_tests)
(TestTransientTable.test_transient_joined_table): Add tests for
ReadValue


Revision 848 - Directory Listing
Modified Wed May 7 07:20:52 2003 UTC (21 years, 10 months ago) by frank
Icon updates.


Revision 847 - Directory Listing
Modified Wed May 7 07:20:06 2003 UTC (21 years, 10 months ago) by frank
Replaced the place holders with new icons.


Revision 846 - Directory Listing
Modified Tue May 6 18:05:23 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 845 - Directory Listing
Modified Tue May 6 18:05:13 2003 UTC (21 years, 10 months ago) by bh
(TestTransientTable.test_auto_transient_table_query): New. Test
case for AutoTransientTable's SimpleQuery


Revision 844 - Directory Listing
Modified Tue May 6 18:05:04 2003 UTC (21 years, 10 months ago) by bh
(AutoTransientTable.SimpleQuery):
New. Simply delegate to the transient table's version.


Revision 843 - Directory Listing
Modified Tue May 6 17:13:15 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 842 - Directory Listing
Modified Tue May 6 17:13:00 2003 UTC (21 years, 10 months ago) by bh
(TestTransientTable.test_transient_table_read_twice): Fix
doc-string
(TestTransientTable.test_transient_table_query): New. Test for the
SimpleQuery method


Revision 841 - Directory Listing
Modified Tue May 6 17:12:53 2003 UTC (21 years, 10 months ago) by bh
(TransientTableBase.SimpleQuery):
Implement a simple query method for the query dialog
(TransientTableBase.create): Add an INTEGER PRIMARY KEY that holds
the row index or shapeid.
(TransientTable.create): Insert the right value of the row index
(TransientJoinedTable.create): Copy the row index of the left
table to the joined result table


Revision 840 - Directory Listing
Modified Tue May 6 15:54:35 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 839 - Directory Listing
Modified Tue May 6 15:54:18 2003 UTC (21 years, 10 months ago) by bh
Convert all table users to use the new table interface. This only
covers Thuban itself, not GREAT-ER or other applications built on
Thuban yet, so the compatibility interface stays in place for the
time being but it now issues DeprecationWarnings.

Finally, the new Table interface has a new method, HasColumn.

* Thuban/Model/table.py (OldTableInterfaceMixin): All methods
issue deprecation warnings when they're. The warnings refer to the
caller of the method.
(OldTableInterfaceMixin.__deprecation_warning): New. Helper method
for the deprecation warnings

* test/test_table.py: Ignore the deprecation warnings for the old
table in the tests in this module. The purpose of the tests is to
test the old interface, after all.

* test/test_transientdb.py
(TestTransientTable.run_iceland_political_tests): Use the
constants for the types. Add a test for HasColumn
(TestTransientTable.test_transient_joined_table): Adapt to new
table interface. Add a test for HasColumn
(TestTransientTable.test_transient_table_read_twice): Adapt to new
table interface

* Thuban/Model/transientdb.py (TransientTableBase.HasColumn)
(AutoTransientTable.HasColumn): Implement the new table interface
method
(AutoTransientTable.ReadRowAsDict, AutoTransientTable.ValueRange)
(AutoTransientTable.UniqueValues): Adapt to new table interface

* Thuban/Model/layer.py (Layer.SetShapeStore, Layer.GetFieldType):
Adapt to new table interface

* test/test_layer.py (TestLayer.open_shapefile): Helper method to
simplify opening shapefiles a bit easier.
(TestLayer.test_arc_layer, TestLayer.test_polygon_layer)
(TestLayer.test_point_layer): Use the new helper method
(TestLayer.test_get_field_type): New. Test for the GetFieldType
method

* test/test_dbf_table.py (TestDBFTable.test_has_column): Test for
the new table method

* test/test_memory_table.py (TestMemoryTable.test_has_column):
Test for the new table method HasColumn


Revision 838 - Directory Listing
Modified Tue May 6 15:53:32 2003 UTC (21 years, 10 months ago) by bh
(DataTable.SetTable, DataTable.GetValue):
Adapt to new table interface


Revision 837 - Directory Listing
Modified Tue May 6 15:53:20 2003 UTC (21 years, 10 months ago) by bh
(MapRenderer.draw_shape_layer): Adapt to
new table interface


Revision 836 - Directory Listing
Modified Tue May 6 15:53:13 2003 UTC (21 years, 10 months ago) by bh
(RecordListCtrl.fill_list)
(RecordTable.SetTable): Adapt to new table interface


Revision 835 - Directory Listing
Modified Tue May 6 15:52:41 2003 UTC (21 years, 10 months ago) by bh
(Classifier.__init__)
(Classifier.__init__): Adapt to new table interface


Revision 834 - Directory Listing
Modified Tue May 6 15:52:36 2003 UTC (21 years, 10 months ago) by bh
(ClassGenDialog.__init__)
(GenUniformPanel._OnRetrieve, GenUniquePanel._OnRetrieve): Adapt
to new table interface


Revision 833 - Directory Listing
Modified Tue May 6 12:07:44 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 832 - Directory Listing
Modified Tue May 6 12:07:36 2003 UTC (21 years, 10 months ago) by jonathan
(TestLayer.test_arc_layer): Add some tests for Layer.ShapesBoundingBox().


Revision 831 - Directory Listing
Modified Tue May 6 12:07:21 2003 UTC (21 years, 10 months ago) by jonathan
(MapCanvas): Added delegated method HasSelectedShapes.
(MapCanvas.FitSelectedToWindow): New. Centers and scales any selected
        shapes on the canvas using the map projection (if any).


Revision 830 - Directory Listing
Modified Tue May 6 12:07:03 2003 UTC (21 years, 10 months ago) by jonathan
(Selection.HasSelectedShapes): New. Returns true if there are any
        selected shapes.


Revision 829 - Directory Listing
Modified Tue May 6 12:06:38 2003 UTC (21 years, 10 months ago) by jonathan
Added new "Full selection extent" menu option.
(MainWindow.has_selected_shapes): New. Returns true if there are
        any selected shapes.
(MainWindow.FullSelectionExtent): New. Calls
        MapCanvas.FitSelectedToWindow() when the user selects the menu option.
(_has_selected_shapes): New. Returns true if there are any selected shapes.


Revision 828 - Directory Listing
Modified Tue May 6 12:06:12 2003 UTC (21 years, 10 months ago) by jonathan
(Shape): Since a Shape is immutable only
        calculate the bounding box once (the first time compute_bbox() is
        called).
(Layer.ShapesBoundingBox): New. Given a list of shape ids, return
        the bounding box for the shapes in lat/long coordinates.


Revision 827 - Directory Listing
Modified Tue May 6 12:05:54 2003 UTC (21 years, 10 months ago) by jonathan
Bitmaps for layer and selection extent. These are just place holders for
the real bitmaps.


Revision 826 - Directory Listing
Modified Tue May 6 08:24:23 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 825 - Directory Listing
Modified Tue May 6 08:24:12 2003 UTC (21 years, 10 months ago) by bh
Fix spelling of Mercator


Revision 824 - Directory Listing
Modified Tue May 6 08:09:27 2003 UTC (21 years, 10 months ago) by jonathan
(MapCanvas.FitLayerToWindow): The bbox rectangle should be fit into the
        window whether or not the map has a projection.


Revision 823 - Directory Listing
Modified Mon May 5 18:20:39 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 822 - Directory Listing
Modified Mon May 5 18:20:28 2003 UTC (21 years, 10 months ago) by jonathan
(MapCanvas.FitLayerToWindow): New. Centers and
        scales the given layer on the canvas using the map projection.


Revision 821 - Directory Listing
Modified Mon May 5 18:20:15 2003 UTC (21 years, 10 months ago) by jonathan
Added new "Full layer extent" menu option.
(MainWindow.FullLayerExtent): New. Calls MapCanvas.FitLayerToWindow()
        when the user selects the menu option.


Revision 820 - Directory Listing
Modified Mon May 5 18:20:01 2003 UTC (21 years, 10 months ago) by jonathan
Added UK National Grid.


Revision 819 - Directory Listing
Modified Mon May 5 17:18:51 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 818 - Directory Listing
Modified Mon May 5 17:18:31 2003 UTC (21 years, 10 months ago) by bh
Convert the table implementations to a new table interface. All
tables use a common mixin class to provide backwards compatibility
until all table users have been updated.

* Thuban/Model/table.py (OldTableInterfaceMixin): Mixin class to
provide backwards compatibility for table classes implementing the
new interface
(DBFTable, MemoryTable): Implement the new table interface. Use
OldTableInterfaceMixin as base for compatibility
(DBFColumn, MemoryColumn): New. Column description for DBFTable
and MemoryTable resp.

* test/test_dbf_table.py: New. Test cases for the DBFTable with
the new table interface.

* test/test_memory_table.py: New. Test cases for the MemoryTable
with the new table interface.

* test/test_table.py: Document the all tests in this file as only
for backwards compatibility. The equivalent tests for the new
interface are in test_memory_table.py and test_dbf_table.py
(MemoryTableTest.test_read): field_info should be returning tuples
with four items
(MemoryTableTest.test_write): Make doc-string a more precise.

* Thuban/Model/transientdb.py (TransientTableBase): Convert to new
table interface. Derive from from OldTableInterfaceMixin for
compatibility.
(TransientTableBase.create): New intance variable column_map to
map from names and indices to column objects
(TransientTable.create): Use the new table interface of the input
table
(AutoTransientTable): Convert to new table interface. Derive from
from OldTableInterfaceMixin for compatibility.
(AutoTransientTable.write_record): Removed. It's not implemented
yet and we still have to decide how to handle writing with the new
table and data framework.

* test/test_transientdb.py
(TestTransientTable.run_iceland_political_tests)
(TestTransientTable.test_transient_joined_table): Use the new
table interface


Revision 817 - Directory Listing
Modified Mon May 5 15:05:36 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 816 - Directory Listing
Modified Mon May 5 15:05:16 2003 UTC (21 years, 10 months ago) by jonathan
(ProjFrame.__init__): Rearrange the
        order that the controls are created so that tabbing works correctly.
(ProjFrame.OnApply): Renamed from _OnTry() to use wxDialog behaviour.
(ProjFrame.OnOK): Renamed from _OnOK() to use wxDialog behaviour.
(ProjFrame.OnCancel): Renamed from _OnClose() to use wxDialog behaviour.        (ProjPanel.__init__): Add "Airy" to the list of ellipsoids so we
        can provide the "UK National Grid" as a default projection.
(UTMPanel.__init__): Rearrange the order that the controls are
        created so that tabbing works correctly.


Revision 815 - Directory Listing
Modified Mon May 5 15:04:57 2003 UTC (21 years, 10 months ago) by jonathan
Add "..." to menu items that will open new dialogs.


Revision 814 - Directory Listing
Modified Mon May 5 15:04:42 2003 UTC (21 years, 10 months ago) by jonathan
Copied NonModalDialog box and changed it
        to derive from a wxDialog but behave like the original implementation
        which was derived from a wxFrame. wxDialog provides useful key
        handling functionality like ESC calling OnCancel and ENTER calling
        OnOK which is lost with wxFrame.


Revision 813 - Directory Listing
Modified Mon May 5 15:04:21 2003 UTC (21 years, 10 months ago) by jonathan
(Classifier.__init__): Rearrange the
        order that the controls are created so that tabbing works correctly.
(SelectPropertiesDialog.__init__): Rearrange the order that the
        controls are created so that tabbing works correctly.


Revision 812 - Directory Listing
Modified Mon May 5 15:04:06 2003 UTC (21 years, 10 months ago) by jonathan
(ClassGenDialog.__init__): Rearrange the
        order that the controls are created so that tabbing works correctly.
(ClassGenDialog.OnOK): Renamed from _OnGenerate() so that the
        wxDialog can handle the default button correctly.
(ClassGenDialog.OnCancel): Renamed from _OnCloseBtn() for the
        same reasons as for OnOK.
(GenUniformPanel._OnRetrieve): Call wxBeginBusyCursor/wxEndBusyCursor
        when we ask the table for the maximum/minimum values of a field
        which could take a very long time.


Revision 811 - Directory Listing
Modified Mon May 5 13:09:26 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 810 - Directory Listing
Modified Mon May 5 13:09:10 2003 UTC (21 years, 10 months ago) by bh
Fix some of the comments.
(project_point): If a map projection but no layer projection is
given, convert degrees to radians before applying the map
projection.


Revision 809 - Directory Listing
Modified Mon May 5 10:33:58 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 808 - Directory Listing
Modified Mon May 5 10:33:47 2003 UTC (21 years, 10 months ago) by bh
(TableGrid.disallow_messages)
(TableGrid.allow_messages): New methods to make it possible to
inhibit message sending.
(TableGrid.issue): Only send the message if not inhibited.
(LayerTableGrid.select_shape): Use the new methods to make sure
that no ROW_SELECTED message is sent while we're updating the
selected rows to match the selected shapes.


Revision 807 - Directory Listing
Modified Fri May 2 16:44:24 2003 UTC (21 years, 10 months ago) by jan
Implementation of MemoryTable.


Revision 806 - Directory Listing
Modified Fri May 2 16:43:59 2003 UTC (21 years, 10 months ago) by jan
(MemoryTable): New. Quite simple table implementation that operates on a
list of tuples. All of the data are kept in the memory.


Revision 805 - Directory Listing
Modified Fri May 2 16:42:35 2003 UTC (21 years, 10 months ago) by jan
(SimpleTable): Removed.
(TestTransientTable.test_transient_joined_table,
(TestTransientTable.test_transient_table_read_twice): Replaced
SimpleTable by MemoryTable.


Revision 804 - Directory Listing
Modified Fri May 2 16:40:39 2003 UTC (21 years, 10 months ago) by jan
(MemoryTableTest): New.


Revision 803 - Directory Listing
Modified Wed Apr 30 17:07:01 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 802 - Directory Listing
Modified Wed Apr 30 17:06:52 2003 UTC (21 years, 10 months ago) by jonathan
Geographic projection contains unit conversion parameter.


Revision 801 - Directory Listing
Modified Wed Apr 30 17:06:39 2003 UTC (21 years, 10 months ago) by jonathan
Now contains correct projections for each of the layers.


Revision 800 - Directory Listing
Modified Wed Apr 30 17:02:42 2003 UTC (21 years, 10 months ago) by jonathan
(project_point): First invert the
        supplied point (which should be in projected coordinates) using
        the layer's projection and then project the point using the
        map's projection.
(project_points): Use project_point() to project each point.


Revision 799 - Directory Listing
Modified Wed Apr 30 17:02:21 2003 UTC (21 years, 10 months ago) by jonathan
(MapCanvas.OnPaint): Add a try/except block
        around the redraw routine to try to catch problems that the user
        may create by selecting invalid projections for the data set and
        map. Clears the display if there are any problems and prints the
        error.
(MapCanvas.do_redraw): Use DC.Clear() instead of drawing a filled
        rectangle.


Revision 798 - Directory Listing
Modified Wed Apr 30 17:02:04 2003 UTC (21 years, 10 months ago) by jonathan
(MapRenderer.draw_shape_layer): Optimize
        the rendering loop by reducing the number of if's, removing the
        unnecessary try/except block, and checking if the old group
        is the same as the new one (which happens a lot if there is
        no classification, or lots of shapes are in the same group).


Revision 797 - Directory Listing
Modified Wed Apr 30 17:01:48 2003 UTC (21 years, 10 months ago) by jonathan
(ProjFrame._OnSave): Add missing parameter in call to SetClientData.
(GeoPanel): Add support for selecting the units that the
        source data is in (Radians or Degrees).


Revision 796 - Directory Listing
Modified Wed Apr 30 17:01:18 2003 UTC (21 years, 10 months ago) by jonathan
Move menu item map_rename up.


Revision 795 - Directory Listing
Modified Wed Apr 30 17:01:06 2003 UTC (21 years, 10 months ago) by jonathan
(LegendTree.MoveCurrentItemUp,
        LegendTree.MoveCurrentItemDown): If the layer or any of the layer's
        groups are selected, move the layer up/down. Fixes RTbug #1833.


Revision 794 - Directory Listing
Modified Wed Apr 30 17:00:52 2003 UTC (21 years, 10 months ago) by jonathan
(Layer.ShapesInRegion): Fix docstring
        to say that the parameter is a tuple of unprojected
        points (which is what the callers to this method were assuming).
        Also, since the points are unprojected we need to projected them.


Revision 793 - Directory Listing
Modified Wed Apr 30 17:00:36 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 792 - Directory Listing
Modified Wed Apr 30 12:26:57 2003 UTC (21 years, 10 months ago) by jan
fixed a small bug in layer.py


Revision 791 - Directory Listing
Modified Wed Apr 30 12:26:33 2003 UTC (21 years, 10 months ago) by jan
(Layer.SetShapeStore): Fixed a bug: don't set the Classification to
None if the classfication field is None (ie only a DEFAULT).


Revision 790 - Directory Listing
Modified Wed Apr 30 11:06:07 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 789 - Directory Listing
Modified Wed Apr 30 11:06:00 2003 UTC (21 years, 10 months ago) by bh
Fix some typos.


Revision 788 - Directory Listing
Modified Wed Apr 30 10:57:36 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 787 - Directory Listing
Modified Wed Apr 30 10:57:24 2003 UTC (21 years, 10 months ago) by bh
(MainWindow.identify_view_on_demand): Do
not pop up the dialog if the selection becomes empty (this could
happen if e.g. a new selection is opened while the identify tool
is active and dialog had been closed)


Revision 786 - Directory Listing
Modified Wed Apr 30 10:54:32 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 785 - Directory Listing
Modified Wed Apr 30 10:54:03 2003 UTC (21 years, 10 months ago) by bh
* Thuban/Model/transientdb.py (TransientTableBase.__init__): New
instance variable read_record_last_result
(TransientTableBase.read_record): Make sure reading the same
record twice works. The implementation uses the new instance
variable read_record_last_result

* test/test_transientdb.py
(TestTransientTable.test_transient_table_read_twice): New test
case for the above bug-fix.


Revision 784 - Directory Listing
Modified Tue Apr 29 17:30:18 2003 UTC (21 years, 10 months ago) by jonathan
Remove Thuban.common import and commented code that used Str2Num.


Revision 783 - Directory Listing
Modified Tue Apr 29 17:29:32 2003 UTC (21 years, 10 months ago) by jonathan
Remove Thuban.common import.


Revision 782 - Directory Listing
Modified Tue Apr 29 16:53:55 2003 UTC (21 years, 10 months ago) by jonathan
Remove all uses of Str2Num.
(ClassTable.SetValueAsCustom): Rename keyword argument in
        ClassGroup* constructors to match argument name.


Revision 781 - Directory Listing
Modified Tue Apr 29 16:53:38 2003 UTC (21 years, 10 months ago) by jonathan
Remove all uses of Str2Num.


Revision 780 - Directory Listing
Modified Tue Apr 29 16:40:49 2003 UTC (21 years, 10 months ago) by jonathan
No longer needed Str2Num. RTbug #1832.


Revision 779 - Directory Listing
Modified Tue Apr 29 14:54:26 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 778 - Directory Listing
Modified Tue Apr 29 14:54:17 2003 UTC (21 years, 10 months ago) by bh
(Session.Destroy): Explicitly close the
transient DB if it exists to make sure it doesn't leave a journal
file in the temp directory.


Revision 777 - Directory Listing
Modified Tue Apr 29 14:54:12 2003 UTC (21 years, 10 months ago) by bh
(TransientDatabase.close): Set
self.conn to None after closing the connection to make sure it's
not closed twice


Revision 776 - Directory Listing
Modified Tue Apr 29 14:41:34 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog with bug id.


Revision 775 - Directory Listing
Modified Tue Apr 29 14:34:57 2003 UTC (21 years, 10 months ago) by jonathan
SaveSessionTest.testSingleLayer): Add test for saving an invisible layer.


Revision 774 - Directory Listing
Modified Tue Apr 29 14:34:45 2003 UTC (21 years, 10 months ago) by jonathan
Add new test data contents_test_visible.
(LoadSessionTest.setUp): save test data.
(LoadSessionTest.testLayerVisibility): Test if the visible flag
        is loaded correctly.


Revision 773 - Directory Listing
Modified Tue Apr 29 14:34:23 2003 UTC (21 years, 10 months ago) by jonathan
(SessionSaver.write_layer): Save visible parameter.


Revision 772 - Directory Listing
Modified Tue Apr 29 14:34:11 2003 UTC (21 years, 10 months ago) by jonathan
(SessionLoader.start_layer): Read visible parameter.


Revision 771 - Directory Listing
Modified Tue Apr 29 14:34:02 2003 UTC (21 years, 10 months ago) by jonathan
(BaseLayer.__init__): Change default value of visible from 1 to True.
(Layer.__init__): Change default value of visible from 1 to True.


Revision 770 - Directory Listing
Modified Tue Apr 29 14:33:36 2003 UTC (21 years, 10 months ago) by jonathan
Add visible parameter to a layer.


Revision 769 - Directory Listing
Modified Tue Apr 29 14:33:18 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 768 - Directory Listing
Modified Tue Apr 29 13:03:59 2003 UTC (21 years, 10 months ago) by jonathan
(MainWindow.SetMap): Look up the
        legend dialog box and tell it to change its map to the one
        supplied to SetMap(). Fixes RTbug #1770.


Revision 767 - Directory Listing
Modified Tue Apr 29 13:03:47 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 766 - Directory Listing
Modified Tue Apr 29 12:42:27 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 765 - Directory Listing
Modified Tue Apr 29 12:42:14 2003 UTC (21 years, 10 months ago) by bh
Next step of table implementation. Introduce a transient database
using SQLite that some of the data is copied to on demand. This
allows us to do joins and other operations that require an index
for good performance with reasonable efficiency. Thuban now needs
SQLite 2.8.0 and pysqlite 0.4.1. Older versions may work but I
haven't tested that.

* Thuban/Model/transientdb.py: New. Transient database
implementation.

* test/test_transientdb.py: New. Tests for the transient DB
classes.

* Thuban/Model/session.py (AutoRemoveFile, AutoRemoveDir): New
classes to help automatically remove temporary files and
directories.
(Session.__init__): New instance variables temp_dir for the
temporary directory and transient_db for the SQLite database
(Session.temp_directory): New. Create a temporary directory if not
yet done and return its name. Use AutoRemoveDir to have it
automatically deleted
(Session.TransientDB): Instantiate the transient database if not
done yet and return it.

* Thuban/Model/data.py (ShapefileStore.__init__): Use an
AutoTransientTable so that data is copied to the transient DB on
demand.
(SimpleStore): New class that simply combines a table and a
shapefile

* Thuban/Model/table.py (Table, DBFTable): Rename Table into
DBFTable and update its doc-string to reflect the fact that this
is only the table interface to a DBF file. Table is now an alias
for DBFTable for temporary backwards compatibility.

* Thuban/UI/application.py (ThubanApplication.OnExit): Make sure
the last reference to the session goes away so that the temporary
files are removed properly.

* test/test_load.py (LoadSessionTest.tearDown): Remove the
reference to the session to make sure the temporary files are
removed.


Revision 764 - Directory Listing
Modified Tue Apr 29 10:56:10 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 763 - Directory Listing
Modified Tue Apr 29 10:55:26 2003 UTC (21 years, 10 months ago) by bh
(XMLReader.__init__, XMLReader.read): Turn
the __parser instance variable into a normal local variable in
read. It's only used there and read will never be called more than
once. Plus it introduces a reference cycle that keeps can keep the
session object alive for a long time.


Revision 762 - Directory Listing
Modified Tue Apr 29 09:02:33 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 761 - Directory Listing
Modified Tue Apr 29 09:02:15 2003 UTC (21 years, 10 months ago) by jonathan
(TestProjection.test): Test GetName() and GetAllParameters()
(TestProjFile.test): Remove tests for Set*() methods. Add tests for Replace().


Revision 760 - Directory Listing
Modified Tue Apr 29 09:01:52 2003 UTC (21 years, 10 months ago) by jonathan
(ProjFrame._OnSave): Use the new
        ProjFile.Replace() method instead of the mutator
        Projection.SetProjection(). Also requires that we reassign the
        client data to the new projection.


Revision 759 - Directory Listing
Modified Tue Apr 29 09:01:35 2003 UTC (21 years, 10 months ago) by jonathan
(MainWindow.SaveSessionAs): Dialog should be of type wxSAVE and
        should verify overwriting a file.


Revision 758 - Directory Listing
Modified Tue Apr 29 09:01:12 2003 UTC (21 years, 10 months ago) by jonathan
(Projection): Removed Set*() methods to make
        Projection an immutable item. Fixes RTbug #1825.
(Projection.__init__): Initialize instance variables here.
(ProjFile.Replace): New. Replace the given projection object with
        the new projection object. This solves the problem of needing the
        mutator Projection.SetProjection() in the ProjFrame class and
        allows a projection to change parameters without changing its
        location in the file.


Revision 757 - Directory Listing
Modified Fri Apr 25 17:37:44 2003 UTC (21 years, 10 months ago) by jonathan
quick fix for a windows bug. wxWindows under MSW complains if you set a
selection to an invalid index.


Revision 756 - Directory Listing
Modified Fri Apr 25 14:48:44 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 755 - Directory Listing
Modified Fri Apr 25 14:48:35 2003 UTC (21 years, 10 months ago) by jonathan
(SaveSessionTest.testLayerProjection): New test to verify layer projections
        are saved correctly.


Revision 754 - Directory Listing
Modified Fri Apr 25 14:48:15 2003 UTC (21 years, 10 months ago) by jonathan
(SessionSaver.write_projection): Make sure to save the name of the projection.


Revision 753 - Directory Listing
Modified Fri Apr 25 14:23:41 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 752 - Directory Listing
Modified Fri Apr 25 14:23:34 2003 UTC (21 years, 10 months ago) by jonathan
(TestProjFile.test): Add tests for ProjFile.SetAllParameters,
        ProjFile.SetProjection, ProjFile.SetName.


Revision 751 - Directory Listing
Modified Fri Apr 25 14:23:19 2003 UTC (21 years, 10 months ago) by jonathan
(ProjFrame.__ShowError): Consolidate error dialogs into a single method call.
(ProjFrame.__VerifyButtons): Add more states to check.
(ProjFrame.__GetProjection): Return the current state of an
        edited projection or None.
(ProjFrame.__FillAvailList): Remove checks for states that shouldn't exist.
(ProjFrame._OnNew): Clear all selected items and supply
        a projection panel if necessary.


Revision 750 - Directory Listing
Modified Fri Apr 25 14:22:52 2003 UTC (21 years, 10 months ago) by jonathan
(MainWindow.MapProjection): Set the dialog title to include the map's title.
(MainWindow.LayerProjection): Set the dialog title to include the layer's title.


Revision 749 - Directory Listing
Modified Fri Apr 25 14:22:35 2003 UTC (21 years, 10 months ago) by jonathan
(Projection.SetName): Set the name to "Unknown" if name is None.
(Projection.SetAllParameters): New. Set the projection's
        parameter list to the one supplied.
(Projection.SetProjection): New. Set the projection's
        properties to those of the supplied Projection.


Revision 748 - Directory Listing
Modified Fri Apr 25 11:02:18 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 747 - Directory Listing
Modified Fri Apr 25 11:02:08 2003 UTC (21 years, 10 months ago) by jonathan
(ProjFrame.__FillAvailList): Now
        takes an optional argument to select the current projection.
        This does not guarantee that the item is visible due to
        limited wxWindows functionality. Fixes RTBug #1821.


Revision 746 - Directory Listing
Modified Fri Apr 25 10:27:05 2003 UTC (21 years, 10 months ago) by jonathan
(LoadSessionTest.testLayerProjection): New.  Tests a file where a layer has
        a projection.


Revision 745 - Directory Listing
Modified Fri Apr 25 10:26:50 2003 UTC (21 years, 10 months ago) by jonathan
(Projection.__init__): Change the default
        value for 'name' to None and then test if name is equal to None
        in the body of the constructor. This way the caller doesn't have to
        know what the default value should be. Namely, useful in load.py
        where we have to pick a default value if the 'name' parameter
        doesn't exist in the XML file.


Revision 744 - Directory Listing
Modified Fri Apr 25 10:26:35 2003 UTC (21 years, 10 months ago) by jonathan
(SessionLoader.start_projection): Remember the projection name and use it
        when constructing the Projection object.


Revision 743 - Directory Listing
Modified Fri Apr 25 10:26:03 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 742 - Directory Listing
Modified Fri Apr 25 09:14:41 2003 UTC (21 years, 10 months ago) by jonathan
(TestProjFile.test): New. Tests the base ProjFile class.


Revision 741 - Directory Listing
Modified Fri Apr 25 09:14:27 2003 UTC (21 years, 10 months ago) by jonathan
(ProjFrame._OnAddToList): Renamed from
        ProjFrame._OnSaveAs. Removed old dead code from previous
        implementation.
(ProjFrame._OnExport): Add support for exporting more than one
        projection to a single file.
(ProjFrame.__FillAvailList): use string formatting (% operator)
        to build strings that are (partly) translated. Fixes RTbug #1818.


Revision 740 - Directory Listing
Modified Fri Apr 25 09:14:04 2003 UTC (21 years, 10 months ago) by jonathan
(SessionSaver.write_layer): Save projection information.


Revision 739 - Directory Listing
Modified Fri Apr 25 09:13:48 2003 UTC (21 years, 10 months ago) by jonathan
Rename calls to ProjFile.GetFileName to ProjFile.GetFilename.


Revision 738 - Directory Listing
Modified Fri Apr 25 09:13:36 2003 UTC (21 years, 10 months ago) by jonathan
(ProjFile): Document the class. Move
        back to using a list because the order of the projections in
        the file is important to maintain. Fixes RTbug #1817.


Revision 737 - Directory Listing
Modified Fri Apr 25 09:12:17 2003 UTC (21 years, 10 months ago) by jonathan
(XMLReader.GetFilename): Renamed from XMLReader.GetFileName.
(SessionLoader): Added support for loading projection tags that
        appear inside a layer.


Revision 736 - Directory Listing
Modified Fri Apr 25 09:11:57 2003 UTC (21 years, 10 months ago) by jonathan
(Layer.TreeInfo): Add an item to the tree for projection information.


Revision 735 - Directory Listing
Modified Fri Apr 25 09:11:39 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 734 - Directory Listing
Modified Thu Apr 24 19:14:16 2003 UTC (21 years, 10 months ago) by bh
(ProjFrame._OnSaveAs): Don't translate
empty strings.


Revision 733 - Directory Listing
Modified Thu Apr 24 19:14:05 2003 UTC (21 years, 10 months ago) by bh
New. French translation by Daniel Calvelo Aros


Revision 732 - Directory Listing
Modified Thu Apr 24 19:14:02 2003 UTC (21 years, 10 months ago) by bh
Updated Spanish translation by Daniel Calvelo Aros


Revision 731 - Directory Listing
Modified Thu Apr 24 16:08:34 2003 UTC (21 years, 10 months ago) by jonathan
default projections provided with Thuban


Revision 730 - Directory Listing
Modified Thu Apr 24 16:07:41 2003 UTC (21 years, 10 months ago) by jonathan
Large changes to how the dialog is laid out. Use three panels instead of one.
        One for the list of projections, one for the edit controls, and one for
        the buttons.  Fixed resizing problems so that the dialog resizes
        correctly when the projection panel changes. Added import/export,
        save, and new buttons/functionality.


Revision 729 - Directory Listing
Modified Thu Apr 24 16:06:51 2003 UTC (21 years, 10 months ago) by jonathan
Add a Projection option under the layer menu.
(MainWindow.LayerProjection): New. Open up a projection window for a layer.


Revision 728 - Directory Listing
Modified Thu Apr 24 16:06:28 2003 UTC (21 years, 10 months ago) by jonathan
Change all references to genCombo to genChoice.


Revision 727 - Directory Listing
Modified Thu Apr 24 16:06:16 2003 UTC (21 years, 10 months ago) by jonathan
(GetSystemProjFiles, GetUserProjFiles): Return a list with only one projection
        file instead of searching for any projection file. This simplifies many
        things if the user can only have one system file and one user file.


Revision 726 - Directory Listing
Modified Thu Apr 24 16:05:56 2003 UTC (21 years, 10 months ago) by jonathan
(Projection.SetName): New. Allows the name of the projection to be changed.
(ProjFile): Use a dictionary instead of a list so that removing
        projections is easier and we are sure about uniqueness.
(ProjFile.Remove): Remove the given projection object.


Revision 725 - Directory Listing
Modified Thu Apr 24 16:05:36 2003 UTC (21 years, 10 months ago) by jonathan
(Layer.GetProjection): New. Needed to implement the interface that the
        ProjFrame dialog expects.


Revision 724 - Directory Listing
Modified Thu Apr 24 16:05:17 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 723 - Directory Listing
Modified Thu Apr 24 15:31:53 2003 UTC (21 years, 10 months ago) by bh
First step towards table management. Introduce a simple data
abstraction so that we replace the data a layer uses more easily
in the next step.

* Thuban/Model/data.py: New file with a simple data abstraction
that bundles shapefile and dbffile into one object.

* Thuban/Model/session.py (Session.OpenShapefile): New method to
open shapefiles and return a shape store object

* Thuban/Model/layer.py (Layer.__init__): Pass the data as a store
object instead of a shapefile filename. This introduces a new
instance variable store holding the datastore. For intermediate
backwards compatibility keep the old instance variables.
(open_shapefile): Removed. No longer needed with the shape store.
(Layer.SetShapeStore, Layer.ShapeStore): New methods to set and
get the shape store used by a layer.
(Layer.Destroy): No need to explicitly destroy the shapefile or
table anymore.

* Thuban/UI/mainwindow.py (MainWindow.AddLayer)
(MainWindow.AddLayer): Use the session's OpenShapefile method to
open shapefiles

* Thuban/Model/load.py (ProcessSession.start_layer): Use the
session's OpenShapefile method to open shapefiles

* test/test_classification.py
(TestClassification.test_classification): Use the session's
OpenShapefile method to open shapefiles and build the filename in
a more platform independed way

* test/test_layer.py (TestLayer.setUp, TestLayer.tearDown):
Implement to have a session to use in the tests
(TestLayer.test_arc_layer, TestLayer.test_polygon_layer)
(TestLayer.test_point_layer, TestLayer.test_empty_layer): Use the
session's OpenShapefile method to open shapefiles
(TestLayerLegend.setUp): Instantiate a session so that we can use
it to open shapefiles.
(TestLayerLegend.tearDown): Make sure that all references to
layers and session are removed otherwise we may get a resource
leak

* test/test_map.py (TestMapAddLayer.test_add_layer)
(TestMapWithContents.setUp): Instantiate a session so that we can
use it to open shapefiles.
(TestMapWithContents.tearDown): Make sure that all references to
layers, maps and sessions are removed otherwise we may get a
resource leak
("__main__"): use support.run_tests() so that more info about
uncollected garbage is printed

* test/test_save.py (SaveSessionTest.testSingleLayer): Use the
session's OpenShapefile method to open shapefiles
("__main__"): use support.run_tests() so that more info about
uncollected garbage is printed

* test/test_selection.py (TestSelection.tearDown): Make sure that
all references to the session and the selection are removed
otherwise we may get a resource leak
(TestSelection.get_layer): Instantiate a session so that we can
use it to open shapefiles.
("__main__"): use support.run_tests() so that more info about
uncollected garbage is printed

* test/test_session.py (TestSessionBase.tearDown)
(TestSessionWithContent.tearDown): Make sure that all references
to the session and layers are removed otherwise we may get a
resource leak
(TestSessionWithContent.setUp): Use the session's OpenShapefile
method to open shapefiles


Revision 722 - Directory Listing
Modified Thu Apr 24 10:12:29 2003 UTC (21 years, 10 months ago) by jonathan
(XMLReader.read): Should have been checking if the file_or_filename object
        had the 'read' attribute.


Revision 721 - Directory Listing
Modified Thu Apr 24 10:11:55 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 720 - Directory Listing
Modified Wed Apr 23 10:40:12 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 719 - Directory Listing
Modified Wed Apr 23 10:40:00 2003 UTC (21 years, 10 months ago) by jonathan
Added test cases to handle nonexistent files, unreadable files, and
files that don't parse correctly.


Revision 718 - Directory Listing
Modified Wed Apr 23 10:39:46 2003 UTC (21 years, 10 months ago) by jonathan
Fixes RTbug #1813.
(ReadProjFile): Add documentation about which exceptions are raised.
    Always pass the exceptions up to the caller.
(GetProjFiles): If the directory can't be read return an empty list.
    If any of the proj files can't be read skip that file and go
    on to the next one.


Revision 717 - Directory Listing
Modified Wed Apr 23 08:59:57 2003 UTC (21 years, 10 months ago) by jonathan
Projection dialog. Allows the user to select from a list
of projection templates and optionally edit them and save new ones.

(ProjFrame): New. Main dialog.
(ProjPanel): Base class for projection specific panels.
(TMPanel): Projection panel for Transverse Mercartor.
(UTMPanel): Projection panel for Universal Transverse Mercartor.
(LCCPanel): Projection panel for Lambert Conic Conformal.
(GeoPanel): Projetion panel for Geographic Projection.


Revision 716 - Directory Listing
Modified Wed Apr 23 08:59:19 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 715 - Directory Listing
Modified Wed Apr 23 08:47:18 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 714 - Directory Listing
Modified Wed Apr 23 08:47:05 2003 UTC (21 years, 10 months ago) by jonathan
(TestProjection.test): New tests for GetParameter method.


Revision 713 - Directory Listing
Modified Wed Apr 23 08:46:54 2003 UTC (21 years, 10 months ago) by jonathan
(MainWindow.Projection): Use new projection dialog.


Revision 712 - Directory Listing
Modified Wed Apr 23 08:46:40 2003 UTC (21 years, 10 months ago) by jonathan
(Classifier.__init__): Use a wxChoice control instead of a wxComboBox.


Revision 711 - Directory Listing
Modified Wed Apr 23 08:46:23 2003 UTC (21 years, 10 months ago) by jonathan
(ClassGenDialog.__init__): Use a wxChoice control instead of a wxComboBox.
        wxChoice controls do not generate events as the uses highlights
        possible choices which fixes problems with resizing the dialog when
        the use selects an option.


Revision 710 - Directory Listing
Modified Wed Apr 23 08:45:57 2003 UTC (21 years, 10 months ago) by jonathan
(XMLWriter): Renamed from XMLSaver to promote symmetry.


Revision 709 - Directory Listing
Modified Wed Apr 23 08:45:44 2003 UTC (21 years, 10 months ago) by jonathan
Use XMLReader and XMLWriter.
(GetProjFiles): Renamed from GetProjections. Now returns a list
        of ProjFile objects.
(GetSystemProjFiles): Renamed from GetSuppliedProjections. Returns
        a list of ProjFile objects whose files are not user defined.
(GetUserProjFiles): Renamed from GetUserProjections. Returns a
        list of ProjFile objects whose files are user defined.
(ProjFileReader): Extend new XMLReader.


Revision 708 - Directory Listing
Modified Wed Apr 23 08:44:52 2003 UTC (21 years, 10 months ago) by jonathan
(Projection.GetParameters): Renamed to GetAllParameters.
(Projection.GetParameter): Returns the value for the given parameter.


Revision 707 - Directory Listing
Modified Wed Apr 23 08:44:34 2003 UTC (21 years, 10 months ago) by jonathan
(Map.GetProjection): New. Returns the map's projection.


Revision 706 - Directory Listing
Modified Wed Apr 23 08:44:21 2003 UTC (21 years, 10 months ago) by jonathan
(XMLReader): Renamed from XMLProcessor to
        promote symmetry. There now exists XMLReader and XMLWriter.
(XMLReader.read): New. Call to read the given file descriptor or
        filename.
(XMLReader.close): New. Make sure the file is closed.
(XMLReader.GetFileName): New. Return just the file name that is being read from.
(XMLReader.GetDirectory): New. Return just the directory of the file
        that is being read.
(XMLReader.AddDispatchers): New. Take a dictionary which contains
        the names of functions to call as the XML tree is parsed.
(XMLReader.startElementNS): Updated to use new dispatcher dictionary.
(XMLReader.endElementNS): Updated to use new dispatcher dictionary.
(SessionLoader): Removed class variables start_dispatcher and
        end_dispatcher since this functionality is now part of a class
        instance. Fixes RTbug #1808.
(SessionLoader.__init__): Add dispatcher functions.
(load_xmlfile): Code was moved into the XMLReader.read().
(load_session): Use modified SessionLoader.


Revision 705 - Directory Listing
Modified Tue Apr 22 16:55:58 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 704 - Directory Listing
Modified Tue Apr 22 16:55:50 2003 UTC (21 years, 10 months ago) by bh
Remove some unused imports and global
constants


Revision 703 - Directory Listing
Modified Tue Apr 22 16:43:43 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 702 - Directory Listing
Modified Tue Apr 22 16:43:30 2003 UTC (21 years, 10 months ago) by bh
(IdentifyListCtrl.selected_shape)
(IdentifyGridCtrl.selected_shape): Use table, not shapetable.


Revision 701 - Directory Listing
Modified Thu Apr 17 16:18:48 2003 UTC (21 years, 10 months ago) by bh
Don't import LAYER_LEGEND_CHANGED.
(Layer): Update doc-string since LAYER_LEGEND_CHANGED is not used
anymore.
(Layer.BoundingBox, Layer.GetFieldType, Layer.NumShapes)
(Layer.ShapeType, Layer.Shape): No need to call
self.open_shapefile since it's always called in __init__


Revision 700 - Directory Listing
Modified Thu Apr 17 15:20:25 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 699 - Directory Listing
Modified Thu Apr 17 15:20:14 2003 UTC (21 years, 10 months ago) by bh
(ThubanApplication.MainLoop): Removed.
In wxPython 2.4 there's no need to extend MainLoop anymore since
wxPython itself makes sure OnExit is called.


Revision 698 - Directory Listing
Modified Wed Apr 16 16:40:18 2003 UTC (21 years, 10 months ago) by jonathan
New test cases for the projection file read and write functions.


Revision 697 - Directory Listing
Modified Wed Apr 16 16:40:07 2003 UTC (21 years, 10 months ago) by jonathan
(XMLSaver): New. Contains all the general XML writing methods that were
        part of SessionSaver.
(SessionSaver): Renamed from Saver.


Revision 696 - Directory Listing
Modified Wed Apr 16 16:39:49 2003 UTC (21 years, 10 months ago) by jonathan
New. Contains general utilities for read and writing projection files.


Revision 695 - Directory Listing
Modified Wed Apr 16 16:39:36 2003 UTC (21 years, 10 months ago) by jonathan
(Projection.__init__): Accepts an optional name.
(ProjFile): New. Represents a file that contains projection information.


Revision 694 - Directory Listing
Modified Wed Apr 16 16:39:18 2003 UTC (21 years, 10 months ago) by jonathan
(XMLProcessor): New. Contains all the general XML reading methods that
        were part of ProcessSession.


Revision 693 - Directory Listing
Modified Wed Apr 16 16:39:03 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 692 - Directory Listing
Modified Wed Apr 16 14:10:10 2003 UTC (21 years, 10 months ago) by jonathan
changed the classification test data to include changing colors.


Revision 691 - Directory Listing
Modified Wed Apr 16 14:06:17 2003 UTC (21 years, 10 months ago) by jonathan
removed unnecessary extra <clnull> in the classification test data.


Revision 690 - Directory Listing
Modified Wed Apr 16 13:47:22 2003 UTC (21 years, 10 months ago) by jonathan
Rework the classification test to test that we can load old files.
(testLabels): Test a file where the groups have labels.


Revision 689 - Directory Listing
Modified Wed Apr 16 13:47:07 2003 UTC (21 years, 10 months ago) by jonathan
Use repr() around values in the ClassGroup*.__repr__() methods so it is
clearer when a value is a string and when it is a number.


Revision 688 - Directory Listing
Modified Wed Apr 16 13:46:48 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 687 - Directory Listing
Modified Wed Apr 16 13:22:45 2003 UTC (21 years, 10 months ago) by bh
updatte ChangeLog


Revision 686 - Directory Listing
Modified Wed Apr 16 13:22:25 2003 UTC (21 years, 10 months ago) by bh
Safer implementation of the performance enhancements of the
low-level renderer:

* extensions/thuban/wxproj.cpp (extract_projection)
(extract_pointer): Rename extract_projection to extract_pointer
and redefine its purpose to return the pointer stored in a CObject
returned by the object's cobject method. Update all callers.
(s_draw_info, free_draw_info, draw_polygon_init): Implement the
handling of these low-level parameters so that each s_draw_info
instance is handled as a CObject at python level that also
contains real references to the actual python objects which
contain the values in the struct. Add free_draw_info as the
destructor.
(draw_polygon_shape): Add the py_draw_info parameter which must a
cobject containing an s_draw_info pointer.

* Thuban/UI/renderer.py (MapRenderer.polygon_render_param): New
method to instantiat the low-level render parameter
(MapRenderer.draw_shape_layer): Use the new method. Remove some
commented out code.
(MapRenderer.draw_polygon_shape): Make the first parameter not the
layer but the low-level render parameter
(ScreenRenderer.draw_shape_layer): Use the low-level render
parameter.


Revision 685 - Directory Listing
Modified Tue Apr 15 21:56:08 2003 UTC (21 years, 10 months ago) by jonathan
test file for test_load.py


Revision 684 - Directory Listing
Modified Tue Apr 15 21:55:12 2003 UTC (21 years, 10 months ago) by jonathan
(testClassification): New. Loads the iceland_sample_test.thuban file and
        checks if it was loaded correctly.


Revision 683 - Directory Listing
Modified Tue Apr 15 21:54:56 2003 UTC (21 years, 10 months ago) by jonathan
(Saver.write_classification): Need to save the group label.


Revision 682 - Directory Listing
Modified Tue Apr 15 21:54:43 2003 UTC (21 years, 10 months ago) by jonathan
Implemented __repr__ to make debugging a bit easier.


Revision 681 - Directory Listing
Modified Tue Apr 15 21:54:32 2003 UTC (21 years, 10 months ago) by jonathan
Implemented __repr__ for the ClassGroup* classes to make debugging a bit easier.
(ClassGroup.SetLabel): Check that the string is an instance
        of StringTypes not StringType. Accounts for Unicode strings.


Revision 680 - Directory Listing
Modified Tue Apr 15 21:54:12 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 679 - Directory Listing
Modified Tue Apr 15 19:46:37 2003 UTC (21 years, 10 months ago) by jonathan
fix missed renaming


Revision 678 - Directory Listing
Modified Tue Apr 15 19:21:26 2003 UTC (21 years, 10 months ago) by jonathan
(ClassGroupProperties): Make instance variables private and optimize comparison
        operator by first checking if the color references are the same.
(ClassGroupSingleton): Make instance variables private.
(ClassGroupRange): Make instance variables private.


Revision 677 - Directory Listing
Modified Tue Apr 15 19:21:01 2003 UTC (21 years, 10 months ago) by jonathan
(GenUniformPanel): Fix spin control weirdness by setting the range to
        (1, maxint).


Revision 676 - Directory Listing
Modified Tue Apr 15 19:20:40 2003 UTC (21 years, 10 months ago) by jonathan
(MapRenderer.draw_shape_layer): Make drawing initialization call to
        draw_polygon_init()
(MapRenderer.draw_polygon_shape): Use new signature of draw_polygon_shape.


Revision 675 - Directory Listing
Modified Tue Apr 15 19:20:22 2003 UTC (21 years, 10 months ago) by jonathan
(draw_polygon_init): New. Used to improve rendering performance by initializing
        the variables that are not change each time draw_polygon_shape() is
        called.  The values are stored in a global struct draw_info.
(draw_polygon_shape): Removed initialization code that is now in
        draw_polygon_init().


Revision 674 - Directory Listing
Modified Tue Apr 15 19:19:48 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 673 - Directory Listing
Modified Tue Apr 15 19:17:39 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 672 - Directory Listing
Modified Tue Apr 15 18:20:53 2003 UTC (21 years, 10 months ago) by bh
update ChangeLog


Revision 671 - Directory Listing
Modified Tue Apr 15 18:09:47 2003 UTC (21 years, 10 months ago) by bh
* Thuban/__init__.py (_): Implement the translation function for
real using the python gettext module.

* Thuban/UI/classifier.py (ClassTable.GetRowLabelValue): Don't
translate empty strings.

* Thuban/UI/application.py (ThubanApplication.read_startup_files):
Add a missing space to a warning message

* po/README: New. Notes about the management of the translation
files.

* po/Makefile: New. Makefile to help manage the translation files.

* po/es.po: New. Spanish translation by Daniel Calvelo Aros

* MANIFEST.in: Include the *.mo files in Resources/Locale and the
translations and support files in po/

* setup.py (data_files): Add the *.mo files to the data_files too

* README: Add note about the translations when building from CVS


Revision 670 - Directory Listing
Modified Tue Apr 15 08:52:35 2003 UTC (21 years, 10 months ago) by jonathan
Filled in missing steps for releasing packages.


Revision 669 - Directory Listing
Modified Mon Apr 14 17:13:08 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 668 - Directory Listing
Modified Mon Apr 14 17:12:57 2003 UTC (21 years, 10 months ago) by jonathan
(LegendPanel.__init__): The toolbar should be allowed to grow within the sizer.
        Fixes a bug under Windows where the toolbar wasn't being drawn.


Revision 667 - Directory Listing
Modified Mon Apr 14 17:12:38 2003 UTC (21 years, 10 months ago) by jonathan
Fixes some window resizing problems most noticable under windows. Always
assume the button bitmaps will be there. Code clean up.
(DockabelWindow.Dock, DockableWindow.UnDock): Force all the images for the
        dock/undock button to the same images.  Work around for RTbug #1801.


Revision 666 - Directory Listing
Modified Mon Apr 14 16:36:33 2003 UTC (21 years, 10 months ago) by jonathan
Always assume the button bitmaps will be there. Code clean up.


Revision 665 - Directory Listing
Modified Mon Apr 14 16:35:19 2003 UTC (21 years, 10 months ago) by jonathan
remove print statement


Revision 664 - Directory Listing
Modified Mon Apr 14 16:22:08 2003 UTC (21 years, 10 months ago) by frank
Icon updates.


Revision 663 - Directory Listing
Modified Mon Apr 14 15:41:33 2003 UTC (21 years, 10 months ago) by frank
Updated design to try to make the button functionality more transparent.


Revision 662 - Directory Listing
Modified Mon Apr 14 14:16:14 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 661 - Directory Listing
Modified Mon Apr 14 14:16:00 2003 UTC (21 years, 10 months ago) by jonathan
(Classifier.__init__): Add a top level panel to the dialog so that the
background colors are consistent under Windows.


Revision 660 - Directory Listing
Modified Mon Apr 14 14:15:44 2003 UTC (21 years, 10 months ago) by jonathan
(ClassGenDialog.__init__): Actively set the current selections in the combo
boxes. This is needed under Windows.


Revision 659 - Directory Listing
Modified Mon Apr 14 14:07:05 2003 UTC (21 years, 10 months ago) by jonathan
Fixes some window resizing problems most noticable under windows.


Revision 658 - Directory Listing
Modified Mon Apr 14 14:06:30 2003 UTC (21 years, 10 months ago) by jonathan
Call Create() at the end of __init__.


Revision 657 - Directory Listing
Modified Fri Apr 11 18:29:57 2003 UTC (21 years, 10 months ago) by jonathan
check in to test dock changes under windows.


Revision 656 - Directory Listing
Modified Fri Apr 11 15:50:27 2003 UTC (21 years, 10 months ago) by jonathan
Added test for copying of classifications.


Revision 655 - Directory Listing
Modified Fri Apr 11 15:50:13 2003 UTC (21 years, 10 months ago) by jonathan
Enable/disable the legend buttons when the legend changes. Fixes RTbug #1793.


Revision 654 - Directory Listing
Modified Fri Apr 11 15:49:58 2003 UTC (21 years, 10 months ago) by jonathan
Change color ramps to start at white not black.


Revision 653 - Directory Listing
Modified Fri Apr 11 14:28:29 2003 UTC (21 years, 10 months ago) by jonathan
Added new menu item and associated code to open a dialog to rename the map.
(MainWindow): Use new resource class to import bitmaps.


Revision 652 - Directory Listing
Modified Fri Apr 11 14:28:08 2003 UTC (21 years, 10 months ago) by jonathan
Use new bitmaps for the control buttons.
(LegendTree._OnMsgLayerTitleChanged): Change the displayed title
        if the layer's title changes.


Revision 651 - Directory Listing
Modified Fri Apr 11 14:27:53 2003 UTC (21 years, 10 months ago) by jonathan
Use new bitmaps for the control buttons.


Revision 650 - Directory Listing
Modified Fri Apr 11 14:27:41 2003 UTC (21 years, 10 months ago) by jonathan
Refactored ID's from ID_CLASSIFY_* to ID_PROPERTY_*.
(Classifier.__init__): Minor changes to the layout.
(Classifier._OnTitleChanged): Listen for when the user edits the
        title and update the dialog's title and the layer's title.


Revision 649 - Directory Listing
Modified Fri Apr 11 14:27:12 2003 UTC (21 years, 10 months ago) by jonathan
(GenUniquePanel.__init__): Reordered buttons,
        added images to the move buttons, added 'reverse' button.
(CustomRampPanel.__init__): Added images to the move buttons.
(GreyRamp): New. Generates a ramp from white to black.
(HotToColdRamp): New. Generates a ramp from cold to hot colors.


Revision 648 - Directory Listing
Modified Fri Apr 11 14:26:54 2003 UTC (21 years, 10 months ago) by jonathan
New. Centralize the loading of resources such as bitmaps.


Revision 647 - Directory Listing
Modified Fri Apr 11 14:26:41 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 646 - Directory Listing
Modified Fri Apr 11 09:15:32 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 645 - Directory Listing
Modified Fri Apr 11 09:12:21 2003 UTC (21 years, 10 months ago) by jonathan
New bitmaps for the legend, dock, and 'generate class' windows.


Revision 644 - Directory Listing
Modified Thu Apr 10 17:56:52 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 643 - Directory Listing
Modified Thu Apr 10 17:55:57 2003 UTC (21 years, 10 months ago) by jonathan
(ClassGroupRange.__init__): Should pass group to ClassGroup constructor.


Revision 642 - Directory Listing
Modified Thu Apr 10 14:41:50 2003 UTC (21 years, 10 months ago) by jonathan
fixed bug where if there was no classification and the default was hidden,
the default was still being drawn.


Revision 641 - Directory Listing
Modified Thu Apr 10 14:36:19 2003 UTC (21 years, 10 months ago) by jonathan
(MapRenderer.draw_shape_layer): Only draw visible groups.


Revision 640 - Directory Listing
Modified Thu Apr 10 14:36:08 2003 UTC (21 years, 10 months ago) by jonathan
MainWindow.OpenClassifier renamed to
MainWindow.OpenLayerProperties. MainWindow.LayerEditProperties
renamed to MainWindow.LayerEditProperties.
(MainWindow.ToggleLegend): Don't include map name in legend title.
(MainWindow.SetMap): Added the map name to the window title.
(MainWindow.LayerFillColor, MainWindow.LayerTransparentFill,
        MainWindow.LayerOutlineColor, MainWindow.LayerNoOutline): Removed.
        Functionality is found in the layer properties dialog.


Revision 639 - Directory Listing
Modified Thu Apr 10 14:35:39 2003 UTC (21 years, 10 months ago) by jonathan
Classify button is now called "Properties".
Refactored the code to change variable names.
(LegendTree.__FillTreeLayer): Only list a group if it is visible.


Revision 638 - Directory Listing
Modified Thu Apr 10 14:35:20 2003 UTC (21 years, 10 months ago) by jonathan
(ClassTable): Add a new column for the "Visible" check boxes.
(Classifier): Rename the buttons and refactor the code to match the new labels.


Revision 637 - Directory Listing
Modified Thu Apr 10 14:35:03 2003 UTC (21 years, 10 months ago) by jonathan
(ClassGroup): Move all the common
        methods of the derived classes ([Set|Get]Properties(), __eq__, __ne__)
        here. Implement SetVisible(), IsVisible().
(ClassGroup.__init__): Add group parameter which acts as a copy
        constructor.


Revision 636 - Directory Listing
Modified Thu Apr 10 14:34:33 2003 UTC (21 years, 10 months ago) by jonathan
updated ChangeLog


Revision 635 - Directory Listing
Modified Wed Apr 9 15:42:25 2003 UTC (21 years, 11 months ago) by jonathan
Modifications to allow simple addition and selection of new color schemes.
(MonochromaticRamp): New. Generates a ramp between two colors.
(RedRamp): New. Generates a ramp of all red.
(GreenRamp): New. Generates a ramp of all green.
(BlueRamp): New. Generates a ramp of all blue.


Revision 634 - Directory Listing
Modified Wed Apr 9 15:41:58 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 633 - Directory Listing
Modified Wed Apr 9 10:11:07 2003 UTC (21 years, 11 months ago) by jonathan
Import just the Classifier class.


Revision 632 - Directory Listing
Modified Wed Apr 9 10:10:53 2003 UTC (21 years, 11 months ago) by jonathan
(LegendTree): Use a private method to
        consistently set the font and style of the text. Fixes RTbug #1786.


Revision 631 - Directory Listing
Modified Wed Apr 9 10:10:38 2003 UTC (21 years, 11 months ago) by jonathan
It was decided that if the user closes
a dockable window the window should simply hide itself. That
way if the user wants to show the dock again it appears in the
same place as it was when it was closed.
(DockableWindow.Destroy): Call renamed method OnDockDestroy().
(DockableWindow._OnButtonClose): Hide the window instead of
        destroying it.
(DockableWindow._OnClose): Hide the window instead of destroying it.


Revision 630 - Directory Listing
Modified Wed Apr 9 10:10:06 2003 UTC (21 years, 11 months ago) by jonathan
Removed a lot of debugging code.
(Classifier._SetClassification): Callback method so that the
        class generator can set the classification in the grid.
(ClassGroupPropertiesCtrl): New. Encapsulates the drawing and
        editing of a group properties class into a wxWindows control.


Revision 629 - Directory Listing
Modified Wed Apr 9 10:09:44 2003 UTC (21 years, 11 months ago) by jonathan
Renamed GenRangePanel to GenUniformPanel.
(GenUniquePanel): New. Controls to allow the user to select
        which unique field values they would like in the classification.
(CustomRampPanel): Code that was in ClassGenDialog that allows
        the user to select the properties for a custom ramp.
(ClassGenerator.GenUniformDistribution): Was called GenerateRanges.


Revision 628 - Directory Listing
Modified Wed Apr 9 10:09:15 2003 UTC (21 years, 11 months ago) by jonathan
(Table.field_range): New. Retrive the
        maximum and minimum values over the entire table for a given
        field.
(Table.GetUniqueValues): New. Retrieve all the unique values
        in the table for a given field.


Revision 627 - Directory Listing
Modified Wed Apr 9 10:08:47 2003 UTC (21 years, 11 months ago) by jonathan
(Classification.__deepcopy__): Need to copy over field and fieldType attributes.


Revision 626 - Directory Listing
Modified Wed Apr 9 10:08:27 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 625 - Directory Listing
Modified Mon Apr 7 13:35:13 2003 UTC (21 years, 11 months ago) by bh
update ChangeLog


Revision 624 - Directory Listing
Modified Mon Apr 7 13:34:54 2003 UTC (21 years, 11 months ago) by bh
(main_menu): Move the toggle_legend item
to the map module


Revision 623 - Directory Listing
Modified Mon Apr 7 10:54:54 2003 UTC (21 years, 11 months ago) by bh
update ChangeLog


Revision 622 - Directory Listing
Modified Mon Apr 7 10:54:32 2003 UTC (21 years, 11 months ago) by bh
(MainWindow.ShowSessionTree): Removed in
favor of ToggleSessionTree
(MainWindow.ToggleSessionTree): New method to toggle visibility of
the session tree.
(MainWindow.SessionTreeShown): New method to return whether the
session tree is currently shown.
(MainWindow.ToggleLegend): New method to toggle visibility of the
legend
(MainWindow.ShowLegend): Implement in terms of ToggleLegend and
LegendShown
(MainWindow.LegendShown): New method to return whether the legend
is currently shown.
(_method_command): Add checked parameter so we can define check
menu items
(_has_tree_window_shown, _has_legend_shown): Use the appropriate
mainwindow methods.
(show_session_tree, show_legend commands): Removed.
(toggle_session_tree, toggle_legend commands): New commands to
toggle the visibility of the dialogs


Revision 621 - Directory Listing
Modified Mon Apr 7 10:14:50 2003 UTC (21 years, 11 months ago) by jonathan
Use False instead of false.
(MainWindow.ShowLegend): Remove unnecessary switch parameter.


Revision 620 - Directory Listing
Modified Mon Apr 7 10:14:25 2003 UTC (21 years, 11 months ago) by jonathan
Fix Windows problem.


Revision 619 - Directory Listing
Modified Mon Apr 7 10:14:03 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 618 - Directory Listing
Modified Mon Apr 7 08:58:26 2003 UTC (21 years, 11 months ago) by jonathan
Fix tests to use the renamed methods.  Still need to write tests for the
new methods.


Revision 617 - Directory Listing
Modified Mon Apr 7 08:58:04 2003 UTC (21 years, 11 months ago) by jonathan
(check_version): If Thuban is compiled
        with a really old version of proj, PJ_VERSION won't even be defined.
        If it isn't defined then just compile so that the function always
        returns Py_False.


Revision 616 - Directory Listing
Modified Mon Apr 7 08:57:38 2003 UTC (21 years, 11 months ago) by jonathan
Put "Show Legend" and "Show Session Tree" into the same group.


Revision 615 - Directory Listing
Modified Mon Apr 7 08:57:20 2003 UTC (21 years, 11 months ago) by jonathan
Now that we can depend on the order in
        a Classification and have methods to manipulate that order we don't
        need to use our own data structures in the grid. We can simply make
        the grid/table access the information they need from a copy of
        the classification object.
(Classifier._OnCloseBtn): Event handler for when the user clicks
        'Close'. This is needed so if the user applies changes and then
        continues to change the table the user has the option of discarding
        the most recent changes and keeping what they applied.


Revision 614 - Directory Listing
Modified Mon Apr 7 08:56:38 2003 UTC (21 years, 11 months ago) by jonathan
Use Classification.AppendGroup(), not AddGroup()


Revision 613 - Directory Listing
Modified Mon Apr 7 08:55:55 2003 UTC (21 years, 11 months ago) by jonathan
(Classification.AppendGroup,
        Classification.InsertGroup, Classification.ReplaceGroup,
        Classification.RemoveGroup, Classification.GetGroup): Do as the
        names imply.
(Classification.FindGroup): This was called GetGroup, but GetGroup
        takes an index, while FindGroup takes a value.
(Classification.__deepcopy__): Copy all the groups, BUT NOT THE LAYER
        REFERENCE. Currently there is a cyclic reference between the layer
        and its classification. If the classification doesn't need to know
        its owning layer we can change this, since it may make sense to be
        able to use the same classification with different layers.


Revision 612 - Directory Listing
Modified Mon Apr 7 08:55:01 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 611 - Directory Listing
Modified Fri Apr 4 16:34:46 2003 UTC (21 years, 11 months ago) by jonathan
(Classifier.__SelectField): Move the
    call to SetSelection out of the method and before the call
    to __SelectField in __init__. This prevents a recursion of events
    when _OnFieldSelect is triggered by the user.


Revision 610 - Directory Listing
Modified Fri Apr 4 13:56:59 2003 UTC (21 years, 11 months ago) by jonathan
Rename Color.None to Color.Transparent.


Revision 609 - Directory Listing
Modified Fri Apr 4 13:55:59 2003 UTC (21 years, 11 months ago) by jonathan
Rename Color.None to
        Color.Transparent.
(ClassGroupProperties.SetLineColori, ClassGroupProperties.SetFill):
        Don't bother copying the color, since Colors are immutable.


Revision 608 - Directory Listing
Modified Fri Apr 4 13:55:36 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 607 - Directory Listing
Modified Fri Apr 4 12:16:57 2003 UTC (21 years, 11 months ago) by jonathan
(ClassGenDialog): Dialog for generating
        classifications.
(GenRangePanel): Panel specific to range generation.
(GenSingletonPanel): Panel specific to singleton generation.
(ClassGenerator): Class responsible for actually generating
        the classification from the data gathered in the dialog box.
(PropertyRamp): Generates properties whose values range from
        a starting property to an ending property.


Revision 606 - Directory Listing
Modified Fri Apr 4 12:16:39 2003 UTC (21 years, 11 months ago) by jonathan
Fix assert calls.
(ClassGrid._OnCellDClick): Call up to the classifier to open the
        dialog to edit the groups properties.
(ClassGrid._OnCellResize): Make sure that the scollbars are drawn
        correctly if a cell is resized.
(ClassTable.SetClassification): New. Changes the classification
        that is in the table.
(ClassTable.__SetRow): Allow groups to be prepended.
(Classifier): New code for opening the EditProperties and
        GenerateRanges dialogs.
(SelectPropertiesDialog.__GetColor): Only set the color in the
        color dialog if the current color is not None.


Revision 605 - Directory Listing
Modified Fri Apr 4 12:16:13 2003 UTC (21 years, 11 months ago) by jonathan
Fix assert calls.


Revision 604 - Directory Listing
Modified Fri Apr 4 12:15:31 2003 UTC (21 years, 11 months ago) by jonathan
(Color.__copy__, Color.__deepcopy): Copy
        the color object.
(NoColor.__copy__, NoColor.__deepcopy): Return 'self' so that we
        are sure there exists only one refernce to Color.None in the system.
        This allows us to use 'is' rather than the comparision functions.


Revision 603 - Directory Listing
Modified Fri Apr 4 12:15:00 2003 UTC (21 years, 11 months ago) by jonathan
fixed formatting


Revision 602 - Directory Listing
Modified Fri Apr 4 12:12:18 2003 UTC (21 years, 11 months ago) by jonathan
Fix assert calls.
    (ClassGroupProperties.SetLineColor, ClassGroupProperties.SetFill):
    Copy the color parameter rather than hold onto a reference.


Revision 601 - Directory Listing
Modified Fri Apr 4 12:11:59 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 600 - Directory Listing
Modified Thu Apr 3 11:37:26 2003 UTC (21 years, 11 months ago) by bh
update ChangeLog


Revision 599 - Directory Listing
Modified Thu Apr 3 11:37:13 2003 UTC (21 years, 11 months ago) by bh
Use support.run_tests instead of
unittest.main so we get memory leak information
(TestLayer.test_arc_layer, TestLayer.test_polygon_layer)
(TestLayer.test_point_layer, TestLayer.test_empty_layer)
(TestLayerLegend.test_visibility): Call the layer's Destroy method
to fix a memory leak.


Revision 598 - Directory Listing
Modified Thu Apr 3 11:37:10 2003 UTC (21 years, 11 months ago) by bh
Use support.run_tests instead of
unittest.main so we get memory leak information
(TestClassification.test_classification): Call the layer's Destroy
method to fix a memory leak.


Revision 597 - Directory Listing
Modified Thu Apr 3 11:37:06 2003 UTC (21 years, 11 months ago) by bh
(main): Use support.print_garbage_information


Revision 596 - Directory Listing
Modified Thu Apr 3 11:37:01 2003 UTC (21 years, 11 months ago) by bh
(print_garbage_information): New function that
prints information about still connected messages and memory
leaks.
(run_suite): Removed.
(run_tests): New function for use as a replacement of
unittest.main in the test_* files. This one calls
print_garbage_information at the end.


Revision 595 - Directory Listing
Modified Wed Apr 2 18:28:09 2003 UTC (21 years, 11 months ago) by bh
update ChangeLog


Revision 594 - Directory Listing
Modified Wed Apr 2 18:28:00 2003 UTC (21 years, 11 months ago) by bh
(check_version, check_version_gtk):
Handle the reference counts of the return value and errors in
PyArg_ParseTuple correctly.


Revision 593 - Directory Listing
Modified Wed Apr 2 18:26:22 2003 UTC (21 years, 11 months ago) by bh
update ChangeLog


Revision 592 - Directory Listing
Modified Wed Apr 2 18:26:12 2003 UTC (21 years, 11 months ago) by bh
(ThubanApplication.OpenSession): Make
sure the filename is absolute to avoid problems when saving the
session again


Revision 591 - Directory Listing
Modified Wed Apr 2 15:03:30 2003 UTC (21 years, 11 months ago) by bh
update ChangeLog


Revision 590 - Directory Listing
Modified Wed Apr 2 15:03:19 2003 UTC (21 years, 11 months ago) by bh
Remove unnecessary import. Fix a typo.


Revision 589 - Directory Listing
Modified Tue Apr 1 15:58:10 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 588 - Directory Listing
Modified Tue Apr 1 15:58:02 2003 UTC (21 years, 11 months ago) by jonathan
(MapRenderer.draw_point_shape): Check
        that there actually are points in the returned list of points
        before trying to index into the list. The list may be empty if
        the shape is a Null Shape.


Revision 587 - Directory Listing
Modified Tue Apr 1 15:57:28 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 586 - Directory Listing
Modified Tue Apr 1 10:41:16 2003 UTC (21 years, 11 months ago) by bh
update ChangeLOg


Revision 585 - Directory Listing
Modified Tue Apr 1 10:41:05 2003 UTC (21 years, 11 months ago) by bh
Don't use from <module> import *


Revision 584 - Directory Listing
Modified Tue Apr 1 10:22:35 2003 UTC (21 years, 11 months ago) by jonathan
Fix messages that are sent from maps and layers.


Revision 583 - Directory Listing
Modified Tue Apr 1 10:22:16 2003 UTC (21 years, 11 months ago) by jonathan
(DockableWindow._OnButtonClose): Call
        self.Destroy() to close the window after yesterday's changes.


Revision 582 - Directory Listing
Modified Tue Apr 1 10:22:01 2003 UTC (21 years, 11 months ago) by jonathan
Use LAYER_CHANGED instead of LAYER_LEGEND_CHANGED.


Revision 581 - Directory Listing
Modified Tue Apr 1 10:20:17 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 580 - Directory Listing
Modified Mon Mar 31 18:32:22 2003 UTC (21 years, 11 months ago) by jonathan
Renamed OnClose to _OnClose for
        symmetry with other such methods.
(MainWindow.ShowLegend): Show the legend docked by default.


Revision 579 - Directory Listing
Modified Mon Mar 31 18:32:07 2003 UTC (21 years, 11 months ago) by jonathan
Show the legend by default when Thuban starts.


Revision 578 - Directory Listing
Modified Mon Mar 31 18:31:46 2003 UTC (21 years, 11 months ago) by jonathan
(LegendPanel.Destroy): New. Cleans up
        when then window is told to close.
(LegendTree._OnMsgLayerChanged): Fixes a seg fault bug. See
        comment in source for more info.


Revision 577 - Directory Listing
Modified Mon Mar 31 18:31:33 2003 UTC (21 years, 11 months ago) by jonathan
(DockableWindow.UnDock): Restore size and
        position (although position doesn't work yet under GTK).
(DockableWindow.Destroy): New. Called when the window must be
        closed. Namely needed when the DockFrame closes and must close
        its children.
(DockFrame): Listen for EVT_CLOSE and destroy all children.


Revision 576 - Directory Listing
Modified Mon Mar 31 18:31:17 2003 UTC (21 years, 11 months ago) by jonathan
Commented out some debugging statements.
(ClassDataPreviewer.Draw): Draw rectangles for polygon layers per
        RTbug #1769.


Revision 575 - Directory Listing
Modified Mon Mar 31 18:30:51 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 574 - Directory Listing
Modified Fri Mar 28 17:07:26 2003 UTC (21 years, 11 months ago) by jonathan
(MapRenderer.__init__): Added assert
        to check if scale > 0. Trying to track down a divide by zero.


Revision 573 - Directory Listing
Modified Fri Mar 28 17:07:06 2003 UTC (21 years, 11 months ago) by jonathan
Removed legend specific code and replaced it with calls to the new dock code.


Revision 572 - Directory Listing
Modified Fri Mar 28 17:06:50 2003 UTC (21 years, 11 months ago) by jonathan
Modifications to support selecting a
        specific group in the classification dialog. Changed how layers
        are drawn when the layer is visible/invisible.


Revision 571 - Directory Listing
Modified Fri Mar 28 17:06:38 2003 UTC (21 years, 11 months ago) by jonathan
Complete rework on the dock code so that
        that it is fairly removed from the rest of the Thuban application.
        It is easy to add new docks which the rest of the program having
        to be aware of them.


Revision 570 - Directory Listing
Modified Fri Mar 28 17:06:26 2003 UTC (21 years, 11 months ago) by jonathan
Support for highlighting a specific
        group within the grid when the classification dialog is opened.
        Also contains a lot of debugging printouts which will later
        be removed.


Revision 569 - Directory Listing
Modified Fri Mar 28 17:06:11 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 568 - Directory Listing
Modified Wed Mar 26 11:51:28 2003 UTC (21 years, 11 months ago) by jonathan
Removed unnecessary LegendDialog class.
(LegendPanel): Removed _OnDock()/_OnUnDock() methods which are
        now part of DockableWindow.
(LegendPanel.DoOnSelChanged): Select the current layer in the map.
(LegendTree._OnSelChanged): Call LegendPanel.DoOnSelChanged()
        with the selected layer and/or group.


Revision 567 - Directory Listing
Modified Wed Mar 26 11:51:01 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 566 - Directory Listing
Modified Wed Mar 26 11:10:41 2003 UTC (21 years, 11 months ago) by jonathan
Added missing import line.


Revision 565 - Directory Listing
Modified Wed Mar 26 11:07:40 2003 UTC (21 years, 11 months ago) by jonathan
(MapCanves.SetMap): Listen for LAYER_CHANGED, not LAYER_LEGEND_CHANGED,messages.


Revision 564 - Directory Listing
Modified Wed Mar 26 11:07:19 2003 UTC (21 years, 11 months ago) by jonathan
Added DOCKABLE_* messages.


Revision 563 - Directory Listing
Modified Wed Mar 26 11:07:02 2003 UTC (21 years, 11 months ago) by jonathan
Added sash windows to the main window and supporting functions for
manipulating the sashes.
(MainWindow.ShowLegend): Create a DockableWindow with the LegendPanel as the
contents.


Revision 562 - Directory Listing
Modified Wed Mar 26 11:06:22 2003 UTC (21 years, 11 months ago) by jonathan
Added some more buttons and made the LegendPanel a DockPanel.


Revision 561 - Directory Listing
Modified Wed Mar 26 11:06:01 2003 UTC (21 years, 11 months ago) by jonathan
New. Classes for the DockPanel and DockableWindow.


Revision 560 - Directory Listing
Modified Wed Mar 26 11:05:47 2003 UTC (21 years, 11 months ago) by jonathan
(Classifier.__init__): Use wxADJUST_MINSIZE
        as one of the style properties for the fieldTypeText item to
        be sure that its size is correct when the text changes.


Revision 559 - Directory Listing
Modified Wed Mar 26 11:05:33 2003 UTC (21 years, 11 months ago) by jonathan
(Map): Forward LAYER_CHANGED messages.


Revision 558 - Directory Listing
Modified Wed Mar 26 11:05:20 2003 UTC (21 years, 11 months ago) by jonathan
(Layer.ClassChanged): Send a LAYER_CHANGED message, not a
LAYER_LEGEND_CHANGED message.


Revision 557 - Directory Listing
Modified Wed Mar 26 11:04:57 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 556 - Directory Listing
Modified Tue Mar 25 16:21:36 2003 UTC (21 years, 11 months ago) by jonathan
Added line saying to use the custom build script.


Revision 555 - Directory Listing
Modified Tue Mar 25 16:21:23 2003 UTC (21 years, 11 months ago) by jonathan
Added custom script bdist_rpm_build_script so that when the rpm is built
the path to wx-config is correct.


Revision 554 - Directory Listing
Modified Tue Mar 25 16:20:51 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 553 - Directory Listing
Modified Thu Mar 20 10:52:34 2003 UTC (21 years, 11 months ago) by jonathan
fixed proj version check bug where the check should have been minimum <= current.


Revision 552 - Directory Listing
Modified Thu Mar 20 09:45:43 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 551 - Directory Listing
Modified Thu Mar 20 09:45:33 2003 UTC (21 years, 11 months ago) by jonathan
Use new message names.


Revision 550 - Directory Listing
Modified Thu Mar 20 09:45:19 2003 UTC (21 years, 11 months ago) by jonathan
New code to open the legend.


Revision 549 - Directory Listing
Modified Thu Mar 20 09:45:07 2003 UTC (21 years, 11 months ago) by jonathan
 Remember if any changes have actually
        been applied so that if the dialog is cancelled without an application
        of changes we don't have to set a new classification.
(ClassDataPreviewer): Pulled out the window specific code and put it
        ClassDataPreviewWindow. ClassDataPreviewer can then be used to draw
        symbols on any DC.


Revision 548 - Directory Listing
Modified Thu Mar 20 09:44:49 2003 UTC (21 years, 11 months ago) by jonathan
Rename and use new messages.


Revision 547 - Directory Listing
Modified Thu Mar 20 09:44:35 2003 UTC (21 years, 11 months ago) by jonathan
New message to indicate that a layer's
        data has changed (LAYER_CHANGED). New map messages to indicate
        when layers have been added/removed/changed or if the stacking order
        of the layers has changed.


Revision 546 - Directory Listing
Modified Thu Mar 20 09:44:20 2003 UTC (21 years, 11 months ago) by jonathan
(Map): Rename messages and use new, more specific, messages.


Revision 545 - Directory Listing
Modified Thu Mar 20 09:44:04 2003 UTC (21 years, 11 months ago) by jonathan
(Layer.SetClassification): Generate a LAYER_CHANGED event instead of a
LAYER_LEGEND_CHANGED event.


Revision 544 - Directory Listing
Modified Thu Mar 20 09:43:48 2003 UTC (21 years, 11 months ago) by jonathan
(ClassGroup.GetDisplayText): New.  Returns a string which is appropriately
describes the group.


Revision 543 - Directory Listing
Modified Thu Mar 20 09:43:29 2003 UTC (21 years, 11 months ago) by jonathan
New command 'build_docs' which currently uses
        happydoc to generate html documentation for Thuban.


Revision 542 - Directory Listing
Modified Thu Mar 20 09:43:16 2003 UTC (21 years, 11 months ago) by jonathan
New. Creates a window that shows the map's
        Legend information and allows the user to add/modify classifications
        and how the layers are drawn on the map.


Revision 541 - Directory Listing
Modified Wed Mar 19 16:03:12 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 540 - Directory Listing
Modified Wed Mar 19 15:37:24 2003 UTC (21 years, 11 months ago) by jonathan
(verify_versions): New. Checks the versions of Python, wxPython,
and some other libraries.


Revision 539 - Directory Listing
Modified Wed Mar 19 15:36:40 2003 UTC (21 years, 11 months ago) by jonathan
(check_version): Checks the given
        version against what wxproj was compiled with.
(check_version_gtk): If wxproj was compiled with gtk then check
        the given version against the version of the gtk library
        currently being used.


Revision 538 - Directory Listing
Modified Fri Mar 14 20:45:39 2003 UTC (21 years, 11 months ago) by bh
update ChangeLog


Revision 537 - Directory Listing
Modified Fri Mar 14 20:43:50 2003 UTC (21 years, 11 months ago) by bh
Run the tests when the module is run as a
script


Revision 536 - Directory Listing
Modified Fri Mar 14 20:43:08 2003 UTC (21 years, 11 months ago) by bh
Test cases for the selection class


Revision 535 - Directory Listing
Modified Fri Mar 14 20:42:18 2003 UTC (21 years, 11 months ago) by bh
Implement multiple selected shapes

* Thuban/UI/selection.py: New module with a class to represent the
selection.

* Thuban/UI/messages.py (SELECTED_TABLE, SELECTED_MAP): Remove
these unused messages

* Thuban/UI/application.py (ThubanApplication.OnInit)
(ThubanApplication.OnExit, ThubanApplication.SetSession): The
interactor is gone now.
(ThubanApplication.CreateMainWindow): There is no interactor
anymore so we pass None as the interactor argument for now for
compatibility.

* Thuban/UI/view.py (MapCanvas.delegated_messages)
(MapCanvas.Subscribe, MapCanvas.Unsubscribe): In Subscribe and
Unsubscribe, delegate messages according to the delegated_messages
class variable.
(MapCanvas.__getattr__, MapCanvas.delegated_methods): Get some
attributes from instance variables as described with the
delegated_methods class variable.
(MapCanvas.__init__): New instance variable selection holding the
current selection
(MapCanvas.do_redraw): Deal with multiple selected shapes. Simply
pass them on to the renderer
(MapCanvas.SetMap): Clear the selection when a different map is
selected.
(MapCanvas.shape_selected): Simple force a complete redraw. The
selection class now takes care of only issueing SHAPES_SELECTED
messages when the set of selected shapes actually does change.
(MapCanvas.SelectShapeAt): The selection is now managed in
self.selection

* Thuban/UI/mainwindow.py (MainWindow.delegated_messages)
(MainWindow.Subscribe, MainWindow.Unsubscribe): In Subscribe and
Unsubscribe, delegate messages according to the delegated_messages
class variable.
(MainWindow.delegated_methods, MainWindow.__getattr__): Get some
attributes from instance variables as described with the
delegated_methods class variable.
(MainWindow.__init__): The interactor as ivar is gone. The
parameter is still there for compatibility. The selection messages
now come from the canvas.
(MainWindow.current_layer, MainWindow.has_selected_layer):
Delegate to the the canvas.
(MainWindow.LayerShowTable, MainWindow.Classify)
(MainWindow.identify_view_on_demand): The dialogs don't need the
interactor parameter anymore.

* Thuban/UI/tableview.py (TableFrame.__init__)
(LayerTableFrame.__init__, LayerTableFrame.OnClose)
(LayerTableFrame.row_selected): The interactor is gone. It's job
from the dialog's point of view is now done by the mainwindow,
i.e. the parent. Subscribe to SHAPES_SELECTED instead
of SELECTED_SHAPE

* Thuban/UI/dialogs.py (NonModalDialog.__init__): The interactor
is gone. It's job from the dialog's point of view is now done by
the mainwindow, i.e. the parent.

* Thuban/UI/classifier.py (Classifier.__init__): The interactor is
gone. It's job from the dialog's point of view is now done by the
mainwindow, i.e. the parent.

* Thuban/UI/tree.py (SessionTreeView.__init__): The interactor is
gone. It's job from the dialog's point of view is now done by the
mainwindow, i.e. the parent.
(SessionTreeCtrl.__init__): New parameter mainwindow which is
stored as self.mainwindow. The mainwindow is need so that the tree
can still subscribe to the selection messages.
(SessionTreeCtrl.__init__, SessionTreeCtrl.unsubscribe_all)
(SessionTreeCtrl.update_tree, SessionTreeCtrl.OnSelChanged): The
selection is now accessible through the mainwindow. Subscribe to
SHAPES_SELECTED instead of SELECTED_SHAPE

* Thuban/UI/identifyview.py (IdentifyView.__init__): Use the
SHAPES_SELECTED message now.
(IdentifyView.selected_shape): Now subscribed to SHAPES_SELECTED,
so deal with multiple shapes
(IdentifyView.__init__, IdentifyView.OnClose): The interactor is
gone. It's job from the dialog's point of view is now done by the
mainwindow, i.e. the parent.

* Thuban/UI/renderer.py (ScreenRenderer.RenderMap): Rename the
selected_shape parameter and ivar to selected_shapes. It's now a
list of shape ids.
(MapRenderer.draw_label_layer): Deal with multiple selected
shapes. Rearrange the code a bit so that the setup and shape type
distinctions are only executed once.


Revision 533 - Directory Listing
Modified Fri Mar 14 16:18:48 2003 UTC (21 years, 11 months ago) by jonathan
Fixed directory problem when creating a installation with Inno Setup by
defining the install_lib and install_data paths.


Revision 532 - Directory Listing
Modified Fri Mar 14 11:31:24 2003 UTC (21 years, 11 months ago) by jonathan
Adjust revision number.


Revision 531 - Directory Listing
Modified Fri Mar 14 11:19:22 2003 UTC (21 years, 11 months ago) by jonathan
adjust the order of some things.


Revision 530 - Directory Listing
Modified Wed Mar 12 19:58:00 2003 UTC (21 years, 11 months ago) by jonathan
Fixed problem with xml reading that caused exceptions


Revision 529 - Directory Listing
Modified Wed Mar 12 19:55:24 2003 UTC (21 years, 11 months ago) by jonathan
Handle the cyclic references between
        a layer and its classification better, and be sure to disconnect
        the classification from the layer when the layer is destroyed
        so that we don't maintain a cyclic reference that may not be
        garbage collected.


Revision 528 - Directory Listing
Modified Wed Mar 12 19:55:13 2003 UTC (21 years, 11 months ago) by jonathan
This comment is really for layer.py, but the motive was the same for
classification.py:

	Handle the cyclic references between
        a layer and its classification better, and be sure to disconnect
        the classification from the layer when the layer is destroyed
        so that we don't maintain a cyclic reference that may not be
        garbage collected.


Revision 527 - Directory Listing
Modified Wed Mar 12 19:54:04 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 526 - Directory Listing
Modified Wed Mar 12 19:17:49 2003 UTC (21 years, 11 months ago) by jonathan
Comments, and an extra import.


Revision 525 - Directory Listing
Modified Wed Mar 12 19:12:30 2003 UTC (21 years, 11 months ago) by jonathan
Testing fix for xml reader exceptions.


Revision 524 - Directory Listing
Modified Wed Mar 12 18:26:55 2003 UTC (21 years, 11 months ago) by jonathan
Fixed external entity problem.


Revision 523 - Directory Listing
Modified Wed Mar 12 17:08:23 2003 UTC (21 years, 11 months ago) by jan
added a HOWTO on releasing


Revision 522 - Directory Listing
Modified Wed Mar 12 17:08:00 2003 UTC (21 years, 11 months ago) by jan
Information on the steps for releasing a new version of Thuban.


Revision 521 - Directory Listing
Modified Wed Mar 12 13:18:50 2003 UTC (21 years, 11 months ago) by jonathan
Create an empty image to use when there is no special image for an item.


Revision 520 - Directory Listing
Modified Wed Mar 12 10:35:49 2003 UTC (21 years, 11 months ago) by jonathan
Try using a 0x0 image for items that don't need an image so that the
tree looks OK under Windows.


Revision 519 - Directory Listing
Modified Tue Mar 11 22:27:35 2003 UTC (21 years, 11 months ago) by jonathan
Undo last changes so that we now need wxWindows2.4


Revision 518 - Directory Listing
Modified Tue Mar 11 17:34:21 2003 UTC (21 years, 11 months ago) by jonathan
Use True instead of true.


Revision 517 - Directory Listing
Modified Tue Mar 11 17:28:39 2003 UTC (21 years, 11 months ago) by jonathan
About window shows version number.


Revision 516 - Directory Listing
Modified Tue Mar 11 16:45:37 2003 UTC (21 years, 11 months ago) by jonathan
Fixed file so that the field_type information is present.


Revision 515 - Directory Listing
Modified Tue Mar 11 16:45:20 2003 UTC (21 years, 11 months ago) by jonathan
Update some definitions to use wxWindows2.4 files.


Revision 514 - Directory Listing
Modified Tue Mar 11 16:44:44 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 513 - Directory Listing
Modified Tue Mar 11 16:42:38 2003 UTC (21 years, 11 months ago) by jonathan
Quick fix so that the ClassGrid works on wxWindows 2.3.


Revision 512 - Directory Listing
Modified Tue Mar 11 16:32:39 2003 UTC (21 years, 11 months ago) by jonathan
Use True instead of true.


Revision 511 - Directory Listing
Modified Tue Mar 11 16:27:52 2003 UTC (21 years, 11 months ago) by jonathan
More work with the classifier panel.


Revision 510 - Directory Listing
Modified Tue Mar 11 16:05:18 2003 UTC (21 years, 11 months ago) by jonathan
Fixed problem with unwanted tree item images under Windows.


Revision 509 - Directory Listing
Modified Tue Mar 11 09:45:59 2003 UTC (21 years, 11 months ago) by jonathan
Working to get wxPanel to behave correctly.


Revision 508 - Directory Listing
Modified Tue Mar 11 09:45:31 2003 UTC (21 years, 11 months ago) by jonathan
 Add normal border.


Revision 507 - Directory Listing
Modified Mon Mar 10 17:36:42 2003 UTC (21 years, 11 months ago) by jonathan
Add normal border to SelectPropertiesDialog.


Revision 506 - Directory Listing
Modified Mon Mar 10 15:49:22 2003 UTC (21 years, 11 months ago) by jonathan
(Classifier.__init__): Make the
        field type label grow so that when the text changes the
        size is updated correctly. This may be a wxWindows bug.


Revision 505 - Directory Listing
Modified Mon Mar 10 15:48:17 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 504 - Directory Listing
Modified Mon Mar 10 15:12:24 2003 UTC (21 years, 11 months ago) by jonathan
Changed SESSION_CHANGED to SESSION_REPLACED.  Go back to using OnClose()
instead of Shutdown().


Revision 503 - Directory Listing
Modified Mon Mar 10 15:12:09 2003 UTC (21 years, 11 months ago) by jonathan
Changed SESSION_CHANGED to SESSION_REPLACED.


Revision 502 - Directory Listing
Modified Mon Mar 10 15:11:53 2003 UTC (21 years, 11 months ago) by jonathan
(MainWindow.prepare_new_session): Call Close() instead of Shutdown().


Revision 501 - Directory Listing
Modified Mon Mar 10 15:11:39 2003 UTC (21 years, 11 months ago) by jonathan
Don't need Shutdown(); just use Close()!


Revision 500 - Directory Listing
Modified Mon Mar 10 15:11:24 2003 UTC (21 years, 11 months ago) by jonathan
Wrap text with _().
(ClassGrid.CreateTable): Set dimensions and size hints here,
        instead of in Reset, so we only set the size once.


Revision 499 - Directory Listing
Modified Mon Mar 10 15:10:48 2003 UTC (21 years, 11 months ago) by jonathan
updated ChangeLog


Revision 498 - Directory Listing
Modified Mon Mar 10 11:03:22 2003 UTC (22 years ago) by jonathan
(Classifier): SelectField() needed
        to know the old field index as well as the new one.


Revision 497 - Directory Listing
Modified Mon Mar 10 11:02:26 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 496 - Directory Listing
Modified Mon Mar 10 10:54:50 2003 UTC (22 years ago) by jonathan
(Classifier): Use __SelectField()
        to correctly set the table information and call this from
        __init__ and from _OnFieldSelect so that all the information
        is up to date when the dialog opens and when a field is changed.


Revision 495 - Directory Listing
Modified Mon Mar 10 10:54:26 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 494 - Directory Listing
Modified Mon Mar 10 10:45:33 2003 UTC (22 years ago) by jonathan
New and improved tests.


Revision 493 - Directory Listing
Modified Mon Mar 10 10:45:10 2003 UTC (22 years ago) by jonathan
Comment out print statement


Revision 492 - Directory Listing
Modified Mon Mar 10 10:44:57 2003 UTC (22 years ago) by jonathan
 Added ClassChanged() so that the
        classification can tell the layer when its data has changed.
        (Layer.SetClassification): Accepts None as an arguement to
        remove the current classification and correctly handles
        adding a new classification.


Revision 491 - Directory Listing
Modified Mon Mar 10 10:44:42 2003 UTC (22 years ago) by jonathan
(Classification): Don't use
        layer's message function directly, use the ClassChanged() method
        when then classification changes. SetField/SetFieldType/SetLayer
        must keep the information about field name and field type in
        sync when an owning layer is set or removed.


Revision 490 - Directory Listing
Modified Mon Mar 10 10:44:24 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 489 - Directory Listing
Modified Fri Mar 7 18:22:47 2003 UTC (22 years ago) by jonathan
removed print statement


Revision 488 - Directory Listing
Modified Fri Mar 7 18:21:25 2003 UTC (22 years ago) by jonathan
(SessionTreeView): Remove OnClose and let
        the parent class handle it. Add Shutdown() to unsubscibe from
        event notification and call the parent Shutdown(). This was
        necessary so the application can close the tree window.


Revision 487 - Directory Listing
Modified Fri Mar 7 18:21:03 2003 UTC (22 years ago) by jonathan
(MainWindow.prepare_new_session):
        Shuts down open dialogs. Used when a new session is created
        or a session is opened.
(MainWindow.SaveSession): Should only call application.SaveSession()
        if we don't call SaveSessionAs first.
(MainWindow.Classify): Allow different classifier dialogs for
        different layers.


Revision 486 - Directory Listing
Modified Fri Mar 7 18:20:46 2003 UTC (22 years ago) by jonathan
(NonModalDialog.Shutdown): New method which
        does what OnClose did, but can be called by the application to
        close a window. Needed when a session changes, and we have to
        close the classifier windows.


Revision 485 - Directory Listing
Modified Fri Mar 7 18:20:31 2003 UTC (22 years ago) by jonathan
Setting and Getting table values now
        uses a consistent set of functions.
(Classifier): Now non-modal. Has field type label which changes
        as the field changes. Keep track of buttons in a list so that
        we can enable/disable the buttons when the None field is selected.
(SelectPropertiesDialog): Add buttons to make the colors transparent.


Revision 484 - Directory Listing
Modified Fri Mar 7 18:20:10 2003 UTC (22 years ago) by jonathan
Implemented __copy__ and __deepcopy__ for ClassGroup* and ClassGroupProperites
so they can easily be copied by the classifier dialog.
(ClassGroupProperites.__init__): The default line color should
        have been Color.Black.


Revision 483 - Directory Listing
Modified Fri Mar 7 18:19:31 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 482 - Directory Listing
Modified Thu Mar 6 16:47:02 2003 UTC (22 years ago) by jonathan
Fixed and added tests for the classification classes.


Revision 481 - Directory Listing
Modified Thu Mar 6 16:46:36 2003 UTC (22 years ago) by jonathan
(SetClassification): prevent recursion between this method and
Classification.SetLayer().


Revision 480 - Directory Listing
Modified Thu Mar 6 16:46:19 2003 UTC (22 years ago) by jonathan
Addition of __eq__ and __ne__ methods.


Revision 479 - Directory Listing
Modified Thu Mar 6 16:46:07 2003 UTC (22 years ago) by jonathan
Minor documentation changes, Addition of __eq__ and __ne__ methods.
(Classification.SetLayer): prevent recursion between this method
        and Layer.SetClassification().


Revision 478 - Directory Listing
Modified Thu Mar 6 16:45:32 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 477 - Directory Listing
Modified Thu Mar 6 15:03:48 2003 UTC (22 years ago) by bh
update ChangeLog


Revision 476 - Directory Listing
Modified Thu Mar 6 15:03:37 2003 UTC (22 years ago) by bh
(ClassGrid.__init__)
(ClassGrid.CreateTable): Move the SetSelectionMode call to
CreateTable because otherwise it triggers an assertion in
wxPython/wxGTK 2.4.


Revision 475 - Directory Listing
Modified Wed Mar 5 18:40:25 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 474 - Directory Listing
Modified Wed Mar 5 18:40:03 2003 UTC (22 years ago) by jonathan
Put FIELDTYPE constants back


Revision 473 - Directory Listing
Modified Wed Mar 5 18:39:45 2003 UTC (22 years ago) by jonathan
import FIELDTYPE constants from table


Revision 472 - Directory Listing
Modified Wed Mar 5 18:39:12 2003 UTC (22 years ago) by jonathan
Move FIELDTYPE constants back to table.py


Revision 471 - Directory Listing
Modified Wed Mar 5 18:37:55 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 470 - Directory Listing
Modified Wed Mar 5 18:19:41 2003 UTC (22 years ago) by jonathan
Add field_type attribute to a classification.


Revision 469 - Directory Listing
Modified Wed Mar 5 18:19:25 2003 UTC (22 years ago) by jonathan
Function name changes.


Revision 468 - Directory Listing
Modified Wed Mar 5 18:19:13 2003 UTC (22 years ago) by jonathan
(MapRenderer.draw_shape_layer): Only get the layer classification once.
Don't try to classify values when the field is None: just use the default
properties.


Revision 467 - Directory Listing
Modified Wed Mar 5 18:18:38 2003 UTC (22 years ago) by jonathan
Put FIELDTYPE constants in common.py.  (Table): Add field_info_by_name() to
retrieve field information by specifying the field name, not the number.


Revision 466 - Directory Listing
Modified Wed Mar 5 18:18:20 2003 UTC (22 years ago) by jonathan
(Saver): Store field type information.


Revision 465 - Directory Listing
Modified Wed Mar 5 18:18:06 2003 UTC (22 years ago) by jonathan
(ProcessSession): Use proper string conversion function; fixes RTbug #1713.


Revision 464 - Directory Listing
Modified Wed Mar 5 18:17:47 2003 UTC (22 years ago) by jonathan
(Layer): Add GetFieldType to retreive the kind of data represented by a field.


Revision 463 - Directory Listing
Modified Wed Mar 5 18:17:30 2003 UTC (22 years ago) by jonathan
Documentation.


Revision 462 - Directory Listing
Modified Wed Mar 5 18:17:17 2003 UTC (22 years ago) by jonathan
Class documentation. Renaming of methods with Stroke to Line.
Groups are stored in a single list with the default as the first element.
Groups are searched in the order they appear in the list.


Revision 461 - Directory Listing
Modified Wed Mar 5 18:16:45 2003 UTC (22 years ago) by jonathan
Moved FIELDTYPE constants from table.py (Str2Num):
Only catch ValueError exceptions.


Revision 460 - Directory Listing
Modified Wed Mar 5 18:16:28 2003 UTC (22 years ago) by jonathan
Added class documentation.
        Fixed RTbug #1713, #1714. Added Move[Up|Down] buttons.
        Store just the groups in the table and generate the other
        column information when it is requested. Add "None" field
        to pull-down to select no classification.


Revision 459 - Directory Listing
Modified Wed Mar 5 18:16:06 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 458 - Directory Listing
Modified Tue Mar 4 13:43:16 2003 UTC (22 years ago) by bh
update ChangeLog


Revision 457 - Directory Listing
Modified Tue Mar 4 13:43:06 2003 UTC (22 years ago) by bh
Use correct syntax for optional attributes. Make
the fill and stroke layer attributes optional with suitable
default values. Add the stroke_width layer attribute. Use correct
syntax for empty elements. Make the attribute list for labels
refer to the label element.


Revision 456 - Directory Listing
Modified Tue Mar 4 11:32:31 2003 UTC (22 years ago) by bh
update ChangeLog


Revision 455 - Directory Listing
Modified Tue Mar 4 11:32:20 2003 UTC (22 years ago) by bh
(ClassGrid.__init__): Set the table
before the selection mode. Doing it the other way round triggers
an assertion in wxWindows.


Revision 454 - Directory Listing
Modified Tue Mar 4 11:31:47 2003 UTC (22 years ago) by bh
(escape): Fix typo in doc-string


Revision 453 - Directory Listing
Modified Tue Mar 4 11:31:39 2003 UTC (22 years ago) by bh
Remove unnecessary wxPython import


Revision 452 - Directory Listing
Modified Tue Mar 4 11:31:04 2003 UTC (22 years ago) by bh
(thuban_build_py.build): Add a comment about distutils in
Python 2.3 containing some of the functionality we implement in
setup.py ourselves.


Revision 451 - Directory Listing
Modified Tue Mar 4 10:33:56 2003 UTC (22 years ago) by jonathan
(ClassGrid): Moved OnCellDClick() from
        Classifier to ClassGrid. Added support for removing selected rows,
        which including code for keeping track of when cells are selected,
        and deselected.
(ClassTable): Support for added/removing rows. Fixed a problem
        with __ParseInput whereby it would not allow strings (only numbers)
        to be entered.
(Classifier): Added button and supporting code for removing selected rows.


Revision 450 - Directory Listing
Modified Tue Mar 4 10:33:28 2003 UTC (22 years ago) by jonathan
Use Layer.GetClassification() since the class attribute __classification is
now private.


Revision 449 - Directory Listing
Modified Tue Mar 4 10:33:08 2003 UTC (22 years ago) by jonathan
(ClassGroupRange.GetProperties): Parameter 'value' should default to None.


Revision 448 - Directory Listing
Modified Tue Mar 4 10:32:42 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 447 - Directory Listing
Modified Thu Feb 27 16:05:51 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 446 - Directory Listing
Modified Thu Feb 27 16:05:10 2003 UTC (22 years ago) by jonathan
Use new Classification and Group classes.


Revision 445 - Directory Listing
Modified Thu Feb 27 16:03:17 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 444 - Directory Listing
Modified Thu Feb 27 16:02:59 2003 UTC (22 years ago) by jonathan
Fix to create a tuple with a single value instead of simply returning the value.


Revision 443 - Directory Listing
Modified Thu Feb 27 15:55:42 2003 UTC (22 years ago) by jonathan
Use common.py functions.


Revision 442 - Directory Listing
Modified Thu Feb 27 15:55:25 2003 UTC (22 years ago) by jonathan
Use new Classification and Group functions.  Use common.py functions.


Revision 441 - Directory Listing
Modified Thu Feb 27 15:55:00 2003 UTC (22 years ago) by jonathan
Changes to use new Classification and Group functions.


Revision 440 - Directory Listing
Modified Thu Feb 27 15:54:27 2003 UTC (22 years ago) by jonathan
Fixes a test case failure.
(Saver.write_classification): Use new Classification and Group functions.


Revision 439 - Directory Listing
Modified Thu Feb 27 15:54:05 2003 UTC (22 years ago) by jonathan
Use new Classification and Group functions.


Revision 438 - Directory Listing
Modified Thu Feb 27 15:53:48 2003 UTC (22 years ago) by jonathan
Common functions used in several UI modules


Revision 437 - Directory Listing
Modified Thu Feb 27 15:53:21 2003 UTC (22 years ago) by jonathan
Fixed name resolution problem.


Revision 436 - Directory Listing
Modified Thu Feb 27 15:53:03 2003 UTC (22 years ago) by jonathan
 Changed the class hierarchy
        so that a Classification consists of Groups which return
        Properties when a value matches a Group.


Revision 435 - Directory Listing
Modified Thu Feb 27 15:52:48 2003 UTC (22 years ago) by jonathan
Moved color conversion functions into Thuban/UI/common.py.
(Str2Num): Now converts the float (not the string) to a long/int
        so that an exception isn't thrown.


Revision 434 - Directory Listing
Modified Thu Feb 27 15:51:55 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 433 - Directory Listing
Modified Mon Feb 24 18:47:49 2003 UTC (22 years ago) by jonathan
(MapCanvas.find_shape_at): Use method calls
        instead of accessing now non-existent class variables.


Revision 432 - Directory Listing
Modified Mon Feb 24 18:47:36 2003 UTC (22 years ago) by jonathan
(MapRenderer.draw_shape_layer): Change
        Classification method name from GetProperties to GetClassData.


Revision 431 - Directory Listing
Modified Mon Feb 24 18:47:21 2003 UTC (22 years ago) by jonathan
(MainWindow.OpenSession,
        MainWindow.SaveSessionAs): Text string changes so the dialogs
        have more meaningful titles.


Revision 430 - Directory Listing
Modified Mon Feb 24 18:47:06 2003 UTC (22 years ago) by jonathan
(SelectPropertiesDialog): Support
        for changing the stroke and fill colors and previewing the
        changes.


Revision 429 - Directory Listing
Modified Mon Feb 24 18:46:51 2003 UTC (22 years ago) by jonathan
(Saver.write_classificaton): Uses
        the new iterator to save the classification information.


Revision 428 - Directory Listing
Modified Mon Feb 24 18:46:35 2003 UTC (22 years ago) by jonathan
(Classification): Renamed
        GetProperties() to GetClassData(). Used the new iterator
        in TreeInfo().
(ClassIterator): Iterator implementation to iterate over the
        ClassData objects in a classification object.


Revision 427 - Directory Listing
Modified Mon Feb 24 18:46:13 2003 UTC (22 years ago) by jonathan
(Color2wxColour, wxColour2Color): Conversion functions from Thuban color
objects to wxWindow colour objects.


Revision 426 - Directory Listing
Modified Mon Feb 24 18:45:37 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 425 - Directory Listing
Modified Mon Feb 24 14:17:19 2003 UTC (22 years ago) by bh
update ChangeLog


Revision 424 - Directory Listing
Modified Mon Feb 24 14:17:07 2003 UTC (22 years ago) by bh
(MapRenderer.draw_shape_layer): Remove
unneeded Shape() call. Rendering is substantially faster without
it and it avoids some problems with broken shape files.


Revision 423 - Directory Listing
Modified Thu Feb 20 16:23:59 2003 UTC (22 years ago) by frank
Force minimal size of identify and label dialogs.


Revision 422 - Directory Listing
Modified Thu Feb 20 16:23:31 2003 UTC (22 years ago) by frank
(IdentifyView.__init__): Set size of dialog.


Revision 421 - Directory Listing
Modified Thu Feb 20 16:23:12 2003 UTC (22 years ago) by frank
(LabelDialog.dialog_layout): Set size of listctrl.


Revision 420 - Directory Listing
Modified Thu Feb 20 16:22:46 2003 UTC (22 years ago) by frank
(RecordListCtrl): Set minimal width for columns.


Revision 419 - Directory Listing
Modified Wed Feb 19 16:53:55 2003 UTC (22 years ago) by jonathan
New. Contains common routines used throughout
        the code.
(Str2Num): Takes a string and converts it to the "best" type of
        number.


Revision 418 - Directory Listing
Modified Wed Feb 19 16:53:38 2003 UTC (22 years ago) by jonathan
Add 'label' element


Revision 417 - Directory Listing
Modified Wed Feb 19 16:53:22 2003 UTC (22 years ago) by jonathan
Formatting changes.


Revision 416 - Directory Listing
Modified Wed Feb 19 16:53:08 2003 UTC (22 years ago) by jonathan
Use new Color and Classification methods.


Revision 415 - Directory Listing
Modified Wed Feb 19 16:52:51 2003 UTC (22 years ago) by jonathan
(ClassGrid): New class to represent a
        custom grid.
(ClassTable): Support for editing Values and Labels and for
        changing what type (point or range) of data is stored in each
        property based on how the user enters the data.
(Classifier): Support for saving the new classifications and
        launching the dialog to edit a property.
(SelectPropertiesDialog): New class for editing the visual
        properties of a classification (stroke color, width, and fill color)
(ClassPreviewer): Took the Draw method from ClassRenderer and
        made most of it into this new class. Intend to use this class in
        the SelectPropertiesDialog for previewing changes.


Revision 414 - Directory Listing
Modified Wed Feb 19 16:52:23 2003 UTC (22 years ago) by jonathan
(Saver): Use new Color and Classification methods


Revision 413 - Directory Listing
Modified Wed Feb 19 16:52:04 2003 UTC (22 years ago) by jonathan
(ProcessSession): Use new methods on Layer
        to get the classifcation and use the new ClassData* classes to
        hold the classification data. Use Str2Num to convert numbers
        properly.


Revision 412 - Directory Listing
Modified Wed Feb 19 16:51:50 2003 UTC (22 years ago) by jonathan
(Layer): Removed references to fill, stroke,
        stroke_width attributes. Made the 'classification' attribute private.
        New methods for setting/getting the classification.


Revision 411 - Directory Listing
Modified Wed Feb 19 16:51:30 2003 UTC (22 years ago) by jonathan
Added Color.None to represent something
        with no color. Color.Black represents the color black.
(NoColor): Helper class derived from Color to represent something
        with no color.


Revision 410 - Directory Listing
Modified Wed Feb 19 16:51:12 2003 UTC (22 years ago) by jonathan
(Classification):
        Uses the new ClassData* classes. Modification messages are
        passed up to the parent layer (if it exists).
(ClassData): New class to encapsulate the common data in each
        classification property.
(ClassDataDefault): Represents the Default class. data.
(ClassDataPoint): Represents a single class. data point
(ClassDataRange): Represents a class. range
(ClassDataMap): Represents a class. map (unused).


Revision 409 - Directory Listing
Modified Wed Feb 19 16:50:39 2003 UTC (22 years ago) by jonathan
Updated the tests to use the new functions that are in the respective classes.


Revision 408 - Directory Listing
Modified Wed Feb 19 16:49:49 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 405 - Directory Listing
Modified Fri Feb 14 17:40:41 2003 UTC (22 years ago) by bh
update ChangeLog


Revision 404 - Directory Listing
Modified Fri Feb 14 17:40:26 2003 UTC (22 years ago) by bh
(MapCanvas.OnLeftUp): Make sure that the
dragging flag is always set to 0 even when the tool implementation
raises an exception


Revision 403 - Directory Listing
Modified Fri Feb 14 11:20:19 2003 UTC (22 years ago) by tkoester
fixed spacing


Revision 402 - Directory Listing
Modified Tue Feb 11 15:19:47 2003 UTC (22 years ago) by bh
update ChangeLog


Revision 401 - Directory Listing
Modified Tue Feb 11 15:19:21 2003 UTC (22 years ago) by bh
(ThubanApplication.OnInit): Call the
new splash_screen method to determine whether the application
should display a splash screen. If it displays a splash screen do
not immediately show the main window.
(ThubanApplication.splash_screen): New method to create a splash
screen.
(ThubanApplication.ShowMainWindow): New. Show the main window.
Needed so the splash screen can display the mainwindow


Revision 400 - Directory Listing
Modified Tue Feb 11 14:29:09 2003 UTC (22 years ago) by jonathan
typo fix


Revision 399 - Directory Listing
Modified Tue Feb 11 14:24:14 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 398 - Directory Listing
Modified Tue Feb 11 14:23:45 2003 UTC (22 years ago) by jonathan
* Thuban/UI/classifier.py (ClassTable): Didn't need to hang
        onto the clinfo parameter, so removed the deepcopy().


Revision 397 - Directory Listing
Modified Tue Feb 11 14:23:32 2003 UTC (22 years ago) by jonathan
* Thuban/Model/classification.py: Added import line to fix
        feature conflicts between running on python2.2 and python2.1.


Revision 396 - Directory Listing
Modified Mon Feb 10 15:28:17 2003 UTC (22 years ago) by jonathan
updated ChangeLog


Revision 395 - Directory Listing
Modified Mon Feb 10 15:28:02 2003 UTC (22 years ago) by jonathan
fix tests to work with new code changes.


Revision 394 - Directory Listing
Modified Mon Feb 10 15:27:13 2003 UTC (22 years ago) by jonathan
* Thuban/UI/renderer.py (MapRenderer): Use the Get*() methods
        of the ClassData class.


Revision 393 - Directory Listing
Modified Mon Feb 10 15:26:54 2003 UTC (22 years ago) by jonathan
* Thuban/UI/mainwindow.py (MainWindow): Use the SetDefault*()
        methods of the Classification class.


Revision 392 - Directory Listing
Modified Mon Feb 10 15:26:30 2003 UTC (22 years ago) by jonathan
* Thuban/UI/classifier.py (ClassRenderer): New class to
        draw the classifications in the dialog box's table.
        (Classifier): Modified to use the ClassRenderer class.


Revision 391 - Directory Listing
Modified Mon Feb 10 15:26:11 2003 UTC (22 years ago) by jonathan
* Thuban/Model/save.py (Saver.open_element, Saver.close_element):
        Added element_open variable to track opening and closing of tags
        so that tags that don't span more than one line are closed with
        /> instead of </tag_name>. Use the GetDefault*() methods of
        the Classification class.


Revision 390 - Directory Listing
Modified Mon Feb 10 15:25:49 2003 UTC (22 years ago) by jonathan
* Thuban/Model/load.py (ProcessSession): Use the new ClassData
        object instead of a dictionary.


Revision 389 - Directory Listing
Modified Mon Feb 10 15:25:30 2003 UTC (22 years ago) by jonathan
* Thuban/Model/layer.py (Layer): Remove the
        Set[Fill|Stroke|StrokeWidth]() methods. Code should call the
        SetDefault*() methods on the layer's classification object.
        (Layer.__init__): Use the new SetDefault*() methods in the
        Classification class.


Revision 388 - Directory Listing
Modified Mon Feb 10 15:25:05 2003 UTC (22 years ago) by jonathan
* Thuban/Model/classification.py (Classificaton): Added set and
        get methods for the default data. The class also takes a layer
        reference so that modification messages can be sent. Fixed the
        methods to use the new ClassData class.
        (ClassData): New class to encapsulate the classification data


Revision 387 - Directory Listing
Modified Mon Feb 3 11:44:41 2003 UTC (22 years, 1 month ago) by jonathan
updated ChangeLog


Revision 386 - Directory Listing
Modified Mon Feb 3 11:44:27 2003 UTC (22 years, 1 month ago) by jonathan
Modified these functions to change the null data in the classification rather
than keep these values directly in the Layer class. Menu options to change
these values work again.


Revision 385 - Directory Listing
Modified Mon Feb 3 11:43:56 2003 UTC (22 years, 1 month ago) by jonathan
Added getNull() to return the NullData reference


Revision 384 - Directory Listing
Modified Tue Jan 28 18:38:17 2003 UTC (22 years, 1 month ago) by jonathan
update ChangeLog


Revision 383 - Directory Listing
Modified Tue Jan 28 18:38:03 2003 UTC (22 years, 1 month ago) by jonathan
Handle drawing Colors in the tree view.


Revision 382 - Directory Listing
Modified Tue Jan 28 18:37:35 2003 UTC (22 years, 1 month ago) by jonathan
Added a call to build the tree info for classifications. Commented out
unnecessary lines.


Revision 381 - Directory Listing
Modified Tue Jan 28 18:37:05 2003 UTC (22 years, 1 month ago) by jonathan
New function TreeInfo to add information about the classification
into the tree view.


Revision 380 - Directory Listing
Modified Tue Jan 28 12:55:47 2003 UTC (22 years, 1 month ago) by jonathan
update ChangeLog


Revision 379 - Directory Listing
Modified Tue Jan 28 12:54:01 2003 UTC (22 years, 1 month ago) by jonathan
added i18n wrapper _() to text


Revision 378 - Directory Listing
Modified Tue Jan 28 12:13:28 2003 UTC (22 years, 1 month ago) by jonathan
fixed merging conflict


Revision 377 - Directory Listing
Modified Tue Jan 28 12:09:56 2003 UTC (22 years, 1 month ago) by jonathan
fixed a missed conflict


Revision 376 - Directory Listing
Modified Tue Jan 28 12:01:38 2003 UTC (22 years, 1 month ago) by jonathan
fix i18n merge conflict


Revision 375 - Directory Listing
Modified Mon Jan 27 14:20:40 2003 UTC (22 years, 1 month ago) by jan
preparation for i18n


Revision 374 - Directory Listing
Modified Mon Jan 27 14:20:02 2003 UTC (22 years, 1 month ago) by jan
Replace user string by _() for i18n.


Revision 373 - Directory Listing
Modified Mon Jan 27 14:11:43 2003 UTC (22 years, 1 month ago) by jan
(_): New.


Revision 372 - Directory Listing
Modified Mon Jan 27 13:50:58 2003 UTC (22 years, 1 month ago) by jonathan
Dialog box for modifying classification information


Revision 371 - Directory Listing
Modified Mon Jan 27 13:49:39 2003 UTC (22 years, 1 month ago) by jonathan
Encapsulates classification information for a layer


Revision 370 - Directory Listing
Modified Mon Jan 27 12:21:23 2003 UTC (22 years, 1 month ago) by jonathan
notes about classification modifications


Revision 369 - Directory Listing
Modified Mon Jan 27 11:53:51 2003 UTC (22 years, 1 month ago) by jonathan
tests for Classification class


Revision 368 - Directory Listing
Modified Mon Jan 27 11:52:26 2003 UTC (22 years, 1 month ago) by jonathan
iceland sample with classification information


Revision 367 - Directory Listing
Modified Mon Jan 27 11:50:30 2003 UTC (22 years, 1 month ago) by jonathan
added information about classification


Revision 366 - Directory Listing
Modified Mon Jan 27 11:48:17 2003 UTC (22 years, 1 month ago) by jonathan
added support to save classification information


Revision 365 - Directory Listing
Modified Mon Jan 27 11:47:53 2003 UTC (22 years, 1 month ago) by jonathan
added support to load classification information


Revision 364 - Directory Listing
Modified Mon Jan 27 11:47:12 2003 UTC (22 years, 1 month ago) by jonathan
added classification initializations


Revision 363 - Directory Listing
Modified Mon Jan 27 11:40:13 2003 UTC (22 years, 1 month ago) by jonathan
added 'Classify' option in 'Layer' menu


Revision 362 - Directory Listing
Modified Mon Jan 27 11:39:03 2003 UTC (22 years, 1 month ago) by jonathan
added support for drawing classifications


Revision 361 - Directory Listing
Modified Mon Dec 9 10:34:37 2002 UTC (22 years, 2 months ago) by bh
update ChangeLog


Revision 360 - Directory Listing
Modified Mon Dec 9 10:34:18 2002 UTC (22 years, 2 months ago) by bh
New. Test for the command classes.


Revision 359 - Directory Listing
Modified Mon Dec 9 10:32:51 2002 UTC (22 years, 2 months ago) by bh
update ChangeLog


Revision 358 - Directory Listing
Modified Mon Dec 9 10:32:39 2002 UTC (22 years, 2 months ago) by bh
(simple_tool): Use the
SelectTool method to change the tool
(iconfile): Use the ToolCommand class


Revision 357 - Directory Listing
Modified Mon Dec 9 10:32:27 2002 UTC (22 years, 2 months ago) by bh
(MainWindow.update_command_ui): If an
active tool's command turns insensitive, disable the tool.
(_tool_command): Use the new ToolCommand class


Revision 356 - Directory Listing
Modified Mon Dec 9 10:32:15 2002 UTC (22 years, 2 months ago) by bh
(MapCanvas.SelectTool): New method to select
the tool to avoid direct assignments to instance variables
(MapCanvas.ZoomInTool, MapCanvas.ZoomOutTool, MapCanvas.PanTool)
(MapCanvas.IdentifyTool, MapCanvas.LabelTool): Use SelectTool to
change the tool


Revision 355 - Directory Listing
Modified Mon Dec 9 10:31:58 2002 UTC (22 years, 2 months ago) by bh
(ToolCommand): New class for tool commands.
(Command.IsTool): New method to distinguish between command
switching tools and other commands.


Revision 354 - Directory Listing
Modified Tue Dec 3 17:35:47 2002 UTC (22 years, 3 months ago) by bh
update ChangeLog


Revision 353 - Directory Listing
Modified Tue Dec 3 17:35:30 2002 UTC (22 years, 3 months ago) by bh
(SessionTreeCtrl.normalize_selection): Handle
the case of selected items that are not children of Layers or Maps
properly. Previously this bug would trigger an assertion in
wxWindows.


Revision 352 - Directory Listing
Modified Wed Nov 6 14:47:01 2002 UTC (22 years, 4 months ago) by frank
Toolbar icon order changed.


Revision 351 - Directory Listing
Modified Wed Nov 6 14:46:33 2002 UTC (22 years, 4 months ago) by frank
Altered the order of tools in the toolbar:
First now are all navigation tools (Zoom In/Out, Pan, Full Extent).


Revision 349 - Directory Listing
Modified Wed Oct 23 14:46:18 2002 UTC (22 years, 4 months ago) by bh
update ChangeLog


Revision 348 - Directory Listing
Modified Wed Oct 23 14:45:57 2002 UTC (22 years, 4 months ago) by bh
(setup call): version now 0.1.3


Revision 347 - Directory Listing
Modified Wed Oct 23 14:45:47 2002 UTC (22 years, 4 months ago) by bh
Add the files in test/


Revision 346 - Directory Listing
Modified Wed Oct 23 14:45:28 2002 UTC (22 years, 4 months ago) by bh
(MainWindow.About): Add 2002 to copyright notice.


Revision 345 - Directory Listing
Modified Wed Oct 23 14:45:14 2002 UTC (22 years, 4 months ago) by bh
Add note about tests requiring the iceland data


Revision 344 - Directory Listing
Modified Fri Oct 18 17:29:22 2002 UTC (22 years, 4 months ago) by bh
update ChangeLog


Revision 343 - Directory Listing
Modified Fri Oct 18 17:28:56 2002 UTC (22 years, 4 months ago) by bh
(TestMapWithContents.test_projected_bounding_box): Use an explicit
epsilon.


Revision 342 - Directory Listing
Modified Fri Oct 18 17:28:46 2002 UTC (22 years, 4 months ago) by bh
(FloatComparisonMixin.assertFloatEqual)
(FloatComparisonMixin.assertFloatSeqEqual): give a more useful
message if the assertion fails and don't return the return value
of self.assert_. In assertFloatSeqEqual the return meant that not
all items of the sequence were compared.


Revision 341 - Directory Listing
Modified Fri Sep 20 17:33:13 2002 UTC (22 years, 5 months ago) by bh
update ChangeLog


Revision 340 - Directory Listing
Modified Fri Sep 20 17:32:59 2002 UTC (22 years, 5 months ago) by bh
New. Test cases for Thuban.Lib.fileutil


Revision 339 - Directory Listing
Modified Fri Sep 20 17:27:36 2002 UTC (22 years, 5 months ago) by bh
Fixup some whitespace and typos


Revision 338 - Directory Listing
Modified Fri Sep 20 16:26:31 2002 UTC (22 years, 5 months ago) by bh
update ChangeLog


Revision 337 - Directory Listing
Modified Fri Sep 20 16:26:21 2002 UTC (22 years, 5 months ago) by bh
(TestMapWithContents.test_tree_info): Create
the string with the bounding box on the fly because of platform
differences in the way %g is handled.


Revision 336 - Directory Listing
Modified Fri Sep 20 16:26:09 2002 UTC (22 years, 5 months ago) by bh
(TestLayer.test_empty_layer): Create an empty
DBFfile too because Thuban layers can't yet cope missing DBF
files.


Revision 335 - Directory Listing
Modified Fri Sep 20 15:51:37 2002 UTC (22 years, 5 months ago) by bh
update ChangeLog


Revision 334 - Directory Listing
Modified Fri Sep 20 15:51:17 2002 UTC (22 years, 5 months ago) by bh
New. Test cases for Thuban.Model.session


Revision 333 - Directory Listing
Modified Fri Sep 20 15:47:07 2002 UTC (22 years, 5 months ago) by bh
New. Test cases for Thuban.Model.proj


Revision 332 - Directory Listing
Modified Fri Sep 20 15:45:59 2002 UTC (22 years, 5 months ago) by bh
New. Test cases for Thuban.Model.map


Revision 331 - Directory Listing
Modified Fri Sep 20 14:34:23 2002 UTC (22 years, 5 months ago) by bh
New. Test cases for Thuban.Model.layer


Revision 330 - Directory Listing
Modified Fri Sep 20 14:30:34 2002 UTC (22 years, 5 months ago) by bh
New. Test cases for Thuban.Model.label


Revision 329 - Directory Listing
Modified Fri Sep 20 14:27:00 2002 UTC (22 years, 5 months ago) by bh
New. Test cases for Thuban.Lib.connector


Revision 328 - Directory Listing
Modified Fri Sep 20 14:07:26 2002 UTC (22 years, 5 months ago) by bh
New. Test cases for Thuban.Model.color


Revision 327 - Directory Listing
Modified Fri Sep 20 14:06:41 2002 UTC (22 years, 5 months ago) by bh
New. Test cases for Thuban.Model.base


Revision 326 - Directory Listing
Modified Fri Sep 20 13:56:09 2002 UTC (22 years, 5 months ago) by bh
update ChangeLog


Revision 325 - Directory Listing
Modified Fri Sep 20 13:55:52 2002 UTC (22 years, 5 months ago) by bh
Use initthuban instead of
add_thuban_dir_to_path to initialize Thuban.


Revision 324 - Directory Listing
Modified Fri Sep 20 13:55:42 2002 UTC (22 years, 5 months ago) by bh
(FloatComparisonMixin.assertFloatEqual): New.
Mixin class for float comparisons
(SubscriberMixin): New. Mixin class to test messages sent through
the Connector class


Revision 323 - Directory Listing
Modified Fri Sep 20 13:44:00 2002 UTC (22 years, 5 months ago) by bh
Fix a typo and add the -v flag to the command for
individual tests


Revision 322 - Directory Listing
Modified Fri Sep 13 14:21:58 2002 UTC (22 years, 5 months ago) by bh
update ChangeLog


Revision 321 - Directory Listing
Modified Fri Sep 13 14:21:48 2002 UTC (22 years, 5 months ago) by bh
(MainWindow.view_position_changed)
(MainWindow.set_position_text): Put the code that puts the text
with the mouse position into the status bar into the new method
set_position_text so that it can overwritten in derived classes.


Revision 320 - Directory Listing
Modified Fri Sep 13 14:21:30 2002 UTC (22 years, 5 months ago) by bh
(Modifiable.UnsetModified): Issue a CHANGED
event if the modified flag changes.
(Modifiable.changed): Tweak the doc-string.


Revision 319 - Directory Listing
Modified Fri Sep 13 14:21:24 2002 UTC (22 years, 5 months ago) by bh
(Map.forwarded_channels): Forward the
CHANGED channel too.
(Map.__init__): Call the Modifiable constructor as well.


Revision 318 - Directory Listing
Modified Fri Sep 13 14:21:12 2002 UTC (22 years, 5 months ago) by bh
(Session.forwarded_channels): Forward
the CHANGED channel too.


Revision 317 - Directory Listing
Modified Thu Sep 12 18:46:09 2002 UTC (22 years, 5 months ago) by bh
update ChangeLog


Revision 316 - Directory Listing
Modified Thu Sep 12 18:46:01 2002 UTC (22 years, 5 months ago) by bh
(MainWindow.RunMessageBox): Center the
message box on the main window.


Revision 315 - Directory Listing
Modified Wed Sep 11 15:18:19 2002 UTC (22 years, 5 months ago) by bh
update ChangeLog


Revision 314 - Directory Listing
Modified Wed Sep 11 15:18:09 2002 UTC (22 years, 5 months ago) by bh
(MainWindow.build_menu): remove an incorrect comment.


Revision 313 - Directory Listing
Modified Wed Sep 11 13:59:46 2002 UTC (22 years, 5 months ago) by bh
update ChangeLog


Revision 312 - Directory Listing
Modified Wed Sep 11 13:59:37 2002 UTC (22 years, 5 months ago) by bh
Underline the 'x' in "Exit" instead of
the 'E' because it's less likely to interfere with other menu
entries.


Revision 311 - Directory Listing
Modified Tue Sep 10 16:45:32 2002 UTC (22 years, 5 months ago) by bh
update ChangeLog


Revision 310 - Directory Listing
Modified Tue Sep 10 16:45:22 2002 UTC (22 years, 5 months ago) by bh
(MainWindow.Map): New.
(_tool_command): Add sensitive parameter
(_has_visible_map): Sensitivity callback to tools and other
commands that require a visible map. Use it in map_zoom_in_tool,
map_zoom_out_tool, map_pan_tool, map_identify_tool, map_label_tool
and map_full_extent


Revision 308 - Directory Listing
Modified Fri Sep 6 10:01:27 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 307 - Directory Listing
Modified Fri Sep 6 10:01:16 2002 UTC (22 years, 6 months ago) by bh
(MainWindow.OnClose): Unsubscribe VIEW_POSITION


Revision 306 - Directory Listing
Modified Wed Sep 4 12:39:04 2002 UTC (22 years, 6 months ago) by frank
Updated Resources/Bitmaps/fullextent.xpm


Revision 305 - Directory Listing
Modified Wed Sep 4 12:36:08 2002 UTC (22 years, 6 months ago) by frank
Updated Icon


Revision 304 - Directory Listing
Modified Mon Sep 2 16:47:59 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 303 - Directory Listing
Modified Mon Sep 2 16:47:53 2002 UTC (22 years, 6 months ago) by bh
* Thuban/UI/view.py: Get rid of the idle redraw. This is done by
wxWindows already and our implementation doesn't work correctly
with wxGTK 2.3:
(MapCanvas.__init__): Remove the instance variable
(MapCanvas.OnPaint): Always call do_redraw when there's a map to
be drawin
(MapCanvas.OnIdle): Removed.


Revision 302 - Directory Listing
Modified Mon Sep 2 15:59:27 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 301 - Directory Listing
Modified Mon Sep 2 15:59:11 2002 UTC (22 years, 6 months ago) by bh
(MapCanvas.unprojected_rect_around_point): Add
a parameter to determine the size of the rectangle.
(MapCanvas.find_shape_at): Create the box around the point on a
layer by layer basis and make the size depend on the shape type.
This solves a problem with the selection of point shapes at the
border of the layer's bounding box


Revision 300 - Directory Listing
Modified Fri Aug 30 17:41:11 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 299 - Directory Listing
Modified Fri Aug 30 17:41:04 2002 UTC (22 years, 6 months ago) by bh
(MainWindow.CanRemoveLayer): New method
for the sensitivity  of remove layer.
(_can_remove_layer): New. Sensitivity callback for remove layer
(Command layer_remove): Use _can_remove_layer


Revision 298 - Directory Listing
Modified Fri Aug 30 17:40:52 2002 UTC (22 years, 6 months ago) by bh
(Map.CanRemoveLayer): New method to
determine whether a given layer can be deleted.


Revision 297 - Directory Listing
Modified Fri Aug 30 16:10:57 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 296 - Directory Listing
Modified Fri Aug 30 16:10:45 2002 UTC (22 years, 6 months ago) by bh
* Thuban/UI/view.py (MapCanvas.__init__, MapCanvas.OnPaint)
(MapCanvas.do_redraw): Get rid of the unused update_region
instance variable


Revision 295 - Directory Listing
Modified Fri Aug 30 10:39:17 2002 UTC (22 years, 6 months ago) by bh
Add some more doc-strings.


Revision 294 - Directory Listing
Modified Fri Aug 30 10:19:11 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 293 - Directory Listing
Modified Fri Aug 30 10:18:50 2002 UTC (22 years, 6 months ago) by bh
Add/update some doc-strings.


Revision 292 - Directory Listing
Modified Fri Aug 30 09:44:12 2002 UTC (22 years, 6 months ago) by bh
Initial set of tests and
brief instructions on how to run them


Revision 291 - Directory Listing
Modified Thu Aug 29 14:11:38 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 290 - Directory Listing
Modified Thu Aug 29 14:11:28 2002 UTC (22 years, 6 months ago) by bh
(ScreenRenderer.draw_shape_layer): Handle
arcs with multiple parts.


Revision 289 - Directory Listing
Modified Thu Aug 29 13:31:54 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 288 - Directory Listing
Modified Thu Aug 29 13:31:43 2002 UTC (22 years, 6 months ago) by bh
(ZoomInTool.MouseUp, ZoomOutTool.MouseUp):
Handle degenrate rectangles.


Revision 287 - Directory Listing
Modified Thu Aug 29 11:22:07 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 286 - Directory Listing
Modified Thu Aug 29 11:21:52 2002 UTC (22 years, 6 months ago) by bh
Make writing records work correctly:
(Table.__init__): Keep track of whether the DBF is open for
writing
(Table.write_record): Open the DBF file for writing when necessary


Revision 285 - Directory Listing
Modified Tue Aug 27 14:08:43 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 284 - Directory Listing
Modified Tue Aug 27 14:08:32 2002 UTC (22 years, 6 months ago) by bh
(Table.write_record, Table.__init__): Open
dbf files only for reading by default. Use a new writable dbf
object for writing.


Revision 283 - Directory Listing
Modified Tue Aug 27 14:00:12 2002 UTC (22 years, 6 months ago) by bh
* dbflib.i: Raise an exception if open or create fails.

* shapelib.i: Slightly better wording for the IOError exception
that open and create may raise.

* shapelib_wrap.c, dbflib_wrap.c: Regenerated


Revision 282 - Directory Listing
Modified Mon Aug 26 18:16:54 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 281 - Directory Listing
Modified Mon Aug 26 18:16:36 2002 UTC (22 years, 6 months ago) by bh
* Thuban/UI/mainwindow.py: Refactor the context creation:
(MainWindow.Context): New method to return a context
(MainWindow.invoke_command, MainWindow.update_command_ui): Use the
new method


Revision 280 - Directory Listing
Modified Mon Aug 26 15:06:24 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 279 - Directory Listing
Modified Mon Aug 26 15:06:01 2002 UTC (22 years, 6 months ago) by bh
(LayerTableGrid.select_shape): Remove a debug print


Revision 278 - Directory Listing
Modified Mon Aug 26 12:50:23 2002 UTC (22 years, 6 months ago) by bh
* Thuban/UI/tableview.py (TableGrid, LayerTableGrid): Split the
layer table specific code from TableGrid into LayerTableGrid
(TableFrame, LayerTableFrame): Split the layer table specific code
from TableFrame into LayerTableFrame

* Thuban/UI/mainwindow.py (MainWindow.LayerShowTable): Use the
LayerTableFrame


Revision 277 - Directory Listing
Modified Fri Aug 23 15:25:14 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 276 - Directory Listing
Modified Fri Aug 23 15:25:07 2002 UTC (22 years, 6 months ago) by bh
(Layer.__init__): Make sure we have an
absolute filename.


Revision 275 - Directory Listing
Modified Thu Aug 22 16:26:05 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 274 - Directory Listing
Modified Thu Aug 22 16:25:46 2002 UTC (22 years, 6 months ago) by bh
* Thuban/Model/table.py (Table.write_record): New method to write
records.
(Table.__init__): Open the DBF file for writing too.

* Thuban/UI/controls.py (RecordTable.SetValue): Write the value
into the underlying table.


Revision 273 - Directory Listing
Modified Thu Aug 22 16:00:26 2002 UTC (22 years, 6 months ago) by bh
* dbflib.i (DBFFile::commit): New method for DBFCommit.

* dbflib_wrap.c, dbflib.py: Update from dbflib.i


Revision 272 - Directory Listing
Modified Thu Aug 22 16:00:01 2002 UTC (22 years, 6 months ago) by bh
* extensions/shapelib/shapefil.h (DBFCommit),
extensions/shapelib/dbfopen.c (DBFCommit): New API function to
commit any changes made to the DBF file.


Revision 271 - Directory Listing
Modified Thu Aug 22 13:46:54 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 270 - Directory Listing
Modified Thu Aug 22 13:46:46 2002 UTC (22 years, 6 months ago) by bh
(make_check_current_tool)
(_tool_command): Put the code that generates the "checked"
callback into a separate function so that we can reuse it
elsewhere


Revision 269 - Directory Listing
Modified Thu Aug 22 10:25:55 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 268 - Directory Listing
Modified Thu Aug 22 10:25:43 2002 UTC (22 years, 6 months ago) by bh
(Saver): New class to handle serializing a
session into an XML file. The main reason to introduce a class is
that applications built on Thuban can derive from it so that they
can save additional information in a session file.
(save_session): Delegate almost all the work to the Saver class.
Rename the filename argument to file because it may be a file like
object now.


Revision 267 - Directory Listing
Modified Thu Aug 22 10:25:30 2002 UTC (22 years, 6 months ago) by bh
Get rid of the Python 1.5.2 compatibility
code. Remove the little test code which would be executed when the
module is run as a script which didn't work anymore since it can't
import the other Thuban modules.
(ProcessSession, load_session): Refactor the ProcessSession to
have one method for each element start and end tag so that derived
classes can easily override the processing of individual tags.
Also, always parse with namespaces enabled because applications
built on top of Thuban will likely use namespaces if they extend
the session file format.


Revision 266 - Directory Listing
Modified Wed Aug 21 09:15:26 2002 UTC (22 years, 6 months ago) by bh
(ThubanInstall.run): Don't repr install_lib_orig
because thubaninit_contents will do it for us.


Revision 265 - Directory Listing
Modified Fri Aug 16 17:07:36 2002 UTC (22 years, 6 months ago) by jan
tree window


Revision 264 - Directory Listing
Modified Fri Aug 16 17:06:38 2002 UTC (22 years, 6 months ago) by jan
menu item 'show session tree' now disable if tree window already open


Revision 263 - Directory Listing
Modified Thu Aug 15 17:45:19 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 262 - Directory Listing
Modified Thu Aug 15 17:44:52 2002 UTC (22 years, 6 months ago) by bh
* shapelib.i, dbflib.i: Make the NOCHECK trick for the ShapeFile *
check typemap work with SWIG 1.3.

* shapelib_wrap.c, dbflib_wrap.c: Regenerate from the .i files.


Revision 261 - Directory Listing
Modified Thu Aug 15 17:44:33 2002 UTC (22 years, 6 months ago) by bh
(MapCanvas.OnLeftUp): Only release the mouse
when we have actually captured it.


Revision 260 - Directory Listing
Modified Thu Aug 15 17:43:59 2002 UTC (22 years, 6 months ago) by bh
* Thuban/Model/layer.py (Layer.Destroy): Call the unboundd method
with self.


Revision 259 - Directory Listing
Modified Thu Aug 15 12:48:13 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 258 - Directory Listing
Modified Thu Aug 15 12:48:03 2002 UTC (22 years, 6 months ago) by bh
(Layer.Destroy): New. Explicitly close the
shapefile and destroy the table.


Revision 257 - Directory Listing
Modified Thu Aug 15 12:47:59 2002 UTC (22 years, 6 months ago) by bh
(Table.Destroy): New. Close the DBF file.


Revision 256 - Directory Listing
Modified Wed Aug 14 15:08:14 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 255 - Directory Listing
Modified Wed Aug 14 15:08:01 2002 UTC (22 years, 6 months ago) by bh
(RecordTable.__init__): Remove the unused
instance variable columns
(RecordTable.GetTypeName): row and col may be negative in some
cases.


Revision 254 - Directory Listing
Modified Wed Aug 14 13:39:08 2002 UTC (22 years, 6 months ago) by bh
update ChangeLog


Revision 253 - Directory Listing
Modified Wed Aug 14 13:38:45 2002 UTC (22 years, 6 months ago) by bh
(InstallLocal.initialize_options)
(InstallLocal.finalize_options, InstallLocal.user_options): New
option create-init-file to build a thubaninit.py when running
install_local
(InstallLocal.run): Create the thubaninit.py module when requested
(thubaninit_contents): Split the template into several parts and
create a new function thubaninit_contents that creates the
contents of a thubaninit module.
(ThubanInstall.run): Use the new function to create the thubaninit
module.


Revision 252 - Directory Listing
Modified Tue Jul 30 14:18:59 2002 UTC (22 years, 7 months ago) by bh
update ChangeLog


Revision 251 - Directory Listing
Modified Tue Jul 30 14:18:40 2002 UTC (22 years, 7 months ago) by bh
(ThubanApplication.OnExit): Do some cleanup.
(ThubanApplication.MainLoop): Extend to automatically call OnExit.


Revision 250 - Directory Listing
Modified Tue Jul 30 14:17:58 2002 UTC (22 years, 7 months ago) by bh
(Session.Destroy): Don't bypass the
direct base class' Destroy method.


Revision 249 - Directory Listing
Modified Tue Jul 30 14:17:33 2002 UTC (22 years, 7 months ago) by bh
(Map.ClearLayers): New method to delete all
layers.
(Map.Destroy): Destroy the label_layer as well and call the
inherited Desatroymethod first so that no more messages are
issued.
(Map.RaiseLayer, Map.LowerLayer): Only issue LAYERS_CHANGED
message if the stacking order actually has changed. Add
doc-strings.
(Map.BoundingBox): Correct the doc-string.
(Map.AddLayer, Map.RemoveLayer, Map.Layers, Map.HasLayers)
(Map.ProjectedBoundingBox, Map.SetProjection): Add doc-strings.


Revision 248 - Directory Listing
Modified Tue Jul 30 14:15:39 2002 UTC (22 years, 7 months ago) by bh
(LabelLayer.ClearLabels): New to delete
all labels.


Revision 247 - Directory Listing
Modified Mon Jul 29 13:38:13 2002 UTC (22 years, 7 months ago) by bh
update ChangeLog


Revision 246 - Directory Listing
Modified Mon Jul 29 13:38:04 2002 UTC (22 years, 7 months ago) by bh
(MapCanvas.find_shape_at): Change the
selected_layer parameter to searched_layer which is the layer to
search in.
(MapCanvas.SelectShapeAt): New parameter layer to restrict the
search to that layer. Return the selected layer and shape.


Revision 245 - Directory Listing
Modified Mon Jul 29 13:37:55 2002 UTC (22 years, 7 months ago) by bh
(Map.subscribe_layer_channels)
(Map.unsubscribe_layer_channels): Put the code that (un)subscribes
to a layer's channels into separate methods.
(Map.RemoveLayer, Map.AddLayer): Call the new methods
(Map.Destroy): Unsubscribe from a layer's channels before
destroying it.


Revision 244 - Directory Listing
Modified Mon Jul 29 13:37:42 2002 UTC (22 years, 7 months ago) by bh
(simple_tool): Fix a typo


Revision 243 - Directory Listing
Modified Wed Jul 24 17:16:41 2002 UTC (22 years, 7 months ago) by bh
update ChangeLog


Revision 242 - Directory Listing
Modified Wed Jul 24 17:16:31 2002 UTC (22 years, 7 months ago) by bh
(ThubanApplication.create_session):
Extend the doc string.
(ThubanApplication.subscribe_session)
(ThubanApplication.unsubscribe_session): New methods to
subscribe/unsubscribe to/from session channels.
(ThubanApplication.SetSession): Call the new methods here.
(ThubanApplication.maps_changed, ThubanApplication.set_map):
Renamed set_map to maps_changed. Its now a subscriber for
MAPS_CHANGED.


Revision 241 - Directory Listing
Modified Wed Jul 24 17:16:17 2002 UTC (22 years, 7 months ago) by bh
(Session.RemoveMap): New


Revision 240 - Directory Listing
Modified Wed Jul 24 17:16:09 2002 UTC (22 years, 7 months ago) by bh
(Modifiable.changed): Apply the args tuple,
don't pass it as a parameter


Revision 239 - Directory Listing
Modified Wed Jul 24 17:15:54 2002 UTC (22 years, 7 months ago) by bh
(ZoomOutTool.MouseUp): Use the correct
x-coordinate in case of simple clicks


Revision 238 - Directory Listing
Modified Wed Jul 24 10:19:46 2002 UTC (22 years, 7 months ago) by bh
(MainWindow.__init__): Turn the initial
window size into a parameter.


Revision 237 - Directory Listing
Modified Tue Jul 23 16:53:35 2002 UTC (22 years, 7 months ago) by bh
update ChangeLog


Revision 236 - Directory Listing
Modified Tue Jul 23 16:53:14 2002 UTC (22 years, 7 months ago) by bh
(Menu.item_index): Also search for menus not
just commands.


Revision 235 - Directory Listing
Modified Tue Jul 23 10:56:29 2002 UTC (22 years, 7 months ago) by bh
* Thuban/UI/mainwindow.py (MainWindow.__init__): Change the
parameter list a bit to allow setting the window title and the
initial message in the status bar. Update the callers.

* Thuban/UI/application.py (ThubanApplication.OnInit)
(ThubanApplication.CreateMainWindow): Put the mainwindow
instantiation into a separate method so that it can be overridden
by a subclass.


Revision 234 - Directory Listing
Modified Fri Jul 19 15:15:26 2002 UTC (22 years, 7 months ago) by bh
update ChangeLog


Revision 233 - Directory Listing
Modified Fri Jul 19 15:15:16 2002 UTC (22 years, 7 months ago) by bh
	* Thuban/UI/tree.py: We can now simply subscribe to the session's
	CHANGED channel to be informed of changes.
	(SessionTreeCtrl.session_channels): Not needed any longer.
	(SessionTreeCtrl.unsubscribe_all, SessionTreeCtrl.session_changed):
	Only have to (un)subscribe CHANGED


Revision 232 - Directory Listing
Modified Fri Jul 19 15:14:57 2002 UTC (22 years, 7 months ago) by bh
	* Thuban/Model/session.py: Issue a CHANGED message every time
	another changed message is issued to make it easier to get
	notified of changes.
	(Session): Update the doc string
	(Session.forward): Issue changed-events as CHANGED as well.
	(Session.changed): Overwrite the inherited version to issue
	CHANGED events as well.


Revision 231 - Directory Listing
Modified Fri Jul 19 15:13:05 2002 UTC (22 years, 7 months ago) by bh
	* Thuban/Model/map.py (Map.TreeInfo): Deal better with empty maps.


Revision 230 - Directory Listing
Modified Fri Jul 19 13:21:14 2002 UTC (22 years, 7 months ago) by bh
* Thuban/UI/main.py, Thuban/UI/__init__.py: Move the work-around
for the wxPython locale bug to __init__.py so that it's
automatically executed by anybody using UI code from Thuban.


Revision 229 - Directory Listing
Modified Thu Jul 18 16:27:44 2002 UTC (22 years, 7 months ago) by bh
	* Thuban/UI/application.py (ThubanApplication.OnInit): Instantiate
	the main window with self.


Revision 228 - Directory Listing
Modified Thu Jul 18 16:27:20 2002 UTC (22 years, 7 months ago) by bh
update ChangeLog


Revision 227 - Directory Listing
Modified Thu Jul 18 16:27:11 2002 UTC (22 years, 7 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.__init__): Add application
	as parameter and store it in an instance variable
	(MainWindow.invoke_command, MainWindow.update_command_ui)
	(MainWindow.save_modified_session, MainWindow.NewSession)
	(MainWindow.OpenSession, MainWindow.SaveSession)
	(MainWindow.SaveSessionAs, MainWindow.ShowSessionTree): Use self's
	application object.


Revision 226 - Directory Listing
Modified Thu Jul 18 16:26:11 2002 UTC (22 years, 7 months ago) by bh
	* Thuban/UI/main.py (main): app no longer needs to be global


Revision 225 - Directory Listing
Modified Thu Jul 18 13:04:39 2002 UTC (22 years, 7 months ago) by bh
update ChangeLog


Revision 224 - Directory Listing
Modified Thu Jul 18 13:04:06 2002 UTC (22 years, 7 months ago) by bh
	* Examples/simple_extensions/simple_command.py (simple_command):
	Handle the new context implementation. Update the comments about
	the context.


Revision 223 - Directory Listing
Modified Thu Jul 18 13:03:39 2002 UTC (22 years, 7 months ago) by bh
	* Examples/simple_extensions/simple_tool.py (simple_tool,
	check_simple_tool): Handle the new context implementation


Revision 222 - Directory Listing
Modified Thu Jul 18 13:03:08 2002 UTC (22 years, 7 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.invoke_command,
	MainWindow.update_command_ui): Pass an instance of the context
	class to the command's methods
	(check_current_tool, call_method): Handle the new context
	implementation


Revision 221 - Directory Listing
Modified Thu Jul 18 13:01:55 2002 UTC (22 years, 7 months ago) by bh
	* Thuban/UI/command.py (Command): Update doc string.


Revision 220 - Directory Listing
Modified Thu Jul 18 13:00:37 2002 UTC (22 years, 7 months ago) by bh
New module with the context class


Revision 219 - Directory Listing
Modified Thu Jul 18 12:55:07 2002 UTC (22 years, 7 months ago) by bh
	* Thuban/UI/application.py (ThubanApplication.SetSession): Add
	doc-string
	(ThubanApplication.Session): New method to return the session
	object


Revision 218 - Directory Listing
Modified Thu Jul 18 12:54:48 2002 UTC (22 years, 7 months ago) by bh
	* Thuban/UI/tree.py (SessionTreeCtrl.update_tree): The
	interactor's selected_layer may not be a layer of the current
	session when the tree is updated while a new session is being set.


Revision 217 - Directory Listing
Modified Wed Jul 17 10:50:40 2002 UTC (22 years, 7 months ago) by bh
* Thuban/UI/tree.py (color_string): Removed. No longer used.
(SessionTreeCtrl.update_tree, SessionTreeCtrl.add_items): Split
update_tree into update_tree and add_items. The tree now uses a
more generic way to display the contents of the tree.
(SessionTreeCtrl): Add a doc string explaining the TreeInfo method

* Thuban/Model/layer.py (Layer.TreeInfo),
Thuban/Model/extension.py (Extension.TreeInfo),
Thuban/Model/map.py (Map.TreeInfo),
Thuban/Model/session.py (Session.TreeInfo):
Add TreeInfo methods to implement the new tree view update scheme


Revision 216 - Directory Listing
Modified Tue Jul 16 15:26:15 2002 UTC (22 years, 7 months ago) by bh
update ChangeLog


Revision 215 - Directory Listing
Modified Tue Jul 16 15:26:06 2002 UTC (22 years, 7 months ago) by bh
	* Thuban/UI/application.py: Don't use "import from" for the
	MainWindow. It can't always be resolved.
	(ThubanApplication.OnInit): change reference to MainWindow
	accordingly.


Revision 214 - Directory Listing
Modified Tue Jul 16 15:25:24 2002 UTC (22 years, 7 months ago) by bh
	* Thuban/UI/menu.py (Menu.SetItems): New method to replace a menu
	completely


Revision 213 - Directory Listing
Modified Wed Jul 10 14:06:20 2002 UTC (22 years, 7 months ago) by bh
update ChangeLog


Revision 212 - Directory Listing
Modified Wed Jul 10 14:06:09 2002 UTC (22 years, 7 months ago) by bh
	* setup.py (create_init_module): New configurable variable whose
	default depends on the platform we're running on.
	(ThubanInstall.initialize_options): Initialize
	self.create_init_module from the global create_init_module
	(ThubanInstall.user_options): indictate that the options
	create-init-module and init-module-dir have arguments.

	* setup.py: In the setup call change the version number to include
	cvs.


Revision 211 - Directory Listing
Modified Wed Jul 10 14:05:53 2002 UTC (22 years, 7 months ago) by bh
	* MANIFEST.in: Add the files in Examples


Revision 210 - Directory Listing
Modified Tue Jul 9 16:17:38 2002 UTC (22 years, 8 months ago) by bh
update ChangeLog


Revision 209 - Directory Listing
Modified Tue Jul 9 16:17:32 2002 UTC (22 years, 8 months ago) by bh
	* setup.py: In the setup call, use the thuban homepage as the
	value of the url parameter.


Revision 208 - Directory Listing
Modified Tue Jul 9 14:57:03 2002 UTC (22 years, 8 months ago) by bh
* Examples/simple_extensions/simple_tool.xpm,
Examples/simple_extensions/simple_tool.py,
Examples/simple_extensions/simple_command.py,
Examples/simple_extensions/README: Simple examples showing how to
add new commands and tools.


Revision 207 - Directory Listing
Modified Tue Jul 9 14:06:48 2002 UTC (22 years, 8 months ago) by bh
update ChangeLog


Revision 206 - Directory Listing
Modified Tue Jul 9 14:06:40 2002 UTC (22 years, 8 months ago) by bh
	* setup.cfg (bdist_rpm): Add the default value for prefix and tell
	bdist_rpm that we also have an install script.
	(bdist_inno): Add 2002 to the copyright notice.


Revision 205 - Directory Listing
Modified Tue Jul 9 14:02:40 2002 UTC (22 years, 8 months ago) by bh
update ChangeLog


Revision 204 - Directory Listing
Modified Tue Jul 9 14:02:27 2002 UTC (22 years, 8 months ago) by bh
	* setup.py: Create a file in python's site-packages directory to
	make installation of Thuban as a library easier.
	(ThubanInstall.user_options): Add two new options,
	create-init-module and init-module-dir
	(ThubanInstall.expand_with_pure_python_dirs): New method to expand
	filenames for installation in the default directories.
	(ThubanInstall.select_scheme, ThubanInstall.convert_paths): Extend
	the inherited methods to capture some filenames before they're
	transformed too much by distutils.
	(ThubanInstall.run): Create the init module if requested.
	(ThubanInstall.thuban_init_filename): New method to return the
	full name of the init module.
	(ThubanInstall.get_outputs): Append the filename of the init
	module.


Revision 203 - Directory Listing
Modified Mon Jul 8 15:04:57 2002 UTC (22 years, 8 months ago) by bh
	* setup.py (thuban_bdist_rpm): Extend this version of bdist_rpm to
	handle the prefix properly which means that the default for the
	installation prefix should be /usr for RPMs and /usr/local when
	doing a normal source install.
	(bdist_rpm_install_script): Script to override the default install
	commands in the specfile generated by the bdist_rpm command.
	(thuban_bdist_rpm.user_options): Add a prefix option
	(thuban_bdist_rpm.initialize_options): Init the prefix option.
	Create the script files for the spec files as empty files here
	(thuban_bdist_rpm._make_spec_file): Override the inherited method
	to fill the script files with content.


Revision 202 - Directory Listing
Modified Mon Jul 8 10:51:14 2002 UTC (22 years, 8 months ago) by bh
Update ChangeLog and fix a typo


Revision 201 - Directory Listing
Modified Mon Jul 8 10:50:53 2002 UTC (22 years, 8 months ago) by bh
	* Thuban/Model/save.py (relative_filename): Wrapper around
	Thuban.Lib.fileutil.relative_filename that accepts an empty dir
	argument. save_session now automatically uses this version,
	solving a problem when saving to a relative filename.


Revision 200 - Directory Listing
Modified Mon Jul 8 10:50:39 2002 UTC (22 years, 8 months ago) by bh
	* setup.py: In the setup call, make sure that the library
	directories are under $prefix/lib not directly under $prefix.


Revision 199 - Directory Listing
Modified Thu Jun 20 15:25:36 2002 UTC (22 years, 8 months ago) by jan
initial extension support


Revision 198 - Directory Listing
Modified Thu Jun 20 15:24:26 2002 UTC (22 years, 8 months ago) by jan
(SessionTreeCrtl:update_tree): Added visualization
of Extension titles and title and names of its objects.


Revision 197 - Directory Listing
Modified Thu Jun 20 15:20:58 2002 UTC (22 years, 8 months ago) by jan
Session.Extensions, Session.HasExtensions, Session.AddExtension:
new for handling extensions.
Also some other minor changes to round up extension handling.


Revision 196 - Directory Listing
Modified Thu Jun 20 15:15:18 2002 UTC (22 years, 8 months ago) by jan
new messages for extensions.


Revision 195 - Directory Listing
Modified Thu Jun 20 15:12:01 2002 UTC (22 years, 8 months ago) by jan
new module to handle extension objects.


Revision 194 - Directory Listing
Modified Wed May 29 10:34:41 2002 UTC (22 years, 9 months ago) by bh
update ChangeLog


Revision 193 - Directory Listing
Modified Wed May 29 10:33:41 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.bind_command_events): Bind
	the events for a comnmand.
	(MainWindow.add_toolbar_command, MainWindow.add_menu_command):
	Call bind_command_events to bind the events. add_toolbar_command
	can now bind events too so that it's possible to have commands
	that are only available through the toolbar.
	(MainWindow.init_ids): New instance variable events_bound to keep
	track of for which commands events have been bound.


Revision 192 - Directory Listing
Modified Tue May 28 16:09:04 2002 UTC (22 years, 9 months ago) by bh
update ChangeLog


Revision 191 - Directory Listing
Modified Tue May 28 16:04:49 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.__init__, main_toolbar):
	Move the toolbar definition to the Menu instance main_toolbar.
	(MainWindow.build_toolbar): New method to build the toolbar
	similar to the build_menu methods


Revision 190 - Directory Listing
Modified Tue May 28 12:39:49 2002 UTC (22 years, 9 months ago) by bh
update ChangeLog


Revision 189 - Directory Listing
Modified Tue May 28 12:39:17 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/UI/application.py (ThubanApplication.OnInit): Read the
	startup file
	(ThubanApplication.read_startup_files): New method to run
	~/.thuban/thubanstart.py


Revision 188 - Directory Listing
Modified Tue May 28 12:38:45 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/UI/mainwindow.py: Remove some unused imports.
	(MainWindow.__init__, main_menu): move the definition of the main
	menu from __init__ to the Menu instance main_menu.
	(MainWindow.build_menu_bar, MainWindow.build_menu): New methods to
	build the menu bar and sub-menus from a menu description.


Revision 187 - Directory Listing
Modified Tue May 28 12:38:17 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/UI/menu.py: New module to build and manage menus.


Revision 186 - Directory Listing
Modified Thu May 23 15:37:48 2002 UTC (22 years, 9 months ago) by bh
update ChangeLog


Revision 185 - Directory Listing
Modified Thu May 23 15:37:39 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.__init__): Fix spelling of
	layer_outline_color. Fix it in the definition of the command too.


Revision 184 - Directory Listing
Modified Thu May 23 14:59:28 2002 UTC (22 years, 9 months ago) by bh
update ChangeLog


Revision 183 - Directory Listing
Modified Thu May 23 14:59:11 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/UI/command.py (Command): Fix typo in doc string


Revision 182 - Directory Listing
Modified Wed May 22 13:42:20 2002 UTC (22 years, 9 months ago) by bh
update ChangeLog


Revision 181 - Directory Listing
Modified Wed May 22 13:42:04 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.RunMessageBox): Fix a typo
	in the docstring


Revision 180 - Directory Listing
Modified Wed May 15 14:03:02 2002 UTC (22 years, 9 months ago) by bh
update ChangeLog


Revision 179 - Directory Listing
Modified Wed May 15 14:02:49 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/Model/layer.py (Layer.open_shapefile): Set bbox to None
	when the shapefile is empty.
	(Layer.BoundingBox, Layer.LatLongBoundingBox): Both methods may
	now return None for empty shapefiles. Update doc-strings.


Revision 178 - Directory Listing
Modified Wed May 15 14:02:20 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/Model/map.py (Map.BoundingBox): Add doc-string. Deal with
	the layer's bbox being None.


Revision 177 - Directory Listing
Modified Wed May 15 14:02:09 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/UI/tree.py (SessionTreeCtrl.update_tree): Deal with the
	layer's bbox being None.


Revision 176 - Directory Listing
Modified Wed May 15 13:38:49 2002 UTC (22 years, 9 months ago) by bh
remove some debug prints


Revision 175 - Directory Listing
Modified Wed May 15 13:30:16 2002 UTC (22 years, 9 months ago) by bh
update ChangeLog


Revision 174 - Directory Listing
Modified Wed May 15 13:30:00 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/UI/view.py (MapCanvas.shape_selected): Only redraw when
	necessary.
	(MapCanvas.__init__): New instance variables, last_selected_layer
	and last_selected_shape to determine how the selection has
	changed.


Revision 173 - Directory Listing
Modified Wed May 15 13:29:34 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/UI/tableview.py (TableGrid.__init__): Do not call
	AutoSizeColumns because it will cause a traversal of the entire
	table which for large .dbf files will take a very long time.


Revision 172 - Directory Listing
Modified Tue May 14 14:16:37 2002 UTC (22 years, 9 months ago) by bh
update ChangeLog


Revision 171 - Directory Listing
Modified Tue May 14 14:16:24 2002 UTC (22 years, 9 months ago) by bh
	* Thuban/Model/layer.py (Layer.open_shapefile): Choose a better
	maximum depth for the tree than shapelib does by default.


Revision 170 - Directory Listing
Modified Mon May 13 09:51:33 2002 UTC (22 years, 9 months ago) by frank
Filled the polygon.


Revision 169 - Directory Listing
Modified Fri May 10 10:07:09 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 168 - Directory Listing
Modified Fri May 10 10:06:59 2002 UTC (22 years, 10 months ago) by bh
	* dbflib_wrap.c: Updated from dbflib.i


Revision 167 - Directory Listing
Modified Fri May 10 10:05:11 2002 UTC (22 years, 10 months ago) by bh
	* dbflib.i (DBFInfo_write_record): Only DECREF if the return value
	of PyMapping_GetItemString is not NULL. Also, test the return
	value of PySequence_GetItem
	(write_field): Remove some debug prints


Revision 165 - Directory Listing
Modified Fri May 10 09:35:06 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 164 - Directory Listing
Modified Fri May 10 09:34:40 2002 UTC (22 years, 10 months ago) by bh
	* setup.py (py_modules): The shptree modules doesn't have a
	wrapper, so don't include it in the py_modules


Revision 163 - Directory Listing
Modified Wed May 8 13:49:00 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 162 - Directory Listing
Modified Wed May 8 13:48:43 2002 UTC (22 years, 10 months ago) by bh
	* extensions/shapelib/shptree.c (compare_ints): Make arguments
	const void * as in the qsort prototype
	(SHPTreeFindLikelyShapes): Remove some unused variables.


Revision 161 - Directory Listing
Modified Wed May 8 13:47:10 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/tree.py (SessionTreeCtrl.unsubscribe_all): Remove a
	debug print and set session to None after unsubscribing


Revision 160 - Directory Listing
Modified Wed May 8 13:46:34 2002 UTC (22 years, 10 months ago) by bh
	* setup.py: Increment the version to 0.1.2


Revision 159 - Directory Listing
Modified Wed May 8 13:46:15 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/view.py (PanTool.MouseMove): Use the bitmap the view
	maintains to redraw the window during a drag.
	(MapCanvas.unprojected_rect_around_point): New method to determine
	a small region around a point for hit-testing.
	(MapCanvas.find_shape_at): Only test the shapes in a small region
	around the point.


Revision 158 - Directory Listing
Modified Tue May 7 19:19:16 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 157 - Directory Listing
Modified Tue May 7 18:33:45 2002 UTC (22 years, 10 months ago) by bh
	(shptree_find_shapes): Add a missing return


Revision 156 - Directory Listing
Modified Tue May 7 18:30:48 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 155 - Directory Listing
Modified Tue May 7 18:30:38 2002 UTC (22 years, 10 months ago) by bh
	* shptreemodule.c (SHPTreeType, initshptree): Set SHPTreeType's
	PyType_Type pointer in the init function.
	(shptree_methods): Use METH_VARARGS
	(shptree_dealloc): Use PyMem_DEL


Revision 154 - Directory Listing
Modified Tue May 7 17:18:45 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 153 - Directory Listing
Modified Tue May 7 17:18:29 2002 UTC (22 years, 10 months ago) by bh
* Data/iceland_sample.session, Data/iceland_sample.thuban: Rename
the file to have a .thuban extension.


Revision 152 - Directory Listing
Modified Tue May 7 17:01:49 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 151 - Directory Listing
Modified Tue May 7 17:01:35 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/tree.py (session_channels): New class constant with
	all the session channels to subscribe to to update the tree
	(SessionTreeCtrl.session_changed): Remember the session so that we
	can unsubscribe properly. Use the new class constant to
	unsubscribe from the old session and subscribe to the new one.
	(SessionTreeCtrl.unsubscribe_all): New method to unsubscribe all
	subscriptions of the SessionTreeCtrl.
	(SessionTreeView.OnClose): Call the tree's unsubscribe_all method.


Revision 150 - Directory Listing
Modified Tue May 7 16:55:38 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.__init__): Add the "Show
	Session Tree" command to the file menu.


Revision 149 - Directory Listing
Modified Tue May 7 16:41:07 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/view.py (MapCanvas.do_redraw): Pass the entire bitmap
	as update_region to the renderer.


Revision 148 - Directory Listing
Modified Tue May 7 16:40:29 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/renderer.py
	(ScreenRenderer.layer_ids, ScreenRenderer.draw_shape_layer): The
	update box is now directly a tuple, not a wxRect anymore.


Revision 147 - Directory Listing
Modified Tue May 7 16:39:52 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/Model/layer.py (Layer.ShapesInRegion): Remove some debug
	prints.


Revision 146 - Directory Listing
Modified Tue May 7 14:59:27 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 145 - Directory Listing
Modified Tue May 7 14:58:05 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/view.py (MapCanvas.__init__): New instance variable
	update_region for the update region.
	(MapCanvas.OnPaint): Maintain the update region
	(MapCanvas.do_redraw): Pass the bounding box of the update_region
	to the renderer when drawing the bitmap. Reset the update_region.


Revision 144 - Directory Listing
Modified Tue May 7 14:54:02 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/renderer.py (MapRenderer.layer_ids): New method to
	return the shape ids to be rendered in a given layer.
	(MapRenderer.draw_shape_layer): Call layer_ids to get the list of
	ids.
	(ScreenRenderer.RenderMap): New parameter
	for the rectangle that has to be updated
	(ScreenRenderer.layer_ids): Make use of the layer's quadtree by
	calling it's ShapesInRegion method.


Revision 143 - Directory Listing
Modified Tue May 7 14:17:20 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/Model/layer.py (Layer.__init__): New instance variable
	shapetree to hold the shapelib quadtree for the shapefile
	(Layer.open_shapefile): Create the quad tree.
	(Layer.ShapesInRegion): New method to return the ids of shapes in
	a given region using the quad tree.


Revision 142 - Directory Listing
Modified Tue May 7 14:16:10 2002 UTC (22 years, 10 months ago) by bh
	* setup.py: Add the shptree extension module. See
	extensions/pyshapelib/ChangeLog for more details.


Revision 141 - Directory Listing
Modified Tue May 7 14:12:47 2002 UTC (22 years, 10 months ago) by bh
	* extensions/thuban/wxproj.cpp (project_points): Fix some typos in
	comment
	(draw_polygon_shape): Accept both arcs and polygons.
	(initwxproj): Use the new PYSHAPELIB_IMPORT_API macro to import
	the api.


Revision 140 - Directory Listing
Modified Tue May 7 14:09:45 2002 UTC (22 years, 10 months ago) by bh
* extensions/shapelib/shpopen.c, extensions/shapelib/shapefil.h,
extensions/shapelib/dbfopen.c: Really update to the versions of
shapelib 1.2.9. For some reason it wasn't really done on
2002-04-11.


Revision 139 - Directory Listing
Modified Tue May 7 14:09:34 2002 UTC (22 years, 10 months ago) by bh
* extensions/shapelib/shptree.c: Modified version of shptree.c of
shapelib 1.2.9. The only real difference is the use of qsort
instead of a bubble sort implementation


Revision 138 - Directory Listing
Modified Tue May 7 14:07:07 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 137 - Directory Listing
Modified Tue May 7 14:06:52 2002 UTC (22 years, 10 months ago) by bh
	* pytest.py (read_shapefile): Add some demo calls for the shptree
	module


Revision 136 - Directory Listing
Modified Tue May 7 14:06:30 2002 UTC (22 years, 10 months ago) by bh
	* setup.py: Some fixes to use explicit forward slashes as
	directory separators because of distutils.
	(extensions): Add the shptree module.


Revision 135 - Directory Listing
Modified Tue May 7 14:05:23 2002 UTC (22 years, 10 months ago) by bh
	* shptreemodule.c: New file with a simple wrapper for shapelib's
	quadtree


Revision 134 - Directory Listing
Modified Tue May 7 14:04:56 2002 UTC (22 years, 10 months ago) by bh
	* shapelib_wrap.c: Updated from shapelib.i with SWIG.


Revision 133 - Directory Listing
Modified Tue May 7 14:04:43 2002 UTC (22 years, 10 months ago) by bh
	* pyshapelib_api.h (PyShapeLibAPI): Add some of the shptree
	functions.
	(PYSHAPELIB_IMPORT_API): New macro to import the API


Revision 132 - Directory Listing
Modified Tue May 7 14:04:17 2002 UTC (22 years, 10 months ago) by bh
	* shapelib.i (the_api): add the tree API functions.


Revision 131 - Directory Listing
Modified Fri May 3 14:50:27 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 130 - Directory Listing
Modified Fri May 3 14:50:18 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.SaveSessionAs,
	MainWindow.OpenSession): Change the file extension of the session
	files to .thuban


Revision 129 - Directory Listing
Modified Fri May 3 14:46:11 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 128 - Directory Listing
Modified Fri May 3 14:38:16 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/Model/session.py (Session.AddMap, forwarded_channels):
	Move the map channels to be forwarded by the session into the
	class constant with forwarded_channels.


Revision 127 - Directory Listing
Modified Fri May 3 14:37:46 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/Model/base.py (Modifiable.changed): Fix doc-string (a
	typo and some rewording).


Revision 126 - Directory Listing
Modified Thu May 2 18:55:46 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 125 - Directory Listing
Modified Thu May 2 18:55:33 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/view.py: Keep the temporary bitmap used during drawing
	around to speed up most redraws:
	(MapCanvas.__init__): New instance variable bitmap which holds the
	bitmap
	(MapCanvas.do_redraw): Redraw self.bitmap if necessary. Use
	self.bitmap to draw.
	(MapCanvas.full_redraw): New method to force a full redraw
	including the bitmap
	(MapCanvas.SetMap): Subscribe full_redraw instead of redraw to
	make sure the bitmap is redrawn.
	(MapCanvas.projection_changed, MapCanvas.set_view_transform,
	MapCanvas.shape_selected): Call full_redraw instead of readraw to
	make sure the bitmap is redrawn.
	(MapCanvas.OnSize): New method to handle size events so that the
	bitmap can be redrawn.


Revision 124 - Directory Listing
Modified Mon Apr 29 18:05:31 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 123 - Directory Listing
Modified Mon Apr 29 18:05:04 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.__init__): Subscribe to the
	canvas' VIEW_POSITION event
	(MainWindow.view_position_changed): Handler for VIEW_POSITION.
	Update the text in the status-bar accordingly.


Revision 122 - Directory Listing
Modified Mon Apr 29 18:04:54 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/view.py (MapCanvas): Derive from Publisher as well
	(MapCanvas.__del__): Implement because Publisher.__del__ has to be
	called.
	(MapCanvas.__init__): Bind EVT_LEAVE_WINDOW too. Initialize
	current_position
	(MapCanvas.set_current_position): New method to set
	current_position. Issue a VIEW_POSITION event
	(MapCanvas.CurrentPosition): New public method to return the value
	of current_position. Should be called when the VIEW_POSITION event
	is processed.
	(MapCanvas.OnLeftDown, MapCanvas.OnLeftUp, MapCanvas.OnMotion):
	Update the position.
	(MapCanvas.OnLeaveWindow): Set the position to None.


Revision 121 - Directory Listing
Modified Mon Apr 29 18:04:32 2002 UTC (22 years, 10 months ago) by bh
	* Thuban/UI/messages.py (VIEW_POSITION): New message for the
	position in the statusbar


Revision 120 - Directory Listing
Modified Fri Apr 26 09:32:50 2002 UTC (22 years, 10 months ago) by frank
Thuban/UI/mainwindow.py: Dialo title: s/session/data


Revision 119 - Directory Listing
Modified Fri Apr 26 09:30:41 2002 UTC (22 years, 10 months ago) by frank
AddLayer: Dialog title changed: s/session/data


Revision 118 - Directory Listing
Modified Wed Apr 24 09:03:04 2002 UTC (22 years, 10 months ago) by frank
Toolbar icon changes added.


Revision 117 - Directory Listing
Modified Wed Apr 24 08:59:48 2002 UTC (22 years, 10 months ago) by frank
New Version with more robust design.


Revision 116 - Directory Listing
Modified Mon Apr 22 11:31:08 2002 UTC (22 years, 10 months ago) by jan
bug fix


Revision 115 - Directory Listing
Modified Mon Apr 22 11:30:20 2002 UTC (22 years, 10 months ago) by jan
added test for None on map bounding box


Revision 114 - Directory Listing
Modified Sun Apr 21 17:39:44 2002 UTC (22 years, 10 months ago) by jan
added full-extent as toolbutton, added propose UTM Zone dialog


Revision 113 - Directory Listing
Modified Sun Apr 21 17:38:50 2002 UTC (22 years, 10 months ago) by jan
removed old comments


Revision 112 - Directory Listing
Modified Sun Apr 21 17:30:37 2002 UTC (22 years, 10 months ago) by jan
added propose dialog for UMT Zone


Revision 111 - Directory Listing
Modified Sun Apr 21 17:29:50 2002 UTC (22 years, 10 months ago) by jan
added map extent to tree view


Revision 110 - Directory Listing
Modified Sun Apr 21 17:28:16 2002 UTC (22 years, 10 months ago) by jan
added full-extent to toolbar; adapted proj4 call


Revision 109 - Directory Listing
Modified Fri Apr 19 16:49:59 2002 UTC (22 years, 10 months ago) by frank
Shadow added to bitmap.


Revision 108 - Directory Listing
Modified Fri Apr 19 16:49:20 2002 UTC (22 years, 10 months ago) by frank
BitMap for Full Extent tool bar button.


Revision 107 - Directory Listing
Modified Fri Apr 19 16:02:55 2002 UTC (22 years, 10 months ago) by jan
some fixes and tiny features


Revision 106 - Directory Listing
Modified Fri Apr 19 15:47:55 2002 UTC (22 years, 10 months ago) by jan
added utm zone 26 projection


Revision 105 - Directory Listing
Modified Fri Apr 19 15:36:57 2002 UTC (22 years, 10 months ago) by jan
convert projection parameters from unicode to regular string


Revision 104 - Directory Listing
Modified Fri Apr 19 14:46:08 2002 UTC (22 years, 10 months ago) by jan
add filename and modified status to tree view


Revision 103 - Directory Listing
Modified Fri Apr 19 14:23:24 2002 UTC (22 years, 10 months ago) by jan
new session don't have a filename


Revision 102 - Directory Listing
Modified Fri Apr 19 14:22:25 2002 UTC (22 years, 10 months ago) by jan
launch save as dialog for saving new sessions


Revision 101 - Directory Listing
Modified Fri Apr 12 13:21:39 2002 UTC (22 years, 10 months ago) by frank
Iceland session file for sample data.


Revision 100 - Directory Listing
Modified Thu Apr 11 10:45:32 2002 UTC (22 years, 10 months ago) by bh
	* extensions/shapelib/shapefil.h, extensions/shapelib/shpopen.c,
	extensions/shapelib/dbfopen.c: Update to the versions of shapelib
	1.2.9


Revision 99 - Directory Listing
Modified Thu Apr 11 10:45:18 2002 UTC (22 years, 10 months ago) by bh
update ChangeLog


Revision 98 - Directory Listing
Modified Thu Apr 11 09:53:51 2002 UTC (22 years, 10 months ago) by bh
	* shapelib.py, shapelib_wrap.c: Updated from shapelib.i. Still
	done with a very old version of SWIG, but it's probably not worth
	it to try it with a newer version as long as this still works.


Revision 97 - Directory Listing
Modified Thu Apr 11 09:53:02 2002 UTC (22 years, 10 months ago) by bh
	* setup.py (Lib.wxproj extension): Don't link shpopen.c and put
	the pyshapelib directoy into the list of include dirs, so that
	pyshapelib_api.h can be found.


Revision 96 - Directory Listing
Modified Thu Apr 11 09:51:24 2002 UTC (22 years, 10 months ago) by bh
	* extensions/thuban/wxproj.cpp (pyshapelib_api): New variable that
	holds the pyshapelib C-API
	(draw_polygon_shape, point_in_polygon_shape, shape_centroid): Use
	pyshapelib_api to access the shapelib functions.
	(initwxproj): Import the c_api from the shapelib module and
	initialize pyshapelib_api.


Revision 95 - Directory Listing
Modified Thu Apr 11 09:48:39 2002 UTC (22 years, 10 months ago) by bh
	* shapelib_wrap.c: Updated from shapelib.i. Still done with a very
	old version of SWIG, but it's probably not worth it to try it with
	a newer version as long as this still works.


Revision 94 - Directory Listing
Modified Thu Apr 11 09:46:06 2002 UTC (22 years, 10 months ago) by bh
	* shapelib.i: Export the C-level API with the c_api function.


Revision 93 - Directory Listing
Modified Thu Apr 11 09:43:30 2002 UTC (22 years, 10 months ago) by bh
	* pyshapelib_api.h: New file with a limited C-level API for
	accessing shapilib functions from other Python-extensions.


Revision 91 - Directory Listing
Modified Thu Apr 4 14:55:35 2002 UTC (22 years, 11 months ago) by bh
update ChangeLog


Revision 90 - Directory Listing
Modified Thu Apr 4 14:55:02 2002 UTC (22 years, 11 months ago) by bh
	* setup.py (thuban_bdist_rpm.initialize_options): Use
	initialize_options to create the scripts for the rpm.


Revision 89 - Directory Listing
Modified Thu Apr 4 14:22:49 2002 UTC (22 years, 11 months ago) by bh
update ChangeLog


Revision 88 - Directory Listing
Modified Thu Apr 4 14:22:40 2002 UTC (22 years, 11 months ago) by bh
(PROJ4_PREFIX): Just use /


Revision 87 - Directory Listing
Modified Wed Apr 3 19:02:32 2002 UTC (22 years, 11 months ago) by bh
update ChangeLog


Revision 86 - Directory Listing
Modified Wed Apr 3 19:02:24 2002 UTC (22 years, 11 months ago) by bh
	* setup.py: Increment version to 0.1.1


Revision 85 - Directory Listing
Modified Wed Apr 3 15:21:58 2002 UTC (22 years, 11 months ago) by bh
update ChangeLog


Revision 84 - Directory Listing
Modified Wed Apr 3 15:21:46 2002 UTC (22 years, 11 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.__init__): Move the "Add
	Layer" and "Remove Layer" commands from the layer menu to the map
	menu


Revision 83 - Directory Listing
Modified Fri Feb 15 17:11:11 2002 UTC (23 years ago) by bh
update ChangeLog


Revision 82 - Directory Listing
Modified Fri Feb 15 17:11:04 2002 UTC (23 years ago) by bh
	* Thuban/Model/layer.py (Layer.Shape): list append only takes one
	argument (python <= 1.5.2 erroneously accepted multiuple
	arguments)


Revision 81 - Directory Listing
Modified Mon Feb 4 19:53:25 2002 UTC (23 years, 1 month ago) by bh
update changelog


Revision 80 - Directory Listing
Modified Mon Feb 4 19:53:01 2002 UTC (23 years, 1 month ago) by bh
	* Thuban/UI/identifyview.py (IdentifyGridCtrl): New class to use a
	RecordGrid in the identifyview.
	(IdentifyView.__init__): Use IdentifyGridCtrl instead of
	IdentifyListCtrl. The grid allows editing of the values.


Revision 79 - Directory Listing
Modified Mon Feb 4 19:50:28 2002 UTC (23 years, 1 month ago) by bh
	* Thuban/UI/controls.py (RecordTable, RecordGridCtrl): New classes
	implementing a grid for a single row of a thuban table.


Revision 78 - Directory Listing
Modified Mon Feb 4 19:37:16 2002 UTC (23 years, 1 month ago) by bh
	* Thuban/UI/view.py (MapCanvas.SelectShapeAt): Search through all
	layers by default. Easier to use than the previous default of only
	searching through the select layer which meant that if no layer
	was selected, you couldn't select a shape.


Revision 77 - Directory Listing
Modified Mon Feb 4 19:27:13 2002 UTC (23 years, 1 month ago) by bh
	* Thuban/UI/tableview.py (TableGrid.__init__): Fix typo


Revision 76 - Directory Listing
Modified Mon Feb 4 19:23:30 2002 UTC (23 years, 1 month ago) by bh
	* Thuban/UI/renderer.py (MapRenderer.draw_shape_layer): Honour the
	stroke_width attribute


Revision 75 - Directory Listing
Modified Mon Feb 4 19:22:22 2002 UTC (23 years, 1 month ago) by bh
	* Thuban/Model/load.py (ProcessSession.startElement): Read the
	stroke_width attribute


Revision 74 - Directory Listing
Modified Mon Feb 4 19:22:08 2002 UTC (23 years, 1 month ago) by bh
	* Thuban/Model/save.py (save_session): Write the new stroke_width
	attribute


Revision 73 - Directory Listing
Modified Mon Feb 4 19:19:25 2002 UTC (23 years, 1 month ago) by bh
	* Thuban/Model/layer.py (Layer.__init__): New parameter and
	instance variable stroke_width
	(Layer.SetStrokeWidth): Set the stroke_width.


Revision 72 - Directory Listing
Modified Fri Feb 1 17:21:18 2002 UTC (23 years, 1 month ago) by bh
* extensions/thuban/wxproj.cpp (project_points): Fix two
off-by-one errors in the last loop that joins the various parts
together.


Revision 71 - Directory Listing
Modified Mon Jan 14 15:10:29 2002 UTC (23 years, 1 month ago) by bh
Fix some typos


Revision 70 - Directory Listing
Modified Thu Oct 18 14:52:30 2001 UTC (23 years, 4 months ago) by bh
update ChangeLog


Revision 69 - Directory Listing
Modified Thu Oct 18 14:52:15 2001 UTC (23 years, 4 months ago) by bh
	* README: Slight tweaking in preparation for the 0.1 release


Revision 68 - Directory Listing
Modified Thu Oct 18 14:51:53 2001 UTC (23 years, 4 months ago) by bh
	* setup.cfg: Add section for sdist to create both tgz and zip
	archives


Revision 67 - Directory Listing
Modified Thu Oct 18 14:50:21 2001 UTC (23 years, 4 months ago) by bh
	* setup.py: increase version number to 0.1
	(data_dist): New command class for data distribution


Revision 66 - Directory Listing
Modified Fri Sep 14 14:56:45 2001 UTC (23 years, 5 months ago) by bh
	* Thuban/UI/identifyview.py (IdentifyListCtrl.selected_shape):
	Handle the case of no layer (i.e. layer is None) properly.


Revision 65 - Directory Listing
Modified Fri Sep 14 14:55:34 2001 UTC (23 years, 5 months ago) by bh
	* Thuban/UI/proj4dialog.py (UTMDialog.__init__, Proj4Dialog.__init__):
	Set the initial selection of the combo boxes to reflect the
	projection we're starting with in a way that works on windows,
	too.


Revision 64 - Directory Listing
Modified Fri Sep 14 12:20:21 2001 UTC (23 years, 5 months ago) by bh
update ChangeLog


Revision 63 - Directory Listing
Modified Fri Sep 14 12:20:02 2001 UTC (23 years, 5 months ago) by bh
	* Thuban/Model/map.py (Map.Destroy): Unsubscribe the label_layer
	messages


Revision 62 - Directory Listing
Modified Fri Sep 14 12:19:39 2001 UTC (23 years, 5 months ago) by bh
	* Thuban/Lib/connector.py (Connector.print_connections): Print the
	puiblisher's ids in hex to make it easier to compare them to the
	standard repr of python methods


Revision 61 - Directory Listing
Modified Thu Sep 13 17:58:49 2001 UTC (23 years, 5 months ago) by bh
	* Thuban/UI/tree.py (SessionTreeCtrl.OnSelChanged): Make sure to
	deselect the layer if no layer is selected


Revision 60 - Directory Listing
Modified Thu Sep 13 14:47:39 2001 UTC (23 years, 5 months ago) by bh
	(MapCanvas.find_shape_at): Iterate backwards (i.e. with decreasing
	index, i.e. reversed drawing order) so that objects appearing to
	be in from of others are selected first. This is probably mostly
	relevant for point shapes where the symbols used may overlap


Revision 59 - Directory Listing
Modified Thu Sep 13 13:56:47 2001 UTC (23 years, 5 months ago) by bh
update ChangeLog


Revision 58 - Directory Listing
Modified Thu Sep 13 13:56:23 2001 UTC (23 years, 5 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.NewSession): Use
	create_empty_session session to create the new, empty session.

	* Thuban/UI/mainwindow.py (MainWindow.__init__): Set the size of
	the tool bitmaps.
	(MainWindow.OnClose, MainWindow.save_modified_session): Separate
	the code that asks whether the session should be saved into the
	new method save_modified_session.
	(MainWindow.OpenSession, MainWindow.NewSession): Use the new
	method to save modified session here too.


Revision 57 - Directory Listing
Modified Thu Sep 13 13:55:33 2001 UTC (23 years, 5 months ago) by bh
	* Thuban/UI/view.py (MapCanvas.OnPaint): Only delay drawing to
	idle time when there actually is something to draw. If there's
	nothing to draw simply clear the window
	(MapCanvas.do_redraw): Call dc.EndDrawing and add some comments.
	(MapCanvas.SetMap): force a redraw in all cases because
	FitMapToWindow doesn't always do it.
	(MapCanvas.ZoomFactor): Add an optional parameter, center, to
	specify the point to move into the center of the window
	(ZoomOutTool.MouseUp, ZoomInTool.MouseUp): If the mouse wasn't
	dragged, zoon in/out by a factor of 2


Revision 56 - Directory Listing
Modified Thu Sep 13 13:54:37 2001 UTC (23 years, 5 months ago) by bh
	* Thuban/Model/session.py (create_empty_session): Unset the
	modified bit before returning it


Revision 55 - Directory Listing
Modified Tue Sep 11 11:45:27 2001 UTC (23 years, 5 months ago) by bh
update ChangeLog


Revision 54 - Directory Listing
Modified Tue Sep 11 11:45:09 2001 UTC (23 years, 5 months ago) by bh
	* setup.py (InnoIconItem): fix typo

	(thuban_bdist_inno.run):
	(bdist_inno.run): Move the decision not to create symlinks on
	non-nt platforms to thuban_bdist_inno and do it unconditinally
	since we never want to create the symlinks here


Revision 53 - Directory Listing
Modified Mon Sep 10 16:05:26 2001 UTC (23 years, 5 months ago) by bh
Update ChangeLog


Revision 52 - Directory Listing
Modified Mon Sep 10 16:05:13 2001 UTC (23 years, 5 months ago) by bh
(LabelDialog.OnOK): Check whether the return value of GetValue is None
instead of using it as a boolean directly so that Zero numbers are
handled properly.
(LabelListCtrl): Derive from the new class SelectableRecordListCtrl


Revision 51 - Directory Listing
Modified Mon Sep 10 16:04:43 2001 UTC (23 years, 5 months ago) by bh
(IdentifyListCtrl): Derive from the new class RecordListCtrl


Revision 50 - Directory Listing
Modified Mon Sep 10 16:04:21 2001 UTC (23 years, 5 months ago) by bh
New file with two classes RecordListCtrl and SelectableRecordListCtrl
that implement the code shared by the identify view and the label dialog


Revision 49 - Directory Listing
Modified Mon Sep 10 16:03:59 2001 UTC (23 years, 5 months ago) by bh
(MainWindow.IdentifyTool): Popup the identify view immediately


Revision 48 - Directory Listing
Modified Mon Sep 10 12:52:58 2001 UTC (23 years, 5 months ago) by bh
Update ChangeLog


Revision 47 - Directory Listing
Modified Mon Sep 10 12:52:44 2001 UTC (23 years, 5 months ago) by bh
	* Thuban/UI/proj4dialog.py (Proj4Dialog.__init__):
	(Proj4Dialog.dialogLayout): Make the window resizable and set the
	size of the text control explicitly to make the sizers work on
	both Windows and X.


Revision 46 - Directory Listing
Modified Fri Sep 7 15:00:33 2001 UTC (23 years, 6 months ago) by bh
update ChangeLog


Revision 45 - Directory Listing
Modified Fri Sep 7 15:00:21 2001 UTC (23 years, 6 months ago) by bh
	(MapCanvas.FitRectToWindow): If the rect has zero with or zero
	height do nothing (avoids zero division errors)


Revision 44 - Directory Listing
Modified Fri Sep 7 11:56:05 2001 UTC (23 years, 6 months ago) by bh
update ChangeLog


Revision 43 - Directory Listing
Modified Fri Sep 7 11:55:51 2001 UTC (23 years, 6 months ago) by bh
	* Thuban/UI/view.py (MapCanvas.find_shape_at):Add a new parameter
	that can limit the search to the currently selected layer.
	(MapCanvas.SelectShapeAt): Make sure that the currently selected
	layer stays selected even when no shape is found


Revision 42 - Directory Listing
Modified Thu Sep 6 18:58:57 2001 UTC (23 years, 6 months ago) by bh
update ChangeLog


Revision 41 - Directory Listing
Modified Thu Sep 6 18:58:46 2001 UTC (23 years, 6 months ago) by bh
	* Thuban/UI/tree.py (SessionTreeCtrl, SessionTreeView.__init__):
	Correct the spelling of SessionTreeCtrl. dabbrev is too damn
	convenient :-)
	(SessionTreeCtrl.__init__, SessionTreeCtrl.update_tree): Introduce
	a new instvar layer_to_item to map layers to tree items
	(SessionTreeCtrl.layer_selected): Select the appropriate tree item
	to match the current selection in the interactor


Revision 40 - Directory Listing
Modified Thu Sep 6 17:18:31 2001 UTC (23 years, 6 months ago) by bh
update ChangeLog


Revision 39 - Directory Listing
Modified Thu Sep 6 17:18:22 2001 UTC (23 years, 6 months ago) by bh
Create the session tree view in main with the new mainwindow method
ShowSessionTree and not directly the application's OnInit method


Revision 38 - Directory Listing
Modified Thu Sep 6 17:17:28 2001 UTC (23 years, 6 months ago) by bh
(Interactor.SelectedLayer):
(Interactor.HasSelectedLayer): New methods to query the current
selection


Revision 37 - Directory Listing
Modified Thu Sep 6 17:16:54 2001 UTC (23 years, 6 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.current_layer):
	(MainWindow.has_selected_layer): Simply call the appropriate
	interactor method

	* Thuban/UI/mainwindow.py (MainWindow.__init__):
	(MainWindow.LayerShowTable):
	(MainWindow.identify_view_on_demand): Store the interactor in an
	instvar and use that reference instead of going through main.app

	* Thuban/UI/mainwindow.py (MainWindow.ShowSessionTree):
	* Thuban/UI/application.py (ThubanApplication.OnInit):
	* Thuban/UI/main.py (main): Create the session tree view in main
	with the new mainwindow method ShowSessionTree and not directly
	the application's OnInit method


Revision 36 - Directory Listing
Modified Thu Sep 6 17:16:06 2001 UTC (23 years, 6 months ago) by bh
	* Thuban/UI/tree.py (myTreeCtrlPanel):
	(SessioinTreeCtrl): Rename to SessioinTreeCtrl and turn it into a
	TreeCtrl isntead of a panel. This affects most method since we now
	refer to self instead of self.tree
	(SessionTreeView): New class implementing a non-modal dialog
	showing the session tree.


Revision 35 - Directory Listing
Modified Thu Sep 6 15:33:09 2001 UTC (23 years, 6 months ago) by bh
update ChangeLog


Revision 34 - Directory Listing
Modified Thu Sep 6 15:32:56 2001 UTC (23 years, 6 months ago) by bh
	* Thuban/UI/tableview.py: Add some doc-strings
	(TableGrid):
	(TableGrid.OnRangeSelect):
	(TableGrid.OnSelectCell):
	(TableFrame.__init__):
	(TableFrame.row_selected):
	Selecting rows in the grid view now updates the selected shapes
	through the TableFrame. To achieve this we derive TableGrid from
	Publisher and introduce the message type ROW_SELECTED which the
	TableFrame subscribes to and which is issued by OnRangeSelect and
	OnSelectCell

	(DataTable.SelectRow): Removed because it's no longer needed in
	the row/shape selection scheme


Revision 33 - Directory Listing
Modified Thu Sep 6 15:31:31 2001 UTC (23 years, 6 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.LayerShowTable): Pass the
	layer to the tableview dialog.


Revision 32 - Directory Listing
Modified Thu Sep 6 13:32:55 2001 UTC (23 years, 6 months ago) by bh
update ChangeLog


Revision 31 - Directory Listing
Modified Thu Sep 6 13:32:39 2001 UTC (23 years, 6 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.init_dialogs):
	(MainWindow.add_dialog):
	(MainWindow.dialog_open):
	(MainWindow.remove_dialog):
	(MainWindow.get_open_dialog): New methods to maintain a dictionary
	of opened non-modal dialogs.

	(MainWindow.__init__): Initialize the new non-modal dictionary
	management code
	(MainWindow.LayerShowTable): maintain separate dialogs for each
	table using the non-modal dialog management code to only open a
	view once for each table.

	(MainWindow.IdentifyTool):
	(MainWindow.__init__):
	(MainWindow.identify_view_on_demand): Don't open the identify view
	in IdentifyTool anymore. This will be done automatically by the
	new method identify_view_on_demand which handles the
	SELECTED_SHAPE message so that the identify view will be opened on
	demand


Revision 30 - Directory Listing
Modified Thu Sep 6 13:31:57 2001 UTC (23 years, 6 months ago) by bh
(TableGrid.__init__): Don't subscribe to the SELECTED_SHAPE message
anymore. This is now handled by the parent.
(TableGrid.select_shape): Only update the selection if the shape is not
None.

(TableFrame): Inherit from the new NonModalDialog class.
(TableFrame.__init__, TableFrame.select_shape): Handle the SELECT_SHAPE
message.
(TableFrame.OnClose): Extend the inherited method to unsubscribe
SELECT_SHAPE


Revision 29 - Directory Listing
Modified Thu Sep 6 13:30:59 2001 UTC (23 years, 6 months ago) by bh
(IdentifyListCtrl.__init__): Remove the interactor argument. The
SELECTED_SHAPE message is now handled by the parent.

(IdentifyView.__init__): Add the interactor argument so that we can
handle the SELECTED_SHAPE message here

(IdentifyView.selected_shape): New method to handle the SELECTED_SHAPE
messages

(IdentifyView): Derive from the new NonModalDialog class
(IdentifyView.OnClose): Extend the inherited version to unsubscribe
SELECT_SHAPE


Revision 28 - Directory Listing
Modified Thu Sep 6 13:29:57 2001 UTC (23 years, 6 months ago) by bh
New file implementing common classes for dialogs


Revision 27 - Directory Listing
Modified Thu Sep 6 13:27:52 2001 UTC (23 years, 6 months ago) by bh
(Session.UnsetModified): Remove debug prints


Revision 26 - Directory Listing
Modified Wed Sep 5 13:36:30 2001 UTC (23 years, 6 months ago) by bh
update ChangeLog


Revision 25 - Directory Listing
Modified Wed Sep 5 13:36:13 2001 UTC (23 years, 6 months ago) by bh
Use the new argument to the MainWindow constructor to get rid of the
ugly hack that made main.app available early just so that the mapcanvas
could access the interactor object.


Revision 24 - Directory Listing
Modified Wed Sep 5 13:35:46 2001 UTC (23 years, 6 months ago) by bh
New argument interactor to pass through to the MapCanvas


Revision 23 - Directory Listing
Modified Wed Sep 5 13:35:22 2001 UTC (23 years, 6 months ago) by bh
New argument, interactor.


Revision 22 - Directory Listing
Modified Tue Sep 4 16:45:57 2001 UTC (23 years, 6 months ago) by bh
update ChangeLog


Revision 21 - Directory Listing
Modified Tue Sep 4 16:45:28 2001 UTC (23 years, 6 months ago) by bh
Open the shapefile immediately. This will cause an exception in case the
file can't be opened and we can display an appropriate message.


Revision 20 - Directory Listing
Modified Tue Sep 4 16:44:31 2001 UTC (23 years, 6 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.RunMessageBox): New method
	that runs a modal message box
	(MainWindow.OnClose): Use the new method
	(MainWindow.RemoveLayer): Just do nothing in case no layer is
	selected. The command should be grayed out anyway, so there's no
	need to pop up a message box.
	(MainWindow.AddLayer): Pop up a message box with an error message
	if the shape file can't be opened


Revision 19 - Directory Listing
Modified Tue Sep 4 15:11:27 2001 UTC (23 years, 6 months ago) by bh
* MANIFEST.in: Add extensions/pyprojection/LICENSE

* setup.py (thuban_bdist_rpm): New class implementing a Thuban
specific bdist_rpm command.

* Thuban/UI/main.py: Catch ImportError exceptions when importing
the locale module because it may not be available on some
installations.

* extensions/pyprojection/LICENSE: Copy of the license text in
Projection.i. Having it in a separate file makes it easier to
refer to license text in e.g. RPMs

* setup.py: use wx-config instead of wxgtk-config because it's
more generic

* setup.py (ThubanInstall.get_outputs): Add the symlink in
<prefix>/bin to the outputs
(ThubanInstall.link_file): New method to link files. We need this
because the standard copy_files refuses to link non-existing
files.
(ThubanInstall.run): Remove the leading install root from the
script filename if an install root was specified and use the new
link_file method


Revision 18 - Directory Listing
Modified Mon Sep 3 16:25:09 2001 UTC (23 years, 6 months ago) by bh
* Thuban/UI/mainwindow.py (MainWindow.AddLayer): Fit the map to
the window when the first layer is added to the map.

* setup.py (ThubanInstall.run): Honor the build root (self.root)
when linking thuban.py to <prefix>/bin


Revision 17 - Directory Listing
Modified Fri Aug 31 15:37:03 2001 UTC (23 years, 6 months ago) by bh
added new section for the inno setup installer


Revision 16 - Directory Listing
Modified Fri Aug 31 15:36:39 2001 UTC (23 years, 6 months ago) by bh
update ChangeLog


Revision 15 - Directory Listing
Modified Fri Aug 31 15:35:18 2001 UTC (23 years, 6 months ago) by bh
numerous fixes and majopr additions for the windows installer with Inno Setup


Revision 14 - Directory Listing
Modified Fri Aug 31 15:34:33 2001 UTC (23 years, 6 months ago) by bh
	* Thuban/UI/tree.py (myTreeCtrlPanel.__init__): New inst var
	changing_selection to avoid recursive selection events when
	modifying the selection in response to a selection event.
	(myTreeCtrlPanel.normalize_selection): Set the new inst var when
	changing the tree's selection.
	(myTreeCtrlPanel.OnSelChanged): Only normalize the selection when
	we're not being called indirectly from normalize_selection.


Revision 13 - Directory Listing
Modified Fri Aug 31 15:33:42 2001 UTC (23 years, 6 months ago) by bh
	* Thuban/UI/mainwindow.py (MainWindow.update_command_ui): Call
	event.Check only if the command is actuall checkable.
	(MainWindow.__init__): Call the toolbar's Realize method to make
	sure that the items are actually shown


Revision 12 - Directory Listing
Modified Fri Aug 31 12:01:58 2001 UTC (23 years, 6 months ago) by frank
VMAP L0 Data, Iceland. Converted to ESRI Shapefile format.
Layer: Roads (Line)


Revision 11 - Directory Listing
Modified Fri Aug 31 12:01:21 2001 UTC (23 years, 6 months ago) by frank
VMAP L0 Data, Iceland. Converted to ESRI Shapefile format.
Layer: Political Boundaries, Coastal Lines (Polygon)


Revision 10 - Directory Listing
Modified Fri Aug 31 12:00:00 2001 UTC (23 years, 6 months ago) by frank
VMAP L0 Data, Iceland. Converted to ESRI Shapefile format.
Layer: Cultural Landmarks (Point)


Revision 9 - Directory Listing
Modified Tue Aug 28 16:49:00 2001 UTC (23 years, 6 months ago) by bh
update change log


Revision 8 - Directory Listing
Modified Tue Aug 28 16:48:50 2001 UTC (23 years, 6 months ago) by bh
Fix some doc strings


Revision 7 - Directory Listing
Modified Tue Aug 28 15:43:35 2001 UTC (23 years, 6 months ago) by bh
start ChangeLog


Revision 6 - Directory Listing
Modified Tue Aug 28 15:41:52 2001 UTC (23 years, 6 months ago) by bh
import all the source files


Revision 2 - Directory Listing
Modified Fri Aug 17 12:15:16 2001 UTC (23 years, 6 months ago) by bh
Initial revision


Revision 1 - Directory Listing
Added Fri Aug 17 12:15:16 2001 UTC (23 years, 6 months ago) by (unknown author)
New repository initialized by cvs2svn.

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26