local PANEL = {}



AccessorFunc( PANEL, "m_iOpenSize", 		"OpenSize" )

AccessorFunc( PANEL, "m_fOpenTime", 		"OpenTime" )



--[[---------------------------------------------------------

   Name: Init

-----------------------------------------------------------]]

function PANEL:Init()

	

	self.m_bOpened = false

	

	self:SetOpenSize( 100 )

	self:SetOpenTime( 0.3 )

	self:SetPaintBackground( false )

	self:SetSize( 0, 0 )

	

	self.ToggleButton = vgui.Create( "DButton", self:GetParent() )

	self.ToggleButton:SetSize( 16, 16 )

	self.ToggleButton:SetText( "::" )

	self.ToggleButton.DoClick = function()

	

		self:Toggle()

		

	end

	

	self.ToggleButton.Think = function()

	

		self.ToggleButton:CenterHorizontal()

		self.ToggleButton.y = self.y - 8

		

	end	

	

end



function PANEL:OnRemove()



	self.ToggleButton:Remove()

	

end



function PANEL:Think()



	local w, h = self:GetParent():GetSize()

	self:SetPos( 0, h - self:GetTall() )

	self:SetWide( w )



end



function PANEL:Toggle()



	if ( self.m_bOpened ) then

		self:Close()

	else

		self:Open()

	end



end



function PANEL:Open()



	if ( self.m_bOpened == true ) then return end

	

	self.m_bOpened = true	

	self:SizeTo( self:GetWide(), self.m_iOpenSize, self.m_fOpenTime )

	self.ToggleButton:MoveToFront()



end



function PANEL:Close()



	if ( self.m_bOpened == false ) then return end

	

	self.m_bOpened = false	

	self:SizeTo( self:GetWide(), 0, self.m_fOpenTime )

	self.ToggleButton:MoveToFront()

	

end





derma.DefineControl( "DDrawer", "", PANEL, "DPanel" )

