wxruby3-shapes 0.9.0.pre.beta.3 → 0.9.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/INSTALL.md +5 -7
 - data/README.md +38 -6
 - data/assets/logo.svg +339 -0
 - data/assets/logo.xpm +60 -0
 - data/assets/screenshot.png +0 -0
 - data/assets/social.png +0 -0
 - data/bin/wx-shapes +1 -1
 - data/lib/wx/shapes/arrow_base.rb +4 -11
 - data/lib/wx/shapes/arrows/circle_arrow.rb +22 -11
 - data/lib/wx/shapes/arrows/circle_prong_arrow.rb +48 -0
 - data/lib/wx/shapes/arrows/cross_bar_arrow.rb +57 -0
 - data/lib/wx/shapes/arrows/cross_bar_circle_arrow.rb +56 -0
 - data/lib/wx/shapes/arrows/cross_bar_prong_arrow.rb +49 -0
 - data/lib/wx/shapes/arrows/crossed_circle.rb +46 -0
 - data/lib/wx/shapes/arrows/cup_arrow.rb +65 -0
 - data/lib/wx/shapes/arrows/diamond_arrow.rb +8 -13
 - data/lib/wx/shapes/arrows/double_cross_bar_arrow.rb +27 -0
 - data/lib/wx/shapes/arrows/filled_arrow.rb +60 -0
 - data/lib/wx/shapes/arrows/line_arrow.rb +67 -0
 - data/lib/wx/shapes/arrows/open_arrow.rb +22 -23
 - data/lib/wx/shapes/arrows/prong_arrow.rb +42 -0
 - data/lib/wx/shapes/arrows/solid_arrow.rb +21 -35
 - data/lib/wx/shapes/arrows/square_arrow.rb +37 -0
 - data/lib/wx/shapes/auto_layout.rb +2 -2
 - data/lib/wx/shapes/base.rb +1 -1
 - data/lib/wx/shapes/canvas_history.rb +20 -0
 - data/lib/wx/shapes/connection_point.rb +10 -6
 - data/lib/wx/shapes/diagram.rb +98 -78
 - data/lib/wx/shapes/events.rb +8 -8
 - data/lib/wx/shapes/printout.rb +3 -16
 - data/lib/wx/shapes/serializable.rb +2 -436
 - data/lib/wx/shapes/serialize/wx.rb +30 -18
 - data/lib/wx/shapes/shape.rb +211 -168
 - data/lib/wx/shapes/shape_canvas.rb +728 -267
 - data/lib/wx/shapes/shape_data_object.rb +99 -18
 - data/lib/wx/shapes/shape_handle.rb +18 -11
 - data/lib/wx/shapes/shape_list.rb +34 -67
 - data/lib/wx/shapes/shapes/bitmap_shape.rb +23 -24
 - data/lib/wx/shapes/shapes/box_shape.rb +389 -0
 - data/lib/wx/shapes/shapes/circle_shape.rb +19 -22
 - data/lib/wx/shapes/shapes/control_shape.rb +77 -41
 - data/lib/wx/shapes/shapes/curve_shape.rb +38 -31
 - data/lib/wx/shapes/shapes/diamond_shape.rb +7 -17
 - data/lib/wx/shapes/shapes/edit_text_shape.rb +6 -9
 - data/lib/wx/shapes/shapes/ellipse_shape.rb +12 -15
 - data/lib/wx/shapes/shapes/flex_grid_shape.rb +58 -33
 - data/lib/wx/shapes/shapes/grid_shape.rb +259 -161
 - data/lib/wx/shapes/shapes/line_shape.rb +155 -161
 - data/lib/wx/shapes/shapes/manager_shape.rb +77 -0
 - data/lib/wx/shapes/shapes/multi_sel_rect.rb +8 -8
 - data/lib/wx/shapes/shapes/ortho_shape.rb +31 -36
 - data/lib/wx/shapes/shapes/polygon_shape.rb +23 -29
 - data/lib/wx/shapes/shapes/rect_shape.rb +95 -53
 - data/lib/wx/shapes/shapes/round_ortho_shape.rb +6 -8
 - data/lib/wx/shapes/shapes/round_rect_shape.rb +20 -24
 - data/lib/wx/shapes/shapes/square_shape.rb +14 -17
 - data/lib/wx/shapes/shapes/text_shape.rb +95 -53
 - data/lib/wx/shapes/version.rb +1 -1
 - data/lib/wx/shapes/wx.rb +16 -7
 - data/lib/wx/wx-shapes/cmd/test.rb +1 -1
 - data/samples/demo/arrows.json +1 -0
 - data/samples/demo/arrows.yaml +793 -0
 - data/samples/demo/art/HBox.xpm +22 -0
 - data/samples/demo/art/VBox.xpm +22 -0
 - data/samples/demo/art/logo.xpm +60 -0
 - data/samples/demo/class.json +1 -0
 - data/samples/demo/class.yaml +5631 -0
 - data/samples/demo/demo.rb +301 -91
 - data/samples/demo/dialogs.rb +1405 -0
 - data/samples/demo/erd.json +1 -0
 - data/samples/demo/erd.yaml +4072 -0
 - data/samples/demo/frame_canvas.rb +409 -33
 - data/samples/sample1/art/logo.xpm +60 -0
 - data/samples/sample1/sample.rb +11 -11
 - data/samples/sample2/art/logo.xpm +60 -0
 - data/samples/sample2/sample.rb +2 -2
 - data/samples/sample2/sample_shape.rb +15 -15
 - data/samples/sample3/art/logo.xpm +60 -0
 - data/samples/sample3/sample.rb +3 -3
 - data/samples/sample4/art/logo.xpm +60 -0
 - data/samples/sample4/sample.rb +2 -2
 - data/tests/lib/wxapp_runner.rb +4 -0
 - data/tests/serializer_tests.rb +8 -441
 - data/tests/test_grid_shapes.rb +2 -2
 - data/tests/test_serialize_xml.rb +17 -0
 - data/tests/test_serialize_yaml.rb +2 -2
 - metadata +78 -28
 - data/lib/wx/shapes/serialize/core.rb +0 -40
 - data/lib/wx/shapes/serialize/id.rb +0 -82
 - data/lib/wx/shapes/serializer/json.rb +0 -258
 - data/lib/wx/shapes/serializer/yaml.rb +0 -125
 - data/samples/demo/art/sample.xpm +0 -251
 - data/samples/sample1/art/sample.xpm +0 -251
 - data/samples/sample2/art/sample.xpm +0 -251
 - data/samples/sample3/art/sample.xpm +0 -251
 - data/samples/sample4/art/sample.xpm +0 -251
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: '057851261926749b3b0c1174530f5e98ea2dd9c743ca228c1d8d5d03ef1af6b3'
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: affa03b0ac6a1547ddc4d92a3b0a7a031bc6fe93c843428d3f9be81cc2b5c846
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 5b5f1f3377fd54a5613023b58c02de7ec451bd50e53a3ac0ebbef1ac2d5fd792458f77a50a6295cf417839f7157853eb8db4ef45203ae1aabe7be5e9a438e973
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 4400bd26bceb8eb6589aaa0571e74986084e0c9774f0a23072330f5d76e50ce81ebae1dee87000bc7069e4f925391beee29c95746017bb563b80b57551f9dcad
         
     | 
    
        data/INSTALL.md
    CHANGED
    
    | 
         @@ -14,13 +14,11 @@ gem install wxruby3-shapes 
     | 
|
| 
       14 
