module Microstation::ElementTrait

Public Instance Methods

cell?() click to toggle source
# File lib/microstation/element.rb, line 39
def cell?
  ole_obj.Type == ::Microstation::MSD::MsdElementTypeCellHeader
end
complex?() click to toggle source
# File lib/microstation/element.rb, line 43
def complex?
  ole_obj.IsComplexElement
end
graphical?() click to toggle source
# File lib/microstation/element.rb, line 63
def graphical?
  ole_obj.IsGraphical
end
has_tags?() click to toggle source
# File lib/microstation/element.rb, line 31
def has_tags?
  ole_obj.HasAnyTags
end
id_from_record(id) click to toggle source
# File lib/microstation/element.rb, line 74
def id_from_record(id)
  if id.class == WIN32OLE_RECORD
    if id.Low > id.High
      return id.Low
    else
      return id.High
    end
  end
end
line?() click to toggle source

@return [Boolean] true if ole type is TypeLine

# File lib/microstation/element.rb, line 59
def line?
  ole_obj.Type == ::Microstation::MSD::MsdElementTypeLine
end
microstation_id() click to toggle source
# File lib/microstation/element.rb, line 52
def microstation_id()
  id = ole_obj.Id || ole_obj.ID64
  return nil unless id
  id_from_record(id)
end
microstation_type() click to toggle source

def Type

ole_obj.Type

end

# File lib/microstation/element.rb, line 92
def microstation_type
  ole_obj.Type
end
model() click to toggle source
# File lib/microstation/element.rb, line 97
def model
  Model.new(app, app.current_drawing, ole_obj.ModelReference)
end
parent() click to toggle source
# File lib/microstation/element.rb, line 67
def parent
  parent_id = ole_obj.ParentID
  return nil unless parent_id
  id = id_from_record(parent_id)
  app.active_design_file.find_by_id(id)
end
select() click to toggle source
# File lib/microstation/element.rb, line 84
def select
  app.active_model_reference.select_element(self)
end
text?() click to toggle source

@return [Boolean] true if ole type is Text

# File lib/microstation/element.rb, line 22
def text?
  ole_obj.Type == ::Microstation::MSD::MsdElementTypeText
end
text_node?() click to toggle source

@return [Boolean] true if ole type is TextNode

# File lib/microstation/element.rb, line 27
def text_node?
  ole_obj.Type  == ::Microstation::MSD::MsdElementTypeTextNode
end
textual?() click to toggle source

@return [Boolean] true if Text or TextNode

# File lib/microstation/element.rb, line 48
def textual?
  text? || text_node?
end
to_ole() click to toggle source
# File lib/microstation/element.rb, line 35
def to_ole
  ole_obj
end