--OSAboutWindow--


	__index = OSWindow

	type = "OSWindow"
	subtype = "OSAboutWindow"
	title = "About"
	entities = {}
	environment = nil
	canMaximise = false
	canMinimise = true
	isMinimised = false
	canClose = true
	hasFrame = true
	minWidth = 11
	minHeight = 5


	action = function(self, x, y)
	end

	local getCenter = function(_width, _length)
		return math.ceil((_width - _length) / 2)
	end

	new = function(self, _title, _version, _author, _path, _environment)
		local new = {}    -- the new instance
		setmetatable( new, {__index = OSWindow} )
		new.title = "About ".._title
		
		new.width = 20
		new.height = 11 + 1 --for the menu bar
		local w, h = OSServices.availableScreenSize()
		new.x = getCenter(w, new.width)
		new.y = getCenter(h, new.height) + 1
		new.id = OSServices.generateID()
		new.environment = _environment
		OSCurrentWindow = new
		local versionText = "Version ".._version
		new.canMaximise = false
		local versionLabel = OSLabel:new(getCenter(new.width, #versionText), 9, "Version ".._version)
		versionLabel.TextColour = colours.grey

		local copyrightLabel = OSLabel:new(4, 10, "Copyright 2013")
		copyrightLabel.TextColour = colours.lightGrey

		new.entities = {
			OSImageView:new(8, 2, _path.."/icon_l"),
			OSLabel:new(getCenter(new.width, #_title), 7, _title),
			
			versionLabel,
			copyrightLabel,
			OSLabel:new(getCenter(new.width, #_author)+1, 11, _author),
		}

		return new
	end