<!-- $XConsortium: StrToX.sgm /main/10 1996/09/08 21:07:51 rws $ -->
<!-- (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.MAN450.rsml.1">
<RefMeta>
<RefEntryTitle>XmStringToXmStringTable</RefEntryTitle>
<ManVolNum>library call</ManVolNum>
</RefMeta>
<RefNameDiv>
<RefName><Function>XmStringToXmStringTable</Function></RefName>
<RefPurpose>A convenience function that converts a single compound string to a table of compound strings
<IndexTerm>
<Primary>XmStringTableToXmString</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-->
<RefSynopsisDiv>
<FuncSynopsis>
<FuncSynopsisInfo>#include &lt;Xm/Xm.h>
</FuncSynopsisInfo>
<FuncDef>Cardinal <Function>XmStringToXmStringTable</Function></FuncDef>
<!--<ParamDef><Replaceable>string, break_component, table</Replaceable></ParamDef>-->
<ParamDef>XmString <Parameter>string</Parameter></ParamDef>
<ParamDef>XmString <Parameter>break_component</Parameter></ParamDef>
<ParamDef>XmStringTable <Parameter>*table</Parameter></ParamDef>
</FuncSynopsis>
</RefSynopsisDiv>
<RefSect1>
<Title>DESCRIPTION</Title>
<Para><Function>XmStringToXmStringTable</Function> takes as input a single compound string
and a specified
string component (such as a tab) and returns a table of compound
strings consisting of portions of <Symbol Role="Variable">string</Symbol> delimited by components
matching <Symbol Role="Variable">break_component</Symbol>. The components marking breaks will
not appear in the resulting table.
</Para>
<VariableList>
<VarListEntry>
<Term><Symbol Role="Variable">string</Symbol></Term>
<ListItem>
<Para>Specifies the <StructName Role="typedef">XmString</StructName> to be converted.
</Para>
</ListItem>
</VarListEntry>
<VarListEntry>
<Term><Symbol Role="Variable">break_component</Symbol></Term>
<ListItem>
<Para>Specifies the <Symbol>XmStringComponent</Symbol> that will be used to indicate
where to split <Symbol Role="Variable">string</Symbol> to form the individual elements of
<Symbol Role="Variable">table</Symbol>. The most
useful types will be <SystemItem Class="Constant">XmSTRING_COMPONENT_SEPARATOR</SystemItem> and
<SystemItem Class="Constant">XmSTRING_COMPONENT_TAB</SystemItem>. Refer to the
&cdeman.XmStringComponentType;
reference page for a complete list of
possible component types. Note, however, that the
<SystemItem Class="Constant">XmSTRING_COMPONENT_UNKNOWN</SystemItem> component is not a possible type.
</Para>
</ListItem>
</VarListEntry>
<VarListEntry>
<Term><Symbol Role="Variable">table</Symbol></Term>
<ListItem>
<Para>Returns the equivalent <StructName Role="typedef">XmStringTable</StructName>.
The function will allocate space to hold the returned <StructName Role="typedef">XmStringTable</StructName>.
When the applicaiton no longer needs the returned <StructName Role="typedef">XmStringTable</StructName>,
the application should call <Function>XmStringFree</Function>
once for each compound string in the table,
and then calling <Function>XtFree</Function> to deallocate the <StructName Role="typedef">XmStringTable</StructName> itself.
</Para>
</ListItem>
</VarListEntry>
</VariableList>
</RefSect1>
<RefSect1>
<Title>RETURN</Title>
<Para>Returns the number of compound strings in <Symbol Role="Variable">table</Symbol>.
</Para>
</RefSect1>
<RefSect1>
<Title>RELATED</Title>
<Para>&cdeman.XmStringTable;.
</Para>
</RefSect1>
</RefEntry>
<!--fickle 1.09 7/2/95-->
