--- Options scene.

--
-- Permission is hereby granted, free of charge, to any person obtaining
-- a copy of this software and associated documentation files (the
-- "Software"), to deal in the Software without restriction, including
-- without limitation the rights to use, copy, modify, merge, publish,
-- distribute, sublicense, and/or sell copies of the Software, and to
-- permit persons to whom the Software is furnished to do so, subject to
-- the following conditions:
--
-- The above copyright notice and this permission notice shall be
-- included in all copies or substantial portions of the Software.
--
-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--
-- [ MIT license: http://www.opensource.org/licenses/mit-license.php ]
--

-- Modules --
local button = require("corona_ui.widgets.button")
local DEBUG = require("DEBUG")
local persistence = require("corona_utils.persistence")
local scenes = require("corona_utils.scenes")

-- Corona modules --
local composer = require("composer")

-- Options scene --
local Scene = composer.newScene()

-- Create Scene --
function Scene:create ()
	button.Button_XY(self.view, 120, 70, 200, 50, scenes.WantsToGoBack, "Go Back")
	button.Button_XY(self.view, 120, 140, 200, 50, persistence.Wipe, "Wipe data")

	-- Populate with debug options, if available.
	if DEBUG then
		DEBUG("options", self.view)
	end
end

Scene:addEventListener("create")

-- Show Scene --
function Scene:show (event)
	if event.phase == "did" then
		scenes.SetListenFunc_GoBack()
	end
end

Scene:addEventListener("show")

-- Hide Scene --
function Scene:hide (event)
	if event.phase == "will" then
		scenes.SetListenFunc(nil)
	end
end

Scene:addEventListener("hide")

return Scene