Sha256: 0b43e044739a886c49ac7203a69f43b01ea218e0712597dffe615c32f8a894e6

Contents?: true

Size: 1 KB

Versions: 6

Compression:

Stored size: 1 KB

Contents

class MenuPanel < Shoes::Widget
  $boxes = []
  def initialize(color, args)
    $boxes << self
    background color
    para link("Box #{$boxes.length}", :stroke => white, :fill => nil).
      click { visit "/" },
        :margin => 18, :align => "center", :size => 20
    yield
  end
end

Shoes.app :width => 600, :height => 130 do
  style(Shoes::Link, :underline => nil)
  style(Shoes::LinkHover, :fill => nil, :underline => nil)
  
  expand = proc do
    hover do |box|
      if box.width < 170
        a = animate 30 do
          $boxes.each do |b|
            b.width -= 5 if b != box and b.width > 140
          end
          box.width += 5
          a.stop if box.width >= 170
        end
      end
    end
  end
    
  menu_panel green,  :width => 170, :height => 120, :margin => 4, &expand
  menu_panel blue,   :width => 140, :height => 120, :margin => 4, &expand
  menu_panel red,    :width => 140, :height => 120, :margin => 4, &expand
  menu_panel purple, :width => 140, :height => 120, :margin => 4, &expand
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
scarpe-0.4.0 examples/legacy/not_checked/simple/menu1.rb
scarpe-0.3.0 examples/legacy/not_checked/simple/menu1.rb
scarpe-0.2.2 examples/legacy/not_checked/simple/menu1.rb
lacci-0.2.1 examples/legacy/not_checked/simple/menu1.rb
scarpe-0.2.1 examples/legacy/not_checked/simple/menu1.rb
scarpe-0.2.0 examples/legacy/not_checked/simple/menu1.rb