Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > media > main-release > by-pkgid > ea24284f03fd4a8a4b64047514d93f64 > files > 169

lib64kdegames1-devel-3.5.9-2mdv2008.1.x86_64.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!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" lang="en_US" xml:lang="en_US">

<head>
  <title>libkdegames: KGamePropertyBase Class Reference (libkdegames)</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

  <meta http-equiv="Content-Style-Type" content="text/css" />

  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />

  <meta name="trademark" content="KDE e.V." />
  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
  <meta name="MSSmartTagsPreventParsing" content="true" />
  <meta name="robots" content="all" />

  <link rel="shortcut icon" href="../../favicon.ico" />

<link rel="stylesheet" media="screen" type="text/css" title="APIDOX" href="doxygen.css" />



</head>

<body>

<div id="nav_header_top" align="right">
  <a href="#content" class="doNotDisplay" accesskey="2">Skip to main content ::</a>

  <a href="../.."><img id="nav_header_logo" alt="Home" align="left" src="../../kde_gear_64.png" border="0" /></a>
  <span class="doNotDisplay">::</span>

  <div id="nav_header_title" align="left">KDE API Reference</div>


</div>

<div id="nav_header_bottom" align="right">
  <span class="doNotDisplay">:: <a href="#navigation" accesskey="5">Skip to Link Menu</a><br/></span>
  <div id="nav_header_bottom_right" style="text-align: left;">
/ <a href="../..">API Reference</a>
 / <a href=".">libkdegames</a>
  </div>
</div>


<table id="main" border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
      <td valign="top" class="menuheader" height="0"></td>

  <td id="contentcolumn" valign="top" rowspan="2" >
    <div id="content" style="padding-top: 0px;"><div style="width:100%; margin: 0px; padding: 0px;">
    <a name="content"></a>


<!-- Generated by Doxygen 1.5.5 -->
<div class="contents">
<h1>KGamePropertyBase Class Reference</h1><!-- doxytag: class="KGamePropertyBase" --><code>#include &lt;<a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for KGamePropertyBase:</div>
<div class="dynsection">

<p><center><img src="classKGamePropertyBase.png" usemap="#KGamePropertyBase_map" border="0" alt=""></center>
<map name="KGamePropertyBase_map">
<area href="classKGameProperty.html" alt="KGameProperty< type >" shape="rect" coords="0,56,149,80">
</map>
</div>

<p>
<a href="classKGamePropertyBase-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
Base class of <a class="el" href="classKGameProperty.html" title="A class for network transparent games.">KGameProperty</a>. 
<p>
The <a class="el" href="classKGamePropertyBase.html" title="Base class of KGameProperty.">KGamePropertyBase</a> class is the base class of <a class="el" href="classKGameProperty.html" title="A class for network transparent games.">KGameProperty</a>. See <a class="el" href="classKGameProperty.html" title="A class for network transparent games.">KGameProperty</a> for further information.<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Andreas Beckermann &lt;<a href="mailto:b_mann@gmx.de">b_mann@gmx.de</a>&gt; </dd></dl>

<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00042">42</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><b>PropertyDataIds</b> { <br>
&nbsp;&nbsp;<b>IdGroup</b> = 1, 
<b>IdUserId</b> = 2, 
<b>IdAsyncInput</b> = 3, 
<b>IdTurn</b> = 4, 
<br>
&nbsp;&nbsp;<b>IdName</b> = 5, 
<b>IdGameStatus</b> = 6, 
<b>IdMaxPlayer</b> = 7, 
<b>IdMinPlayer</b> = 8, 
<br>
&nbsp;&nbsp;<b>IdGrabInput</b> = 16, 
<b>IdReleaseInput</b> = 17, 
<b>IdCommand</b>, 
<b>IdUser</b> = 256, 
<br>
&nbsp;&nbsp;<b>IdAutomatic</b> = 0x7000
<br>
 }</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#7a6866f09f68dbf37e69ab161d7b8536">PropertyCommandIds</a> { <br>
&nbsp;&nbsp;<b>CmdLock</b> = 1, 
<b>CmdAt</b> = 51, 
<b>CmdResize</b> = 52, 
<b>CmdFill</b> = 53, 
<br>
&nbsp;&nbsp;<b>CmdSort</b> = 54, 
<b>CmdInsert</b> = 61, 
<b>CmdAppend</b> = 62, 
<b>CmdRemove</b> = 63, 
<br>
&nbsp;&nbsp;<b>CmdClear</b> = 64
<br>
 }</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#5a1327924368b7d080a417dcac821543">PropertyPolicy</a> { <b>PolicyUndefined</b> =  0, 
