ming-ruby 1.0-mswin32
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.
- data/ChangeLog +459 -0
 - data/INSTALL +6 -0
 - data/LGPL +515 -0
 - data/README +26 -0
 - data/TODO +5 -0
 - data/lib/SWFMing_T_Scrollbar.rb +290 -0
 - data/lib/ming/ming.rb +68 -0
 - data/lib/ming/mingc.so +0 -0
 - data/lib/pictures/arrow_down_active.dbl +0 -0
 - data/lib/pictures/arrow_down_inactive.dbl +0 -0
 - data/lib/pictures/arrow_up_active.dbl +0 -0
 - data/lib/pictures/arrow_up_inactive.dbl +0 -0
 - data/lib/pictures/backgroundH.dbl +0 -0
 - data/lib/pictures/backgroundH_gap.dbl +0 -0
 - data/lib/pictures/backgroundH_gap2.dbl +0 -0
 - data/lib/pictures/backgroundV.dbl +0 -0
 - data/lib/pictures/backgroundV_gap.dbl +0 -0
 - data/lib/pictures/backgroundV_gap2.dbl +0 -0
 - data/lib/pictures/scrollbar_active.dbl +0 -0
 - data/lib/pictures/scrollbar_inactive.dbl +0 -0
 - metadata +66 -0
 
    
        data/README
    ADDED
    
    | 
         @@ -0,0 +1,26 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            Ming/Ruby -- ruby library for generating Adobe Flash (SWF)
         
     | 
| 
      
 2 
     | 
    
         
            +
                         based on Ming
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            Contributors:
         
     | 
| 
      
 6 
     | 
    
         
            +
              * IKEGAMI Daisuke <ikegami at madscientist dot jp>
         
     | 
| 
      
 7 
     | 
    
         
            +
              * Carson Macdonald
         
     | 
| 
      
 8 
     | 
    
         
            +
              * Richard Fairhurst
         
     | 
| 
      
 9 
     | 
    
         
            +
              * Kazuki Sakamoto
         
     | 
| 
      
 10 
     | 
    
         
            +
              * Genki Sugawara
         
     | 
| 
      
 11 
     | 
    
         
            +
              * Pawel Karwowski
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
             
         
     | 
| 
      
 14 
     | 
    
         
            +
            Short description:
         
     | 
| 
      
 15 
     | 
    
         
            +
            'Ming/Ruby' is a ruby extension library for generating Adobe
         
     | 
| 
      
 16 
     | 
    
         
            +
            Flash (SWF). It is a wrapper for Ming [0] which is a C library for
         
     | 
| 
      
 17 
     | 
    
         
            +
            the same purpose.
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
            License: 
         
     | 
| 
      
 20 
     | 
    
         
            +
            License of Ming/Ruby is LGPL because one of Ming is LGPL.
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
            Requires:
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
              * One Click Ruby installer with rubygems: http://rubyforge.org/projects/rubyinstaller/
         
     | 
| 
      
 25 
     | 
    
         
            +
              * Windows XP or Windows Vista
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
    
        data/TODO
    ADDED
    
    
| 
         @@ -0,0 +1,290 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #!/usr/bin/ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            # SWFMing_T_Scrollbar mixin module for Ming 0.4.
         
     | 
| 
      
 4 
     | 
    
         
            +
            # Version 0.39 for Ruby.
         
     | 
| 
      
 5 
     | 
    
         
            +
            # based upon Pipey's code and SWFTools scrollbar code
         
     | 
| 
      
 6 
     | 
    
         
            +
            # Author Pawel Karwowski pkarwow at fastmail dot fm
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
            module SWFMing_T_Scrollbar
         
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
            @PATH = "C:/ruby/lib/ruby/gems/1.8/gems/ming-ruby-1.0-mswin32/lib/pictures"
         
     | 
| 
      
 11 
     | 
    
         
            +
            if File.directory?(@PATH)
         
     | 
| 
      
 12 
     | 
    
         
            +
            else
         
     | 
| 
      
 13 
     | 
    
         
            +
            @PATH = "C:/ruby/lib/ruby/gems/1.8/gems/ming-ruby-1.0-x86-mswin32/lib/pictures"
         
     | 
| 
      
 14 
     | 
    
         
            +
            end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
            def self.new(instance, depth, a, b, c, d, border, embedFonts, textadd)
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
            @instance = instance
         
     | 
| 
      
 20 
     | 
    
         
            +
            @depth = depth
         
     | 
| 
      
 21 
     | 
    
         
            +
            @a = a
         
     | 
| 
      
 22 
     | 
    
         
            +
            @b = b
         
     | 
| 
      
 23 
     | 
    
         
            +
            @c = c
         
     | 
| 
      
 24 
     | 
    
         
            +
            @d = d
         
     | 
| 
      
 25 
     | 
    
         
            +
            @border = border
         
     | 
| 
      
 26 
     | 
    
         
            +
            @embedFonts = embedFonts
         
     | 
| 
      
 27 
     | 
    
         
            +
            @textadd = textadd
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
            @arrow_up_inactive = SWFShape.new
         
     | 
| 
      
 30 
     | 
    
         
            +
            @dbl1 = SWFBitmap.new("#{@PATH}/arrow_up_inactive.dbl")
         
     | 
| 
      
 31 
     | 
    
         
            +
            @arrow_up_inactive.set_right_fill(@arrow_up_inactive.add_fill(@dbl1, SWFFill::CLIPPED_BITMAP))
         
     | 
| 
      
 32 
     | 
    
         
            +
               @arrow_up_inactive.draw_line(@dbl1.get_width, 0)
         
     | 
| 
      
 33 
     | 
    
         
            +
               @arrow_up_inactive.draw_line(0, @dbl1.get_height)
         
     | 
| 
      
 34 
     | 
    
         
            +
               @arrow_up_inactive.draw_line(-@dbl1.get_width, 0)
         
     | 
| 
      
 35 
     | 
    
         
            +
               @arrow_up_inactive.draw_line(0, -@dbl1.get_height)
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
            @arrow_up_active = SWFShape.new
         
     | 
