Class: Microstation::TS::Attribute
- Inherits:
-
Object
- Object
- Microstation::TS::Attribute
- Defined in:
- lib/microstation/ts/attribute.rb
Constant Summary collapse
- TYPES =
msdTagTypeCharacter 1 (&H1) msdTagTypeShortInteger 2 (&H2) msdTagTypeLongInteger 3 (&H3) msdTagTypeDouble 4 (&H4) msdTagTypeBinary 5 (&H5)
{ 1 => String, 2 => Integer, 3 => Integer, 4 => Float, # 5 => Binary }
- RUBY_TO_MS =
TYPES.invert
Instance Attribute Summary collapse
-
#ole_obj ⇒ Object
readonly
Returns the value of attribute ole_obj.
Class Method Summary collapse
Instance Method Summary collapse
- #==(other) ⇒ Object
- #att_type ⇒ Object
- #attrib_options ⇒ Object
- #close ⇒ Object
- #constant=(constant) ⇒ Object
- #constant? ⇒ Boolean
- #default ⇒ Object
- #default=(val) ⇒ Object
- #has_default? ⇒ Boolean
- #hidden=(hidden) ⇒ Object
- #hidden? ⇒ Boolean
-
#initialize(ole, options = {}) ⇒ Attribute
constructor
A new instance of Attribute.
- #name ⇒ Object
- #name=(val) ⇒ Object
- #options_for_attribute ⇒ Object
- #prompt ⇒ Object
- #prompt=(val) ⇒ Object
- #tagset ⇒ Object
- #tagset_name ⇒ Object
- #to_s ⇒ Object
- #type ⇒ Object
Constructor Details
#initialize(ole, options = {}) ⇒ Attribute
48 49 50 51 |
# File 'lib/microstation/ts/attribute.rb', line 48 def initialize(ole, = {}) @ole_obj = ole @definition = [:definer] end |
Instance Attribute Details
#ole_obj ⇒ Object (readonly)
Returns the value of attribute ole_obj.
7 8 9 |
# File 'lib/microstation/ts/attribute.rb', line 7 def ole_obj @ole_obj end |
Class Method Details
.tag_type(type) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/microstation/ts/attribute.rb', line 25 def self.tag_type(type) if type.class == Symbol ruby_type = case type when :char String when :int Integer when :float Float else :char end else ruby_type = type end RUBY_TO_MS[ruby_type] end |
Instance Method Details
#==(other) ⇒ Object
133 134 135 |
# File 'lib/microstation/ts/attribute.rb', line 133 def ==(other) @ole_obj.Name == other.ole_obj.Name && @ole_obj.TagSetName == other.ole_obj.TagSetName && @ole_obj.TagType == other.ole_obj.TagType end |
#att_type ⇒ Object
44 45 46 |
# File 'lib/microstation/ts/attribute.rb', line 44 def att_type TYPES[type] end |
#attrib_options ⇒ Object
122 123 124 125 126 127 |
# File 'lib/microstation/ts/attribute.rb', line 122 def = {} [:default] = default_value if has_default? [:readonly] = true if constant? end |
#close ⇒ Object
53 54 55 |
# File 'lib/microstation/ts/attribute.rb', line 53 def close @ole_obj = nil end |
#constant=(constant) ⇒ Object
85 86 87 88 |
# File 'lib/microstation/ts/attribute.rb', line 85 def constant=(constant) bool = constant ? true : false @ole_obj.IsConstant = bool end |
#constant? ⇒ Boolean
81 82 83 |
# File 'lib/microstation/ts/attribute.rb', line 81 def constant? @ole_obj.IsConstant end |
#default ⇒ Object
90 91 92 |
# File 'lib/microstation/ts/attribute.rb', line 90 def default @ole_obj.DefaultValue end |
#default=(val) ⇒ Object
94 95 96 |
# File 'lib/microstation/ts/attribute.rb', line 94 def default=(val) @ole_obj.DefaultValue = val end |
#has_default? ⇒ Boolean
98 99 100 |
# File 'lib/microstation/ts/attribute.rb', line 98 def has_default? !!default end |
#hidden=(hidden) ⇒ Object
106 107 108 109 |
# File 'lib/microstation/ts/attribute.rb', line 106 def hidden=(hidden) bool = hidden ? true :false @ole_obj.IsHidden = bool end |
#hidden? ⇒ Boolean
102 103 104 |
# File 'lib/microstation/ts/attribute.rb', line 102 def hidden? @ole_obj.IsHidden end |
#name ⇒ Object
61 62 63 |
# File 'lib/microstation/ts/attribute.rb', line 61 def name @ole_obj.name end |
#name=(val) ⇒ Object
65 66 67 |
# File 'lib/microstation/ts/attribute.rb', line 65 def name=(val) @ole_obj.Name = val end |
#options_for_attribute ⇒ Object
69 70 71 72 73 74 75 |
# File 'lib/microstation/ts/attribute.rb', line 69 def = {} [:is_hidden] = true if hidden? [:prompt] = prompt if prompt [:default] = default_value [:readonly] = true if constant? end |
#prompt ⇒ Object
110 111 112 |
# File 'lib/microstation/ts/attribute.rb', line 110 def prompt @ole_obj.Prompt end |
#prompt=(val) ⇒ Object
114 115 116 |
# File 'lib/microstation/ts/attribute.rb', line 114 def prompt=(val) @ole_obj.Prompt = val end |
#tagset ⇒ Object
57 58 59 |
# File 'lib/microstation/ts/attribute.rb', line 57 def @definition. if definition end |
#tagset_name ⇒ Object
129 130 131 |
# File 'lib/microstation/ts/attribute.rb', line 129 def @ole_obj.TagSetName end |
#to_s ⇒ Object
77 78 79 |
# File 'lib/microstation/ts/attribute.rb', line 77 def to_s "TagDefinition: #{name}" end |
#type ⇒ Object
118 119 120 |
# File 'lib/microstation/ts/attribute.rb', line 118 def type TYPES[@ole_obj.TagType] end |