Sha256: eae29f132288a65e06127e05c99e5692145cdf9321d9fcc5f7d9c59a25e2cdbd

Contents?: true

Size: 994 Bytes

Versions: 3

Compression:

Stored size: 994 Bytes

Contents

# frozen_string_literal: true

module Vedeu

  module Borders

    # Allows the storing of interface/view borders independent of the
    # interface instance.
    #
    class Repository < Vedeu::Repositories::Repository

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

      null Vedeu::Borders::Border, enabled: false
      real Vedeu::Borders::Border

    end # Repository

  end # Borders

  # Manipulate the repository of borders.
  #
  # @example
  #   Vedeu.borders
  #
  # @!method borders
  # @return [Vedeu::Borders::Repository]
  def_delegators Vedeu::Borders::Repository,
                 :borders

  # :nocov:

  # See {file:docs/events/by_name/set_border_caption.md}
  Vedeu.bind(:_set_border_caption_) do |name, caption|
    Vedeu.borders.by_name(name).caption = caption
  end

  # See {file:docs/events/by_name/set_border_title.md}
  Vedeu.bind(:_set_border_title_) do |name, title|
    Vedeu.borders.by_name(name).title = title
  end

  # :nocov:

end # Vedeu

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
vedeu-0.8.7 lib/vedeu/borders/repository.rb
vedeu-0.8.6 lib/vedeu/borders/repository.rb
vedeu-0.8.5 lib/vedeu/borders/repository.rb