| 
      
 38 
     | 
    
         
            +
            @dbl2 = SWFBitmap.new("#{@PATH}/arrow_up_active.dbl");
         
     | 
| 
      
 39 
     | 
    
         
            +
            @arrow_up_active.set_right_fill(@arrow_up_active.add_fill(@dbl2, SWFFill::CLIPPED_BITMAP))
         
     | 
| 
      
 40 
     | 
    
         
            +
               @arrow_up_active.draw_line(@dbl2.get_width, 0)
         
     | 
| 
      
 41 
     | 
    
         
            +
               @arrow_up_active.draw_line(0, @dbl2.get_height)
         
     | 
| 
      
 42 
     | 
    
         
            +
               @arrow_up_active.draw_line(-@dbl2.get_width, 0)
         
     | 
| 
      
 43 
     | 
    
         
            +
               @arrow_up_active.draw_line(0, -@dbl2.get_height)
         
     | 
| 
      
 44 
     | 
    
         
            +
             
     | 
| 
      
 45 
     | 
    
         
            +
            @arrow_down_inactive = SWFShape.new
         
     | 
| 
      
 46 
     | 
    
         
            +
            @dbl3 = SWFBitmap.new("#{@PATH}/arrow_down_inactive.dbl");
         
     | 
| 
      
 47 
     | 
    
         
            +
            @arrow_down_inactive.set_right_fill(@arrow_down_inactive.add_fill(@dbl3, SWFFill::CLIPPED_BITMAP))
         
     | 
| 
      
 48 
     | 
    
         
            +
               @arrow_down_inactive.draw_line(@dbl3.get_width, 0);
         
     | 
| 
      
 49 
     | 
    
         
            +
               @arrow_down_inactive.draw_line(0, @dbl3.get_height);
         
     | 
| 
      
 50 
     | 
    
         
            +
               @arrow_down_inactive.draw_line(-@dbl3.get_width, 0);
         
     | 
| 
      
 51 
     | 
    
         
            +
               @arrow_down_inactive.draw_line(0, -@dbl3.get_height);
         
     | 
| 
      
 52 
     | 
    
         
            +
             
     | 
| 
      
 53 
     | 
    
         
            +
            @arrow_down_active = SWFShape.new
         
     | 
| 
      
 54 
     | 
    
         
            +
            @dbl4 = SWFBitmap.new("#{@PATH}/arrow_down_active.dbl")
         
     | 
| 
      
 55 
     | 
    
         
            +
            @arrow_down_active.set_right_fill(@arrow_down_active.add_fill(@dbl4, SWFFill::CLIPPED_BITMAP))
         
     | 
| 
      
 56 
     | 
    
         
            +
               @arrow_down_active.draw_line(@dbl4.get_width, 0)
         
     | 
| 
      
 57 
     | 
    
         
            +
               @arrow_down_active.draw_line(0, @dbl4.get_height)
         
     | 
| 
      
 58 
     | 
    
         
            +
               @arrow_down_active.draw_line(-@dbl4.get_width, 0)
         
     | 
| 
      
 59 
     | 
    
         
            +
               @arrow_down_active.draw_line(0, -@dbl4.get_height)
         
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
      
 61 
     | 
    
         
            +
            @scrollbar_inactive = SWFShape.new
         
     | 
| 
      
 62 
     | 
    
         
            +
            @dbl5 = SWFBitmap.new("#{@PATH}/scrollbar_inactive.dbl")
         
     | 
| 
      
 63 
     | 
    
         
            +
            @scrollbar_inactive.set_right_fill(@scrollbar_inactive.add_fill(@dbl5, SWFFill::CLIPPED_BITMAP))
         
     | 
| 
      
 64 
     | 
    
         
            +
               @scrollbar_inactive.draw_line(@dbl5.get_width, 0)
         
     | 
| 
      
 65 
     | 
    
         
            +
               @scrollbar_inactive.draw_line(0, @dbl5.get_height)
         
     | 
| 
      
 66 
     | 
    
         
            +
               @scrollbar_inactive.draw_line(-@dbl5.get_width, 0)
         
     | 
| 
      
 67 
     | 
    
         
            +
               @scrollbar_inactive.draw_line(0, -@dbl5.get_height)
         
     | 
| 
      
 68 
     | 
    
         
            +
             
     | 
| 
      
 69 
     | 
    
         
            +
            @scrollbar_active = SWFShape.new
         
     | 
| 
      
 70 
     | 
    
         
            +
            @dbl6 = SWFBitmap.new("#{@PATH}/scrollbar_active.dbl")
         
     | 
| 
      
 71 
     | 
    
         
            +
            @scrollbar_active.set_right_fill(@scrollbar_active.add_fill(@dbl6, SWFFill::CLIPPED_BITMAP))
         
     | 
| 
      
 72 
     | 
    
         
            +
               @scrollbar_active.draw_line(@dbl6.get_width, 0)
         
     | 
| 
      
 73 
     | 
    
         
            +
               @scrollbar_active.draw_line(0, @dbl6.get_height)
         
     | 
| 
      
 74 
     | 
    
         
            +
               @scrollbar_active.draw_line(-@dbl6.get_width, 0)
         
     | 
| 
      
 75 
     | 
    
         
            +
               @scrollbar_active.draw_line(0, -@dbl6.get_height)
         
     | 
| 
      
 76 
     | 
    
         
            +
             
     | 
| 
      
 77 
     | 
    
         
            +
            @backgroundV = SWFShape.new
         
     | 
| 
      
 78 
     | 
    
         
            +
            @dbl8 = SWFBitmap.new("#{@PATH}/backgroundV.dbl")
         
     | 
| 
      
 79 
     | 
    
         
            +
            @backgroundV.set_right_fill(@backgroundV.add_fill(@dbl8, SWFFill::CLIPPED_BITMAP))
         
     | 
| 
      
 80 
     | 
    
         
            +
               @backgroundV.draw_line(@dbl8.get_width, 0)
         
     | 
| 
      
 81 
     | 
    
         
            +
               @backgroundV.draw_line(0, @dbl8.get_height)
         
     | 
