<!-- $XConsortium: ActivP.sgm /main/10 1996/09/25 10:07:11 cdedoc $ -->
<!-- (c) Copyright 1995 Digital Equipment Corporation. -->
<!-- (c) Copyright 1995 Hewlett-Packard Company. -->
<!-- (c) Copyright 1995 International Business Machines Corp. -->
<!-- (c) Copyright 1995 Sun Microsystems, Inc. -->
<!-- (c) Copyright 1995 Novell, Inc. -->
<!-- (c) Copyright 1995 FUJITSU LIMITED. -->
<!-- (c) Copyright 1995 Hitachi. -->

<RefEntry Id="CDEMMA.MAN33.rsml.1">
<RefMeta>
<RefEntryTitle>XmActivateProtocol</RefEntryTitle>
<ManVolNum>library call</ManVolNum>
</RefMeta>
<RefNameDiv>
<RefName><Function>XmActivateProtocol</Function></RefName>
<RefPurpose>A VendorShell function that activates a protocol
<IndexTerm>
<Primary>XmActivateProtocol</Primary>
</IndexTerm><IndexTerm>
<Primary>VendorShell functions</Primary>
<Secondary>XmActivateProtocol</Secondary>
</IndexTerm><IndexTerm>
<Primary>protocols</Primary>
</IndexTerm></RefPurpose>
</RefNameDiv>
<!-- -->
<!-- @OSF_COPYRIGHT@-->
<!-- COPYRIGHT NOTICE-->
<!-- Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc.-->
<!-- ALL RIGHTS RESERVED (MOTIF). See the file named COPY.MOTIF.DOC for-->
<!-- the full copyright text.-->
<!-- -->
<!-- HISTORY-->
<!-- -->
<!-- **-->
<!-- **-->
<!-- **  (c) Copyright 1989, 1990, 1992 by Open Software Foundation, Inc.-->
<!-- **      All Rights Reserved.-->
<!-- **-->
<!-- **  (c) Copyright 1987, 1988, 1989, by Hewlett-Packard Company-->
<!-- **-->
<!-- **  (c) Copyright 1987, 1988 by Digital Equipment Corporation,-->
<!-- **      Maynard, MA.  All Rights Reserved.-->
<!-- **-->
<!-- **-->
<RefSynopsisDiv>
<FuncSynopsis>
<FuncSynopsisInfo>#include &lt;Xm/Protocols.h>
</FuncSynopsisInfo>
<FuncDef>void <Function>XmActivateProtocol</Function></FuncDef>
<!--<ParamDef><Replaceable>shell, property, protocol</Replaceable></ParamDef>-->
<ParamDef>Widget <Parameter>shell</Parameter></ParamDef>
<ParamDef>Atom <Parameter>property</Parameter></ParamDef>
<ParamDef>Atom <Parameter>protocol</Parameter></ParamDef>
</FuncSynopsis>
</RefSynopsisDiv>
<RefSect1>
<Title>DESCRIPTION</Title>
<Para><Function>XmActivateProtocol</Function> activates a protocol. It
updates the handlers and the <Symbol Role="Variable">property</Symbol> if
the <Symbol Role="Variable">shell</Symbol> is realized. It is sometimes useful to allow
a protocol's state information (callback lists, and so on) to persist, even though
the client may choose to temporarily resign from the interaction. This is
supported by allowing a <Symbol Role="Variable">protocol</Symbol> to be in one of two states: active or
inactive. If the <Symbol Role="Variable">protocol</Symbol> is active and the <Symbol Role="Variable">shell</Symbol> is realized,
the <Symbol Role="Variable">property</Symbol> contains the <Symbol Role="Variable">protocol</Symbol> <Literal>Atom</Literal>.
If the <Symbol Role="Variable">protocol</Symbol> is inactive, the <Literal>Atom</Literal> is not present in
the <Symbol Role="Variable">property</Symbol>.
</Para>
<Para><Function>XmActivateWMProtocol</Function> is a convenience interface.
It calls <Function>XmActivateProtocol</Function>
with the property value set to the atom returned by
interning <Property>WM_PROTOCOLS</Property>.
</Para>
<VariableList>
<VarListEntry>
<Term><Symbol Role="Variable">shell</Symbol></Term>
<ListItem>
<Para>Specifies the widget with which the protocol property is associated
</Para>
</ListItem>
</VarListEntry>
<VarListEntry>
<Term><Symbol Role="Variable">property</Symbol></Term>
<ListItem>
<Para>Specifies the protocol property
</Para>
</ListItem>
</VarListEntry>
<VarListEntry>
<Term><Symbol Role="Variable">protocol</Symbol></Term>
<ListItem>
<Para>Specifies the protocol <Literal>Atom</Literal>
</Para>
</ListItem>
</VarListEntry>
</VariableList>
<Para>For a complete definition of VendorShell and its associated resources, see
&cdeman.VendorShell;.
</Para>
</RefSect1>
<RefSect1>
<Title>RELATED</Title>
<Para>&cdeman.VendorShell;, &cdeman.XmActivateWMProtocol;,
&cdeman.XmRemoveProtocols;
and &cdeman.XmInternAtom;.
</Para>
</RefSect1>
</RefEntry>
<!--fickle 1.09 7/2/95-->