14 
     | 
    
         
             
             ```
         
     | 
| 
       15 
15 
     | 
    
         | 
| 
       16 
16 
     | 
    
         
             
            This will install the wxruby3-shapes gem on any system supporting Ruby and wxRuby.
         
     | 
| 
       17 
     | 
    
         
            -
            As wxRuby3/Shapes has a dependency on wxRuby3 the wxRuby3 gem will be  
     | 
| 
       18 
     | 
    
         
            -
             
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
            Due to the dependencies of the wxRuby3 gem itself it might be preferable to install that gem separately beforehand. See the
         
     | 
| 
       23 
     | 
    
         
            -
            [INSTALL](https://github.com/mcorino/wxRuby3/blob/master/INSTALL.md) document of the wxRuby3 project for more details.
         
     | 
| 
      
 17 
     | 
    
         
            +
            As wxRuby3/Shapes has a dependency on wxRuby3 the wxRuby3 gem will be installed as well if not yet installed. 
         
     | 
| 
      
 18 
     | 
    
         
            +
            Depending on your system this may install a prebuilt binary package (see the [wxRuby3](https://github.com/mcorino/wxRuby3) 
         
     | 
| 
      
 19 
     | 
    
         
            +
            project for more information about supported platforms) or require you to run a post-install step to build the wxRuby3
         
     | 
| 
      
 20 
     | 
    
         
            +
            extension library binaries before you can use wxRuby3/Shapes (see the
         
     | 
| 
      
 21 
     | 
    
         
            +
            [INSTALL](https://github.com/mcorino/wxRuby3/blob/master/INSTALL.md) document of the wxRuby3 project for more details).
         
     | 
| 
       24 
22 
     | 
    
         | 
| 
       25 
23 
     | 
    
         
             
            ## Building from source
         
     | 
| 
       26 
24 
     | 
    
         | 
    
        data/README.md
    CHANGED
    
    | 
         @@ -7,7 +7,7 @@ 
     | 
|
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         
             
            # wxRuby3/Shapes - A wxRuby3 2D shapes and diagramming framework
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
     | 
    
         
            -
            
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
12 
     | 
    
         
             
            ## Introduction
         
     | 
| 
       13 
13 
     | 
    
         | 
| 
         @@ -21,7 +21,7 @@ The library consists of several classes encapsulating a so called 'Shape canvas' 
     | 
|
| 
       21 
21 
     | 
    
         
             
            GUI control used for management of diagrams) providing the following features:
         
     | 
| 
       22 
22 
     | 
    
         | 
| 
       23 
23 
     | 
    
         
             
            - Create charts (diagrams) interactively in your wxRuby3 applications
         
     | 
| 
       24 
     | 
    
         
            -
            - Serialize/deserialize charts to file or any io stream in multiple formats (currently supported formats are JSON and  
     | 
| 
      
 24 
     | 
    
         
            +
            - Serialize/deserialize charts to file or any io stream in multiple formats (currently supported formats are JSON, YAML and XML)
         
     | 
| 
       25 
25 
     | 
    
         
             
            - Support for Clipboard operations (Cut/Paste) and Drag&Drop of diagram components (shapes)
         
     | 
| 
       26 
26 
     | 
    
         
             
            - Support for Undo/Redo operations
         
     | 
| 
       27 
27 
     | 
    
         
             
            - Support for alignment of diagram components.
         
     | 
| 
         @@ -29,9 +29,10 @@ GUI control used for management of diagrams) providing the following features: 
     | 
|
| 
       29 
29 
     | 
    
         
             
            - Support for diagram export to bitmap (any supported type)
         
     | 
| 
       30 
30 
     | 
    
         
             
            - Support for Thumbnail view of diagram
         
     | 
| 
       31 
31 
     | 
    
         
             
            - A standard collection of diagram components
         
     | 
| 
       32 
     | 
    
         
            -
              - Shapes: basic rectangular, square, circle, ellipse, rounded rectangle, grid, flexible grid,  
     | 
| 
      
 32 
     | 
    
         
            +
              - Shapes: basic rectangular, square, circle, ellipse, rounded rectangle, grid, flexible grid, horizontal box, 
         
     | 
| 
      
 33 
     | 
    
         
            +
                        vertical box, text, editable text, polygonal, diamond, bitmap
         
     | 
| 
       33 
34 
     | 
    
         
             
              - Lines: straight, curved, orthogonal, rounded orthogonal
         
     | 
| 
       34 
     | 
    
         
            -
              - Line arrows: solid, open, diamond, circle
         
     | 
| 
      
 35 
     | 
    
         
            +
              - Line arrows: solid, open, diamond, circle, cup, prong, square, crossbar, etc.
         
     | 
| 
       35 
36 
     | 
    
         
             
            - Highly customizable and extendable
         
     | 
| 
       36 
37 
     | 
    
         | 
| 
       37 
38 
     | 
    
         
             
            The shape framework (and shape canvas) allows to define the relationship between various
         
     | 
| 
         @@ -43,6 +44,37 @@ of diagrams. 
     | 
|
| 
       43 
44 
     | 
    
         
             
            More over, the library source code is pure Ruby based on wxRuby3 GUI toolkit, so it will
         
     | 
| 
       44 
45 
     | 
    
         
             
            run on any platform that supports Ruby and wxRuby3.
         
     | 
| 
       45 
46 
     | 
    
         | 
| 
      
 47 
     | 
    
         
            +
            
         
     | 
| 
      
 48 
     | 
    
         
            +
             
     | 
| 
      
 49 
     | 
    
         
            +
            ### To install
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
            The wxRuby3/Shapes project provides gems on [RubyGems](https://rubygems.org) which can be installed with the
         
     | 
| 
      
 52 
     | 
    
         
            +
            standard `gem install` command line this:
         
     | 
| 
      
 53 
     | 
    
         
            +
             
     | 
| 
      
 54 
     | 
    
         
            +
            ```shell
         
     | 
| 
      
 55 
     | 
    
         
            +
            gem install wxruby3-shapes
         
     | 
| 
      
 56 
     | 
    
         
            +
             ```
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
      
 58 
     | 
    
         
            +
            See [INSTALL](INSTALL.md) for more details. 
         
     | 
| 
      
 59 
     | 
    
         
            +
             
     | 
| 
      
 60 
     | 
    
         
            +
            ### To test
         
     | 
| 
      
 61 
     | 
    
         
            +
             
     | 
| 
      
 62 
     | 
    
         
            +
            After installation run this:
         
     | 
| 
      
 63 
     | 
    
         
            +
             
     | 
| 
      
 64 
     | 
    
         
            +
            ```shell
         
     | 
| 
      
 65 
     | 
    
         
            +
            wx-shapes test
         
     | 
| 
      
 66 
     | 
    
         
            +
            ```
         
     | 
| 
      
 67 
     | 
    
         
            +
             
     | 
| 
      
 68 
     | 
    
         
            +
            ### To run a demonstration application
         
     | 
| 
      
 69 
     | 
    
         
            +
             
     | 
| 
      
 70 
     | 
    
         
            +
            After installation run this:
         
     | 
| 
      
 71 
     | 
    
         
            +
             
     | 
| 
      
 72 
     | 
    
         
            +
            ```shell
         
     | 
| 
      
 73 
     | 
    
         
            +
            wx-shapes sampler
         
     | 
