Class: OpenHAB::DSL::Sitemaps::WidgetBuilder

Inherits:
Object
  • Object
show all
Includes:
Core::EntityLookup
Defined in:
lib/openhab/dsl/sitemaps/builder.rb

Overview

Base class for all widgets

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::EntityLookup

#method_missing

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class OpenHAB::Core::EntityLookup

Instance Attribute Details

#iconString, ...

The icon to show It can be a string, or a hash of conditions and icons.

Examples:

A simple icon

sitemaps.build { text icon: "f7:house" }

A dynamic icon with conditions

sitemaps.build do
  text item: Wifi_Status, icon: {
    "ON" => "f7:wifi",
    "OFF" => "f7:wifi_slash",
    default: "f7:wifi_exclamationmark"
  }
end

Returns:

  • (String, Hash<String, String>, Hash<Array<String>, String>, nil)

See Also:



71
72
73
# File 'lib/openhab/dsl/sitemaps/builder.rb', line 71

def icon
  @icon
end

#icon_colorsHash<String, String>, Hash<Array<String>, String> (readonly)

Icon color rules

Returns:

  • (Hash<String, String>, Hash<Array<String>, String>)

See Also:



89
90
91
# File 'lib/openhab/dsl/sitemaps/builder.rb', line 89

def icon_colors
  @icon_colors
end

#itemString, ...

The item whose state to show

Returns:



54
55
56
# File 'lib/openhab/dsl/sitemaps/builder.rb', line 54

def item
  @item
end

#labelString?

Returns:

  • (String, nil)


51
52
53
# File 'lib/openhab/dsl/sitemaps/builder.rb', line 51

def label
  @label
end

#label_colorsHash<String, String>, Hash<Array<String>, String> (readonly)

Label color rules

Returns:

  • (Hash<String, String>, Hash<Array<String>, String>)

See Also:



81
82
83
# File 'lib/openhab/dsl/sitemaps/builder.rb', line 81

def label_colors
  @label_colors
end

#static_iconString?

The static icon to show This is mutually exclusive with #icon

Returns:

  • (String, nil)

See Also:

Since:

  • openHAB 4.1



77
78
79
# File 'lib/openhab/dsl/sitemaps/builder.rb', line 77

def static_icon
  @static_icon
end

#value_colorsHash<String, String>, Hash<Array<String>, String> (readonly)

Value color rules

Returns:

  • (Hash<String, String>, Hash<Array<String>, String>)

See Also:



85
86
87
# File 'lib/openhab/dsl/sitemaps/builder.rb', line 85

def value_colors
  @value_colors
end

#visibilitiesArray<String> (readonly)

Visibility rules



93
94
95
# File 'lib/openhab/dsl/sitemaps/builder.rb', line 93

def visibilities
  @visibilities
end

Instance Method Details

#icon_color(rules) ⇒ Hash<String, String>

Adds one or more new rules for setting the icon color

Returns:

  • (Hash<String, String>)

    the current rules



173
174
175
176
# File 'lib/openhab/dsl/sitemaps/builder.rb', line 173

def icon_color(rules)
  rules = { default: rules } if rules.is_a?(String)
  @icon_colors.merge!(rules)
end

#label_color(rules) ⇒ Hash<String, String>

Adds one or more new rules for setting the label color

Returns:

  • (Hash<String, String>)

    the current rules



159
160
161
162
# File 'lib/openhab/dsl/sitemaps/builder.rb', line 159

def label_color(rules)
  rules = { default: rules } if rules.is_a?(String)
  @label_colors.merge!(rules)
end

#value_color(rules) ⇒ Hash<String, String>

Adds one or more new rules for setting the value color

Returns:

  • (Hash<String, String>)

    the current rules



166
167
168
169
# File 'lib/openhab/dsl/sitemaps/builder.rb', line 166

def value_color(rules)
  rules = { default: rules } if rules.is_a?(String)
  @value_colors.merge!(rules)
end

#visibility(*rules) ⇒ Array<String>

Adds one or more new visibility rules

Returns:

  • (Array<String>)

    the current rules



180
181
182
# File 'lib/openhab/dsl/sitemaps/builder.rb', line 180

def visibility(*rules)
  @visibilities.concat(rules)
end