mirror of https://github.com/buggins/dlangui.git
280 lines
9.6 KiB
HTML
280 lines
9.6 KiB
HTML
<html><head>
|
|
<META http-equiv="content-type" content="text/html; charset=utf-8">
|
|
<title>dlangui.widgets.lists</title>
|
|
</head><body>
|
|
<h1>dlangui.widgets.lists</h1>
|
|
<!-- Generated by Ddoc from src/dlangui/widgets/lists.d -->
|
|
DLANGUI library.
|
|
<br><br>
|
|
This module contains list widgets implementation.
|
|
<br><br>
|
|
|
|
Similar to <u>lists</u> implementation in Android UI API.
|
|
|
|
<br><br>
|
|
<b>Synopsis:</b><br>
|
|
<pre class="d_code"><font color=blue>import</font> dlangui.widgets.<u>lists</u>;
|
|
|
|
</pre>
|
|
|
|
<br><br>
|
|
<b>License:</b><br>
|
|
Boost License 1.0
|
|
<br><br>
|
|
<b>Authors:</b><br>
|
|
Vadim Lopatin, coolreader.org@gmail.com<br><br>
|
|
|
|
<dl><dt><big><a name="ListAdapter"></a>interface <u>ListAdapter</u>;
|
|
</big></dt>
|
|
<dd>list widget adapter provides items for list widgets<br><br>
|
|
|
|
<dl><dt><big><a name="ListAdapter.itemCount"></a>abstract @property int <u>itemCount</u>();
|
|
</big></dt>
|
|
<dd>returns number of widgets in list<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListAdapter.itemWidget"></a>abstract Widget <u>itemWidget</u>(int <i>index</i>);
|
|
</big></dt>
|
|
<dd>return list item widget by item <i>index</i><br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListAdapter.itemState"></a>abstract uint <u>itemState</u>(int <i>index</i>);
|
|
</big></dt>
|
|
<dd>return list item's state flags<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListAdapter.setItemState"></a>abstract uint <u>setItemState</u>(int <i>index</i>, uint <i>flags</i>);
|
|
</big></dt>
|
|
<dd>set one or more list item's state <i>flags</i>, returns updated state<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListAdapter.resetItemState"></a>abstract uint <u>resetItemState</u>(int <i>index</i>, uint <i>flags</i>);
|
|
</big></dt>
|
|
<dd>reset one or more list item's state <i>flags</i>, returns updated state<br><br>
|
|
|
|
</dd>
|
|
</dl>
|
|
</dd>
|
|
<dt><big><a name="WidgetListAdapter"></a>class <u>WidgetListAdapter</u>: dlangui.widgets.lists.ListAdapter;
|
|
</big></dt>
|
|
<dd>List adapter for simple list of widget instances<br><br>
|
|
|
|
<dl><dt><big><a name="WidgetListAdapter.widgets"></a>@property ref WidgetList <u>widgets</u>();
|
|
</big></dt>
|
|
<dd>list of <u>widgets</u> to display<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="WidgetListAdapter.itemCount"></a>@property int <u>itemCount</u>();
|
|
</big></dt>
|
|
<dd>returns number of widgets in list<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="WidgetListAdapter.itemWidget"></a>Widget <u>itemWidget</u>(int <i>index</i>);
|
|
</big></dt>
|
|
<dd>return list item widget by item <i>index</i><br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="WidgetListAdapter.itemState"></a>uint <u>itemState</u>(int <i>index</i>);
|
|
</big></dt>
|
|
<dd>return list item's state flags<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="WidgetListAdapter.setItemState"></a>uint <u>setItemState</u>(int <i>index</i>, uint <i>flags</i>);
|
|
</big></dt>
|
|
<dd>set one or more list item's state <i>flags</i>, returns updated state<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="WidgetListAdapter.resetItemState"></a>uint <u>resetItemState</u>(int <i>index</i>, uint <i>flags</i>);
|
|
</big></dt>
|
|
<dd>reset one or more list item's state <i>flags</i>, returns updated state<br><br>
|
|
|
|
</dd>
|
|
</dl>
|
|
</dd>
|
|
<dt><big><a name="ListWidget"></a>class <u>ListWidget</u>: dlangui.widgets.widget.WidgetGroup, dlangui.widgets.controls.OnScrollHandler;
|
|
</big></dt>
|
|
<dd>List<br><br>
|
|
|
|
<dl><dt><big><a name="ListWidget.orientation"></a>@property Orientation <u>orientation</u>();
|
|
</big></dt>
|
|
<dd>returns linear layout <u>orientation</u> (Vertical, Horizontal)<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.orientation"></a>@property ListWidget <u>orientation</u>(Orientation <i>value</i>);
|
|
</big></dt>
|
|
<dd>sets linear layout <u>orientation</u><br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget._firstVisibleItem"></a>protected int <u>_firstVisibleItem</u>;
|
|
</big></dt>
|
|
<dd>first visible item index<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget._scrollPosition"></a>protected int <u>_scrollPosition</u>;
|
|
</big></dt>
|
|
<dd>scroll position - offset of scroll area<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget._maxScrollPosition"></a>protected int <u>_maxScrollPosition</u>;
|
|
</big></dt>
|
|
<dd>maximum scroll position<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget._clientRc"></a>protected Rect <u>_clientRc</u>;
|
|
</big></dt>
|
|
<dd>client area rectangle (counting padding, margins, and scrollbar)<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget._totalSize"></a>protected int <u>_totalSize</u>;
|
|
</big></dt>
|
|
<dd>total height of all items for Vertical orientation, or width for Horizontal<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget._hoverItemIndex"></a>protected int <u>_hoverItemIndex</u>;
|
|
</big></dt>
|
|
<dd>item with Hover state, -1 if no such item<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget._selectedItemIndex"></a>protected int <u>_selectedItemIndex</u>;
|
|
</big></dt>
|
|
<dd>item with Selected state, -1 if no such item<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget._selectOnHover"></a>protected bool <u>_selectOnHover</u>;
|
|
</big></dt>
|
|
<dd>when <b>true</b>, mouse hover selects underlying item<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.selectOnHover"></a>@property bool <u>selectOnHover</u>();
|
|
</big></dt>
|
|
<dd>when <b>true</b>, mouse hover selects underlying item<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.selectOnHover"></a>@property ListWidget <u>selectOnHover</u>(bool <i>select</i>);
|
|
</big></dt>
|
|
<dd>when <b>true</b>, mouse hover selects underlying item<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget._clickOnButtonDown"></a>protected bool <u>_clickOnButtonDown</u>;
|
|
</big></dt>
|
|
<dd>if <b>true</b>, generate itemClicked on mouse down instead mouse up event<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.itemRectNoScroll"></a>Rect <u>itemRectNoScroll</u>(int <i>index</i>);
|
|
</big></dt>
|
|
<dd>returns rectangle for item (not scrolled, first item starts at 0,0)<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.itemRect"></a>Rect <u>itemRect</u>(int <i>index</i>);
|
|
</big></dt>
|
|
<dd>returns rectangle for item (scrolled)<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.itemByPosition"></a>int <u>itemByPosition</u>(int <i>pos</i>);
|
|
</big></dt>
|
|
<dd>returns item index by 0-based offset from top/left of list content<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget._ownAdapter"></a>protected bool <u>_ownAdapter</u>;
|
|
</big></dt>
|
|
<dd>when <b>true</b>, need to destroy adapter on list destroy<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.adapter"></a>@property ListAdapter <u>adapter</u>();
|
|
</big></dt>
|
|
<dd>get <u>adapter</u><br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.adapter"></a>@property ListWidget <u>adapter</u>(ListAdapter <u>adapter</u>);
|
|
</big></dt>
|
|
<dd>set <u>adapter</u><br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.ownAdapter"></a>@property ListWidget <u>ownAdapter</u>(ListAdapter <i>adapter</i>);
|
|
</big></dt>
|
|
<dd>set <i>adapter</i>, which will be owned by list (destroy will be called for <i>adapter</i> on widget destroy)<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.itemCount"></a>@property int <u>itemCount</u>();
|
|
</big></dt>
|
|
<dd>returns number of widgets in list<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.itemWidget"></a>Widget <u>itemWidget</u>(int <i>index</i>);
|
|
</big></dt>
|
|
<dd>return list item widget by item <i>index</i><br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.itemEnabled"></a>bool <u>itemEnabled</u>(int <i>index</i>);
|
|
</big></dt>
|
|
<dd>returns <b>true</b> if item with corresponding <i>index</i> is enabled<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.selectionChanged"></a>protected void <u>selectionChanged</u>(int <i>index</i>, int <i>previouslySelectedItem</i> = -1);
|
|
</big></dt>
|
|
<dd>override to handle change of selection<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.itemClicked"></a>protected void <u>itemClicked</u>(int <i>index</i>);
|
|
</big></dt>
|
|
<dd>override to handle mouse up on item<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.handleFocusChange"></a>protected void <u>handleFocusChange</u>(bool <i>focused</i>);
|
|
</big></dt>
|
|
<dd>override to handle focus changes<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.makeSelectionVisible"></a>void <u>makeSelectionVisible</u>();
|
|
</big></dt>
|
|
<dd>ensure selected item is visible (scroll if necessary)<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.makeItemVisible"></a>void <u>makeItemVisible</u>(int <i>itemIndex</i>);
|
|
</big></dt>
|
|
<dd>ensure item is visible<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.moveSelection"></a>bool <u>moveSelection</u>(int <i>direction</i>, bool <i>wrapAround</i> = true);
|
|
</big></dt>
|
|
<dd>move selection<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.onScrollEvent"></a>bool <u>onScrollEvent</u>(AbstractSlider <i>source</i>, ScrollEvent <i>event</i>);
|
|
</big></dt>
|
|
<dd>handle scroll <i>event</i><br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.measure"></a>void <u>measure</u>(int <i>parentWidth</i>, int <i>parentHeight</i>);
|
|
</big></dt>
|
|
<dd>Measure widget according to desired width and height constraints. (Step 1 of two phase layout).<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.layout"></a>void <u>layout</u>(Rect <i>rc</i>);
|
|
</big></dt>
|
|
<dd>Set widget rectangle to specified value and <u>layout</u> widget contents. (Step 2 of two phase <u>layout</u>).<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.onDraw"></a>void <u>onDraw</u>(DrawBuf <i>buf</i>);
|
|
</big></dt>
|
|
<dd>Draw widget at its position to buffer<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.onKeyEvent"></a>bool <u>onKeyEvent</u>(KeyEvent <i>event</i>);
|
|
</big></dt>
|
|
<dd>list navigation using keys<br><br>
|
|
|
|
</dd>
|
|
<dt><big><a name="ListWidget.onMouseEvent"></a>bool <u>onMouseEvent</u>(MouseEvent <i>event</i>);
|
|
</big></dt>
|
|
<dd>process mouse <i>event</i>; return <b>true</b> if <i>event</i> is processed by widget.<br><br>
|
|
|
|
</dd>
|
|
</dl>
|
|
</dd>
|
|
</dl>
|
|
|
|
<hr><small>Page generated by <a href="http://dlang.org/ddoc.html">Ddoc</a>. Vadim Lopatin, 2014
|
|
</small>
|
|
</body></html>
|