class Microstation::Scan::Criteria

Attributes

app[R]

Public Class Methods

create(name=nil,app) click to toggle source
# File lib/microstation/scan/criteria.rb, line 46
def self.create(name=nil,app)
  sc = new(app)
  if name.nil?
    name = "anon#{app.scanners.size + 1}"
  end
  app.scanners[name] = sc
  sc
end
create_scanner(name=nil, app,&block) click to toggle source
# File lib/microstation/scan/criteria.rb, line 39
def self.create_scanner(name=nil, app,&block)
  sc = create(name,app)
  return sc unless block
  block.arity < 1 ? sc.instance_eval(&block) : block.call(sc)
  sc
end
new(app) click to toggle source
# File lib/microstation/scan/criteria.rb, line 56
def initialize(app)
  @app = app
  @ole_obj = @app.create_ole_scan_criteria
  @app.load_constants unless defined? ::Microstation::MSD
end

Public Instance Methods

close() click to toggle source
# File lib/microstation/scan/criteria.rb, line 72
def close
  @app.scanners.delete(self) if @app
  @ole_obj = nil
end
method_missing(method,*args) click to toggle source
# File lib/microstation/scan/criteria.rb, line 81
def method_missing(method,*args)
  @ole_obj.send(method,*args)
end
ole_obj() click to toggle source
# File lib/microstation/scan/criteria.rb, line 77
def ole_obj
  @ole_obj
end
resolve() click to toggle source
# File lib/microstation/scan/criteria.rb, line 62
def resolve
  resolve_type_scans
  resolve_class_scans
  resolve_color_scans
  resolve_level_scans
  resolve_linestyle_scans
  resolve_lineweight_scans
  resolve_subtype_scans
end