docs updates

This commit is contained in:
Paul Liverman III 2016-08-22 18:19:58 -07:00
parent 37a2cc125b
commit e548456366
11 changed files with 179 additions and 61 deletions

View File

@ -48,6 +48,31 @@
--- LÖVE version.) --- LÖVE version.)
--- @treturn boolean Was the event handled? --- @treturn boolean Was the event handled?
--- **Optional**: Called from `pop.mousereleased()` if a mouse button was
--- pressed and then released over your element.
---
--- **Note**: Your element must be visible (`data.draw` is true) for this method
--- to be called.
--- @function clicked
--- @tparam integer x The x coordinate of the mouse click relative to the
--- element.
--- @tparam integer y The y coordinate of the mouse click relative to the
--- element.
--- @tparam ?string|integer button The mouse button clicked. (Type varies by
--- LÖVE version.)
--- @treturn boolean Was the event handled?
--- **Optional**: Called from `pop.mousereleased()` if a mouse button was
--- released over your element.
--- @function mousereleased
--- @tparam integer x The x coordinate of the mouse release relative to the
--- element.
--- @tparam integer y The y coordinate of the mouse release relative to the
--- element.
--- @tparam ?string|integer button The mouse button released. (Type varies by
--- LÖVE version.)
--- @treturn boolean Was the event handled?
--- The parent element of this element. --- The parent element of this element.
@ -76,15 +101,10 @@
pop.mousereleased = (x, y, button, element) -> -- @todo Document keypressed method
if element.clicked and element.data.draw -- @todo Document keyreleased method
clickedHandled = element\clicked x - element.data.x, y - element.data.y, button -- @todo Document textinput method
if element.mousereleased -- @todo Document debugDraw method
mousereleasedHandled = element\mousereleased x - element.data.x, y - element.data.y, button
-- if we clicked, we're focused!
if clickedHandled
pop.focused = element
pop.keypressed = (key) -> pop.keypressed = (key) ->
print "keypressed", key print "keypressed", key
@ -119,32 +139,3 @@ pop.textinput = (text) ->
pop.debugDraw = (element=pop.screen) -> pop.debugDraw = (element=pop.screen) ->
if element.debugDraw if element.debugDraw
element\debugDraw! element\debugDraw!
else
graphics.setLineWidth 1
graphics.setLineColor 0, 0, 0, 100
graphics.rectangle "fill", element.x, element.y, element.w, element.h
graphics.setColor 150, 150, 150, 150
graphics.rectangle "line", element.x, element.y, element.w, element.h
graphics.setColor 200, 200, 200, 255
graphics.print ".", element.x, element.y
for i = 1, #element.child
pop.debugDraw element.child[i]
pop.printElementTree = (element=pop.screen, depth=0) ->
cls = element.__class.__name
if cls == "text"
cls = cls .. " (\"#{element\getText!\gsub "\n", "\\n"}\")"
elseif cls == "box"
bg = element\getBackground!
if type(bg) == "table"
bg = "#{bg[1]}, #{bg[2]}, #{bg[3]}, #{bg[4]}"
cls = cls .. " (#{bg})"
print string.rep("-", depth) .. " #{cls}"
for i = 1, #element.child
pop.printElementTree element.child[i], depth + 1

View File

@ -32,6 +32,7 @@
<h2>Contents</h2> <h2>Contents</h2>
<ul> <ul>
<li><a href="#Issues">Issues</a></li>
<li><a href="#Methods">Methods</a></li> <li><a href="#Methods">Methods</a></li>
</ul> </ul>
@ -64,11 +65,18 @@
</ul> </ul>
<h2><a href="#Issues">Issues</a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap><a href="#element.new-todo5">element.new-todo5</a></td>
<td class="summary">if data, do stuff about it</td>
</tr>
</table>
<h2><a href="#Methods">Methods</a></h2> <h2><a href="#Methods">Methods</a></h2>
<table class="function_list"> <table class="function_list">
<tr> <tr>
<td class="name" nowrap><a href="#element.new">element.new (self, parent)</a></td> <td class="name" nowrap><a href="#element.new">element.new (self, @, @)</a></td>
<td class="summary">Constructor expects nothing?</td> <td class="summary">Constructor expects nothing, or a data table describing it.</td>
</tr> </tr>
</table> </table>
@ -76,15 +84,33 @@
<br/> <br/>
<h2 class="section-header "><a name="Issues"></a>Issues</h2>
<dl class="function">
<dt>
<a name = "element.new-todo5"></a>
<strong>element.new-todo5</strong>
</dt>
<dd>
if data, do stuff about it
</dd>
</dl>
<h2 class="section-header "><a name="Methods"></a>Methods</h2> <h2 class="section-header "><a name="Methods"></a>Methods</h2>
<dl class="function"> <dl class="function">
<dt> <dt>
<a name = "element.new"></a> <a name = "element.new"></a>
<strong>element.new (self, parent)</strong> <strong>element.new (self, @, @)</strong>
</dt> </dt>
<dd> <dd>
Constructor expects nothing? Constructor expects nothing, or a data table describing it.
<h3>Parameters:</h3> <h3>Parameters:</h3>
@ -94,7 +120,12 @@
</li> </li>
<li><span class="parameter">parent</span> <li><span class="parameter">@</span>
</li>
<li><span class="parameter">@</span>
@ -113,7 +144,7 @@
</div> <!-- id="main" --> </div> <!-- id="main" -->
<div id="about"> <div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i> <i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i>
<i style="float:right;">Last updated 2016-08-21 00:47:30 </i> <i style="float:right;">Last updated 2016-08-22 18:19:38 </i>
</div> <!-- id="about" --> </div> <!-- id="about" -->
</div> <!-- id="container" --> </div> <!-- id="container" -->
</body> </body>

