Class: CliColorize

Inherits:
Gloo::Core::Obj
  • Object
show all
Defined in:
lib/cli_colorize.rb

Constant Summary collapse

KEYWORD =
'colorize'.freeze
KEYWORD_SHORT =
'color'.freeze

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.doc_dataObject

Get the object's documentation data.



76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
# File 'lib/cli_colorize.rb', line 76

def self.doc_data
  {
    :name => KEYWORD,
    :shortcut => KEYWORD_SHORT,
    :description => 'The Colorize object can be used to write output ' \
      'in color. The Colorize container can contain multiple ' \
      'strings, each one can have a different color as specified by ' \
      'the names of the children.',
    :children => [
      '[color] (string) — The name of the child or children is the color. The string\'s value is what will be written out.'
    ],
    :messages => [
      'run — Output the string in the color specified.'
    ],
    :examples => <<~EXAMPLES.strip
      color [can] :
        w [colorize] :
          white [string] : This is white!
        m [colorize] :
          red [string] : red -
          green [string] : green -
          blue [string] : blue
        on_load [script] :
          run color.w
          run color.m
    EXAMPLES
  }
end

.messagesObject

Get a list of message names that this object receives.



53
54
55
# File 'lib/cli_colorize.rb', line 53

def self.messages
  return super + [ 'run' ]
end

.short_typenameObject

The short name of the object type.



23
24
25
# File 'lib/cli_colorize.rb', line 23

def self.short_typename
  return KEYWORD_SHORT
end

.typenameObject

The name of the object type.



16
17
18
# File 'lib/cli_colorize.rb', line 16

def self.typename
  return KEYWORD
end

Instance Method Details

#add_children_on_create?Boolean

Does this object have children to add when an object is created in interactive mode? This does not apply during obj load, etc.

Returns:

  • (Boolean)


34
35
36
# File 'lib/cli_colorize.rb', line 34

def add_children_on_create?
  return true
end

#add_default_childrenObject

Add children to this object. This is used by containers to add children needed for default configurations.



41
42
43
44
# File 'lib/cli_colorize.rb', line 41

def add_default_children
  fac = @engine.factory
  fac.create_string 'white', '', self
end

#msg_runObject

Run the colorize command.



60
61
62
63
64
65
66
67
# File 'lib/cli_colorize.rb', line 60

def msg_run
  msg = ''
  children.each do |o|
    msg += ColorizedString[ o.value_display ].colorize( o.name.to_sym )
  end
  @engine.log.show msg
  @engine.heap.it.set_to msg.to_s
end