ewol/class_ewol__widget__ContainerN.html

304 lines
22 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<title>ewol Library</title>
<link rel="stylesheet" href="base.css">
<link rel="stylesheet" href="menu.css">
</head>
<body>
<div class="navbar navbar-fixed-top">
<div class="container">
<h1><a href="index.html">ewol library</a></h1>
<h4><a href="http://github.com/heeroyui/ewol/">&nbsp;&nbsp;&nbsp;[ sources ]</a></h4>
<h3>API:</h3> <div id="menu">
<ul class="niveau1">
<li class="sousmenu"><a href="namespace_ewol.html">ewol</a>
<ul class="niveau2">
<li><a href="namespace_ewol__key.html">key</a>
</li>
<li><a href="namespace_ewol__widget.html">widget</a>
</li>
<li><a href="namespace_ewol__openGL.html">openGL</a>
</li>
<li class="sousmenu"><a href="namespace_ewol__context.html">context</a>
<ul class="niveau3">
<li><a href="namespace_ewol__context__clipBoard.html">clipBoard</a>
</li>
</ul>
</li>
<li class="sousmenu"><a href="namespace_ewol__audio.html">audio</a>
<ul class="niveau3">
<li><a href="namespace_ewol__audio__wav.html">wav</a>
</li>
<li><a href="namespace_ewol__audio__music.html">music</a>
</li>
<li><a href="namespace_ewol__audio__effects.html">effects</a>
</li>
</ul>
</li>
<li><a href="namespace_ewol__portAudio.html">portAudio</a>
</li>
<li><a href="namespace_ewol__compositing.html">compositing</a>
</li>
<li><a href="namespace_ewol__object.html">object</a>
</li>
<li><a href="namespace_ewol__resource.html">resource</a>
</li>
<li><a href="namespace_ewol__font.html">font</a>
</li>
<li><a href="namespace_ewol__event.html">event</a>
</li>
</ul>
</li>
<li><a href="namespace_MacOs.html">MacOs</a>
</li>
</ul>
</div>
<h3>Documentation:</h3><div id="menu">
<ul class="niveau1"><li><a href="001_bases.html">bases</a></li>
</ul></div>
<h3>Tutorials:</h3><div id="menu">
<ul class="niveau1"><li><a href="tutorial_000_Build.html">Build</a></li>
</ul><ul class="niveau1"><li><a href="tutorial_001_HelloWord.html">HelloWord</a></li>
</ul></div>
<br/><h3>Associate libraries:</h3><div id="menu">
<ul class="niveau1"><li><a href="../ejson/index.html">ejson</a></li>
</ul><ul class="niveau1"><li><a href="../egami/index.html">egami</a></li>
</ul><ul class="niveau1"><li><a href="../ege/index.html">ege</a></li>
</ul><ul class="niveau1"><li><a href="../esvg/index.html">esvg</a></li>
</ul><ul class="niveau1"><li><a href="../etk/index.html">etk</a></li>
</ul><ul class="niveau1"><li><a href="../exml/index.html">exml</a></li>
</ul></div>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
</div>
</div>
<div class="container" id="content">
<h1>class: ewol::widget::ContainerN</h1><hr/><h2>Description:</h2>
the Cotainer widget is a widget that have an only one subWidget<br/><br/>
<h2>Constructor and Destructor:</h2>
<pre>
+ <a class="code-function" href="#3294">ContainerN</a> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/>+ <a class="code-function" href="#3296">~ContainerN</a> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/></pre>
<br/>
<h2>Synopsis:</h2>
<pre>
# <a class="code-type" href="http://www.cplusplus.com/reference/vector/vector/">std::vector</a>&lt;ewol::Widget*&gt; <a class="code-member" href="#3293">m_subWidget</a>;<br/># bvec2 <a class="code-member" href="#3298">m_lockExpand</a>;<br/># bvec2 <a class="code-member" href="#3299">m_subExpend</a>;<br/>+ <span class="code-type" >void</span> <a class="code-function" href="#3300">lockExpand</a> (<span class="code-storage-keyword">const</span> bvec2 & <span class="code-argument">_lockExpand</span>);<br/>+ <span class="code-storage-keyword">virtual</span> bvec2 <a class="code-function" href="#3302">canExpand</a> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <a class="code-function" href="#3304">subWidgetRemoveAll</a> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <a class="code-function" href="#3306">subWidgetRemoveAllDelayed</a> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >int32_t</span> <a class="code-function" href="#3308">subWidgetAdd</a> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/>+ <span class="code-type" >int32_t</span> <a class="code-function" href="#3310">subWidgetAddBack</a> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/>+ <span class="code-type" >int32_t</span> <a class="code-function" href="#3312">subWidgetAddEnd</a> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >int32_t</span> <a class="code-function" href="#3314">subWidgetAddStart</a> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/>+ <span class="code-type" >int32_t</span> <a class="code-function" href="#3316">subWidgetAddFront</a> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <a class="code-function" href="#3318">subWidgetRemove</a> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <a class="code-function" href="#3320">subWidgetUnLink</a> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <a class="code-function" href="#3322">systemDraw</a> (<span class="code-storage-keyword">const</span> <a class="code-type" href="class_ewol__DrawProperty.html">ewol::DrawProperty</a> & <span class="code-argument">_displayProp</span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <a class="code-function" href="#3324">onRegenerateDisplay</a> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <a class="code-function" href="#3326">onObjectRemove</a> (<a class="code-type" href="class_ewol__Object.html">ewol::Object</a>* <span class="code-argument">_removeObject</span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <a class="code-function" href="#3328">calculateSize</a> (<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_availlable</span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <a class="code-function" href="#3330">calculateMinMaxSize</a> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/>+ <span class="code-storage-keyword">virtual</span> <a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <a class="code-function" href="#3332">getWidgetAtPos</a> (<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_pos</span>);<br/>+ <span class="code-storage-keyword">virtual</span> <a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <a class="code-function" href="#3334">getWidgetNamed</a> (<span class="code-storage-keyword">const</span> <a class="code-type" href="http://www.cplusplus.com/reference/string/string/">std::string</a> & <span class="code-argument">_widgetName</span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >bool</span> <a class="code-function" href="#3336">loadXML</a> (<a class="code-type" href="class_exml__Element.html">exml::Element</a>* <span class="code-argument">_node</span>);<br/>+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <a class="code-function" href="#3338">setOffset</a> (<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_newVal</span>);<br/></pre>
<br/>
<h2>Object Hierarchy:<h2>
<pre>
+<a href="class_ewol__Object.html">ewol::Object</a><br/> +--> +<a href="class_ewol__Widget.html">ewol::Widget</a><br/> +--> ewol::widget::ContainerN<br/> +--> <a href="class_ewol__widget__Sizer.html">ewol::widget::Sizer</a><br/> +--> <a href="class_ewol__widget__WSlider.html">ewol::widget::WSlider</a><br/> +--> <a href="class_ewol__widget__Layer.html">ewol::widget::Layer</a><br/></pre>
<h2>Detail:</h2>
<a id="3293"/><a id="3294"/><h3>m_subWidget</h3><pre>
# <a class="code-type" href="http://www.cplusplus.com/reference/vector/vector/">std::vector</a>&lt;ewol::Widget*&gt; <span class="code-member">m_subWidget</span>;<br/></pre>
<br/>
<br/>
<hr/>
<a id="3296"/><h3>ContainerN</h3><pre>
+ <span class="code-function">ContainerN</span> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/></pre>
Constructor<br/>
<br/>
<hr/>
<a id="3298"/><h3>~ContainerN</h3><pre>
+ <span class="code-function">~ContainerN</span> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/></pre>
Destructor<br/>
<br/>
<hr/>
<a id="3299"/><h3>m_lockExpand</h3><pre>
# bvec2 <span class="code-member">m_lockExpand</span>;<br/></pre>
Lock the expend of the sub widget to this one == &gt; this permit to limit bigger subWidget<br/>
<br/>
<hr/>
<a id="3300"/><h3>m_subExpend</h3><pre>
# bvec2 <span class="code-member">m_subExpend</span>;<br/></pre>
reference of the sub element expention requested.<br/>
<br/>
<hr/>
<a id="3302"/><h3>lockExpand</h3><pre>
+ <span class="code-type" >void</span> <span class="code-function">lockExpand</span> (<span class="code-storage-keyword">const</span> bvec2 & <span class="code-argument">_lockExpand</span>);<br/></pre>
Limit the expend properties to the current widget (no contamination)<br/><ul>
<table class="parameter-list">
<td><b>Parameter [input]:</b></td><td><span class="code-argument">_lockExpend</span> </td><td> Lock mode of the expend properties</td></tr>
</table>
</ul>
<br/>
<hr/>
<a id="3304"/><h3>canExpand</h3><pre>
+ <span class="code-storage-keyword">virtual</span> bvec2 <span class="code-function">canExpand</span> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/></pre>
get the expend capabilities (x&y)<br/><b>Note:</b> : INTERNAL EWOL SYSTEM<br/> <ul>
<table class="parameter-list">
<tr><td><b>Return: </b></td><td></td><td>2D boolean repensent the capacity to expend</td></tr></table>
</ul>
<br/>
<hr/>
<a id="3306"/><h3>subWidgetRemoveAll</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <span class="code-function">subWidgetRemoveAll</span> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/></pre>
remove all sub element from the widget.<br/>
<br/>
<hr/>
<a id="3308"/><h3>subWidgetRemoveAllDelayed</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <span class="code-function">subWidgetRemoveAllDelayed</span> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/></pre>
remove all sub element from the widget (delayed to prevent remove in the callbback).<br/>
<br/>
<hr/>
<a id="3310"/><h3>subWidgetAdd</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >int32_t</span> <span class="code-function">subWidgetAdd</span> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/></pre>
add at end position a Widget (note : This system use an inverted phylisophie (button to top, and left to right)<br/><ul>
<table class="parameter-list">
<td><b>Parameter [input]:</b></td><td><span class="code-argument">_newWidget</span> </td><td> the element pointer</td></tr>
<tr><td><b>Return: </b></td><td></td><td>the ID of the set element</td></tr></table>
</ul>
<br/>
<hr/>
<a id="3312"/><h3>subWidgetAddBack</h3><pre>
+ <span class="code-type" >int32_t</span> <span class="code-function">subWidgetAddBack</span> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/></pre>
<br/>
<br/>
<hr/>
<a id="3314"/><h3>subWidgetAddEnd</h3><pre>
+ <span class="code-type" >int32_t</span> <span class="code-function">subWidgetAddEnd</span> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/></pre>
<br/>
<br/>
<hr/>
<a id="3316"/><h3>subWidgetAddStart</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >int32_t</span> <span class="code-function">subWidgetAddStart</span> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/></pre>
add at start position a Widget (note : This system use an inverted phylisophie (button to top, and left to right)<br/><ul>
<table class="parameter-list">
<td><b>Parameter [input]:</b></td><td><span class="code-argument">_newWidget</span> </td><td> the element pointer</td></tr>
<tr><td><b>Return: </b></td><td></td><td>the ID of the set element</td></tr></table>
</ul>
<br/>
<hr/>
<a id="3318"/><h3>subWidgetAddFront</h3><pre>
+ <span class="code-type" >int32_t</span> <span class="code-function">subWidgetAddFront</span> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/></pre>
<br/>
<br/>
<hr/>
<a id="3320"/><h3>subWidgetRemove</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <span class="code-function">subWidgetRemove</span> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/></pre>
remove definitly a widget from the system and this layer.<br/><ul>
<table class="parameter-list">
<td><b>Parameter [input]:</b></td><td><span class="code-argument">_newWidget</span> </td><td> the element pointer.</td></tr>
</table>
</ul>
<br/>
<hr/>
<a id="3322"/><h3>subWidgetUnLink</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <span class="code-function">subWidgetUnLink</span> (<a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-argument">_newWidget</span>);<br/></pre>
Just unlick the specify widget, this function does not remove it from the system (if you can, do nt use it ...)<br/><ul>
<table class="parameter-list">
<td><b>Parameter [input]:</b></td><td><span class="code-argument">_newWidget</span> </td><td> the element pointer.</td></tr>
</table>
</ul>
<br/>
<hr/>
<a id="3324"/><h3>systemDraw</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <span class="code-function">systemDraw</span> (<span class="code-storage-keyword">const</span> <a class="code-type" href="class_ewol__DrawProperty.html">ewol::DrawProperty</a> & <span class="code-argument">_displayProp</span>);<br/></pre>
{SYSTEM} extern interface to request a draw ... (called by the drawing thread [Android, X11, ...])
This function generate a clipping with the viewport openGL system. Like this a widget draw can not draw over an other widget<br/><b>Note:</b> This function is virtual for the scrolled widget, and the more complicated openGl widget<br/> <b>Note:</b> : INTERNAL EWOL SYSTEM<br/> <ul>
<table class="parameter-list">
<td><b>Parameter [input]:</b></td><td><span class="code-argument">_displayProp</span> </td><td> properties of the current display</td></tr>
</table>
</ul>
<br/>
<hr/>
<a id="3326"/><h3>onRegenerateDisplay</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <span class="code-function">onRegenerateDisplay</span> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/></pre>
Event generated when a redraw is needed<br/>
<br/>
<hr/>
<a id="3328"/><h3>onObjectRemove</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <span class="code-function">onObjectRemove</span> (<a class="code-type" href="class_ewol__Object.html">ewol::Object</a>* <span class="code-argument">_removeObject</span>);<br/></pre>
Inform object that an other object is removed ...<br/><b>Note:</b> : Sub classes must call this class<br/> <ul>
<table class="parameter-list">
<td><b>Parameter [input]:</b></td><td><span class="code-argument">_removObject</span> </td><td> Pointer on the Object remeved == &gt; the user must remove all reference on this Object</td></tr>
</table>
</ul>
<br/>
<hr/>
<a id="3330"/><h3>calculateSize</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <span class="code-function">calculateSize</span> (<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_availlable</span>);<br/></pre>
Parent set the possible diplay size of the current widget whith his own possibilities
By default this save the widget available size in the widget size<br/><b>Note:</b> : INTERNAL EWOL SYSTEM<br/> <ul>
<table class="parameter-list">
<td><b>Parameter [input]:</b></td><td><span class="code-argument">_available</span> </td><td> Available x&y pixel size</td></tr>
</table>
</ul>
<br/>
<hr/>
<a id="3332"/><h3>calculateMinMaxSize</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <span class="code-function">calculateMinMaxSize</span> (<span class="code-type" >void</span> <span class="code-argument"></span>);<br/></pre>
calculate the minimum and maximum size (need to estimate expend properties of the widget)<br/><b>Note:</b> : INTERNAL EWOL SYSTEM<br/>
<br/>
<hr/>
<a id="3334"/><h3>getWidgetAtPos</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-function">getWidgetAtPos</span> (<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_pos</span>);<br/></pre>
get the widget at the specific windows absolute position<br/><b>Note:</b> : INTERNAL EWOL SYSTEM<br/> <ul>
<table class="parameter-list">
<td><b>Parameter [input]:</b></td><td><span class="code-argument">_pos</span> </td><td> gAbsolute position of the requested widget knowledge</td></tr>
<tr><td><b>Return: </b></td><td></td><td>NULL No widget found&lt;br/&gt;pointer on the widget found</td></tr></table>
</ul>
<br/>
<hr/>
<a id="3336"/><h3>getWidgetNamed</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <a class="code-type" href="class_ewol__Widget.html">ewol::Widget</a>* <span class="code-function">getWidgetNamed</span> (<span class="code-storage-keyword">const</span> <a class="code-type" href="http://www.cplusplus.com/reference/string/string/">std::string</a> & <span class="code-argument">_widgetName</span>);<br/></pre>
get the widget if it have this name or one of the subwidget with the same name<br/><ul>
<table class="parameter-list">
<td><b>Parameter [input]:</b></td><td><span class="code-argument">_widgetName</span> </td><td> name of the widget</td></tr>
<tr><td><b>Return: </b></td><td></td><td>the requested pointer on the node (or NULL pointer)</td></tr></table>
</ul>
<br/>
<hr/>
<a id="3338"/><h3>loadXML</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >bool</span> <span class="code-function">loadXML</span> (<a class="code-type" href="class_exml__Element.html">exml::Element</a>* <span class="code-argument">_node</span>);<br/></pre>
load properties with an XML node.<br/><ul>
<table class="parameter-list">
<td><b>Parameter [input]:</b></td><td><span class="code-argument">_node</span> </td><td> Pointer on the tinyXML node.</td></tr>
<tr><td><b>Return: </b></td><td></td><td>true : All has been done corectly.&lt;br/&gt;false : An error occured.</td></tr></table>
</ul>
<br/>
<hr/>
<h3>setOffset</h3><pre>
+ <span class="code-storage-keyword">virtual</span> <span class="code-type" >void</span> <span class="code-function">setOffset</span> (<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_newVal</span>);<br/></pre>
set the zoom property of the widget.<br/><ul>
<table class="parameter-list">
<td><b>Parameter [input]:</b></td><td><span class="code-argument">_newVal</span> </td><td> offset value.</td></tr>
</table>
</ul>
<br/>
<hr/>
</div>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-46753803-1', 'heeroyui.github.io');
ga('send', 'pageview');
</script>
</body>
</html>