<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>scim: scim::FrontEndHotkeyMatcher Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.0 --> <div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li id="current"><a href="classes.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul></div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul></div> <div class="nav"> <a class="el" href="a00157.html">scim</a>::<a class="el" href="a00033.html">FrontEndHotkeyMatcher</a></div> <h1>scim::FrontEndHotkeyMatcher Class Reference<br> <small> [<a class="el" href="a00158.html">Accessories</a>]</small> </h1><!-- doxytag: class="scim::FrontEndHotkeyMatcher" -->This class hold all FrontEnd specific Hotkeys, such as trigger keys, on/off keys, etc. <a href="#_details">More...</a> <p> <code>#include <scim_hotkey.h></code> <p> <a href="a00367.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#5a64fd1eee7e198c43bb91b32cc85d73">FrontEndHotkeyMatcher</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#2f4dc95aaef27913772934d97f95d97c">~FrontEndHotkeyMatcher</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#59c35a8351087f62145bc8a7d90470fd">load_hotkeys</a> (const <a class="el" href="a00070.html">ConfigPointer</a> &config)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Load all FrontEnd specific Hotkeys from Config. <a href="#59c35a8351087f62145bc8a7d90470fd"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#a26275a1319b16b4928192971762a534">save_hotkeys</a> (const <a class="el" href="a00070.html">ConfigPointer</a> &config) const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Save all FrontEnd specific Hotkeys to Config. <a href="#a26275a1319b16b4928192971762a534"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#e22c67af831883a5ba8ea117a1894c9d">add_hotkey</a> (const <a class="el" href="a00054.html">KeyEvent</a> &key, <a class="el" href="a00158.html#gb15cba53bb52488932e2f9d9f51234d5">FrontEndHotkeyAction</a> action)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add a Hotkey for an FrontEnd into this <a class="el" href="a00033.html">FrontEndHotkeyMatcher</a>. <a href="#e22c67af831883a5ba8ea117a1894c9d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#172255f27c605cdce400c6c3e2082424">add_hotkeys</a> (const <a class="el" href="a00158.html#gfe3e8c1f1276da4a6331fa96fb1b2398">KeyEventList</a> &keys, <a class="el" href="a00158.html#gb15cba53bb52488932e2f9d9f51234d5">FrontEndHotkeyAction</a> action)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add a set of Hotkeys for an FrontEnd into this <a class="el" href="a00033.html">FrontEndHotkeyMatcher</a>. <a href="#172255f27c605cdce400c6c3e2082424"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#8925d747a18104425d4a5d3670832804">find_hotkeys</a> (<a class="el" href="a00158.html#gb15cba53bb52488932e2f9d9f51234d5">FrontEndHotkeyAction</a> action, <a class="el" href="a00158.html#gfe3e8c1f1276da4a6331fa96fb1b2398">KeyEventList</a> &keys) const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Find all Hotkeys binded to a specific action. <a href="#8925d747a18104425d4a5d3670832804"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#c4949000f2476f18a98bc93b50d509dd">get_all_hotkeys</a> (<a class="el" href="a00158.html#gfe3e8c1f1276da4a6331fa96fb1b2398">KeyEventList</a> &keys, std::vector< <a class="el" href="a00158.html#gb15cba53bb52488932e2f9d9f51234d5">FrontEndHotkeyAction</a> > &actions) const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get all hotkeys in this <a class="el" href="a00033.html">FrontEndHotkeyMatcher</a>. <a href="#c4949000f2476f18a98bc93b50d509dd"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#fdfadbe267f978558c441ef76581e96e">reset</a> (void)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Reset the <a class="el" href="a00033.html">FrontEndHotkeyMatcher</a>. <a href="#fdfadbe267f978558c441ef76581e96e"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#8e9b3e4bdd6a078412df6db87a1b9320">clear</a> (void)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Clear all Hotkeys and reset the <a class="el" href="a00033.html">FrontEndHotkeyMatcher</a>. <a href="#8e9b3e4bdd6a078412df6db87a1b9320"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#19637103b94bf493ca3e210642d2e7f3">push_key_event</a> (const <a class="el" href="a00054.html">KeyEvent</a> &key)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Push a <a class="el" href="a00054.html">KeyEvent</a> into the queue. <a href="#19637103b94bf493ca3e210642d2e7f3"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#d9a31740aecc78dd2f6e8daa4013eeaa">is_matched</a> (void) const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check if the last <a class="el" href="a00054.html">KeyEvent</a> pushed by push_key_event () matched with any Hotkey. <a href="#d9a31740aecc78dd2f6e8daa4013eeaa"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00158.html#gb15cba53bb52488932e2f9d9f51234d5">FrontEndHotkeyAction</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00033.html#aa9a7bb3359a56e2aff3fcaf69fa1527">get_match_result</a> (void) const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the match result. <a href="#aa9a7bb3359a56e2aff3fcaf69fa1527"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> This class hold all FrontEnd specific Hotkeys, such as trigger keys, on/off keys, etc. <p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="5a64fd1eee7e198c43bb91b32cc85d73"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::FrontEndHotkeyMatcher" ref="5a64fd1eee7e198c43bb91b32cc85d73" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">scim::FrontEndHotkeyMatcher::FrontEndHotkeyMatcher </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="2f4dc95aaef27913772934d97f95d97c"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::~FrontEndHotkeyMatcher" ref="2f4dc95aaef27913772934d97f95d97c" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">scim::FrontEndHotkeyMatcher::~FrontEndHotkeyMatcher </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="59c35a8351087f62145bc8a7d90470fd"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::load_hotkeys" ref="59c35a8351087f62145bc8a7d90470fd" args="(const ConfigPointer &config)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::FrontEndHotkeyMatcher::load_hotkeys </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00070.html">ConfigPointer</a> & </td> <td class="paramname"> <em>config</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Load all FrontEnd specific Hotkeys from Config. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>config</em> </td><td>The Config object in which the Hotkeys are stored. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="a26275a1319b16b4928192971762a534"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::save_hotkeys" ref="a26275a1319b16b4928192971762a534" args="(const ConfigPointer &config) const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::FrontEndHotkeyMatcher::save_hotkeys </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00070.html">ConfigPointer</a> & </td> <td class="paramname"> <em>config</em> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Save all FrontEnd specific Hotkeys to Config. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>config</em> </td><td>Store all Hotkeys to this Config object. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="e22c67af831883a5ba8ea117a1894c9d"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::add_hotkey" ref="e22c67af831883a5ba8ea117a1894c9d" args="(const KeyEvent &key, FrontEndHotkeyAction action)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::FrontEndHotkeyMatcher::add_hotkey </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00054.html">KeyEvent</a> & </td> <td class="paramname"> <em>key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00158.html#gb15cba53bb52488932e2f9d9f51234d5">FrontEndHotkeyAction</a> </td> <td class="paramname"> <em>action</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Add a Hotkey for an FrontEnd into this <a class="el" href="a00033.html">FrontEndHotkeyMatcher</a>. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>key</em> </td><td>The Hotkey. </td></tr> <tr><td valign="top"></td><td valign="top"><em>action</em> </td><td>The action to do when the hotkey is matched. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="172255f27c605cdce400c6c3e2082424"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::add_hotkeys" ref="172255f27c605cdce400c6c3e2082424" args="(const KeyEventList &keys, FrontEndHotkeyAction action)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::FrontEndHotkeyMatcher::add_hotkeys </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00158.html#gfe3e8c1f1276da4a6331fa96fb1b2398">KeyEventList</a> & </td> <td class="paramname"> <em>keys</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00158.html#gb15cba53bb52488932e2f9d9f51234d5">FrontEndHotkeyAction</a> </td> <td class="paramname"> <em>action</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Add a set of Hotkeys for an FrontEnd into this <a class="el" href="a00033.html">FrontEndHotkeyMatcher</a>. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>keys</em> </td><td>The Hotkeys. </td></tr> <tr><td valign="top"></td><td valign="top"><em>action</em> </td><td>The action to do when the hotkey is matched. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="8925d747a18104425d4a5d3670832804"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::find_hotkeys" ref="8925d747a18104425d4a5d3670832804" args="(FrontEndHotkeyAction action, KeyEventList &keys) const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_t scim::FrontEndHotkeyMatcher::find_hotkeys </td> <td>(</td> <td class="paramtype"><a class="el" href="a00158.html#gb15cba53bb52488932e2f9d9f51234d5">FrontEndHotkeyAction</a> </td> <td class="paramname"> <em>action</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00158.html#gfe3e8c1f1276da4a6331fa96fb1b2398">KeyEventList</a> & </td> <td class="paramname"> <em>keys</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Find all Hotkeys binded to a specific action. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>action</em> </td><td>The action to be found. </td></tr> <tr><td valign="top"></td><td valign="top"><em>keys</em> </td><td>A KeyEventList object to hold all KeyEvents binded to the action. </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The number of Hotkeys found. </dd></dl> </div> </div><p> <a class="anchor" name="c4949000f2476f18a98bc93b50d509dd"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::get_all_hotkeys" ref="c4949000f2476f18a98bc93b50d509dd" args="(KeyEventList &keys, std::vector< FrontEndHotkeyAction > &actions) const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_t scim::FrontEndHotkeyMatcher::get_all_hotkeys </td> <td>(</td> <td class="paramtype"><a class="el" href="a00158.html#gfe3e8c1f1276da4a6331fa96fb1b2398">KeyEventList</a> & </td> <td class="paramname"> <em>keys</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">std::vector< <a class="el" href="a00158.html#gb15cba53bb52488932e2f9d9f51234d5">FrontEndHotkeyAction</a> > & </td> <td class="paramname"> <em>actions</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Get all hotkeys in this <a class="el" href="a00033.html">FrontEndHotkeyMatcher</a>. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>keys</em> </td><td>A list of all Hotkeys. </td></tr> <tr><td valign="top"></td><td valign="top"><em>actions</em> </td><td>A list of all corresponding actions </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="fdfadbe267f978558c441ef76581e96e"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::reset" ref="fdfadbe267f978558c441ef76581e96e" args="(void)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::FrontEndHotkeyMatcher::reset </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Reset the <a class="el" href="a00033.html">FrontEndHotkeyMatcher</a>. <p> The <a class="el" href="a00054.html">KeyEvent</a> queue will be cleared, all state will be reset. The Hotkeys which were already added will not be touched. </div> </div><p> <a class="anchor" name="8e9b3e4bdd6a078412df6db87a1b9320"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::clear" ref="8e9b3e4bdd6a078412df6db87a1b9320" args="(void)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::FrontEndHotkeyMatcher::clear </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Clear all Hotkeys and reset the <a class="el" href="a00033.html">FrontEndHotkeyMatcher</a>. <p> </div> </div><p> <a class="anchor" name="19637103b94bf493ca3e210642d2e7f3"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::push_key_event" ref="19637103b94bf493ca3e210642d2e7f3" args="(const KeyEvent &key)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::FrontEndHotkeyMatcher::push_key_event </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00054.html">KeyEvent</a> & </td> <td class="paramname"> <em>key</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Push a <a class="el" href="a00054.html">KeyEvent</a> into the queue. <p> This <a class="el" href="a00054.html">KeyEvent</a> will be matched against the available Hotkeys immediately.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>key</em> </td><td>The key to be pushed into. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="d9a31740aecc78dd2f6e8daa4013eeaa"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::is_matched" ref="d9a31740aecc78dd2f6e8daa4013eeaa" args="(void) const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::FrontEndHotkeyMatcher::is_matched </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Check if the last <a class="el" href="a00054.html">KeyEvent</a> pushed by push_key_event () matched with any Hotkey. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>true If the <a class="el" href="a00054.html">KeyEvent</a> matched with a Hotkey. </dd></dl> </div> </div><p> <a class="anchor" name="aa9a7bb3359a56e2aff3fcaf69fa1527"></a><!-- doxytag: member="scim::FrontEndHotkeyMatcher::get_match_result" ref="aa9a7bb3359a56e2aff3fcaf69fa1527" args="(void) const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00158.html#gb15cba53bb52488932e2f9d9f51234d5">FrontEndHotkeyAction</a> scim::FrontEndHotkeyMatcher::get_match_result </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Get the match result. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The corresponding action of the matched Hotkey. </dd></dl> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="a00134.html">scim_hotkey.h</a></ul> <hr size="1"><address style="align: right;"><small>Generated on Thu Jun 28 14:12:39 2007 for scim by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address> </body> </html>