| 
      
 82 
     | 
    
         
            +
               @backgroundV.draw_line(-@dbl8.get_width, 0)
         
     | 
| 
      
 83 
     | 
    
         
            +
               @backgroundV.draw_line(0, -@dbl8.get_height)
         
     | 
| 
      
 84 
     | 
    
         
            +
             
     | 
| 
      
 85 
     | 
    
         
            +
            @ib = $movie.add(@backgroundV)
         
     | 
| 
      
 86 
     | 
    
         
            +
              @ib.set_name("BackgroundV")
         
     | 
| 
      
 87 
     | 
    
         
            +
              @ib.scale_to(1,0.0625*@d)
         
     | 
| 
      
 88 
     | 
    
         
            +
              @ib.move_to(@a+@c+2,@b)
         
     | 
| 
      
 89 
     | 
    
         
            +
             
     | 
| 
      
 90 
     | 
    
         
            +
            @backgroundH_gap = SWFShape.new
         
     | 
| 
      
 91 
     | 
    
         
            +
            @dbl9 = SWFBitmap.new("#{@PATH}/backgroundH_gap.dbl")
         
     | 
| 
      
 92 
     | 
    
         
            +
            @backgroundH_gap.set_right_fill(@backgroundH_gap.add_fill(@dbl9, SWFFill::CLIPPED_BITMAP))
         
     | 
| 
      
 93 
     | 
    
         
            +
               @backgroundH_gap.draw_line(@dbl9.get_width, 0)
         
     | 
| 
      
 94 
     | 
    
         
            +
               @backgroundH_gap.draw_line(0, @dbl9.get_height)
         
     | 
| 
      
 95 
     | 
    
         
            +
               @backgroundH_gap.draw_line(-@dbl9.get_width, 0)
         
     | 
| 
      
 96 
     | 
    
         
            +
               @backgroundH_gap.draw_line(0, -@dbl9.get_height)
         
     | 
| 
      
 97 
     | 
    
         
            +
             
     | 
| 
      
 98 
     | 
    
         
            +
            @ic = $movie.add(@backgroundH_gap)
         
     | 
| 
      
 99 
     | 
    
         
            +
              @ic.set_name("BackgroundH_gap")
         
     | 
| 
      
 100 
     | 
    
         
            +
              @ic.move_to(@a+@c+2,@b)
         
     | 
| 
      
 101 
     | 
    
         
            +
             
     | 
| 
      
 102 
     | 
    
         
            +
            @backgroundV_gap = SWFShape.new()
         
     | 
| 
      
 103 
     | 
    
         
            +
            @dbl10 = SWFBitmap.new("#{@PATH}/backgroundV_gap.dbl")
         
     | 
| 
      
 104 
     | 
    
         
            +
            @backgroundV_gap.set_right_fill(@backgroundV_gap.add_fill(@dbl10, SWFFill::CLIPPED_BITMAP))
         
     | 
| 
      
 105 
     | 
    
         
            +
               @backgroundV_gap.draw_line(@dbl10.get_width, 0)
         
     | 
| 
      
 106 
     | 
    
         
            +
               @backgroundV_gap.draw_line(0, @dbl10.get_height)
         
     | 
| 
      
 107 
     | 
    
         
            +
               @backgroundV_gap.draw_line(-@dbl10.get_width, 0)
         
     | 
| 
      
 108 
     | 
    
         
            +
               @backgroundV_gap.draw_line(0, -@dbl10.get_height)
         
     | 
| 
      
 109 
     | 
    
         
            +
             
     | 
| 
      
 110 
     | 
    
         
            +
            @id = $movie.add(@backgroundV_gap)
         
     | 
| 
      
 111 
     | 
    
         
            +
              @id.set_name("BackgroundV_gap")
         
     | 
| 
      
 112 
     | 
    
         
            +
              @id.move_to(@a+@c+2,@b)
         
     | 
| 
      
 113 
     | 
    
         
            +
             
     | 
| 
      
 114 
     | 
    
         
            +
            @backgroundH_gap2 = SWFShape.new
         
     | 
| 
      
 115 
     | 
    
         
            +
            @dbl11 = SWFBitmap.new("#{@PATH}/backgroundH_gap2.dbl")
         
     | 
| 
      
 116 
     | 
    
         
            +
            @backgroundH_gap2.set_right_fill(@backgroundH_gap2.add_fill(@dbl11, SWFFill::CLIPPED_BITMAP))
         
     | 
| 
      
 117 
     | 
    
         
            +
               @backgroundH_gap2.draw_line(@dbl10.get_width, 0)
         
     | 
| 
      
 118 
     | 
    
         
            +
               @backgroundH_gap2.draw_line(0, @dbl10.get_height)
         
     | 
| 
      
 119 
     | 
    
         
            +
               @backgroundH_gap2.draw_line(-@dbl10.get_width, 0)
         
     | 
| 
      
 120 
     | 
    
         
            +
               @backgroundH_gap2.draw_line(0, -@dbl10.get_height)
         
     | 
| 
      
 121 
     | 
    
         
            +
             
     | 
| 
      
 122 
     | 
    
         
            +
            @ie = $movie.add(@backgroundH_gap2)
         
     | 
| 
      
 123 
     | 
    
         
            +
              @ie.set_name("BackgroundH_gap2")
         
     | 
| 
      
 124 
     | 
    
         
            +
              @ie.move_to(@a+@c+2,@b)
         
     | 
| 
      
 125 
     | 
    
         
            +
             
     | 
| 
      
 126 
     | 
    
         
            +
            @backgroundV_gap2 = SWFShape.new
         
     | 
| 
      
 127 
     | 
    
         
            +
            @dbl12 = SWFBitmap.new("#{@PATH}/backgroundV_gap2.dbl")
         
     | 
| 
      
 128 
     | 
    
         
            +
            @backgroundV_gap2.set_right_fill(@backgroundV_gap2.add_fill(@dbl12, SWFFill::CLIPPED_BITMAP))
         
     | 
| 
      
 129 
     | 
    
         
            +
               @backgroundV_gap2.draw_line(@dbl12.get_width, 0)
         
     | 
