Class: LCDProc::MenuItems::IP
- Inherits:
-
Object
- Object
- LCDProc::MenuItems::IP
- Includes:
- LCDProc::MenuItem
- Defined in:
- lib/lcdproc/menu_items/ip.rb
Constant Summary collapse
- @@ip_item_count =
0
Instance Attribute Summary
Attributes included from LCDProc::MenuItem
#id, #is_hidden, #lcdproc_event_type, #lcdproc_options, #lcdproc_type, #next, #parent_menu, #previous, #text
Instance Method Summary collapse
-
#initialize(user_options = {}, lcdproc_options = {}) ⇒ IP
constructor
Creates a new IP MenuItem object.
Methods included from LCDProc::MenuItem
add_support, #lcdproc_options_as_string, new, supported_types
Constructor Details
#initialize(user_options = {}, lcdproc_options = {}) ⇒ IP
Creates a new IP MenuItem object.
The user_options
will accept a hash of the following MenuItem options.
-
:id
- The unique string that identifies this ip menu item. Defaults to “IPMenuItem_” + a sequence number.
The lcdproc_options
will accept a hash of the options to be passed to LCDd when creating or updating the ip.
-
:text
- The text to be displayed on the LCD for this ip. Defaults to the id. -
:value
- The value of the IP address. Defaults to “0.0.0.0”. -
:v6
- Whether or not the IP address should be in IPv6 format or not. Defaults to false.
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/lcdproc/menu_items/ip.rb', line 48 def initialize( = {}, = {} ) @lcdproc_options = {} if [:id].nil? @id = "IPMenuItem_#{@@ip_item_count}" else @id = [:id] end @lcdproc_type = "ip" @lcdproc_event_type = "update" @lcdproc_options[:text] = "#{@id}" @lcdproc_options[:value] = "0.0.0.0" @lcdproc_options[:v6] = false @lcdproc_options.update( ) [ :text, :value ].each { |s| @lcdproc_options[s].quotify! } @@ip_item_count += 1 end |