/[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 1649 by bh, Mon Aug 25 13:55:49 2003 UTC revision 1775 by bh, Mon Oct 6 13:09:24 2003 UTC
# Line 1  Line 1 
1    2003-10-06  Bernhard Herzog  <[email protected]>
2    
3            * test/test_viewport.py (ViewPortTest.setUp)
4            (SimpleViewPortTest.test_init_with_size): Move the test for the
5            initial size as a constructor parameter from ViewPortTest.setUp
6            method to a new separate test in SimpleViewPortTest.
7    
8    2003-10-06  Bernhard Herzog  <[email protected]>
9    
10            * test/test_viewport.py (MockView): New class derived from
11            ViewPort with a mock implementation of GetTextExtent to be used in
12            the test cases
13            (ViewPortTest.setUp): Use MockView instead of ViewPort
14    
15            * Thuban/UI/viewport.py (ViewPort.GetTextExtent): Turn this method
16            into what would be a "pure virtual function" in C++: always raise
17            NotImplementedError. Mock implementations for test cases don't
18            belong into the real code
19    
20    2003-10-02  Bernhard Herzog  <[email protected]>
21    
22            * test/test_layer.py (TestLayer.test_empty_layer): Explicitly
23            close the dbf file we create so that it's contents have been
24            written properly.
25    
26            * libraries/shapelib/shptree.c, libraries/shapelib/shpopen.c,
27            libraries/shapelib/shapefil.h, libraries/shapelib/dbfopen.c:
28            Update to shapelib 1.2.10
29    
30    2003-10-01  Jan-Oliver Wagner <[email protected]>
31    
32            * Thuban/UI/tree.py, Thuban/UI/main.py: Remove the #! line as
33            it annoys lintian which warns about these files not being
34            executable. The #! isn't necessary here since if you absolutely
35            must execute them you can always say "python <filename>".
36    
37    2003-09-26  Bernhard Herzog  <[email protected]>
38    
39            * Thuban/Model/classgen.py (GenQuantiles0): Removed since it's
40            only used in GREAT-ER but not used in Thuban itself. When GREAT-ER
41            is ported to a newer the import will fail, so it should be noticed
42            immediately that this function is gone.
43            Fixes RT#1919
44    
45    2003-09-26  Bernhard Herzog  <[email protected]>
46    
47            Add a DTD for the projection files and make thuban write valid
48            projection files
49    
50            * Resources/XML/projfile.dtd: New. DTD for thuban's projection
51            files
52    
53            * Thuban/Model/resource.py (ProjFileSaver.write): Use
54            'projectionlist' as the name in the document type declaration so
55            that it matches the element type of the root element.
56    
57            * test/test_proj.py (sample_projfile, sample_projfile2): Use
58            'projectionlist' as the name in the document type declaration just
59            as it is done now in the files thuban would write
60            (sample_projfile, sample_projfile_data): Fix spelling of
61            "Mercator"
62            (TestProjFile.doTestWrite): Validate the written and the expected
63            XML data
64            (TestProjFile): Derive from ValidationTest so that we can run xml
65            validation tests
66    
67    2003-09-24  Bernhard Herzog  <[email protected]>
68    
69            * Thuban/UI/renderer.py (ExportRenderer.render_legend): Do not
70            modify the list returned by map.Layers() in place since it is the
71            actual list of layers used by the map.
72    
73    2003-09-23  Jan-Oliver Wagner <[email protected]>
74    
75            * Doc/manual/thuban-manual.xml: Added subsection to chapter
76            Extensions to describe the extensions coming with the Thuban
77            standard package (gns2shp and importAPR).
78    
79    2003-09-23  Bernhard Herzog  <[email protected]>
80    
81            * libraries/thuban/wxproj.cpp (project_point): if there's an
82            inverse but no forward projection, convert to degrees after
83            applying the inverse projection. Fixes RT#2096
84    
85            * test/test_wxproj.py: New. Test cases for wxproj.so. One test
86            implicitly tests for the fix to RT#2096
87    
88            * test/support.py (FloatComparisonMixin.assertFloatSeqEqual):
89            Check that the sequences have the same lengths
90    
91            * Resources/Projections/defaults.proj (Geographic projection): Use
92            a much more precise value for the to_meter attribute.
93    
94    2003-09-22  Bernhard Herzog  <[email protected]>
95    
96            * test/support.py (initthuban): Make sure to unset the LANG env.
97            var. so that tests that compare translated strings work. Solves RT
98            #2094
99    
100    2003-09-22  Jan-Oliver Wagner <[email protected]>
101    
102            Small improvement of APR import.
103    
104            * Extensions/importAPR/test/test_apr.py (aprTest.test_LClass):
105            Added tests for text-ranges.
106    
107            * Extensions/importAPR/apr.py (APR_LClass.GetThubanRange): Now
108            returns a string object if the range is based on text.
109    
110            * Extensions/importAPR/importAPR.py (import_apr_dialog): Unified
111            range retrieval.
112    
113    2003-09-22  Jan-Oliver Wagner <[email protected]>
114    
115            Initial version of the importAPR extension which is in
116            experimental state.
117    
118            * /Extensions/importAPR/, /Extensions/importAPR/samples/,
119            /Extensions/importAPR/test/: New directories.
120    
121            * /Extensions/importAPR/samples/README: New: Howto load the samples.
122    
123            * /Extensions/importAPR/samples/iceland.apr: New: A sample APR
124            file which refers to the Thuban Iceland demo data.
125    
126            * /Extensions/importAPR/test/README: New: Howto execute the tests.
127    
128            * /Extensions/importAPR/test/test_apr.py: New: Tests for APR classes.
129    
130            * /Extensions/importAPR/apr.py: New: Classes for ArcView Objects
131            as in '.apr'-files.
132    
133            * /Extensions/importAPR/odb.py: New: Classes for generic ArcView
134            ODB Objects as in '.apr', '.avl' and other files.
135    
136            * /Extensions/importAPR/__init__.py: New: Init to make this
137            directory a package.
138    
139            * /Extensions/importAPR/importAPR.py: New: Import a ArcView
140            project file (.apr) and convert it to Thuban.
141    
142    2003-09-22  Jan-Oliver Wagner <[email protected]>
143    
144            * Extensions/gns2shp.gns2shp.py: The main module of gns2shp.
145    
146    2003-09-19  Jan-Oliver Wagner <[email protected]>
147    
148            * Doc/manual/thuban-manual.xml: Extended section 'Installation'
149            with description on RPM installation and RPM binary package
150            creation.
151    
152    2003-09-18  Bernhard Herzog  <[email protected]>
153    
154            * setup.py (data_files): Only add the mo files if the Locales
155            directory actually exists, so that setup.py works with a fresh CVS
156            checkout
157    
158    2003-09-12  Jan-Oliver Wagner <[email protected]>
159    
160            * Examples/simple_extensions/simple_tool.py: bugfix: Tool is now
161            in viewport, not anymore in view
162    
163    2003-09-04  Jan-Oliver Wagner <[email protected]>
164    
165            Introducing first Extension (gns2shp).
166    
167            * Extensions, Extensions/gns2shp, Extensions/gns2shp/test: New.
168    
169            * Extensions/__init__.py: New. init to make this dir a package.
170    
171            * Extensions/gns2shp/__init__.py: New. init to make this dir a package.
172    
173            * Extensions/gns2shp/test/README: New. some info on this test directory.
174    
175            * Extensions/gns2shp/test/ls.txt: New. test data set (Liechtenstein).
176    
177            * Extensions/gns2shp/test/test_gns2shp.py: New. Test for correct creation
178            of Shapefile from GNS text file format
179    
180    2003-09-03  Jan-Oliver Wagner <[email protected]>
181    
182            Fix/workaround for bug #2019:
183            https://intevation.de/rt/webrt?serial_num=2019
184    
185            * Thuban/UI/identifyview.py (IdentifyView.ID_STOP): New.
186            (IdentifyView.__init__): Added another button that allows to
187            stop the identify mode.
188            (IdentifyView.OnStop): New. Stops the identify mode.
189    
190    2003-09-03  Jan-Oliver Wagner <[email protected]>
191    
192            Introducing a new exception dialog that allows to exit the
193            application immediately.
194            This fixes bug #2060: https://intevation.de/rt/webrt?serial_num=2060
195    
196            * Thuban/UI/exceptiondialog.py: New. A special exception dialog.
197    
198            * Thuban/UI/application.py (ThubanApplication.ShowExceptionDialog):
199            Made strings available to translations. Exchanged the simple
200            ScrolledMessageDialog by the new ExceptionDialog.
201    
202    2003-09-01  Bernhard Herzog  <[email protected]>
203    
204            * NEWS: New. Summary of changes and release notes.
205    
206            * MANIFEST.in: Add NEWS
207    
208    2003-09-01  Bernhard Herzog  <[email protected]>
209    
210            * MANIFEST.in: Correct the include statement for the mo-files and
211            include the documentation too.
212    
213            * setup.py (data_files): Add the .mo files
214            (setup call): Up to version 0.9.0
215    
216    2003-09-01  Bernhard Herzog  <[email protected]>
217    
218            * Thuban/UI/dbdialog.py (ChooseDBTableDialog.__init__): Change the
219            parameter list to just parent and session
220            (ChooseDBTableDialog.__set_properties): Removed. Setting the
221            selection of empty list boxes is not allowed (and produces C++
222            assertion errors) and the rest of the setup is better done in
223            __init__ anyway.
224            (ChooseDBTableDialog.OnCancel, ChooseDBTableDialog.OnOK)
225            (ChooseDBTableDialog.OnLBDClick, DBDialog.OnOK): Use the Python
226            builtins True/False for booleans to avoid warnings from wxPython
227    
228            * Thuban/UI/mainwindow.py (MainWindow.AddDBLayer): Adapt to new
229            ChooseDBTableDialog constructor parameters.
230    
231    2003-09-01  Bernhard Herzog  <[email protected]>
232    
233            * Thuban/Model/postgisdb.py
234            (PostGISTable): Extend doc-string
235            (PostGISTable._fetch_table_information): Set the column index
236            correctly, pretending ignored columns don't exist.
237    
238            * test/test_postgis_db.py (TestPostGISIgnoredColumns): New tests
239            for postgis tables with data types not yet supported by thuban.
240    
241    2003-08-29  Bernhard Herzog  <[email protected]>
242    
243            * HOWTO-Release: Tweak item about running the tests.
244    
245    2003-08-29  Jan-Oliver Wagner <[email protected]>
246    
247            * /Doc/manual/thuban-manual.xml: updated to version 1.0pre2.
248    
249    2003-08-29  Bernhard Herzog  <[email protected]>
250    
251            Add some missing parameters to projections. Proj complains about
252            them on windows but for some reason not on Linux.
253    
254            * test/test_save.py (SaveSessionTest.testLayerProjection): Add
255            missing required projection parameters
256    
257            * test/test_proj.py (TestProjFile.test): Add missing required
258            projection parameters
259    
260            * test/test_load_0_8.py (TestLayerProjection.file_contents)
261            (TestLayerProjection.test): Add missing required projection
262            parameters and tests for them
263    
264            * test/test_load.py (TestLayerProjection.file_contents)
265            (TestLayerProjection.test): Add missing required projection
266            parameters and tests for them
267    
268            * test/test_layer.py (TestLayer.test_base_layer): Add missing
269            required projection parameters
270    
271    2003-08-29  Bernhard Herzog  <[email protected]>
272    
273            * libraries/pyprojection/Projection.i: Use pj_get_errno_ref to
274            access the pj_errno because directly accessing pj_errno doesn't
275            work on windows if the proj library is in a DLL
276    
277            * libraries/pyprojection/Projection_wrap.c: Update from Projection.i
278    
279    2003-08-28  Bernhard Herzog  <[email protected]>
280    
281            * test/test_proj.py: Import things from Thuban after calling
282            initthuban
283    
284            * test/test_load.py (LoadSessionTest.filenames): New class
285            variable with the filename attributes to normalize
286            (LoadSessionTest.check_format): Pass self.filenames to
287            sax_eventlist to normalize the filename attributes
288    
289            * test/xmlsupport.py: Add cvs keywords
290            (SaxEventLister.__init__): New parameter filenames which indicates
291            attributes that contain filenames
292            (SaxEventLister.startElementNS): Normalize the filename attributes
293            with os.path.normpath
294            (sax_eventlist): New parameter filenames to pass through to
295            SaxEventLister
296    
297            * test/test_derivedshapestore.py: Make this file callable as a
298            program to execute the tests
299            (TestDerivedShapeStoreExceptions.test_table_with_wrong_size): Bind
300            the session to self.session so that it gets destroyed properly
301    
302            * test/test_layer.py (TestLayer.tearDown): Call the session's
303            Destroy method
304    
305            * test/test_map.py (TestMapBase.tearDown): Destroy self.session
306            too if it exists
307            (TestMapAddLayer.test_add_layer): Bind the session to self.session
308            so that it gets destroyed properly
309    
310            * test/postgissupport.py (reason_for_not_running_tests): Add a
311            test for the existence of popen2.Popen4.
312    
313            * test/test_save.py (SaveSessionTest.tearDown): New. Provide a
314            reliable way to destroy the sessions created in the test cases
315            (SaveSessionTest.test_dbf_table): Bind the session to self.session
316            so that it gets destroyed properly
317            (SaveSessionTest.testLayerProjection): Bind the session to
318            self.session so that it gets destroyed properly
319    
320            * test/test_session.py (UnreferencedTablesTests.tearDown): Make
321            sure that the session is destroyed properly
322    
323            * test/test_shapefilestore.py: Make this callable as a program to
324            execute the tests
325    
326            * test/test_scalebar.py: Remove unnecessary import of _ from
327            Thuban
328    
329            * test/support.py (print_garbage_information): Call initthuban
330            here because it may be called indirectly from test cases that test
331            test support modules which do not use anything from thuban itself
332            (ThubanTestProgram.runTests): Remove unnecessary debug print
333    
334    2003-08-28  Bernhard Herzog  <[email protected]>
335    
336            * Thuban/version.py (longversion): Update to 0.9
337    
338            * Thuban/UI/mainwindow.py: Remove some unused imports
339    
340            * README: Add section about required additional software. Add date
341            and revision CVS keywords
342    
343            * HOWTO-Release: Add item about the translations. Add date and
344            revision CVs keywords and change formatting to match README a bit
345            better
346    
347            * po/de.po: Update for 0.9
348    
349            * test/README: Tweak the wording a little because many tests are
350            not really unittest.
351    
352    2003-08-27  Bernhard Herzog  <[email protected]>
353    
354            As preparation for the 0.9 release, switch thuban files to a
355            non-dev namespace
356    
357            * Thuban/Model/save.py (SessionSaver.write_session): Write files
358            with the http://thuban.intevation.org/dtds/thuban-0.9.dtd
359            namespace
360    
361            * Thuban/Model/load.py (SessionLoader.__init__): Accept the
362            http://thuban.intevation.org/dtds/thuban-0.9.dtd namespace too
363    
364            * test/test_save.py (SaveSessionTest.dtd)
365            (SaveSessionTest.testEmptySession)
366            (SaveSessionTest.testSingleLayer)
367            (SaveSessionTest.testLayerProjection)
368            (SaveSessionTest.testRasterLayer)
369            (SaveSessionTest.testClassifiedLayer)
370            (SaveSessionTest.test_dbf_table)
371            (SaveSessionTest.test_joined_table)
372            (SaveSessionTest.test_save_postgis): Update for new namespace
373    
374            * test/test_load.py (LoadSessionTest.dtd, TestSingleLayer)
375            (TestLayerVisibility.file_contents, TestLabels.file_contents)
376            (TestLayerProjection.file_contents)
377            (TestRasterLayer.file_contents, TestJoinedTable.file_contents)
378            (TestPostGISLayer.file_contents)
379            (TestPostGISLayerPassword.file_contents)
380            (TestLoadError.file_contents, TestLoadError.test): Update for new
381            namespace
382    
383    2003-08-27  Bernhard Herzog  <[email protected]>
384    
385            Make the table interface distinguish between row ids (an integer
386            that uniquely identifies a row) and row ordinals (a simple row
387            count from 0 to NumRows() - 1)
388    
389            * Thuban/Model/postgisdb.py (PostGISTable.RowIdToOrdinal)
390            (PostGISTable.RowOrdinalToId): New methods to conver between row
391            ids and row ordinals
392            (PostGISTable.ReadRowAsDict, PostGISTable.ReadValue): New keyword
393            parameter row_is_ordinal to indicate whether the row parameter is
394            the row id or the ordinal
395    
396            * Thuban/Model/transientdb.py (TransientTableBase.RowIdToOrdinal)
397            (TransientTableBase.RowOrdinalToId)
398            (AutoTransientTable.RowIdToOrdinal)
399            (AutoTransientTable.RowOrdinalToId): Same new methods as in
400            PostGISTable.
401            (TransientTableBase.ReadRowAsDict, TransientTableBase.ReadValue)
402            (AutoTransientTable.ReadRowAsDict, AutoTransientTable.ReadValue):
403            Same new parameter as in PostGISTable.
404    
405            * Thuban/Model/table.py (DBFTable.RowIdToOrdinal)
406            (DBFTable.RowOrdinalToId, MemoryTable.RowIdToOrdinal)
407            (MemoryTable.RowOrdinalToId): Same new methods as in PostGISTable.
408            (DBFTable.ReadValue, DBFTable.ReadRowAsDict)
409            (MemoryTable.ReadValue, MemoryTable.ReadRowAsDict): Same new
410            parameter as in PostGISTable.
411    
412            * Thuban/UI/tableview.py (DataTable.RowIdToOrdinal)
413            (DataTable.RowOrdinalToId): New methods to convert between row ids
414            and row ordinals.
415            (TableGrid.SelectRowById): New method to select a row based on its
416            ID as opposed to its ordinal
417            (DataTable.GetValue, TableGrid.OnRangeSelect)
418            (TableGrid.OnSelectCell, LayerTableGrid.select_shapes)
419            (QueryTableFrame.OnQuery, QueryTableFrame.get_selected)
420            (LayerTableFrame.__init__): Convert between row ids and row
421            ordinals as appropriate
422    
423            * test/postgissupport.py (PostGISDatabase.__init__): Add
424            doc-string.
425            (PostGISDatabase.initdb): The optional third item in a tuple in
426            tables is now a (key, value) list with additional arguments to
427            pass to upload_shapefile
428            (upload_shapefile): New parameter gid_offset to allow gids that
429            are not the same as the shapeids in the shapefile
430            (PostgreSQLServer.get_default_static_data_db): Use the new
431            gid_offset to make the gids in landmarks 1000 higher than the
432            shapeids in the shapefile
433    
434            * test/test_viewport.py
435            (TestViewportWithPostGIS.test_find_shape_at_point): Adapt to the
436            new shapeids in the landmarks table
437    
438            * test/test_transientdb.py
439            (TestTransientTable.run_iceland_political_tests)
440            (TestTransientTable.test_transient_joined_table): Add tests for
441            the new table methods and new keywords arguments.
442    
443            * test/test_postgis_db.py
444            (TestPostGISTable.test_read_row_as_dict_row_count_mode)
445            (TestPostGISTable.test_read_value_row_count_mode)
446            (TestPostGISTable.test_row_id_to_ordinal)
447            (TestPostGISTable.test_row_oridnal_to_id): New test for the new
448            table methods and the new arguments
449            (TestPostGISShapestorePoint.test_shapes_in_region)
450            (TestPostGISShapestorePoint.test_shape_raw_data)
451            (TestPostGISShapestorePoint.test_shape_points)
452            (TestPostGISShapestorePoint.test_shape_shapeid)
453            (TestPostGISShapestorePoint.test_all_shapes)
454            (TestPostGISTable.test_simple_query)
455            (TestPostGISTable.test_simple_query)
456            (TestPostGISTable.test_simple_query)
457            (TestPostGISTable.test_read_value)
458            (TestPostGISTable.test_read_row_as_dict): Adapt to the new
459            shapeids in the landmarks table
460    
461            * test/test_memory_table.py
462            (TestMemoryTable.test_read_row_as_dict_row_count_mode)
463            (TestMemoryTable.test_read_value_row_count_mode)
464            (TestMemoryTable.test_row_id_to_ordinal)
465            (TestMemoryTable.test_row_oridnal_to_id): New test for the new
466            table methods and the new arguments
467    
468            * test/test_dbf_table.py
469            (TestDBFTable.test_read_row_as_dict_row_count_mode)
470            (TestDBFTable.test_read_value_row_count_mode)
471            (TestDBFTable.test_row_id_to_ordinal)
472            (TestDBFTable.test_row_oridnal_to_id): New test for the new table
473            methods and the new arguments
474    
475    2003-08-26  Bernhard Herzog  <[email protected]>
476    
477            * Thuban/Model/postgisdb.py (PostGISShapeStore.BoundingBox): Use a
478            more postgis specific but much faster method to get the bounding
479            box
480    
481    2003-08-26  Bernhard Herzog  <[email protected]>
482    
483            * Thuban/Model/postgisdb.py (PostGISTable.Title)
484            (PostGISShapeStore.AllShapes): Add these missing methods.
485            (PostGISShapeStore.ShapesInRegion): No need to raise
486            StopIteration. We can simply return
487    
488            * test/test_postgis_db.py (TestPostGISTable.test_title)
489            (TestPostGISShapestorePoint.test_all_shapes): New tests for the
490            new methods
491    
492    2003-08-25  Bernhard Herzog  <[email protected]>
493    
494            * Thuban/Model/postgisdb.py (shapetype_map): Add MUTLIPOLYGON.
495    
496            * test/test_postgis_db.py (PolygonTests): New class containing
497            those tests from TestPostGISShapestorePolygon that can also be
498            used to test MUTLIPOLYGON tables
499            (TestPostGISShapestorePolygon): Most tests are now in PolygonTests
500            so derive from that
501            (TestPostGISShapestoreMultiPolygon): New class with tests for
502            MUTLIPOLYGON tables
503    
504            * test/postgissupport.py (PostGISDatabase.initdb): Allow the
505            tables argument to have tuples with three items to override the
506            WKT type used.
507            (PostgreSQLServer.get_default_static_data_db): Use the above to
508            create a polygon table with MUTLIPOLYGONs
509            (point_to_wkt, coords_to_point, polygon_to_wkt, coords_to_polygon)
510            (arc_to_wkt, coords_to_multilinestring): Rename from *_to_wkt to
511            coords_to*
512            (coords_to_multipolygon): New. Convert to MUTLIPOLYGON
513            (wkt_converter): New. Map WKT types to converters
514            (upload_shapefile): New parameter force_wkt_type to use a
515            different WKT type than the default
516    
517    2003-08-25  Bernhard Herzog  <[email protected]>
518    
519            * Thuban/UI/application.py
520            (ThubanApplication.run_db_param_dialog): New. Suitable as a
521            db_connection_callback. Main difference is that the dialog run
522            from this method doesn't have a parent so it can be used even when
523            there is no main window
524            (ThubanApplication.OpenSession): Use self.run_db_param_dialog if
525            no db_connection_callback was given. This way the dialog pops up
526            even when the .thuban file was given as a command line parameter.
527    
528    2003-08-25  Bernhard Herzog  <[email protected]>
529    
530            * Thuban/UI/view.py (MapCanvas.OnLeftUp): Release the the mouse
531            before calling MouseLeftUp. MouseLeftUp may pop up modal dialogs
532            which leads to an effectively frozen X session because the user
533            can only interact with the dialog but the mouse is still grabbed
534            by the canvas.
535            Also, call the tool's Hide method before MouseLeftUp because
536            MouseLeftUp may change the tool's coordinates.
537    
538    2003-08-25  Bernhard Herzog  <[email protected]>
539    
540            * Thuban/UI/application.py (ThubanApplication.OpenSession): Catch
541            LoadCancelled exceptions and handle them by returning immediately.
542    
543  2003-08-25  Bernhard Herzog  <[email protected]>  2003-08-25  Bernhard Herzog  <[email protected]>
544    
545          GUI part of loading sessions with postgis connections which may          GUI part of loading sessions with postgis connections which may
# Line 915  Line 1457 
1457    
1458          * Thuban/Model/range.py, Thuban/version.py: Remove the #! line as          * Thuban/Model/range.py, Thuban/version.py: Remove the #! line as
1459          it annoys lintian which warns about these files not being          it annoys lintian which warns about these files not being
1460          executable. The #1 isn't necessary here since if you absolutely          executable. The #! isn't necessary here since if you absolutely
1461          must execute them you can always say "python <filename>".          must execute them you can always say "python <filename>".
1462    
1463          * Thuban/UI/renderer.py (ScreenRenderer.draw_shape_layer): Remove          * Thuban/UI/renderer.py (ScreenRenderer.draw_shape_layer): Remove

Legend:
Removed from v.1649  
changed lines
  Added in v.1775

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26