| 
      
 74 
     | 
    
         
            +
            ```
         
     | 
| 
      
 75 
     | 
    
         
            +
             
     | 
| 
      
 76 
     | 
    
         
            +
            See the output of `wx-shapes --help` for more options.
         
     | 
| 
      
 77 
     | 
    
         
            +
             
     | 
| 
       46 
78 
     | 
    
         
             
            ## wxRuby3/Shapes licence
         
     | 
| 
       47 
79 
     | 
    
         | 
| 
       48 
80 
     | 
    
         
             
            wxruby3/shapes is free and open-source. It is distributed under the liberal
         
     | 
| 
         @@ -102,13 +134,13 @@ This documentation (for the latest release) is also available online 
     | 
|
| 
       102 
134 
     | 
    
         
             
            with the following major implementation differences:
         
     | 
| 
       103 
135 
     | 
    
         | 
| 
       104 
136 
     | 
    
         
             
            - wxRuby3/Shapes implements a totally different serialization scheme in which none of the XML serializer 
         
     | 
| 
       105 
     | 
    
         
            -
            code has been ported 
     | 
| 
       106 
     | 
    
         
            -
            provides a more adaptable implementation with (for now) two supported output formats; JSON and YAML.
         
     | 
| 
      
 137 
     | 
    
         
            +
            code has been ported but instead relies on the [FIRM](https://github.com/mcorino/firm) gem for serialization support.
         
     | 
| 
       107 
138 
     | 
    
         
             
            - Related to this the internal management of shape references has been changed as well as this was tightly 
         
     | 
| 
       108 
139 
     | 
    
         
             
            linked to the serialization implementation.
         
     | 
| 
       109 
140 
     | 
    
         
             
            - The API has been Ruby-fied with respect to constant names, method names and argument passing and return
         
     | 
| 
       110 
141 
     | 
    
         
             
            values.
         
     | 
| 
       111 
142 
     | 
    
         
             
            - The ScaledDC class has been integrated with wxRuby3 and is not part of wxRuby3/Shapes.
         
     | 
| 
      
 143 
     | 
    
         
            +
            - The implementation has been noticeably improved and extended compared to the wxShapeFramework implementation.  
         
     | 
| 
       112 
144 
     | 
    
         | 
| 
       113 
145 
     | 
    
         
             
            In addition many small tweaks, improvements and also bugfixes have been implemented as part of the port. 
         
     | 
| 
       114 
146 
     | 
    
         | 
    
        data/assets/logo.svg
    ADDED
    
    | 
         @@ -0,0 +1,339 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            <?xml version="1.0" encoding="UTF-8" standalone="no"?>
         
     | 
| 
      
 2 
     | 
    
         
            +
            <svg
         
     | 
| 
      
 3 
     | 
    
         
            +
               xmlns:ooo="http://xml.openoffice.org/svg/export"
         
     | 
| 
      
 4 
     | 
    
         
            +
               xmlns:dc="http://purl.org/dc/elements/1.1/"
         
     | 
| 
      
 5 
     | 
    
         
            +
               xmlns:cc="http://creativecommons.org/ns#"
         
     | 
| 
      
 6 
     | 
    
         
            +
               xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         
     | 
| 
      
 7 
     | 
    
         
            +
               xmlns:svg="http://www.w3.org/2000/svg"
         
     | 
| 
      
 8 
     | 
    
         
            +
               xmlns="http://www.w3.org/2000/svg"
         
     | 
| 
      
 9 
     | 
    
         
            +
               xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
         
     | 
| 
      
 10 
     | 
    
         
            +
               xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
         
     | 
| 
      
 11 
     | 
    
         
            +
               version="1.2"
         
     | 
| 
      
 12 
     | 
    
         
            +
               width="105.83334mm"
         
     | 
| 
      
 13 
     | 
    
         
            +
               height="105.83334mm"
         
     | 
| 
      
 14 
     | 
    
         
            +
               viewBox="0 0 10583.333 10583.333"
         
     | 
| 
      
 15 
     | 
    
         
            +
               preserveAspectRatio="xMidYMid"
         
     | 
| 
      
 16 
     | 
    
         
            +
               fill-rule="evenodd"
         
     | 
| 
      
 17 
     | 
    
         
            +
               stroke-width="28.222"
         
     | 
| 
      
 18 
     | 
    
         
            +
               stroke-linejoin="round"
         
     | 
| 
      
 19 
     | 
    
         
            +
               xml:space="preserve"
         
     | 
| 
      
 20 
     | 
    
         
            +
               id="svg107"
         
     | 
| 
      
 21 
     | 
    
         
            +
               sodipodi:docname="logo.svg"
         
     | 
| 
      
 22 
     | 
    
         
            +
               inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"><metadata
         
     | 
| 
      
 23 
     | 
    
         
            +
               id="metadata111"><rdf:RDF><cc:Work
         
     | 
| 
      
 24 
     | 
    
         
            +
                   rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
         
     | 
| 
      
 25 
     | 
    
         
            +
                     rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><sodipodi:namedview
         
     | 
| 
      
 26 
     | 
    
         
            +
               pagecolor="#ffffff"
         
     | 
| 
      
 27 
     | 
    
         
            +
               bordercolor="#666666"
         
     | 
| 
      
 28 
     | 
    
         
            +
               borderopacity="1"
         
     | 
| 
      
 29 
     | 
    
         
            +
               objecttolerance="10"
         
     | 
| 
      
 30 
     | 
    
         
            +
               gridtolerance="10"
         
     | 
| 
      
 31 
     | 
    
         
            +
               guidetolerance="10"
         
     | 
| 
      
 32 
     | 
    
         
            +
               inkscape:pageopacity="0"
         
     | 
| 
      
 33 
     | 
    
         
            +
               inkscape:pageshadow="2"
         
     | 
| 
      
 34 
     | 
    
         
            +
               inkscape:window-width="3440"
         
     | 
| 
      
 35 
     | 
    
         
            +
               inkscape:window-height="1368"
         
     | 
| 
      
 36 
     | 
    
         
            +
               id="namedview109"
         
     | 
| 
      
 37 
     | 
    
         
            +
               showgrid="false"
         
     | 
| 
      
 38 
     | 
    
         
            +
               inkscape:zoom="1.2611806"
         
     | 
| 
      
 39 
     | 
    
         
            +
               inkscape:cx="186.73746"
         
     | 
| 
      
 40 
     | 
    
         
            +
               inkscape:cy="181.67313"
         
     | 
| 
      
 41 
     | 
    
         
            +
               inkscape:window-x="0"
         
     | 
| 
      
 42 
     | 
    
         
            +
               inkscape:window-y="0"
         
     | 
| 
      
 43 
     | 
    
         
            +
               inkscape:window-maximized="1"
         
     | 
| 
      
 44 
     | 
    
         
            +
               inkscape:current-layer="g105"
         
     | 
| 
      
 45 
     | 
    
         
            +
               inkscape:document-rotation="0" />
         
     | 
| 
      
 46 
     | 
    
         
            +
             <defs
         
     | 
| 
      
 47 
     | 
    
         
            +
               class="ClipPathGroup"
         
     | 
| 
      
 48 
     | 
    
         
            +
               id="defs8">
         
     | 
| 
      
 49 
     | 
    
         
            +
              <clipPath
         
     | 
| 
      
 50 
     | 
    
         
            +
               id="presentation_clip_path"
         
     | 
| 
      
 51 
     | 
    
         
            +
               clipPathUnits="userSpaceOnUse">
         
     | 
| 
      
 52 
     | 
    
         
            +
               <rect
         
     | 
| 
      
 53 
     | 
    
         
            +
               x="0"
         
     | 
| 
      
 54 
     | 
    
         
            +
               y="0"
         
     | 
| 
      
 55 
     | 
    
         
            +
               width="15000"
         
     | 
| 
      
 56 
     | 
    
         
            +
               height="15000"
         
     | 
| 
      
 57 
     | 
    
         
            +
               id="rect2" />
         
     | 
| 
      
 58 
     | 
    
         
            +
              </clipPath>
         
     | 
| 
      
 59 
     | 
    
         
            +
              <clipPath
         
     | 
| 
      
 60 
     | 
    
         
            +
               id="presentation_clip_path_shrink"
         
     | 
| 
      
 61 
     | 
    
         
            +
               clipPathUnits="userSpaceOnUse">
         
     | 
| 
      
 62 
     | 
    
         
            +
               <rect
         
     | 
| 
      
 63 
     | 
    
         
            +
               x="15"
         
     | 
| 
      
 64 
     | 
    
         
            +
               y="15"
         
     | 
| 
      
 65 
     | 
    
         
            +
               width="14970"
         
     | 
| 
      
 66 
     | 
    
         
            +
               height="14970"
         
     | 
| 
      
 67 
     | 
    
         
            +
               id="rect5" />
         
     | 
| 
      
 68 
     | 
    
         
            +
              </clipPath>
         
     | 
| 
      
 69 
     | 
    
         
            +
             
         
     | 
| 
      
 70 
     | 
    
         
            +
               
         
     | 
| 
      
 71 
     | 
    
         
            +
              </defs>
         
     | 
| 
      
 72 
     | 
    
         
            +
             <defs
         
     | 
| 
      
 73 
     | 
    
         
            +
               class="TextShapeIndex"
         
     | 
| 
      
 74 
     | 
    
         
            +
               id="defs12">
         
     | 
| 
      
 75 
     | 
    
         
            +
              <g
         
     | 
| 
      
 76 
     | 
    
         
            +
               ooo:slide="id1"
         
     | 
| 
      
 77 
     | 
    
         
            +
               ooo:id-list="id3 id4 id5 id6 id7 id8"
         
     | 
| 
      
 78 
     | 
    
         
            +
               id="g10" />
         
     | 
| 
      
 79 
     | 
    
         
            +
             </defs>
         
     | 
| 
      
 80 
     | 
    
         
            +
             <defs
         
     | 
| 
      
 81 
     | 
    
         
            +
               class="EmbeddedBulletChars"
         
     | 
| 
      
 82 
     | 
    
         
            +
               id="defs44">
         
     | 
| 
      
 83 
     | 
    
         
            +
              <g
         
     | 
| 
      
 84 
     | 
    
         
            +
               id="bullet-char-template-57356"
         
     | 
| 
      
 85 
     | 
    
         
            +
               transform="matrix(4.8828125e-4,0,0,-4.8828125e-4,0,0)">
         
     | 
| 
      
 86 
     | 
    
         
            +
               <path
         
     | 
| 
      
 87 
     | 
    
         
            +
               d="M 580,1141 1163,571 580,0 -4,571 Z"
         
     | 
| 
      
 88 
     | 
    
         
            +
               id="path14" />
         
     | 
| 
      
 89 
     | 
    
         
            +
              </g>
         
     | 
| 
      
 90 
     | 
    
         
            +
              <g
         
     | 
| 
      
 91 
     | 
    
         
            +
               id="bullet-char-template-57354"
         
     | 
| 
      
 92 
     | 
    
         
            +
               transform="matrix(4.8828125e-4,0,0,-4.8828125e-4,0,0)">
         
     | 
| 
      
 93 
     | 
    
         
            +
               <path
         
     | 
| 
      
 94 
     | 
    
         
            +
               d="M 8,1128 H 1137 V 0 H 8 Z"
         
     | 
| 
      
 95 
     | 
    
         
            +
               id="path17" />
         
     | 
| 
      
 96 
     | 
    
         
            +
              </g>
         
     | 
| 
      
 97 
     | 
    
         
            +
              <g
         
     | 
| 
      
 98 
     | 
    
         
            +
               id="bullet-char-template-10146"
         
     | 
| 
      
 99 
     | 
    
         
            +
               transform="matrix(4.8828125e-4,0,0,-4.8828125e-4,0,0)">
         
     | 
| 
      
 100 
     | 
    
         
            +
               <path
         
     | 
| 
      
 101 
     | 
    
         
            +
               d="M 174,0 602,739 174,1481 1456,739 Z M 1358,739 309,1346 659,739 Z"
         
     | 
| 
      
 102 
     | 
    
         
            +
               id="path20" />
         
     | 
| 
      
 103 
     | 
    
         
            +
              </g>
         
     | 
| 
      
 104 
     | 
    
         
            +
              <g
         
     | 
| 
      
 105 
     | 
    
         
            +
               id="bullet-char-template-10132"
         
     | 
| 
      
 106 
     | 
    
         
            +
               transform="matrix(4.8828125e-4,0,0,-4.8828125e-4,0,0)">
         
     | 
| 
      
 107 
     | 
    
         
            +
               <path
         
     | 
| 
      
 108 
     | 
    
         
            +
               d="M 2015,739 1276,0 H 717 l 543,543 H 174 v 393 h 1086 l -543,545 h 557 z"
         
     | 
| 
      
 109 
     | 
    
         
            +
               id="path23" />
         
     | 
| 
      
 110 
     | 
    
         
            +
              </g>
         
     | 
| 
      
 111 
     | 
    
         
            +
              <g
         
     | 
| 
      
 112 
     | 
    
         
            +
               id="bullet-char-template-10007"
         
     | 
| 
      
 113 
     | 
    
         
            +
               transform="matrix(4.8828125e-4,0,0,-4.8828125e-4,0,0)">
         
     | 
| 
      
 114 
     | 
    
         
            +
               <path
         
     | 
| 
      
 115 
     | 
    
         
            +
               d="m 0,-2 c -7,16 -16,29 -25,39 l 381,530 c -94,256 -141,385 -141,387 0,25 13,38 40,38 9,0 21,-2 34,-5 21,4 42,12 65,25 l 27,-13 111,-251 280,301 64,-25 24,25 c 21,-10 41,-24 62,-43 C 886,937 835,863 770,784 769,783 710,716 594,584 L 774,223 c 0,-27 -21,-55 -63,-84 l 16,-20 C 717,90 699,76 672,76 641,76 570,178 457,381 L 164,-76 c -22,-34 -53,-51 -92,-51 -42,0 -63,17 -64,51 -7,9 -10,24 -10,44 0,9 1,19 2,30 z"
         
     | 
| 
      
 116 
     | 
    
         
            +
               id="path26" />
         
     | 
| 
      
 117 
     | 
    
         
            +
              </g>
         
     | 
| 
      
 118 
     | 
    
         
            +
              <g
         
     | 
| 
      
 119 
     | 
    
         
            +
               id="bullet-char-template-10004"
         
     | 
| 
      
 120 
     | 
    
         
            +
               transform="matrix(4.8828125e-4,0,0,-4.8828125e-4,0,0)">
         
     | 
| 
      
 121 
     | 
    
         
            +
               <path
         
     | 
| 
      
 122 
     | 
    
         
            +
               d="M 285,-33 C 182,-33 111,30 74,156 52,228 41,333 41,471 c 0,78 14,145 41,201 34,71 87,106 158,106 53,0 88,-31 106,-94 l 23,-176 c 8,-64 28,-97 59,-98 l 735,706 c 11,11 33,17 66,17 42,0 63,-15 63,-46 V 965 c 0,-36 -10,-64 -30,-84 L 442,47 C 390,-6 338,-33 285,-33 Z"
         
     | 
| 
      
 123 
     | 
    
         
            +
               id="path29" />
         
     | 
| 
      
 124 
     | 
    
         
            +
              </g>
         
     | 
| 
      
 125 
     | 
    
         
            +
              <g
         
     | 
| 
      
 126 
     | 
    
         
            +
               id="bullet-char-template-9679"
         
     | 
| 
      
 127 
     | 
    
         
            +
               transform="matrix(4.8828125e-4,0,0,-4.8828125e-4,0,0)">
         
     | 
| 
      
 128 
     | 
    
         
            +
               <path
         
     | 
| 
      
 129 
     | 
    
         
            +
               d="M 813,0 C 632,0 489,54 383,161 276,268 223,411 223,592 c 0,181 53,324 160,431 106,107 249,161 430,161 179,0 323,-54 432,-161 108,-107 162,-251 162,-431 0,-180 -54,-324 -162,-431 C 1136,54 992,0 813,0 Z"
         
     | 
| 
      
 130 
     | 
    
         
            +
               id="path32" />
         
     | 
| 
      
 131 
     | 
    
         
            +
              </g>
         
     | 
| 
      
 132 
     | 
    
         
            +
              <g
         
     | 
| 
      
 133 
     | 
    
         
            +
               id="bullet-char-template-8226"
         
     | 
| 
      
 134 
     | 
    
         
            +
               transform="matrix(4.8828125e-4,0,0,-4.8828125e-4,0,0)">
         
     | 
| 
      
 135 
     | 
    
         
            +
               <path
         
     | 
| 
      
 136 
     | 
    
         
            +
               d="m 346,457 c -73,0 -137,26 -191,78 -54,51 -81,114 -81,188 0,73 27,136 81,188 54,52 118,78 191,78 73,0 134,-26 185,-79 51,-51 77,-114 77,-187 0,-75 -25,-137 -76,-188 -50,-52 -112,-78 -186,-78 z"
         
     | 
| 
      
 137 
     | 
    
         
            +
               id="path35" />
         
     | 
| 
      
 138 
     | 
    
         
            +
              </g>
         
     | 
| 
      
 139 
     | 
    
         
            +
              <g
         
     | 
| 
      
 140 
     | 
    
         
            +
               id="bullet-char-template-8211"
         
     | 
| 
      
 141 
     | 
    
         
            +
               transform="matrix(4.8828125e-4,0,0,-4.8828125e-4,0,0)">
         
     | 
| 
      
 142 
     | 
    
         
            +
               <path
         
     | 
| 
      
 143 
     | 
    
         
            +
               d="M -4,459 H 1135 V 606 H -4 Z"
         
     | 
| 
      
 144 
     | 
    
         
            +
               id="path38" />
         
     | 
| 
      
 145 
     | 
    
         
            +
              </g>
         
     | 
| 
      
 146 
     | 
    
         
            +
              <g
         
     | 
| 
      
 147 
     | 
    
         
            +
               id="bullet-char-template-61548"
         
     | 
| 
      
 148 
     | 
    
         
            +
               transform="matrix(4.8828125e-4,0,0,-4.8828125e-4,0,0)">
         
     | 
| 
      
 149 
     | 
    
         
            +
               <path
         
     | 
| 
      
 150 
     | 
    
         
            +
               d="m 173,740 c 0,163 58,303 173,419 116,115 255,173 419,173 163,0 302,-58 418,-173 116,-116 174,-256 174,-419 0,-163 -58,-303 -174,-418 C 1067,206 928,148 765,148 601,148 462,206 346,322 231,437 173,577 173,740 Z"
         
     | 
| 
      
 151 
     | 
    
         
            +
               id="path41" />
         
     | 
| 
      
 152 
     | 
    
         
            +
              </g>
         
     | 
| 
      
 153 
     | 
    
         
            +
             </defs>
         
     | 
| 
      
 154 
     | 
    
         
            +
             <g
         
     | 
| 
      
 155 
     | 
    
         
            +
               id="g49"
         
     | 
| 
      
 156 
     | 
    
         
            +
               transform="matrix(1.1969142,0,0,1.1920121,-2057.6568,-2303.8129)">
         
     | 
| 
      
 157 
     | 
    
         
            +
              <g
         
     | 
| 
      
 158 
     | 
    
         
            +
               id="id2"
         
     | 
| 
      
 159 
     | 
    
         
            +
               class="Master_Slide">
         
     | 
| 
      
 160 
     | 
    
         
            +
               <g
         
     | 
| 
      
 161 
     | 
    
         
            +
               id="bg-id2"
         
     | 
| 
      
 162 
     | 
    
         
            +
               class="Background" />
         
     | 
| 
      
 163 
     | 
    
         
            +
               <g
         
     | 
| 
      
 164 
     | 
    
         
            +
               id="bo-id2"
         
     | 
| 
      
 165 
     | 
    
         
            +
               class="BackgroundObjects" />
         
     | 
| 
      
 166 
     | 
    
         
            +
              </g>
         
     | 
| 
      
 167 
     | 
    
         
            +
             </g>
         
     | 
| 
      
 168 
     | 
    
         
            +
             <g
         
     | 
| 
      
 169 
     | 
    
         
            +
               class="SlideGroup"
         
     | 
| 
      
 170 
     | 
    
         
            +
               id="g105"
         
     | 
| 
      
 171 
     | 
    
         
            +
               transform="matrix(1.1969142,0,0,1.1920121,-2057.6568,-2303.8129)">
         
     | 
| 
      
 172 
     | 
    
         
            +
              <g
         
     | 
| 
      
 173 
     | 
    
         
            +
               id="container-id1"
         
     | 
| 
      
 174 
     | 
    
         
            +
               transform="matrix(0.63636359,0,0,0.63636355,1523.6329,1517.9165)">
         
     | 
| 
      
 175 
     | 
    
         
            +
                <g
         
     | 
| 
      
 176 
     | 
    
         
            +
               id="id1"
         
     | 
| 
      
 177 
     | 
    
         
            +
               class="Slide"
         
     | 
| 
      
 178 
     | 
    
         
            +
               clip-path="url(#presentation_clip_path)">
         
     | 
| 
      
 179 
     | 
    
         
            +
                 <g
         
     | 
| 
      
 180 
     | 
    
         
            +
               class="Page"
         
     | 
| 
      
 181 
     | 
    
         
            +
               id="g99">
         
     | 
| 
      
 182 
     | 
    
         
            +
                  <g
         
     | 
| 
      
 183 
     | 
    
         
            +
               class="com.sun.star.drawing.LineShape"
         
     | 
| 
      
 184 
     | 
    
         
            +
               id="g58">
         
     | 
| 
      
 185 
     | 
    
         
            +
                   <g
         
     | 
| 
      
 186 
     | 
    
         
            +
               id="id3">
         
     | 
| 
      
 187 
     | 
    
         
            +
                    <rect
         
     | 
| 
      
 188 
     | 
    
         
            +
               class="BoundingBox"
         
     | 
| 
      
 189 
     | 
    
         
            +
               stroke="none"
         
     | 
| 
      
 190 
     | 
    
         
            +
               fill="none"
         
     | 
| 
      
 191 
     | 
    
         
            +
               x="1979"
         
     | 
| 
      
 192 
     | 
    
         
            +
               y="6330"
         
     | 
| 
      
 193 
     | 
    
         
            +
               width="1013"
         
     | 
| 
      
 194 
     | 
    
         
            +
               height="3098"
         
     | 
| 
      
 195 
     | 
    
         
            +
               id="rect51" />
         
     | 
| 
      
 196 
     | 
    
         
            +
                    <path
         
     | 
| 
      
 197 
     | 
    
         
            +
               fill="none"
         
     | 
| 
      
 198 
     | 
    
         
            +
               stroke="#818181"
         
     | 
| 
      
 199 
     | 
    
         
            +
               stroke-width="353"
         
     | 
| 
      
 200 
     | 
    
         
            +
               stroke-linejoin="round"
         
     | 
| 
      
 201 
     | 
    
         
            +
               d="M 2500,9250 2485,7391"
         
     | 
| 
      
 202 
     | 
    
         
            +
               id="path53" />
         
     | 
| 
      
 203 
     | 
    
         
            +
                    <path
         
     | 
| 
      
 204 
     | 
    
         
            +
               fill="#818181"
         
     | 
| 
      
 205 
     | 
    
         
            +
               stroke="none"
         
     | 
| 
      
 206 
     | 
    
         
            +
               d="m 2986,7375 -456,-1003 -22,-29 -30,-12 -33,12 -21,26 -440,1014 -5,13 v 8 l 5,21 13,21 17,13 21,3 901,-7 21,-4 21,-13 8,-21 4,-21 v -8 z"
         
     | 
| 
      
 207 
     | 
    
         
            +
               id="path55" />
         
     | 
| 
      
 208 
     | 
    
         
            +
                   </g>
         
     | 
| 
      
 209 
     | 
    
         
            +
                  </g>
         
     | 
| 
      
 210 
     | 
    
         
            +
                  <g
         
     | 
| 
      
 211 
     | 
    
         
            +
               class="com.sun.star.drawing.CustomShape"
         
     | 
| 
      
 212 
     | 
    
         
            +
               id="g65">
         
     | 
| 
      
 213 
     | 
    
         
            +
                   <g
         
     | 
| 
      
 214 
     | 
    
         
            +
               id="id4">
         
     | 
| 
      
 215 
     | 
    
         
            +
                    <rect
         
     | 
| 
      
 216 
     | 
    
         
            +
               class="BoundingBox"
         
     | 
| 
      
 217 
     | 
    
         
            +
               stroke="none"
         
     | 
| 
      
 218 
     | 
    
         
            +
               fill="none"
         
     | 
| 
      
 219 
     | 
    
         
            +
               x="1397"
         
     | 
| 
      
 220 
     | 
    
         
            +
               y="1397"
         
     | 
| 
      
 221 
     | 
    
         
            +
               width="4957"
         
     | 
| 
      
 222 
     | 
    
         
            +
               height="4957"
         
     | 
| 
      
 223 
     | 
    
         
            +
               id="rect60" />
         
     | 
| 
      
 224 
     | 
    
         
            +
                    <path
         
     | 
| 
      
 225 
     | 
    
         
            +
               fill="none"
         
     | 
| 
      
 226 
     | 
    
         
            +
               stroke="#ffd700"
         
     | 
| 
      
 227 
     | 
    
         
            +
               stroke-width="706"
         
     | 
| 
      
 228 
     | 
    
         
            +
               stroke-linejoin="round"
         
     | 
| 
      
 229 
     | 
    
         
            +
               d="M 3875,6000 H 1750 V 1750 h 4250 v 4250 z"
         
     | 
| 
      
 230 
     | 
    
         
            +
               id="path62" />
         
     | 
| 
      
 231 
     | 
    
         
            +
                   </g>
         
     | 
| 
      
 232 
     | 
    
         
            +
                  </g>
         
     | 
| 
      
 233 
     | 
    
         
            +
                  <g
         
     | 
| 
      
 234 
     | 
    
         
            +
               class="com.sun.star.drawing.CustomShape"
         
     | 
| 
      
 235 
     | 
    
         
            +
               id="g72">
         
     | 
| 
      
 236 
     | 
    
         
            +
                   <g
         
     | 
| 
      
 237 
     | 
    
         
            +
               id="id5">
         
     | 
| 
      
 238 
     | 
    
         
            +
                    <rect
         
     | 
| 
      
 239 
     | 
    
         
            +
               class="BoundingBox"
         
     | 
| 
      
 240 
     | 
    
         
            +
               stroke="none"
         
     | 
| 
      
 241 
     | 
    
         
            +
               fill="none"
         
     | 
| 
      
 242 
     | 
    
         
            +
               x="7647"
         
     | 
| 
      
 243 
     | 
    
         
            +
               y="4197"
         
     | 
| 
      
 244 
     | 
    
         
            +
               width="5708"
         
     | 
| 
      
 245 
     | 
    
         
            +
               height="5708"
         
     | 
| 
      
 246 
     | 
    
         
            +
               id="rect67" />
         
     | 
| 
      
 247 
     | 
    
         
            +
                    <path
         
     | 
| 
      
 248 
     | 
    
         
            +
               fill="none"
         
     | 
| 
      
 249 
     | 
    
         
            +
               stroke="#b22222"
         
     | 
| 
      
 250 
     | 
    
         
            +
               stroke-width="706"
         
     | 
| 
      
 251 
     | 
    
         
            +
               stroke-linejoin="round"
         
     | 
| 
      
 252 
     | 
    
         
            +
               d="m 13001,7051 c 0,438 -116,870 -335,1250 -219,380 -535,696 -915,915 -380,219 -812,335 -1250,335 -439,0 -871,-116 -1251,-335 -380,-219 -696,-535 -915,-915 -219,-380 -335,-812 -335,-1250 0,-439 116,-871 335,-1251 219,-380 535,-696 915,-915 380,-219 812,-335 1251,-335 438,0 870,116 1250,335 380,219 696,535 915,915 219,380 335,812 335,1250 z"
         
     | 
| 
      
 253 
     | 
    
         
            +
               id="path69" />
         
     | 
| 
      
 254 
     | 
    
         
            +
                   </g>
         
     | 
| 
      
 255 
     | 
    
         
            +
                  </g>
         
     | 
| 
      
 256 
     | 
    
         
            +
                  <g
         
     | 
| 
      
 257 
     | 
    
         
            +
               class="com.sun.star.drawing.CustomShape"
         
     | 
| 
      
 258 
     | 
    
         
            +
               id="g79">
         
     | 
| 
      
 259 
     | 
    
         
            +
                   <g
         
     | 
| 
      
 260 
     | 
    
         
            +
               id="id6">
         
     | 
| 
      
 261 
     | 
    
         
            +
                    <rect
         
     | 
| 
      
 262 
     | 
    
         
            +
               class="BoundingBox"
         
     | 
| 
      
 263 
     | 
    
         
            +
               stroke="none"
         
     | 
| 
      
 264 
     | 
    
         
            +
               fill="none"
         
     | 
| 
      
 265 
     | 
    
         
            +
               x="1197"
         
     | 
| 
      
 266 
     | 
    
         
            +
               y="7397"
         
     | 
| 
      
 267 
     | 
    
         
            +
               width="6208"
         
     | 
| 
      
 268 
     | 
    
         
            +
               height="6208"
         
     | 
| 
      
 269 
     | 
    
         
            +
               id="rect74" />
         
     | 
| 
      
 270 
     | 
    
         
            +
                    <path
         
     | 
| 
      
 271 
     | 
    
         
            +
               fill="none"
         
     | 
| 
      
 272 
     | 
    
         
            +
               stroke="#00008b"
         
     | 
| 
      
 273 
     | 
    
         
            +
               stroke-width="706"
         
     | 
| 
      
 274 
     | 
    
         
            +
               stroke-linejoin="round"
         
     | 
| 
      
 275 
     | 
    
         
            +
               d="M 4300,7750 7051,10500 4300,13251 1550,10500 Z"
         
     | 
| 
      
 276 
     | 
    
         
            +
               id="path76" />
         
     | 
| 
      
 277 
     | 
    
         
            +
                   </g>
         
     | 
| 
      
 278 
     | 
    
         
            +
                  </g>
         
     | 
| 
      
 279 
     | 
    
         
            +
                  <g
         
     | 
| 
      
 280 
     | 
    
         
            +
               class="com.sun.star.drawing.PolyLineShape"
         
     | 
| 
      
 281 
     | 
    
         
            +
               id="g88">
         
     | 
| 
      
 282 
     | 
    
         
            +
                   <g
         
     | 
| 
      
 283 
     | 
    
         
            +
               id="id7">
         
     | 
| 
      
 284 
     | 
    
         
            +
                    <rect
         
     | 
| 
      
 285 
     | 
    
         
            +
               class="BoundingBox"
         
     | 
| 
      
 286 
     | 
    
         
            +
               stroke="none"
         
     | 
| 
      
 287 
     | 
    
         
            +
               fill="none"
         
     | 
| 
      
 288 
     | 
    
         
            +
               x="6173"
         
     | 
| 
      
 289 
     | 
    
         
            +
               y="2373"
         
     | 
| 
      
 290 
     | 
    
         
            +
               width="4584"
         
     | 
| 
      
 291 
     | 
    
         
            +
               height="1869"
         
     | 
| 
      
 292 
     | 
    
         
            +
               id="rect81" />
         
     | 
| 
      
 293 
     | 
    
         
            +
                    <path
         
     | 
| 
      
 294 
     | 
    
         
            +
               fill="none"
         
     | 
| 
      
 295 
     | 
    
         
            +
               stroke="#818181"
         
     | 
| 
      
 296 
     | 
    
         
            +
               stroke-width="353"
         
     | 
| 
      
 297 
     | 
    
         
            +
               stroke-linejoin="round"
         
     | 
| 
      
 298 
     | 
    
         
            +
               d="m 6350,2550 h 3900 v 631"
         
     | 
| 
      
 299 
     | 
    
         
            +
               id="path83" />
         
     | 
| 
      
 300 
     | 
    
         
            +
                    <path
         
     | 
| 
      
 301 
     | 
    
         
            +
               fill="#818181"
         
     | 
| 
      
 302 
     | 
    
         
            +
               stroke="none"
         
     | 
| 
      
 303 
     | 
    
         
            +
               d="m 9748,3193 449,1006 22,30 29,12 33,-12 21,-26 449,-1010 5,-13 v -8 l -5,-21 -12,-21 -17,-13 -21,-4 h -902 l -21,4 -21,13 -9,21 -3,21 v 8 z"
         
     | 
| 
      
 304 
     | 
    
         
            +
               id="path85" />
         
     | 
| 
      
 305 
     | 
    
         
            +
                   </g>
         
     | 
| 
      
 306 
     | 
    
         
            +
                  </g>
         
     | 
| 
      
 307 
     | 
    
         
            +
                  <g
         
     | 
| 
      
 308 
     | 
    
         
            +
               class="com.sun.star.drawing.PolyLineShape"
         
     | 
| 
      
 309 
     | 
    
         
            +
               id="g97">
         
     | 
| 
      
 310 
     | 
    
         
            +
                   <g
         
     | 
| 
      
 311 
     | 
    
         
            +
               id="id8">
         
     | 
| 
      
 312 
     | 
    
         
            +
                    <rect
         
     | 
| 
      
 313 
     | 
    
         
            +
               class="BoundingBox"
         
     | 
| 
      
 314 
     | 
    
         
            +
               stroke="none"
         
     | 
| 
      
 315 
     | 
    
         
            +
               fill="none"
         
     | 
| 
      
 316 
     | 
    
         
            +
               x="5595"
         
     | 
| 
      
 317 
     | 
    
         
            +
               y="9707"
         
     | 
| 
      
 318 
     | 
    
         
            +
               width="5083"
         
     | 
| 
      
 319 
     | 
    
         
            +
               height="3150"
         
     | 
| 
      
 320 
     | 
    
         
            +
               id="rect90" />
         
     | 
| 
      
 321 
     | 
    
         
            +
                    <path
         
     | 
| 
      
 322 
     | 
    
         
            +
               fill="none"
         
     | 
| 
      
 323 
     | 
    
         
            +
               stroke="#818181"
         
     | 
| 
      
 324 
     | 
    
         
            +
               stroke-width="353"
         
     | 
| 
      
 325 
     | 
    
         
            +
               stroke-linejoin="round"
         
     | 
| 
      
 326 
     | 
    
         
            +
               d="m 6655,12350 h 3845 V 9884"
         
     | 
| 
      
 327 
     | 
    
         
            +
               id="path92" />
         
     | 
| 
      
 328 
     | 
    
         
            +
                    <path
         
     | 
| 
      
 329 
     | 
    
         
            +
               fill="#818181"
         
     | 
| 
      
 330 
     | 
    
         
            +
               stroke="none"
         
     | 
| 
      
 331 
     | 
    
         
            +
               d="m 6643,11848 -1006,449 -30,22 -12,29 12,33 26,21 1010,449 13,5 h 8 l 21,-5 21,-12 13,-17 4,-21 v -902 l -4,-21 -13,-21 -21,-9 -21,-3 h -8 z"
         
     | 
| 
      
 332 
     | 
    
         
            +
               id="path94" />
         
     | 
| 
      
 333 
     | 
    
         
            +
                   </g>
         
     | 
| 
      
 334 
     | 
    
         
            +
                  </g>
         
     | 
| 
      
 335 
     | 
    
         
            +
                 </g>
         
     | 
| 
      
 336 
     | 
    
         
            +
                </g>
         
     | 
| 
      
 337 
     | 
    
         
            +
               </g>
         
     | 
| 
      
 338 
     | 
    
         
            +
             </g>
         
     | 
| 
      
 339 
     | 
    
         
            +
            </svg>
         
     | 
    
        data/assets/logo.xpm
    ADDED
    
    | 
         @@ -0,0 +1,60 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            /* XPM */
         
     | 
| 
      
 2 
     | 
    
         
            +
            static char * logo_xpm[] = {
         
     | 
| 
      
 3 
     | 
    
         
            +
            "32 32 25 1",
         
     | 
| 
      
 4 
     | 
    
         
            +
            " 	c None",
         
     | 
| 
      
 5 
     | 
    
         
            +
            ".	c #FFD700",
         
     | 
| 
      
 6 
     | 
    
         
            +
            "+	c #000000",
         
     | 
| 
      
 7 
     | 
    
         
            +
            "@	c #B22222",
         
     | 
| 
      
 8 
     | 
    
         
            +
            "#	c #060400",
         
     | 
| 
      
 9 
     | 
    
         
            +
            "$	c #052092",
         
     | 
| 
      
 10 
     | 
    
         
            +
            "%	c #041C91",
         
     | 
| 
      
 11 
     | 
    
         
            +
            "&	c #051F92",
         
     | 
| 
      
 12 
     | 
    
         
            +
            "*	c #062594",
         
     | 
| 
      
 13 
     | 
    
         
            +
            "=	c #041E91",
         
     | 
| 
      
 14 
     | 
    
         
            +
            "-	c #000004",
         
     | 
| 
      
 15 
     | 
    
         
            +
            ";	c #052192",
         
     | 
| 
      
 16 
     | 
    
         
            +
            ">	c #051F8F",
         
     | 
| 
      
 17 
     | 
    
         
            +
            ",	c #052293",
         
     | 
| 
      
 18 
     | 
    
         
            +
            "'	c #B22323",
         
     | 
| 
      
 19 
     | 
    
         
            +
            ")	c #751616",
         
     | 
| 
      
 20 
     | 
    
         
            +
            "!	c #062393",
         
     | 
| 
      
 21 
     | 
    
         
            +
            "~	c #02128F",
         
     | 
| 
      
 22 
     | 
    
         
            +
            "{	c #041B91",
         
     | 
| 
      
 23 
     | 
    
         
            +
            "]	c #000021",
         
     | 
| 
      
 24 
     | 
    
         
            +
            "^	c #00000D",
         
     | 
| 
      
 25 
     | 
    
         
            +
            "/	c #052091",
         
     | 
| 
      
 26 
     | 
    
         
            +
            "(	c #000002",
         
     | 
| 
      
 27 
     | 
    
         
            +
            "_	c #041D91",
         
     | 
| 
      
 28 
     | 
    
         
            +
            ":	c #041D92",
         
     | 
| 
      
 29 
     | 
    
         
            +
            "                                ",
         
     | 
| 
      
 30 
     | 
    
         
            +
            "  ............                  ",
         
     | 
| 
      
 31 
     | 
    
         
            +
            "  ............                  ",
         
     | 
| 
      
 32 
     | 
    
         
            +
            "  ............+++++++++         ",
         
     | 
| 
      
 33 
     | 
    
         
            +
            "  ............        +         ",
         
     | 
| 
      
 34 
     | 
    
         
            +
            "  ....    ....      +++++       ",
         
     | 
| 
      
 35 
     | 
    
         
            +
            "  ....    ....       +++        ",
         
     | 
| 
      
 36 
     | 
    
         
            +
            "  ....    ....        +         ",
         
     | 
| 
      
 37 
     | 
    
         
            +
            "  ....    ....       @@@@@      ",
         
     | 
| 
      
 38 
     | 
    
         
            +
            "  ............      @@@@@@@@    ",
         
     | 
| 
      
 39 
     | 
    
         
            +
            "  ............    @@@@@@@@@@@   ",
         
     | 
| 
      
 40 
     | 
    
         
            +
            "  ............    @@@     @@@   ",
         
     | 
| 
      
 41 
     | 
    
         
            +
            "  ............   @@@       @@@  ",
         
     | 
| 
      
 42 
     | 
    
         
            +
            "    #            @@@       @@@  ",
         
     | 
| 
      
 43 
     | 
    
         
            +
            "   +++           @@@       @@@  ",
         
     | 
| 
      
 44 
     | 
    
         
            +
            "  +++++          @@@       @@@  ",
         
     | 
| 
      
 45 
     | 
    
         
            +
            "    +   $%       @@@       @@@  ",
         
     | 
| 
      
 46 
     | 
    
         
            +
            "    +  &**=      @@@@     @@@@  ",
         
     | 
| 
      
 47 
     | 
    
         
            +
            "    + &****$      @@@@@@@@@@@   ",
         
     | 
| 
      
 48 
     | 
    
         
            +
            "    -&******;      @@@@@@@@@    ",
         
     | 
| 
      
 49 
     | 
    
         
            +
            "    >***  ***,      '@@@@@@     ",
         
     | 
| 
      
 50 
     | 
    
         
            +
            "   &***    ***,        )        ",
         
     | 
| 
      
 51 
     | 
    
         
            +
            "  &***      ***!       +        ",
         
     | 
| 
      
 52 
     | 
    
         
            +
            " ~***        **;       +        ",
         
     | 
| 
      
 53 
     | 
    
         
            +
            "  {***      **;        +        ",
         
     | 
| 
      
 54 
     | 
    
         
            +
            "   %***    **$]        +        ",
         
     | 
| 
      
 55 
     | 
    
         
            +
            "    %***  **$^+        +        ",
         
     | 
| 
      
 56 
     | 
    
         
            +
            "     %*****/(+++++++++++        ",
         
     | 
| 
      
 57 
     | 
    
         
            +
            "      _***$  ++                 ",
         
     | 
| 
      
 58 
     | 
    
         
            +
            "       :*$    +                 ",
         
     | 
| 
      
 59 
     | 
    
         
            +
            "        *                       ",
         
     | 
| 
      
 60 
     | 
    
         
            +
            "                                "};
         
     | 
    
        data/assets/screenshot.png
    CHANGED
    
    | 
         Binary file 
     | 
    
        data/assets/social.png
    ADDED
    
    | 
         Binary file 
     | 
    
        data/bin/wx-shapes
    CHANGED
    
    
    
        data/lib/wx/shapes/arrow_base.rb
    CHANGED
    
    | 
         @@ -8,14 +8,7 @@ module Wx::SF 
     | 
|
| 
       8 
8 
     | 
    
         | 
| 
       9 
9 
     | 
    
         
             
              class ArrowBase
         
     | 
| 
       10 
10 
     | 
    
         | 
| 
       11 
     | 
    
         
            -
                include  
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
                module DEFAULT
         
     | 
| 
       14 
     | 
    
         
            -
                  FILL = Wx::Brush.new(Wx::WHITE) if Wx::App.is_main_loop_running
         
     | 
| 
       15 
     | 
    
         
            -
                  Wx.add_delayed_constant(self, :FILL) { Wx::Brush.new(Wx::WHITE) }
         
     | 
| 
       16 
     | 
    
         
            -
                  BORDER = Wx::Pen.new(Wx::BLACK) if Wx::App.is_main_loop_running
         
     | 
| 
       17 
     | 
    
         
            -
                  Wx.add_delayed_constant(self, :BORDER) { Wx::Pen.new(Wx::BLACK) }
         
     | 
| 
       18 
     | 
    
         
            -
                end
         
     | 
| 
      
 11 
     | 
    
         
            +
                include FIRM::Serializable
         
     | 
| 
       19 
12 
     | 
    
         | 
| 
       20 
13 
     | 
    
         
             
                # Constructor
         
     | 
| 
       21 
14 
     | 
    
         
             
                # @param [Wx::SF::Shape] parent parent shape
         
     | 
| 
         @@ -31,7 +24,7 @@ module Wx::SF 
     | 
|
| 
       31 
24 
     | 
    
         
             
                alias :parent_shape= :set_parent_shape
         
     | 
| 
       32 
25 
     | 
    
         | 
| 
       33 
26 
     | 
    
         
             
            	  # Get pointer to a parent shape.
         
     | 
| 
       34 
     | 
    
         
            -
            	  # @return [Wx::SF::Shape] parent shape if exists, otherwise nil
         
     | 
| 
      
 27 
     | 
    
         
            +
            	  # @return [Wx::SF::Shape, nil] parent shape if exists, otherwise nil
         
     | 
| 
       35 
28 
     | 
    
         
             
                def get_parent_shape
         
     | 
| 
       36 
29 
     | 
    
         
             
                  @parent_shape
         
     | 
| 
       37 
30 
     | 
    
         
             
                end
         
     | 
| 
         @@ -40,9 +33,9 @@ module Wx::SF 
     | 
|
| 
       40 
33 
     | 
    
         
             
            	  # Draw arrow shape at the end of a virtual line.
         
     | 
| 
       41 
34 
     | 
    
         
             
            	  # @param [Wx::RealPoint] from Start of the virtual line
         
     | 
| 
       42 
35 
     | 
    
         
             
            	  # @param [Wx::RealPoint] to End of the virtual line
         
     | 
| 
       43 
     | 
    
         
            -
             
     | 
| 
      
 36 
     | 
    
         
            +
                # @return [Wx::Point] translated connection point for arrow
         
     | 
| 
       44 
37 
     | 
    
         
             
                def draw(from, to, dc)
         
     | 
| 
       45 
     | 
    
         
            -
                   
     | 
| 
      
 38 
     | 
    
         
            +
                  raise NotImplementedError, 'Overload missing'
         
     | 
| 
       46 
39 
     | 
    
         
             
                end
         
     | 
| 
       47 
40 
     | 
    
         | 
| 
       48 
41 
     | 
    
         
             
                protected
         
     | 
| 
         @@ -1,37 +1,48 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # Wx::SF::CircleArrow - circle arrow class
         
     | 
| 
       2 
2 
     | 
    
         
             
            # Copyright (c) M.J.N. Corino, The Netherlands
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
     | 
    
         
            -
            require 'wx/shapes/arrows/ 
     | 
| 
      
 4 
     | 
    
         
            +
            require 'wx/shapes/arrows/filled_arrow'
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
6 
     | 
    
         
             
            module Wx::SF
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
     | 
    
         
            -
              class  
     | 
| 
      
 8 
     | 
    
         
            +
              # Class extends the Wx::FilledArrow class and encapsulates
         
     | 
| 
      
 9 
     | 
    
         
            +
              # circle arrow shapes.
         
     | 
| 
      
 10 
     | 
    
         
            +
              class CircleArrow < FilledArrow
         
     | 
| 
       9 
11 
     | 
    
         | 
| 
       10 
12 
     | 
    
         
             
                # Default circle radius.
         
     | 
| 
       11 
     | 
    
         
            -
                RADIUS =  
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
                property :radius
         
     | 
| 
      
 13 
     | 
    
         
            +
                RADIUS = 6
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
15 
     | 
    
         
             
                # Constructor
         
     | 
| 
       16 
16 
     | 
    
         
             
                # @param [Wx::SF::Shape] parent parent shape
         
     | 
| 
       17 
17 
     | 
    
         
             
                def initialize(parent=nil)
         
     | 
| 
       18 
18 
     | 
    
         
             
                  super
         
     | 
| 
       19 
     | 
    
         
            -
                   
     | 
| 
      
 19 
     | 
    
         
            +
                  scale
         
     | 
| 
      
 20 
     | 
    
         
            +
                end
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
                # Get the circle radius
         
     | 
| 
      
 23 
     | 
    
         
            +
                def get_radius
         
     | 
| 
      
 24 
     | 
    
         
            +
                  (RADIUS * @ratio).to_i
         
     | 
| 
       20 
25 
     | 
    
         
             
                end
         
     | 
| 
      
 26 
     | 
    
         
            +
                alias :radius :get_radius
         
     | 
| 
       21 
27 
     | 
    
         | 
| 
       22 
     | 
    
         
            -
                 
     | 
| 
       23 
     | 
    
         
            -
             
     | 
| 
      
 28 
     | 
    
         
            +
                def scale
         
     | 
| 
      
 29 
     | 
    
         
            +
                  @ratio = 1 + (pen_width / 2) * 0.5
         
     | 
| 
      
 30 
     | 
    
         
            +
                end
         
     | 
| 
      
 31 
     | 
    
         
            +
                protected :scale
         
     | 
| 
       24 
32 
     | 
    
         | 
| 
       25 
33 
     | 
    
         
             
                # Draw arrow shape at the end of a virtual line.
         
     | 
| 
       26 
34 
     | 
    
         
             
                # @param [Wx::RealPoint] from Start of the virtual line
         
     | 
| 
       27 
35 
     | 
    
         
             
                # @param [Wx::RealPoint] to End of the virtual line
         
     | 
| 
       28 
36 
     | 
    
         
             
                # @param [Wx::DC] dc Device context for drawing
         
     | 
| 
       29 
37 
     | 
    
         
             
                def draw(from, to, dc)
         
     | 
| 
       30 
     | 
    
         
            -
                   
     | 
| 
       31 
     | 
    
         
            -
             
     | 
| 
       32 
     | 
    
         
            -
             
     | 
| 
      
 38 
     | 
    
         
            +
                  r = radius
         
     | 
| 
      
 39 
     | 
    
         
            +
                  centre, cp = translate_arrow([Wx::RealPoint.new(r, 0), Wx::RealPoint.new(2*r, 0)], from, to)
         
     | 
| 
      
 40 
     | 
    
         
            +
                  dc.with_pen(pen) do |dc|
         
     | 
| 
      
 41 
     | 
    
         
            +
                    dc.with_brush(fill) do |dc|
         
     | 
| 
      
 42 
     | 
    
         
            +
                      dc.draw_circle(centre, r)
         
     | 
| 
       33 
43 
     | 
    
         
             
                    end
         
     | 
| 
       34 
44 
     | 
    
         
             
                  end
         
     | 
| 
      
 45 
     | 
    
         
            +
                  cp
         
     | 
| 
       35 
46 
     | 
    
         
             
                end
         
     | 
| 
       36 
47 
     | 
    
         | 
| 
       37 
48 
     | 
    
         
             
              end
         
     | 
| 
         @@ -0,0 +1,48 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # Wx::SF::CircleProngArrow - circle with prong arrow class
         
     | 
| 
      
 2 
     | 
    
         
            +
            # Copyright (c) M.J.N. Corino, The Netherlands
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            require 'wx/shapes/arrows/circle_arrow'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            module Wx::SF
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
              # Class extends the Wx::CircleArrow class and encapsulates
         
     | 
| 
      
 9 
     | 
    
         
            +
              # arrow shape consisting of single two lines bisecting before the end of the
         
     | 
| 
      
 10 
     | 
    
         
            +
              # parent line shape with a preceding circle.
         
     | 
| 
      
 11 
     | 
    
         
            +
              class CircleProngArrow < CircleArrow
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
                class << self
         
     | 
| 
      
 14 
     | 
    
         
            +
                  def arrow(ratio)
         
     | 
| 
      
 15 
     | 
    
         
            +
                    x = ratio*11; y = ratio*5
         
     | 
| 
      
 16 
     | 
    
         
            +
                    [Wx::RealPoint.new(x,0), Wx::RealPoint.new(0, y), Wx::RealPoint.new(0,-y), Wx::RealPoint.new(0, 0)]
         
     | 
| 
      
 17 
     | 
    
         
            +
                  end
         
     | 
| 
      
 18 
     | 
    
         
            +
                end
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                def vertices
         
     | 
| 
      
 21 
     | 
    
         
            +
                  @vertices ||= CircleProngArrow.arrow(@ratio)
         
     | 
| 
      
 22 
     | 
    
         
            +
                end
         
     | 
| 
      
 23 
     | 
    
         
            +
                private :vertices
         
     | 
| 
      
 24 
     | 
    
         
            +
             
     | 
| 
      
 25 
     | 
    
         
            +
                def scale
         
     | 
| 
      
 26 
     | 
    
         
            +
                  @vertices = nil
         
     | 
| 
      
 27 
     | 
    
         
            +
                  super
         
     | 
| 
      
 28 
     | 
    
         
            +
                end
         
     | 
| 
      
 29 
     | 
    
         
            +
                protected :scale
         
     | 
| 
      
 30 
     | 
    
         
            +
             
     | 
| 
      
 31 
     | 
    
         
            +
                # Draw arrow shape at the end of a virtual line.
         
     | 
| 
      
 32 
     | 
    
         
            +
                # @param [Wx::RealPoint] from Start of the virtual line
         
     | 
| 
      
 33 
     | 
    
         
            +
                # @param [Wx::RealPoint] to End of the virtual line
         
     | 
| 
      
 34 
     | 
    
         
            +
                # @param [Wx::DC] dc Device context for drawing
         
     | 
| 
      
 35 
     | 
    
         
            +
                # @return [Wx::Point] translated connection point for arrow
         
     | 
| 
      
 36 
     | 
    
         
            +
                def draw(from, to, dc)
         
     | 
| 
      
 37 
     | 
    
         
            +
                  cp, wing1, wing2, tip = translate_arrow(vertices, from, to)
         
     | 
| 
      
 38 
     | 
    
         
            +
                  dc.with_pen(pen) do |dc|
         
     | 
| 
      
 39 
     | 
    
         
            +
                    dc.draw_line(cp, wing1)
         
     | 
| 
      
 40 
     | 
    
         
            +
                    dc.draw_line(cp, wing2)
         
     | 
| 
      
 41 
     | 
    
         
            +
                    dc.draw_line(cp, tip)
         
     | 
| 
      
 42 
     | 
    
         
            +
                  end
         
     | 
| 
      
 43 
     | 
    
         
            +
                  super(from, cp, dc)
         
     | 
| 
      
 44 
     | 
    
         
            +
                end
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
              end
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
            end
         
     |