Luanux Alpha stage R2 Readme
Luanux is a windowing system by TacticalPenguin.

Features of Luanux:
-Windows
-Windows can be minimized and closed and minimized
-Windows also have a corresponding bar in a menu bar
-Windows are draggable
-Seperate workspaces (like linux)
-Each workspace can have up to 6 windows (this number can be changed in settings.txt)
-Number of workspaces can be set in settings.txt (as high as you want)
-Start menu which allows you to launch applications
-Uses coroutines for multitasking
-Colors for virtually everything can be set in settings.txt

Controls:
Circle - Add a new test window (demo only to demonstrate windows)
Cross - Click something, drag windows
L/R - Change workspace
Analog - Move cursor
Up/Down - Change selection
Start - Exit

Changelog:
Alpha R2:
-Implemented coroutines
-Added startbar with filebrowser, soon to become application launcher
-Rewrote menu bar for better efficiency, now blits one image for the menu bar no matter how many windows are open instead of an image for each open window
-Put luanux website up, http://luanux.psptuts.net

Questions/before reporting a bug:
Q: Why did you make this?
A: I was bored one day.

Q: Why the name?
A: Because I wanted an excuse to have penguins in it. Luanux = Linux fused with lua. Linux's mascot is a penguin. Follow the trail.

Q: How can I add my own windows?
A:
1. Learn lua. 
2. See documentation. http://luanux.psptuts.net

Q: When I have a lot of windows open, it slows down. Why?
A: Because it blits 2 images per window and multiply that by 6 windows plus the two it already blits means it's blitting 14 images with 6 windows open.
If you know anything about programming you know that blitting lots of images slows stuff down.

Q: Why doesn't it have *insert feature here*?
A: Because I don't think it needs it or because I haven't coded it yet. It's still in alpha stages, remember?

Q: I found a bug. Where can I report it?
A: If it's not that multiple windows will close when their close buttons are all lined up from one press of the X button, then you can either:
-PM me on forums.qj.net (tacticalpenguin)
-Email me (tacticalpenguinatgmaildotcom)
-IM me (aim: tacticalpenguin3)

Q: I want to help in some way. What can I do?
A: Contact me and we'll figure somethin out. (see contact info above)

Documentation (soon there'll be better online documentation):
	Functions:
	returns function(type argument,type argument)

	nil drawRect(image target,number x,number y,number width,number height,userdata color)
		-Draws rectangle

	bool cisover(table object)
		-Returns true if the cursor tip is over the provided object, otherwise returns false
		-object must be a table with x,y,w,h values

	nil newwindow(number x,number y,number width,number height,number workspace,string name,function process)
		-Creates a new window with the given name and in the given workspace
		-For the process field put the name of a function minus the parenthesis, no quotes.
		-Said process is what the window executes each loop.

	nil alert(string alertmessage)
		-Causes an alert box telling the user the alertmessage.
		-Can be exited by X being pressed

	nil runOS()
		-Processes windows, menubar, cursor etc.
		-Is needed for everything to run
	
	Variables:
	See settings.txt for color variables and some other setting-like variables
	_c
		-Table, used as the cursor
		-Has fields x,y,w,h,img

	_bgimg
		-An image with the background and menubar on it

	_menubar
		-Table used for menu bar
		-Has fields x,y,w,h,img

	_windows
		-Table used for information of windows
		-Contains subtables each with the following fields:
		number x,number y,number w,number h,number ws,string name,image img,image bimg,function process,bool show
	
	_processes
		-Table for users to put their window functions/processes in
		-Has nothing in it at start
		-To add a function to it simply do this:
		function _processes.myfunctionname()
			--function stuff
		end
		-and then for the process of your window use
		_processes.myfunctionname
	
	_cworkspace
		-Number indicating current workspace