<b>PolicyClean</b> =  1, 
<b>PolicyDirty</b> =  2, 
<b>PolicyLocal</b> =  3
 }</td></tr>

<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#aa2fa92be5b22d6dd4d22398dc32bd83">KGamePropertyBase</a> (int id, <a class="el" href="classKGamePropertyHandler.html">KGamePropertyHandler</a> *owner)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="80b9b84dfa5ffbbe0ca4e5c7c1f4703b"></a><!-- doxytag: member="KGamePropertyBase::KGamePropertyBase" ref="80b9b84dfa5ffbbe0ca4e5c7c1f4703b" args="(int id, KGame *parent)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>KGamePropertyBase</b> (int id, <a class="el" href="classKGame.html">KGame</a> *parent)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b013b28f22e835bb69466d8bc63a071f"></a><!-- doxytag: member="KGamePropertyBase::KGamePropertyBase" ref="b013b28f22e835bb69466d8bc63a071f" args="(int id, KPlayer *parent)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>KGamePropertyBase</b> (int id, <a class="el" href="classKPlayer.html">KPlayer</a> *parent)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#34fc41632281e3e210f1169f2bd3ac96">KGamePropertyBase</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#922017bb68b766757f992e61ea3b6f16">setPolicy</a> (<a class="el" href="classKGamePropertyBase.html#5a1327924368b7d080a417dcac821543">PropertyPolicy</a> p)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKGamePropertyBase.html#5a1327924368b7d080a417dcac821543">PropertyPolicy</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#800fa663bf1830db1e8b1ee1018a0e79">policy</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#47512e7fc6657f60e3b4112ae7d5b091">setEmittingSignal</a> (bool p)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#982e064965d7e5d1b0e39442aeb19965">isEmittingSignal</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#3db9f94619d7306cf5c3e63179822db6">setOptimized</a> (bool p)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#1f22784787aa6a75c41ca6a31cfae2a3">isOptimized</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#b0b5b01f8abcfe927966031dfc497f27">isDirty</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#e489ae29929b2592a6b292e17de28144">isLocked</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#bcedbe9c617fe0019cde2e7f3083f998">lock</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#d18c473346f294b40dd919b58b825511">unlock</a> (bool force=false)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#5a0c456be1dc1afb9b34d8e565a44bef">load</a> (QDataStream &amp;s)=0</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#603b627316f0f379e5c93e1f70100a62">save</a> (QDataStream &amp;s)=0</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#fdcf1ba99963aa86c0fe77c7ec6129ff">command</a> (QDataStream &amp;stream, int msgid, bool isSender=false)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#737382aa3e0194409c3b56fcc2ea15cb">id</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const type_info *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#1e9a0ba7673ae71c7962663ee8802cd9">typeinfo</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#185d99416b87cc55d14a80a67ef9d9aa">registerData</a> (int id, <a class="el" href="classKGamePropertyHandler.html">KGamePropertyHandler</a> *owner, <a class="el" href="classKGamePropertyBase.html#5a1327924368b7d080a417dcac821543">PropertyPolicy</a> p, QString name=0)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#3829f83a96a2fb78566a08b20c24a94a">registerData</a> (int id, <a class="el" href="classKGamePropertyHandler.html">KGamePropertyHandler</a> *owner, QString name=0)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#b11163638fdb4338423780c250d6000f">registerData</a> (int id, <a class="el" href="classKGame.html">KGame</a> *owner, QString name=0)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#5aa5e7ae91b31876355cf24e4aa31ebf">registerData</a> (int id, <a class="el" href="classKPlayer.html">KPlayer</a> *owner, QString name=0)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#e1bbbd7bd7250b18b04370adbfffb24e">registerData</a> (<a class="el" href="classKGamePropertyHandler.html">KGamePropertyHandler</a> *owner, <a class="el" href="classKGamePropertyBase.html#5a1327924368b7d080a417dcac821543">PropertyPolicy</a> p=PolicyUndefined, QString name=0)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ca1319339ac637f767a719b0a9fc8d63"></a><!-- doxytag: member="KGamePropertyBase::unregisterData" ref="ca1319339ac637f767a719b0a9fc8d63" args="()" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>unregisterData</b> ()</td></tr>

<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#7f1c74c72598402b92de1e355f493464">setLock</a> (bool l)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#8e51f750e75d619b192cdd5c34d8b6a0">setDirty</a> (bool d)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#b2dc4485e586ee34173e800f2c3bebab">sendProperty</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#43a4feac43abad17264633eb42b6900f">sendProperty</a> (const QByteArray &amp;b)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#e93e88e5679a3f22d1201599efd42fb4">emitSignal</a> ()</td></tr>

