class Login
Attributes
logged_in[RW]
password[RW]
username[RW]
Public Instance Methods
launch()
click to toggle source
# File examples/login.rb, line 8 def launch window('Login') { margined true vertical_box { form { entry { label 'Username:' text <=> [self, :username] enabled <= [self, :logged_in, on_read: :!] # `on_read: :!` negates read value } password_entry { label 'Password:' text <=> [self, :password] enabled <= [self, :logged_in, on_read: :!] } } horizontal_box { button('Login') { enabled <= [self, :logged_in, on_read: :!] on_clicked do self.logged_in = true end } button('Logout') { enabled <= [self, :logged_in] on_clicked do self.logged_in = false self.username = '' self.password = '' end } } } }.show end
logged_in=(value)
click to toggle source
# File examples/login3.rb, line 9 def logged_in=(value) @logged_in = value self.logged_out = !value # calling logged_out= method notifies logged_out observers end
logged_out()
click to toggle source
# File examples/login2.rb, line 8 def logged_out !logged_in end
logged_out=(value)
click to toggle source
# File examples/login3.rb, line 14 def logged_out=(value) self.logged_in = !value unless logged_in == !value end