mirror of
https://github.com/TangentFoxy/Pop.Box.git
synced 2024-12-15 12:44:20 +00:00
docs updates + element wip
This commit is contained in:
parent
0f6c10a226
commit
fda0a340c9
@ -3,6 +3,10 @@
|
|||||||
--- **IMPORTANT**: Your class should inherit from *the* element class. This
|
--- **IMPORTANT**: Your class should inherit from *the* element class. This
|
||||||
--- means that any methods defined on that class need to be compatible with or
|
--- means that any methods defined on that class need to be compatible with or
|
||||||
--- overridden by your class!
|
--- overridden by your class!
|
||||||
|
---
|
||||||
|
--- **Note**: The event handling functions only know about children of
|
||||||
|
--- `pop.screen` or children of an element *you* have called Pop.Box's event
|
||||||
|
--- handlers on.
|
||||||
--- @see element
|
--- @see element
|
||||||
|
|
||||||
|
|
||||||
@ -18,20 +22,20 @@
|
|||||||
--- @treturn function wrapper A function to be called to create an element of
|
--- @treturn function wrapper A function to be called to create an element of
|
||||||
--- this class instead of using `pop.create()`.
|
--- this class instead of using `pop.create()`.
|
||||||
|
|
||||||
--- **Optional**: Called from `pop.update()` if `data.update` and a child of
|
--- **Optional**: Called from `pop.update()` if `data.update`. Use it for any
|
||||||
--- `pop.screen`. Use it for any time-based updates your element may need.
|
--- time-based updates your element may need.
|
||||||
--- @function update
|
--- @function update
|
||||||
--- @tparam number dt The amount of time elapsed since `update` was last called.
|
--- @tparam number dt The amount of time elapsed since `update` was last called.
|
||||||
|
|
||||||
--- **Optional**: Called from `pop.draw()` if `data.draw` and a child of
|
--- **Optional**: Called from `pop.draw()` if `data.draw`. Use it to draw your
|
||||||
--- `pop.screen`. Use it to draw your element.
|
--- element.
|
||||||
--- @function draw
|
--- @function draw
|
||||||
|
|
||||||
--- **Optional**: Called from `pop.mousemoved()` if in LOVE >= 0.10.0 and your
|
--- **Optional**: Called from `pop.mousemoved()` if in LOVE >= 0.10.0 and your
|
||||||
--- element is focused.
|
--- element is focused.
|
||||||
--- @function mousemoved
|
--- @function mousemoved
|
||||||
--- @tparam integer x The x coordinate of the mouse.
|
--- @tparam integer x The x coordinate of the mouse relative to the element.
|
||||||
--- @tparam integer y The y coordinate of the mouse.
|
--- @tparam integer y The y coordinate of the mouse relative to the element.
|
||||||
--- @tparam number dx The distance on the x axis the mouse was moved.
|
--- @tparam number dx The distance on the x axis the mouse was moved.
|
||||||
--- @tparam number dy The distance on the y axis the mouse was moved.
|
--- @tparam number dy The distance on the y axis the mouse was moved.
|
||||||
--- @treturn boolean Was the event handled?
|
--- @treturn boolean Was the event handled?
|
||||||
@ -42,8 +46,10 @@
|
|||||||
--- **Note**: Your element must be visible (`data.draw` is true) for this method
|
--- **Note**: Your element must be visible (`data.draw` is true) for this method
|
||||||
--- to be called.
|
--- to be called.
|
||||||
--- @function mousepressed
|
--- @function mousepressed
|
||||||
--- @tparam integer x The x coordinate of the mouse press.
|
--- @tparam integer x The x coordinate of the mouse press relative to the
|
||||||
--- @tparam integer y The y coordinate of the mouse press.
|
--- element.
|
||||||
|
--- @tparam integer y The y coordinate of the mouse press relative to the
|
||||||
|
--- element.
|
||||||
--- @tparam ?string|integer button The mouse button pressed. (Type varies by
|
--- @tparam ?string|integer button The mouse button pressed. (Type varies by
|
||||||
--- LÖVE version.)
|
--- LÖVE version.)
|
||||||
--- @treturn boolean Was the event handled?
|
--- @treturn boolean Was the event handled?
|
||||||
@ -78,7 +84,7 @@
|
|||||||
--- The parent element of this element.
|
--- The parent element of this element.
|
||||||
--- @tfield ?Element|false parent Parent element.
|
--- @tfield ?Element|false parent Parent element.
|
||||||
|
|
||||||
--- The child elements of this element.
|
--- The child element(s) of this element.
|
||||||
--- @tfield table child All child elements.
|
--- @tfield table child All child elements.
|
||||||
|
|
||||||
|
|
||||||
@ -87,7 +93,7 @@
|
|||||||
--- should be saved in this field. Ideally, any Pop.Box element can be
|
--- should be saved in this field. Ideally, any Pop.Box element can be
|
||||||
--- reconstructed from its data field.
|
--- reconstructed from its data field.
|
||||||
--- @table data
|
--- @table data
|
||||||
--- @tfield ?table|false parent The parent of this element's data field. This
|
--- @tfield ?table|false|nil parent The parent of this element's data field. This
|
||||||
--- will **not** be serialized. This is the *only* exception to all data being
|
--- will **not** be serialized. This is the *only* exception to all data being
|
||||||
--- serialized.
|
--- serialized.
|
||||||
--- @tfield table child All child elements' data fields.
|
--- @tfield table child All child elements' data fields.
|
||||||
|
@ -67,9 +67,33 @@
|
|||||||
<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, @, @)</a></td>
|
<td class="name" nowrap><a href="#element.new">element.new (parent, data)</a></td>
|
||||||
<td class="summary">Constructor expects nothing, or a data table describing it.</td>
|
<td class="summary">Constructor expects nothing, or a data table describing it.</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="name" nowrap><a href="#element.setSize">element.setSize (w, h)</a></td>
|
||||||
|
<td class="summary">Sets an element's width/height.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="name" nowrap><a href="#element.getSize">element.getSize (self)</a></td>
|
||||||
|
<td class="summary">Returns an element's width and height.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="name" nowrap><a href="#element.setWidth">element.setWidth (w)</a></td>
|
||||||
|
<td class="summary">Sets an element's width.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="name" nowrap><a href="#element.getWidth">element.getWidth (self)</a></td>
|
||||||
|
<td class="summary">Returns an element's width.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="name" nowrap><a href="#element.setHeight">element.setHeight (h)</a></td>
|
||||||
|
<td class="summary">Sets an element's height.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="name" nowrap><a href="#element.getHeight">element.getHeight (self)</a></td>
|
||||||
|
<td class="summary">Returns an element's height.</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<br/>
|
<br/>
|
||||||
@ -81,12 +105,74 @@
|
|||||||
<dl class="function">
|
<dl class="function">
|
||||||
<dt>
|
<dt>
|
||||||
<a name = "element.new"></a>
|
<a name = "element.new"></a>
|
||||||
<strong>element.new (self, @, @)</strong>
|
<strong>element.new (parent, data)</strong>
|
||||||
</dt>
|
</dt>
|
||||||
<dd>
|
<dd>
|
||||||
Constructor expects nothing, or a data table describing it.
|
Constructor expects nothing, or a data table describing it.
|
||||||
|
|
||||||
|
|
||||||
|
<h3>Parameters:</h3>
|
||||||
|
<ul>
|
||||||
|
<li><span class="parameter">parent</span>
|
||||||
|
<span class="types"><span class="type">Element</span> or <span class="type">false</span></span>
|
||||||
|
The parent element.
|
||||||
|
</li>
|
||||||
|
<li><span class="parameter">data</span>
|
||||||
|
<span class="types"><a class="type" href="http://www.lua.org/manual/5.1/manual.html#5.5">table</a></span>
|
||||||
|
[opt] The data (state) for this element.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Returns:</h3>
|
||||||
|
<ol>
|
||||||
|
|
||||||
|
<span class="types"><a class="type" href="../classes/element.html#">element</a></span>
|
||||||
|
self
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name = "element.setSize"></a>
|
||||||
|
<strong>element.setSize (w, h)</strong>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Sets an element's width/height.
|
||||||
|
|
||||||
|
|
||||||
|
<h3>Parameters:</h3>
|
||||||
|
<ul>
|
||||||
|
<li><span class="parameter">w</span>
|
||||||
|
<span class="types"><span class="type">integer</span></span>
|
||||||
|
[opt] Width.
|
||||||
|
</li>
|
||||||
|
<li><span class="parameter">h</span>
|
||||||
|
<span class="types"><span class="type">integer</span></span>
|
||||||
|
[opt] Height.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Returns:</h3>
|
||||||
|
<ol>
|
||||||
|
|
||||||
|
<span class="types"><a class="type" href="../classes/element.html#">element</a></span>
|
||||||
|
self
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name = "element.getSize"></a>
|
||||||
|
<strong>element.getSize (self)</strong>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Returns an element's width and height.
|
||||||
|
|
||||||
|
|
||||||
<h3>Parameters:</h3>
|
<h3>Parameters:</h3>
|
||||||
<ul>
|
<ul>
|
||||||
<li><span class="parameter">self</span>
|
<li><span class="parameter">self</span>
|
||||||
@ -94,18 +180,127 @@
|
|||||||
|
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
<li><span class="parameter">@</span>
|
</ul>
|
||||||
|
|
||||||
|
<h3>Returns:</h3>
|
||||||
|
<ol>
|
||||||
|
<li>
|
||||||
|
<span class="types"><span class="type">integer</span></span>
|
||||||
|
Width.</li>
|
||||||
|
<li>
|
||||||
|
<span class="types"><span class="type">integer</span></span>
|
||||||
|
Height.</li>
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name = "element.setWidth"></a>
|
||||||
|
<strong>element.setWidth (w)</strong>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Sets an element's width.
|
||||||
|
|
||||||
|
|
||||||
|
<h3>Parameters:</h3>
|
||||||
|
<ul>
|
||||||
|
<li><span class="parameter">w</span>
|
||||||
|
<span class="types"><span class="type">integer</span></span>
|
||||||
|
Width.
|
||||||
</li>
|
</li>
|
||||||
<li><span class="parameter">@</span>
|
</ul>
|
||||||
|
|
||||||
|
<h3>Returns:</h3>
|
||||||
|
<ol>
|
||||||
|
|
||||||
|
<span class="types"><a class="type" href="../classes/element.html#">element</a></span>
|
||||||
|
self
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name = "element.getWidth"></a>
|
||||||
|
<strong>element.getWidth (self)</strong>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Returns an element's width.
|
||||||
|
|
||||||
|
|
||||||
|
<h3>Parameters:</h3>
|
||||||
|
<ul>
|
||||||
|
<li><span class="parameter">self</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
<h3>Returns:</h3>
|
||||||
|
<ol>
|
||||||
|
|
||||||
|
<span class="types"><span class="type">integer</span></span>
|
||||||
|
Width.
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name = "element.setHeight"></a>
|
||||||
|
<strong>element.setHeight (h)</strong>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Sets an element's height.
|
||||||
|
|
||||||
|
|
||||||
|
<h3>Parameters:</h3>
|
||||||
|
<ul>
|
||||||
|
<li><span class="parameter">h</span>
|
||||||
|
<span class="types"><span class="type">integer</span></span>
|
||||||
|
Height.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Returns:</h3>
|
||||||
|
<ol>
|
||||||
|
|
||||||
|
<span class="types"><a class="type" href="../classes/element.html#">element</a></span>
|
||||||
|
self
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</dd>
|
||||||
|
<dt>
|
||||||
|
<a name = "element.getHeight"></a>
|
||||||
|
<strong>element.getHeight (self)</strong>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
Returns an element's height.
|
||||||
|
|
||||||
|
|
||||||
|
<h3>Parameters:</h3>
|
||||||
|
<ul>
|
||||||
|
<li><span class="parameter">self</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Returns:</h3>
|
||||||
|
<ol>
|
||||||
|
|
||||||
|
<span class="types"><span class="type">integer</span></span>
|
||||||
|
Height.
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -118,7 +313,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-09-07 20:53:10 </i>
|
<i style="float:right;">Last updated 2016-09-07 21:37:53 </i>
|
||||||
</div> <!-- id="about" -->
|
</div> <!-- id="about" -->
|
||||||
</div> <!-- id="container" -->
|
</div> <!-- id="container" -->
|
||||||
</body>
|
</body>
|
||||||
|
@ -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-09-07 20:53:10 </i>
|
<i style="float:right;">Last updated 2016-09-07 21:37:53 </i>
|
||||||
</div> <!-- id="about" -->
|
</div> <!-- id="about" -->
|
||||||
</div> <!-- id="container" -->
|
</div> <!-- id="container" -->
|
||||||
</body>
|
</body>
|
||||||
|
@ -60,6 +60,10 @@
|
|||||||
means that any methods defined on that class need to be compatible with or
|
means that any methods defined on that class need to be compatible with or
|
||||||
overridden by your class!</p>
|
overridden by your class!</p>
|
||||||
|
|
||||||
|
<p> <strong>Note</strong>: The event handling functions only know about children of
|
||||||
|
<code>pop.screen</code> or children of an element <em>you</em> have called Pop.Box's event
|
||||||
|
handlers on.</p>
|
||||||
|
|
||||||
|
|
||||||
<h2><a href="#Functions">Functions</a></h2>
|
<h2><a href="#Functions">Functions</a></h2>
|
||||||
<table class="function_list">
|
<table class="function_list">
|
||||||
@ -74,13 +78,11 @@
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="name" nowrap><a href="#update">update (dt)</a></td>
|
<td class="name" nowrap><a href="#update">update (dt)</a></td>
|
||||||
<td class="summary"><strong>Optional</strong>: Called from <code>pop.update()</code> if <code>data.update</code> and a child of
|
<td class="summary"><strong>Optional</strong>: Called from <code>pop.update()</code> if <code>data.update</code>.</td>
|
||||||
<code>pop.screen</code>.</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="name" nowrap><a href="#draw">draw ()</a></td>
|
<td class="name" nowrap><a href="#draw">draw ()</a></td>
|
||||||
<td class="summary"><strong>Optional</strong>: Called from <code>pop.draw()</code> if <code>data.draw</code> and a child of
|
<td class="summary"><strong>Optional</strong>: Called from <code>pop.draw()</code> if <code>data.draw</code>.</td>
|
||||||
<code>pop.screen</code>.</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="name" nowrap><a href="#mousemoved">mousemoved (x, y, dx, dy)</a></td>
|
<td class="name" nowrap><a href="#mousemoved">mousemoved (x, y, dx, dy)</a></td>
|
||||||
@ -118,7 +120,7 @@
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="name" nowrap><a href="#child">child</a></td>
|
<td class="name" nowrap><a href="#child">child</a></td>
|
||||||
<td class="summary">The child elements of this element.</td>
|
<td class="summary">The child element(s) of this element.</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
@ -184,8 +186,8 @@
|
|||||||
<strong>update (dt)</strong>
|
<strong>update (dt)</strong>
|
||||||
</dt>
|
</dt>
|
||||||
<dd>
|
<dd>
|
||||||
<strong>Optional</strong>: Called from <code>pop.update()</code> if <code>data.update</code> and a child of
|
<strong>Optional</strong>: Called from <code>pop.update()</code> if <code>data.update</code>. Use it for any
|
||||||
<code>pop.screen</code>. Use it for any time-based updates your element may need.
|
time-based updates your element may need.
|
||||||
|
|
||||||
|
|
||||||
<h3>Parameters:</h3>
|
<h3>Parameters:</h3>
|
||||||
@ -206,8 +208,8 @@
|
|||||||
<strong>draw ()</strong>
|
<strong>draw ()</strong>
|
||||||
</dt>
|
</dt>
|
||||||
<dd>
|
<dd>
|
||||||
<strong>Optional</strong>: Called from <code>pop.draw()</code> if <code>data.draw</code> and a child of
|
<strong>Optional</strong>: Called from <code>pop.draw()</code> if <code>data.draw</code>. Use it to draw your
|
||||||
<code>pop.screen</code>. Use it to draw your element.
|
element.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -229,11 +231,11 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li><span class="parameter">x</span>
|
<li><span class="parameter">x</span>
|
||||||
<span class="types"><span class="type">integer</span></span>
|
<span class="types"><span class="type">integer</span></span>
|
||||||
The x coordinate of the mouse.
|
The x coordinate of the mouse relative to the element.
|
||||||
</li>
|
</li>
|
||||||
<li><span class="parameter">y</span>
|
<li><span class="parameter">y</span>
|
||||||
<span class="types"><span class="type">integer</span></span>
|
<span class="types"><span class="type">integer</span></span>
|
||||||
The y coordinate of the mouse.
|
The y coordinate of the mouse relative to the element.
|
||||||
</li>
|
</li>
|
||||||
<li><span class="parameter">dx</span>
|
<li><span class="parameter">dx</span>
|
||||||
<span class="types"><span class="type">number</span></span>
|
<span class="types"><span class="type">number</span></span>
|
||||||
@ -272,11 +274,13 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li><span class="parameter">x</span>
|
<li><span class="parameter">x</span>
|
||||||
<span class="types"><span class="type">integer</span></span>
|
<span class="types"><span class="type">integer</span></span>
|
||||||
The x coordinate of the mouse press.
|
The x coordinate of the mouse press relative to the
|
||||||
|
element.
|
||||||
</li>
|
</li>
|
||||||
<li><span class="parameter">y</span>
|
<li><span class="parameter">y</span>
|
||||||
<span class="types"><span class="type">integer</span></span>
|
<span class="types"><span class="type">integer</span></span>
|
||||||
The y coordinate of the mouse press.
|
The y coordinate of the mouse press relative to the
|
||||||
|
element.
|
||||||
</li>
|
</li>
|
||||||
<li><span class="parameter">button</span>
|
<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>
|
<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>
|
||||||
@ -394,7 +398,7 @@
|
|||||||
<h3>Fields:</h3>
|
<h3>Fields:</h3>
|
||||||
<ul>
|
<ul>
|
||||||
<li><span class="parameter">parent</span>
|
<li><span class="parameter">parent</span>
|
||||||
<span class="types"><a class="type" href="http://www.lua.org/manual/5.1/manual.html#5.5">table</a> or <span class="type">false</span></span>
|
<span class="types"><a class="type" href="http://www.lua.org/manual/5.1/manual.html#5.5">table</a>, <span class="type">false</span> or <span class="type">nil</span></span>
|
||||||
The parent of this element's data field. This
|
The parent of this element's data field. This
|
||||||
will <strong>not</strong> be serialized. This is the <em>only</em> exception to all data being
|
will <strong>not</strong> be serialized. This is the <em>only</em> exception to all data being
|
||||||
serialized.
|
serialized.
|
||||||
@ -464,7 +468,7 @@
|
|||||||
<strong>child</strong>
|
<strong>child</strong>
|
||||||
</dt>
|
</dt>
|
||||||
<dd>
|
<dd>
|
||||||
The child elements of this element.
|
The child element(s) of this element.
|
||||||
|
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
@ -486,7 +490,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-09-07 20:53:10 </i>
|
<i style="float:right;">Last updated 2016-09-07 21:37:53 </i>
|
||||||
</div> <!-- id="about" -->
|
</div> <!-- id="about" -->
|
||||||
</div> <!-- id="container" -->
|
</div> <!-- id="container" -->
|
||||||
</body>
|
</body>
|
||||||
|
@ -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-09-07 20:53:10 </i>
|
<i style="float:right;">Last updated 2016-09-07 21:37:53 </i>
|
||||||
</div> <!-- id="about" -->
|
</div> <!-- id="about" -->
|
||||||
</div> <!-- id="container" -->
|
</div> <!-- id="container" -->
|
||||||
</body>
|
</body>
|
||||||
|
@ -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-09-07 20:53:10 </i>
|
<i style="float:right;">Last updated 2016-09-07 21:37:53 </i>
|
||||||
</div> <!-- id="about" -->
|
</div> <!-- id="about" -->
|
||||||
</div> <!-- id="container" -->
|
</div> <!-- id="container" -->
|
||||||
</body>
|
</body>
|
||||||
|
@ -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-09-07 20:53:10 </i>
|
<i style="float:right;">Last updated 2016-09-07 21:37:53 </i>
|
||||||
</div> <!-- id="about" -->
|
</div> <!-- id="about" -->
|
||||||
</div> <!-- id="container" -->
|
</div> <!-- id="container" -->
|
||||||
</body>
|
</body>
|
||||||
|
@ -2,7 +2,32 @@ local element
|
|||||||
do
|
do
|
||||||
local _class_0
|
local _class_0
|
||||||
local _base_0 = {
|
local _base_0 = {
|
||||||
setSize = function(self) end
|
setSize = function(self, w, h)
|
||||||
|
if w then
|
||||||
|
self.data.w = w
|
||||||
|
end
|
||||||
|
if h then
|
||||||
|
self.data.h = h
|
||||||
|
end
|
||||||
|
return self
|
||||||
|
end,
|
||||||
|
getSize = function(self)
|
||||||
|
return self.data.w, self.data.h
|
||||||
|
end,
|
||||||
|
setWidth = function(self, w)
|
||||||
|
self.data.w = w
|
||||||
|
return self
|
||||||
|
end,
|
||||||
|
getWidth = function(self)
|
||||||
|
return self.data.w
|
||||||
|
end,
|
||||||
|
setHeight = function(self, h)
|
||||||
|
self.data.h = h
|
||||||
|
return self
|
||||||
|
end,
|
||||||
|
getHeight = function(self)
|
||||||
|
return self.data.h
|
||||||
|
end
|
||||||
}
|
}
|
||||||
_base_0.__index = _base_0
|
_base_0.__index = _base_0
|
||||||
_class_0 = setmetatable({
|
_class_0 = setmetatable({
|
||||||
@ -14,6 +39,30 @@ do
|
|||||||
if type(self.data ~= "table") then
|
if type(self.data ~= "table") then
|
||||||
self.data = { }
|
self.data = { }
|
||||||
end
|
end
|
||||||
|
if not (self.data.parent) then
|
||||||
|
self.data.parent = false
|
||||||
|
end
|
||||||
|
if not (self.data.child) then
|
||||||
|
self.data.child = { }
|
||||||
|
end
|
||||||
|
if not (self.data.x) then
|
||||||
|
self.data.x = 0
|
||||||
|
end
|
||||||
|
if not (self.data.y) then
|
||||||
|
self.data.y = 0
|
||||||
|
end
|
||||||
|
if not (self.data.w) then
|
||||||
|
self.data.w = 0
|
||||||
|
end
|
||||||
|
if not (self.data.h) then
|
||||||
|
self.data.h = 0
|
||||||
|
end
|
||||||
|
if self.data.update == nil then
|
||||||
|
self.data.update = false
|
||||||
|
end
|
||||||
|
if self.data.draw == nil then
|
||||||
|
self.data.draw = true
|
||||||
|
end
|
||||||
end,
|
end,
|
||||||
__base = _base_0,
|
__base = _base_0,
|
||||||
__name = "element"
|
__name = "element"
|
||||||
|
@ -5,9 +5,60 @@
|
|||||||
|
|
||||||
class element
|
class element
|
||||||
--- Constructor expects nothing, or a data table describing it.
|
--- Constructor expects nothing, or a data table describing it.
|
||||||
|
--- @tparam ?Element|false parent The parent element.
|
||||||
|
--- @tparam table data[opt] The data (state) for this element.
|
||||||
|
--- @treturn element self
|
||||||
new: (@parent, @data={}) =>
|
new: (@parent, @data={}) =>
|
||||||
if type @data != "table"
|
if type @data != "table"
|
||||||
@data = {}
|
@data = {}
|
||||||
|
|
||||||
setSize: =>
|
@data.parent = false unless @data.parent --included for correctness
|
||||||
--do more stuff!
|
@data.child = {} unless @data.child
|
||||||
|
@data.x = 0 unless @data.x
|
||||||
|
@data.y = 0 unless @data.y
|
||||||
|
@data.w = 0 unless @data.w
|
||||||
|
@data.h = 0 unless @data.h
|
||||||
|
@data.update = false if @data.update == nil
|
||||||
|
@data.draw = true if @data.draw == nil
|
||||||
|
|
||||||
|
--- Sets an element's width/height.
|
||||||
|
--- @tparam integer w[opt] Width.
|
||||||
|
--- @tparam integer h[opt] Height.
|
||||||
|
--- @treturn element self
|
||||||
|
setSize: (w, h) =>
|
||||||
|
if w
|
||||||
|
@data.w = w
|
||||||
|
if h
|
||||||
|
@data.h = h
|
||||||
|
|
||||||
|
return @
|
||||||
|
|
||||||
|
--- Returns an element's width and height.
|
||||||
|
--- @treturn integer Width.
|
||||||
|
--- @treturn integer Height.
|
||||||
|
getSize: =>
|
||||||
|
return @data.w, @data.h
|
||||||
|
|
||||||
|
--- Sets an element's width.
|
||||||
|
--- @tparam integer w Width.
|
||||||
|
--- @treturn element self
|
||||||
|
setWidth: (w) =>
|
||||||
|
@data.w = w
|
||||||
|
return @
|
||||||
|
|
||||||
|
--- Returns an element's width.
|
||||||
|
--- @treturn integer Width.
|
||||||
|
getWidth: =>
|
||||||
|
return @data.w
|
||||||
|
|
||||||
|
--- Sets an element's height.
|
||||||
|
--- @tparam integer h Height.
|
||||||
|
--- @treturn element self
|
||||||
|
setHeight: (h) =>
|
||||||
|
@data.h = h
|
||||||
|
return @
|
||||||
|
|
||||||
|
--- Returns an element's height.
|
||||||
|
--- @treturn integer Height.
|
||||||
|
getHeight: =>
|
||||||
|
return @data.h
|
||||||
|
2
init.lua
2
init.lua
@ -154,7 +154,7 @@ pop.draw = function(element)
|
|||||||
end
|
end
|
||||||
pop.mousemoved = function(x, y, dx, dy)
|
pop.mousemoved = function(x, y, dx, dy)
|
||||||
if pop.focused and pop.focused.mousemoved then
|
if pop.focused and pop.focused.mousemoved then
|
||||||
return pop.focused:mousemoved(x, y, dx, dy)
|
return pop.focused:mousemoved(x - pop.focused.data.x, y - pop.focused.data.y, dx, dy)
|
||||||
end
|
end
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
@ -207,7 +207,7 @@ pop.draw = (element=pop.screen) ->
|
|||||||
pop.mousemoved = (x, y, dx, dy) ->
|
pop.mousemoved = (x, y, dx, dy) ->
|
||||||
--- @todo Implement a way for an element to attach itself to `love.mousemoved()` events?
|
--- @todo Implement a way for an element to attach itself to `love.mousemoved()` events?
|
||||||
if pop.focused and pop.focused.mousemoved
|
if pop.focused and pop.focused.mousemoved
|
||||||
return pop.focused\mousemoved x, y, dx, dy
|
return pop.focused\mousemoved x - pop.focused.data.x, y - pop.focused.data.y, dx, dy
|
||||||
|
|
||||||
return false
|
return false
|
||||||
|
|
||||||
|
@ -27,8 +27,11 @@ describe "Pop.Box", ->
|
|||||||
pending "loads all extensions", ->
|
pending "loads all extensions", ->
|
||||||
-- see checks for loading all elements
|
-- see checks for loading all elements
|
||||||
|
|
||||||
pending "creates an element the size of the game window", ->
|
it "creates an element the size of the game window", ->
|
||||||
-- use our shim's width/height, check the size of the element, check that it actually is an element class object, make sure it is stored in pop.screen
|
pop = require "init"
|
||||||
|
w, h = pop.screen\getSize!
|
||||||
|
assert.are.equal love.graphics.getWidth!, w
|
||||||
|
assert.are.equal love.graphics.getHeight!, h
|
||||||
|
|
||||||
pending "check inherit checker", ->
|
pending "check inherit checker", ->
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user