class ToodleDoPreferences < NSObject attr_accessor :identifier,:mainView,:label,:icon,:category,:appDelegate def initWithController_appDelegate(controller,appDelegate) @label="ToodleDo" @category="Frictionless" @identifier="Toodledo" @icon= NSImage.imageNamed("ToodleDo") @appDelegate=appDelegate controller.addPane_withIdentifier(self, @identifier) end def ToodleDoPreferences.username defaults=NSUserDefaultsController.sharedUserDefaultsController.values defaults.valueForKey("toodledoAPIKey") end def username return ToodleDoPreferences.username end def hasUsername? username && username.length > 0 end def ToodleDoPreferences.hasUsername? username && username.length > 0 end def goToodleAPI link = NSURL.URLWithString("http://www.toodledo.com/info/api_doc.php") NSWorkspace.sharedWorkspace.openURL?(link) end def mainView NSBundle.loadNibNamed_owner("ToodleDoPreferences",self) unless @mainView @mainView end def password=(newpassword) setPassword(newpassword) end def setPassword(newpassword) defaults=NSUserDefaultsController.sharedUserDefaultsController.values FrictionlessKeyChainBridge.addServerName_account_password("www.toodledo.com",defaults.valueForKey("toodledoAPIKey"),newpassword) if hasUsername? end def password return ToodleDoPreferences.password end def ToodleDoPreferences.password defaults=NSUserDefaultsController.sharedUserDefaultsController.values print "Reading defaults #{defaults}\n" password=FrictionlessKeyChainBridge.findPasswordForServer_account("www.toodledo.com",defaults.valueForKey("toodledoAPIKey")) if hasUsername? end def ToodleDoPreferences.apiKey defaults=NSUserDefaultsController.sharedUserDefaultsController.values defaults.valueForKey("toodledoAPIKey") end end