2016-06-21 05:52:44 +00:00
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
< html >
< meta http-equiv = "Content-Type" content = "text/html; charset=UTF-8" / >
< head >
< title > Documentation< / title >
< link rel = "stylesheet" href = "../ldoc.css" type = "text/css" / >
< / head >
< body >
< div id = "container" >
< div id = "product" >
< div id = "product_logo" > < / div >
< div id = "product_name" > < big > < b > < / b > < / big > < / div >
< div id = "product_description" > < / div >
< / div > <!-- id="product" -->
< div id = "main" >
<!-- Menu -->
< div id = "navigation" >
< br / >
< h1 > Pop.Box()< / h1 >
< ul >
< li > < a href = "../index.html" > Index< / a > < / li >
< / ul >
< h2 > Contents< / h2 >
< ul >
< li > < a href = "#Functions" > Functions< / a > < / li >
< li > < a href = "#Tables" > Tables< / a > < / li >
< li > < a href = "#Issues" > Issues< / a > < / li >
< / ul >
< h2 > Modules< / h2 >
< ul class = "$(kind=='Topics' and '' or 'nowrap'" >
< li > < strong > pop< / strong > < / li >
< li > < a href = "../modules/util.html" > util< / a > < / li >
< / ul >
< / div >
< div id = "content" >
< h1 > Module < code > pop< / code > < / h1 >
< p > The Pop.Box GUI itself.< / p >
< p >
< / p >
< h3 > Info:< / h3 >
< ul >
< li > < strong > Copyright< / strong > : Paul Liverman III (2015-2016)< / li >
< li > < strong > Release< / strong > : v0.0.0< / li >
< li > < strong > License< / strong > : The MIT License (MIT)< / li >
< / ul >
< h2 > < a href = "#Functions" > Functions< / a > < / h2 >
< table class = "function_list" >
< tr >
< td class = "name" nowrap > < a href = "#load" > load ()< / a > < / td >
< td class = "summary" > Loads elements, skins, extensions, and initializes < code > pop.screen< / code > .< / td >
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#create" > create (element, parent)< / a > < / td >
< td class = "summary" > Creates an element.< / td >
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#update" > update (dt, element)< / a > < / td >
2016-06-21 07:58:22 +00:00
< td class = "summary" > Event handler for < code > love.update()< / code > .< / td >
2016-06-21 05:52:44 +00:00
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#draw" > draw (element)< / a > < / td >
2016-06-21 07:58:22 +00:00
< td class = "summary" > Event handler for < code > love.draw()< / code > .< / td >
2016-06-21 05:52:44 +00:00
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#mousemoved" > mousemoved (x, y, dx, dy)< / a > < / td >
2016-06-21 07:58:22 +00:00
< td class = "summary" > Event handler for < code > love.mousemoved()< / code > .< / td >
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#mousepressed" > mousepressed (x, y, button, element)< / a > < / td >
< td class = "summary" > Event handler for < code > love.mousepressed()< / code > .< / td >
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#mousereleased" > mousereleased (x, y, button, element)< / a > < / td >
< td class = "summary" > Event handler for < code > love.mousereleased()< / code > .< / td >
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#keypressed" > keypressed (key)< / a > < / td >
< td class = "summary" > Event handler for < code > love.keypressed()< / code > .< / td >
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#keyreleased" > keyreleased (key)< / a > < / td >
< td class = "summary" > Event handler for < code > love.keyreleased()< / code > .< / td >
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#textinput" > textinput (text)< / a > < / td >
< td class = "summary" > Event handler for < code > love.textinput()< / code > .< / td >
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#skin" > skin (element, skin, depth)< / a > < / td >
< td class = "summary" > Applies skins to elements.< / td >
2016-06-21 05:52:44 +00:00
< / tr >
2016-06-21 19:31:42 +00:00
< tr >
< td class = "name" nowrap > < a href = "#debugDraw" > debugDraw (element)< / a > < / td >
< td class = "summary" > Draws simple rectangle outlines to debug placement of elements.< / td >
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#printElementTree" > printElementTree (element)< / a > < / td >
< td class = "summary" > Prints a basic structure of GUI elements with minimal info.< / td >
< / tr >
2016-06-21 05:52:44 +00:00
< / table >
< h2 > < a href = "#Tables" > Tables< / a > < / h2 >
< table class = "function_list" >
< tr >
< td class = "name" nowrap > < a href = "#pop" > pop< / a > < / td >
< td class = "summary" >
< / td >
< / tr >
< / table >
< h2 > < a href = "#Issues" > Issues< / a > < / h2 >
< table class = "function_list" >
< tr >
< td class = "name" nowrap > < a href = "#pop-todo1" > pop-todo1< / a > < / td >
< td class = "summary" > Find out what happens if someone requires the < code > init.lua< / code > / < code > init.moon< / code > file instead of the directory, add an error message for this.< / td >
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#load-todo2" > load-todo2< / a > < / td >
< td class = "summary" > Determine if extensions should have a reference saved (and the possibility of a load function?)
require into pop.extensions by filename< / td >
< / tr >
< tr >
< td class = "name" nowrap > < a href = "#mousemoved-todo3" > mousemoved-todo3< / a > < / td >
< td class = "summary" > Implement a way for an element to attach itself to < code > love.mousemoved()< / code > events?< / td >
< / tr >
2016-06-21 07:58:22 +00:00
< tr >
< td class = "name" nowrap > < a href = "#mousereleased-todo4" > mousereleased-todo4< / a > < / td >
< td class = "summary" > Figure out how to bring a focused element to the front of view (aka the first element in its parent's children).
(If I do it right here, the for loop above may break! I need to test/figure this out.)
NOTE this might cause an error in the above for loop!
basically, move focused element to front of its parent's child
element.parent\focusChild element
table.insert element.parent, element.parent\removeChild(element),< / td >
< / tr >
2016-06-21 05:52:44 +00:00
< / table >
< br / >
< br / >
< h2 class = "section-header " > < a name = "Functions" > < / a > Functions< / h2 >
< dl class = "function" >
< dt >
< a name = "load" > < / a >
< strong > load ()< / strong >
< / dt >
< dd >
Loads elements, skins, extensions, and initializes < code > pop.screen< / code > . < strong > IMPORTANT< / strong > : Intended to only be called once, and is automatically called when you require Pop.Box.
< h3 > See also:< / h3 >
< ul >
< a href = "../modules/pop.html#" > pop< / a >
< / ul >
< / dd >
< dt >
< a name = "create" > < / a >
< strong > create (element, parent)< / strong >
< / dt >
< dd >
Creates an element.
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > element< / span >
A string naming the element class to use.
< / li >
< li > < span class = "parameter" > parent< / span >
< em > Optional< / em > The parent element. If < code > false< / code > , an element is created with no parent. If < code > nil< / code > , defaults to < code > pop.screen< / code > .
(< strong > Note< / strong > : An element with no parent will not be handled by Pop.Box's event handlers unless you handle it explicitly.)
< / li >
< / ul >
< h3 > See also:< / h3 >
< ul >
< a href = "../modules/pop.html#" > pop< / a >
< / ul >
< / dd >
< dt >
< a name = "update" > < / a >
< strong > update (dt, element)< / strong >
< / dt >
< dd >
2016-06-21 07:58:22 +00:00
Event handler for < code > love.update()< / code > .
2016-06-21 05:52:44 +00:00
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > dt< / span >
The amount of time passed since the last call to update, in seconds.
< / li >
< li > < span class = "parameter" > element< / span >
< em > Optional< / em > The element to update. Defaults to < code > pop.screen< / code > (and loops through all its children).
< / li >
< / ul >
< / dd >
< dt >
< a name = "draw" > < / a >
< strong > draw (element)< / strong >
< / dt >
< dd >
2016-06-21 07:58:22 +00:00
Event handler for < code > love.draw()< / code > .
2016-06-21 05:52:44 +00:00
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > element< / span >
< em > Optional< / em > The element to draw. Defaults to < code > pop.screen< / code > (and loops through all its children).
< / li >
< / ul >
< / dd >
< dt >
< a name = "mousemoved" > < / a >
< strong > mousemoved (x, y, dx, dy)< / strong >
< / dt >
< dd >
2016-06-21 07:58:22 +00:00
Event handler for < code > love.mousemoved()< / code > . (*LÖVE >= 0.10.0*)
2016-06-21 05:52:44 +00:00
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > x< / span >
The x coordinate of the mouse.
< / li >
< li > < span class = "parameter" > y< / span >
The y coordinate of the mouse.
< / li >
< li > < span class = "parameter" > dx< / span >
The distance on the x axis the mouse was moved.
< / li >
< li > < span class = "parameter" > dy< / span >
The distance on the y axis the mouse was moved.
< / li >
< / ul >
2016-06-21 07:58:22 +00:00
< h3 > Returns:< / h3 >
< ol >
< code > true< / code > / < code > false< / code > : Was the event handled?
< / ol >
< / dd >
< dt >
< a name = "mousepressed" > < / a >
< strong > mousepressed (x, y, button, element)< / strong >
< / dt >
< dd >
Event handler for < code > love.mousepressed()< / code > .
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > x< / span >
The x coordinate of the mouse press.
< / li >
< li > < span class = "parameter" > y< / span >
The y coordinate of the mouse press.
< / li >
< li > < span class = "parameter" > button< / span >
The mouse button pressed.
< / li >
< li > < span class = "parameter" > element< / span >
< em > Optional< / em > The element to check for event handling. Defaults to < code > pop.screen< / code > (and loops through all its children).
< / li >
< / ul >
< h3 > Returns:< / h3 >
< ol >
< code > true< / code > / < code > false< / code > : Was the event handled?
< / ol >
< / dd >
< dt >
< a name = "mousereleased" > < / a >
< strong > mousereleased (x, y, button, element)< / strong >
< / dt >
< dd >
Event handler for < code > love.mousereleased()< / code > .
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > x< / span >
The x coordinate of the mouse release.
< / li >
< li > < span class = "parameter" > y< / span >
The y coordinate of the mouse release.
< / li >
< li > < span class = "parameter" > button< / span >
The mouse button released.
< / li >
< li > < span class = "parameter" > element< / span >
< em > Optional< / em > The element to check for event handling. Defaults to < code > pop.screen< / code > (and loops through all its children).
< / li >
< / ul >
< h3 > Returns:< / h3 >
< ol >
< li >
< code > true< / code > / < code > false< / code > : Was a click handled?< / li >
< li >
< code > true< / code > / < code > false< / code > : Was a mouse release handled?< / li >
< / ol >
< / dd >
< dt >
< a name = "keypressed" > < / a >
< strong > keypressed (key)< / strong >
< / dt >
< dd >
Event handler for < code > love.keypressed()< / code > .
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > key< / span >
The key that was pressed.
< / li >
< / ul >
< h3 > Returns:< / h3 >
< ol >
< code > true< / code > / < code > false< / code > : Was the event handled?
< / ol >
< / dd >
< dt >
< a name = "keyreleased" > < / a >
< strong > keyreleased (key)< / strong >
< / dt >
< dd >
Event handler for < code > love.keyreleased()< / code > .
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > key< / span >
The key that was released.
< / li >
< / ul >
< h3 > Returns:< / h3 >
< ol >
< code > true< / code > / < code > false< / code > : Was the event handled?
< / ol >
< / dd >
< dt >
< a name = "textinput" > < / a >
< strong > textinput (text)< / strong >
< / dt >
< dd >
Event handler for < code > love.textinput()< / code > .
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > text< / span >
The text that was typed.
< / li >
< / ul >
< h3 > Returns:< / h3 >
< ol >
< code > true< / code > / < code > false< / code > : Was the text input handled?
< / ol >
< / dd >
< dt >
< a name = "skin" > < / a >
< strong > skin (element, skin, depth)< / strong >
< / dt >
< dd >
Applies skins to elements. (< em > *NOTE^< / em > : This function will be rewritten and change at some point...)
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > element< / span >
The element to skin. Defaults to < code > pop.screen< / code > (and loops through all its children).
< / li >
< li > < span class = "parameter" > skin< / span >
The skin to use, can be a string or an actual skin object, defaults to a default skin that is part of Pop.Box.
< / li >
< li > < span class = "parameter" > depth< / span >
Can be an integer for how many levels to go skinning. Alternately, if < code > true< / code > , will skin all children.
< / li >
< / ul >
2016-06-21 05:52:44 +00:00
2016-06-21 19:31:42 +00:00
< / dd >
< dt >
< a name = "debugDraw" > < / a >
< strong > debugDraw (element)< / strong >
< / dt >
< dd >
Draws simple rectangle outlines to debug placement of elements.
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > element< / span >
The element to draw. Defaults to < code > pop.screen< / code > (and loops through all its children).
< / li >
< / ul >
< / dd >
< dt >
< a name = "printElementTree" > < / a >
< strong > printElementTree (element)< / strong >
< / dt >
< dd >
Prints a basic structure of GUI elements with minimal info.
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > element< / span >
The element to start at. Defaults to < code > pop.screen< / code > (and loops through all its children).
< / li >
< / ul >
2016-06-21 05:52:44 +00:00
< / dd >
< / dl >
< h2 class = "section-header " > < a name = "Tables" > < / a > Tables< / h2 >
< dl class = "function" >
< dt >
< a name = "pop" > < / a >
< strong > pop< / strong >
< / dt >
< dd >
< h3 > Fields:< / h3 >
< ul >
< li > < span class = "parameter" > elements< / span >
All GUI classes are stored here.
< / li >
< li > < span class = "parameter" > skins< / span >
All skins are stored here.
< / li >
< li > < span class = "parameter" > screen< / span >
The top level GUI element. Represents the game screen. Initialized in < code > pop.load()< / code >
< / li >
< li > < span class = "parameter" > focused< / span >
The currently focused GUI element (or false if none is focused).
< / li >
< / ul >
< h3 > See also:< / h3 >
< ul >
< a href = "../modules/pop.html#load" > pop.load< / a >
< / ul >
< / dd >
< / dl >
< h2 class = "section-header " > < a name = "Issues" > < / a > Issues< / h2 >
< dl class = "function" >
< dt >
< a name = "pop-todo1" > < / a >
< strong > pop-todo1< / strong >
< / dt >
< dd >
Find out what happens if someone requires the < code > init.lua< / code > / < code > init.moon< / code > file instead of the directory, add an error message for this.
< / dd >
< dt >
< a name = "load-todo2" > < / a >
< strong > load-todo2< / strong >
< / dt >
< dd >
Determine if extensions should have a reference saved (and the possibility of a load function?)
require into pop.extensions by filename
< / dd >
< dt >
< a name = "mousemoved-todo3" > < / a >
< strong > mousemoved-todo3< / strong >
< / dt >
< dd >
Implement a way for an element to attach itself to < code > love.mousemoved()< / code > events?
2016-06-21 07:58:22 +00:00
< / dd >
< dt >
< a name = "mousereleased-todo4" > < / a >
< strong > mousereleased-todo4< / strong >
< / dt >
< dd >
Figure out how to bring a focused element to the front of view (aka the first element in its parent's children).
(If I do it right here, the for loop above may break! I need to test/figure this out.)
NOTE this might cause an error in the above for loop!
basically, move focused element to front of its parent's child
element.parent\focusChild element
table.insert element.parent, element.parent\removeChild(element),
2016-06-21 05:52:44 +00:00
< / dd >
< / dl >
< / div > <!-- id="content" -->
< / div > <!-- id="main" -->
< div id = "about" >
< i > generated by < a href = "http://github.com/stevedonovan/LDoc" > LDoc 1.4.3< / a > < / i >
2016-06-21 19:31:42 +00:00
< i style = "float:right;" > Last updated 2016-06-21 12:31:16 < / i >
2016-06-21 05:52:44 +00:00
< / div > <!-- id="about" -->
< / div > <!-- id="container" -->
< / body >
< / html >