| 
      
 130 
     | 
    
         
            +
               @backgroundV_gap2.draw_line(0, @dbl12.get_height)
         
     | 
| 
      
 131 
     | 
    
         
            +
               @backgroundV_gap2.draw_line(-@dbl12.get_width, 0)
         
     | 
| 
      
 132 
     | 
    
         
            +
               @backgroundV_gap2.draw_line(0, -@dbl12.get_height)
         
     | 
| 
      
 133 
     | 
    
         
            +
             
     | 
| 
      
 134 
     | 
    
         
            +
            @ikf = $movie.add(@backgroundV_gap2)
         
     | 
| 
      
 135 
     | 
    
         
            +
              @ikf.set_name("BackgroundV_gap2")
         
     | 
| 
      
 136 
     | 
    
         
            +
              @ikf.move_to(@a+@c+2,@b)
         
     | 
| 
      
 137 
     | 
    
         
            +
             
     | 
| 
      
 138 
     | 
    
         
            +
            @dragbutton = SWFMovieClip.new
         
     | 
| 
      
 139 
     | 
    
         
            +
            @but = SWFButton.new
         
     | 
| 
      
 140 
     | 
    
         
            +
              @but.add_character(@scrollbar_inactive, SWFButton::HIT | SWFButton::UP | SWFButton::OVER)
         
     | 
| 
      
 141 
     | 
    
         
            +
              @but.add_character(@scrollbar_active, SWFButton::HIT | SWFButton::DOWN)
         
     | 
