Class: Y2Network::Widgets::S390Layer2

Inherits:
CWM::CustomWidget
  • Object
show all
Includes:
UI::TextHelpers
Defined in:
src/lib/y2network/widgets/s390_common.rb

Overview

This custom widget contents a checkbox for enabling the layer2 support and an input field for setting the mac address to be used in case of enablement.

Instance Method Summary collapse

Constructor Details

#initialize(settings) ⇒ S390Layer2

Constructor

Parameters:


220
221
222
223
224
# File 'src/lib/y2network/widgets/s390_common.rb', line 220

def initialize(settings)
  textdomain "network"
  @settings = settings
  self.handle_all_events = true
end

Instance Method Details

#contentsObject

See Also:

  • CWM::AbstractWidget

227
228
229
230
231
232
# File 'src/lib/y2network/widgets/s390_common.rb', line 227

def contents
  VBox(
    Left(support_widget),
    Left(mac_address_widget)
  )
end

#handle(event) ⇒ Object

See Also:

  • CWM::AbstractWidget

240
241
242
243
244
245
246
247
# File 'src/lib/y2network/widgets/s390_common.rb', line 240

def handle(event)
  case event["ID"]
  when support_widget.widget_id
    refresh
  end

  nil
end

#initObject

See Also:

  • CWM::AbstractWidget

235
236
237
# File 'src/lib/y2network/widgets/s390_common.rb', line 235

def init
  refresh
end

#storeObject

See Also:

  • CWM::AbstractWidget

263
264
265
266
# File 'src/lib/y2network/widgets/s390_common.rb', line 263

def store
  @settings.layer2 = layer2?
  @settings.lladdress = layer2? ? lladdress_for(mac_address_widget.value) : nil
end

#validateObject

See Also:

  • CWM::AbstractWidget

250
251
252
253
254
255
256
257
258
259
260
# File 'src/lib/y2network/widgets/s390_common.rb', line 250

def validate
  return true if !layer2? || !lladdress_for(mac_address_widget.value)

  unless valid_mac?(mac_address_widget.value)
    report_mac_error

    return false
  end

  use_selected_mac?
end