<!-- $XConsortium: StrGeE.sgm /main/9 1996/09/08 21:05:23 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.MAN429.rsml.1">
<RefMeta>
<RefEntryTitle>XmStringGetNextSegment</RefEntryTitle>
<ManVolNum>library call</ManVolNum>
</RefMeta>
<RefNameDiv>
<RefName><Function>XmStringGetNextSegment</Function></RefName>
<RefPurpose>A compound string function that fetches the bytes in the next segment of a compound string
<IndexTerm>
<Primary>XmStringGetNextSegment</Primary>
</IndexTerm><IndexTerm>
<Primary>compound string functions</Primary>
<Secondary>XmStringGetNextSegment</Secondary>
</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/Xm.h>
</FuncSynopsisInfo>
<FuncDef>Boolean <Function>XmStringGetNextSegment</Function></FuncDef>
<!--<ParamDef><Replaceable>context, text, tag, direction, separator</Replaceable></ParamDef>-->
<ParamDef>XmStringContext <Parameter>context</Parameter></ParamDef>
<ParamDef>char **<Parameter>text</Parameter></ParamDef>
<ParamDef>XmStringTag *<Parameter>tag</Parameter></ParamDef>
<ParamDef>XmStringDirection *<Parameter>direction</Parameter></ParamDef>
<ParamDef>Boolean *<Parameter>separator</Parameter></ParamDef>
</FuncSynopsis>
</RefSynopsisDiv>
<RefSect1>
<Title>DESCRIPTION</Title>
<Para>This routine is obsolete and exists for compatibility with previous
releases. To read the contents of a compound string, read each
component of the string with <Function>XmStringGetNextTriple</Function>. This
<StructName Role="typedef">XmString</StructName> function returns the type, length, and value of the next
component in the compound string.
<Function>XmStringGetNextSegment</Function>
fetches the
bytes
in the next segment; repeated calls
fetch sequential segments. The <Emphasis>text</Emphasis>, <Emphasis>tag</Emphasis>,
and <Emphasis>direction</Emphasis> of the fetched segment are returned each time. A
Boolean status is returned to indicate whether a valid segment was
successfully parsed.
</Para>
<Para>If the function returns True, then the function allocates space to hold the
returned <Emphasis>text</Emphasis> and <Emphasis>tag</Emphasis>. The application is responsible for
managing the allocated space. The application can recover the allocated space
by calling <Function>XtFree</Function>.
</Para>
<VariableList>
<VarListEntry>
<Term><Symbol Role="Variable">context</Symbol></Term>
<ListItem>
<Para>Specifies the string context structure which was allocated by the
<Function>XmStringInitContext</Function> function
</Para>
</ListItem>
</VarListEntry>
<VarListEntry>
<Term><Emphasis>text</Emphasis></Term>
<ListItem>
<Para>Specifies a pointer to a NULL-terminated string
</Para>
</ListItem>
</VarListEntry>
<VarListEntry>
<Term><Emphasis>tag</Emphasis></Term>
<ListItem>
<Para>Specifies a pointer to the font list element tag associated with the
text
</Para>
</ListItem>
</VarListEntry>
<VarListEntry>
<Term><Emphasis>direction</Emphasis></Term>
<ListItem>
<Para>Specifies a pointer to the direction of the text
</Para>
</ListItem>
</VarListEntry>
<VarListEntry>
<Term><Symbol Role="Variable">separator</Symbol></Term>
<ListItem>
<Para>Specifies whether the next component of the compound string is a
separator
</Para>
</ListItem>
</VarListEntry>
</VariableList>
</RefSect1>
<RefSect1>
<Title>RETURN</Title>
<Para>Returns True if a valid segment is found.
</Para>
</RefSect1>
<RefSect1>
<Title>RELATED</Title>
<Para>&cdeman.XmStringCreate; and &cdeman.XmStringInitContext;.
</Para>
</RefSect1>
</RefEntry>
<!--fickle 1.09 7/2/95-->