<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9996a3f5bc580fcebfc1df9e69d9885e"></a><!-- doxytag: member="KGamePropertyBase::mOwner" ref="9996a3f5bc580fcebfc1df9e69d9885e" args="" -->
<a class="el" href="classKGamePropertyHandler.html">KGamePropertyHandler</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>mOwner</b></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4e2b1596da5a7fd068c3ec62158f681e"></a><!-- doxytag: member="KGamePropertyBase::mFlags" ref="4e2b1596da5a7fd068c3ec62158f681e" args="" -->
union KGamePropertyBase::Flags&nbsp;</td><td class="memItemRight" valign="bottom"><b>mFlags</b></td></tr>

<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="371d488fc5d129b39bc31d31cbbae70d"></a><!-- doxytag: member="KGamePropertyBase::KGamePropertyHandler" ref="371d488fc5d129b39bc31d31cbbae70d" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKGamePropertyBase.html#371d488fc5d129b39bc31d31cbbae70d">KGamePropertyHandler</a></td></tr>

</table>
<hr><h2>Member Enumeration Documentation</h2>
<a class="anchor" name="7a6866f09f68dbf37e69ab161d7b8536"></a><!-- doxytag: member="KGamePropertyBase::PropertyCommandIds" ref="7a6866f09f68dbf37e69ab161d7b8536" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classKGamePropertyBase.html#7a6866f09f68dbf37e69ab161d7b8536">KGamePropertyBase::PropertyCommandIds</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Commands for advanced properties (Q_INT8). 
<p>

<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00071">71</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="5a1327924368b7d080a417dcac821543"></a><!-- doxytag: member="KGamePropertyBase::PropertyPolicy" ref="5a1327924368b7d080a417dcac821543" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classKGamePropertyBase.html#5a1327924368b7d080a417dcac821543">KGamePropertyBase::PropertyPolicy</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The policy of the property. 
<p>
This can be PolicyClean (setValue uses send), PolicyDirty (setValue uses changeValue) or PolicyLocal (setValue uses setLocal).<p>
A "clean" policy means that the property is always the same on every client. This is achieved by calling send which actually changes the value only when the message from the MessageServer is received.<p>
A "dirty" policy means that as soon as setValue is called the property is changed immediately. And additionally sent over network. This can sometimes lead to bugs as the other clients do not immediately have the same value. For more information see changeValue.<p>
PolicyLocal means that a <a class="el" href="classKGameProperty.html" title="A class for network transparent games.">KGameProperty</a> behaves like ever "normal" variable. Whenever setValue is called (e.g. using "=") the value of the property is changes immediately without sending it over network. You might want to use this if you are sure that all clients set the property at the same time. 
<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00109">109</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="aa2fa92be5b22d6dd4d22398dc32bd83"></a><!-- doxytag: member="KGamePropertyBase::KGamePropertyBase" ref="aa2fa92be5b22d6dd4d22398dc32bd83" args="(int id, KGamePropertyHandler *owner)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KGamePropertyBase::KGamePropertyBase           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classKGamePropertyHandler.html">KGamePropertyHandler</a> *&nbsp;</td>
          <td class="paramname"> <em>owner</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Constructs a <a class="el" href="classKGamePropertyBase.html" title="Base class of KGameProperty.">KGamePropertyBase</a> object and calls registerData. 
<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>id</em>&nbsp;</td><td>The id of this property. MUST be UNIQUE! Used to send and receive changes in the property of the playere automatically via network. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>owner</em>&nbsp;</td><td>The owner of the object. Must be a <a class="el" href="classKGamePropertyHandler.html" title="A collection class for KGameProperty objects.">KGamePropertyHandler</a> which manages the changes made to this object, i.e. which will send the new data </td></tr>
  </table>
</dl>

<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00044">44</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<a class="anchor" name="34fc41632281e3e210f1169f2bd3ac96"></a><!-- doxytag: member="KGamePropertyBase::KGamePropertyBase" ref="34fc41632281e3e210f1169f2bd3ac96" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KGamePropertyBase::KGamePropertyBase           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a <a class="el" href="classKGamePropertyBase.html" title="Base class of KGameProperty.">KGamePropertyBase</a> object without an owner. 
<p>
Remember to call registerData! 
<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00050">50</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="922017bb68b766757f992e61ea3b6f16"></a><!-- doxytag: member="KGamePropertyBase::setPolicy" ref="922017bb68b766757f992e61ea3b6f16" args="(PropertyPolicy p)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KGamePropertyBase::setPolicy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKGamePropertyBase.html#5a1327924368b7d080a417dcac821543">PropertyPolicy</a>&nbsp;</td>
          <td class="paramname"> <em>p</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Changes the consistency policy of a property. 
