<doc>
  <legacy_id>2356</legacy_id>
  <name>notSrcXOr</name>
  <type>keyword</type>
  <syntax>
  </syntax>
  <library></library>
  <objects>
  </objects>
  <synonyms>
  </synonyms>
  <classification>
    <category>Appearance &amp; Positioning</category>
  </classification>
  <references>
    <keyword tag="notSrcCopy">notSrcCopy Keyword</keyword>
  </references>
  <history>
    <introduced version="1.0">Added.</introduced>
  </history>
  <platforms>
    <windows/>
    <linux/>
    <ios/>
    <android/>
  </platforms>
  <classes>
    <desktop/>
    <server/>
    <web/>
    <mobile/>
  </classes>
  <security>
  </security>
  <summary>Specifies one of the <glossary tag="transfer mode">transfer modes</glossary> that can be used with the <property tag="ink">ink</property> <glossary tag="property">property</glossary>.</summary>
  <examples>
    <example>set the ink of scrollbar "Progress" to notSrcXOr</example>
  </examples>
  <description>
    <p>Use the <b>notSrcXOr</b> <glossary tag="keyword">keyword</glossary> to invert the colors of an <glossary tag="object">object</glossary> and make the light parts transparent.</p><p/><p><b>Comments:</b></p><p>The <b>ink</b> <glossary tag="property">property</glossary> determines how an <glossary tag="object">object's</glossary> colors combine with the colors of the <property tag="pixels">pixels</property> underneath the <glossary tag="object">object</glossary> to determine how the <glossary tag="object">object's</glossary> color is displayed.</p><p/><p>The <b>notSrcXOr</b> <glossary tag="transfer mode">transfer mode</glossary> performs the following steps to compute the color of each <glossary tag="pixel">pixel</glossary>:</p><p/><p>1. Each component of the object's color--the number indicating the amount of red, green, or blue--is changed to its inverse. (If the color is expressed as three integers between zero and 255--one for each of red, green, and blue--then the inverse of each component is equal to 255 minus the component's value.)</p><p/><p>2. LiveCode performs a <b>bitXOr</b> <glossary tag="operation">operation</glossary> on each component of the inverted object color with the corresponding component of the color under the <glossary tag="object">object</glossary>.</p><p/><p>Each component of the resulting color is equal to the result of this expression:</p><p><code>  (255 - <i>object component</i>) bitXOr <i>background component</i></code></p><p/><p>The effect is that the color of the object is reversed, and the darker an object is, the more transparent it is.</p><p/><p>For example, suppose an object's color is<code> 120,0,255</code>, and the color of the pixels under the object is<code> 50,20,240</code>. If the <b>notSrcXOr</b> <glossary tag="transfer mode">transfer mode</glossary> is used, the <glossary tag="object">object's</glossary> displayed colo<code>r is 181,235</code>,240.</p><p/><p>The <b>notSrcXOr</b> mode can be used only on <glossary tag="Unix">Unix</glossary> and <glossary tag="Windows">Windows systems</glossary>. On <glossary tag="Mac OS">Mac OS systems</glossary>, <glossary tag="object">objects</glossary> whose <property tag="ink">ink</property> <glossary tag="property">property</glossary> is set to this mode appear as though their <property tag="ink">ink</property> were set to <keyword tag="noOp">noOp</keyword>.</p>
  </description>
</doc>