Sha256: e4ce6ae6659e50fac29616290bb7d27067c459359d56790b8e302286e1fcca9c
Contents?: true
Size: 1.5 KB
Versions: 2
Compression:
Stored size: 1.5 KB
Contents
module Vedeu module Buffers # Allow the creation of individual named buffers for views. # # @api private # class View # Returns a new instance of Vedeu::Buffers::View. # # @param attributes [Hash<Symbol => NilClass|String|Symbol] # @option attributes name [NilClass|String|Symbol] # @return [Vedeu::Buffers::View] def initialize(attributes = {}) defaults.merge!(attributes).each do |key, value| instance_variable_set("@#{key}", value || defaults.fetch(key)) end end private # @return [Vedeu::Geometry::Geometry] def geometry Vedeu.geometries.by_name(name) end # @return [Vedeu::Buffers::Empty] def buffer @_buffer ||= Vedeu::Buffers::Empty .new(height: geometry.bordered_height, name: name, width: geometry.bordered_width).buffer end # @return [Vedeu::Buffers::Empty] def current @current ||= buffer end # @return [Vedeu::Buffers::Empty] def current_reset! @current = buffer end # @return [Hash<Symbol => NilClass|String|Symbol] def defaults { name: '' } end # @return [Vedeu::Buffers::Empty] def dirty @dirty ||= buffer end # @return [Vedeu::Buffers::Empty] def dirty_reset! @dirty = buffer end end # View end # Buffers end # Vedeu
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
vedeu-0.6.58 | lib/vedeu/buffers/view.rb |
vedeu-0.6.57 | lib/vedeu/buffers/view.rb |