
#require 'RubyFrictionlessAppDelegate'

class MailPreferences < OSX::NSObject

	attr_accessor :identifier,:mainView,:label,:icon,:category,:appDelegate
	
	def initWithController_appDelegate(controller,appDelegate)
	  @label="Mail Sync"
	  @category="Frictionless"
	  @identifier="Mail"
	  @icon= NSImage.imageNamed("Mail")
	  @appDelegate=appDelegate
	  controller.addPane_withIdentifier(self,	@identifier)
	end
	
	def mainView
	  NSBundle.loadNibNamed_owner("MailPreferences",self) unless @mainView
	  @mainView
	end
	
	def mailboxNames
		MailSyncer.singleton.mailboxNames
	end
	
	def incomingMailbox
		return MailPreferences.incomingMailbox
	end
	def outgoingMailbox
		return MailPreferences.outgoingMailbox
	end
	
	def incomingMailbox=(m)
		setIncomingMailbox(m)
	end
	def outgoingMailbox=(m)
		setOutgoingMailbox(m)
	end
	
	def MailPreferences.incomingMailbox
      defaults=NSUserDefaultsController.sharedUserDefaultsController.values
	  return defaults.valueForKey("incomingMailbox")
	end
	
	def setIncomingMailbox(m)
	      defaults=NSUserDefaultsController.sharedUserDefaultsController.defaults
		  defaults.setObject_forKey(m,"incomingMailbox")
	end
	
	def MailPreferences.outgoingMailbox
      defaults=NSUserDefaultsController.sharedUserDefaultsController.values
	  return defaults.valueForKey("outgoingMailbox")
	end
	
	def setOutgoingMailbox(m)
	      defaults=NSUserDefaultsController.sharedUserDefaultsController.defaults
		  defaults.setObject_forKey(m,"outgoingMailbox")
	end
	
end
	