NimfIM.html 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  5. <title>NimfIM: Nimf Reference Manual</title>
  6. <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
  7. <link rel="home" href="index.html" title="Nimf Reference Manual">
  8. <link rel="up" href="libnimf-api.html" title="Part I. libnimf API">
  9. <link rel="prev" href="libnimf-api.html" title="Part I. libnimf API">
  10. <link rel="next" href="nimf-events.html" title="Events">
  11. <meta name="generator" content="GTK-Doc V1.34.0 (XML mode)">
  12. <link rel="stylesheet" href="style.css" type="text/css">
  13. </head>
  14. <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
  15. <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
  16. <td width="100%" align="left" class="shortcuts">
  17. <a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
  18. <a href="#NimfIM.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
  19. <a href="#NimfIM.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_signals">  <span class="dim">|</span> 
  20. <a href="#NimfIM.signals" class="shortcut">Signals</a></span>
  21. </td>
  22. <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
  23. <td><a accesskey="u" href="libnimf-api.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
  24. <td><a accesskey="p" href="libnimf-api.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
  25. <td><a accesskey="n" href="nimf-events.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
  26. </tr></table>
  27. <div class="refentry">
  28. <a name="NimfIM"></a><div class="titlepage"></div>
  29. <div class="refnamediv"><table width="100%"><tr>
  30. <td valign="top">
  31. <h2><span class="refentrytitle"><a name="NimfIM.top_of_page"></a>NimfIM</span></h2>
  32. <p>NimfIM</p>
  33. </td>
  34. <td class="gallery_image" valign="top" align="right"></td>
  35. </tr></table></div>
  36. <div class="refsect1">
  37. <a name="NimfIM.functions"></a><h2>Functions</h2>
  38. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  39. <colgroup>
  40. <col width="150px" class="functions_proto_type">
  41. <col class="functions_proto_name">
  42. </colgroup>
  43. <tbody>
  44. <tr>
  45. <td class="function_type">
  46. <a class="link" href="NimfIM.html" title="NimfIM"><span class="returnvalue">NimfIM</span></a> *
  47. </td>
  48. <td class="function_name">
  49. <a class="link" href="NimfIM.html#nimf-im-new" title="nimf_im_new ()">nimf_im_new</a> <span class="c_punctuation">()</span>
  50. </td>
  51. </tr>
  52. <tr>
  53. <td class="function_type">
  54. <span class="returnvalue">void</span>
  55. </td>
  56. <td class="function_name">
  57. <a class="link" href="NimfIM.html#nimf-im-focus-in" title="nimf_im_focus_in ()">nimf_im_focus_in</a> <span class="c_punctuation">()</span>
  58. </td>
  59. </tr>
  60. <tr>
  61. <td class="function_type">
  62. <span class="returnvalue">void</span>
  63. </td>
  64. <td class="function_name">
  65. <a class="link" href="NimfIM.html#nimf-im-focus-out" title="nimf_im_focus_out ()">nimf_im_focus_out</a> <span class="c_punctuation">()</span>
  66. </td>
  67. </tr>
  68. <tr>
  69. <td class="function_type">
  70. <span class="returnvalue">void</span>
  71. </td>
  72. <td class="function_name">
  73. <a class="link" href="NimfIM.html#nimf-im-reset" title="nimf_im_reset ()">nimf_im_reset</a> <span class="c_punctuation">()</span>
  74. </td>
  75. </tr>
  76. <tr>
  77. <td class="function_type">
  78. <span class="returnvalue">gboolean</span>
  79. </td>
  80. <td class="function_name">
  81. <a class="link" href="NimfIM.html#nimf-im-filter-event" title="nimf_im_filter_event ()">nimf_im_filter_event</a> <span class="c_punctuation">()</span>
  82. </td>
  83. </tr>
  84. <tr>
  85. <td class="function_type">
  86. <span class="returnvalue">void</span>
  87. </td>
  88. <td class="function_name">
  89. <a class="link" href="NimfIM.html#nimf-im-get-preedit-string" title="nimf_im_get_preedit_string ()">nimf_im_get_preedit_string</a> <span class="c_punctuation">()</span>
  90. </td>
  91. </tr>
  92. <tr>
  93. <td class="function_type">
  94. <span class="returnvalue">void</span>
  95. </td>
  96. <td class="function_name">
  97. <a class="link" href="NimfIM.html#nimf-im-set-cursor-location" title="nimf_im_set_cursor_location ()">nimf_im_set_cursor_location</a> <span class="c_punctuation">()</span>
  98. </td>
  99. </tr>
  100. <tr>
  101. <td class="function_type">
  102. <span class="returnvalue">void</span>
  103. </td>
  104. <td class="function_name">
  105. <a class="link" href="NimfIM.html#nimf-im-set-use-preedit" title="nimf_im_set_use_preedit ()">nimf_im_set_use_preedit</a> <span class="c_punctuation">()</span>
  106. </td>
  107. </tr>
  108. <tr>
  109. <td class="function_type">
  110. <span class="returnvalue">void</span>
  111. </td>
  112. <td class="function_name">
  113. <a class="link" href="NimfIM.html#nimf-im-set-surrounding" title="nimf_im_set_surrounding ()">nimf_im_set_surrounding</a> <span class="c_punctuation">()</span>
  114. </td>
  115. </tr>
  116. </tbody>
  117. </table></div>
  118. </div>
  119. <div class="refsect1">
  120. <a name="NimfIM.signals"></a><h2>Signals</h2>
  121. <div class="informaltable"><table class="informaltable" border="0">
  122. <colgroup>
  123. <col width="150px" class="signal_proto_type">
  124. <col width="300px" class="signal_proto_name">
  125. <col width="200px" class="signal_proto_flags">
  126. </colgroup>
  127. <tbody>
  128. <tr>
  129. <td class="signal_type"><span class="returnvalue">void</span></td>
  130. <td class="signal_name"><a class="link" href="NimfIM.html#NimfIM-beep" title="The “beep” signal">beep</a></td>
  131. <td class="signal_flags">Run Last</td>
  132. </tr>
  133. <tr>
  134. <td class="signal_type"><span class="returnvalue">void</span></td>
  135. <td class="signal_name"><a class="link" href="NimfIM.html#NimfIM-commit" title="The “commit” signal">commit</a></td>
  136. <td class="signal_flags">Run Last</td>
  137. </tr>
  138. <tr>
  139. <td class="signal_type"><span class="returnvalue">gboolean</span></td>
  140. <td class="signal_name"><a class="link" href="NimfIM.html#NimfIM-delete-surrounding" title="The “delete-surrounding” signal">delete-surrounding</a></td>
  141. <td class="signal_flags">Run Last</td>
  142. </tr>
  143. <tr>
  144. <td class="signal_type"><span class="returnvalue">void</span></td>
  145. <td class="signal_name"><a class="link" href="NimfIM.html#NimfIM-preedit-changed" title="The “preedit-changed” signal">preedit-changed</a></td>
  146. <td class="signal_flags">Run Last</td>
  147. </tr>
  148. <tr>
  149. <td class="signal_type"><span class="returnvalue">void</span></td>
  150. <td class="signal_name"><a class="link" href="NimfIM.html#NimfIM-preedit-end" title="The “preedit-end” signal">preedit-end</a></td>
  151. <td class="signal_flags">Run Last</td>
  152. </tr>
  153. <tr>
  154. <td class="signal_type"><span class="returnvalue">void</span></td>
  155. <td class="signal_name"><a class="link" href="NimfIM.html#NimfIM-preedit-start" title="The “preedit-start” signal">preedit-start</a></td>
  156. <td class="signal_flags">Run Last</td>
  157. </tr>
  158. <tr>
  159. <td class="signal_type"><span class="returnvalue">gboolean</span></td>
  160. <td class="signal_name"><a class="link" href="NimfIM.html#NimfIM-retrieve-surrounding" title="The “retrieve-surrounding” signal">retrieve-surrounding</a></td>
  161. <td class="signal_flags">Run Last</td>
  162. </tr>
  163. </tbody>
  164. </table></div>
  165. </div>
  166. <div class="refsect1">
  167. <a name="NimfIM.object-hierarchy"></a><h2>Object Hierarchy</h2>
  168. <pre class="screen"> GObject
  169. <span class="lineart">╰──</span> NimfIM
  170. </pre>
  171. </div>
  172. <div class="refsect1">
  173. <a name="NimfIM.description"></a><h2>Description</h2>
  174. </div>
  175. <div class="refsect1">
  176. <a name="NimfIM.functions_details"></a><h2>Functions</h2>
  177. <div class="refsect2">
  178. <a name="nimf-im-new"></a><h3>nimf_im_new ()</h3>
  179. <pre class="programlisting"><a class="link" href="NimfIM.html" title="NimfIM"><span class="returnvalue">NimfIM</span></a> *
  180. nimf_im_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
  181. <p>Creates a new <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a>.</p>
  182. <div class="refsect3">
  183. <a name="nimf-im-new.returns"></a><h4>Returns</h4>
  184. <p> a new <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p>
  185. </div>
  186. </div>
  187. <hr>
  188. <div class="refsect2">
  189. <a name="nimf-im-focus-in"></a><h3>nimf_im_focus_in ()</h3>
  190. <pre class="programlisting"><span class="returnvalue">void</span>
  191. nimf_im_focus_in (<em class="parameter"><code><a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im</code></em>);</pre>
  192. <p>Notifies the input method that the caller has gained focus.</p>
  193. <div class="refsect3">
  194. <a name="nimf-im-focus-in.parameters"></a><h4>Parameters</h4>
  195. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  196. <colgroup>
  197. <col width="150px" class="parameters_name">
  198. <col class="parameters_description">
  199. <col width="200px" class="parameters_annotations">
  200. </colgroup>
  201. <tbody><tr>
  202. <td class="parameter_name"><p>im</p></td>
  203. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  204. <td class="parameter_annotations"> </td>
  205. </tr></tbody>
  206. </table></div>
  207. </div>
  208. </div>
  209. <hr>
  210. <div class="refsect2">
  211. <a name="nimf-im-focus-out"></a><h3>nimf_im_focus_out ()</h3>
  212. <pre class="programlisting"><span class="returnvalue">void</span>
  213. nimf_im_focus_out (<em class="parameter"><code><a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im</code></em>);</pre>
  214. <p>Notifies the input method that the caller has lost focus.</p>
  215. <div class="refsect3">
  216. <a name="nimf-im-focus-out.parameters"></a><h4>Parameters</h4>
  217. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  218. <colgroup>
  219. <col width="150px" class="parameters_name">
  220. <col class="parameters_description">
  221. <col width="200px" class="parameters_annotations">
  222. </colgroup>
  223. <tbody><tr>
  224. <td class="parameter_name"><p>im</p></td>
  225. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  226. <td class="parameter_annotations"> </td>
  227. </tr></tbody>
  228. </table></div>
  229. </div>
  230. </div>
  231. <hr>
  232. <div class="refsect2">
  233. <a name="nimf-im-reset"></a><h3>nimf_im_reset ()</h3>
  234. <pre class="programlisting"><span class="returnvalue">void</span>
  235. nimf_im_reset (<em class="parameter"><code><a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im</code></em>);</pre>
  236. <p>Reset the input method.</p>
  237. <div class="refsect3">
  238. <a name="nimf-im-reset.parameters"></a><h4>Parameters</h4>
  239. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  240. <colgroup>
  241. <col width="150px" class="parameters_name">
  242. <col class="parameters_description">
  243. <col width="200px" class="parameters_annotations">
  244. </colgroup>
  245. <tbody><tr>
  246. <td class="parameter_name"><p>im</p></td>
  247. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  248. <td class="parameter_annotations"> </td>
  249. </tr></tbody>
  250. </table></div>
  251. </div>
  252. </div>
  253. <hr>
  254. <div class="refsect2">
  255. <a name="nimf-im-filter-event"></a><h3>nimf_im_filter_event ()</h3>
  256. <pre class="programlisting"><span class="returnvalue">gboolean</span>
  257. nimf_im_filter_event (<em class="parameter"><code><a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im</code></em>,
  258. <em class="parameter"><code><a class="link" href="nimf-events.html#NimfEvent" title="union NimfEvent"><span class="type">NimfEvent</span></a> *event</code></em>);</pre>
  259. <p>Let the input method handle the <em class="parameter"><code>event</code></em>
  260. .</p>
  261. <div class="refsect3">
  262. <a name="nimf-im-filter-event.parameters"></a><h4>Parameters</h4>
  263. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  264. <colgroup>
  265. <col width="150px" class="parameters_name">
  266. <col class="parameters_description">
  267. <col width="200px" class="parameters_annotations">
  268. </colgroup>
  269. <tbody>
  270. <tr>
  271. <td class="parameter_name"><p>im</p></td>
  272. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  273. <td class="parameter_annotations"> </td>
  274. </tr>
  275. <tr>
  276. <td class="parameter_name"><p>event</p></td>
  277. <td class="parameter_description"><p>a <a class="link" href="nimf-events.html#NimfEvent" title="union NimfEvent"><span class="type">NimfEvent</span></a></p></td>
  278. <td class="parameter_annotations"> </td>
  279. </tr>
  280. </tbody>
  281. </table></div>
  282. </div>
  283. <div class="refsect3">
  284. <a name="nimf-im-filter-event.returns"></a><h4>Returns</h4>
  285. <p> <code class="literal">TRUE</code> if the input method handled the <em class="parameter"><code>event</code></em>
  286. .</p>
  287. </div>
  288. </div>
  289. <hr>
  290. <div class="refsect2">
  291. <a name="nimf-im-get-preedit-string"></a><h3>nimf_im_get_preedit_string ()</h3>
  292. <pre class="programlisting"><span class="returnvalue">void</span>
  293. nimf_im_get_preedit_string (<em class="parameter"><code><a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im</code></em>,
  294. <em class="parameter"><code><span class="type">gchar</span> **str</code></em>,
  295. <em class="parameter"><code><a class="link" href="nimf-types.html#NimfPreeditAttr" title="NimfPreeditAttr"><span class="type">NimfPreeditAttr</span></a> ***attrs</code></em>,
  296. <em class="parameter"><code><span class="type">gint</span> *cursor_pos</code></em>);</pre>
  297. <p>Retrieve the current preedit string, an array of attributes to apply to the
  298. string and position of cursor within the preedit string from the input
  299. method.</p>
  300. <div class="refsect3">
  301. <a name="nimf-im-get-preedit-string.parameters"></a><h4>Parameters</h4>
  302. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  303. <colgroup>
  304. <col width="150px" class="parameters_name">
  305. <col class="parameters_description">
  306. <col width="200px" class="parameters_annotations">
  307. </colgroup>
  308. <tbody>
  309. <tr>
  310. <td class="parameter_name"><p>im</p></td>
  311. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  312. <td class="parameter_annotations"> </td>
  313. </tr>
  314. <tr>
  315. <td class="parameter_name"><p>str</p></td>
  316. <td class="parameter_description"><p>location to store the retrieved
  317. string. The string retrieved must be freed with <code class="function">g_free()</code>. </p></td>
  318. <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="The caller owns the data, and is responsible for free it."><span class="acronym">transfer full</span></acronym>]</span></td>
  319. </tr>
  320. <tr>
  321. <td class="parameter_name"><p>attrs</p></td>
  322. <td class="parameter_description"><p>location to store the retrieved
  323. attribute array. When you are done with this array, you
  324. must free it with <a class="link" href="nimf-types.html#nimf-preedit-attr-freev" title="nimf_preedit_attr_freev ()"><code class="function">nimf_preedit_attr_freev()</code></a>. </p></td>
  325. <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="The caller owns the data, and is responsible for free it."><span class="acronym">transfer full</span></acronym>]</span></td>
  326. </tr>
  327. <tr>
  328. <td class="parameter_name"><p>cursor_pos</p></td>
  329. <td class="parameter_description"><p>location to store position of cursor (in
  330. characters) within the preedit string. </p></td>
  331. <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="The caller owns the data, and is responsible for free it."><span class="acronym">transfer full</span></acronym>]</span></td>
  332. </tr>
  333. </tbody>
  334. </table></div>
  335. </div>
  336. </div>
  337. <hr>
  338. <div class="refsect2">
  339. <a name="nimf-im-set-cursor-location"></a><h3>nimf_im_set_cursor_location ()</h3>
  340. <pre class="programlisting"><span class="returnvalue">void</span>
  341. nimf_im_set_cursor_location (<em class="parameter"><code><a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im</code></em>,
  342. <em class="parameter"><code>const <a class="link" href="nimf-types.html#NimfRectangle" title="NimfRectangle"><span class="type">NimfRectangle</span></a> *area</code></em>);</pre>
  343. <p>Notifies the input method that a change in cursor position has been made. The
  344. location is the position of a window position in root window coordinates.</p>
  345. <div class="refsect3">
  346. <a name="nimf-im-set-cursor-location.parameters"></a><h4>Parameters</h4>
  347. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  348. <colgroup>
  349. <col width="150px" class="parameters_name">
  350. <col class="parameters_description">
  351. <col width="200px" class="parameters_annotations">
  352. </colgroup>
  353. <tbody>
  354. <tr>
  355. <td class="parameter_name"><p>im</p></td>
  356. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  357. <td class="parameter_annotations"> </td>
  358. </tr>
  359. <tr>
  360. <td class="parameter_name"><p>area</p></td>
  361. <td class="parameter_description"><p>new location</p></td>
  362. <td class="parameter_annotations"> </td>
  363. </tr>
  364. </tbody>
  365. </table></div>
  366. </div>
  367. </div>
  368. <hr>
  369. <div class="refsect2">
  370. <a name="nimf-im-set-use-preedit"></a><h3>nimf_im_set_use_preedit ()</h3>
  371. <pre class="programlisting"><span class="returnvalue">void</span>
  372. nimf_im_set_use_preedit (<em class="parameter"><code><a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im</code></em>,
  373. <em class="parameter"><code><span class="type">gboolean</span> use_preedit</code></em>);</pre>
  374. <p>If <em class="parameter"><code>use_preedit</code></em>
  375. is <code class="literal">FALSE</code> (default is <code class="literal">TRUE</code>), then the input method may use
  376. some other input styles, such as over-the-spot, off-the-spot or root-window.</p>
  377. <div class="refsect3">
  378. <a name="nimf-im-set-use-preedit.parameters"></a><h4>Parameters</h4>
  379. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  380. <colgroup>
  381. <col width="150px" class="parameters_name">
  382. <col class="parameters_description">
  383. <col width="200px" class="parameters_annotations">
  384. </colgroup>
  385. <tbody>
  386. <tr>
  387. <td class="parameter_name"><p>im</p></td>
  388. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  389. <td class="parameter_annotations"> </td>
  390. </tr>
  391. <tr>
  392. <td class="parameter_name"><p>use_preedit</p></td>
  393. <td class="parameter_description"><p>whether the input method should use an on-the-spot input style</p></td>
  394. <td class="parameter_annotations"> </td>
  395. </tr>
  396. </tbody>
  397. </table></div>
  398. </div>
  399. </div>
  400. <hr>
  401. <div class="refsect2">
  402. <a name="nimf-im-set-surrounding"></a><h3>nimf_im_set_surrounding ()</h3>
  403. <pre class="programlisting"><span class="returnvalue">void</span>
  404. nimf_im_set_surrounding (<em class="parameter"><code><a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im</code></em>,
  405. <em class="parameter"><code>const <span class="type">char</span> *text</code></em>,
  406. <em class="parameter"><code><span class="type">gint</span> len</code></em>,
  407. <em class="parameter"><code><span class="type">gint</span> cursor_index</code></em>);</pre>
  408. <p>Sets surrounding text to input method. This function is expected to be
  409. called in response to NimfIM::retrieve-surrounding which is emitted by
  410. <a class="link" href="NimfEngine.html#nimf-engine-emit-retrieve-surrounding" title="nimf_engine_emit_retrieve_surrounding ()"><code class="function">nimf_engine_emit_retrieve_surrounding()</code></a>.</p>
  411. <div class="refsect3">
  412. <a name="nimf-im-set-surrounding.parameters"></a><h4>Parameters</h4>
  413. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  414. <colgroup>
  415. <col width="150px" class="parameters_name">
  416. <col class="parameters_description">
  417. <col width="200px" class="parameters_annotations">
  418. </colgroup>
  419. <tbody>
  420. <tr>
  421. <td class="parameter_name"><p>im</p></td>
  422. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  423. <td class="parameter_annotations"> </td>
  424. </tr>
  425. <tr>
  426. <td class="parameter_name"><p>text</p></td>
  427. <td class="parameter_description"><p>surrounding text</p></td>
  428. <td class="parameter_annotations"> </td>
  429. </tr>
  430. <tr>
  431. <td class="parameter_name"><p>len</p></td>
  432. <td class="parameter_description"><p>the byte length of <em class="parameter"><code>text</code></em>
  433. , or -1 if <em class="parameter"><code>text</code></em>
  434. is nul-terminated.</p></td>
  435. <td class="parameter_annotations"> </td>
  436. </tr>
  437. <tr>
  438. <td class="parameter_name"><p>cursor_index</p></td>
  439. <td class="parameter_description"><p>the character index of the cursor within <em class="parameter"><code>text</code></em>
  440. .</p></td>
  441. <td class="parameter_annotations"> </td>
  442. </tr>
  443. </tbody>
  444. </table></div>
  445. </div>
  446. </div>
  447. </div>
  448. <div class="refsect1">
  449. <a name="NimfIM.signal-details"></a><h2>Signal Details</h2>
  450. <div class="refsect2">
  451. <a name="NimfIM-beep"></a><h3>The <code class="literal">“beep”</code> signal</h3>
  452. <pre class="programlisting"><span class="returnvalue">void</span>
  453. user_function (<a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im,
  454. <span class="type">gpointer</span> user_data)</pre>
  455. <p>The <a class="link" href="NimfIM.html#NimfIM-beep" title="The “beep” signal"><span class="type">“beep”</span></a> signal is emitted when the input method needs to beep,
  456. if supported.</p>
  457. <div class="refsect3">
  458. <a name="NimfIM-beep.parameters"></a><h4>Parameters</h4>
  459. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  460. <colgroup>
  461. <col width="150px" class="parameters_name">
  462. <col class="parameters_description">
  463. <col width="200px" class="parameters_annotations">
  464. </colgroup>
  465. <tbody>
  466. <tr>
  467. <td class="parameter_name"><p>im</p></td>
  468. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  469. <td class="parameter_annotations"> </td>
  470. </tr>
  471. <tr>
  472. <td class="parameter_name"><p>user_data</p></td>
  473. <td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
  474. <td class="parameter_annotations"> </td>
  475. </tr>
  476. </tbody>
  477. </table></div>
  478. </div>
  479. <p>Flags: Run Last</p>
  480. </div>
  481. <hr>
  482. <div class="refsect2">
  483. <a name="NimfIM-commit"></a><h3>The <code class="literal">“commit”</code> signal</h3>
  484. <pre class="programlisting"><span class="returnvalue">void</span>
  485. user_function (<a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im,
  486. <span class="type">char</span> *text,
  487. <span class="type">gpointer</span> user_data)</pre>
  488. <p>The <a class="link" href="NimfIM.html#NimfIM-commit" title="The “commit” signal"><span class="type">“commit”</span></a> signal is emitted when a complete input sequence has
  489. been entered by the user.</p>
  490. <div class="refsect3">
  491. <a name="NimfIM-commit.parameters"></a><h4>Parameters</h4>
  492. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  493. <colgroup>
  494. <col width="150px" class="parameters_name">
  495. <col class="parameters_description">
  496. <col width="200px" class="parameters_annotations">
  497. </colgroup>
  498. <tbody>
  499. <tr>
  500. <td class="parameter_name"><p>im</p></td>
  501. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  502. <td class="parameter_annotations"> </td>
  503. </tr>
  504. <tr>
  505. <td class="parameter_name"><p>text</p></td>
  506. <td class="parameter_description"><p>text to commit</p></td>
  507. <td class="parameter_annotations"> </td>
  508. </tr>
  509. <tr>
  510. <td class="parameter_name"><p>user_data</p></td>
  511. <td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
  512. <td class="parameter_annotations"> </td>
  513. </tr>
  514. </tbody>
  515. </table></div>
  516. </div>
  517. <p>Flags: Run Last</p>
  518. </div>
  519. <hr>
  520. <div class="refsect2">
  521. <a name="NimfIM-delete-surrounding"></a><h3>The <code class="literal">“delete-surrounding”</code> signal</h3>
  522. <pre class="programlisting"><span class="returnvalue">gboolean</span>
  523. user_function (<a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im,
  524. <span class="type">int</span> offset,
  525. <span class="type">int</span> n_chars,
  526. <span class="type">gpointer</span> user_data)</pre>
  527. <p>The <a class="link" href="NimfIM.html#NimfIM-delete-surrounding" title="The “delete-surrounding” signal"><span class="type">“delete-surrounding”</span></a> signal is emitted when the input method
  528. needs to delete all or part of the text surrounding the cursor.</p>
  529. <div class="refsect3">
  530. <a name="NimfIM-delete-surrounding.parameters"></a><h4>Parameters</h4>
  531. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  532. <colgroup>
  533. <col width="150px" class="parameters_name">
  534. <col class="parameters_description">
  535. <col width="200px" class="parameters_annotations">
  536. </colgroup>
  537. <tbody>
  538. <tr>
  539. <td class="parameter_name"><p>im</p></td>
  540. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  541. <td class="parameter_annotations"> </td>
  542. </tr>
  543. <tr>
  544. <td class="parameter_name"><p>offset</p></td>
  545. <td class="parameter_description"><p>the character offset from the cursor position of the text to be
  546. deleted. A negative value indicates a position before the cursor.</p></td>
  547. <td class="parameter_annotations"> </td>
  548. </tr>
  549. <tr>
  550. <td class="parameter_name"><p>n_chars</p></td>
  551. <td class="parameter_description"><p>the number of characters to be deleted</p></td>
  552. <td class="parameter_annotations"> </td>
  553. </tr>
  554. <tr>
  555. <td class="parameter_name"><p>user_data</p></td>
  556. <td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
  557. <td class="parameter_annotations"> </td>
  558. </tr>
  559. </tbody>
  560. </table></div>
  561. </div>
  562. <div class="refsect3">
  563. <a name="NimfIM-delete-surrounding.returns"></a><h4>Returns</h4>
  564. <p> <code class="literal">TRUE</code> if the signal was handled.</p>
  565. </div>
  566. <p>Flags: Run Last</p>
  567. </div>
  568. <hr>
  569. <div class="refsect2">
  570. <a name="NimfIM-preedit-changed"></a><h3>The <code class="literal">“preedit-changed”</code> signal</h3>
  571. <pre class="programlisting"><span class="returnvalue">void</span>
  572. user_function (<a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im,
  573. <span class="type">gpointer</span> user_data)</pre>
  574. <p>The <a class="link" href="NimfIM.html#NimfIM-preedit-changed" title="The “preedit-changed” signal"><span class="type">“preedit-changed”</span></a> signal is emitted whenever the preedit
  575. sequence has been changed.</p>
  576. <div class="refsect3">
  577. <a name="NimfIM-preedit-changed.parameters"></a><h4>Parameters</h4>
  578. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  579. <colgroup>
  580. <col width="150px" class="parameters_name">
  581. <col class="parameters_description">
  582. <col width="200px" class="parameters_annotations">
  583. </colgroup>
  584. <tbody>
  585. <tr>
  586. <td class="parameter_name"><p>im</p></td>
  587. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  588. <td class="parameter_annotations"> </td>
  589. </tr>
  590. <tr>
  591. <td class="parameter_name"><p>user_data</p></td>
  592. <td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
  593. <td class="parameter_annotations"> </td>
  594. </tr>
  595. </tbody>
  596. </table></div>
  597. </div>
  598. <p>Flags: Run Last</p>
  599. </div>
  600. <hr>
  601. <div class="refsect2">
  602. <a name="NimfIM-preedit-end"></a><h3>The <code class="literal">“preedit-end”</code> signal</h3>
  603. <pre class="programlisting"><span class="returnvalue">void</span>
  604. user_function (<a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im,
  605. <span class="type">gpointer</span> user_data)</pre>
  606. <p>The <a class="link" href="NimfIM.html#NimfIM-preedit-end" title="The “preedit-end” signal"><span class="type">“preedit-end”</span></a> signal is emitted when a preediting sequence has
  607. been completed or canceled.</p>
  608. <div class="refsect3">
  609. <a name="NimfIM-preedit-end.parameters"></a><h4>Parameters</h4>
  610. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  611. <colgroup>
  612. <col width="150px" class="parameters_name">
  613. <col class="parameters_description">
  614. <col width="200px" class="parameters_annotations">
  615. </colgroup>
  616. <tbody>
  617. <tr>
  618. <td class="parameter_name"><p>im</p></td>
  619. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  620. <td class="parameter_annotations"> </td>
  621. </tr>
  622. <tr>
  623. <td class="parameter_name"><p>user_data</p></td>
  624. <td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
  625. <td class="parameter_annotations"> </td>
  626. </tr>
  627. </tbody>
  628. </table></div>
  629. </div>
  630. <p>Flags: Run Last</p>
  631. </div>
  632. <hr>
  633. <div class="refsect2">
  634. <a name="NimfIM-preedit-start"></a><h3>The <code class="literal">“preedit-start”</code> signal</h3>
  635. <pre class="programlisting"><span class="returnvalue">void</span>
  636. user_function (<a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im,
  637. <span class="type">gpointer</span> user_data)</pre>
  638. <p>The <a class="link" href="NimfIM.html#NimfIM-preedit-start" title="The “preedit-start” signal"><span class="type">“preedit-start”</span></a> signal is emitted when a new preediting
  639. sequence starts.</p>
  640. <div class="refsect3">
  641. <a name="NimfIM-preedit-start.parameters"></a><h4>Parameters</h4>
  642. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  643. <colgroup>
  644. <col width="150px" class="parameters_name">
  645. <col class="parameters_description">
  646. <col width="200px" class="parameters_annotations">
  647. </colgroup>
  648. <tbody>
  649. <tr>
  650. <td class="parameter_name"><p>im</p></td>
  651. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  652. <td class="parameter_annotations"> </td>
  653. </tr>
  654. <tr>
  655. <td class="parameter_name"><p>user_data</p></td>
  656. <td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
  657. <td class="parameter_annotations"> </td>
  658. </tr>
  659. </tbody>
  660. </table></div>
  661. </div>
  662. <p>Flags: Run Last</p>
  663. </div>
  664. <hr>
  665. <div class="refsect2">
  666. <a name="NimfIM-retrieve-surrounding"></a><h3>The <code class="literal">“retrieve-surrounding”</code> signal</h3>
  667. <pre class="programlisting"><span class="returnvalue">gboolean</span>
  668. user_function (<a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a> *im,
  669. <span class="type">gpointer</span> user_data)</pre>
  670. <p>The <a class="link" href="NimfIM.html#NimfIM-retrieve-surrounding" title="The “retrieve-surrounding” signal"><span class="type">“retrieve-surrounding”</span></a> signal is emitted when the input method
  671. requires the text surrounding the cursor. The callback should set the
  672. input method surrounding text by calling the <a class="link" href="NimfIM.html#nimf-im-set-surrounding" title="nimf_im_set_surrounding ()"><code class="function">nimf_im_set_surrounding()</code></a>
  673. method.</p>
  674. <div class="refsect3">
  675. <a name="NimfIM-retrieve-surrounding.parameters"></a><h4>Parameters</h4>
  676. <div class="informaltable"><table class="informaltable" width="100%" border="0">
  677. <colgroup>
  678. <col width="150px" class="parameters_name">
  679. <col class="parameters_description">
  680. <col width="200px" class="parameters_annotations">
  681. </colgroup>
  682. <tbody>
  683. <tr>
  684. <td class="parameter_name"><p>im</p></td>
  685. <td class="parameter_description"><p>a <a class="link" href="NimfIM.html" title="NimfIM"><span class="type">NimfIM</span></a></p></td>
  686. <td class="parameter_annotations"> </td>
  687. </tr>
  688. <tr>
  689. <td class="parameter_name"><p>user_data</p></td>
  690. <td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
  691. <td class="parameter_annotations"> </td>
  692. </tr>
  693. </tbody>
  694. </table></div>
  695. </div>
  696. <div class="refsect3">
  697. <a name="NimfIM-retrieve-surrounding.returns"></a><h4>Returns</h4>
  698. <p> <code class="literal">TRUE</code> if the signal was handled.</p>
  699. </div>
  700. <p>Flags: Run Last</p>
  701. </div>
  702. </div>
  703. </div>
  704. <div class="footer">
  705. <hr>Generated by GTK-Doc V1.34.0</div>
  706. </body>
  707. </html>