1
0
Fork 0
mirror of https://github.com/deltachat/deltachat-core.git synced 2025-10-04 18:29:19 +02:00
deltachat-core/docs/html/mrevent_8h.html
B. Petersen 2dd616d1e7 doxygen
2018-01-08 21:48:17 +01:00

557 lines
31 KiB
HTML

<!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.11"/>
<title>Delta Chat Core C-API: /home/bpetersen/projects/deltachat-core/src/mrevent.h File 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>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="user.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">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Delta Chat Core C-API
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</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="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> </div>
<div class="headertitle">
<div class="title">mrevent.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>The following constants are used as events reported to the callback given to <a class="el" href="classmrmailbox__t.html#a32825e3e0a1b16679580704a4b43db1a" title="Create a new mailbox object. ">mrmailbox_new()</a>.
<a href="#details">More...</a></p>
<p><a href="mrevent_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:abc46d188d1a1a25c92433aa05568e23b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#abc46d188d1a1a25c92433aa05568e23b">MR_EVENT_INFO</a>&#160;&#160;&#160;100</td></tr>
<tr class="memdesc:abc46d188d1a1a25c92433aa05568e23b"><td class="mdescLeft">&#160;</td><td class="mdescRight">The user may write an informational string to the log. <a href="#abc46d188d1a1a25c92433aa05568e23b">More...</a><br /></td></tr>
<tr class="separator:abc46d188d1a1a25c92433aa05568e23b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa124fce3009b0cf018f49b69b76bce55"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#aa124fce3009b0cf018f49b69b76bce55">MR_EVENT_WARNING</a>&#160;&#160;&#160;300</td></tr>
<tr class="memdesc:aa124fce3009b0cf018f49b69b76bce55"><td class="mdescLeft">&#160;</td><td class="mdescRight">The user should write a warning string to the log. <a href="#aa124fce3009b0cf018f49b69b76bce55">More...</a><br /></td></tr>
<tr class="separator:aa124fce3009b0cf018f49b69b76bce55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7088b24d6d49fee42d6b83360bf1fcca"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#a7088b24d6d49fee42d6b83360bf1fcca">MR_EVENT_ERROR</a>&#160;&#160;&#160;400</td></tr>
<tr class="memdesc:a7088b24d6d49fee42d6b83360bf1fcca"><td class="mdescLeft">&#160;</td><td class="mdescRight">The user should show an error. <a href="#a7088b24d6d49fee42d6b83360bf1fcca">More...</a><br /></td></tr>
<tr class="separator:a7088b24d6d49fee42d6b83360bf1fcca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17eaeb107cbab46c0d9271d0b5560fc8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#a17eaeb107cbab46c0d9271d0b5560fc8">MR_EVENT_MSGS_CHANGED</a>&#160;&#160;&#160;2000</td></tr>
<tr class="memdesc:a17eaeb107cbab46c0d9271d0b5560fc8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Messages or chats changed. <a href="#a17eaeb107cbab46c0d9271d0b5560fc8">More...</a><br /></td></tr>
<tr class="separator:a17eaeb107cbab46c0d9271d0b5560fc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a548525a9d4cc03cd240ca6dda4246ae8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#a548525a9d4cc03cd240ca6dda4246ae8">MR_EVENT_INCOMING_MSG</a>&#160;&#160;&#160;2005</td></tr>
<tr class="memdesc:a548525a9d4cc03cd240ca6dda4246ae8"><td class="mdescLeft">&#160;</td><td class="mdescRight">There is a fresh message. <a href="#a548525a9d4cc03cd240ca6dda4246ae8">More...</a><br /></td></tr>
<tr class="separator:a548525a9d4cc03cd240ca6dda4246ae8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a10c4a8b6fa9014e5725e3a1daadf301b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#a10c4a8b6fa9014e5725e3a1daadf301b">MR_EVENT_MSG_DELIVERED</a>&#160;&#160;&#160;2010</td></tr>
<tr class="memdesc:a10c4a8b6fa9014e5725e3a1daadf301b"><td class="mdescLeft">&#160;</td><td class="mdescRight">A single message is sent successfully (state changed from MR_STATE_OUT_PENDING to MR_STATE_OUT_DELIVERED, see mrmsg_t::m_state). <a href="#a10c4a8b6fa9014e5725e3a1daadf301b">More...</a><br /></td></tr>
<tr class="separator:a10c4a8b6fa9014e5725e3a1daadf301b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a080965cf1f3dd138999c56ec30580b58"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#a080965cf1f3dd138999c56ec30580b58">MR_EVENT_MSG_READ</a>&#160;&#160;&#160;2015</td></tr>
<tr class="memdesc:a080965cf1f3dd138999c56ec30580b58"><td class="mdescLeft">&#160;</td><td class="mdescRight">A single message is read by the receiver (state changed from MR_STATE_OUT_DELIVERED to MR_STATE_OUT_MDN_RCVD, see mrmsg_t::m_state). <a href="#a080965cf1f3dd138999c56ec30580b58">More...</a><br /></td></tr>
<tr class="separator:a080965cf1f3dd138999c56ec30580b58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ac741b81ec97628f44795600c0e4d4c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#a5ac741b81ec97628f44795600c0e4d4c">MR_EVENT_CHAT_MODIFIED</a>&#160;&#160;&#160;2020</td></tr>
<tr class="memdesc:a5ac741b81ec97628f44795600c0e4d4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Group changed. <a href="#a5ac741b81ec97628f44795600c0e4d4c">More...</a><br /></td></tr>
<tr class="separator:a5ac741b81ec97628f44795600c0e4d4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad50b3a76349834631dc26b6c9557be8f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#ad50b3a76349834631dc26b6c9557be8f">MR_EVENT_CONTACTS_CHANGED</a>&#160;&#160;&#160;2030</td></tr>
<tr class="memdesc:ad50b3a76349834631dc26b6c9557be8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contact(s) created, renamed, blocked or deleted. <a href="#ad50b3a76349834631dc26b6c9557be8f">More...</a><br /></td></tr>
<tr class="separator:ad50b3a76349834631dc26b6c9557be8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb0881d4c7c887b8f371cedc471846b5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#abb0881d4c7c887b8f371cedc471846b5">MR_EVENT_CONFIGURE_PROGRESS</a>&#160;&#160;&#160;2041</td></tr>
<tr class="memdesc:abb0881d4c7c887b8f371cedc471846b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inform about the configuration progress started by <a class="el" href="classmrmailbox__t.html#a42ca741cc08785585f1dc74d515be5ef" title="Configure and connect a mailbox. ">mrmailbox_configure_and_connect()</a>. <a href="#abb0881d4c7c887b8f371cedc471846b5">More...</a><br /></td></tr>
<tr class="separator:abb0881d4c7c887b8f371cedc471846b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af046556dbd33f0bff86448d62df2b5f7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#af046556dbd33f0bff86448d62df2b5f7">MR_EVENT_IMEX_PROGRESS</a>&#160;&#160;&#160;2051</td></tr>
<tr class="memdesc:af046556dbd33f0bff86448d62df2b5f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inform about the import/export progress started by <a class="el" href="classmrmailbox__t.html#a7db60273eae74ebbc74231f4c6d7204f" title="Import/export things. ">mrmailbox_imex()</a>. <a href="#af046556dbd33f0bff86448d62df2b5f7">More...</a><br /></td></tr>
<tr class="separator:af046556dbd33f0bff86448d62df2b5f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb3ce82a01722f902b02c8e62cf301ab"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#aeb3ce82a01722f902b02c8e62cf301ab">MR_EVENT_IMEX_FILE_WRITTEN</a>&#160;&#160;&#160;2052</td></tr>
<tr class="memdesc:aeb3ce82a01722f902b02c8e62cf301ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">A file has been exported. <a href="#aeb3ce82a01722f902b02c8e62cf301ab">More...</a><br /></td></tr>
<tr class="separator:aeb3ce82a01722f902b02c8e62cf301ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cc59f2599dc071ebe686b3dd9eb5ae2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#a9cc59f2599dc071ebe686b3dd9eb5ae2">MR_EVENT_IS_OFFLINE</a>&#160;&#160;&#160;2081</td></tr>
<tr class="memdesc:a9cc59f2599dc071ebe686b3dd9eb5ae2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ask the frontend about the offline state. <a href="#a9cc59f2599dc071ebe686b3dd9eb5ae2">More...</a><br /></td></tr>
<tr class="separator:a9cc59f2599dc071ebe686b3dd9eb5ae2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf5dbdab58ffcf836d65cd91283b701a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#aaf5dbdab58ffcf836d65cd91283b701a">MR_EVENT_GET_STRING</a>&#160;&#160;&#160;2091</td></tr>
<tr class="memdesc:aaf5dbdab58ffcf836d65cd91283b701a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Requeste a localized string from the frontend. <a href="#aaf5dbdab58ffcf836d65cd91283b701a">More...</a><br /></td></tr>
<tr class="separator:aaf5dbdab58ffcf836d65cd91283b701a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a465a35db3742af9f1a3e39b2ede585da"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#a465a35db3742af9f1a3e39b2ede585da">MR_EVENT_GET_QUANTITY_STRING</a>&#160;&#160;&#160;2092</td></tr>
<tr class="memdesc:a465a35db3742af9f1a3e39b2ede585da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Requeste a localized quantitiy string from the frontend. <a href="#a465a35db3742af9f1a3e39b2ede585da">More...</a><br /></td></tr>
<tr class="separator:a465a35db3742af9f1a3e39b2ede585da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba8b1a46a18cd05070b301c757a74ddc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#aba8b1a46a18cd05070b301c757a74ddc">MR_EVENT_HTTP_GET</a>&#160;&#160;&#160;2100</td></tr>
<tr class="memdesc:aba8b1a46a18cd05070b301c757a74ddc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request a HTTP-file from the frontend. <a href="#aba8b1a46a18cd05070b301c757a74ddc">More...</a><br /></td></tr>
<tr class="separator:aba8b1a46a18cd05070b301c757a74ddc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8312b0e8f1e7422300a5502d86e0db01"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mrevent_8h.html#a8312b0e8f1e7422300a5502d86e0db01">MR_EVENT_WAKE_LOCK</a>&#160;&#160;&#160;2110</td></tr>
<tr class="memdesc:a8312b0e8f1e7422300a5502d86e0db01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Acquire or release a wakelock. <a href="#a8312b0e8f1e7422300a5502d86e0db01">More...</a><br /></td></tr>
<tr class="separator:a8312b0e8f1e7422300a5502d86e0db01"><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 following constants are used as events reported to the callback given to <a class="el" href="classmrmailbox__t.html#a32825e3e0a1b16679580704a4b43db1a" title="Create a new mailbox object. ">mrmailbox_new()</a>. </p>
<p>If you do not want to handle an event, it is always safe to return 0, so there is no need to add a "case" for every event. </p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="abc46d188d1a1a25c92433aa05568e23b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_INFO&#160;&#160;&#160;100</td>
</tr>
</table>
</div><div class="memdoc">
<p>The user may write an informational string to the log. </p>
<p>Passed to the callback given to <a class="el" href="classmrmailbox__t.html#a32825e3e0a1b16679580704a4b43db1a" title="Create a new mailbox object. ">mrmailbox_new()</a>. This event should not be reported using a popup or something like that.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>0</td></tr>
<tr><td class="paramname">data2</td><td>Info string</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
<a class="anchor" id="aa124fce3009b0cf018f49b69b76bce55"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_WARNING&#160;&#160;&#160;300</td>
</tr>
</table>
</div><div class="memdoc">
<p>The user should write a warning string to the log. </p>
<p>Passed to the callback given to <a class="el" href="classmrmailbox__t.html#a32825e3e0a1b16679580704a4b43db1a" title="Create a new mailbox object. ">mrmailbox_new()</a>. This event should not be reported using a popup or something like that.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>0</td></tr>
<tr><td class="paramname">data2</td><td>Warning string</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
<a class="anchor" id="a7088b24d6d49fee42d6b83360bf1fcca"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_ERROR&#160;&#160;&#160;400</td>
</tr>
</table>
</div><div class="memdoc">
<p>The user should show an error. </p>
<p>The error must be reported to the user by a non-disturbing bubble or so.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>0</td></tr>
<tr><td class="paramname">data2</td><td>Error string</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
<a class="anchor" id="a17eaeb107cbab46c0d9271d0b5560fc8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_MSGS_CHANGED&#160;&#160;&#160;2000</td>
</tr>
</table>
</div><div class="memdoc">
<p>Messages or chats changed. </p>
<p>One or more messages or chats changed for various reasons in the database:</p><ul>
<li>Messages sent, received or removed</li>
<li>A message could not be sent (see <a class="el" href="classmrmsg__t.html#a1f411e4be17fb5fe408a1aa74cba90a5" title="Get the state of a message. ">mrmsg_get_state()</a>/MR_STATE_OUT_ERROR)</li>
<li>Chats created, deleted or archived</li>
<li>A draft has been set</li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>chat_id for single added messages</td></tr>
<tr><td class="paramname">data2</td><td>msg_id for single added messages</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
<a class="anchor" id="a548525a9d4cc03cd240ca6dda4246ae8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_INCOMING_MSG&#160;&#160;&#160;2005</td>
</tr>
</table>
</div><div class="memdoc">
<p>There is a fresh message. </p>
<p>Typically, the user will show an notification when receiving this message.</p>
<p>There is no extra <a class="el" href="mrevent_8h.html#a17eaeb107cbab46c0d9271d0b5560fc8" title="Messages or chats changed. ">MR_EVENT_MSGS_CHANGED</a> event send together with this event.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>chat_id</td></tr>
<tr><td class="paramname">data2</td><td>msg_id</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
<a class="anchor" id="a10c4a8b6fa9014e5725e3a1daadf301b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_MSG_DELIVERED&#160;&#160;&#160;2010</td>
</tr>
</table>
</div><div class="memdoc">
<p>A single message is sent successfully (state changed from MR_STATE_OUT_PENDING to MR_STATE_OUT_DELIVERED, see mrmsg_t::m_state). </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>chat_id</td></tr>
<tr><td class="paramname">data2</td><td>msg_id</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
<a class="anchor" id="a080965cf1f3dd138999c56ec30580b58"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_MSG_READ&#160;&#160;&#160;2015</td>
</tr>
</table>
</div><div class="memdoc">
<p>A single message is read by the receiver (state changed from MR_STATE_OUT_DELIVERED to MR_STATE_OUT_MDN_RCVD, see mrmsg_t::m_state). </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>chat_id</td></tr>
<tr><td class="paramname">data2</td><td>msg_id</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
<a class="anchor" id="a5ac741b81ec97628f44795600c0e4d4c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_CHAT_MODIFIED&#160;&#160;&#160;2020</td>
</tr>
</table>
</div><div class="memdoc">
<p>Group changed. </p>
<p>The name or the image of a chat group was changed or members were added or removed. See <a class="el" href="classmrmailbox__t.html#a8772e9bb55b02299f65ebd8bcc682bb1" title="Set group name. ">mrmailbox_set_chat_name()</a>, <a class="el" href="classmrmailbox__t.html#a08c527170681c949ddd6931a004fdd5f" title="Set group profile image. ">mrmailbox_set_chat_profile_image()</a>, <a class="el" href="classmrmailbox__t.html#a96368620971935c7ac4a0bb324ece2c9" title="Add a member to a group. ">mrmailbox_add_contact_to_chat()</a> and <a class="el" href="classmrmailbox__t.html#a40226d401548b002a62648ea054ac635" title="Remove a member from a group. ">mrmailbox_remove_contact_from_chat()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>chat_id</td></tr>
<tr><td class="paramname">data2</td><td>0</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
<a class="anchor" id="ad50b3a76349834631dc26b6c9557be8f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_CONTACTS_CHANGED&#160;&#160;&#160;2030</td>
</tr>
</table>
</div><div class="memdoc">
<p>Contact(s) created, renamed, blocked or deleted. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>0</td></tr>
<tr><td class="paramname">data2</td><td>0</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
<a class="anchor" id="abb0881d4c7c887b8f371cedc471846b5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_CONFIGURE_PROGRESS&#160;&#160;&#160;2041</td>
</tr>
</table>
</div><div class="memdoc">
<p>Inform about the configuration progress started by <a class="el" href="classmrmailbox__t.html#a42ca741cc08785585f1dc74d515be5ef" title="Configure and connect a mailbox. ">mrmailbox_configure_and_connect()</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>Permille</td></tr>
<tr><td class="paramname">data2</td><td>0</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
<a class="anchor" id="af046556dbd33f0bff86448d62df2b5f7"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_IMEX_PROGRESS&#160;&#160;&#160;2051</td>
</tr>
</table>
</div><div class="memdoc">
<p>Inform about the import/export progress started by <a class="el" href="classmrmailbox__t.html#a7db60273eae74ebbc74231f4c6d7204f" title="Import/export things. ">mrmailbox_imex()</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>Permille</td></tr>
<tr><td class="paramname">data2</td><td>0</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
<a class="anchor" id="aeb3ce82a01722f902b02c8e62cf301ab"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_IMEX_FILE_WRITTEN&#160;&#160;&#160;2052</td>
</tr>
</table>
</div><div class="memdoc">
<p>A file has been exported. </p>
<p>A file has been written by <a class="el" href="classmrmailbox__t.html#a7db60273eae74ebbc74231f4c6d7204f" title="Import/export things. ">mrmailbox_imex()</a>. This event may be sent multiple times by a single call to <a class="el" href="classmrmailbox__t.html#a7db60273eae74ebbc74231f4c6d7204f" title="Import/export things. ">mrmailbox_imex()</a>.</p>
<p>A typical purpose for a handler of this event may be to make the file public to some system services.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>File name</td></tr>
<tr><td class="paramname">data2</td><td>0</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
<a class="anchor" id="a9cc59f2599dc071ebe686b3dd9eb5ae2"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_IS_OFFLINE&#160;&#160;&#160;2081</td>
</tr>
</table>
</div><div class="memdoc">
<p>Ask the frontend about the offline state. </p>
<p>This function may be provided by the frontend. If we already know, that we're offline, eg. there is no need to try to connect and things will speed up.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>0</td></tr>
<tr><td class="paramname">data2</td><td>0</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0=online, 1=offline </dd></dl>
</div>
</div>
<a class="anchor" id="aaf5dbdab58ffcf836d65cd91283b701a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_GET_STRING&#160;&#160;&#160;2091</td>
</tr>
</table>
</div><div class="memdoc">
<p>Requeste a localized string from the frontend. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>ID of the string to request, one of the MR_STR_* constants as defined in <a class="el" href="mrstock_8h_source.html">mrstock.h</a></td></tr>
<tr><td class="paramname">data2</td><td>0</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Null-terminated UTF-8 string. CAVE: The string will be free()'d by the core, so make sure it is allocated using malloc() or a compatible function. If you cannot provide the requested string, just return 0; the core will use a default string then. </dd></dl>
</div>
</div>
<a class="anchor" id="a465a35db3742af9f1a3e39b2ede585da"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_GET_QUANTITY_STRING&#160;&#160;&#160;2092</td>
</tr>
</table>
</div><div class="memdoc">
<p>Requeste a localized quantitiy string from the frontend. </p>
<p>Quantitiy strings may have eg. different plural forms and usually also include the count itself to the string. Typical strings in this form are "1 Message" vs. "2 Messages".</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>ID of the string to request, one of the MR_STR_* constants as defined in <a class="el" href="mrstock_8h_source.html">mrstock.h</a></td></tr>
<tr><td class="paramname">data2</td><td>The count. The frontend may return different strings on this value and normally also includes the value itself to the string.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Null-terminated UTF-8 string. CAVE: The string will be free()'d by the core, so make sure it is allocated using malloc() or a compatible function. If you cannot provide the requested string, just return 0; the core will use a default string then. </dd></dl>
</div>
</div>
<a class="anchor" id="aba8b1a46a18cd05070b301c757a74ddc"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_HTTP_GET&#160;&#160;&#160;2100</td>
</tr>
</table>
</div><div class="memdoc">
<p>Request a HTTP-file from the frontend. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>URL</td></tr>
<tr><td class="paramname">data2</td><td>0</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The content of the requested file as a null-terminated UTF-8 string. CAVE: The string will be free()'d by the core, so make sure it is allocated using malloc() or a compatible function. If you cannot provide the content, just return 0. </dd></dl>
</div>
</div>
<a class="anchor" id="a8312b0e8f1e7422300a5502d86e0db01"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MR_EVENT_WAKE_LOCK&#160;&#160;&#160;2110</td>
</tr>
</table>
</div><div class="memdoc">
<p>Acquire or release a wakelock. </p>
<p>The core surrounds critical functions that should not be killed by the operating system with wakelocks. Before a critical function <em>MR_EVENT_WAKE_LOCK with data1=1</em> is called, it it finishes, <em>MR_EVENT_WAKE_LOCK with data1=0</em> is called. If you do not need this functionality, just ignore this event.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data1</td><td>1=acquire wakelock, 0=release wakelock, the core does not make nested or unsynchronized calls</td></tr>
<tr><td class="paramname">data2</td><td>0</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 </dd></dl>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
</html>