function DropdownClass.Set(m,r)if m._Selected~=r then m._Selected=r m._ChangedBind:Fire(r)m.Button.Option.Text=r.Label.Text end m:Show(false)end function DropdownClass.Get(r)return r._Selected end function DropdownClass.Show(m,r)m.Button.Arrow.Image=r and ARROW_UP or ARROW_DOWN m.ListFrame.Visible=r end function DropdownClass.Destroy(r)r._Maid:Sweep()r._Changed=nil r._Options=nil r._Selected=nil r.Button:Destroy()end


function DropdownClass:Set(option)
	if (self._Selected ~= option) then
		self._Selected = option
		self._ChangedBind:Fire(option)
		self.Button.Option.Text = option.Label.Text
	end
	self:Show(false)
end

function DropdownClass:Get()
	return self._Selected
end

function DropdownClass:Show(bool)
	self.Button.Arrow.Image = bool and ARROW_UP or ARROW_DOWN
	self.ListFrame.Visible = bool
end

function DropdownClass:Destroy()
	self._Maid:Sweep()
	self._Changed = nil
	self._Options = nil
	self._Selected = nil
	self.Button:Destroy()
end
