# File gtk/sample/testgtk/layout.rb, line 37
  def initialize
    super("Gtk::Layout")

    set_default_size(200, 200)

    scrolledwindow = Gtk::ScrolledWindow.new

    add(scrolledwindow)
      
    @layout = Gtk::Layout.new(nil, nil)
    scrolledwindow.add(@layout)

    # We set step sizes here since GtkLayout does not set
    # them itself.
    @layout.hadjustment.step_increment = 10.0
    @layout.vadjustment.step_increment = 10.0

    @layout.set_events(Gdk::Event::EXPOSURE_MASK)
    @layout.signal_connect("expose_event") do | w, event |
      layout_expose_handler(event)
    end

    @layout.set_size(1600, 128000)
      
    for i in 0..15 do
      for j in 0..15 do
        buf = "Button #{i}, #{j}"
        if ((i + j) % 2) != 0 then
          button = Gtk::Button.new(buf)
        else
          button = Gtk::Label.new(buf)
        end

        @layout.put(button, j*100, i*100)
        button.show
      end
    end

    for i in 16..1279 do
      buf = "Button #{i}, 0"
      if (i % 2) != 0 then
        button = Gtk::Button.new(buf)
      else
        button = Gtk::Label.new(buf)
      end
      @layout.put(button, 0, i * 100)
    end
  end