local AS, L, S, R = unpack(AddOnSkins)

if not AS:CheckAddOn('Atlas') then return end

function R:Atlas(event, addon)
	S:HandleFrame(AtlasFrame)
	S:HandleFrame(AtlasFrameSmall)

	-- Skin Elements
	S:HandleCloseButton(AtlasFrameCloseButton)
	S:HandleCloseButton(AtlasFrameSmallCloseButton)
	S:HandleButton(AtlasFrameOptionsButton)
	S:HandleButton(AtlasFrameSmallOptionsButton)
	S:HandleButton(AtlasSearchButton)
	S:HandleButton(AtlasSearchClearButton)
	S:HandleButton(AtlasSwitchButton)
	S:HandleDropDownBox(AtlasFrameDropDown)
	S:HandleDropDownBox(AtlasFrameDropDownType)
	S:HandleDropDownBox(AtlasFrameSmallDropDown)
	S:HandleDropDownBox(AtlasFrameSmallDropDownType)
	S:HandleEditBox(AtlasSearchEditBox)
	S:HandleScrollBar(AtlasScrollBarScrollBar)

	--Reposition Elements
	AtlasFrameCloseButton:ClearAllPoints()
	AtlasFrameCloseButton:SetPoint('TOPRIGHT', AtlasFrame, 'TOPRIGHT', -5, -5)
	AtlasFrameSmallCloseButton:ClearAllPoints()
	AtlasFrameSmallCloseButton:SetPoint('TOPRIGHT', AtlasFrameSmall, 'TOPRIGHT', -5, -5)
	AtlasFrameCollapseButton:ClearAllPoints()
	AtlasFrameCollapseButton:SetPoint('BOTTOM', AtlasFrame, 'BOTTOM', 0, 12)
	AtlasFrameSmallExpandButton:ClearAllPoints()
	AtlasFrameSmallExpandButton:SetPoint('BOTTOMRIGHT', AtlasFrameSmall, 'BOTTOMRIGHT', -10, 10)
	AtlasFrameOptionsButton:ClearAllPoints()
	AtlasFrameOptionsButton:SetPoint('LEFT', AtlasFrameLockButton, 'RIGHT', 4, 0)
	AtlasFrameSmallOptionsButton:ClearAllPoints()
	AtlasFrameSmallOptionsButton:SetPoint('LEFT', AtlasFrameSmallLockButton, 'RIGHT', 4, 0)
	AtlasFrameLockButton:ClearAllPoints()
	AtlasFrameLockButton:SetPoint('TOPLEFT', AtlasFrame, 'TOPLEFT', 5, -5)
	AtlasFrameSmallLockButton:ClearAllPoints()
	AtlasFrameSmallLockButton:SetPoint('TOPLEFT', AtlasFrameSmall, 'TOPLEFT', 10, -10)
	AtlasSearchClearButton:ClearAllPoints()
	AtlasSearchClearButton:SetPoint('RIGHT', AtlasSwitchButton, 'LEFT', -3, 0)
	AtlasSearchButton:ClearAllPoints()
	AtlasSearchButton:SetPoint('RIGHT', AtlasSearchClearButton, 'LEFT', -3, 0)
	AtlasSearchEditBox:ClearAllPoints()
	AtlasSearchEditBox:SetPoint('BOTTOM', AtlasFrame, 'BOTTOM', 95, 7)
	AtlasSwitchButton:ClearAllPoints()
	AtlasSwitchButton:SetPoint('BOTTOMRIGHT', AtlasFrame, 'BOTTOMRIGHT', -10, 10)
end

AS:RegisterSkin('Atlas', R.Atlas)