View File

@ -79,7 +79,7 @@
</div> <!-- id="main" --> </div> <!-- id="main" -->
<div id="about"> <div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i> <i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i>
<i style="float:right;">Last updated 2016-08-21 00:47:30 </i> <i style="float:right;">Last updated 2016-08-22 18:19:38 </i>
</div> <!-- id="about" --> </div> <!-- id="about" -->
</div> <!-- id="container" --> </div> <!-- id="container" -->
</body> </body>

View File

@ -92,6 +92,16 @@
<td class="summary"><strong>Optional</strong>: Called from <code>pop.mousepressed()</code> if a mouse button was pressed <td class="summary"><strong>Optional</strong>: Called from <code>pop.mousepressed()</code> if a mouse button was pressed
over your element.</td> over your element.</td>
</tr> </tr>
<tr>
<td class="name" nowrap><a href="#clicked">clicked (x, y, button)</a></td>
<td class="summary"><strong>Optional</strong>: Called from <code>pop.mousereleased()</code> if a mouse button was
pressed and then released over your element.</td>
</tr>
<tr>
<td class="name" nowrap><a href="#mousereleased">mousereleased (x, y, button)</a></td>
<td class="summary"><strong>Optional</strong>: Called from <code>pop.mousereleased()</code> if a mouse button was
released over your element.</td>
</tr>
</table> </table>
<h2><a href="#Tables">Tables</a></h2> <h2><a href="#Tables">Tables</a></h2>
<table class="function_list"> <table class="function_list">
@ -285,6 +295,87 @@
</dd>
<dt>
<a name = "clicked"></a>
<strong>clicked (x, y, button)</strong>
</dt>
<dd>
<strong>Optional</strong>: Called from <code>pop.mousereleased()</code> if a mouse button was
pressed and then released over your element. </p>
<p> <strong>Note</strong>: Your element must be visible (<code>data.draw</code> is true) for this method
to be called.
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">x</span>
<span class="types"><span class="type">integer</span></span>
The x coordinate of the mouse click relative to the
element.
</li>
<li><span class="parameter">y</span>
<span class="types"><span class="type">integer</span></span>
The y coordinate of the mouse click relative to the
element.
</li>
<li><span class="parameter">button</span>
<span class="types"><a class="type" href="http://www.lua.org/manual/5.1/manual.html#5.4">string</a> or <span class="type">integer</span></span>
The mouse button clicked. (Type varies by
LÖVE version.)
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">boolean</span></span>
Was the event handled?
</ol>
</dd>
<dt>
<a name = "mousereleased"></a>
<strong>mousereleased (x, y, button)</strong>
</dt>
<dd>
<strong>Optional</strong>: Called from <code>pop.mousereleased()</code> if a mouse button was
released over your element.
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">x</span>
<span class="types"><span class="type">integer</span></span>
The x coordinate of the mouse release relative to the
element.
</li>
<li><span class="parameter">y</span>
<span class="types"><span class="type">integer</span></span>
The y coordinate of the mouse release relative to the
element.
</li>
<li><span class="parameter">button</span>
<span class="types"><a class="type" href="http://www.lua.org/manual/5.1/manual.html#5.4">string</a> or <span class="type">integer</span></span>
The mouse button released. (Type varies by
LÖVE version.)
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">boolean</span></span>
Was the event handled?
</ol>
</dd> </dd>
</dl> </dl>
<h2 class="section-header "><a name="Tables"></a>Tables</h2> <h2 class="section-header "><a name="Tables"></a>Tables</h2>
@ -395,7 +486,7 @@
</div> <!-- id="main" --> </div> <!-- id="main" -->
<div id="about"> <div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i> <i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i>
<i style="float:right;">Last updated 2016-08-21 00:47:30 </i> <i style="float:right;">Last updated 2016-08-22 18:19:38 </i>
</div> <!-- id="about" --> </div> <!-- id="about" -->
</div> <!-- id="container" --> </div> <!-- id="container" -->
</body> </body>

View File

@ -71,7 +71,7 @@
</div> <!-- id="main" --> </div> <!-- id="main" -->
<div id="about"> <div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i> <i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i>
<i style="float:right;">Last updated 2016-08-21 00:47:30 </i> <i style="float:right;">Last updated 2016-08-22 18:19:38 </i>
</div> <!-- id="about" --> </div> <!-- id="about" -->
</div> <!-- id="container" --> </div> <!-- id="container" -->
</body> </body>

