ibm-information-center/dist/eclipse/plugins/i5OS.ic.rzakx_5.4.0.1/rzakxproperty.htm

111 lines
7.7 KiB
HTML

<?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 lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="copyright" content="(C) Copyright IBM Corporation 2005" />
<meta name="DC.rights.owner" content="(C) Copyright IBM Corporation 2005" />
<meta name="security" content="public" />
<meta name="Robots" content="index,follow" />
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
<meta name="DC.Type" content="concept" />
<meta name="DC.Title" content="Property pages for a property sheet handler" />
<meta name="abstract" content="The Microsoft Foundation Class Library classes cannot be used to construct property pages for a property sheet handler. However, IBM provides CExtPropertyPage, which may be used in place of the MFC class CPropertyPage." />
<meta name="description" content="The Microsoft Foundation Class Library classes cannot be used to construct property pages for a property sheet handler. However, IBM provides CExtPropertyPage, which may be used in place of the MFC class CPropertyPage." />
<meta name="DC.Relation" scheme="URI" content="rzakxcreateplugin.htm" />
<meta name="DC.Relation" scheme="URI" content="rzakxdescquerycntxtmenu.htm" />
<meta name="DC.Relation" scheme="URI" content="rzakxdescquerycntxtmenu.htm" />
<meta name="DC.Relation" scheme="URI" content="rzakxia4propsheetifspec.htm" />
<meta name="DC.Format" content="XHTML" />
<meta name="DC.Identifier" content="rzakxproperty" />
<meta name="DC.Language" content="en-us" />
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
<link rel="stylesheet" type="text/css" href="./ic.css" />
<title>Property pages for a property sheet handler</title>
</head>
<body id="rzakxproperty"><a name="rzakxproperty"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">Property pages for a property sheet handler</h1>
<div><p>The Microsoft<sup>®</sup> Foundation Class Library classes cannot be used to construct property pages for a property
sheet handler. However, IBM<sup>®</sup> provides <span class="uicontrol">CExtPropertyPage</span>, which may be used in place of the MFC class CPropertyPage.</p>
<p>Property pages implemented by iSeries™ Navigator plug-ins should subclass CExtPropertyPage. The class declaration
may be found in the header file PROPEXT.H, and the implementation is contained in the file PROPEXT.CPP. Both files are provided as part of the sample plug-in.</p>
<div class="note"><span class="notetitle">Note:</span> It is necessary to include PROPEXT.CPP in the project workspace for your plug-in.</div>
<p>If a plug-in requires that a property sheet is associated with one of its own object types, the SFGAO_HASPROPSHEET flag must be returned as part of the attributes of the object. When this flag is on,
the Navigator automatically will add Properties to the context menu for the object. Also, when this flag is on, Navigator will call any registered property sheet handlers to add pages to the property sheet
when the context menu item is selected.</p>
<p>In certain cases a plug-in may desire to implement a Properties context menu item that is defined for one of its own object types as a standard Windows<sup>®</sup> dialog instead of a property sheet. A flag is defined for this situation that may be returned to the Navigator on calls to IContextMenu::QueryContextMenu. If
the flag is returned, no automatic processing for Properties is performed, and it is up to the plug-in to add the context menu item and implement the associated dialog. This flag is documented in Description
of QueryContextMenu flags.</p>
<p>If a plug-in intends to add property pages to one of the property sheets for an iSeries user, the key that specifies the
CLSID of the property sheet handler must specify a PropSheet field that identifies the property sheet to which the specified handler will add pages. An example follows.</p>
<pre>;--------------------------------------------------------------------
;
Register a property sheet handler for the Network property sheet for iSeries users
[HKEY_CLASSES_ROOT\IBM.AS400.Network\3RD PARTY plug-inS\IBM.Sample\shellex\Users
and Groups\User\PropertySheetHandlers\{3D7907A1-9080-11d0-82BD-08005AA74F5C}]
"PropSheet"="Networks"</pre>
<p>Valid values for the PropSheet field are:</p>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr><th colspan="5" valign="top" id="d0e50"> PropSheet field valid values</th>
</tr>
<tr><th valign="top" id="d0e53">Groups</th>
<th valign="top" id="d0e55">Personal</th>
<th valign="top" id="d0e57">Security or Capabilities</th>
<th valign="top" id="d0e59">Jobs</th>
<th valign="top" id="d0e61">Networks</th>
</tr>
</thead>
<tbody><tr><td valign="top" headers="d0e50 d0e53 ">Groups-Before-All <p>Groups-After-Info</p>
</td>
<td valign="top" headers="d0e50 d0e55 ">Personal-Before-All <p>Personal-After-Name</p>
<p>Personal-After-Location</p>
<p>Personal-After-Mail</p>
</td>
<td valign="top" headers="d0e50 d0e57 ">Capabilities-Before-All <p>Capabilities-After-Privileges</p>
<p>Capabilities-After-Auditing</p>
<p>Capabilities-Before-Other</p>
<p>Capabilities-After-Other</p>
</td>
<td valign="top" headers="d0e50 d0e59 ">Jobs-Before-All <p>Jobs-After-General</p>
<p>Jobs-After-Startup</p>
<p>Jobs-After-Display</p>
<p>Jobs-After-Output</p>
<p>Jobs-After-International</p>
</td>
<td valign="top" headers="d0e50 d0e61 ">Networks-Before-All <p>Networks-After-Servers</p>
<p>Networks-After-General</p>
</td>
</tr>
</tbody>
</table>
</div>
<p>To add pages to a property sheet for an iSeries user, the plug-in must implement the IA4PropSheetNotify interface (see
IA4PropSheetNotify interface specifications listing).</p>
<dl><dt class="dlterm">Restriction:</dt>
<dd>The following restriction currently applies to property sheets for iSeries user objects:<p>Multiple property sheet handlers
for the various property sheets that are associated with an iSeries user cannot be implemented on the same implementation class. Each property sheet requires a separate CLSID.</p>
</dd>
</dl>
</div>
<div>
<ul class="ullinks">
<li class="ulchildlink"><strong><a href="rzakxdescquerycntxtmenu.htm">Description of QueryContextMenu flags</a></strong><br />
Add SHORT DESCRIPTION.</li>
</ul>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzakxcreateplugin.htm" title="After modifying the sample plug-ins, you'll need to make some modifications to the registry files. This topic provides a walk-through of the registry files for each type of plug-in, and recommends some modifications.">Customize the plug-in registry files</a></div>
</div>
<div class="relconcepts"><strong>Related concepts</strong><br />
<div><a href="rzakxdescquerycntxtmenu.htm" title="Add SHORT DESCRIPTION.">Description of QueryContextMenu flags</a></div>
<div><a href="rzakxia4propsheetifspec.htm" title="The IA4PropSheetNotify interface supplies notifications to the implementation of IShellPropSheetExt that are needed when adding additional property pages to one of the Users and Groups property sheets.">IA4PropSheetNotify interface specifications listing</a></div>
</div>
</div>
</body>
</html>