Sha256: 4397a7c0811668ed82cf14b6b7e15aa02c58b5c463ce61ddf1a0960d56022564

Contents?: true

Size: 1.75 KB

Versions: 4

Compression:

Stored size: 1.75 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/components/border'
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::Borders,       :borders
    def_delegators Vedeu::Buffers,       :buffers
    def_delegators Vedeu::Cursors,       :cursors
    def_delegators Vedeu::Cursors,       :cursor
    def_delegators Vedeu::Events,        :events
    def_delegators Vedeu::Geometries,    :geometries
    def_delegators Vedeu::Groups,        :groups
    def_delegators Vedeu::InterfacesRepository, :interfaces

    def_delegators Vedeu::Keymaps,       :keymaps
    def_delegators Vedeu::Mapper,        :keypress
    def_delegators Vedeu::Menus,         :menus

    def_delegators Vedeu::Event,         :bind, :trigger, :unbind
    def_delegators Vedeu::Configuration, :configure, :configuration
    def_delegators Vedeu::DSL::Border,   :border
    def_delegators Vedeu::DSL::Geometry, :geometry
    def_delegators Vedeu::DSL::Keymap,   :keymap
    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::Log,           :log
    def_delegators Vedeu::Menu,          :menu
    def_delegators Vedeu::Terminal,      :height, :width, :resize

  end # API

  extend API

end # Vedeu

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
vedeu-0.4.2 lib/vedeu/api.rb
vedeu-0.4.1 lib/vedeu/api.rb
vedeu-0.4.0 lib/vedeu/api.rb
vedeu-0.3.5 lib/vedeu/api.rb