class Mynu
Attributes
__app[RW]
__status_item[RW]
items[RW]
Public Class Methods
new(icon = nil, menu_title = 'Mynu')
click to toggle source
Prepare the application
# File lib/mynu.rb, line 27 def initialize(icon = nil, menu_title = 'Mynu') @__app = NSApplication.sharedApplication icon = File.join(File.dirname(__FILE__), '..', 'lib') + '/mynu/assets/logo.png' if icon.nil? @__status_item = status_bar.statusItemWithLength(NSVariableStatusItemLength) @__status_item.setImage NSImage.new.initWithContentsOfFile(icon) @__menu = Menu.new @__menu.initWithTitle menu_title @__menu.setAutoenablesItems false @items = [] end
Public Instance Methods
quit(sender)
click to toggle source
# File lib/mynu.rb, line 47 def quit(sender) puts "Quitting :: Mynu" @__app.terminate(self) end
run()
click to toggle source
# File lib/mynu.rb, line 42 def run @__status_item.setMenu loadMenu @__app.run end
Protected Instance Methods
loadMenu()
click to toggle source
# File lib/mynu.rb, line 58 def loadMenu @items.each do |item| @__menu.addItem item end quit = Menu::MenuItem.new quit.title = 'Quit' quit.action = 'quit:' quit.target = self @__menu.addItem quit @__menu end
status_bar()
click to toggle source
# File lib/mynu.rb, line 54 def status_bar NSStatusBar.systemStatusBar end