Sha256: 69bc2a68750f8e56a62424971d499ad6bd760293f877cf1baf943a825e764678

Contents?: true

Size: 1.02 KB

Versions: 7

Compression:

Stored size: 1.02 KB

Contents

# frozen_string_literal: true

module Vedeu

  module Cursors

    # Allows the storing of each interface's cursor.
    #
    class Repository < Vedeu::Repositories::Repository

      singleton_class.send(:alias_method, :cursors, :repository)

      class << self

        # Fetch the cursor of the currently focussed interface/view.
        #
        # @example
        #   Vedeu.cursor
        #
        # @return [NilClass|Vedeu::Cursors::Cursor]
        def cursor
          cursors.by_name
        end

      end # Eigenclass

      null Vedeu::Cursors::Cursor
      real Vedeu::Cursors::Cursor

    end # Repository

    class Cursor

      repo Vedeu::Cursors::Repository.repository

    end # Cursor

  end # Cursors

  # Manipulate the repository of cursors.
  #
  # @example
  #   Vedeu.cursors
  #
  # @!method cursors
  #   @return [Vedeu::Cursors::Repository]
  # @!method cursor
  #   @see Vedeu::Cursors::Repository.cursor
  def_delegators Vedeu::Cursors::Repository,
                 :cursor,
                 :cursors

end # Vedeu

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
vedeu-0.8.7 lib/vedeu/cursors/repository.rb
vedeu-0.8.6 lib/vedeu/cursors/repository.rb
vedeu-0.8.5 lib/vedeu/cursors/repository.rb
vedeu-0.8.4 lib/vedeu/cursors/repository.rb
vedeu-0.8.3 lib/vedeu/cursors/repository.rb
vedeu-0.8.2 lib/vedeu/cursors/repository.rb
vedeu-0.8.1 lib/vedeu/cursors/repository.rb