<!DOCTYPE html
  PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<!--
Copyright (c) 2006 UGS Corp.

All Rights Reserved.

This software and related documentation are proprietary to UGS Corp.
-->
<html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>How palette transferability works</title>
      <script language="javaScript">
        abridged="false";
        function pageLoader() {}
        displayConditions=new Array();
      </script>
      <link type="text/css" href="../css/main_styles.css" rel="stylesheet">
   </head>
   <body class="bodydocs" onload="top.pageLoader()" bgcolor="#FFFFFF">
      <div class="title_topic8" id="xps10_pagetitle">How palette transferability works</div>
      <hr noshade="true">
      <table cellspacing="4" align="center">
         <tr valign="top">
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1">
               <p class="para_td"><a class="links" href="javascript:void(0)" onclick="top.openFile('intro_to_nx/uiu_ab_pal_g_ov.html');return(false);">Overview</a></p>
            </td>
         </tr>
      </table><br><p class="para_topic">When you copy or move an entry, NX uses the &quot;transferable&quot; attribute to not only copy or move the entry to another palette file, but also copy or move the referenced transferable files to the destination directory, resolving all necessary paths as it does.</p>
      <div class="title_division">NX maintains the transferable attribute</div>
      <p class="para_division">When you perform a copy or move operation on a palette entry, NX does not lose the &quot;transferable&quot; attribute. For all subsequent copies and moves, it still recognizes which files to copy or move.</p>
      <div class="title_division">ObjectData content</div>
      <p class="para_division">The &quot;transferable&quot; attribute works inside &lt;ObjectData&gt; specific application data as well. XML allows you to search all unknown nodes as deeply as you want, but only operate on tags or attributes that are known. For example, NX does not know about the ObjectData structure but can locate all transferable entry files, copy them, and update their paths accordingly.</p>
      <div class="title_division">A palette reference can be reference-only or transferable</div>
      <p class="para_division">A palette reference is either reference-only or transferable. A reference-only palette reference simply contains a reference to a path and filename. A transferable palette reference contains a reference to a path and filename but also contains the transferable attribute in the Filename or location tag.</p>
      <div class="title_division">A single entry can contain both types</div>
      <p class="para_division">A single palette entry can simultaneously contain references that are both reference-only or transferable. For example, all of a part's filename references can be reference-only and all of its bitmap references can be transferable. See the example below:</p><pre class="indent"> &lt;PaletteEntry id=&quot;h1&quot;&gt; &lt;Presentation name=&quot;My Text 2&quot;&gt; &lt;PreviewImage location=&quot;c:\temp\bitmap2.tif&quot; transferable=&quot;yes&quot;/&gt; &lt;/Presentation&gt; &lt;ObjectData class=&quot;Inferred&quot;&gt; &lt;Filename&gt;c:\mydir/part2.prt&lt;/Filename&gt; &lt;/ObjectData&gt; &lt;/PaletteEntry&gt; </pre><p class="para_division">In the above example, the bitmap2.tif file is transferable but the full path to part2.prt is used only as reference.</p>
      <div class="title_division">Relative paths</div>
      <p class="para_division">Relative paths work for both reference-only and transferable entry types. For example, if an entry is transferable and its path is relative, before NX copies an entry to another palette, it resolves the source path, copies the referenced file to the destination folder, copies the entry to the destination palette, and substitutes the previous path with the destination path in the copied entry.</p>
      <div class="title_division">Transferability and the Clipboard</div>
      <p class="para_division">NX uses a special clipboard cache directory for all palette transferable files. When NX copies an entry to the clipboard, it copies all transferable files to a special persistent NX user cache directory as well. The clipboard copy of this entry contains the resolved paths of transferable files relative to the NX cache directory. If you delete a palette source or delete its temporary directory of images, NX can still use the clipboard entry to paste it in as many palettes as you want, even in subsequent NX sessions. </p>
      <div class="title_division">Updating tags</div>
      <p class="para_division">NX does not update tags or attributes if they are reference-only (when a transferable attribute is not specified or when the transferable attribute equals &quot;no&quot;).</p>
      <div class="title_division">Pre-NX2 palettes</div>
      <p class="para_division">Pre-NX2 palettes continue to work as before. By default, all entries are reference-only. Therefore, when you perform a copy and paste operation, NX copies only entries.</p>
      <div class="title_division">Example 1</div>
      <div class="title_division">Source</div><pre class="indent"> &lt;MyImage location=&quot;aaa.bmp&quot; transferable=&quot;yes&quot;&gt; </pre><div class="title_division">Destination</div>
      <p class="para_division">NX copies the file to the destination directory and updates the path as follows:</p><pre class="indent"> &lt;MyImage location=&quot;aaa.bmp&quot; transferable=&quot;yes&quot;&gt; </pre><div class="title_division">Example 2</div>
      <div class="title_division">Source</div><pre class="indent"> &lt;MyImage location=&quot;images\bmp\aaa.bmp&quot; transferable=&quot;yes&quot;&gt; </pre><div class="title_division">Destination</div>
      <p class="para_division">If necessary, NX creates all subdirectories (\images, \bmp) in the destination directory, and copies the file and leaves the path unmodified:</p><pre class="indent"> &lt;MyImage location=&quot;images\bmp\aaa.bmp&quot; transferable=&quot;yes&quot;&gt; </pre><div class="title_division">Example 3</div>
      <div class="title_division">Source</div><pre class="indent">  &lt;MyImage location=&quot;c:\temp\images\bmp\aaa.bmp&quot; transferable=&quot;yes&quot; &gt; </pre><div class="title_division">Destination</div>
      <p class="para_division">NX copies the file to the destination palette and updates its path as follows:</p><pre class="indent">  &lt;MyImage location=&quot;aaa.bmp&quot; transferable=&quot;yes&quot; &gt; </pre></body>
</html>