Class: AMS::MultiLineText

Inherits:
Object
  • Object
show all
Defined in:
multi_line_text.rb

Instance Attribute Summary (collapse)

Instance Method Summary (collapse)

Constructor Details

- (MultiLineText) initialize(x = 10, y = 10)

Create a new MultiLineText object.

Parameters:

  • x (Integer) (defaults to: 10)

    X position.

  • y (Integer) (defaults to: 10)

    Y position.

Since:

  • 2.0.0



7
8
9
10
11
12
13
14
15
16
# File 'multi_line_text.rb', line 7

def initialize(x = 10, y = 10)
  @text = []
  @entity = nil
  @limit = 20
  @count = 0
  @pos = [x,y]
  @intro = ''
  @hl = '-' * 80
  @show_line_numbers = true
end

Instance Attribute Details

- (Fixnum) count (readonly)

Get line count.

Returns:

  • (Fixnum)

Since:

  • 2.0.0



# File 'multi_line_text.rb', line 18

- (Sketchup::Text) entity (readonly)

Get text entity.

Returns:

  • (Sketchup::Text)

Since:

  • 2.0.0



# File 'multi_line_text.rb', line 23

Instance Method Details

- (void) clear

This method returns an undefined value.

Clear all data.

Since:

  • 2.0.0



141
142
143
144
145
146
# File 'multi_line_text.rb', line 141

def clear
  @text.clear
  @count = 0
  update
  nil
end

- (String) get_intro

Get text title/top description.

Returns:

  • (String)

Since:

  • 2.0.0



90
91
92
# File 'multi_line_text.rb', line 90

def get_intro
  @intro.dup
end

- (Fixnum) get_limit

Get line limit.

Returns:

  • (Fixnum)

Since:

  • 2.0.0



72
73
74
# File 'multi_line_text.rb', line 72

def get_limit
  @limit
end

- (Boolean) line_numbers_visible?

Determine whether line numbers are visible.

Returns:

  • (Boolean)

Since:

  • 2.0.0



115
116
117
# File 'multi_line_text.rb', line 115

def line_numbers_visible?
  @show_line_numbers
end

This method returns an undefined value.

Add text to the current line.

Parameters:

  • str (String)

Since:

  • 2.0.0



123
124
125
126
# File 'multi_line_text.rb', line 123

def print(str)
  @text.last.push(str.to_s)
  update
end

- (void) puts(str)

This method returns an undefined value.

Add text to the new line.

Parameters:

  • str (String)

Since:

  • 2.0.0



132
133
134
135
136
# File 'multi_line_text.rb', line 132

def puts(str)
  @count += 1
  @text.push(str.to_s)
  update
end

- (void) remove

This method returns an undefined value.

Remove text object and clear all data.

Since:

  • 2.0.0



151
152
153
154
155
156
157
158
159
160
# File 'multi_line_text.rb', line 151

def remove
  if @entity.valid?
    @entity.material = nil
    @entity.erase!
  end
  @entity = nil
  @text.clear
  @count = 0
  nil
end

- (void) set_intro(str = "")

This method returns an undefined value.

Set text title/top description.

Parameters:

  • str (String) (defaults to: "")

Since:

  • 2.0.0



98
99
100
101
# File 'multi_line_text.rb', line 98

def set_intro(str = "")
  @intro = text.to_s
  update
end

- (void) set_limit(value)

This method returns an undefined value.

Set line limit.

Parameters:

  • value (Fixnum)

Since:

  • 2.0.0



80
81
82
83
84
85
# File 'multi_line_text.rb', line 80

def set_limit(value)
  @limit = value.to_i
  @limit = 1 if value < 1
  @limit = 200 if value > 200
  update
end

- (void) show_line_numbers(state)

This method returns an undefined value.

Show/Hide line numbers.

Parameters:

  • state (Boolean)

Since:

  • 2.0.0



107
108
109
110
# File 'multi_line_text.rb', line 107

def show_line_numbers(state)
  @show_line_numbers = (state == true)
  update
end