Sha256: c9ee0083fa7b03d0a0ff38c12a5e0f75c8785a4becfb407201b9d48a980cafd0
Contents?: true
Size: 1.02 KB
Versions: 2
Compression:
Stored size: 1.02 KB
Contents
module RubyApp module Elements module Navigation require 'ruby_app/element' class PageMenu < RubyApp::Element class ClickedEvent < RubyApp::Element::Event attr_reader :page def initialize(data) super(data) @page = eval(data['page']) end def to_hash super.merge('page' => @page) end end template_path(:all, File.dirname(__FILE__)) attr_reader :pages def initialize super @pages = [] end def current_page RubyApp::Session.pages.last.class end protected def on_event(event) on_clicked(event) if event.is_a?(RubyApp::Elements::Navigation::PageMenu::ClickedEvent) super(event) end def on_clicked(event) RubyApp::Session.pages.pop RubyApp::Session.pages.push(event.page.new) event.refresh end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
RubyApp-0.0.10 | lib/ruby_app/elements/navigation/page_menu.rb |
RubyApp-0.0.9 | lib/ruby_app/elements/navigation/page_menu.rb |