<p>
The PropertyPolicy is one of PolicyClean (defaulz), PolicyDirty or PolicyLocal.<p>
It is up to you to decide how you want to work. 
<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00145">145</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="800fa663bf1830db1e8b1ee1018a0e79"></a><!-- doxytag: member="KGamePropertyBase::policy" ref="800fa663bf1830db1e8b1ee1018a0e79" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKGamePropertyBase.html#5a1327924368b7d080a417dcac821543">PropertyPolicy</a> KGamePropertyBase::policy           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The default policy of the property </dd></dl>

<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00150">150</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="47512e7fc6657f60e3b4112ae7d5b091"></a><!-- doxytag: member="KGamePropertyBase::setEmittingSignal" ref="47512e7fc6657f60e3b4112ae7d5b091" args="(bool p)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KGamePropertyBase::setEmittingSignal           </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>p</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Sets this property to emit a signal on value changed. 
<p>
As the proerties do not inehrit QObject for optimisation this signal is emited via the <a class="el" href="classKPlayer.html" title="Base class for a game player.">KPlayer</a> or <a class="el" href="classKGame.html" title="The main KDE game object.">KGame</a> object 
<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00157">157</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="982e064965d7e5d1b0e39442aeb19965"></a><!-- doxytag: member="KGamePropertyBase::isEmittingSignal" ref="982e064965d7e5d1b0e39442aeb19965" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KGamePropertyBase::isEmittingSignal           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
See also setEmittingSignal. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Whether this property emits a signal on value change </dd></dl>

<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00163">163</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="3db9f94619d7306cf5c3e63179822db6"></a><!-- doxytag: member="KGamePropertyBase::setOptimized" ref="3db9f94619d7306cf5c3e63179822db6" args="(bool p)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KGamePropertyBase::setOptimized           </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>p</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Sets this property to try to optimize signal and network handling by not sending it out when the property value is not changed. 
<p>

<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00169">169</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="1f22784787aa6a75c41ca6a31cfae2a3"></a><!-- doxytag: member="KGamePropertyBase::isOptimized" ref="1f22784787aa6a75c41ca6a31cfae2a3" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KGamePropertyBase::isOptimized           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
See also setOptimize. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Whether the property optimizes access (signals,network traffic) </dd></dl>

<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00175">175</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="b0b5b01f8abcfe927966031dfc497f27"></a><!-- doxytag: member="KGamePropertyBase::isDirty" ref="b0b5b01f8abcfe927966031dfc497f27" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KGamePropertyBase::isDirty           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Whether this property is "dirty". See also setDirty </dd></dl>

<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00180">180</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="e489ae29929b2592a6b292e17de28144"></a><!-- doxytag: member="KGamePropertyBase::isLocked" ref="e489ae29929b2592a6b292e17de28144" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KGamePropertyBase::isLocked           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A locked property can only be changed by the player who has set the lock. 
<p>
See also setLocked <dl class="return" compact><dt><b>Returns:</b></dt><dd>Whether this property is currently locked. </dd></dl>

<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00187">187</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="bcedbe9c617fe0019cde2e7f3083f998"></a><!-- doxytag: member="KGamePropertyBase::lock" ref="bcedbe9c617fe0019cde2e7f3083f998" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KGamePropertyBase::lock           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A locked property can only be changed by the player who has set the lock. 
<p>
You can only call this if isLocked is false. A message is sent over network so that the property is locked for all players except you.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>returns false if the property can not be locked, i.e. it is already locked </dd></dl>

<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00152">152</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<a class="anchor" name="d18c473346f294b40dd919b58b825511"></a><!-- doxytag: member="KGamePropertyBase::unlock" ref="d18c473346f294b40dd919b58b825511" args="(bool force=false)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KGamePropertyBase::unlock           </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>force</em> = <code>false</code>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A locked property can only be changed by the player who has set the lock. 
<p>
You can only call this if isLocked is false. A message is sent over network so that the property is locked for all players except you.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>returns false if the property can not be locked, i.e. it is already locked </dd></dl>

