lib/vedeu/repository/interface.rb in vedeu-0.0.11 vs lib/vedeu/repository/interface.rb in vedeu-0.0.12
- old
+ new
@@ -1,52 +1,34 @@
module Vedeu
class Interface
- attr_accessor :id, :active, :attributes, :result, :name, :geometry
+ attr_accessor :id, :attributes, :active, :geometry, :name, :result
class << self
def create(attributes = {})
new(attributes).create
end
end
def initialize(attributes = {})
@attributes = attributes || {}
- @name = attributes[:name]
+
@active = false
- @geometry = Geometry.new(attributes[:geometry])
+ @geometry = attributes[:geometry]
+ @name = attributes[:name]
+ @result = nil
end
def create
InterfaceRepository.create(self)
InterfaceRepository.activate(self.name)
self
end
- def origin(index = 0)
- Position.set(geometry.vy(index), geometry.vx)
- end
+ def initial_state; end
- def initial_state
- # raise NotImplementedError, 'Subclasses implement this method.'
- end
-
- def input
- raise Collapse if evaluate == :stop
- end
-
- def output
- Compositor.arrange(@result, self) unless @result.nil? || @result.empty?
- end
-
- private
-
- def evaluate
- @result = Input.evaluate(read)
- end
-
- def read
- Terminal.input
+ def geometry
+ Geometry.new(@geometry)
end
end
end