Sha256: 48970ce7620a17c7ad3009ae91bab09fad7fa86adb5a7102dfa3e1c5dea212c9

Contents?: true

Size: 1.16 KB

Versions: 2

Compression:

Stored size: 1.16 KB

Contents

require 'vedeu/support/common'
require 'vedeu/support/terminal'
require 'vedeu/events/all'
require 'vedeu/models/all'
require 'vedeu/input/all'
require 'vedeu/dsl/composition'
require 'vedeu/dsl/shared/all'
require 'vedeu/dsl/view'

module Vedeu

  # Provides the API to Vedeu. Methods therein, and classes belonging to this
  # module expose Vedeu's core functionality.
  #
  # @api public
  module API

    extend Forwardable
    extend self

    def_delegators Vedeu::Event,         :bind, :trigger, :unbind
    def_delegators Vedeu::Configuration, :configure, :configuration
    def_delegators Vedeu::DSL::Use,      :use
    def_delegators Vedeu::DSL::View,     :interface, :renders, :views

    def_delegators Vedeu::Focus,         :focus, :focus_by_name, :focussed?,
                                         :focus_next, :focus_previous
    def_delegators Vedeu::Keymap,        :keymap
    def_delegators Vedeu::Log,           :log
    def_delegators Vedeu::Mapper,        :keypress
    def_delegators Vedeu::Menu,          :menu
    def_delegators Vedeu::Menus,         :menus
    def_delegators Vedeu::Terminal,      :height, :width, :resize

  end # API

  extend API

end # Vedeu

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
vedeu-0.3.1 lib/vedeu/api.rb
vedeu-0.3.0 lib/vedeu/api.rb