| 
      
 142 
     | 
    
         
            +
              @but.add_action(SWFAction.new("
         
     | 
| 
      
 143 
     | 
    
         
            +
              		DragButton#{@instance}._x = #{@a}+#{@c}+3;
         
     | 
| 
      
 144 
     | 
    
         
            +
            		Dragging = true;
         
     | 
| 
      
 145 
     | 
    
         
            +
            		this.startDrag(DragButton#{@instance}, true, _parent.UpButton#{@instance}._y + 16, #{@a}+#{@c}+3, _parent.DownButton#{@instance}._y - 17 , #{@a}+#{@c}+3 );
         
     | 
| 
      
 146 
     | 
    
         
            +
            		Dragging = true;
         
     | 
| 
      
 147 
     | 
    
         
            +
            		idInt_Drag#{@instance} = setInterval(_parent.Revalue#{@instance}, 15);"), SWFButton::MOUSE_DOWN)
         
     | 
| 
      
 148 
     | 
    
         
            +
              @but.add_action(SWFAction.new("  
         
     | 
| 
      
 149 
     | 
    
         
            +
              		Dragging = false;
         
     | 
| 
      
 150 
     | 
    
         
            +
            		clearInterval(idInt_Drag#{@instance});
         
     | 
| 
      
 151 
     | 
    
         
            +
            		this.stopDrag();	
         
     | 
| 
      
 152 
     | 
    
         
            +
            		_parent.Revalue#{@instance}();"), SWFButton::MOUSE_UP | SWFButton::MOUSE_UP_OUTSIDE  | SWFButton::DRAG_OUT | SWFButton::DRAG_OVER)
         
     | 
| 
      
 153 
     | 
    
         
            +
              @dragbutton.add(@but)
         
     | 
| 
      
 154 
     | 
    
         
            +
              @dragbutton.next_frame
         
     | 
| 
      
 155 
     | 
    
         
            +
             
     | 
| 
      
 156 
     | 
    
         
            +
            @ir = $movie.add(@dragbutton)
         
     | 
| 
      
 157 
     | 
    
         
            +
              @ir.set_name("DragButton#{@instance}")
         
     | 
| 
      
 158 
     | 
    
         
            +
              @ir.move_to(@a+@c+3,@b+16)
         
     | 
| 
      
 159 
     | 
    
         
            +
             
     | 
| 
      
 160 
     | 
    
         
            +
            @upbutton = SWFButton.new
         
     | 
| 
      
 161 
     | 
    
         
            +
            @upbutton.add_character(@arrow_up_inactive, SWFButton::HIT | SWFButton::UP | SWFButton::OVER)
         
     | 
| 
      
 162 
     | 
    
         
            +
            @upbutton.add_character(@arrow_up_active, SWFButton::HIT | SWFButton::DOWN)
         
     | 
| 
      
 163 
     | 
    
         
            +
            @upbutton.add_action(SWFAction.new("
         
     | 
| 
      
 164 
     | 
    
         
            +
            	Up_pressed#{@instance}();
         
     | 
| 
      
 165 
     | 
    
         
            +
            	function Up_pressed#{@instance}() {
         
     | 
| 
      
 166 
     | 
    
         
            +
            	if (Value#{@instance} > MinValue) {
         
     | 
| 
      
 167 
     | 
    
         
            +
            	Value#{@instance} = Value#{@instance} - Increment;
         
     | 
| 
      
 168 
     | 
    
         
            +
            	}
         
     | 
| 
      
 169 
     | 
    
         
            +
            	if (Value#{@instance} < MinValue) {
         
     | 
| 
      
 170 
     | 
    
         
            +
            	Value#{@instance} = MinValue;
         
     | 
| 
      
 171 
     | 
    
         
            +
            	}
         
     | 
| 
      
 172 
     | 
    
         
            +
            	Reposition#{@instance}();
         
     | 
| 
      
 173 
     | 
    
         
            +
            	}
         
     | 
| 
      
 174 
     | 
    
         
            +
            	idInt_Up_pressed#{@instance} = setInterval(Up_pressed#{@instance}, 100);"), SWFButton::MOUSE_DOWN)
         
     | 
| 
      
 175 
     | 
    
         
            +
            @upbutton.add_action(SWFAction.new("clearInterval(idInt_Up_pressed#{@instance});"), SWFButton::MOUSE_UP | SWFButton::MOUSE_UP_OUTSIDE)
         
     | 
| 
      
 176 
     | 
    
         
            +
             
     | 
| 
      
 177 
     | 
    
         
            +
            @is=$movie.add(@upbutton)
         
     | 
| 
      
 178 
     | 
    
         
            +
            @is.set_name("UpButton#{@instance}")
         
     | 
| 
      
 179 
     | 
    
         
            +
            @is.move_to(@a+@c+3,@b)
         
     | 
| 
      
 180 
     | 
    
         
            +
             
     | 
| 
      
 181 
     | 
    
         
            +
            @downbutton = SWFButton.new
         
     | 
| 
      
 182 
     | 
    
         
            +
            @downbutton.add_character(@arrow_down_inactive, SWFButton::HIT | SWFButton::UP | SWFButton::OVER)
         
     | 
| 
      
 183 
     | 
    
         
            +
            @downbutton.add_character(@arrow_down_active, SWFButton::HIT | SWFButton::DOWN)
         
     | 
| 
      
 184 
     | 
    
         
            +
            @downbutton.add_action(SWFAction.new("
         
     | 
| 
      
 185 
     | 
    
         
            +
            	Down_pressed#{@instance}();
         
     | 
| 
      
 186 
     | 
    
         
            +
            	function Down_pressed#{@instance}() {
         
     | 
| 
      
 187 
     | 
    
         
            +
            	if (Value#{@instance} < MaxValue#{@instance}) {
         
     | 
| 
      
 188 
     | 
    
         
            +
            	Value#{@instance} = Value#{@instance} + Increment;
         
     | 
| 
      
 189 
     | 
    
         
            +
            	}
         
     | 
| 
      
 190 
     | 
    
         
            +
            	if (Value#{@instance} > MaxValue#{@instance}) {
         
     | 
| 
      
 191 
     | 
    
         
            +
            	Value#{@instance} = MaxValue#{@instance};
         
     | 
| 
      
 192 
     | 
    
         
            +
            	}
         
     | 
| 
      
 193 
     | 
    
         
            +
            	Reposition#{@instance}();
         
     | 
| 
      
 194 
     | 
    
         
            +
            	}
         
     | 
| 
      
 195 
     | 
    
         
            +
            	idInt_Down_pressed#{@instance} = setInterval(Down_pressed#{@instance}, 100);"), SWFButton::MOUSE_DOWN)
         
     | 
| 
      
 196 
     | 
    
         
            +
            @downbutton.add_action(SWFAction.new("clearInterval(idInt_Down_pressed#{@instance});"), SWFButton::MOUSE_UP |SWFButton::DRAG_OUT | SWFButton::MOUSE_UP_OUTSIDE)
         
     | 
| 
      
 197 
     | 
    
         
            +
             
     | 
| 
      
 198 
     | 
    
         
            +
            @iw=$movie.add(@downbutton)
         
     | 
| 
      
 199 
     | 
    
         
            +
            @iw.set_name("DownButton#{@instance}")
         
     | 
| 
      
 200 
     | 
    
         
            +
            @iw.move_to(@a+@c+3,@b+@d-15)
         
     | 
| 
      
 201 
     | 
    
         
            +
             
     | 
| 
      
 202 
     | 
    
         
            +
            $movie.add(SWFAction.new("
         
     | 
| 
      
 203 
     | 
    
         
            +
             
     | 
| 
      
 204 
     | 
    
         
            +
             
     | 
| 
      
 205 
     | 
    
         
            +
            function updateOutput() {
         
     | 
| 
      
 206 
     | 
    
         
            +
            txf = TextField.StyleSheet;
         
     | 
| 
      
 207 
     | 
    
         
            +
              myStyleSheet = new txf();
         
     | 
| 
      
 208 
     | 
    
         
            +
              myStyleSheet.parseCSS(mycss);
         
     | 
| 
      
 209 
     | 
    
         
            +
              #{@instance}.styleSheet = myStyleSheet;
         
     | 
| 
      
 210 
     | 
    
         
            +
              #{@instance}.htmlText = str;
         
     | 
| 
      
 211 
     | 
    
         
            +
            }
         
     | 
| 
      
 212 
     | 
    
         
            +
             
     | 
| 
      
 213 
     | 
    
         
            +
             
     | 
| 
      
 214 
     | 
    
         
            +
            _root.createTextField('#{@instance}',#{@depth},#{@a},#{@b},#{@c},#{@d});
         
     | 
| 
      
 215 
     | 
    
         
            +
            with(#{@instance}){ #{@border}; html = true; #{@embedFonts}; scroll=1; multiline=true; wordWrap=true;}
         
     | 
| 
      
 216 
     | 
    
         
            +
            str = '';
         
     | 
| 
      
 217 
     | 
    
         
            +
            str+='#{@textadd}';
         
     | 
| 
      
 218 
     | 
    
         
            +
             
     | 
| 
      
 219 
     | 
    
         
            +
             
     | 
| 
      
 220 
     | 
    
         
            +
            #{@instance}.scrollWheelEnabled = true;
         
     | 
| 
      
 221 
     | 
    
         
            +
             
     | 
| 
      
 222 
     | 
    
         
            +
             
     | 
| 
      
 223 
     | 
    
         
            +
            myListener#{@instance} = new Object();
         
     | 
| 
      
 224 
     | 
    
         
            +
            myListener#{@instance}.onScroller = function() {
         
     | 
| 
      
 225 
     | 
    
         
            +
              MaxValue#{@instance} = #{@instance}.maxscroll;
         
     | 
| 
      
 226 
     | 
    
         
            +
              MouseOverText#{@instance}();
         
     | 
| 
      
 227 
     | 
    
         
            +
            }; 
         
     | 
| 
      
 228 
     | 
    
         
            +
             
     | 
| 
      
 229 
     | 
    
         
            +
            #{@instance}.addListener(myListener#{@instance});
         
     | 
| 
      
 230 
     | 
    
         
            +
             
     | 
| 
      
 231 
     | 
    
         
            +
             
     | 
| 
      
 232 
     | 
    
         
            +
            #{@instance}.htmlText = str;
         
     | 
| 
      
 233 
     | 
    
         
            +
            updateOutput();
         
     | 
| 
      
 234 
     | 
    
         
            +
             
     | 
| 
      
 235 
     | 
    
         
            +
             
     | 
| 
      
 236 
     | 
    
         
            +
            MinValue =1;
         
     | 
| 
      
 237 
     | 
    
         
            +
            Increment =1;
         
     | 
| 
      
 238 
     | 
    
         
            +
            TextField#{@instance} = new Object(_root.#{@instance});
         
     | 
| 
      
 239 
     | 
    
         
            +
            MaxValue#{@instance} = #{@instance}.maxscroll;
         
     | 
| 
      
 240 
     | 
    
         
            +
            Initialize#{@instance}();
         
     | 
| 
      
 241 
     | 
    
         
            +
             
     | 
| 
      
 242 
     | 
    
         
            +
            function UpdateBar#{@instance}() {
         
     | 
| 
      
 243 
     | 
    
         
            +
            	_parent.#{@instance} = TextField#{@instance}.scroll;
         
     | 
| 
      
 244 
     | 
    
         
            +
            	Value#{@instance} = TextField#{@instance}.scroll;
         
     | 
| 
      
 245 
     | 
    
         
            +
            	DragButton#{@instance}._y = ((Value#{@instance}-MinValue)/(MaxValue#{@instance}-MinValue)*(#{@d}-48));
         
     | 
| 
      
 246 
     | 
    
         
            +
            	Reposition#{@instance}();
         
     | 
| 
      
 247 
     | 
    
         
            +
            };
         
     | 
| 
      
 248 
     | 
    
         
            +
             
     | 
| 
      
 249 
     | 
    
         
            +
            function MouseOverText#{@instance}() {
         
     | 
| 
      
 250 
     | 
    
         
            +
            	if (TextField#{@instance}._ymouse > 0){
         
     | 
| 
      
 251 
     | 
    
         
            +
            		if (TextField#{@instance}._ymouse < TextField#{@instance}._height) {
         
     | 
| 
      
 252 
     | 
    
         
            +
            		if (TextField#{@instance}._xmouse < TextField#{@instance}._width) {
         
     | 
| 
      
 253 
     | 
    
         
            +
            		if (TextField#{@instance}._xmouse > 0) {
         
     | 
| 
      
 254 
     | 
    
         
            +
            		UpdateBar#{@instance}();
         
     | 
| 
      
 255 
     | 
    
         
            +
            		}
         
     | 
| 
      
 256 
     | 
    
         
            +
            		}
         
     | 
| 
      
 257 
     | 
    
         
            +
            		}
         
     | 
| 
      
 258 
     | 
    
         
            +
            	}
         
     | 
| 
      
 259 
     | 
    
         
            +
            };
         
     | 
| 
      
 260 
     | 
    
         
            +
              
         
     | 
| 
      
 261 
     | 
    
         
            +
            function Initialise#{@instance}() {
         
     | 
| 
      
 262 
     | 
    
         
            +
                    DownButton#{@instance}._x = #{@a}+#{@c}+2;
         
     | 
| 
      
 263 
     | 
    
         
            +
            	DownButton#{@instance}._y = #{@d} - 37;
         
     | 
| 
      
 264 
     | 
    
         
            +
            	BackgroundV._yscale = (((#{@d} / 16))*100) + 1;
         
     | 
| 
      
 265 
     | 
    
         
            +
            	BackgroundV_gap2._y = #{@d} - 1;
         
     | 
| 
      
 266 
     | 
    
         
            +
            	Value#{@instance} = MinValue;
         
     | 
| 
      
 267 
     | 
    
         
            +
            	Reposition#{@instance}();
         
     | 
| 
      
 268 
     | 
    
         
            +
            };
         
     | 
| 
      
 269 
     | 
    
         
            +
             
     | 
| 
      
 270 
     | 
    
         
            +
            function Reposition#{@instance}() {
         
     | 
| 
      
 271 
     | 
    
         
            +
             
     | 
| 
      
 272 
     | 
    
         
            +
            	DragButton#{@instance}._y = ((Value#{@instance}-MinValue)/(MaxValue#{@instance}-MinValue)*(#{@d}-48))+#{@b}+16;
         
     | 
| 
      
 273 
     | 
    
         
            +
            	TextField#{@instance}.scroll = Value#{@instance};
         
     | 
| 
      
 274 
     | 
    
         
            +
            };
         
     | 
| 
      
 275 
     | 
    
         
            +
             
     | 
| 
      
 276 
     | 
    
         
            +
            function Revalue#{@instance}() {
         
     | 
| 
      
 277 
     | 
    
         
            +
            	Value#{@instance} = (((DragButton#{@instance}._y-#{@b}-16)/(#{@d}-48))*(MaxValue#{@instance}-MinValue)) + MinValue;
         
     | 
| 
      
 278 
     | 
    
         
            +
            	DragButton#{@instance}._x = #{@a}+#{@c}+3;
         
     | 
| 
      
 279 
     | 
    
         
            +
            	Value#{@instance} = int(Value#{@instance}/Increment)*Increment;
         
     | 
| 
      
 280 
     | 
    
         
            +
            	TextField#{@instance}.scroll = Value#{@instance};
         
     | 
| 
      
 281 
     | 
    
         
            +
            	if (dragging == 'false') {
         
     | 
| 
      
 282 
     | 
    
         
            +
            	Reposition#{@instance}();
         
     | 
| 
      
 283 
     | 
    
         
            +
            	}
         
     | 
| 
      
 284 
     | 
    
         
            +
            };
         
     | 
| 
      
 285 
     | 
    
         
            +
            	idmouseText#{@instance} = setInterval(MouseOverText#{@instance}, 300);
         
     | 
| 
      
 286 
     | 
    
         
            +
             
     | 
| 
      
 287 
     | 
    
         
            +
            "));
         
     | 
| 
      
 288 
     | 
    
         
            +
             
     | 
| 
      
 289 
     | 
    
         
            +
             end
         
     | 
| 
      
 290 
     | 
    
         
            +
            end
         
     | 
    
        data/lib/ming/ming.rb
    ADDED
    
    | 
         @@ -0,0 +1,68 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # ming.rb - a library for generating Macromedia Flash (SWF)
         
     | 
| 
      
 2 
     | 
    
         
            +
            # Copyright (C) 2004 IKEGAMI Daisuke <ikegami at madscientist dot jp>
         
     | 
| 
      
 3 
     | 
    
         
            +
            #     All rights reserved.
         
     | 
| 
      
 4 
     | 
    
         
            +
            #
         
     | 
| 
      
 5 
     | 
    
         
            +
            # This library is free software; you can redistribute it and/or
         
     | 
| 
      
 6 
     | 
    
         
            +
            # modify it under the terms of the GNU Library General Public
         
     | 
| 
      
 7 
     | 
    
         
            +
            # License as published by the Free Software Foundation; either
         
     | 
| 
      
 8 
     | 
    
         
            +
            # version 2 of the License, or (at your option) any later version.
         
     | 
| 
      
 9 
     | 
    
         
            +
            #
         
     | 
| 
      
 10 
     | 
    
         
            +
            # This library is distributed in the hope that it will be useful,
         
     | 
| 
      
 11 
     | 
    
         
            +
            # but WITHOUT ANY WARRANTY; without even the implied warranty of
         
     | 
| 
      
 12 
     | 
    
         
            +
            # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
         
     | 
| 
      
 13 
     | 
    
         
            +
            # Library General Public License for more details.
         
     | 
| 
      
 14 
     | 
    
         
            +
            #
         
     | 
| 
      
 15 
     | 
    
         
            +
            # You should have received a copy of the GNU Library General Public
         
     | 
| 
      
 16 
     | 
    
         
            +
            # License along with this library; if not, write to the
         
     | 
| 
      
 17 
     | 
    
         
            +
            # Free Software Foundation, Inc., 59 Temple Place - Suite 330,
         
     | 
| 
      
 18 
     | 
    
         
            +
            # Boston, MA 02111-1307, USA.
         
     | 
| 
      
 19 
     | 
    
         
            +
            #
         
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
            require 'ming/mingc'
         
     | 
| 
      
 22 
     | 
    
         
            +
            require 'find'
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
            module Ming
         
     | 
| 
      
 25 
     | 
    
         
            +
              class SWFFont
         
     | 
| 
      
 26 
     | 
    
         
            +
                @@font_path = ['.']
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
                def SWFFont.font_path
         
     | 
| 
      
 29 
     | 
    
         
            +
                  @@font_path
         
     | 
| 
      
 30 
     | 
    
         
            +
                end
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
                def SWFFont.new(filename)
         
     | 
| 
      
 33 
     | 
    
         
            +
                  realname = SWFFont.search_font(filename)
         
     | 
| 
      
 34 
     | 
    
         
            +
                  
         
     | 
| 
      
 35 
     | 
    
         
            +
                  SWFFont.new_from_file(realname)
         
     | 
| 
      
 36 
     | 
    
         
            +
                end
         
     | 
| 
      
 37 
     | 
    
         
            +
             
     | 
| 
      
 38 
     | 
    
         
            +
                def SWFFont.search_font(filename)
         
     | 
| 
      
 39 
     | 
    
         
            +
                  if File.basename(filename) == filename
         
     | 
| 
      
 40 
     | 
    
         
            +
                    @@font_path.each do |rdir|
         
     | 
| 
      
 41 
     | 
    
         
            +
                      if  /(.*)\/\/$/=~ rdir
         
     | 
| 
      
 42 
     | 
    
         
            +
                        Find::find($1) do |path|
         
     | 
| 
      
 43 
     | 
    
         
            +
                          filename = path if File.basename(path) == filename
         
     | 
| 
      
 44 
     | 
    
         
            +
                        end
         
     | 
| 
      
 45 
     | 
    
         
            +
                      else
         
     | 
| 
      
 46 
     | 
    
         
            +
                        dir = Dir.open(rdir)
         
     | 
| 
      
 47 
     | 
    
         
            +
                        dir.each do |path|
         
     | 
| 
      
 48 
     | 
    
         
            +
                          filename = File.join(dir, path) if path == filename
         
     | 
| 
      
 49 
     | 
    
         
            +
                        end
         
     | 
| 
      
 50 
     | 
    
         
            +
                      end
         
     | 
| 
      
 51 
     | 
    
         
            +
                    end
         
     | 
| 
      
 52 
     | 
    
         
            +
                  end
         
     | 
| 
      
 53 
     | 
    
         
            +
             
     | 
| 
      
 54 
     | 
    
         
            +
                  unless File.exist?(filename) 
         
     | 
| 
      
 55 
     | 
    
         
            +
                    raise MingError, "file #{filename} is not found."
         
     | 
| 
      
 56 
     | 
    
         
            +
                  end
         
     | 
| 
      
 57 
     | 
    
         
            +
                  unless File.file?(filename)
         
     | 
| 
      
 58 
     | 
    
         
            +
                    raise MingError, "file #{filename} is not regular font file."
         
     | 
| 
      
 59 
     | 
    
         
            +
                  end
         
     | 
| 
      
 60 
     | 
    
         
            +
                  unless File.readable?(filename)
         
     | 
| 
      
 61 
     | 
    
         
            +
                    raise MingError, "file #{filename} cannot be read."
         
     | 
| 
      
 62 
     | 
    
         
            +
                  end
         
     | 
| 
      
 63 
     | 
    
         
            +
                  
         
     | 
| 
      
 64 
     | 
    
         
            +
                  filename
         
     | 
| 
      
 65 
     | 
    
         
            +
                end
         
     | 
| 
      
 66 
     | 
    
         
            +
             
     | 
| 
      
 67 
     | 
    
         
            +
              end
         
     | 
| 
      
 68 
     | 
    
         
            +
            end
         
     | 
    
        data/lib/ming/mingc.so
    ADDED
    
    | 
         Binary file 
     | 
| 
         Binary file 
     | 
| 
         Binary file 
     | 
| 
         Binary file 
     | 
| 
         Binary file 
     | 
| 
         Binary file 
     | 
| 
         Binary file 
     | 
| 
         Binary file 
     | 
| 
         Binary file 
     | 
| 
         Binary file 
     | 
| 
         Binary file 
     | 
| 
         Binary file 
     | 
| 
         Binary file 
     | 
    
        metadata
    ADDED
    
    | 
         @@ -0,0 +1,66 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            --- !ruby/object:Gem::Specification 
         
     | 
| 
      
 2 
     | 
    
         
            +
            rubygems_version: 0.9.4
         
     | 
| 
      
 3 
     | 
    
         
            +
            specification_version: 1
         
     | 
| 
      
 4 
     | 
    
         
            +
            name: ming-ruby
         
     | 
| 
      
 5 
     | 
    
         
            +
            version: !ruby/object:Gem::Version 
         
     | 
| 
      
 6 
     | 
    
         
            +
              version: "1.0"
         
     | 
| 
      
 7 
     | 
    
         
            +
            date: 2009-05-01 00:00:00 +02:00
         
     | 
| 
      
 8 
     | 
    
         
            +
            summary: "ming-ruby (\xE9\x8B\xB8) is an Ruby extension and wrapper for Ming library, enabling script based creation of the swf files."
         
     | 
| 
      
 9 
     | 
    
         
            +
            require_paths: 
         
     | 
| 
      
 10 
     | 
    
         
            +
            - - lib/
         
     | 
| 
      
 11 
     | 
    
         
            +
            email: 
         
     | 
| 
      
 12 
     | 
    
         
            +
            - pkarwow@googlemail.com
         
     | 
| 
      
 13 
     | 
    
         
            +
            homepage: http://rubyforge.org/projects/mingruby/
         
     | 
| 
      
 14 
     | 
    
         
            +
            rubyforge_project: ming-ruby
         
     | 
| 
      
 15 
     | 
    
         
            +
            description: "ming-ruby (\xE9\x8B\xB8) is an swf files generator."
         
     | 
| 
      
 16 
     | 
    
         
            +
            autorequire: 
         
     | 
| 
      
 17 
     | 
    
         
            +
            default_executable: 
         
     | 
| 
      
 18 
     | 
    
         
            +
            bindir: bin
         
     | 
| 
      
 19 
     | 
    
         
            +
            has_rdoc: false
         
     | 
| 
      
 20 
     | 
    
         
            +
            required_ruby_version: !ruby/object:Gem::Version::Requirement 
         
     | 
| 
      
 21 
     | 
    
         
            +
              requirements: 
         
     | 
| 
      
 22 
     | 
    
         
            +
              - - ">"
         
     | 
| 
      
 23 
     | 
    
         
            +
                - !ruby/object:Gem::Version 
         
     | 
| 
      
 24 
     | 
    
         
            +
                  version: 0.0.0
         
     | 
| 
      
 25 
     | 
    
         
            +
              version: 
         
     | 
| 
      
 26 
     | 
    
         
            +
            platform: mswin32
         
     | 
| 
      
 27 
     | 
    
         
            +
            signing_key: 
         
     | 
| 
      
 28 
     | 
    
         
            +
            cert_chain: 
         
     | 
| 
      
 29 
     | 
    
         
            +
            post_install_message: 
         
     | 
| 
      
 30 
     | 
    
         
            +
            authors: 
         
     | 
| 
      
 31 
     | 
    
         
            +
            - Pawel Karwowski
         
     | 
| 
      
 32 
     | 
    
         
            +
            files: 
         
     | 
| 
      
 33 
     | 
    
         
            +
            - ChangeLog
         
     | 
| 
      
 34 
     | 
    
         
            +
            - README
         
     | 
| 
      
 35 
     | 
    
         
            +
            - INSTALL
         
     | 
| 
      
 36 
     | 
    
         
            +
            - LGPL
         
     | 
| 
      
 37 
     | 
    
         
            +
            - TODO
         
     | 
| 
      
 38 
     | 
    
         
            +
            - lib/ming/mingc.so
         
     | 
| 
      
 39 
     | 
    
         
            +
            - lib/ming/ming.rb
         
     | 
| 
      
 40 
     | 
    
         
            +
            - lib/SWFMing_T_Scrollbar.rb
         
     | 
| 
      
 41 
     | 
    
         
            +
            - lib/pictures/arrow_down_active.dbl
         
     | 
| 
      
 42 
     | 
    
         
            +
            - lib/pictures/arrow_down_inactive.dbl
         
     | 
| 
      
 43 
     | 
    
         
            +
            - lib/pictures/arrow_up_active.dbl
         
     | 
| 
      
 44 
     | 
    
         
            +
            - lib/pictures/arrow_up_inactive.dbl
         
     | 
| 
      
 45 
     | 
    
         
            +
            - lib/pictures/scrollbar_active.dbl
         
     | 
| 
      
 46 
     | 
    
         
            +
            - lib/pictures/scrollbar_inactive.dbl
         
     | 
| 
      
 47 
     | 
    
         
            +
            - lib/pictures/backgroundH.dbl
         
     | 
| 
      
 48 
     | 
    
         
            +
            - lib/pictures/backgroundH_gap.dbl
         
     | 
| 
      
 49 
     | 
    
         
            +
            - lib/pictures/backgroundH_gap2.dbl
         
     | 
| 
      
 50 
     | 
    
         
            +
            - lib/pictures/backgroundV.dbl
         
     | 
| 
      
 51 
     | 
    
         
            +
            - lib/pictures/backgroundV_gap.dbl
         
     | 
| 
      
 52 
     | 
    
         
            +
            - lib/pictures/backgroundV_gap2.dbl
         
     | 
| 
      
 53 
     | 
    
         
            +
            test_files: []
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
            rdoc_options: []
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
            extra_rdoc_files: []
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
            executables: []
         
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
      
 61 
     | 
    
         
            +
            extensions: []
         
     | 
| 
      
 62 
     | 
    
         
            +
             
     | 
| 
      
 63 
     | 
    
         
            +
            requirements: []
         
     | 
| 
      
 64 
     | 
    
         
            +
             
     | 
| 
      
 65 
     | 
    
         
            +
            dependencies: []
         
     | 
| 
      
 66 
     | 
    
         
            +
             
     |