class Microstation::TagSets

Attributes

drawing[R]
ole_obj[R]

Public Class Methods

new(drawing,ole) click to toggle source
# File lib/microstation/tag_set.rb, line 35
def initialize(drawing,ole)
  raise if ole == nil
  @drawing = drawing
  @ole_obj = ole
end

Public Instance Methods

[](name) click to toggle source
# File lib/microstation/tag_set.rb, line 82
def [](name)
  find(name)
end
create(name) { |ts| ... } click to toggle source
# File lib/microstation/tag_set.rb, line 100
def create(name)
  raise if self[name]
 
  ole = @ole_obj.add(name) rescue binding.pry
 # ts = Tagset.new(ole)
  # yield definer if block_given?
  reset
  ts = self[name]
  raise if ts.nil?
  yield ts if block_given?
  ts
end
each() { |obj| ... } click to toggle source
# File lib/microstation/tag_set.rb, line 67
def each
  tagsets.each do |obj|
    yield obj
  end
end
empty?() click to toggle source
# File lib/microstation/tag_set.rb, line 96
def empty?
  tagsets.empty?
end
find(name) click to toggle source
# File lib/microstation/tag_set.rb, line 73
def find(name)
  return nil if empty?
  tagsets.detect{|ts| ts.name == name}
end
init_ts() click to toggle source
# File lib/microstation/tag_set.rb, line 41
def init_ts
  result = []
  @ole_obj.each do |ts|
    result << TagSet.new(drawing,ts)
  end
  result
end
last() click to toggle source
# File lib/microstation/tag_set.rb, line 78
def last
  tagsets[-1]
end
names() click to toggle source
# File lib/microstation/tag_set.rb, line 58
def names
  self.map{|ts| ts.name}
end
remove(name) click to toggle source
# File lib/microstation/tag_set.rb, line 86
def remove(name)
  ts = find(name)
  if ts
    @ole_obj.Remove(name) rescue nil
    ts.close
    ts = nil
  end
  reset
end
reset() click to toggle source
# File lib/microstation/tag_set.rb, line 53
def reset
  @tagsets = nil
  @drawing.reset_tagset_instances
end
size() click to toggle source
# File lib/microstation/tag_set.rb, line 113
def size
  tagsets.size
end
tagsets() click to toggle source
# File lib/microstation/tag_set.rb, line 63
def tagsets
  @tagsets ||= init_ts
end
to_s() click to toggle source
# File lib/microstation/tag_set.rb, line 49
def to_s
  "Tagsets: #{tagsets.to_s}"
end