Migration of QtMvvm from github
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1061 lines
115 KiB

<!-- HTML header for doxygen 1.8.13-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>QtMvvm: QtMvvm::WidgetsPresenter Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0" style="display: inline;">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">QtMvvm
&#160;<span id="projectnumber">1.0.0</span>
</div>
<div id="projectbrief">A mvvm oriented library for Qt, to create Projects for Widgets and Quick in parallel</div>
</td>
</tr>
</tbody>
</table>
<a style="float: right;" target="_blank" href="https://github.com/Skycoder42/QtMvvm">
<img style="padding: 10px;" src="GitHub_Logo.png"/>
</a>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespace_qt_mvvm.html">QtMvvm</a></li><li class="navelem"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html">WidgetsPresenter</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-slots">Public Slots</a> &#124;
<a href="#signals">Signals</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="class_qt_mvvm_1_1_widgets_presenter-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">QtMvvm::WidgetsPresenter Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>The <a class="el" href="class_qt_mvvm_1_1_i_presenter.html" title="The interface for a GUI view presenter. ">IPresenter</a> implementation for the widgets module.
<a href="class_qt_mvvm_1_1_widgets_presenter.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="widgetspresenter_8h_source.html">widgetspresenter.h</a>&gt;</code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for QtMvvm::WidgetsPresenter:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center">
<img src="class_qt_mvvm_1_1_widgets_presenter.png" usemap="#QtMvvm::WidgetsPresenter_map" alt=""/>
<map id="QtMvvm::WidgetsPresenter_map" name="QtMvvm::WidgetsPresenter_map">
<area target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html" alt="QObject" shape="rect" coords="0,0,164,24"/>
<area href="class_qt_mvvm_1_1_i_presenter.html" title="The interface for a GUI view presenter. " alt="QtMvvm::IPresenter" shape="rect" coords="174,0,338,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-slots"></a>
Public Slots</h2></td></tr>
<tr class="memitem:a77e042c6ebe285bd6fc26a3a0d58534f"><td class="memItemLeft" align="right" valign="top"><a id="a77e042c6ebe285bd6fc26a3a0d58534f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a77e042c6ebe285bd6fc26a3a0d58534f">setInputWidgetFactory</a> (<a class="el" href="class_qt_mvvm_1_1_input_widget_factory.html">InputWidgetFactory</a> *<a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a8d7ca39d6041fe36b5fd620ff3fc13f4">inputWidgetFactory</a>)</td></tr>
<tr class="memdesc:a77e042c6ebe285bd6fc26a3a0d58534f"><td class="mdescLeft">&#160;</td><td class="mdescRight">WRITE accessor for <a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a8d7ca39d6041fe36b5fd620ff3fc13f4" title="The factory to create input widgets with, as injected property. ">WidgetsPresenter::inputWidgetFactory</a>. <br /></td></tr>
<tr class="separator:a77e042c6ebe285bd6fc26a3a0d58534f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="signals"></a>
Signals</h2></td></tr>
<tr class="memitem:af669b0161a6a7d26d723ff1bd7a0b552"><td class="memItemLeft" align="right" valign="top"><a id="af669b0161a6a7d26d723ff1bd7a0b552"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#af669b0161a6a7d26d723ff1bd7a0b552">inputWidgetFactoryChanged</a> (<a class="el" href="class_qt_mvvm_1_1_input_widget_factory.html">InputWidgetFactory</a> *<a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a8d7ca39d6041fe36b5fd620ff3fc13f4">inputWidgetFactory</a>, QPrivateSignal)</td></tr>
<tr class="memdesc:af669b0161a6a7d26d723ff1bd7a0b552"><td class="mdescLeft">&#160;</td><td class="mdescRight">NOTIFY accessor for <a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a8d7ca39d6041fe36b5fd620ff3fc13f4" title="The factory to create input widgets with, as injected property. ">WidgetsPresenter::inputWidgetFactory</a>. <br /></td></tr>
<tr class="separator:af669b0161a6a7d26d723ff1bd7a0b552"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a08b6a81cc3ed92c2c1d9ea958ee936d5"><td class="memItemLeft" align="right" valign="top"><a id="a08b6a81cc3ed92c2c1d9ea958ee936d5"></a>
Q_INVOKABLE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a08b6a81cc3ed92c2c1d9ea958ee936d5">WidgetsPresenter</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#parent">parent</a>=nullptr)</td></tr>
<tr class="memdesc:a08b6a81cc3ed92c2c1d9ea958ee936d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invokable constructor. <br /></td></tr>
<tr class="separator:a08b6a81cc3ed92c2c1d9ea958ee936d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f4d51ec8d0dcfa190ee813937aa0166"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a4f4d51ec8d0dcfa190ee813937aa0166">present</a> (<a class="el" href="class_qt_mvvm_1_1_view_model.html">ViewModel</a> *viewModel, const QVariantHash &amp;params, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt; <a class="el" href="class_qt_mvvm_1_1_view_model.html">ViewModel</a> &gt; <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#parent">parent</a>) override</td></tr>
<tr class="memdesc:a4f4d51ec8d0dcfa190ee813937aa0166"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called to present a viewmodel. <a href="#a4f4d51ec8d0dcfa190ee813937aa0166">More...</a><br /></td></tr>
<tr class="separator:a4f4d51ec8d0dcfa190ee813937aa0166"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4766ec05cd6999ee16505d472e48adf9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a4766ec05cd6999ee16505d472e48adf9">showDialog</a> (const <a class="el" href="class_qt_mvvm_1_1_message_config.html">MessageConfig</a> &amp;config, <a class="el" href="class_qt_mvvm_1_1_message_result.html">MessageResult</a> *result) override</td></tr>
<tr class="memdesc:a4766ec05cd6999ee16505d472e48adf9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called to present a dialog via a message config. <a href="#a4766ec05cd6999ee16505d472e48adf9">More...</a><br /></td></tr>
<tr class="separator:a4766ec05cd6999ee16505d472e48adf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf9491cfcc65f716e16251f2dda8f6e3"><td class="memItemLeft" align="right" valign="top"><a id="abf9491cfcc65f716e16251f2dda8f6e3"></a>
<a class="el" href="class_qt_mvvm_1_1_input_widget_factory.html">InputWidgetFactory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#abf9491cfcc65f716e16251f2dda8f6e3">inputWidgetFactory</a> () const</td></tr>
<tr class="memdesc:abf9491cfcc65f716e16251f2dda8f6e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">READ accessor for <a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a8d7ca39d6041fe36b5fd620ff3fc13f4" title="The factory to create input widgets with, as injected property. ">WidgetsPresenter::inputWidgetFactory</a>. <br /></td></tr>
<tr class="separator:abf9491cfcc65f716e16251f2dda8f6e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_q_object"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_q_object')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="target="_blank" https://doc.qt.io/qt-5/class_q_object.html">QObject</a></td></tr>
<tr class="memitem:QObject inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="QObject"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#QObject">QObject</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#parent">parent</a>)</td></tr>
<tr class="separator:QObject inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:event inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="event"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#event">event</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qevent.html">QEvent</a> *e)</td></tr>
<tr class="separator:event inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:eventFilter inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="eventFilter"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#eventFilter">eventFilter</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *watched, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qevent.html">QEvent</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#event">event</a>)</td></tr>
<tr class="separator:eventFilter inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:metaObject inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="metaObject"></a>
virtual const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#metaObject">metaObject</a> () const</td></tr>
<tr class="separator:metaObject inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:objectName-prop inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="objectName-prop"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#objectName-prop">objectName</a> () const</td></tr>
<tr class="separator:objectName-prop inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:objectName-prop inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="objectName-prop"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#objectName-prop">setObjectName</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qstring.html">QString</a> &amp;name)</td></tr>
<tr class="separator:objectName-prop inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:isWidgetType inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="isWidgetType"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#isWidgetType">isWidgetType</a> () const</td></tr>
<tr class="separator:isWidgetType inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:isWindowType inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="isWindowType"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#isWindowType">isWindowType</a> () const</td></tr>
<tr class="separator:isWindowType inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:signalsBlocked inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="signalsBlocked"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#signalsBlocked">signalsBlocked</a> () const</td></tr>
<tr class="separator:signalsBlocked inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:blockSignals inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="blockSignals"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#blockSignals">blockSignals</a> (bool block)</td></tr>
<tr class="separator:blockSignals inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:thread inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="thread"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qthread.html">QThread</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#thread">thread</a> () const</td></tr>
<tr class="separator:thread inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:moveToThread inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="moveToThread"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#moveToThread">moveToThread</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qthread.html">QThread</a> *targetThread)</td></tr>
<tr class="separator:moveToThread inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:startTimer inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="startTimer"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#startTimer">startTimer</a> (int interval, Qt::TimerType timerType)</td></tr>
<tr class="separator:startTimer inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:startTimer-1 inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="startTimer-1"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#startTimer-1">startTimer</a> (std::chrono::milliseconds time, Qt::TimerType timerType)</td></tr>
<tr class="separator:startTimer-1 inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:killTimer inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="killTimer"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#killTimer">killTimer</a> (int id)</td></tr>
<tr class="separator:killTimer inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:findChild inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="findChild"></a>
T&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#findChild">findChild</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qstring.html">QString</a> &amp;name, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qt.html#FindChildOption-enum">Qt::FindChildOptions</a> options) const</td></tr>
<tr class="separator:findChild inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:findChildren inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="findChildren"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qlist.html">QList</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#findChildren">findChildren</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qstring.html">QString</a> &amp;name, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qt.html#FindChildOption-enum">Qt::FindChildOptions</a> options) const</td></tr>
<tr class="separator:findChildren inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:findChildren-1 inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="findChildren-1"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qlist.html">QList</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#findChildren-1">findChildren</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qregexp.html">QRegExp</a> &amp;regExp, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qt.html#FindChildOption-enum">Qt::FindChildOptions</a> options) const</td></tr>
<tr class="separator:findChildren-1 inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:findChildren-2 inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="findChildren-2"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qlist.html">QList</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#findChildren-2">findChildren</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qregularexpression.html">QRegularExpression</a> &amp;re, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qt.html#FindChildOption-enum">Qt::FindChildOptions</a> options) const</td></tr>
<tr class="separator:findChildren-2 inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:children inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="children"></a>
const QObjectList &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#children">children</a> () const</td></tr>
<tr class="separator:children inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:setParent inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="setParent"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#setParent">setParent</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#parent">parent</a>)</td></tr>
<tr class="separator:setParent inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:installEventFilter inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="installEventFilter"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#installEventFilter">installEventFilter</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *filterObj)</td></tr>
<tr class="separator:installEventFilter inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:removeEventFilter inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="removeEventFilter"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#removeEventFilter">removeEventFilter</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *obj)</td></tr>
<tr class="separator:removeEventFilter inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:connect-2 inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="connect-2"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject-connection.html">QMetaObject::Connection</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#connect-2">connect</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#sender">sender</a>, const char *signal, const char *method, Qt::ConnectionType type) const</td></tr>
<tr class="separator:connect-2 inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:disconnect-2 inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="disconnect-2"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#disconnect-2">disconnect</a> (const char *signal, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *receiver, const char *method) const</td></tr>
<tr class="separator:disconnect-2 inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:disconnect-3 inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="disconnect-3"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#disconnect-3">disconnect</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *receiver, const char *method) const</td></tr>
<tr class="separator:disconnect-3 inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:dumpObjectTree-1 inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="dumpObjectTree-1"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject-obsolete.html#dumpObjectTree-1">dumpObjectTree</a> ()</td></tr>
<tr class="separator:dumpObjectTree-1 inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:dumpObjectInfo-1 inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="dumpObjectInfo-1"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject-obsolete.html#dumpObjectInfo-1">dumpObjectInfo</a> ()</td></tr>
<tr class="separator:dumpObjectInfo-1 inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:dumpObjectTree inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="dumpObjectTree"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#dumpObjectTree">dumpObjectTree</a> () const</td></tr>
<tr class="separator:dumpObjectTree inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:dumpObjectInfo inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="dumpObjectInfo"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#dumpObjectInfo">dumpObjectInfo</a> () const</td></tr>
<tr class="separator:dumpObjectInfo inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:setProperty inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="setProperty"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#setProperty">setProperty</a> (const char *name, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qvariant.html">QVariant</a> &amp;value)</td></tr>
<tr class="separator:setProperty inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:property inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="property"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qvariant.html">QVariant</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#property">property</a> (const char *name) const</td></tr>
<tr class="separator:property inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:dynamicPropertyNames inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="dynamicPropertyNames"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qlist.html">QList</a>&lt; <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qbytearray.html">QByteArray</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#dynamicPropertyNames">dynamicPropertyNames</a> () const</td></tr>
<tr class="separator:dynamicPropertyNames inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:destroyed inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="destroyed"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#destroyed">destroyed</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *obj)</td></tr>
<tr class="separator:destroyed inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:objectNameChanged inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="objectNameChanged"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#objectNameChanged">objectNameChanged</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qstring.html">QString</a> &amp;<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#objectName-prop">objectName</a>)</td></tr>
<tr class="separator:objectNameChanged inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:parent inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="parent"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#parent">parent</a> () const</td></tr>
<tr class="separator:parent inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:inherits inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="inherits"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#inherits">inherits</a> (const char *className) const</td></tr>
<tr class="separator:inherits inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:deleteLater inherit pub_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="deleteLater"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#deleteLater">deleteLater</a> ()</td></tr>
<tr class="separator:deleteLater inherit pub_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a9d707a6c2003469d6d62d5370356f515"><td class="memTemplParams" colspan="2"><a id="a9d707a6c2003469d6d62d5370356f515"></a>
template&lt;typename TPresenter &gt; </td></tr>
<tr class="memitem:a9d707a6c2003469d6d62d5370356f515"><td class="memTemplItemLeft" align="right" valign="top">static void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a9d707a6c2003469d6d62d5370356f515">registerAsPresenter</a> ()</td></tr>
<tr class="memdesc:a9d707a6c2003469d6d62d5370356f515"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register a subclass of the <a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html" title="The IPresenter implementation for the widgets module. ">WidgetsPresenter</a> as the active presenter for the <a class="el" href="class_qt_mvvm_1_1_core_app.html" title="A logicaly application object to drive the mvvm application from the core part. ">CoreApp</a>. <br /></td></tr>
<tr class="separator:a9d707a6c2003469d6d62d5370356f515"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b665bb6c87884d5789f616814c80cf6"><td class="memTemplParams" colspan="2">template&lt;typename TView &gt; </td></tr>
<tr class="memitem:a0b665bb6c87884d5789f616814c80cf6"><td class="memTemplItemLeft" align="right" valign="top">static void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a0b665bb6c87884d5789f616814c80cf6">registerView</a> ()</td></tr>
<tr class="memdesc:a0b665bb6c87884d5789f616814c80cf6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register a view to be found by the presenter. <a href="#a0b665bb6c87884d5789f616814c80cf6">More...</a><br /></td></tr>
<tr class="separator:a0b665bb6c87884d5789f616814c80cf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2203a955a03770a6c877cbc54050cb97"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a2203a955a03770a6c877cbc54050cb97">registerView</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> *viewType)</td></tr>
<tr class="memdesc:a2203a955a03770a6c877cbc54050cb97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register a view to be found by the presenter. <a href="#a2203a955a03770a6c877cbc54050cb97">More...</a><br /></td></tr>
<tr class="separator:a2203a955a03770a6c877cbc54050cb97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ff4fc6783162f3d9e8895d025e949c5"><td class="memTemplParams" colspan="2">template&lt;typename TViewModel , typename TView &gt; </td></tr>
<tr class="memitem:a3ff4fc6783162f3d9e8895d025e949c5"><td class="memTemplItemLeft" align="right" valign="top">static void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a3ff4fc6783162f3d9e8895d025e949c5">registerViewExplicitly</a> ()</td></tr>
<tr class="memdesc:a3ff4fc6783162f3d9e8895d025e949c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register a view for a viewmodel to be found by the presenter. <a href="#a3ff4fc6783162f3d9e8895d025e949c5">More...</a><br /></td></tr>
<tr class="separator:a3ff4fc6783162f3d9e8895d025e949c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abca0029daffb05a12f28f2594a0c023f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#abca0029daffb05a12f28f2594a0c023f">registerViewExplicitly</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> *viewModelType, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> *viewType)</td></tr>
<tr class="memdesc:abca0029daffb05a12f28f2594a0c023f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register a view for a viewmodel to be found by the presenter. <a href="#abca0029daffb05a12f28f2594a0c023f">More...</a><br /></td></tr>
<tr class="separator:abca0029daffb05a12f28f2594a0c023f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_static_methods_class_q_object"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_class_q_object')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="target="_blank" https://doc.qt.io/qt-5/class_q_object.html">QObject</a></td></tr>
<tr class="memitem:tr inherit pub_static_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="tr"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#tr">tr</a> (const char *sourceText, const char *disambiguation, int n)</td></tr>
<tr class="separator:tr inherit pub_static_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:trUtf8 inherit pub_static_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="trUtf8"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject-obsolete.html#trUtf8">trUtf8</a> (const char *sourceText, const char *disambiguation, int n)</td></tr>
<tr class="separator:trUtf8 inherit pub_static_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:connect inherit pub_static_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="connect"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject-connection.html">QMetaObject::Connection</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#connect">connect</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#sender">sender</a>, const char *signal, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *receiver, const char *method, Qt::ConnectionType type)</td></tr>
<tr class="separator:connect inherit pub_static_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:connect-1 inherit pub_static_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="connect-1"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject-connection.html">QMetaObject::Connection</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#connect-1">connect</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#sender">sender</a>, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetamethod.html">QMetaMethod</a> &amp;signal, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *receiver, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetamethod.html">QMetaMethod</a> &amp;method, Qt::ConnectionType type)</td></tr>
<tr class="separator:connect-1 inherit pub_static_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:connect-3 inherit pub_static_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="connect-3"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject-connection.html">QMetaObject::Connection</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#connect-3">connect</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#sender">sender</a>, PointerToMemberFunction signal, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *receiver, PointerToMemberFunction method, Qt::ConnectionType type)</td></tr>
<tr class="separator:connect-3 inherit pub_static_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:connect-4 inherit pub_static_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="connect-4"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject-connection.html">QMetaObject::Connection</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#connect-4">connect</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#sender">sender</a>, PointerToMemberFunction signal, Functor functor)</td></tr>
<tr class="separator:connect-4 inherit pub_static_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:connect-5 inherit pub_static_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="connect-5"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject-connection.html">QMetaObject::Connection</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#connect-5">connect</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#sender">sender</a>, PointerToMemberFunction signal, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *context, Functor functor, Qt::ConnectionType type)</td></tr>
<tr class="separator:connect-5 inherit pub_static_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:disconnect inherit pub_static_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="disconnect"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#disconnect">disconnect</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#sender">sender</a>, const char *signal, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *receiver, const char *method)</td></tr>
<tr class="separator:disconnect inherit pub_static_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:disconnect-1 inherit pub_static_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="disconnect-1"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#disconnect-1">disconnect</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#sender">sender</a>, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetamethod.html">QMetaMethod</a> &amp;signal, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *receiver, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetamethod.html">QMetaMethod</a> &amp;method)</td></tr>
<tr class="separator:disconnect-1 inherit pub_static_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:disconnect-4 inherit pub_static_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="disconnect-4"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#disconnect-4">disconnect</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject-connection.html">QMetaObject::Connection</a> &amp;connection)</td></tr>
<tr class="separator:disconnect-4 inherit pub_static_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:disconnect-5 inherit pub_static_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="disconnect-5"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#disconnect-5">disconnect</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#sender">sender</a>, PointerToMemberFunction signal, const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *receiver, PointerToMemberFunction method)</td></tr>
<tr class="separator:disconnect-5 inherit pub_static_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:aa0813481dc8d752fd2d8bca9495bb998"><td class="memItemLeft" align="right" valign="top">virtual const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#aa0813481dc8d752fd2d8bca9495bb998">findWidgetMetaObject</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> *viewModelMetaObject)</td></tr>
<tr class="memdesc:aa0813481dc8d752fd2d8bca9495bb998"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is called to find the meta object of the view to be used for the given viewmodel. <a href="#aa0813481dc8d752fd2d8bca9495bb998">More...</a><br /></td></tr>
<tr class="separator:aa0813481dc8d752fd2d8bca9495bb998"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e2f5776adff5584c1572e55b9fefd73"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a5e2f5776adff5584c1572e55b9fefd73">tryPresent</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_widget.html">QWidget</a> *view, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_widget.html">QWidget</a> *parentView)</td></tr>
<tr class="memdesc:a5e2f5776adff5584c1572e55b9fefd73"><td class="mdescLeft">&#160;</td><td class="mdescRight">Try to present the given view on the parent view. <a href="#a5e2f5776adff5584c1572e55b9fefd73">More...</a><br /></td></tr>
<tr class="separator:a5e2f5776adff5584c1572e55b9fefd73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a2d1c292c4117b542a7a610709b2a17"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a2a2d1c292c4117b542a7a610709b2a17">showForeground</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_widget.html">QWidget</a> *view) const</td></tr>
<tr class="memdesc:a2a2d1c292c4117b542a7a610709b2a17"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called to show a widget in the foreground. <a href="#a2a2d1c292c4117b542a7a610709b2a17">More...</a><br /></td></tr>
<tr class="separator:a2a2d1c292c4117b542a7a610709b2a17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a33697bcd5ead0a2a1ac3f63c59fdfd2f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a33697bcd5ead0a2a1ac3f63c59fdfd2f">presentMessageBox</a> (const <a class="el" href="class_qt_mvvm_1_1_message_config.html">MessageConfig</a> &amp;config, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt; <a class="el" href="class_qt_mvvm_1_1_message_result.html">MessageResult</a> &gt; result)</td></tr>
<tr class="memdesc:a33697bcd5ead0a2a1ac3f63c59fdfd2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called to present a dialog of <a class="el" href="class_qt_mvvm_1_1_message_config.html#a4bf2b7c1738a86009303fbb07dcad08c" title="A type to show a standard message box. ">MessageConfig::TypeMessageBox</a>. <a href="#a33697bcd5ead0a2a1ac3f63c59fdfd2f">More...</a><br /></td></tr>
<tr class="separator:a33697bcd5ead0a2a1ac3f63c59fdfd2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18f10dbe6ed65ef932e7e9ec3b2e7ed5"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a18f10dbe6ed65ef932e7e9ec3b2e7ed5">presentInputDialog</a> (const <a class="el" href="class_qt_mvvm_1_1_message_config.html">MessageConfig</a> &amp;config, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt; <a class="el" href="class_qt_mvvm_1_1_message_result.html">MessageResult</a> &gt; result)</td></tr>
<tr class="memdesc:a18f10dbe6ed65ef932e7e9ec3b2e7ed5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called to present a dialog of <a class="el" href="class_qt_mvvm_1_1_message_config.html#ae80918dc646fe89d59a1ddfed729d1b7" title="A type to show a generic input dialog. ">MessageConfig::TypeInputDialog</a>. <a href="#a18f10dbe6ed65ef932e7e9ec3b2e7ed5">More...</a><br /></td></tr>
<tr class="separator:a18f10dbe6ed65ef932e7e9ec3b2e7ed5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af85b64638d159a4d48be42ae332dc821"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#af85b64638d159a4d48be42ae332dc821">presentFileDialog</a> (const <a class="el" href="class_qt_mvvm_1_1_message_config.html">MessageConfig</a> &amp;config, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt; <a class="el" href="class_qt_mvvm_1_1_message_result.html">MessageResult</a> &gt; result)</td></tr>
<tr class="memdesc:af85b64638d159a4d48be42ae332dc821"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called to present a dialog of <a class="el" href="class_qt_mvvm_1_1_message_config.html#a4e605350d96923e7bdf000388fc514f5" title="A type to show a generic file dialog. ">MessageConfig::TypeFileDialog</a>. <a href="#af85b64638d159a4d48be42ae332dc821">More...</a><br /></td></tr>
<tr class="separator:af85b64638d159a4d48be42ae332dc821"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39d8182714fc1a0693129f30d20a4ae1"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a39d8182714fc1a0693129f30d20a4ae1">presentOtherDialog</a> (const <a class="el" href="class_qt_mvvm_1_1_message_config.html">MessageConfig</a> &amp;config, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt; <a class="el" href="class_qt_mvvm_1_1_message_result.html">MessageResult</a> &gt; result)</td></tr>
<tr class="memdesc:a39d8182714fc1a0693129f30d20a4ae1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called to present a dialog of a non standard <a class="el" href="class_qt_mvvm_1_1_message_config.html#a8ddd0717a5f8a07f520df25743ded0da" title="The general type of dialog to be shown. ">MessageConfig::type</a>. <a href="#a39d8182714fc1a0693129f30d20a4ae1">More...</a><br /></td></tr>
<tr class="separator:a39d8182714fc1a0693129f30d20a4ae1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_class_q_object"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_q_object')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="target="_blank" https://doc.qt.io/qt-5/class_q_object.html">QObject</a></td></tr>
<tr class="memitem:sender inherit pro_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="sender"></a>
<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_object.html">QObject</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#sender">sender</a> () const</td></tr>
<tr class="separator:sender inherit pro_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:senderSignalIndex inherit pro_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="senderSignalIndex"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#senderSignalIndex">senderSignalIndex</a> () const</td></tr>
<tr class="separator:senderSignalIndex inherit pro_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:receivers inherit pro_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="receivers"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#receivers">receivers</a> (const char *signal) const</td></tr>
<tr class="separator:receivers inherit pro_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:isSignalConnected inherit pro_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="isSignalConnected"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#isSignalConnected">isSignalConnected</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetamethod.html">QMetaMethod</a> &amp;signal) const</td></tr>
<tr class="separator:isSignalConnected inherit pro_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:timerEvent inherit pro_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="timerEvent"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#timerEvent">timerEvent</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qtimerevent.html">QTimerEvent</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#event">event</a>)</td></tr>
<tr class="separator:timerEvent inherit pro_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:childEvent inherit pro_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="childEvent"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#childEvent">childEvent</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qchildevent.html">QChildEvent</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#event">event</a>)</td></tr>
<tr class="separator:childEvent inherit pro_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:customEvent inherit pro_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="customEvent"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#customEvent">customEvent</a> (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qevent.html">QEvent</a> *<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#event">event</a>)</td></tr>
<tr class="separator:customEvent inherit pro_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:connectNotify inherit pro_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="connectNotify"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#connectNotify">connectNotify</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetamethod.html">QMetaMethod</a> &amp;signal)</td></tr>
<tr class="separator:connectNotify inherit pro_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:disconnectNotify inherit pro_methods_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="disconnectNotify"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#disconnectNotify">disconnectNotify</a> (const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetamethod.html">QMetaMethod</a> &amp;signal)</td></tr>
<tr class="separator:disconnectNotify inherit pro_methods_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:a8d7ca39d6041fe36b5fd620ff3fc13f4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_qt_mvvm_1_1_input_widget_factory.html">InputWidgetFactory</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a8d7ca39d6041fe36b5fd620ff3fc13f4">inputWidgetFactory</a></td></tr>
<tr class="memdesc:a8d7ca39d6041fe36b5fd620ff3fc13f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">The factory to create input widgets with, as injected property. <a href="#a8d7ca39d6041fe36b5fd620ff3fc13f4">More...</a><br /></td></tr>
<tr class="separator:a8d7ca39d6041fe36b5fd620ff3fc13f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header properties_class_q_object"><td colspan="2" onclick="javascript:toggleInherit('properties_class_q_object')"><img src="closed.png" alt="-"/>&#160;Properties inherited from <a class="el" href="target="_blank" https://doc.qt.io/qt-5/class_q_object.html">QObject</a></td></tr>
<tr class="memitem:objectName-prop inherit properties_class_q_object"><td class="memItemLeft" align="right" valign="top"><a id="objectName-prop"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#objectName-prop">objectName</a></td></tr>
<tr class="separator:objectName-prop inherit properties_class_q_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>The <a class="el" href="class_qt_mvvm_1_1_i_presenter.html" title="The interface for a GUI view presenter. ">IPresenter</a> implementation for the widgets module. </p>
<p>This presenter is automatically registered as the default presenter for the <a class="el" href="class_qt_mvvm_1_1_i_presenter.html" title="The interface for a GUI view presenter. ">IPresenter</a> interface with the <a class="el" href="class_qt_mvvm_1_1_service_registry.html" title="A singleton to prepare services for dependency injection and to access them. ">ServiceRegistry</a>, but as weak service, in order to make it possible to overwrite it.</p>
<p>The class handles all the logic required for presenting widget based views. You can extend this class and reimplement it's virtual methods if you need to adjust how certain views or dialogs are presented, or if you want to support custom stuff </p>
<p class="definition">Definition at line <a class="el" href="widgetspresenter_8h_source.html#l00019">19</a> of file <a class="el" href="widgetspresenter_8h_source.html">widgetspresenter.h</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="aa0813481dc8d752fd2d8bca9495bb998"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa0813481dc8d752fd2d8bca9495bb998">&#9670;&nbsp;</a></span>findWidgetMetaObject()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">QtMvvm::WidgetsPresenter::findWidgetMetaObject </td>
<td>(</td>
<td class="paramtype">const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> *&#160;</td>
<td class="paramname"><em>viewModelMetaObject</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Is called to find the meta object of the view to be used for the given viewmodel. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">viewModelMetaObject</td><td>The metobject of the viewmodel to find a view for </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The metaobject of the view to used, or <code>nullptr</code> if none was found </dd></dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname"><a class="el" href="class_qt_mvvm_1_1_presenter_exception.html" title="An exception to be thrown from the presenter if presenting fails. ">PresenterException</a></td><td>If no view could be found</td></tr>
</table>
</dd>
</dl>
<p>The default implementation simply check all explicitly registered views and then tries to match the name with the implicitly registered ones. If no match if found, the same is tried for the parent viewmodel type recursively, until the <a class="el" href="class_qt_mvvm_1_1_view_model.html" title="The base class for all viewmodels. ">ViewModel</a> base is reached. </p>
</div>
</div>
<a id="a4f4d51ec8d0dcfa190ee813937aa0166"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f4d51ec8d0dcfa190ee813937aa0166">&#9670;&nbsp;</a></span>present()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void QtMvvm::WidgetsPresenter::present </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_qt_mvvm_1_1_view_model.html">ViewModel</a> *&#160;</td>
<td class="paramname"><em>viewModel</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const QVariantHash &amp;&#160;</td>
<td class="paramname"><em>params</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt; <a class="el" href="class_qt_mvvm_1_1_view_model.html">ViewModel</a> &gt;&#160;</td>
<td class="paramname"><em>parent</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called to present a viewmodel. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">viewModel</td><td>The <a class="el" href="class_qt_mvvm_1_1_view_model.html" title="The base class for all viewmodels. ">ViewModel</a> to be presenter </td></tr>
<tr><td class="paramname">params</td><td>Additional parameters for the viemodel initialization </td></tr>
<tr><td class="paramname">parent</td><td>An optional parent for the viewmodels view </td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname"><a class="el" href="class_qt_mvvm_1_1_presenter_exception.html" title="An exception to be thrown from the presenter if presenting fails. ">PresenterException</a></td><td>When presenting fails for whatever reason</td></tr>
</table>
</dd>
</dl>
<p>This method should:</p>
<ol type="1">
<li>Find and create a view for the viewmodel</li>
<li>Use the view of the parent viewModel to make the new view a child of that parent view</li>
<li>Make the viewmodel a child of the view (via <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qobject.html#setParent">QObject::setParent</a>)</li>
<li>Call the viewmodels <a class="el" href="class_qt_mvvm_1_1_view_model.html#aed696c49a28b9615d3433c6a27006c70" title="Called by the presenter to initialize the viewmodel. ">ViewModel::onInit</a> method with the given parameters</li>
<li>Find a presentation method for the view (based on the view/viewmodel and/or parent)</li>
<li>Show the view to the user</li>
</ol>
<p>If this method returns it is assumed the presentation was successful. If you throw the exception, presenting has failed, and the app will automatically destroy the viewmodel and handle cleanups and results.</p>
<dl class="section note"><dt>Note</dt><dd>If you need to present asynchronous, then you need to perform this step yourself in case the asynchronous presentation failed.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_qt_mvvm_1_1_i_presenter.html#a6e2921a23d4a8513a80526141f79b4d1" title="Called to present a dialog via a message config. ">IPresenter::showDialog</a> </dd></dl>
<p>Implements <a class="el" href="class_qt_mvvm_1_1_i_presenter.html#a6bf902cf14d45c44fdcf78743d4e71a7">QtMvvm::IPresenter</a>.</p>
</div>
</div>
<a id="af85b64638d159a4d48be42ae332dc821"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af85b64638d159a4d48be42ae332dc821">&#9670;&nbsp;</a></span>presentFileDialog()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">QtMvvm::WidgetsPresenter::presentFileDialog </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="class_qt_mvvm_1_1_message_config.html">MessageConfig</a> &amp;&#160;</td>
<td class="paramname"><em>config</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt; <a class="el" href="class_qt_mvvm_1_1_message_result.html">MessageResult</a> &gt;&#160;</td>
<td class="paramname"><em>result</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called to present a dialog of <a class="el" href="class_qt_mvvm_1_1_message_config.html#a4e605350d96923e7bdf000388fc514f5" title="A type to show a generic file dialog. ">MessageConfig::TypeFileDialog</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">config</td><td>The configuration of the file dialog </td></tr>
<tr><td class="paramname">result</td><td>The message result to report the result to </td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname"><a class="el" href="class_qt_mvvm_1_1_presenter_exception.html" title="An exception to be thrown from the presenter if presenting fails. ">PresenterException</a></td><td>If presenting the dialog failed</td></tr>
</table>
</dd>
</dl>
<p>This method is called by <a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a4766ec05cd6999ee16505d472e48adf9" title="Called to present a dialog via a message config. ">showDialog()</a> to present a dialog from a message config with the <a class="el" href="class_qt_mvvm_1_1_message_config.html#a8ddd0717a5f8a07f520df25743ded0da" title="The general type of dialog to be shown. ">MessageConfig::type</a> set to <a class="el" href="class_qt_mvvm_1_1_message_config.html#a4e605350d96923e7bdf000388fc514f5" title="A type to show a generic file dialog. ">MessageConfig::TypeFileDialog</a>. You can override it to customize how to show them.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a4766ec05cd6999ee16505d472e48adf9" title="Called to present a dialog via a message config. ">WidgetsPresenter::showDialog</a> </dd></dl>
</div>
</div>
<a id="a18f10dbe6ed65ef932e7e9ec3b2e7ed5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18f10dbe6ed65ef932e7e9ec3b2e7ed5">&#9670;&nbsp;</a></span>presentInputDialog()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">QtMvvm::WidgetsPresenter::presentInputDialog </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="class_qt_mvvm_1_1_message_config.html">MessageConfig</a> &amp;&#160;</td>
<td class="paramname"><em>config</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt; <a class="el" href="class_qt_mvvm_1_1_message_result.html">MessageResult</a> &gt;&#160;</td>
<td class="paramname"><em>result</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called to present a dialog of <a class="el" href="class_qt_mvvm_1_1_message_config.html#ae80918dc646fe89d59a1ddfed729d1b7" title="A type to show a generic input dialog. ">MessageConfig::TypeInputDialog</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">config</td><td>The configuration of the input dialog </td></tr>
<tr><td class="paramname">result</td><td>The message result to report the result to </td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname"><a class="el" href="class_qt_mvvm_1_1_presenter_exception.html" title="An exception to be thrown from the presenter if presenting fails. ">PresenterException</a></td><td>If presenting the dialog failed</td></tr>
</table>
</dd>
</dl>
<p>This method is called by <a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a4766ec05cd6999ee16505d472e48adf9" title="Called to present a dialog via a message config. ">showDialog()</a> to present a dialog from a message config with the <a class="el" href="class_qt_mvvm_1_1_message_config.html#a8ddd0717a5f8a07f520df25743ded0da" title="The general type of dialog to be shown. ">MessageConfig::type</a> set to <a class="el" href="class_qt_mvvm_1_1_message_config.html#ae80918dc646fe89d59a1ddfed729d1b7" title="A type to show a generic input dialog. ">MessageConfig::TypeInputDialog</a>. You can override it to customize how to show them.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a4766ec05cd6999ee16505d472e48adf9" title="Called to present a dialog via a message config. ">WidgetsPresenter::showDialog</a> </dd></dl>
</div>
</div>
<a id="a33697bcd5ead0a2a1ac3f63c59fdfd2f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a33697bcd5ead0a2a1ac3f63c59fdfd2f">&#9670;&nbsp;</a></span>presentMessageBox()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">QtMvvm::WidgetsPresenter::presentMessageBox </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="class_qt_mvvm_1_1_message_config.html">MessageConfig</a> &amp;&#160;</td>
<td class="paramname"><em>config</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt; <a class="el" href="class_qt_mvvm_1_1_message_result.html">MessageResult</a> &gt;&#160;</td>
<td class="paramname"><em>result</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called to present a dialog of <a class="el" href="class_qt_mvvm_1_1_message_config.html#a4bf2b7c1738a86009303fbb07dcad08c" title="A type to show a standard message box. ">MessageConfig::TypeMessageBox</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">config</td><td>The configuration of the message box </td></tr>
<tr><td class="paramname">result</td><td>The message result to report the result to </td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname"><a class="el" href="class_qt_mvvm_1_1_presenter_exception.html" title="An exception to be thrown from the presenter if presenting fails. ">PresenterException</a></td><td>If presenting the dialog failed</td></tr>
</table>
</dd>
</dl>
<p>This method is called by <a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a4766ec05cd6999ee16505d472e48adf9" title="Called to present a dialog via a message config. ">showDialog()</a> to present a dialog from a message config with the <a class="el" href="class_qt_mvvm_1_1_message_config.html#a8ddd0717a5f8a07f520df25743ded0da" title="The general type of dialog to be shown. ">MessageConfig::type</a> set to <a class="el" href="class_qt_mvvm_1_1_message_config.html#a4bf2b7c1738a86009303fbb07dcad08c" title="A type to show a standard message box. ">MessageConfig::TypeMessageBox</a>. You can override it to customize how to show them.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a4766ec05cd6999ee16505d472e48adf9" title="Called to present a dialog via a message config. ">WidgetsPresenter::showDialog</a> </dd></dl>
</div>
</div>
<a id="a39d8182714fc1a0693129f30d20a4ae1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a39d8182714fc1a0693129f30d20a4ae1">&#9670;&nbsp;</a></span>presentOtherDialog()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">QtMvvm::WidgetsPresenter::presentOtherDialog </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="class_qt_mvvm_1_1_message_config.html">MessageConfig</a> &amp;&#160;</td>
<td class="paramname"><em>config</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qpointer.html">QPointer</a>&lt; <a class="el" href="class_qt_mvvm_1_1_message_result.html">MessageResult</a> &gt;&#160;</td>
<td class="paramname"><em>result</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called to present a dialog of a non standard <a class="el" href="class_qt_mvvm_1_1_message_config.html#a8ddd0717a5f8a07f520df25743ded0da" title="The general type of dialog to be shown. ">MessageConfig::type</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">config</td><td>The configuration of the dialog </td></tr>
<tr><td class="paramname">result</td><td>The message result to report the result to </td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname"><a class="el" href="class_qt_mvvm_1_1_presenter_exception.html" title="An exception to be thrown from the presenter if presenting fails. ">PresenterException</a></td><td>If presenting the dialog failed</td></tr>
</table>
</dd>
</dl>
<p>This method is called by <a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a4766ec05cd6999ee16505d472e48adf9" title="Called to present a dialog via a message config. ">showDialog()</a> to present a dialog from a message config with the <a class="el" href="class_qt_mvvm_1_1_message_config.html#a8ddd0717a5f8a07f520df25743ded0da" title="The general type of dialog to be shown. ">MessageConfig::type</a> set to to custom type (i.e. none of the 3 default types). The default implementation simply throws the <a class="el" href="class_qt_mvvm_1_1_presenter_exception.html" title="An exception to be thrown from the presenter if presenting fails. ">PresenterException</a>. If you want to support additional types to the 3 default types, reimplement this method to do so.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a4766ec05cd6999ee16505d472e48adf9" title="Called to present a dialog via a message config. ">WidgetsPresenter::showDialog</a> </dd></dl>
</div>
</div>
<a id="a0b665bb6c87884d5789f616814c80cf6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0b665bb6c87884d5789f616814c80cf6">&#9670;&nbsp;</a></span>registerView() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TView &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">QtMvvm::WidgetsPresenter::registerView </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Register a view to be found by the presenter. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">TView</td><td>The widget type register within the presenter. Must extend <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_widget.html">QWidget</a></td></tr>
</table>
</dd>
</dl>
<p>The widget is registered with the current presenter. It is registered implicitly, which means that it's name will be used to find it when a viewmodel is presented for it. Thus, it must be named after the viewmodel. If the viewmodel is for example named <code>MyViewModel</code>, then the view must start with <code>My</code> too. For example it can be named <code>MyWidget</code>, <code>MyDialog</code>, <code>MyWindow</code>, <code>MyView</code>, ...</p>
<dl class="section note"><dt>Note</dt><dd>Implicit detection of views for viewmodels can sometimes lead to ambiguities and thus a wrong view beeing found. In such cases, use <a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a3ff4fc6783162f3d9e8895d025e949c5" title="Register a view for a viewmodel to be found by the presenter. ">registerViewExplicitly()</a> instead.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a3ff4fc6783162f3d9e8895d025e949c5" title="Register a view for a viewmodel to be found by the presenter. ">WidgetsPresenter::registerViewExplicitly</a> </dd></dl>
<p class="definition">Definition at line <a class="el" href="widgetspresenter_8h_source.html#l00095">95</a> of file <a class="el" href="widgetspresenter_8h_source.html">widgetspresenter.h</a>.</p>
</div>
</div>
<a id="a2203a955a03770a6c877cbc54050cb97"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2203a955a03770a6c877cbc54050cb97">&#9670;&nbsp;</a></span>registerView() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">QtMvvm::WidgetsPresenter::registerView </td>
<td>(</td>
<td class="paramtype">const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> *&#160;</td>
<td class="paramname"><em>viewType</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Register a view to be found by the presenter. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">viewType</td><td>The widget type register within the presenter. Must extend <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_widget.html">QWidget</a></td></tr>
</table>
</dd>
</dl>
<p>The widget is registered with the current presenter. It is registered implicitly, which means that it's name will be used to find it when a viewmodel is presented for it. Thus, it must be named after the viewmodel. If the viewmodel is for example named <code>MyViewModel</code>, then the view must start with <code>My</code> too. For example it can be named <code>MyWidget</code>, <code>MyDialog</code>, <code>MyWindow</code>, <code>MyView</code>, ...</p>
<dl class="section note"><dt>Note</dt><dd>Implicit detection of views for viewmodels can sometimes lead to ambiguities and thus a wrong view beeing found. In such cases, use <a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a3ff4fc6783162f3d9e8895d025e949c5" title="Register a view for a viewmodel to be found by the presenter. ">registerViewExplicitly()</a> instead.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a3ff4fc6783162f3d9e8895d025e949c5" title="Register a view for a viewmodel to be found by the presenter. ">WidgetsPresenter::registerViewExplicitly</a> </dd></dl>
</div>
</div>
<a id="a3ff4fc6783162f3d9e8895d025e949c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3ff4fc6783162f3d9e8895d025e949c5">&#9670;&nbsp;</a></span>registerViewExplicitly() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TViewModel , typename TView &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">QtMvvm::WidgetsPresenter::registerViewExplicitly </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Register a view for a viewmodel to be found by the presenter. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">TViewModel</td><td>The viewmodel to to register the view for </td></tr>
<tr><td class="paramname">TView</td><td>The widget type register within the presenter. Must extend <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_widget.html">QWidget</a></td></tr>
</table>
</dd>
</dl>
<p>The widget is registered with the current presenter. It is registered explicitly, which means that whenever the given viewmodel is beeing presented, this exact view will be used. Explicit registration have precedence over implicit ones.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a0b665bb6c87884d5789f616814c80cf6" title="Register a view to be found by the presenter. ">WidgetsPresenter::registerView</a> </dd></dl>
<p class="definition">Definition at line <a class="el" href="widgetspresenter_8h_source.html#l00106">106</a> of file <a class="el" href="widgetspresenter_8h_source.html">widgetspresenter.h</a>.</p>
</div>
</div>
<a id="abca0029daffb05a12f28f2594a0c023f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abca0029daffb05a12f28f2594a0c023f">&#9670;&nbsp;</a></span>registerViewExplicitly() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">QtMvvm::WidgetsPresenter::registerViewExplicitly </td>
<td>(</td>
<td class="paramtype">const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> *&#160;</td>
<td class="paramname"><em>viewModelType</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmetaobject.html">QMetaObject</a> *&#160;</td>
<td class="paramname"><em>viewType</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Register a view for a viewmodel to be found by the presenter. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">viewModelType</td><td>The viewmodel to to register the view for </td></tr>
<tr><td class="paramname">viewType</td><td>The widget type register within the presenter. Must extend <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_widget.html">QWidget</a></td></tr>
</table>
</dd>
</dl>
<p>The widget is registered with the current presenter. It is registered explicitly, which means that whenever the given viewmodel is beeing presented, this exact view will be used. Explicit registration have precedence over implicit ones.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a0b665bb6c87884d5789f616814c80cf6" title="Register a view to be found by the presenter. ">WidgetsPresenter::registerView</a> </dd></dl>
</div>
</div>
<a id="a4766ec05cd6999ee16505d472e48adf9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4766ec05cd6999ee16505d472e48adf9">&#9670;&nbsp;</a></span>showDialog()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void QtMvvm::WidgetsPresenter::showDialog </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="class_qt_mvvm_1_1_message_config.html">MessageConfig</a> &amp;&#160;</td>
<td class="paramname"><em>config</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="class_qt_mvvm_1_1_message_result.html">MessageResult</a> *&#160;</td>
<td class="paramname"><em>result</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called to present a dialog via a message config. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">config</td><td>The configuration for the dialog to be shown </td></tr>
<tr><td class="paramname">result</td><td>A reference to the object to report results to </td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname"><a class="el" href="class_qt_mvvm_1_1_presenter_exception.html" title="An exception to be thrown from the presenter if presenting fails. ">PresenterException</a></td><td>When presenting fails for whatever reason</td></tr>
</table>
</dd>
</dl>
<p>This method should create a simple dialog based of the configuration passed to it. Read the <a class="el" href="class_qt_mvvm_1_1_message_config.html" title="A configuration for a simple dialog to be shown from the core code. ">MessageConfig</a> for more details on the parameters. The <a class="el" href="class_qt_mvvm_1_1_message_config.html#a8ddd0717a5f8a07f520df25743ded0da" title="The general type of dialog to be shown. ">MessageConfig::type</a> and <a class="el" href="class_qt_mvvm_1_1_message_config.html#aa9f8a83b2ce22d09daf24aad158d7974" title="A subtype for the dialog to specify what exactly it should show. ">MessageConfig::subType</a> properties are used to determine the kind of dialog to be shown. The other properties are used to configure the dialog.</p>
<p>The result is a reference to a result object to report the result value and the pressed button to. The result is owned by the caller, you must never delete it. Use the special "GUI methods" to report the result and configure a close target.</p>
<p>If this method returns it is assumed the presentation was successful. If you throw the exception, presenting has failed, and the app will automatically complete the message result with the <a class="el" href="class_qt_mvvm_1_1_message_config.html#ad6b7b271e558619f15c5eb9a3cf78fb8a83a48e3acfda22ae83280136ed2f6751" title="Equivalent to QMessageBox::NoButton. ">MessageConfig::NoButton</a> constant.</p>
<dl class="section note"><dt>Note</dt><dd>If you need to present asynchronous, then you need to perform this step yourself in case the asynchronous presentation failed.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_qt_mvvm_1_1_i_presenter.html#a6bf902cf14d45c44fdcf78743d4e71a7" title="Called to present a viewmodel. ">IPresenter::present</a>, <a class="el" href="class_qt_mvvm_1_1_message_config.html" title="A configuration for a simple dialog to be shown from the core code. ">MessageConfig</a>, <a class="el" href="class_qt_mvvm_1_1_message_result.html" title="A result watcher to get the result once a dialog has finished. ">MessageResult</a>, <a class="el" href="class_qt_mvvm_1_1_message_result.html#ac43f7ca1c7e3b10e6477c2a5d92348af" title="Completes the dialog and tells the result that it is finished. ">MessageResult::complete</a>, <a class="el" href="class_qt_mvvm_1_1_message_result.html#adf611c77583607f2ea90764871ccd3cd" title="Sets an object and a method to be called to close the dialog. ">MessageResult::setCloseTarget</a> </dd></dl>
<p>Implements <a class="el" href="class_qt_mvvm_1_1_i_presenter.html#a6e2921a23d4a8513a80526141f79b4d1">QtMvvm::IPresenter</a>.</p>
</div>
</div>
<a id="a2a2d1c292c4117b542a7a610709b2a17"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a2d1c292c4117b542a7a610709b2a17">&#9670;&nbsp;</a></span>showForeground()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">QtMvvm::WidgetsPresenter::showForeground </td>
<td>(</td>
<td class="paramtype"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_widget.html">QWidget</a> *&#160;</td>
<td class="paramname"><em>view</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called to show a widget in the foreground. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">view</td><td>The view to be presented</td></tr>
</table>
</dd>
</dl>
<p>This method is called by <a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a5e2f5776adff5584c1572e55b9fefd73" title="Try to present the given view on the parent view. ">tryPresent()</a> to simply show a standard window. The method however does not only show the window, but also makes shure it becomes the currently active foreground window.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a5e2f5776adff5584c1572e55b9fefd73" title="Try to present the given view on the parent view. ">WidgetsPresenter::tryPresent</a> </dd></dl>
</div>
</div>
<a id="a5e2f5776adff5584c1572e55b9fefd73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e2f5776adff5584c1572e55b9fefd73">&#9670;&nbsp;</a></span>tryPresent()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">QtMvvm::WidgetsPresenter::tryPresent </td>
<td>(</td>
<td class="paramtype"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_widget.html">QWidget</a> *&#160;</td>
<td class="paramname"><em>view</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtautoupdater/qtautoupdater.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/class_q_widget.html">QWidget</a> *&#160;</td>
<td class="paramname"><em>parentView</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Try to present the given view on the parent view. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">view</td><td>The view to be presented </td></tr>
<tr><td class="paramname">parentView</td><td>The parent view to present the view to </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if successfully presented, <code>false</code> if not</dd></dl>
<p>This method is called to perform the actual presentation (i.e. the parenting and how to show) the view. The default implementation first checks if the parent implements <a class="el" href="class_qt_mvvm_1_1_i_presenting_view.html" title="A simple interface to make it possible for any view to present subviews. ">IPresentingView</a> and if yes if it is able to present the view. If not, a bunch of standard widget types are checked for special presentation methods. QDialogs are presented via <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtwidgets/qtwidgets.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qdialog.html#open">QDialog::open</a>. QDockWidgets that are presented to a <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtwidgets/qtwidgets.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmainwindow.html">QMainWindow</a> are added as dock widget (<a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtwidgets/qtwidgets.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmainwindow.html#addDockWidget">QMainWindow::addDockWidget</a>). If the parent or its central widget are a <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtwidgets/qtwidgets.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmdiarea.html">QMdiArea</a>, and the views class name ends with <code>MdiWindow</code>, it is presented as <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtwidgets/qtwidgets.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmdisubwindow.html">QMdiSubWindow</a>. For all other cases, <a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a2a2d1c292c4117b542a7a610709b2a17" title="Called to show a widget in the foreground. ">showForeground()</a> is called.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a2a2d1c292c4117b542a7a610709b2a17" title="Called to show a widget in the foreground. ">WidgetsPresenter::showForeground</a>, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtwidgets/qtwidgets.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qdialog.html">QDialog</a>, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtwidgets/qtwidgets.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmainwindow.html">QMainWindow</a>, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtwidgets/qtwidgets.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qdockwidget.html">QDockWidget</a>, <a class="elRef" target="_blank" doxygen="/home/sky/Qt/Docs/Qt-5.10.1/qtwidgets/qtwidgets.tags:https://doc.qt.io/qt-5/" href="https://doc.qt.io/qt-5/qmdiarea.html">QMdiArea</a> </dd></dl>
</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a id="a8d7ca39d6041fe36b5fd620ff3fc13f4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8d7ca39d6041fe36b5fd620ff3fc13f4">&#9670;&nbsp;</a></span>inputWidgetFactory</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">QtMvvm::WidgetsPresenter::inputWidgetFactory</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">read</span><span class="mlabel">write</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>The factory to create input widgets with, as injected property. </p>
<p><b>Default:</b> <em>Injected</em> <br />
</p>
<p>Do not set this property yourself. It is automatically injected when showing the viewmodel. You can use the <a class="el" href="class_qt_mvvm_1_1_service_registry.html#abacfa0d81764df255df41e4ccf175ad8" title="Register a service for its interface via the type. ">ServiceRegistry::registerInterface</a> if you need to use a factory different from the default one.</p>
<table class="doxtable">
<tr>
<th colspan="2">Accessors </th></tr>
<tr>
<td><b>READ</b></td><td><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a8d7ca39d6041fe36b5fd620ff3fc13f4" title="The factory to create input widgets with, as injected property. ">inputWidgetFactory()</a> </td></tr>
<tr>
<td><b>WRITE</b></td><td><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#a77e042c6ebe285bd6fc26a3a0d58534f" title="WRITE accessor for WidgetsPresenter::inputWidgetFactory. ">setInputWidgetFactory()</a> </td></tr>
<tr>
<td><b>NOTIFY</b></td><td><a class="el" href="class_qt_mvvm_1_1_widgets_presenter.html#af669b0161a6a7d26d723ff1bd7a0b552" title="NOTIFY accessor for WidgetsPresenter::inputWidgetFactory. ">inputWidgetFactoryChanged()</a> </td></tr>
</table>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="injection_8h.html#a0a6e278ad53a06df6f32b1b636ec6151" title="Mark a property for injection. ">QTMVVM_INJECT</a> </dd></dl>
<p class="definition">Definition at line <a class="el" href="widgetspresenter_8h_source.html#l00025">25</a> of file <a class="el" href="widgetspresenter_8h_source.html">widgetspresenter.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="widgetspresenter_8h_source.html">widgetspresenter.h</a></li>
<li>widgetspresenter.dox</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Mar 14 2018 16:19:59 for QtMvvm by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.14
</small></address>
</body>
</html>