View File

@ -665,7 +665,7 @@ table.insert element.parent, element.parent\removeChild(element),
</div> <!-- id="main" --> </div> <!-- id="main" -->
<div id="about"> <div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i> <i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i>
<i style="float:right;">Last updated 2016-08-21 00:47:30 </i> <i style="float:right;">Last updated 2016-08-22 18:19:38 </i>
</div> <!-- id="about" --> </div> <!-- id="about" -->
</div> <!-- id="container" --> </div> <!-- id="container" -->
</body> </body>

View File

@ -125,7 +125,7 @@
</div> <!-- id="main" --> </div> <!-- id="main" -->
<div id="about"> <div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i> <i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.3</a></i>
<i style="float:right;">Last updated 2016-08-21 00:47:30 </i> <i style="float:right;">Last updated 2016-08-22 18:19:38 </i>
</div> <!-- id="about" --> </div> <!-- id="about" -->
</div> <!-- id="container" --> </div> <!-- id="container" -->
</body> </body>

View File

@ -6,7 +6,12 @@ do
} }
_base_0.__index = _base_0 _base_0.__index = _base_0
_class_0 = setmetatable({ _class_0 = setmetatable({
__init = function(self, parent) end, __init = function(self, parent, data)
if data == nil then
data = { }
end
self.parent, self.data = parent, data
end,
__base = _base_0, __base = _base_0,
__name = "element" __name = "element"
}, { }, {

View File

@ -4,9 +4,9 @@
--- @license The MIT License (MIT) --- @license The MIT License (MIT)
class element class element
--- Constructor expects nothing? --- Constructor expects nothing, or a data table describing it.
new: (parent) => new: (@parent, @data={}) =>
--do stuff --- @todo if data, do stuff about it
setSize: => setSize: =>
--do more stuff! --do more stuff!

View File

@ -248,11 +248,11 @@ pop.debugDraw = function(element)
else else
graphics.setLineWidth(1) graphics.setLineWidth(1)
graphics.setLineColor(0, 0, 0, 100) graphics.setLineColor(0, 0, 0, 100)
graphics.rectangle("fill", element.x, element.y, element.w, element.h) graphics.rectangle("fill", element.data.x, element.data.y, element.data.w, element.data.h)
graphics.setColor(150, 150, 150, 150) graphics.setColor(150, 150, 150, 150)
graphics.rectangle("line", element.x, element.y, element.w, element.h) graphics.rectangle("line", element.data.x, element.data.y, element.data.w, element.data.h)
graphics.setColor(200, 200, 200, 255) graphics.setColor(200, 200, 200, 255)
graphics.print(".", element.x, element.y) graphics.print(".", element.data.x, element.data.y)
end end
for i = 1, #element.child do for i = 1, #element.child do
pop.debugDraw(element.child[i]) pop.debugDraw(element.child[i])

View File

@ -142,7 +142,7 @@ pop.create = (element, parent=pop.screen, ...) ->
element = pop.elements[element](parent, ...) element = pop.elements[element](parent, ...)
insert parent.child, element insert parent.child, element
insert parent.data.child, element.data insert parent.data.child, element.data
element.parent = parent element.parent = parent --this should already have been set by the element, this is here as a precaution
element.data.parent = parent.data element.data.parent = parent.data
-- if explicitly no parent, just create the element -- if explicitly no parent, just create the element
elseif parent == false elseif parent == false
@ -154,7 +154,7 @@ pop.create = (element, parent=pop.screen, ...) ->
element = pop.elements[element](pop.screen, parent, ...) element = pop.elements[element](pop.screen, parent, ...)
insert pop.screen.child, element insert pop.screen.child, element
insert pop.screen.data.child, element.data insert pop.screen.data.child, element.data
element.parent = pop.screen element.parent = pop.screen --this should already have been set by the element, this is here as a precaution
element.data.parent = pop.screen.data element.data.parent = pop.screen.data
return element return element
@ -369,11 +369,11 @@ pop.debugDraw = (element=pop.screen) ->
else else
graphics.setLineWidth 1 graphics.setLineWidth 1
graphics.setLineColor 0, 0, 0, 100 graphics.setLineColor 0, 0, 0, 100
graphics.rectangle "fill", element.x, element.y, element.w, element.h graphics.rectangle "fill", element.data.x, element.data.y, element.data.w, element.data.h
graphics.setColor 150, 150, 150, 150 graphics.setColor 150, 150, 150, 150
graphics.rectangle "line", element.x, element.y, element.w, element.h graphics.rectangle "line", element.data.x, element.data.y, element.data.w, element.data.h
graphics.setColor 200, 200, 200, 255 graphics.setColor 200, 200, 200, 255
graphics.print ".", element.x, element.y graphics.print ".", element.data.x, element.data.y
for i = 1, #element.child for i = 1, #element.child
pop.debugDraw element.child[i] pop.debugDraw element.child[i]