<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00161">161</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<a class="anchor" name="5a0c456be1dc1afb9b34d8e565a44bef"></a><!-- doxytag: member="KGamePropertyBase::load" ref="5a0c456be1dc1afb9b34d8e565a44bef" args="(QDataStream &amp;s)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void KGamePropertyBase::load           </td>
          <td>(</td>
          <td class="paramtype">QDataStream &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This will read the value of this property from the stream. 
<p>
You MUST overwrite this method in order to use this class <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>The stream to read from </td></tr>
  </table>
</dl>

<p>Implemented in <a class="el" href="classKGameProperty.html#7330f32ea354c068ce21293b14e60dbe">KGameProperty&lt; type &gt;</a>, <a class="el" href="classKGameProperty.html#7330f32ea354c068ce21293b14e60dbe">KGameProperty&lt; QString &gt;</a>, <a class="el" href="classKGameProperty.html#7330f32ea354c068ce21293b14e60dbe">KGameProperty&lt; int &gt;</a>, <a class="el" href="classKGameProperty.html#7330f32ea354c068ce21293b14e60dbe">KGameProperty&lt; Q_INT8 &gt;</a>, and <a class="el" href="classKGameProperty.html#7330f32ea354c068ce21293b14e60dbe">KGameProperty&lt; unsigned int &gt;</a>.</p>

</div>
</div><p>
<a class="anchor" name="603b627316f0f379e5c93e1f70100a62"></a><!-- doxytag: member="KGamePropertyBase::save" ref="603b627316f0f379e5c93e1f70100a62" args="(QDataStream &amp;s)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void KGamePropertyBase::save           </td>
          <td>(</td>
          <td class="paramtype">QDataStream &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Write the value into a stream. 
<p>
MUST be overwritten 
<p>Implemented in <a class="el" href="classKGameProperty.html#a4194d022619c74a632bc03166a474f0">KGameProperty&lt; type &gt;</a>, <a class="el" href="classKGameProperty.html#a4194d022619c74a632bc03166a474f0">KGameProperty&lt; QString &gt;</a>, <a class="el" href="classKGameProperty.html#a4194d022619c74a632bc03166a474f0">KGameProperty&lt; int &gt;</a>, <a class="el" href="classKGameProperty.html#a4194d022619c74a632bc03166a474f0">KGameProperty&lt; Q_INT8 &gt;</a>, and <a class="el" href="classKGameProperty.html#a4194d022619c74a632bc03166a474f0">KGameProperty&lt; unsigned int &gt;</a>.</p>

</div>
</div><p>
<a class="anchor" name="fdcf1ba99963aa86c0fe77c7ec6129ff"></a><!-- doxytag: member="KGamePropertyBase::command" ref="fdcf1ba99963aa86c0fe77c7ec6129ff" args="(QDataStream &amp;stream, int msgid, bool isSender=false)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KGamePropertyBase::command           </td>
          <td>(</td>
          <td class="paramtype">QDataStream &amp;&nbsp;</td>
          <td class="paramname"> <em>stream</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>msgid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>isSender</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
send a command to advanced properties like arrays 
<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>stream</em>&nbsp;</td><td>The stream containing the data of the comand </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>msgid</em>&nbsp;</td><td>The ID of the command - see PropertyCommandIds </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>isSender</em>&nbsp;</td><td>whether this client is also the sender of the command </td></tr>
  </table>
</dl>

<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00195">195</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<a class="anchor" name="737382aa3e0194409c3b56fcc2ea15cb"></a><!-- doxytag: member="KGamePropertyBase::id" ref="737382aa3e0194409c3b56fcc2ea15cb" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KGamePropertyBase::id           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The id of this property </dd></dl>

<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00238">238</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="1e9a0ba7673ae71c7962663ee8802cd9"></a><!-- doxytag: member="KGamePropertyBase::typeinfo" ref="1e9a0ba7673ae71c7962663ee8802cd9" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const type_info* KGamePropertyBase::typeinfo           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>a type_info of the data this property contains. This is used e.g. by KGameDebugDialog </dd></dl>

<p>Reimplemented in <a class="el" href="classKGameProperty.html#8cb9c0dbdca1b166dbc080734438ee49">KGameProperty&lt; type &gt;</a>, <a class="el" href="classKGameProperty.html#8cb9c0dbdca1b166dbc080734438ee49">KGameProperty&lt; QString &gt;</a>, <a class="el" href="classKGameProperty.html#8cb9c0dbdca1b166dbc080734438ee49">KGameProperty&lt; int &gt;</a>, <a class="el" href="classKGameProperty.html#8cb9c0dbdca1b166dbc080734438ee49">KGameProperty&lt; Q_INT8 &gt;</a>, and <a class="el" href="classKGameProperty.html#8cb9c0dbdca1b166dbc080734438ee49">KGameProperty&lt; unsigned int &gt;</a>.</p>

<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00244">244</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="185d99416b87cc55d14a80a67ef9d9aa"></a><!-- doxytag: member="KGamePropertyBase::registerData" ref="185d99416b87cc55d14a80a67ef9d9aa" args="(int id, KGamePropertyHandler *owner, PropertyPolicy p, QString name=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KGamePropertyBase::registerData           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classKGamePropertyHandler.html">KGamePropertyHandler</a> *&nbsp;</td>
          <td class="paramname"> <em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classKGamePropertyBase.html#5a1327924368b7d080a417dcac821543">PropertyPolicy</a>&nbsp;</td>
          <td class="paramname"> <em>p</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QString&nbsp;</td>
          <td class="paramname"> <em>name</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
You have to register a <a class="el" href="classKGamePropertyBase.html" title="Base class of KGameProperty.">KGamePropertyBase</a> before you can use it. 
<p>
You MUST call this before you can use KGamePropertyBase!<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>id</em>&nbsp;</td><td>the id of this <a class="el" href="classKGamePropertyBase.html" title="Base class of KGameProperty.">KGamePropertyBase</a> object. The id MUST be unique, i.e. you cannot have two properties with the same id for one player, although (currently) nothing prevents you from doing so. But you will get strange results!</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>owner</em>&nbsp;</td><td>The owner of this data. This will send the data using KPropertyHandler::sendProperty whenever you call send</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>If not 0 you can set the policy of the property here</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>if not 0 you can assign a name to this property </td></tr>
  </table>
</dl>

<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00091">91</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<a class="anchor" name="3829f83a96a2fb78566a08b20c24a94a"></a><!-- doxytag: member="KGamePropertyBase::registerData" ref="3829f83a96a2fb78566a08b20c24a94a" args="(int id, KGamePropertyHandler *owner, QString name=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KGamePropertyBase::registerData           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classKGamePropertyHandler.html">KGamePropertyHandler</a> *&nbsp;</td>
          <td class="paramname"> <em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QString&nbsp;</td>
          <td class="paramname"> <em>name</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This is an overloaded member function, provided for convenience. 
<p>
It differs from the above function only in what argument(s) it accepts. 
<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00088">88</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<a class="anchor" name="b11163638fdb4338423780c250d6000f"></a><!-- doxytag: member="KGamePropertyBase::registerData" ref="b11163638fdb4338423780c250d6000f" args="(int id, KGame *owner, QString name=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KGamePropertyBase::registerData           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classKGame.html">KGame</a> *&nbsp;</td>
          <td class="paramname"> <em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QString&nbsp;</td>
          <td class="paramname"> <em>name</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This is an overloaded member function, provided for convenience. 
<p>
It differs from the above function only in what argument(s) it accepts. 
<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00079">79</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<a class="anchor" name="5aa5e7ae91b31876355cf24e4aa31ebf"></a><!-- doxytag: member="KGamePropertyBase::registerData" ref="5aa5e7ae91b31876355cf24e4aa31ebf" args="(int id, KPlayer *owner, QString name=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KGamePropertyBase::registerData           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classKPlayer.html">KPlayer</a> *&nbsp;</td>
          <td class="paramname"> <em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QString&nbsp;</td>
          <td class="paramname"> <em>name</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This is an overloaded member function, provided for convenience. 
<p>
It differs from the above function only in what argument(s) it accepts. 
<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00082">82</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<a class="anchor" name="e1bbbd7bd7250b18b04370adbfffb24e"></a><!-- doxytag: member="KGamePropertyBase::registerData" ref="e1bbbd7bd7250b18b04370adbfffb24e" args="(KGamePropertyHandler *owner, PropertyPolicy p=PolicyUndefined, QString name=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KGamePropertyBase::registerData           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKGamePropertyHandler.html">KGamePropertyHandler</a> *&nbsp;</td>
          <td class="paramname"> <em>owner</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classKGamePropertyBase.html#5a1327924368b7d080a417dcac821543">PropertyPolicy</a>&nbsp;</td>
          <td class="paramname"> <em>p</em> = <code>PolicyUndefined</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QString&nbsp;</td>
          <td class="paramname"> <em>name</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This is an overloaded member function, provided for convenience. 
<p>
It differs from the above function only in what argument(s) it accepts. In particular you can use this function to create properties which will have an automatic id assigned. The new id is returned. 
<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00085">85</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<a class="anchor" name="7f1c74c72598402b92de1e355f493464"></a><!-- doxytag: member="KGamePropertyBase::setLock" ref="7f1c74c72598402b92de1e355f493464" args="(bool l)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KGamePropertyBase::setLock           </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>l</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A locked property can only be changed by the player who has set the lock. 
<p>
You can only call this if isLocked is false. A message is sent over network so that the property is locked for all players except you. Usually you use lock and unlock to access this property 
<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00170">170</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<a class="anchor" name="8e51f750e75d619b192cdd5c34d8b6a0"></a><!-- doxytag: member="KGamePropertyBase::setDirty" ref="8e51f750e75d619b192cdd5c34d8b6a0" args="(bool d)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KGamePropertyBase::setDirty           </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>d</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Sets the "dirty" flag of the property. 
<p>
If a property is "dirty" i.e. <a class="el" href="classKGameProperty.html#fd47964f181f5980af9b1adec5d24fb1" title="This function sets the value of the property directly, i.e.">KGameProperty::setLocal</a> has been called there is no guarantee that all clients share the same value. You have to ensure this yourself e.g. by calling <a class="el" href="classKGameProperty.html#fd47964f181f5980af9b1adec5d24fb1" title="This function sets the value of the property directly, i.e.">KGameProperty::setLocal</a> on every client. You can also ignore the dirty flag and continue working withe the property depending on your situation. 
<p>Definition at line <a class="el" href="kgameproperty_8h-source.html#l00316">316</a> of file <a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="b2dc4485e586ee34173e800f2c3bebab"></a><!-- doxytag: member="KGamePropertyBase::sendProperty" ref="b2dc4485e586ee34173e800f2c3bebab" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KGamePropertyBase::sendProperty           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Forward the data to the owner of this property which then sends it over network. 
<p>
save is used to store the data into a stream so you have to make sure that function is working properly if you implement your own property!<p>
Note: this sends the <em>current</em> property!<p>
Might be obsolete - KGamePropertyArray still uses it. Is this a bug or correct? 
<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00124">124</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<a class="anchor" name="43a4feac43abad17264633eb42b6900f"></a><!-- doxytag: member="KGamePropertyBase::sendProperty" ref="43a4feac43abad17264633eb42b6900f" args="(const QByteArray &amp;b)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KGamePropertyBase::sendProperty           </td>
          <td>(</td>
          <td class="paramtype">const QByteArray &amp;&nbsp;</td>
          <td class="paramname"> <em>b</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Forward the data to the owner of this property which then sends it over network. 
<p>
save is used to store the data into a stream so you have to make sure that function is working properly if you implement your own property!<p>
This function is used by send to send the data over network. This does <em>not</em> send the current value but the explicitly given value.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE if the message could be sent successfully, otherwise FALSE </dd></dl>

<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00138">138</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<a class="anchor" name="e93e88e5679a3f22d1201599efd42fb4"></a><!-- doxytag: member="KGamePropertyBase::emitSignal" ref="e93e88e5679a3f22d1201599efd42fb4" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KGamePropertyBase::emitSignal           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Causes the parent object to emit a signal on value change. 
<p>

<p>Definition at line <a class="el" href="kgameproperty_8cpp-source.html#l00185">185</a> of file <a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="kgameproperty_8h-source.html">kgameproperty.h</a><li><a class="el" href="kgameproperty_8cpp-source.html">kgameproperty.cpp</a></ul>
</div>
    </div></div>


      </td>
  </tr>
  <tr>
    <td valign="top" id="leftmenu" width="25%">
      <a name="navigation"></a>
      <div class="menu_box"><h2>libkdegames</h2>
<div class="nav_list">
<ul><li><a href="index.html">Main Page</a></li><li><a href="hierarchy.html">Class Hierarchy</a></li><li><a href="classes.html">Alphabetical List</a></li><li><a href="annotated.html">Class List</a></li><li><a href="files.html">File List</a></li><li><a href="functions.html">Class Members</a></li><li><a href="pages.html">Related Pages</a></li></ul>
<!--
<h2>Class Picker</h2>
<div style="text-align: center;">
<form name="guideform">
<select name="guidelinks" style="width:100%;" onChange="window.location=document.guideform.guidelinks.options[document.guideform.guidelinks.selectedIndex].value">
<option value="annotated.html">-- Choose --</option>
  <option value="classKCanvasRootPixmap.html">kcanvasrootpixmap</option>,  <option value="classKCardDialog.html">kcarddialog</option>,  <option value="classKChat.html">kchat</option>,  <option value="classKChatBase.html">kchatbase</option>,  <option value="classKChatBaseText.html">kchatbasetext</option>,  <option value="classKExtHighscore_1_1Item.html">kexthighscore::item</option>,  <option value="classKExtHighscore_1_1ItemArray.html">kexthighscore::itemarray</option>,  <option value="classKExtHighscore_1_1Manager.html">kexthighscore::manager</option>,  <option value="classKExtHighscore_1_1MultiplayerScores.html">kexthighscore::multiplayerscores</option>,  <option value="classKExtHighscore_1_1Score.html">kexthighscore::score</option>,  <option value="classKGame.html">kgame</option>,  <option value="classKGameChat.html">kgamechat</option>,  <option value="classKGameComputerIO.html">kgamecomputerio</option>,  <option value="classKGameConnectDialog.html">kgameconnectdialog</option>,  <option value="classKGameDialog.html">kgamedialog</option>,  <option value="classKGameDialogChatConfig.html">kgamedialogchatconfig</option>,  <option value="classKGameDialogConfig.html">kgamedialogconfig</option>,  <option value="classKGameErrorDialog.html">kgameerrordialog</option>,  <option value="classKGameErrorMessageDialog.html">kgameerrormessagedialog</option>,  <option value="classKGameIO.html">kgameio</option>,  <option value="classKGameKeyIO.html">kgamekeyio</option>,  <option value="classKGameLCD.html">kgamelcd</option>,  <option value="classKGameLCDClock.html">kgamelcdclock</option>,  <option value="classKGameLCDList.html">kgamelcdlist</option>,  <option value="classKGameMisc.html">kgamemisc</option>,  <option value="classKGameMouseIO.html">kgamemouseio</option>,  <option value="classKGameNetwork.html">kgamenetwork</option>,  <option value="classKGameProcess.html">kgameprocess</option>,  <option value="classKGameProcessIO.html">kgameprocessio</option>,  <option value="classKGameProgress.html">kgameprogress</option>,  <option value="classKGameProperty.html">kgameproperty</option>,  <option value="classKGamePropertyBase.html">kgamepropertybase</option>,  <option value="classKGamePropertyHandler.html">kgamepropertyhandler</option>,  <option value="classKGameSequence.html">kgamesequence</option>,  <option value="classKGrid2D_1_1Generic.html">kgrid2d::generic</option>,  <option value="classKGrid2D_1_1Hexagonal.html">kgrid2d::hexagonal</option>,  <option value="classKGrid2D_1_1HexagonalBase.html">kgrid2d::hexagonalbase</option>,  <option value="classKGrid2D_1_1Square.html">kgrid2d::square</option>,  <option value="classKGrid2D_1_1SquareBase.html">kgrid2d::squarebase</option>,  <option value="classKHighscore.html">khighscore</option>,  <option value="classKMessageClient.html">kmessageclient</option>,  <option value="classKMessageDirect.html">kmessagedirect</option>,  <option value="classKMessageIO.html">kmessageio</option>,  <option value="classKMessageServer.html">kmessageserver</option>,  <option value="classKMessageServerSocket.html">kmessageserversocket</option>,  <option value="classKMessageSocket.html">kmessagesocket</option>,  <option value="classKPlayer.html">kplayer</option>,  <option value="classKScoreDialog.html">kscoredialog</option>,  <option value="classKStdGameAction.html">kstdgameaction</option>,
</select>
</form>
</div>
-->
</div></div>
<div class="menu_box"><h2>API Dox</h2>
<div class="nav_list">
<ul>
<li><a href="../../libkdegames/html/index.html">libkdegames</a></li>
</ul></div></div>


        </td>
</tr>
</table>

<span class="doNotDisplay">
  <a href="http://www.kde.org/" accesskey="8">KDE Home</a> |
  <a href="http://accessibility.kde.org/" accesskey="9">KDE Accessibility Home</a> |
  <a href="http://www.kde.org/media/accesskeys.php" accesskey="0">Description of Access Keys</a>
</span>


<div style="height: 8px"></div>

<div id="footer">
  <div id="footer_left">
    Maintained by <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;groo&#116;&#64;kde&#46;or&#x67;">Adriaan de Groot</a>
and
<a href="&#109;a&#105;&#108;&#116;&#111;&#58;w&#105;nter&#64;kde&#46;or&#x67">Allen Winter</a>.
<br/>
    KDE and K Desktop Environment are trademarks of <a href="http://www.kde.org/areas/kde-ev/" title="Homepage of the KDE non-profit Organization">KDE e.V.</a> |
    <a href="http://www.kde.org/contact/impressum.php">Legal</a>
  </div>
  <div id="footer_right"><img src="/media/images/footer_right.png" style="margin: 0px" alt="" /></div>
</div>

<!--
WARNING: DO NOT SEND MAIL TO THE FOLLOWING EMAIL ADDRESS! YOU WILL
BE BLOCKED INSTANTLY AND PERMANENTLY!
<a href="mailto:aaaatrap-425acc3b5374943f@kde.org">Block me</a>
WARNING END
-->

</body>
</html>