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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1894 by bh, Thu Oct 30 18:17:17 2003 UTC revision 2018 by bh, Wed Dec 3 18:43:11 2003 UTC
# Line 1  Line 1 
1    2003-12-03  Bernhard Herzog  <[email protected]>
2    
3            * Thuban/UI/mainwindow.py (MainWindow.Unsubscribe): Deal with
4            publishers that are wx objects and may have been destroyed by wx
5            already. Fixes RT #2242.
6    
7    2003-12-03  Bernhard Herzog  <[email protected]>
8    
9            * po/ru.po: Updates from Alex Shevlakov
10    
11    2003-12-03  Silke Reimer <silkeintevation.de>
12    
13            * debian/control, debian/changelog: Added gdal-support to
14                    debian package, updated to new thuban version
15    
16    
17    2003-12-03  Bernhard Herzog  <[email protected]>
18    
19            * Thuban/Lib/version.py: New. Module for version number
20            manipulations. The version of make_tuple here also deals better
21            with more unusual version number strings, such as e.g.
22            "1.2+cvs20031111"
23    
24            * Thuban/version.py (make_tuple): Removed. It's now in
25            Thuban.Lib.version. Use that implementation instead.
26    
27            * test/test_lib_version.py: New. Tests for Thuban/Lib/version.py
28    
29    2003-12-02  Bernhard Herzog  <[email protected]>
30    
31            * MANIFEST.in: Add debian files
32    
33            * setup.py (setup call): Add packages for the Extensions so that
34            they're installed too
35            (data_files): Add READMEs and sample data from some Extensions
36    
37            * NEWS: Add note about the extensions in binary packages
38    
39    2003-12-02  Bernhard Herzog  <[email protected]>
40    
41            * Thuban/Model/save.py (SessionSaver.write_session): Save files
42            with the thuban-1.0rc1
43    
44            * Thuban/Model/load.py (SessionLoader.__init__): Recognize the
45            thuban-1.0rc1 namespace too
46    
47            * test/test_save.py (SaveSessionTest.dtd)
48            (SaveSessionTest.testEmptySession)
49            (SaveSessionTest.testSingleLayer)
50            (SaveSessionTest.testLayerProjection)
51            (SaveSessionTest.testRasterLayer)
52            (SaveSessionTest.testClassifiedLayer)
53            (SaveSessionTest.test_dbf_table)
54            (SaveSessionTest.test_joined_table)
55            (SaveSessionTest.test_save_postgis): Update to thuban-1.0rc1
56            namespace
57    
58            * test/test_load.py (LoadSessionTest.dtd): Update to thuban-1.0rc1
59            namespace
60            (TestSingleLayer.file_contents)
61            (TestNonAsciiColumnName.file_contents)
62            (TestLayerVisibility.file_contents)
63            (TestClassification.file_contents, TestLabels.file_contents)
64            (TestLayerProjection.file_contents)
65            (TestRasterLayer.file_contents, TestJoinedTable.file_contents)
66            (TestPostGISLayer.file_contents)
67            (TestPostGISLayerPassword.file_contents)
68            (TestLoadError.file_contents, TestLoadError.test): Update to
69            thuban-1.0rc1 namespace
70    
71    2003-12-01  Bernhard Herzog  <[email protected]>
72    
73            * setup.py (proj4_prefix, wx_prefix, gdal_prefix): Fix these for
74            nt to better match Intevation's current w32 setup
75    
76            * HOWTO-Release: Add note about updating MANIFEST.in
77    
78            * MANIFEST.in: Add the Extensions
79    
80            * NEWS: Update for 1.0rc1
81    
82    2003-12-01  Bernhard Herzog  <[email protected]>
83    
84            * Thuban/UI/mainwindow.py (MainWindow.AddLayer): Change the wild
85            cards for the dialog so that shapefiles ending in all uppercase
86            SHP are listed too
87    
88    2003-11-28  Bernhard Herzog  <[email protected]>
89    
90            * Thuban/version.py (longversion): Update to 1.0rc1
91    
92            * setup.py (setup call): Update version to 1.0rc1. Use the
93            [email protected] email address as author email instead of my
94            personal one.
95    
96    2003-11-28  Bernhard Herzog  <[email protected]>
97    
98            * po/de.po: Update german translation.
99    
100    2003-11-28  Bernhard Herzog  <[email protected]>
101    
102            Unify the filenames stored in .thuban files so that the .thuban
103            files are more platform independend
104    
105            * Thuban/Model/save.py (unify_filename): New. Unify filenames so
106            that they can be used on both windows and unix
107            (SessionSaver.prepare_filename): New. Handle all filename
108            transformations for filenames stored in the thuban file
109            (SessionSaver.write_data_containers, SessionSaver.write_layer):
110            Use prepare_filename
111    
112            * test/test_save.py (SaveSessionTest.testSingleLayer)
113            (SaveSessionTest.testLayerProjection)
114            (SaveSessionTest.testRasterLayer)
115            (SaveSessionTest.testClassifiedLayer)
116            (SaveSessionTest.test_dbf_table)
117            (SaveSessionTest.test_joined_table): Filenames are always stored
118            with slashes on all currently supported platforms so adapt all
119            tests to this
120    
121            * test/test_load.py (LoadSessionTest.filenames): With the new
122            filename scheme the filenames in the tests should be
123            understandable on all currently supported platforms so we turn
124            this into an empty list because we don't have to normalize them
125            anymore
126    
127    2003-11-28  Bernhard Herzog  <[email protected]>
128    
129            * test/test_layer.py (TestLayer.test_arc_layer_with_projection):
130            Add the ellipsoid to the projection since some Proj versions
131            complain if it's missing.
132    
133    2003-11-27  Bernhard Herzog  <[email protected]>
134    
135            Corect some bounding box projection problems
136    
137            * Thuban/Model/proj.py (Projection.InverseBBox): New. Inverse
138            version of ForwardBBox
139            (Projection._transform_bbox): New. common implementation of
140            ForwardBBox and InverseBBox
141            (Projection.ForwardBBox): Use _transform_bbox.
142    
143            * test/test_proj.py (TestProjection.test): Add test for
144            InverseBBox
145    
146            * Thuban/Model/layer.py (Layer.LatLongBoundingBox)
147            (Layer.ShapesBoundingBox, RasterLayer.LatLongBoundingBox): Use the
148            new InverseBBox method to determine the unprojected bounding box
149            (Layer.ShapesInRegion): Use the ForwardBBox method to project the
150            bbox.
151    
152            * test/test_layer.py (TestLayer.test_point_layer_with_projection):
153            Removed.
154            (TestLayer.test_arc_layer_with_projection): New. This test is
155            better able to test whether bounding boxes are projected correctly
156            than test_point_layer_with_projection
157    
158            * Thuban/UI/viewport.py (ViewPort.map_projection_changed): Use
159            InverseBBox to unproject bboxes
160    
161    2003-11-25  Bernhard Herzog  <[email protected]>
162    
163            * Thuban/UI/about.py (About.__init__): Make sure we have ASCII
164            source code.
165    
166    2003-11-25  Bernhard Herzog  <[email protected]>
167    
168            * Thuban/Model/layer.py (Layer.__getattr__): Removed. It was only
169            there for backwards compatibility and all code relying on that
170            should have been updated by now.
171    
172    2003-11-25  Bernhard Herzog  <[email protected]>
173    
174            * test/test_load.py (TestClassification.test): Add the missing
175            round trip test.
176            (TestClassification.file_contents): Update to the newest file
177            format
178    
179    2003-11-25  Bernhard Herzog  <[email protected]>
180    
181            Add very experimental (and possibly dangerous) extension to draw
182            polygons:
183    
184            * Extensions/drawshape/README: New. Brief installation
185            instructions
186    
187            * Extensions/drawshape/drawshape.py: New. Implementation of the
188            drawshape extensions
189    
190            * Extensions/drawshape/patch.diff: Patch to apply before the
191            extension can be used.
192    
193    2003-11-24  Bernhard Herzog  <[email protected]>
194    
195            * Thuban/Model/data.py (ShapefileStore._open_shapefile)
196            (ShapefileStore.__init__): Factor opening the shapefile into a
197            separate method (the new _open_shapefile). This makes the code a
198            bit more readable but the real reason is that it makes some evil
199            hacks easier. :-)
200    
201    2003-11-24  Bernhard Herzog  <[email protected]>
202    
203            * Thuban/Model/load.py (SessionLoader.check_attrs): If no
204            converter is specified for an attribute assume it's a string
205            containing only Latin1 characters. Update doc-string accordingly.
206            This change should fix many places where unicode objects might
207            accidentally enter Thuban.
208    
209            * test/test_load.py (TestNonAsciiColumnName): New test to check
210            what happens with column names in DBF files that contain non-ascii
211            characters
212    
213    2003-11-21  Bernhard Herzog  <[email protected]>
214    
215            Enable the experimental attribute editing again and introduce a
216            command line switch to actually activate it
217    
218            * Thuban/UI/main.py (options): New. Container for options set on
219            the commmand line
220            (main): Add the --enable-attribute-editing flag.
221    
222            * Thuban/UI/identifyview.py (IdentifyView.__init__): If attribute
223            editing is enabled use the grid ctrl which allows editing of the
224            values
225    
226            * Thuban/Model/transientdb.py (AutoTransientTable.write_record):
227            New. Just delegate this to the underlying table.
228    
229    2003-11-20  Bernhard Herzog  <[email protected]>
230    
231            * test/test_proj.py (ProjFileReadTests.test_read_unreadable_file):
232            Skip this test if run under non-posix systems since it only works
233            there
234    
235    2003-11-19  Bernhard Herzog  <[email protected]>
236    
237            * Thuban/Model/resource.py: Rework the way gdal support is
238            determined so that we can give a reason in the about why gdal is
239            not supported.
240            (gdal_support_status): New. Variable holding a string with the
241            reason for no gdal support
242    
243            * Thuban/UI/about.py (About.__init__): Add the reason why gdal is
244            not supported to the message
245    
246    2003-11-19  Bernhard Herzog  <[email protected]>
247    
248            Remove the old table interface and its test cases
249    
250            * Thuban/Model/table.py (OldTableInterfaceMixin): Removed.
251            (DBFTable, MemoryTable): Do not derive from OldTableInterfaceMixin
252            anymore
253    
254            * Thuban/Model/transientdb.py (TransientTableBase)
255            (AutoTransientTable): Do not derive from OldTableInterfaceMixin
256            anymore
257    
258            * test/test_table.py: Removed since the old interface it tests is
259            gone.
260    
261            * test/runtests.py (main): The old table interface is gone and
262            with it the deprecation warnings so remove the code that turns
263            these warnings into errors
264    
265    2003-11-19  Bernhard Herzog  <[email protected]>
266    
267            * test/test_table.py: Revert to revision 1.5 again. Changing the
268            tests to use the new table interface is completely wrong since the
269            whole purpose of the tests in this module is to test the old
270            interface.
271    
272    2003-11-18  Bernhard Herzog  <[email protected]>
273    
274            * Thuban/Model/postgisdb.py (PostGISConnection.MatchesParameters):
275            New. Test whether the connection matches a set of connection
276            parameters
277    
278            * Thuban/UI/dbdialog.py (DBFrame.conns_changed): Fix doc-string
279            (DBFrame.OnAdd): Use the new MatchesParameters method when looking
280            for existing connections with the same parameters and break out of
281            the loop correctly.
282    
283            * test/test_postgis_db.py (TestBriefDescription)
284            (TestPostGISSimple.test_brief_description): Rename
285            TestBriefDescription to TestPostGISSimple and the test method to
286            test_brief_description so that we can add more test methods.
287            (TestPostGISSimple.test_matches_parameters): New. Test the new
288            MatchesParameters method
289    
290    2003-11-18  Bernhard Herzog  <[email protected]>
291    
292            * Thuban/Lib/connector.py (Publisher): Introduce a new flag,
293            _was_destroyed, to indicate whether an publisher instance has
294            already been destroyed.
295            (Publisher.Unsubscribe): Only disconnect if the publisher has not
296            been destroyed yet.
297            (Publisher.Destroy): Set the _was_destroyed flag to true.
298    
299            * test/test_connector.py
300            (TestPublisher.test_unsubscribe_after_destroy): New. Test that
301            calling Unsubscribe after Destroy doesn't raise an exception
302    
303    2003-11-14  Bernhard Herzog  <[email protected]>
304    
305            * Thuban/UI/identifyview.py (IdentifyView.selected_shape): Fix
306            typo in doc-string
307    
308    2003-11-13  Bernhard Herzog  <[email protected]>
309    
310            Quote table and column names properly for postgis.
311    
312            * Thuban/Model/postgisdb.py (quote_identifier): New. Function to
313            quote an identifier for use in an sql statement
314            (PostGISColumn.__init__): Add the quoted_name attribute
315            (PostGISTable.__init__): New instance variable quoted_tablename
316            (PostGISTable._fetch_table_information): Use the quoted table
317            name. New isntance variable quoted_geo_col with a quoted version
318            of geometry_column
319            (PostGISTable.NumRows, PostGISTable.RowIdToOrdinal)
320            (PostGISTable.RowOrdinalToId): Use the quoted table name
321            (PostGISTable.ReadValue, PostGISTable.ValueRange)
322            (PostGISTable.UniqueValues, PostGISTable.SimpleQuery)
323            (PostGISShapeStore.BoundingBox, PostGISShapeStore.Shape)
324            (PostGISShapeStore.AllShapes, PostGISShapeStore.ShapesInRegion):
325            Use quoted table and column names
326    
327            * test/test_postgis_db.py (TestPostGISSpecialCases)
328            (TestPostGISIgnoredColumns): Rename the class to
329            TestPostGISSpecialCases because that better describes the new
330            cases
331            (TestPostGISSpecialCases.test_unsupported_types)
332            (TestPostGISSpecialCases.test): Rename the method to
333            test_unsupported_types because we need a more descriptive name now
334            that there are more methods
335            (TestPostGISSpecialCases.test_table_name_quoting)
336            (TestPostGISSpecialCases.test_column_name_quoting)
337            (TestPostGISSpecialCases.test_shapestore_name_quoting): New test
338            cases to test quoting of table and column names in PostGISTable
339            and PostGISShapeStore
340    
341            * test/postgissupport.py
342            (skip_if_addgeometrycolumn_does_not_use_quote_ident): New. Skip if
343            AddGeometryColumn desn't support table or column names with sapces
344            or double quotes
345    
346    2003-11-12  Jan-Oliver Wagner <[email protected]>
347    
348            * Extensions/wms/__init__.py: New: Init to make this
349            directory a package.
350    
351            * Extensions/wms/wms.py: New: Provide layers via OGC WMS.
352    
353    2003-11-11  Bernhard Herzog  <[email protected]>
354    
355            * Thuban/Model/resource.py (EPSG_DEPRECATED_PROJ_FILE): New.
356            Constant for the file woth deprecated epsg projections
357            (get_system_proj_file): Update doc-string
358    
359            * Thuban/UI/projdialog.py (ProjFrame.build_dialog): Add a space
360            above the EPS widgets, introduce a check box for the deprecated
361            eps projections and a label for the epsg widgets
362            (ProjFrame._OnShowEPSG): Handle the deprecated EPSG projections
363            too
364    
365    2003-11-11  Bernhard Herzog  <[email protected]>
366    
367            Avoid warnings when run under Python 2.3
368    
369            * Thuban/UI/baserenderer.py (BaseRenderer.draw_point_shape)
370            (BaseRenderer.draw_label_layer): Coordinates must be ints.
371    
372            * Thuban/UI/renderer.py (MapRenderer.make_point): Turn this into a
373            real method so that we can convert to int.
374            (MapRenderer.label_font): The font size mist be an int.
375    
376            * Thuban/UI/common.py (Color2wxColour): The color values must be
377            ints. Also, remove the unnecessary asserts.
378    
379            * test/test_load_0_8.py (TestUnicodeStrings.file_contents)
380            (TestUnicodeStrings.test): Python source code should not contain
381            non-ascii characters unless an encoding is specified in the file.
382            Therefore use \x escapes in the string literals for non-ascii
383            characters.
384    
385    2003-11-11  Bernhard Herzog  <[email protected]>
386    
387            * Thuban/Model/resource.py (get_system_proj_file): Add a filename
388            parameter so that this function can be used for all proj files in
389            Resource/Projections
390            (DEFAULT_PROJ_FILE, EPSG_PROJ_FILE): New. Predefined filenames for
391            get_system_proj_file
392    
393            * Thuban/UI/projdialog.py (ProjFrame.__init__): Instead of one
394            ProjFile self.__sysProjFile use a dictionary of system ProjFile
395            objects self._sys_proj_files
396            (ProjFrame.build_dialog): Adapt to the new changes in the
397            ProjectionList constructor. Add a check button to toggle whether
398            EPSG projections are shown
399            (ProjFrame._OnShowEPSG): New. Handler for the epsg check button
400            events.
401            (ProjFrame.load_user_proj, ProjFrame.load_system_proj): Only show
402            the busy cursor if the files have not yet been loaded by the
403            dialog.
404            (ProjFrame.load_system_proj): Add a parameter for the name of the
405            proj file. Maintain the dictionary of system projections
406            self._sys_proj_files
407    
408            * Thuban/UI/projlist.py (ProjectionList): Merge the system_projs,
409            user_projs parameters into one parameter proj_files which is a
410            list of proj files.
411            (ProjectionList._subscribe_proj_files)
412            (ProjectionList._unsubscribe_proj_files): New. Move
413            subscription/unsubscription of projfile messages to separate
414            methods
415            (ProjectionList.Destroy): The unsubscribe is now done in
416            _unsubscribe_proj_files
417            (ProjectionList.update_projections): We now have a list of proj
418            file objects
419            (ProjectionList.SetProjFiles): New method to set a new list of
420            proj file objects
421    
422            * test/test_proj.py (ProjFileReadTests.test_get_system_proj_file):
423            Specify explicitly which system proj file to load.
424    
425    2003-11-11  Bernhard Herzog  <[email protected]>
426    
427            * Thuban/Model/load.py (SessionLoader.Destroy): New. Clear all
428            instance variables to cut cyclic references. The GC would have
429            collected the loader eventually but it can happen that it doesn't
430            run at all until thuban is closed (2.3 but not 2.2 tries a bit
431            harder and forces a collection when the interpreter terminates)
432            (load_session): Call the handler's Destroy method to make sure
433            that it gets garbage collected early. Otherwise it will be
434            collected very late if at all and it holds some references to e.g.
435            shapestores and the session which can lead to leaks (of e.g. the
436            temporary files)
437    
438            * test/test_load.py (TestSingleLayer.test_leak): New. test for the
439            resource leak in load_session
440    
441    2003-11-10  Bernhard Herzog  <[email protected]>
442    
443            * Thuban/UI/baserenderer.py: Add a way to specify how layers in
444            extensions are to be rendered.
445            (_renderer_extensions): New. List with renderer for layers in
446            extensions
447            (add_renderer_extension): New. Add a renderer extension
448            (init_renderer_extensions): New. Init the renderer extensions
449            (BaseRenderer.render_map_incrementally): Search
450            _renderer_extensions for how to draw unknown layer types
451            (BaseRenderer.draw_raster_data): Add format parameter so that
452            formats other than BMP can be drawn
453            (BaseRenderer.draw_raster_layer): Pass an explicit format to
454            draw_raster_data
455    
456            * Thuban/UI/renderer.py (raster_format_map): New. Mapping form the
457            strings of the format parameter of draw_raster_data method to wx
458            constants
459            (MapRenderer.draw_raster_data): Add the format parameter and use
460            raster_format_map to map it to the right wxwindows constant for
461            wxImageFromStream
462    
463            * test/test_baserenderer.py (SimpleRenderer.draw_raster_data): Add
464            the format parameter and record it
465            (TestBaseRenderer.test_raster_no_projection): check the format
466            paramter of the draw_raster_data method
467            (TestBaseRenderer.test_renderer_extension): New. Test the renderer
468            extension facility
469    
470    2003-11-07  Bernhard Herzog  <[email protected]>
471    
472            Tweak the usage of the sqlite database to make common use cases
473            more responsive. In most cases copying the data to the sqlite
474            database takes so long that using sqlite doesn't have enough
475            advantages.
476    
477            * Thuban/Model/transientdb.py (TransientTableBase.ValueRange): Add
478            comments about performance and query the min and max in separate
479            statements because only that way will indexes be used.
480            (TransientTableBase.UniqueValues): Add some comments about
481            performance.
482            (AutoTransientTable.ValueRange, AutoTransientTable.UniqueValues):
483            Do not copy the data to the transient DB but use the transient
484            copy if it exists. See the new comments for the performance trade
485            offs
486    
487            * test/test_transientdb.py
488            (TestTransientTable.test_auto_transient_table): Make sure that the
489            data is copied to the transient database at some point.
490    
491    2003-11-03  Bernhard Herzog  <[email protected]>
492    
493            * Thuban/Model/data.py (ShapefileStore.ShapesInRegion): Bind some
494            globals to locals so that it's a bit faster
495    
496    2003-11-03  Bernhard Herzog  <[email protected]>
497    
498            * Thuban/UI/baserenderer.py
499            (BaseRenderer.draw_shape_layer_incrementally): Use the ReadValue
500            method. ReadValue is faster than ReadRowAsDict since it only reads
501            one cell especially now that the dbf file objects actually
502            implement it.
503    
504            * Thuban/Model/table.py (DBFTable.ReadValue): Use the new
505            read_attribute method of the dbf objects
506    
507    2003-11-03  Bernhard Herzog  <[email protected]>
508    
509            * Extensions/profiling/profiling.py (popup_dialog_box): New config
510            variable to indicate whether the result should be shown in a
511            dialog box
512            (profile_screen_renderer, time_screen_renderer): Only show a
513            dialog box if popup_dialog_box is true.
514            (profile_screen_renderer): Flush stdout after the printing the
515            first part of the "profiling..." message
516    
517            * Thuban/UI/baserenderer.py
518            (BaseRenderer.draw_shape_layer_incrementally): Cache the pens and
519            brushes for the groups so that they're not created over and over
520            again
521    
522            * Thuban/Model/classification.py (Classification.__getattr__)
523            (Classification._compile_classification)
524            (Classification._clear_compiled_classification): New. Methods to
525            manage a 'compiled' representation of the classification groups
526            which is created on demand
527            (Classification.InsertGroup, Classification.RemoveGroup)
528            (Classification.ReplaceGroup): reset the compiled representation
529            (Classification.FindGroup): Use the compiled representation to
530            find the matching group
531            (ClassGroupRange.GetRangeTuple): New. Return the range as a tuple
532    
533    2003-10-31  Bernhard Herzog  <[email protected]>
534    
535            * Thuban/Model/classification.py (Classification.SetDefaultGroup):
536            Send a CLASS_CHANGED message
537            (Classification.RemoveGroup): Send a CLASS_CHANGED message and do
538            not return the removed group since it wasn't used.
539    
540            * test/test_classification.py
541            (TestClassification.test_set_default_group): New. Test the
542            SetDefaultGroup method
543            (TestClassification.test_insert_group): New. Test the InsertGroup
544            method
545            (TestClassification.test_remove_group): New. Test the RemoveGroup
546            method
547            (TestClassification.test_replace_group): New. Test the
548            ReplaceGroup method
549    
550    2003-10-31  Bernhard Herzog  <[email protected]>
551    
552            * test/test_classification.py (TestClassification.setUp):
553            Subscribe to the CLASS_CHANGED messages
554            (TestClassification.tearDown): New. Destroy the classification
555            properly
556            (TestClassification.test_defaults): Add tests for the default line
557            width and whether no messages were sent yet
558            (TestClassification.test_set_default_properties): Add tests for
559            messages and setting the default line width
560            (TestClassification.test_add_singleton)
561            (TestClassification.test_add_range)
562            (TestClassification.test_multiple_groups): Add tests for messages
563    
564    2003-10-31  Bernhard Herzog  <[email protected]>
565    
566            Some more refactoring in preparation for new tests:
567    
568            * test/test_classification.py (TestClassification.setUp): New.
569            Instantiate the classification here. Update the test methods
570            accordingly.
571            (TestClassification.test_multiple_groups): Make sure that the two
572            singletons matching 1 are considered different.
573    
574    2003-10-31  Bernhard Herzog  <[email protected]>
575    
576            * test/test_classification.py (red, green, blue): New. These
577            constants were used in several cases. Update the relevant methods.
578            (TestClassification.test_defaults)
579            (TestClassification.test_set_default_properties)
580            (TestClassification.test_add_singleton)
581            (TestClassification.test_add_range)
582            (TestClassification.test_multiple_groups)
583            (TestClassification.test_deepcopy): New. These were formerly all
584            part of the single method test.
585            (TestClassification.test_deepcopy): Removed.
586            (TestClassIterator): Removed. The test case is now a method of
587            TestClassification since it tests part of the public interface of
588            Classification
589            (TestClassification.test_iterator): New. Used to be
590            TestClassIterator effectively
591    
592    2003-10-31  Jan-Oliver Wagner <[email protected]>
593    
594            GUIfied the functions of the profiling extension.
595    
596            * /Extensions/profiling/__init__.py: New: Init to make this
597            directory a package.
598    
599            * Extensions/profiling/profiling.py: Moved menu entries to
600            the Extensions menu. Applied _() for strings.
601            (profile_screen_renderer): Catch the detailed printout and present
602            it in a dialog.
603            (time_screen_renderer): Raise a dialog to present the result instead
604            of printing it to stdout.
605    
606    2003-10-31  Bernhard Herzog  <[email protected]>
607    
608            * test/test_classification.py (TestClassGroupProperties)
609            (TestClassGroup, TestClassGroupDefault, TestClassGroupRange)
610            (TestClassGroupSingleton, TestClassIterator, TestClassification):
611            Split TestClassification into several classes, one for each class
612            being tested. TestClassification itself now only tests
613            Classification. This split makes changes to the tests a bit easier
614    
615    2003-10-31  Bernhard Herzog  <[email protected]>
616    
617            * Extensions/profiling/profiling.py: New. Extension to measure
618            Thuban performance
619    
620    2003-10-31  Frank Koormann <[email protected]>
621    
622            Added two items to legend popup menu: Remove Layer and Show Layer Table
623    
624            * Thuban/UI/legend.py (LegendPanel._OnRemoveLayer,
625            LegendPanel._OnShowTable): New event handlers, call the corresponding
626            mainwindow methods.
627            (LegendTree._OnRightClick): Added items to popup menu.
628    
629  2003-10-30  Bernhard Herzog  <[email protected]>  2003-10-30  Bernhard Herzog  <[email protected]>
630    
631          * Thuban/UI/dialogs.py (ThubanFrame.__init__): Handle          * Thuban/UI/dialogs.py (ThubanFrame.__init__): Handle

Legend:
Removed from v.1894  
changed lines
  Added in v.2018

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26