<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="viv.xsl"?>

<doc>
	<methods group = "general">
		<constant name = "NULL" type = "int" value = "0"/>
		<method name = "round" return-type = "int">
			<param type = "real"/>
		</method>
		<method name = "trunc" return-type = "int">
			<param type = "real"/>
		</method>
		<method name = "debug" return-type = "int">
			<param name = "s" type = "string"/>
			<param name = "..." type = "mixed"/>
		</method>	
		<method name = "rand" return-type = "int">
			<description>
				Random number
			</description>
		</method>
		<method name = "srand" return-type = "int">
			<param type = "int"/>
			<description>
				Seed random number generator
			</description>
		</method>
		<method name = "gettick" return-type = "int"/>
		<method name = "gettps" return-type = "int"/>
		<method name = "settps" return-type = "int">
			<param name = "tps" type = "int"/>
		</method>
		<method name = "clock" return-type = "int"/>
		<method name = "time" return-type = "int">
			<param name = "ms" type = "int" default = "" pass-by = "reference"/>
		</method>
		<method name = "reset">
			<description>
				Reset player
			</description>
		</method>
		<method name = "start">
			<description>
				Start player
			</description>
		</method>
		<method name = "stop">
			<description>
				Stop player
			</description>
		</method>
		<method name = "step">
			<description>
				Step player
			</description>
		</method>
		<method name = "checkpoint"/>
		<method name = "undo">
			<description>
				Undo to last checkpoint (?)
			</description>
		</method>
		<method name = "rgb">
			<param name = "red" type = "int"/>
			<param name = "green" type = "int"/>
			<param name = "blue" type = "int"/>
		</method>
	</methods>
	
	<methods group = "mathematical">
		<method name = "cos" return-type = "real">
			<param name = "rdegrees" type = "real"/>
		</method>
		<method name = "sin" return-type = "real">
			<param name = "rdegrees" type = "real"/>
		</method>
		<method name = "tan" return-type = "real">
			<param name = "rdegrees" type = "real"/>
		</method>
		<method name = "asin" return-type = "real">
			<param name = "r" type = "real"/>
		</method>
		<method name = "acos" return-type = "real">
			<param name = "r" type = "real"/>
		</method>
		<method name = "atan" return-type = "real">
			<param name = "r" type = "real"/>
		</method>
		<method name = "atan2" return-type = "real">
			<param name = "rx" type = "real"/>
			<param name = "ry" type = "real"/>
		</method>
		<method name = "abs" return-type = "real">
			<param name = "r" type = "real"/>
		</method>
		<method name = "ceil" return-type = "real">
			<param name = "r" type = "real"/>
		</method>
		<method name = "exp" return-type = "real">
			<param name = "r" type = "real"/>
		</method>
		<method name = "floor" return-type = "real">
			<param name = "r" type = "real"/>
		</method>
		<method name = "log" return-type = "real">
			<param name = "r" type = "real"/>
		</method>
		<method name = "log10" return-type = "real">
			<param name = "r" type = "real"/>
		</method>
		<method name = "pow" return-type = "real">
			<param name = "rx" type = "real"/>
			<param name = "ry" type = "real"/>
		</method>
		<method name = "sqrt" return-type = "real">
			<param name = "r" type = "real"/>
		</method>
	</methods>

	<methods group = "argument">
		<method name = "getArg" return-type = "int">
			<param name = "name" type = "string"/>
			<param name = "value" type = "string" pass-by = "reference"/>
		</method>
		<method name = "setArg" return-type = "int">
			<param name = "name" type = "string"/>
			<param name = "value" type = "string"/>
		</method>
		<method name = "getIntArg" return-type = "int">
			<param name = "name" type = "string"/>
			<param name = "value" type = "int" pass-by = "reference"/>
		</method>
		<method name = "setIntArg" return-type = "int">
			<param name = "name" type = "string"/>
			<param name = "value" type = "int"/>
		</method>
	</methods>

	<methods group = "miscellaneous">
		<method name = "setbackground" return-type = "int">
			<param name = "brush" type = "Brush"/>
		</method>
		<method name = "setviewport" return-type = "int">
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "w" type = "real"/>
			<param name = "h" type = "real"/>
			<param name = "keepaspect" type = "int"/>
		</method>
		<method name = "getURL" return-type = "int">
			<param name = "url" type = "string"/>
		</method>
		<method name = "wait" return-type = "int">
			<param name = "ticks" type = "int"/>
		</method>
	</methods>

	<methods group = "paths">
		<method name = "$A" return-type = "Path"> 
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "w" type = "real"/>
			<param name = "h" type = "real"/>
			<param name = "startAngle" type = "real"/>
			<param name = "theta" type = "real"/>
			<description>
				Arc path
			</description>
		</method>
		<method name = "$C" return-type = "Path">
			<param name = "font" type = "Font"/>
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "w" type = "real"/>
			<param name = "h" type = "real"/>
			<param name = "txt" type = "string"/>
			<description>
				Character path
			</description>
		</method>
		<method name = "$E" return-type = "Path">
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "w" type = "real"/>
			<param name = "h" type = "real"/>
			<description>
				Elliptical path
			</description>
		</method>
		<method name = "$L" return-type = "Path">
			<param name = "..." type = "real">
				List of pairs (x0, y0), (x1, y1), ...
			</param>
			<description>
				Line path
			</description>
		</method>
		<method name = "$P" return-type = "Path">
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "w" type = "real"/>
			<param name = "h" type = "real"/>
			<param name = "startAngle" type = "real"/>
			<param name = "theta" type = "real"/>
			<description>
				Pie path
			</description>
		</method>
		<method name = "$R" return-type = "Path">
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "w" type = "real"/>
			<param name = "h" type = "real"/>
			<description>
				Rectangular path
			</description>
		</method>
		<method name = "$S" return-type = "Path">
			<param name = "tension" type = "real"/>
			<param name = "..." type = "real">
				List of pairs (x0, y0), (x1, y1), ...
			</param>
			<description>
				Spline path
			</description>
		</method>
		<method name = "$closedpath" return-type = "Path">
			<param name = "path" type = "Path"/>
		</method>
		<method name = "$openpath" return-type = "Path">
			<param name = "path" type = "Path"/>
		</method>
		<method name = "$outlinepath" return-type = "Path">
			<param name = "path" type = "Path"/>
		</method>
	</methods>

	<!-- skipped: global event procedures -->

	<class name = "Arc" inherits = "GraphicalObject">
		<constructor>
			<param name = "layer" type = "Layer"/>
			<param name = "group" type = "Group"/>
			<param name = "quality" type = "int"/>
			<param name = "pen" type = "Pen"/>
			<param name = "brush" type = "Brush"/>
			<param name = "closed" type = "int"/>
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "w" type = "real"/>
			<param name = "h" type = "real"/>
			<param name = "startangle" type = "real"/>
			<param name = "theta" type = "real"/>
			<param name = "txtbrush" type = "Brush" default = "0"/>
			<param name = "font" type = "Font" default = "0"/>
			<param name = "txt" type = "string" default = "0"/>
			<param name = "..." type = "mixed"/>
		</constructor>
		<method name = "setstartangle" return-type = "Arc">
			<param name = "startangle" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
		<method name = "setstartangleR" return-type = "Arc">
			<param name = "dstartangle" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
		<method name = "settheta" return-type = "Arc">
			<param name = "theta" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
		<method name = "setthetaR" return-type = "Arc">
			<param name = "dtheta" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
	</class>

	<class name = "Bezier" inherits = "GraphicalObject">
		<constructor>
			<param name = "layer" type = "Layer"/>
			<param name = "group" type = "Group"/>
			<param name = "quality" type = "int"/>
			<param name = "pen" type = "Pen"/>
			<param name = "brush" type = "Brush"/>
			<param name = "closed" type = "int"/>
			<param name = "..." type = "real">
				List of pairs (x0, y0), (x1, y1), ...
			</param>
		</constructor>
		<method name = "setclosed" return-type = "Bezier">
			<param name = "closed" type = "int"/>
		</method>
		<method name = "setnpoints" return-type = "Bezier">
			<param name = "n" type = "int"/>
		</method>
		<method name = "setpoint" return-type = "Bezier">
			<param name = "index" type = "int"/>
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
		<method name = "setpointR" return-type = "Bezier">
			<param name = "index" type = "int"/>
			<param name = "dx" type = "real"/>
			<param name = "dy" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
	</class>

	<class name = "Brush">
		<constructor/>
		<method name = "setnull" return-type = "GraphicalObject"/>
		<method name = "setsolid" return-type = "GraphicalObject">
			<param name = "fgcolour" type = "int"/>
		</method>
		<method name = "sethatched" return-type = "GraphicalObject">
			<param name = "style" type = "int"/>
			<param name = "fgcolour" type = "int"/>
			<param name = "bgcolour" type = "int"/>
		</method>
		<method name = "setgradient" return-type = "GraphicalObject">
			<param name = "style" type = "int"/>
			<param name = "fgcolour" type = "int"/>
			<param name = "bgcolour" type = "int"/>
		</method>
		<method name = "settexture" return-type = "GraphicalObject">
			<param name = "url" type = "string"/>
			<param name = "w" type = "int" default = "0"/>
			<param name = "h" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>	
		<method name = "setbgcolour" return-type = "GraphicalObject">
			<param name = "bgcolour" type = "int"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
	</class>
	
	<class name = "Ellipse" inherits = "GraphicalObject">
		<constructor>
			<param name = "layer" type = "Layer"/>
			<param name = "group" type = "Group"/>
			<param name = "quality" type = "int"/>
			<param name = "pen" type = "Pen"/>
			<param name = "brush" type = "Brush"/>
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "w" type = "real"/>
			<param name = "h" type = "real"/>
			<param name = "txtbrush" type = "Brush" default = "0"/>
			<param name = "font" type = "Font" default = "0"/>
			<param name = "string" type = "string" default = "0"/>
			<param name = "..." type = "mixed"/>
		</constructor>
	</class>

	<class name = "Font">
		<constructor>
			<param name = "face" type = "string"/>
			<param name = "size" type = "int"/>
			<param name = "flags" type = "int" default = ""/>
		</constructor>
	</class>

	<class name = "GradientBrush" inherits = "Brush">
		<constructor>
			<param name = "style" type = "int"/>
			<param name = "fgcolour" type = "int"/>
			<param name = "bgcolour" type = "int"/>
		</constructor>
	</class>

	<class name = "GraphicalObject">
		<methods group = "gObj events">
			<method name = "eventEE" return-type = "int">
				<param name = "enter" type = "int"/>
				<param name = "x" type = "int"/>
				<param name = "y" type = "int"/>
			</method>
			<method name = "eventLB" return-type = "int">
				<param name = "down" type = "int"/>
				<param name = "x" type = "int"/>
				<param name = "y" type = "int"/>
			</method>
			<method name = "eventRB" return-type = "int">
				<param name = "down" type = "int"/>
				<param name = "x" type = "int"/>
				<param name = "y" type = "int"/>
			</method>
			<method name = "eventGRABBED" return-type = "int">
				<param name = "buttons" type = "int"/>
				<param name = "x" type = "int"/>
				<param name = "y" type = "int"/>
			</method>
			<method name = "eventKB" return-type = "int">
				<param name = "char" type = "int"/>
				<param name = "x" type = "int"/>
				<param name = "y" type = "int"/>
			</method>
			<method name = "eventUPDATED"/>
		</methods>
	
		<methods group = "gObj functions">
			<method name = "setcachehint" return-type  ="int">
				<param name = "hint" type = "hint"/>
			</method>
			<method name = "getlayer" return-type = "Layer"/>
			<method name = "setlayer" return-type = "int">
				<param name = "layer" type = "Layer"/>
			</method>
			<method name = "movetofront" return-type = "int"/>
			<method name = "movetoback" return-type = "int"/>
			<method name = "getx" return-type = "real"/>
			<method name = "gety" return-type = "real"/>
			<method name = "getw" return-type = "real"/>
			<method name = "geth" return-type = "real"/>
			<method name = "grab" return-type = "int"/>
			<method name = "ungrab" return-type = "int"/>
			<method name = "setquality" return-type = "int">
				<param name = "quality" type = "int"/>
			</method>
			<method name = "setbrush" return-type = "Brush">
				<param name = "brush" type = "Brush"/>
			</method>
			<method name = "settextbrush" return-type = "GraphicalObject">
				<param name = "brush" type = "Brush"/>
			</method>
			<method name = "settextoffset" return-type = "GraphicalObject">
				<param name = "x" type = "real"/>
				<param name = "y" type = "real"/>
			</method>
			<method name = "setclip" return-type = "GraphicalObject">
				<param name = "x" type = "real"/>
				<param name = "y" type = "real"/>
				<param name = "w" type = "real"/>
				<param name = "h" type = "real"/>
			</method>
			<method name = "setclipregion" return-type = "GraphicalObject">
				<param name = "region" type = "Region"/>
			</method>
			<method name = "setpostclip" return-type = "GraphicalObject">
				<param name = "x" type = "real"/>
				<param name = "y" type = "real"/>
				<param name = "w" type = "real"/>
				<param name = "h" type = "real"/>
			</method>
			<method name = "setpostclipregion" return-type = "GraphicalObject">
				<param name = "region" type = "Region"/>
			</method>
			<method name = "setfont" return-type = "GraphicalObject">
				<param name = "font" type = "Font"/>
			</method>
			<method name = "setpen" return-type = "GraphicalObject">
				<param name = "pen" type = "Pen"/>
			</method>
			<method name = "setpos" return-type = "GraphicalObject">
				<param name = "x" type = "real"/>
				<param name = "y" type = "real"/>
				<param name = "ticks" type = "int" default = "0"/>
				<param name = "interval" type = "int" default = "0"/>
				<param name = "wait" type = "int" default = "0"/>
			</method>
			<method name = "setsize" return-type = "GraphicalObject">
				<param name = "w" type = "real"/>
				<param name = "h" type = "real"/>
				<param name = "ticks" type = "int" default = "0"/>
				<param name = "interval" type = "int" default = "0"/>
				<param name = "wait" type = "int" default = "0"/>
			</method>
			<method name = "scale" return-type = "GraphicalObject">
				<param name = "sx" type = "real"/>
				<param name = "sy" type = "real"/>
				<param name = "ticks" type = "int" default = "0"/>
				<param name = "interval" type = "int" default = "0"/>
				<param name = "wait" type = "int" default = "0"/>
			</method>
			<method name = "settext" return-type = "GraphicalObject">
				<param name = "s" type = "string"/>
				<param name = "..." type = "mixed"/>
			</method>
			<method name = "settextalignment" return-type = "GraphicalObject">
				<param name = "halignment" type = "int"/>
				<param name = "valignment" type = "int"/>
			</method>
			<method name = "flash" return-type = "GraphicalObject">
				<param name = "brush" type = "Brush"/>
				<param name = "steps" type = "int"/>
				<param name = "interval" type = "int"/>
				<param name = "wait" type = "int"/>
			</method>
			<method name = "setopacity" return-type = "GraphicalObject">
				<param name = "opacity" type = "int"/>
				<param name = "ticks" type = "int" default = "0"/>
				<param name = "interval" type = "int" default = "0"/>
				<param name = "wait" type = "int" default = "0"/>
			</method>
			<method name = "translate" return-type = "GraphicalObject">
				<param name = "dx" type = "int"/>
				<param name = "dy" type = "int"/>
				<param name = "ticks" type = "int" default = "0"/>
				<param name = "interval" type = "int" default = "0"/>
				<param name = "wait" type = "int" default = "0"/>
			</method>
			<method name = "setrotation" return-type = "GraphicalObject">
				<param name = "pinx" type = "real"/>
				<param name = "piny" type = "real"/>
				<param name = "theta" type = "real"/>
				<param name = "ticks" type = "int" default = "0"/>
				<param name = "interval" type = "int" default = "0"/>
				<param name = "wait" type = "int" default = "0"/>
			</method>
			<method name = "rotate" return-type = "GraphicalObject">
				<param name = "dpinx" type = "real"/>
				<param name = "dpiny" type = "real"/>
				<param name = "dtheta" type = "real"/>
				<param name = "ticks" type = "int" default = "0"/>
				<param name = "interval" type = "int" default = "0"/>
				<param name = "wait" type = "int" default = "0"/>
			</method>
			<method name = "reset" return-type = "GraphicalObject"/>
			<method name = "update" return-type = "GraphicalObject"/>
			<method name = "settextureoffset" return-type = "GraphicalObject">
				<param name = "x" type = "real"/>
				<param name = "y" type = "real"/>
			</method>
		</methods>
	</class>

	<class name = "Group" inherits = "GraphicalObject">
		<constructor>
			<param name = "group" type = "Group" default = ""/>
		</constructor>
		<method name = "setmapping" return-type = "int">
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "w" type = "real"/>
			<param name = "h" type = "real"/>
			<param name = "vx" type = "real"/>
			<param name = "vy" type = "real"/>
			<param name = "vw" type = "real"/>
			<param name = "vh" type = "real"/>
		</method>	
		<method name = "setviewport" return-type = "int">
			<param name = "vx" type = "real"/>
			<param name = "vy" type = "real"/>
			<param name = "vw" type = "real"/>
			<param name = "vh" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
	</class>
	
	<class name = "HatchedBrush" inherits = "Brush">
		<constructor>
			<param name = "style" type = "int"/>
			<param name = "fgcolour" type = "int"/>
			<param name = "bgcolour" type = "int"/>
		</constructor>
	</class>

	<class name = "Image" inherits = "GraphicalObject">
		<constructor>
			<param name = "layer" type = "Layer"/>
			<param name = "group" type = "Group"/>
			<param name = "quality" type = "int"/>
			<param name = "url" type = "string"/>
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "w" type = "real"/>
			<param name = "h" type = "real"/>
		</constructor>
	</class>
	
	<class name = "Layer">
		<constructor>
			<param name = "z" type = "int"/>
			<param name = "cached" type = "int" default = "0"/>
			<param name = "transparentcolour" type = "int" default = "0"/>
		</constructor>
	</class>

	<class name = "Line" inherits = "GraphicalObject">
		<constructor>
			<param name = "layer" type = "Layer"/>
			<param name = "group" type = "Group"/>
			<param name = "quality" type = "int"/>
			<param name = "pen" type = "Pen"/>
			<param name = "..." type = "real">
				List of pairs (x0, y0), (x1, y1), ...
			</param>
		</constructor>
		<method name = "setnpoints" return-type = "Line">
			<param name = "n" type = "ints"/>
		</method>
		<method name = "setpoint" return-type = "Line">
			<param name = "index" type = "int"/>
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
		<method name = "setpointR" return-type = "Line">
			<param name = "index" type = "int"/>
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
	</class>

	<class name = "Path" />
	
	<class name = "Pen">
		<constructor/>
	</class>

	<class name = "Pie" inherits = "GraphicalObject">
		<constructor>
			<param name = "layer" type = "Layer"/>
			<param name = "group" type = "Group"/>
			<param name = "quality" type = "int"/>
			<param name = "pen" type = "Pen"/>
			<param name = "brush" type = "Brush"/>
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "w" type = "real"/>
			<param name = "h" type = "real"/>
			<param name = "angle" type = "real"/>
			<param name = "theta" type = "real"/>
			<param name = "txtbrush" type = "Brush"/>
			<param name = "font" type = "Font"/>
			<param name = "txt" type = "string"/>
			<param name = "..." type = "mixed"/>
		</constructor>
		<method name = "setstartangle" return-type = "Pie">
			<param name = "startangle" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "0" default = "0"/>
		</method>
		<method name = "setstartangleR" return-type = "Pie">
			<param name = "dstartangle" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "0" default = "0"/>
		</method>
		<method name = "settheta" return-type = "Pie">
			<param name = "theta" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "0" default = "0"/>
		</method>	
		<method name = "setthetaR" return-type = "Pie">
			<param name = "dtheta" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "0" default = "0"/>
		</method>	
	</class>

	<class name = "Polygon" inherits = "GraphicalObject">
		<constructor>
			<param name = "layer" type = "Layer"/>
			<param name = "group" type = "Group"/>
			<param name = "quality" type = "int"/>
			<param name = "pen" type = "Pen"/>
			<param name = "brush" type = "Brush"/>
			<param name = "..." type = "real">
				List of pairs (x0, y0), (x1, y1), ...
			</param>
		</constructor>
		<method name = "setpoint" return-type = "Polygon">
			<param name = "index" type = "int"/>
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
		<method name = "setpointR" return-type = "Polygon">
			<param name = "index" type = "int"/>
			<param name = "dx" type = "real"/>
			<param name = "dy" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
	</class>

	<class name = "Rectangle" inherits = "GraphicalObject">
		<constructor>
			<param name = "layer" type = "Layer"/>
			<param name = "group" type = "Group"/>
			<param name = "quality" type = "int"/>
			<param name = "pen" type = "Pen"/>
			<param name = "brush" type = "Brush"/>
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "w" type = "real"/>
			<param name = "h" type = "real"/>
			<param name = "txtbrush" type = "Brush" default = "0"/>
			<param name = "font" type = "Font" default = "0"/>
			<param name = "txt" type = "string" default = "0"/>
		</constructor>	
	</class> 

	<class name = "Region" />

	<class name = "Shape" inherits = "GraphicalObject">
		<constructor>
			<param name = "layer" type = "Layer"/>
			<param name = "group" type = "Group"/>
			<param name = "quality" type = "int"/>
			<param name = "pen" type = "Pen"/>
			<param name = "brush" type = "Brush"/>
			<param name = "path" type = "Path"/>
		</constructor>
	</class>	

	<class name = "SolidBrush" inherits = "Brush">
		<constructor>
			<param name = "fgcolour" type = "int"/>
		</constructor>
	</class>

	<class name = "SolidPen" inherits = "Pen">
		<constructor>
			<param name = "style" type = "int"/>
			<param name = "width" type = "int"/>
			<param name = "fgcolour" type = "int"/>
			<param name = "bgcolour" type = "int" default = ""/>
			<param name = "startcap" type = "int" default = ""/>
			<param name = "join" type = "int" default = ""/>
			<param name = "endcap" type = "int" default = ""/>
		</constructor>
	</class>
	
	<class name = "Spline" inherits = "GraphicalObject">
		<constructor>
			<param name = "layer" type = "Layer"/>
			<param name = "group" type = "Group"/>
			<param name = "quality" type = "int"/>
			<param name = "pen" type = "Pen"/>
			<param name = "brush" type = "Brush"/>
			<param name = "closed" type = "int"/>
			<param name = "tension" type = "real"/>
			<param name = "..." type = "real">
				List of pairs (x0, y0), (x1, y1), ...
			</param>
		</constructor>
		<method name = "setclosed" return-type = "Spline">
			<param name = "closed" type = "int"/>
		</method>
		<method name = "setnpoints" return-type = "Spline">
			<param name = "n" type = "int"/>
		</method>
		<method name = "setpoint" return-type = "Spline">
			<param name = "index" type = "int"/>
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
		<method name = "setpointR" return-type = "Spline">
			<param name = "index" type = "int"/>
			<param name = "dx" type = "real"/>
			<param name = "dy" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>
		<method name = "settension" return-type = "GraphicalObject">
			<param name = "tension" type = "real"/>
			<param name = "steps" type = "int" default = "0"/>
			<param name = "interval" type = "int" default = "0"/>
			<param name = "wait" type = "int" default = "0"/>
		</method>	
	</class>

	<class name = "String">
		<method name = "getlength" return-type = "int"/>
		<method name = "find" return-type = "int">
			<param name = "t" type = "string"/>
		</method>
		<method name = "format" return-type = "int">
			<param name = "fs" type = "string"/>
			<param name = "..." type = "mixed"/>
		</method>
		<method name = "left" return-type = "string">
			<param name = "cnt" type = "int"/>
		</method>
		<method name = "mid" return-type = "string">
			<param name = "pos" type = "int"/>
			<param name = "cnt" type = "int"/>
		</method>
		<method name = "rfind" return-type = "int">
			<param name = "t" type = "string"/>
		</method>
		<method name = "right" return-type = "string">
			<param name = "cnt" type = "int"/>
		</method>
	</class>

	<class name = "Text" inherits = "GraphicalObject">
		<constructor>
			<param name = "layer" type = "Layer"/>
			<param name = "group" type = "Group"/>
			<param name = "quality" type = "int"/>
			<param name = "x" type = "real"/>
			<param name = "y" type = "real"/>
			<param name = "txtbrush" type = "Brush" default = "0"/>
			<param name = "font" type = "Font" default = "0"/>
			<param name = "txt" type = "string" default = "0"/>
			<param name = "..." type = "mixed"/>
		</constructor>	
	</class>

	<class name = "TextureBrush" inherits = "Brush">
		<constructor>
			<param name = "url" type = "string"/>
			<param name = "w" type = "int" default = "0"/>
			<param name = "h" type = "int" default = "0"/>
		</constructor>
	</class>

	<class name = "TexturePen" inherits = "Pen">
		<constructor>
			<param name = "url" type = "string"/>
			<param name = "width" type = "int"/>
			<param name = "startcap" type = "int" default = ""/>
			<param name = "join" type = "int" default = ""/>
			<param name = "endcap" type = "int" default = ""/>
		</constructor>	
	</class>
</doc>
