Está en la página 1de 1160

Copyright 2000. O'Reilly Media. All rights reserved.

. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Pageiii

Motif
ReferenceManual
forMotif2.1:
VolumeSixB
SecondEdition
AntonyFountainand
PaulaFerguson

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Pageiv

MotifReferenceManual,SecondEdition
byAntonyFountainandPaulaFerguson
Copyright1993,2000O'Reilly&Associates,Inc.Allrightsreserved.
PrintedintheUnitedStatesofAmerica.
PublishedbyO'Reilly&Associates,Inc.,101MorrisStreet,Sebastopol,CA95472.
Editors:TimO'ReillyandPaulaFerguson
ProductionEditor:DavidFutato
CoverDesigner:EdieFreedman
PrintingHistory:
June1993:FirstEdition.
February2000:SecondEdition.
NutshellHandbook,theNutshellHandbooklogo,andtheO'ReillylogoareregisteredtrademarksandTheJavaSeriesisatrademarkofO'Reilly&Associates,Inc.
Manyofthedesignationsusedbymanufacturersandsellerstodistinguishtheirproductsareclaimedastrademarks.Wherethosedesignationsappearinthisbook,and
O'Reilly&Associates,Inc.wasawareofatrademarkclaim,thedesignationshavebeenprintedincapsorinitialcaps.
Whileeveryprecautionhasbeentakeninthepreparationofthisbook,thepublisherassumesnoresponsibilityforerrorsoromissions,orfordamagesresultingfrom
theuseoftheinformationcontainedherein.
ISBN:1565926544
[M]

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Pagev

TABLEOFCONTENTS
Preface

vii

Part1:MotifFunctionsandMacros

Part2:MotifandXtWidgetClasses

603

Part3:MotifClients

1015

Part4:Appendixes

1051

AppendixA:FunctionSummaries

1053

AppendixB:DataTypes

1077

AppendixC:TableofMotifResources

1109

AppendixD:NewFeaturesinMotif2.1and2.0

1125

Index

1133

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Pagevii

PREFACE
WhattoputinandwhattoleaveoutofthisupdatetotheMotifReferenceManualwasthehardestdecisionofall.Theguidingprinciplehasbeentoconsiderfor
whomthismaterialisintended:thisbookisaprogrammer'sreference,notawidgetauthor'shandbook.
Accordingly,thoseaspectsofthenewTraitmechanismsthatanapplicationprogrammerneedstoknowhavebeenincluded,buttheXmeutilitieshavenot.Whenyou
arespecifyingaTraitasawelldefinedpieceofbehaviorthatawidgetsupports,itisenoughtoknowwhichtraitsawidgetclasssupportsandhowthisaffectsobjects
inthewidgetinstancehierarchy.HowaTraitisimplementedandwhichmethodsareassociatedwiththegivenTraitaregenerallythedomainofthewidgetauthor,
however.HenceitisrecordedthattheVendorShellholdstheXmQTspecifyRenderTableTrait,whichmeansthatwidgetclassesfurtherdownthewidget
instancehierarchyinheritdefaultrendertableinformationfromtheVendorShell.Thisisallthatanapplicationprogrammerneedstoknow:therestissilence.
Conversely,theMotifinputmethodutilitieshavebeenincluded.AlthoughthesefunctionsweremostlydefinedintheMotif1.2release,andalthoughtheMotifwidget
classesgenerallyhandleconnectionstoaninputmethodwhenandwherethisisrequired,thereisanimportantexception.TheMotifDrawingAreadoesnotregister
itselfwithaninputmethodautomatically,andhenceanyonewhoneedstoimplementinternationalizedinputforthiswidgetclassmostcertainlyneedstoknowabout
theXmImfunctions.TheworlddoesnotallspeakEnglish:forthesereasons,theXmImfunctionsareincludedinthismanual.
AbriefnoteconcerningthestatusofMotifasthepremierUnixtoolkit.Anumberofalternativetoolkitshavearisen,particularlyintheLinuxdomain,whichofferanX
basedwindowingsystemforUnixandotherplatforms.IreferprincipallytothelikesofQtandGTK+.TheseonthewholedispensewiththeXtlayer,inorderto
providesmall,lightweightGUIcomponentsthatare,fromtheapplicationprogrammer's

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Pageviii

perspective,relativelyeasytoporttononUnixdomains.Althoughadmirableinmanyways,thesesufferfromonecrucialdrawback,preciselybecauseXthasbeen
excluded:thereisnoobjectcomponentmodelassociatedwithanyoftheobjectsthatcanbecreatedinaninterface.
CompareandcontrastwithsomethinglikeJavaBeans,whereaGUIbuildercanbedesignedtodynamicallyloadandqueryobjectsfromwhateversource.
Subsequently,thebuildertoolcaninspecttheattributesoftheobject,constructresourcepanels,andgeneratecodeforthecomponents,allwithoutanyexternal
configuration.
BecauseMotifisbasedonXt,italsohasthisimportantproperty:IcaninprincipledynamicallyloadintomyGUIbuilderanythirdpartycomponent,constructan
internalattributelist,presentresourcepanelsforobjectconfigurationtotheuser,andfromtheregeneratesourcecode.Icandoallthisjustbyinterrogatingthewidget
class.AllthecommercialGUIbuildersavailableforMotifsupportthis.
TheneweralternativeLinuxtookitsdonothavethisintrospectiveability.WritingGUIbuildershappenstobewhatIdoforaliving:sadtosay,Icannotwriteonefor
thesetoolkitspreciselybecausethereisnocomponentmodelattheobjectlevel.Notsurprisingly,nothirdpartycomponentmarketexistsforthetoolkitseither:there
isnoGUIbuilderintowhichthesecomponentscanbedynamicallyslotted.Eachneedstheother,butthereisnothingthatallowsthemtotalk.Intheabsenceofeither
acommercialcomponentmarketoradynamicGUIbuilder,thereremainseriousquestionmarksconcerningthescalabilityofthealternativetoolkits,whatevermerits
theyhold.Theonlyalternativeistowriteallyourcodebyhand.
Ironically,theadventofJavacementedMotif'sposition:the1.0and1.1releasesreliedonMotifforthenativeGUIimplementationontheUnixplatform.WithJava
1.2,theJFCprovidesapureJavaGUIsolution,buttherearestillconcernsaboutJava'sperformance.Untilsuchtimeasanativetoolkitthathasthisimportant
introspectivepropertysurfaces,Motifremainswhatithaslongbeen,theonlynativetoolkitforUnixwhichsupportslargescaleinternationalizedapplications.

AbouttheMotifToolkit
TheMotiftoolkit,fromtheOpenSoftwareFoundation(OSF),isbasedontheXToolkitIntrinsics(Xt),whichisthestandardmechanismonwhichmanyofthe
toolkitswrittenfortheXWindowSystemarebased.Xtprovidesalibraryofuserinterfaceobjectscalledwidgetsandgadgetsthatprovideaconvenientinterfacefor
creatingandmanipulatingXwindows,colormaps,events,andothercosmeticattributesofthedisplay.Inshort,widgetscanbethoughtofasbuildingblocksthatthe
programmerusestoconstructacompleteapplication.
However,thewidgetsthatXtprovidesaregenericinnatureandimposenouserinterfacepolicywhatsoever.Providingthelookandfeelofaninterfaceisthejobofa
userinterfacetoolkitsuchasMotif.Motifprovidesacompletesetofwidgetsthatare

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Pageix

designedtoimplementtheapplicationlookandfeelspecifiedintheMotifStyleGuideandtheMotifApplicationEnvironmentSpecification.TheMotiftoolkit
alsoincludesalibraryoffunctionsforcreatingandmanipulatingthewidgetsandotheraspectsoftheuserinterface.
TheMotiftoolkithasothercomponentsinadditiontothewidgetsetandrelatedfunctions.MotifprovidesaUserInterfaceLanguage(UIL)fordescribingtheinitial
stateofauserinterface.UILisdesignedtopermitrapidprototypingoftheuserinterfaceforanapplication.TheMotifResourceManager(Mrm)functionsprovidethe
interfacebetweenClanguageapplicationcodeandUIL.MotifalsoprovidestheMotifWindowManager(mwm).Theappearanceandbehaviorofthiswindow
managerisdesignedtobecompatiblewiththeappearanceandbehavioroftheMotifwidgetset.

AboutThisManual
ThismanualcontainsreferencematerialontheMotiftoolkit.ThiseditionisbasedonMotif2.1,whichisthelatestmajorreleaseoftheMotiftoolkit.Motif2.1isbased
onRelease6oftheXlibandXtspecifications(X11R6).ThisreleaseofMotifprovidesmanynewfeatures,includingnewwidgetclassesandseveralnewfunctions.
Thismanual,VolumeSixB,istheMotifReferenceManual.AcompanionvolumeisVolumeSixA,theMotifProgrammingManual.VolumeSixBispartofthe
sixthvolumeintheO'Reilly&AssociatesXWindowSystemSeries.ItincludesreferencepagesforeachoftheMotiffunctionsandmacros,fortheMotifandXt
Intrinsicswidgetclasses,andfortheMotifclients.Numerousquickreferenceappendicesarealsoprovided.Duetospaceconsiderations,thiseditionnolonger
containsmaterialontheMrmfunctionsandtheUILfileformat,datatypes,andfunctions.Thatmaterialcanbefoundonline,onthecatalogpageforthisbook,at
http://www.oreilly.com/catalog/motifref2/.
ThisbookincludesreferencepagesforallofthenewfunctionsandwidgetsinMotif2.1and2.0.Whenthefunctionalityofanexistingroutineorwidgethaschangedin
Motif2.1or2.0,thereferencepageexplainsthedifferencesthecurrentversionandolderversions.
VolumesSixAandBaredesignedtobeusedtogether.VolumeSixAprovidesacompleteprogrammer'sguidetotheMotiftoolkit.Eachchapterofthebookcovers
aparticularcomponentoftheMotiftoolkit.Eachchapterincludesbasictutorialmaterialaboutcreatingandmanipulatingthecomponent,intermediatelevelinformation
abouttheconfigurableaspectsofthecomponent,andanyadvancedprogrammingtopicsthatarerelevant.Thechaptersalsoprovidenumerousprogramming
examples.
TogetthemostoutoftheexamplesinVolumeSixA,youneedtheexactcallingsequencesofeachfunctionfromVolumeSixB.Tounderstandfullyhowtouseeach
oftheroutinesdescribedinVolumeSixB,allbutthemostexperiencedMotifprogrammersneedtheexplanationsandexamplesinVolumeSixA.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Pagex

WhiletheMotiftoolkitisbasedonXt,thefocusofthismanualisonMotifitself,notontheXToolkitIntrinsics.ReferencepagesfortheXtwidgetclassesare
includedheretoprovideacompletepictureofthewidgetclasshierarchy.ManyreferencepagesmentionrelatedXtroutines,butthefunctionalityoftheseroutinesis
notdescribed.DetailedinformationaboutXtisprovidedbyVolumeFour,XToolkitIntrinsicsProgrammingManual,MotifEdition,andVolumeFive,XToolkit
IntrinsicsReferenceManual.
NotethattheMrmandUILmaterialthatappearedinthefirsteditionofthisbookhasbeenremovedfromthisedition,duetopagecountissues.IfyouneedtheMrm
andUILmaterial,youcanfinditonlineathttp://www.oreilly.com/catalog/motifref2/.

HowThisManualIsOrganized
VolumeSixBisdesignedtomakeiteasyandfasttolookupvirtuallyanyfactabouttheMotiftoolkit.Itcontainsreferencepagesandnumeroushelpfulappendices.
Thebookisorganizedasfollows:
Preface

Describestheorganizationofthebookandtheconventionsitfollows.

Section1

MotifFunctionsandMacros,containsreferencepagesforallofMotif
functionsandmacros.

Section2

MotifandXtWidgetClasses,containsreferencepagesforthewidgetclasses
definedbytheMotiftoolkitandtheXToolkitIntrinsics.

Section3

MotifClients,containsreferencepagesfortheMotifclients:mwm,uil,and
xmbind.

Appendix
A

FunctionSummaries,providesquickreferencetablesthatlisteachMotif
functionalphabeticallyandalsobyfunctionalgroups.

Appendix
B

DataTypes,listsandexplainsinalphabeticalorderthestructures,enumerated
types,andothertypedefsusedforargumentstoMotiffunctions.

Appendix
C

TableofMotifResources,listsalloftheresourcesprovidedbyMotifandXt
widgetclasses,alongwiththeirtypesandtheclassesthatdefinethem.

Appendix
D

NewFeaturesinMotif2.1and2.0,liststhenewfunctions,widgetclasses,
andwidgetresourcesinMotif2.1and2.0.

Index

Shouldhelpyoutofindwhatyouneedtoknow.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Pagexi

Assumptions
ThisbookassumesthatthereaderisfamiliarwiththeCprogramminglanguageandtheconceptsandarchitectureoftheXToolkit,whicharepresentedinVolume
Four,XToolkitIntrinsicsProgrammingManual,MotifEdition,andVolumeFive,XToolkitIntrinsicsReferenceManual.AbasicunderstandingoftheX
WindowSystemisalsouseful.Forsomeadvancedtopics,thereadermayneedtoconsultVolumeOne,XlibProgrammingManual,andVolumeTwo,Xlib
ReferenceManual.

RelatedDocuments
ThefollowingbooksontheXWindowSystemareavailablefromO'Reilly:
VolumeOne

XlibProgrammingManual

VolumeTwo

XlibReferenceManual

VolumeFour

XToolkitIntrinsicsProgrammingManual,MotifEdition

VolumeFive

XToolkitIntrinsicsReferenceManual

VolumeSixA

MotifProgrammingManual

ConventionsUsedinThisBook
Italicisusedfor:
Unixpathnames,Components,programnames,usercommandnames,optionsforusercommands,emailaddresses,URLs,andvariableexpressionsinsyntax
sections.
Newtermswheretheyaredefined.
ConstantWidthisusedfor:
Anythingthatwouldbetypedverbatimintocode,suchasexamplesofsourcecodeandtextonthescreen.
Variables,datastructures(andfields),symbols(definedconstantsandbitflags),functions,macros,andageneralassortmentofanythingrelatingtotheC
programminglanguage.
AllfunctionsrelatingtoMotif,Xt,andXlib.
Namesofsubroutinesinexampleprograms.
ConstantWidthItalicisusedfor:
Argumentstofunctions,sincetheycouldbetypedincodeasshownbutarearbitrarynamesthatcouldbechanged.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Pagexii

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Boldfaceisusedfor:
ThenamesofGUIbuttonsandmenus.

We'dliketoHearfromYou
Wehavetestedandverifiedalloftheinformationinthisbooktothebestofourability,butyoumayfindthatfeatureshavechanged(oreventhatwehavemade
mistakes!).Emailyourcommentsandbugreportstobookquestions@oreilly.com.(Beforesendingabugreport,youmaywanttocheckforanerratalistat
http://www.oreilly.com/catalog/motifref2/toseeifthebughasalreadybeensubmitted.)Youcanalsowritetousat:
O'Reilly&Associates,Inc.
101MorrisStreet
Sebastopol,CA95472
18009989938(intheUSorCanada)
17078290515(international/local)
17078290104(FAX)
Pleasealsoletupknowwhatwecandotomakethisbookmoreusefultoyou.Wetakeyourcommentsseriously.

Acknowledgments
FirstEdition
ThisbookdevelopedoutoftherealizationthatitwouldbeimpossibletoupdatethefirsteditionofVolumeSixtocoverMotif1.2withoutdividingtheoriginalbook
intotwobooks.DanHeller,DavidFlanagan,AdrianNye,andTimO'Reillyallprovidedvaluablesuggestionsonhowbesttoexpandtheoriginalreferenceappendices
intoafullfledgedreferencemanual.
TheMotifreferencepagesinthisbookarebasedonthereferenceappendicesfromthefirstedition,whichweredevelopedbyDanielGilly.HisworkmeantthatI
didn'thavetostartfromscratch,andthussavedmanyhoursoftoil.TheOSF/Motifreferencematerialalsoprovidedahelpfulfoundationfromwhichtoexplorethe
complexitiesoftheMotiftoolkit.ManyoftheMotifexamplesinthebookwereborrowedfromthefirsteditionofVolumeSix.TheseexamplewerewrittenbyDan
Heller,althoughtheyhavebeenupdatedforMotif1.2.
DaveBrennan,ofHaLComputerSystems,tookontheunenviabletaskoflearningeverythingthereistoknowaboutUILandMrm,sothathecouldwritetheUIL
referencematerial.Hedidagreatjob.
AdrianNyedeservesspecialrecognitionforfreeingmetoworkonthisproject,whenI'msurethathehadotherprojectshewouldhavelikedtosendmyway.Idon't
thinkeitheroneofushadanyideahowinvolvedthisupdateprojectwouldbecome.The

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Pagexiii

otherinhabitantsofthe''writer'sblock"atO'Reilly&Associates,ValerieQuercia,LindaMui,andEllieCutler,providedsupportthatkeptmesanewhileIwas
workingonthebook.ExtragratitudegoestoLindaMuiforherworkonthecrossreferencesandthereferencetablesherknowledgeofvarioustoolspreventedme
fromdoingthingsthehardway.TimO'Reillyalsoprovidededitorialsupportthatimprovedthequalityofthereferencematerial.
Specialthanksgotothepeoplewhoworkedontheproductionofthisbook.ThefinalformofthisbookistheworkofthestaffatO'Reilly&Associates.Theauthors
wouldliketothankChrisReillyforthefigures,EllieCutlerforindexing,LennyMuellnerfortoolssupport,EileenKramerforcopyeditingandproductionofthefinal
copy,andClairemarieFisherO'Learyforfinalproofingandprinting.ThanksalsotoDonnaWoonteilerforherpatienceinansweringmyquestionsandhelpingmeto
understandtheproductionprocess.
Despitetheeffortsofallofthesepeople,theauthorsaloneareresponsibleforanyerrorsoromissionsthatremain.
PAULAFERGUSON
SecondEdition
ManythankstoallatISTwhogavemethetimeandopportunitytoperformthiswork.Iwouldliketothankallthosewhoreviewedthematerial,whichinareference
manualofthistypeisatediousbutnecessarytask:averybig"ThankYou"toAndyBartlettwhotookthetroubleofsittingdownwiththeMotifsourceswhilstpouring
overeverytechnicaldetailandtoTriciaLovellwhoreviewedtheformatatparticularlyshortnotice.
AspecialthanksalsotoRichardOfferandDougRandfromSiliconGraphics,andMarkRichesforcastingexpertandindependenteyesoverthematerials.Iwould
alsoliketothankAndyLovellandDerekLambertforallowingandfreeingmeuptoperformthetask.Totherestofthecompany,whohavehadtowaitwhilstyet
anotherbatchofprintjobsrantocompletion,allIcansayis"Sorry".
Averybig"ThankYou"indeedtoallatO'ReillyforallowingmetoundertakethisimportanttaskandespeciallytoPaulaFerguson,myeditor:Icouldnothavedone
thiswithoutyou.
ButtomywifeEmma,whoputupwithsomeseriouslylatenightsoveralongperiod,goesthebiggest"ThankYou"ofall.
ANTONYFOUNTAIN

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1

PART1
MOTIFFUNCTIONSANDMACROS
ThissectiondescribesthefunctionsandmacrosavailableintheMotiftoolkit.Functionsarepresentedalphabetically.
Thefirstreferencepage,Introduction,explainstheformatandcontentsofeachofthefollowingpages.

InThisSection:
Introduction

ClipboardRegisterFormat

ContainerRelayout

DropSiteQueryStockingOrder

ActivateProtocol

ClipboardRetrieve

ContainerReorder

DropSiteRegister

ActivateWMProtocol

ClipboardStartCopy

ConvertStringToUnits

DropSiteRetrieve

AddProtocolCallback

ClipboardStartRetrieve

ConvertUnits

DropSiteStartUpdate

AddProtocols

ClipboardUndoCopy

CreateObject

DropSiteUnregister

AddTabGroup

ClipboardUnlock

CvtByteStreamToXmString

DropSiteUpdate

AddToPostFromList

ClipboardWithdrawFormat

CvtCTToXmString

DropTransferAdd

AddWMProtcolCallback

ComboBoxAddItem

CvtStringToUnitType

DropTransferStart

AddWMProtocols

ComboBoxDeletePos

CvtTextPropertyToXmStringTable

FileSelectionBoxGetChild

CascadeButtonHighlight

ComboBoxSelectItem

CvtXmStringTableToTextProperty

FileSelectionDoSearch

ChangeColor

ComboBoxSetItem

CvtXmStringToByteStream

FontListAdd

ClipboardBeginCopy

ComboBoxUpdate

CvtXmStringToCT

FontListAppendEntry

ClipboardCancelCopy

CommandAppendValue

DeactivateProtocol

FontListCopy

ClipboardCopy

CommandError

DeactivateWMProtocol

FontListCreate

ClipboardCopyByName

CommandGetChild

DestroyPixmap

FontListCreate_r

ClipboardEndCopy

CommandSetValue

DirectionMatch

FontListEntryCreate

ClipboardEndRetrieve

ContainerCopy

DirectionMatchPartial

FontListEntryCreate_r

ClipboardInquireCount

ContainerCopyLink

DirectionToStringDirection

FontListEntryFree

ClipboardInquireFormat

ContainerCut

DragCancel

FontListEntryGetFont

ClipboardInquireLength

ContainerGetItemChildren

DragStart

FontListEntryGetTag

ClipboardInquirePendingItems

ContainerPaste

DropSiteConfigureStackingOrder

FontListEntryLoad

ClipboardLock

ContainerPasteLink

DropSiteEndUpdate

FontListFree

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page2

FontListFreeFontContext

ListDeletePos

RegisterSegmentEncoding

SpinBoxValidatePosition

FontListGetNextFont

ListDeletePositions

RemoveFromPostFromList

StringBaseline

FontListInitFontContext

ListDeselectAllItems

RemoveProtocolCallback

StringByteCompare

FontListNextEntry

ListDeselectItem

RemoveProtocols

StringByteStreamLength

FontListRemoveEntry

ListDeselectPos

RemoveTabGroup

StringCompare

GetAtomName

ListGetKbdItemPos

RemoveWMProtocolCallback

StringComponentCreate

GetColorCalculation

ListGetMatchPos

RemoveWMProtocols

StringConcat

GetColors

ListGetSelectedPos

RenderTableAddRenditions

StringConcatAndFree

GetDestination

ListItemExists

RenderTableCopy

StringCopy

GetDragContext

ListItemPos

RenderTableCvtFromProp

StringCreate

GetFocusWidget

ListPosSelected

RenderTableCvtToProp

StringCreateLocalized

GetMenuCursor

ListPosToBounds

RenderTableFree

StringCreateLtoR

GetPixmap

ListReplaceItems

RenderTableGetRendition

StringCreateSimple

GetPixmapByDepth

ListReplaceItemsPos

RenderTableGetRenditions

StringDirectionCreate

GetPostedFromWidget

ListReplaceItemsPosUnselected

RenderTableGetTags

StringDirectionToDirection

GetScaledPixmap

ListReplaceItemsUnselected

RenderTableRemoveRenditions

StringDraw

GetSecondaryResourceData

ListReplacePositions

RenditionCreate

StringDrawImage

GetTabGroup

ListSelectItem

RenditionFree

StringDrawUnderline

GetTearOffControl

ListSelectPos

RenditionRetrieve

StringEmpty

GetVisibility

ListSetAddMode

RenditionUpdate

StringExtent

GetXmDisplay

ListSetBottomItem

RepTypeAddReverse

StringFree

GetXmScreen

ListSetBottomPos

RepTypeGetId

StringFreeContext

Im

ListSetHorizPos

RepTypeGetNameList

StringGenerate

ImCloseXIM

ListSetItem

RepTypeGetRecord

StringGetLtoR

ImFreeXIC

ListSetKbdItemPos

RepTypeGetRegistered

StringGetNextComponent

ImGetXIC

ListSetPos

RepTypeInstallTearOffModelConverter

StringGetNextSegment

ImGetXIM

ListUpdateSelectedList

RepTypeRegister

StringGetNextTriple

ImMbLookupString

ListYToPos

RepTypeValidValue

StringHasSubstring

ImMbResetIC

MainWindowSep

ResolveAllPartOffsets

StringHeight

ImRegister

MainWindowSetAreas

ResolvePartOffsets

StringInitContext

ImSetFocusValues

MapSegmentEncoding

ScaleGetValue

StringIsVoid

ImSetValues

MenuPosition

ScaleSetTicks

StringLength

ImSetXIC

MessageBoxGetChild

ScaleSetValue

StringLineCount

ImUnregister

NotebookGetPageInfo

ScrollBarGetValues

StringNConcat

ImUnsetFocus

ObjectAtPoint

ScrollBarSetValues

StringNCopy

ImVaSetFocusValues

OptionButtonGadget

ScrollVisible

StringParseText

ImVaSetValues

OptionLabelGadget

ScrolledWindowSetAreas

StringPeekNextComponent

InstallImage

ParseMappingCreate

SelectionBoxGetChild

StringPeekNextTriple

InternAtom

ParseMappingFree

SetColorCalculation

StringPutRendition

IsMotifWMRunning

ParseMappingGetValues

SetFontUnit

StringSegmentCreate

IsObject

ParseMappingSetValues

SetFontUnits

StringSeparatorCreate

IsTraversable

ParseTableFree

SetMenuCursor

StringTableParseStringArray

ListAddItem

PrintPopupPDM

SetProtocolHooks

StringTableProposeTablist

ListAddItemUnselected

PrintSetup

SetWMProtocolHooks

StringTableToXmString

ListDeleteAllItems

PrintToFile

SimpleSpinBoxAddItem

StringTableUnparse

ListDeleteItem

ProcessTraversal

SimpleSpinBoxDeletePos

StringToXmStringTable

ListDeleteItemsPos

RedisplayWidget

SimpleSpinBoxSetItem

StringUnparse

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page3

StringWidth

TextPosToXY

TabCreate

TextRemove

TabFree

TextReplace

TabGetValues

TextReplaceWcs

TabListCopy

TextScroll

TabListFree

TextSetAddMode

TabListGetTab

TextSetCursorPosition

TabListInsertTabs

TextSetEditable

TabListRemoveTabs

TextSetHighlight

TabListReplacePositions

TextSetInsertionPosition

TabListTabCount

TextSetMaxLength

TabSetValue

TextSetSelection

TargetsAreCompatible

TextSetSource

TextClearSelection

TextSetString

TextCopy

TextSetStringWcs

TextCopyLink

TextSetTopCharacter

TextCut

TextShowPosition

TextDisableRedisplay

TextXYToPos

TextEnableRedisplay

ToggleButtonGetState

TextFindString

ToggleButtonSetState

TextFindStringWcs

ToggleButtonSetValue

TextGetBaseline

TrackingEvent

TextGetCenterline

TrackingLocate

TextGetCursorPosition

Transfer

TextGetEditable

TransferDone

TextGetInsertionPosition

TransferSendRequest

TextGetLastPosition

TransferSetParameters

TextGetMaxLength

TransferStartRequest

TextGetSelection

TransferValue

TextGetSelectionPosition

TranslateKey

TextGetSelectionWcs

UninstallImage

TextGetSource

UpdateDisplay

TextGetString

VaCreateSimpleCheckBox

TextGetStringWcs

VaCreateSimpleMenuBar

TextGetSubstring

VaCreateSimpleOptionMenu

TextGetSubstringWcs

VaCreateSimplePopupMenu

TextGetTopCharacter

VaCreateSimplePulldownMenu

TextInsert

VaCreateSimpleRadioBox

TextInsertWcs

WidgetGetBuselines

TextPaste

WidgetGetDisplayRect

TextPasteLink

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page5

Introduction
XmFunctions
ThispagedescribestheformatandcontentsofeachreferencepageinSection1,whichcoverstheMotiffunctionsandmacros.
Name
Functionabriefdescriptionofthefunction.
Synopsis
Thissectionshowsthesignatureofthefunction:thenamesandtypesofthearguments,andthetypeofthereturnvalue.Ifheaderfileotherthan<Xm/Xm.h>is
neededtodeclarethefunction,itisshowninthissectionaswell.
Inputs
Thissubsectiondescribeseachofthefunctionargumentsthatpassinformationtothefunction.
Outputs
Thissubsectiondescribesanyofthefunctionargumentsthatareusedtoreturninformationfromthefunction.Theseargumentsarealwaysofsomepointertype,soyoushould
usetheCaddressofoperator(& )topasstheaddressofthevariableinwhichthefunctionwillstorethereturnvalue.Thenamesoftheseargumentsaresometimessuffixedwith
_returntoindicatethatvaluesarereturnedinthem.Someargumentsbothsupplyandreturnavaluetheywillbelistedinthissectionandinthe"Inputs"sectionabove.
Finally,notethatbecausethelistoffunctionargumentsisbrokeninto"Input"and"Output"sections,theydonotalwaysappearinthesameorderthattheyarepassedtothe
function.Seethefunctionsignaturefortheactualcallingorder.
Returns
Thissubsectionexplainsthereturnvalueofthefunction,ifany.

Availability
ThissectionappearsforfunctionsthathavebeenaddedinlaterreleasesofMotifandalsoforfunctionsthatarenowsupersededbyother,preferred,functions.
Description
Thissectionexplainswhatthefunctiondoesanddescribesitsargumentsandreturnvalue.Ifyou'veusedthefunctionbeforeandarejustlookingforarefresher,this
sectionandthesynopsisaboveshouldbeallyouneed.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page6

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
Thissectionappearsformostfunctionsandprovideslessformalinformationaboutthefunction:whenandhowyoumightwanttouseit,thingstowatchoutfor,and
relatedfunctionsthatyoumightwanttoconsider.
Example
ThissectionappearsforsomeofthemostcommonlyusedMotiffunctions,andprovidesanexampleoftheiruse.
Structures
Thissectionshowsthedefinitionofanystructures,enumeratedtypes,typedefs,orsymbolicconstantsusedbythefunction.
Procedures
Thissectionshowsthesyntaxofanyprototypeproceduresusedbythefunction.
SeeAlso
Thissectionrefersyoutorelatedfunctions,widgetclasses,andclients.Thenumbersinparenthesesfollowingeachreferencerefertothesectionsofthisbookinwhich
theyarefound.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page7

XmActivateProtocol
XmProtocols
Name
XmActivateProtocolactivateaprotocol.
Synopsis
#include<Xm/Protocols.h>
voidXmActivateProtocol(shell,property,protocol)
Widgetshell
Atomproperty
Atomprotocol

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

property

Specifiesthepropertythatholdstheprotocoldata.

protocol

Specifiestheprotocolatom.

Description
XmActivateProtocol()activatesthespecifiedprotocol.Iftheshellisrealized,XmActivateProtocol()updatesitsprotocolhandlersand
thespecifiedproperty.Iftheprotocolisactive,theprotocolatomisstoredinpropertyiftheprotocolisinactive,theprotocolatomisnotstoredin
property.
Usage
Aprotocolisacommunicationchannelbetweenapplications.Protocolsaresimplyatoms,storedinapropertyonthetoplevelshellwindowfortheapplication.
XmActivateProtocol()makestheshellabletorespondtoClientMessageeventsthatcontainthespecifiedprotocol.Beforeyoucanactivatea
protocol,theprotocolmustbeaddedtotheshellwithXmAddProtocols().Protocolsareautomaticallyactivatedwhentheyareadded.Theinverseroutine
isXmDeactivateProtocol().
SeeAlso
XmActivateWMProtocol(1),XmAddProtocols(1),XmDeactivateProtocol(1),XmInternAtom(1),VendorShell
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page8

XmActivateWMProtocol
XmProtocols
Name
XmActivateWMProtocolactivatetheXA_WM_PROTOCOLSprotocol.
Synopsis
#include<Xm/Protocols.h>
voidXmActivateWMProtocol(shell,protocol)
Widgetshell
Atomprotocol

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

protocol

Specifiestheprotocolatom.

Description
XmActivateWMProtocol()isaconvenienceroutinethatcallsXmActivateProtocol()withpropertysettoXA_WM_PROTOCOLS,the
windowmanagerprotocolproperty.
Usage
ThepropertyXA_WM_PROTOCOLSisasetofpredefinedprotocolsforcommunicationbetweenclientsandwindowmanagers.Beforeyoucanactivatethe
protocols,theymustbeaddedtotheshellwithXmAddProtocols()orXmAddWMProtocols().Protocolsareautomaticallyactivatedwhentheyare
added.TheinverseroutineisXmDeactivateWMProtocol().
SeeAlso
XmActivateProtocol(1),XmAddProtocols(1),XmAddWMProtocols(1),XmDeactivateWMProtocol(1),
XmInternAtom(1),VendorShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page9

XmAddProtocolCallback
XmProtocols
Name
XmAddProtocolCallbackaddclientcallbackstoaprotocol.
Synopsis
#include<Xm/Protocols.h>
voidXmAddProtocolCallback(shell,property,protocol,callback,
closure)
Widgetshell
Atomproperty
Atomprotocol
XtCallbackProccallback
XtPointerclosure

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

property Specifiesthepropertythatholdstheprotocoldata.
protocol Specifiestheprotocolatom.
callback Specifiestheproceduretoinvokewhentheprotocolmessageis
received.
closure

Specifiesanyclientdatathatispassedtothecallback.

Description
XmAddProtocolCallback()addsclientcallbackstoaprotocol.Theroutineverifiesthattheprotocolisregistered,andifitisnot,itcalls
XmAddProtocols().XmAddProtocolCallback()addsthecallbacktotheinternallistofcallbacks,sothatitiscalledwhenthecorrespondingclient
messageisreceived.
Usage
Aprotocolisacommunicationchannelbetweenapplications.Protocolsaresimplyatoms,storedinapropertyonthetoplevelshellwindowfortheapplication.To
communicateusingaprotocol,aclientsendsaClientMessageeventcontainingapropertyandprotocol,andthereceivingclientrespondsbycallingthe
associatedprotocolcallbackroutine.XmAddProtocolCallback()allowsyoutoregisterthesecallbackroutines.
SeeAlso
XmAddProtocols(1),XmAddWMProtocolCallback(1),XmInternAtom(1),VendorShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page10

XmAddProtocols
XmProtocols
Name
XmAddProtocolsaddprotocolstotheprotocolmanager.
Synopsis
#include<Xm/Protocols.h>
voidXmAddProtocols(shell,property,protocols,num_protocols)
Widgetshell
Atomproperty
Atom*protocols
Cardinalnum_protocols

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

property

Specifiesthepropertythatholdstheprotocoldata.

protocols

Specifiesalistofprotocolatoms.

num_protocols

Specifiesthenumberofatomsinprotocols.

Description
XmAddProtocols()registersalistofprotocolstobestoredinthespecifiedpropertyofthespecifiedshellwidget.Theroutineaddstheprotocolsto
theprotocolmanagerandallocatestheinternaltablesthatareneededfortheprotocol.
Usage
Aprotocolisacommunicationchannelbetweenapplications.Protocolsaresimplyatoms,storedinapropertyonthetoplevelshellwindowfortheapplication.
XmAddProtocols()allowsyoutoaddprotocolsthatcanbeunderstoodbyyourapplication.TheinverseroutineisXmRemoveProtocols().To
communicateusingaprotocol,aclientsendsaClientMessageeventcontainingapropertyandprotocol,andthereceivingclientrespondsbycallingthe
associatedprotocolcallbackroutine.UseXmAddProtocolCallback()toaddacallbackfunctiontobeexecutedwhenaclientmessageeventcontainingthe
specifiedprotocolatomisreceived.
SeeAlso
XmAddProtocolCallback(1),XmAddWMProtocols(1),XmInternAtom(1),XmRemoveProtocols(1),VendorShell
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page11

XmAddTabGroup
XmKeyboardTraversal
Name
XmAddTabGroupaddawidgettoalistoftabgroups.
Synopsis
voidXmAddTabGroup(tab_group)
Widgettab_group

Inputs
tab_group

Specifiesthewidgettobeadded.

Availability
AsofMotif1.1,XmAddTabGroup()isobsolete.IthasbeensupersededbysettingXmNnavigationTypetoXmEXCLUSIVE_TAB_GROUP.
Description
XmAddTabGroup()makesthespecifiedwidgetaseparatetabgroup.ThisroutineisretainedforcompatibilitywithMotif1.0andshouldnotbeusedinnewer
applications.Iftraversalbehaviorneedstobechanged,thisshouldbedonedirectlybysettingtheXmNnavigationTyperesource,whichisdefinedbyManager
andPrimitive.
Usage
Atabgroupisagroupofwidgetsthatcanbetraversedusingthekeyboardratherthanthemouse.Usersmovefromwidgettowidgetwithinasingletabgroupby
pressingthearrowkeys.UsersmovebetweendifferenttabgroupsbypressingtheTaborShiftTabkeys.Ifthetab_groupwidgetisamanager,itschildrenare
allmembersofthetabgroup(unlesstheyaremadeintoseparatetabgroups).Ifthewidgetisaprimitive,itisitsowntabgroup.Certainwidgetsmustnotbeincluded
withotherwidgetswithinatabgroup.Forexample,eachList,Scrollbar,OptionMenu,ormultilineTextwidgetmustbeplacedinatabgroupbyitself,sincethese
widgetsdefinespecialbehaviorforthearroworTabkeys,whichpreventstheuseofthesekeysforwidgettraversal.TheinverseroutineisXmRemoveTabGroup
().
SeeAlso
XmGetTabGroup(1),XmRemoveTabGroup(1),XmManager(2),XmPrimitive(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page12

XmAddToPostFromList
XmProtocols
Name
XmAddToPostFromListmakeamenuaccessiblefromawidget.
Synopsis
#include<Xm/RowColumn.h>
voidXmAddToPostFromList(menu,widget)
Widgetmenu
Widgetwidget

Inputs
menu

Specifiesamenuwidget

widget

Specifiesthewidgetfromwhichtomakemenuaccessible

Availability
InMotif2.0andlater,thefunctionprototypehasbeenremovedfromRowColumn.h,althoughthereisotherwisenoindicationthattheprocedureisobsolete.
Description
XmAddToPostFromList()isaconveniencefunctionthatmakesmenuaccessiblefromwidget.Thereisnolimittohowmanywidgetsmaysharethesame
menu.Theeventsequencerequiredtopopupthemenuisthesameineachwidgetcontext.
Usage
Ratherthancreatinganewandidenticalhierarchyforeachcontextinwhichapulldownorpopupmenuisrequired,asinglemenucanbecreatedandshared.Ifthe
typeofthemenuisXmMENU_PULLDOWN,thevalueoftheXmNsubMenuIdresourceofwidgetissettomenu.Ifthetypeofthemenuis
XmMENU_POPUP,buttonandkeypresseventhandlersareaddedtowidgetinordertopostthemenu.
ThereareimplicitassumptionsthatwidgetisaCascadeButtonorCascadeButtonGadgetwhenmenuisXmMENU_PULLDOWN,andthatwidgetisnota
GadgetwhenmenuisXmMENU_POPUP.Thesearenotcheckedbythefunction,however.
SeeAlso
XmGetPostedFromWidget(1),XmRemoveFromPostFromList(1),XmCascadeButton(2),XmCascadeButtonGadget
(2),XmGadget(2),XmPopupMenu(2),XmPulldownMenu(2),XmRowColumn(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page13

XmAddWMProtocolCallback
XmProtocols
Name
XmAddWMProtocolCallbackaddclientcallbackstoanXA_WM_PROTOCOLSprotocol.
Synopsis
#include<Xm/Protocols.h>
voidXmAddWMProtocolCallback(shell,protocol,callback,closure)
Widgetshell
Atomprotocol
XtCallbackProccallback
XtPointerclosure

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

protocol

Specifiestheprotocolatom.

callback

Specifiestheproceduretoinvokewhentheprotocolmessageis
received.

closure

Specifiesanyclientdatathatispassedtothecallback.

Description
XmAddWMProtocolCallback()isaconvenienceroutinethatcallsXmAddProtocolCallback()withpropertysettoXA_WM_PROTOCOLS,
thewindowmanagerprotocolproperty.
Usage
ThepropertyXA_WM_PROTOCOLSisasetofpredefinedprotocolsforcommunicationbetweenclientsandwindowmanagers.Tocommunicateusingaprotocol,a
clientsendsaClientMessageeventcontainingapropertyandprotocol,andthereceivingclientrespondsbycallingtheassociatedprotocolcallbackroutine.
XmAddWMProtocolCallback()allowsyoutoregisterthesecallbackroutineswiththewindowmanagerprotocolproperty.Theinverseroutineis
XmRemoveWMProtocolCallback().
Example
ThefollowingcodefragmentshowstheuseofXmAddWMProtocolCallback()tosavethestateofanapplicationusingtheWM_SAVE_YOURSELF
protocol:
Atomwm_save_yourself
wm_save_yourself=
XmInternAtom(XtDisplay(toplevel),"WM_SAVE_YOURSELF",False)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page14
XmAddWMProtocols(toplevel,&wm_save_yourself,1)
XmAddWMProtocolCallback(toplevel,wm_save_yourself,save_state,toplevel)

save_stateisacallbackroutinethatsavesthestateoftheapplication.
SeeAlso
XmAddProtocolCallback(1),XmInternAtom(1),XmRemoveWMProtocolCallback(1),VendorShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page15

XmAddWMProtocols
XmProtocols
Name
XmAddWMProtocolsaddtheXA_WM_PROTOCOLSprotocolstotheprotocolmanager.
Synopsis
#include<Xm/Protocols.h>
voidXmAddWMProtocols(shell,protocols,num_protocols)
Widgetshell
Atom*protocols
Cardinalnum_protocols

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

protocols

Specifiesalistofprotocolatoms.

num_protocols

Specifiesthenumberofatomsinprotocols.

Description
XmAddWMProtocols()isaconvenienceroutinethatcallsXmAddProtocols()withpropertysettoXA_WM_PROTOCOLS,thewindowmanager
protocolproperty.
Usage
ThepropertyXA_WM_PROTOCOLSisasetofpredefinedprotocolsforcommunicationbetweenclientsandwindowmanagers.XmAddWMProtocols()
allowsyoutoaddthisprotocolsothatitcanbeunderstoodbyyourapplication.TheinverseroutineisXmRemoveWMProtocols().Tocommunicateusinga
protocol,aclientsendsaClientMessageeventcontainingapropertyandprotocol,andthereceivingclientrespondsbycallingtheassociatedprotocolcallback
routine.UseXmAddWMProtocolCallback()toaddacallbackfunctiontobeexecutedwhenaclientmessageeventcontainingthespecifiedprotocolatomis
received.
Example
ThefollowingcodefragmentshowstheuseofXmAddWMProtocols()toaddthewindowmanagerprotocols,sothatthestateofanapplicationcanbesaved
usingtheWM_SAVE_YOURSELFprotocol:
Atomwm_save_yourself
wm_save_yourself=
XmInternAtom(XtDisplay(toplevel),"WM_SAVE_YOURSELF",False)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page16
XmAddWMProtocols(toplevel,&wm_save_yourself,1)
XmAddWMProtocolCallback(toplevel,wm_save_yourself,save_state,toplevel)

save_stateisacallbackroutinethatsavesthestateoftheapplication.
SeeAlso
XmAddProtocols(1),XmAddWMProtocolCallback(1),XmInternAtom(1),XmRemoveWMProtocols(1),VendorShell
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page17

XmCascadeButtonHighlight
XmCascadeButton
Name
XmCascadeButtonHighlight,XmCascadeButtonGadgetHighlightsetthehighlightstateofaCascadeButton.
Synopsis
#include<Xm/CascadeB.h>
voidXmCascadeButtonHighlight(cascadeButton,highlight)

#include<Xm/CascadeBG.h>
voidXmCascadeButtonGadgetHighlight(cascadeButton,highlight)

WidgetcascadeButton
Booleanhighlight

Inputs
cascadeButton

SpecifiestheCascadeButtonorCascadeButtonGadget.

highlight

Specifiesthehighlightstate.

Description
XmCascadeButtonHighlight()setsthestateoftheshadowhighlightaroundthespecifiedcascadeButton,whichcanbeaCascadeButtonora
CascadeButtonGadget.XmCascadeButtonGadgetHighlight()setsthehighlightstateofthespecifiedcascadeButton,whichmustbea
CascadeButtonGadget.BothroutinesdrawtheshadowifhighlightisTrueanderasetheshadowifhighlightisFalse.
Usage
CascadeButtonsdonotnormallydisplayashadowlikeotherbuttons,sothehighlightshadowisoftenusedtoshowthatthebuttonisarmed.
XmCascadeButtonHighlight()andXmCascadeButtonGadgetHighlight()provideawayforyoutocausetheshadowtobedisplayed.
SeeAlso
XmCascadeButton(2),XmCascadeButtonGadget(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page18

XmChangeColor
XmColors
Name
XmChangeColorupdatethecolorsforawidget.
Synopsis
voidXmChangeColor(widget,background)
Widgetwidget
Pixelbackground

Inputs
widget

Specifiesthewidgetwhosecolorsaretobechanged.

background

Specifiesthebackgroundcolor.

Availability
Motif1.2andlater.
Description
XmChangeColor()changesallofthecolorsforthespecifiedwidgetbasedonthenewbackgroundcolor.Theroutinerecalculatestheforegroundcolor,
theselectcolor,thearmcolor,thetroughcolor,andthetopandbottomshadowcolorsandupdatesthecorrespondingresourcesforthewidget.
Usage
XmChangeColor()isaconvenienceroutineforchangingallofthecolorsforawidget,basedonthebackgroundcolor.Withouttheroutine,anapplication
wouldhavetocallXmGetColors()togetthenewcolorsandthensettheXmNforeground,XmNtopShadowColor,
XmNbottomShadowColor,XmNtroughColor,XmNarmColor,XmNselectColorresourcesforthewidgetwithXtSetValues().The
XmNhighlightColorissettothevalueoftheXmNforeground.
XmChangeColor()callsXmGetColors()internallytoallocatetherequiredpixels.InMotif1.2andearlier,thisusesthedefaultcolorcalculationprocedure
unlessacustomizedcolorcalculationprocedurehasbeensetwithXmSetColorCalculation().InMotif2.0andlater,colorcalculationcanbespecifiedon
aperscreenbasis,andanyspecifiedXmNcolorCalculationProcprocedureoftheXmScreenobjectassociatedwiththewidgetisusedinpreference.
SeeAlso
XmGetColorCalculation(1),XmGetColors(1),XmSetColorCalculation(1),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page19

XmClipboardBeginCopy
XmClipboard
Name
XmClipboardBeginCopysetupstorageforaclipboardcopyoperation.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardBeginCopy(display,window,clip_label,widget,
callback,item_id)
Display*display
Windowwindow
XmStringclip_label
Widgetwidget
VoidProccallback
long*item_id

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfrom
XOpenDisplay()orXtDisplay().

window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

clip_label Specifiesalabelthatisassociatedwiththedataitem.
widget

Specifiesthewidgetthatreceivesmessagesrequestingdatathathas
beenpassedbyname.

callback

Specifiesthecallbackfunctionthatiscalledwhentheclipboardneeds
datathathasbeenpassedbyname.

Outputs
item_id

ReturnstheIDassignedtothedataitem.

Returns
ClipboardSuccessonsuccessorClipboardLockediftheclipboardislockedbyanotherapplication.
Description
XmClipboardBeginCopy()isaconvenienceroutinethatcallsXmClipboardStartCopy()withidenticalargumentsandwithatimestampof
CurrentTime.
Usage
XmClipboardBeginCopy()canbeusedtostartanormalcopyoperationoracopybynameoperation.Inordertopassdatabyname,thewidgetand
callbackargumentstoXmClipboardBeginCopy()mustbespecified.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page20

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Procedures
TheVoidProchasthefollowingformat:
typedefvoid(*VoidProc)(Widget,int*,int*,int*)
Widgetwidget
int*data_id
int*private_id
int*reason

TheVoidProctakesfourarguments.Thefirstargument,widget,isthewidgetpassedtothecallbackroutine,whichisthesamewidgetaspassedto
XmClipboardBeginCopy().Thedata_idargumentistheIDofthedataitemthatisreturnedbyXmClipboardCopy()andprivate_idisthe
privatedatapassedtoXmClipboardCopy().ThereasonargumenttakesthevalueXmCR_CLIPBOARD_DATA_REQUEST,whichindicatesthatthe
datamustbecopiedtotheclipboard,orXmCR_CLIPBOARD_DATA_DELETE,whichindicatesthattheclientcandeletethedatafromtheclipboard.Although
thelastthreeparametersarepointerstointegers,thevaluesarereadonlyandchangingthemhasnoeffect.
SeeAlso
XmClipboardCancelCopy(1),XmClipboardCopy(1),XmClipboardCopyByName(1),XmClipboardEndCopy(1),
XmClipboardStartCopy(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page21

XmClipboardCancelCopy
XmClipboard
Name
XmClipboardCancelCopycancelacopyoperationtotheclipboard.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardCancelCopy(display,window,item_id)
Display*display
Windowwindow
longitem_id

Inputs
display SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().
window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

item_id SpecifiestheIDofthedataitem.

Returns
ClipboardSuccessonsuccess,ClipboardLockediftheclipboardislockedbyanotherapplication,orClipboardFailonfailure.
Description
XmClipboardCancelCopy()cancelsthecopyoperationthatisinprogressandfreestemporarystoragethathasbeenallocatedfortheoperation.The
functionreturnsClipboardFailifXmClipboardStartCopy()hasnotbeencalledorifthedataitemhastoomanyformats.
Usage
AcalltoXmClipboardCancelCopy()isvalidonlybetweencallstoXmClipboardStartCopy()andXmClipboardEndCopy().
XmClipboardCancelCopy()canbecalledinsteadofXmClipboardEndCopy()whenyouneedtoterminateacopyingoperationbeforeitcompletes.
Ifyouhavepreviouslylockedtheclipboard,XmClipboardCancelCopy()unlocksit,soyoushouldnotcallXmClipboardUnlock().
SeeAlso
XmClipboardBeginCopy(1),XmClipboardCopy(1),XmClipboardEndCopy(1),XmClipboardStartCopy(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page22

XmClipboardCopy
XmClipboard
Name
XmClipboardCopycopyadataitemtotemporarystorageforlatercopyingtotheclipboard.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardCopy(display,window,item_id,format_name,
buffer,length,private_id,data_id)
Display*display
Windowwindow
longitem_id
char*format_name
XtPointerbuffer
unsignedlonglength
longprivate_id
long*data_id

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfrom
XOpenDisplay()orXtDisplay().

window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

item_id

SpecifiestheIDofthedataitem.

format_name Specifiesthenameoftheformatofthedataitem.
buffer

Specifiesthebufferfromwhichdataiscopiedtotheclipboard.

length

Specifiesthelengthofthedatabeingcopiedtotheclipboard.

private_id

Specifiestheprivatedatathatisstoredwiththedataitem.

Outputs
data_id

ReturnsanIDforadataitemthatispassedbyname.

Returns
ClipboardSuccessonsuccess,ClipboardLockediftheclipboardislockedbyanotherapplication,orClipboardFailonfailure.
Description
XmClipboardCopy()copiesthedataitemspecifiedbybuffertotemporarystorage.Thedataitemismovedtotheclipboarddatastructurewhen
XmClipboardEndCopy()iscalled.Theitem_idistheIDofthedataitemreturnedbyXmClipboardStartCopy()andformat_nameisa
stringthatdescribesthetypeofthedata.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page23

SincethedataitemisnotactuallystoredintheclipboarduntilXmClipboardEndCopy()iscalled,multiplecallstoXmClipboardCopy()adddataitem
formatstothesamedataitemorwillappenddatatoanexistingformat.ThefunctionreturnsClipboardFailifXmClipboardStartCopy()hasnotbeen
calledorifthedataitemhastoomanyformats.
Usage
XmClipboardCopy()iscalledbetweencallstoXmClipboardStartCopy()andXmClipboardEndCopy().Ifyouneedtomakemultiplecalls
toXmClipboardCopy()tocopyalargeamountofdata,youshouldcallXmClipboardLock()tolocktheclipboardforthedurationofthecopy
operation.
Whenthereisalargeamountofclipboarddataandthedataisunlikelytoberetrieved,itcanbecopiedtotheclipboardbyname.Sincethedataitselfisnotcopiedto
theclipboarduntilitisrequestedwitharetrievaloperation,copyingbynamecanimproveperformance.Topassdatabyname,callXmClipboardCopy()with
bufferspecifiedasNULL.Auniquenumberisreturnedindata_idthatidentifiesthedataitemforlateruse.Whenanotherapplicationrequestsdatathathas
beenpassedbyname,acallbackrequestingtheactualdatawillbesenttotheapplicationthatownsthedataandtheownermustthencall
XmClipboardCopyByName()totransferthedatatotheclipboard.Oncedatathatispassedbynamehasbeendeletedfromtheclipboard,acallbacknotifies
theownerthatthedataisnolongerneeded.
Example
Thefollowingcallbackshowsthesequenceofcallsneededtocopydatatotheclipboard:
voidto_clipbd(widget,client_data,call_data)
Widgetwidget
XtPointerclient_data
XtPointercall_data
{
longitem_id=0
intstatus
XmStringclip_label
charbuffer[32]
Display*dpy=XtDisplayOfObject(widget)
Windowwindow=XtWindowOfObject(widget)
char*data=(char*)client_data

(void)sprintf(buffer,"%s",data)
clip_label=XmStringCreateLocalized("Data")

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page24
/*startacopyretryuntilunlocked*/
do
status=XmClipboardStartCopy(dpy,window,
clip_label,CurrentTime,NULL,NULL,&item_id)
while(status==ClipboardLocked)

XmStringFree(clip_label)

/*copythedataretryuntilunlocked*/
do{
status=XmClipboardCopy(dpy,window,item_id,"STRING",
(XtPointer)buffer,
(unsignedlong)strlen(buffer)+1,
(long)0,(long*)0)
}while(status==ClipboardLocked)

/*endthecopyretryuntilunlocked*/
do
status=XmClipboardEndCopy(dpy,window,item_id)
while(status==ClipboardLocked)
}

SeeAlso
XmClipboardBeginCopy(1),XmClipboardCancelCopy(1),XmClipboardCopyByName(1),XmClipboardEndCopy(1),
XmClipboardStartCopy(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page25

XmClipboardCopyByName
XmClipboard
Name
XmClipboardCopyByNamecopyadataitempassedbyname.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardCopyByName(display,window,data_id,buffer,length,
private_id)
Display*display
Windowwindow
longdata_id
XtPointerbuffer
unsignedlonglength
longprivate_id

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfrom
XOpenDisplay()orXtDisplay().

window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

data_id

SpecifiestheIDnumberassignedtothedataitemby
XmClipboardCopy().

buffer

Specifiesthebufferfromwhichdataiscopiedtotheclipboard.

length

Specifiesthelengthofthedatabeingcopiedtotheclipboard.

private_id Specifiestheprivatedatathatisstoredwiththedataitem.

Returns
ClipboardSuccessonsuccessorClipboardLockediftheclipboardislockedbyanotherapplication.
Description
XmClipboardCopyByName()copiestheactualdatatotheclipboardforadataitemthathasbeenpreviouslypassedbyname.Thedatathatiscopiedis
specifiedbybuffer.Thedata_idistheIDassignedtothedataitembyXmClipboardCopy().
Usage
XmClipboardCopyByName()istypicallyusedforincrementalcopyingnewdataisappendedtoexistingdatawitheachcallto
XmClipboardCopyByName().IfyouneedtomakemultiplecallstoXmClipboardCopyByName()tocopyalargeamountofdata,youshouldcall
XmClipboardLock()tolocktheclipboardforthedurationofthecopyoperation.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page26

Copyingbynameimprovesperformancewhenthereisalargeamountofclipboarddataandwhenthisdataislikelynevertoberetrieved,sincethedataitselfisnot
copiedtotheclipboarduntilitisrequestedwitharetrievaloperation.DataispassedbynamewhenXmClipboardCopy()iscalledwithabuffervalueof
NULL.Whenaclientrequeststhedatapassedbyname,thecallbackregisteredbyXmClipboardStartCopy()isinvoked.See
XmClipboardStartCopy()formoreinformationabouttheformatofthecallback.ThiscallbackcallsXmClipboardCopyByName()tocopythe
actualdatatotheclipboard.
Example
ThefollowingXmCutPasteProccallbackshowstheuseofXmClipboardCopyByName()tocopydatapassedbyname:
voidcopy_by_name(widget,data_id,private_id,reason)
Widgetwidget
long*data_id,*private_id
int*reason
{
Display*dpy=XtDisplay(toplevel)
Windowwindow=XtWindow(toplevel)
intstatus
charbuffer[32]

if(*reason==XmCR_CLIPBOARD_DATA_REQUEST){
(void)sprintf(buffer,"stuff")

do
status=XmClipboardCopyByName(dpy,window,
*data_id,(XtPointer)buffer,
(unsignedlong)strlen(buffer)+1,
*private_id)
while(status!=ClipboardSuccess)
}

SeeAlso
XmClipboardBeginCopy(1),XmClipboardCopy(1),XmClipboardEndCopy(1),XmClipboardStartCopy(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page27

XmClipboardEndCopy
XmClipboard
Name
XmClipboardEndCopyendacopyoperationtotheclipboard.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardEndCopy(display,window,item_id)
Display*display
Windowwindow
longitem_id

Inputs
display SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().
window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

item_id SpecifiestheIDofthedataitem.

Returns
ClipboardSuccessonsuccess,ClipboardLockediftheclipboardislockedbyanotherapplication,orClipboardFailonfailure.
Description
XmClipboardEndCopy()lockstheclipboard,placesdatathathasbeenaccumulatedbycallingXmClipboardCopy()intotheclipboarddatastructure,
andthenunlockstheclipboard.Theitem_idistheIDofthedataitemreturnedbyXmClipboardStartCopy().Thefunctionreturns
ClipboardFailifXmClipboardStartCopy()hasnotbeencalledpreviously.
Usage
XmClipboardEndCopy()freestemporarystoragethatwasallocatedbyXmClipboardStartCopy().XmClipboardStartCopy()mustbe
calledbeforeXmClipboardEndCopy(),whichdoesnotneedtobecalledifXmClipboardCancelCopy()hasalreadybeencalled.
Example
Thefollowingcallbackshowsthesequenceofcallsneededtocopydatatotheclipboard:
staticvoidto_clipbd(widget,client_data,call_data)
Widgetwidget
XtPointerclient_data
XtPointercall_data

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page28
{
longitem_id=0
intstatus
XmStringclip_label
charbuffer[32]
Display*dpy=XtDisplayOfObject(widget)
Windowwindow=XtWindowOfObject(widget)
char*data=(char*)client_data

(void)sprintf(buffer,"%s",data)
clip_label=XmStringCreateLocalized("Data")

/*startacopyretryuntilunlocked*/
do
status=XmClipboardStartCopy(dpy,window,
clip_label,CurrentTime,NULL,NULL,&item_id)
while(status==ClipboardLocked)

XmStringFree(clip_label)

/*copythedataretryuntilunlocked*/
do
status=XmClipboardCopy(dpy,window,item_id,"STRING",
(XtPointer)buffer,(unsignedlong)strlen(buffer)+1,0,NULL)
while(status==ClipboardLocked)

/*endthecopyretryuntilunlocked*/
do
status=XmClipboardEndCopy(dpy,window,item_id)
while(status==ClipboardLocked)
}

SeeAlso
XmClipboardBeginCopy(1),XmClipboardCancelCopy(1),XmClipboardCopy(1),XmClipboardCopyByName(1),
XmClipboardStartCopy(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page29

XmClipboardEndRetrieve
XmClipboard
Name
XmClipboardEndRetrieveendacopyoperationfromtheclipboard.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardEndRetrieve(display,window)
Display*display
Windowwindow

Inputs
display SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().
window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

Returns
ClipboardSuccessonsuccessorClipboardLockediftheclipboardislockedbyanotherapplication.
Description
XmClipboardEndRetrieve()endstheincrementalcopyingofdatafromtheclipboard.
Usage
AcalltoXmClipboardEndRetrieve()isprecededbyacalltoXmClipboardStartRetrieve(),whichbeginstheincrementalcopy,andcallsto
XmClipboardRetrieve(),whichincrementallyretrievethedataitemsfromclipboardstorage.XmClipboardStartRetrieve()locksthe
clipboardanditremainslockeduntilXmClipboardEndRetrieve()iscalled.
Example
Thefollowingcodefragmentshowsthesequenceofcallsneededtoperformanincrementalretrieve.Notethatthiscodedoesnotstorethedataasitisretrieved:
intstatus
unsignedlongreceived
charbuffer[32]
Display*dpy=XtDisplayOfObject(widget)
Windowwindow=XtWindowOfObject(widget)

do
status=XmClipboardStartRetrieve(dpy,window,CurrentTime)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page30

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

while(status==ClipboardLocked)

do{
/*retrievedatafromclipboard*/
status=XmClipboardRetrieve(dpy,window,
"STRING",(XtPointer)buffer,
(unsignedlong)sizeof(buffer),
&received,(long*)0)
}while(status==ClipboardTruncate)

status=XmClipboardEndRetrieve(dpy,window)

SeeAlso
XmClipboardRetrieve(1),XmClipboardStartRetrieve(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page31

XmClipboardInquireCount
XmClipboard
Name
XmClipboardInquireCountgetthenumberofdataitemformatsavailableontheclipboard.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardInquireCount(display,window,count,
max_format_name_length)
Display*display
Windowwindow
int*count
unsignedlong*max_format_name_length

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

Outputs
count

Returnsthenumberofdataitemformatsavailableforthedataonthe
clipboard.

max_format_name_length

Returnsthemaximumlengthofdataitemformatnames.

Returns
ClipboardSuccessonsuccess,ClipboardLockediftheclipboardislockedbyanotherapplication,orClipboardNoDataifthereisnodataon
theclipboard
Description
XmClipboardInquireCount()returnsthenumberofdataformatsavailableforthecurrentclipboarddataitemandthelengthofitslongestformatname.
countincludestheformatsthatwerepassedbyname.Iftherearenoformatsavailable,countis0(zero).
Usage
Toinquireabouttheformatsofthedataontheclipboard,youuseXmClipboardInquireCount()andXmClipboardInquireFormat()in
conjunction.XmClipboardInquireCount()returnsthenumberofformatsforthedataitemandXmClipboardInquireFormat()allowsyouto
iteratethroughalloftheformats.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page32

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmClipboardInquireFormat(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page33

XmClipboardInquireFormat
XmClipboard
Name
XmClipboardInquireFormatgetthespecifiedclipboarddataformatname.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardInquireFormat(display,window,index,format_name_buf,
buffer_len,copied_len)
Display*display
Windowwindow
intindex
XtPointerformat_name_buf
unsignedlongbuffer_len
unsignedlong*copied_len

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfrom
XOpenDisplay()orXtDisplay().

window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

index

Specifiestheindexoftheformatnametoretrieve.

buffer_len Specifiesthelengthofformat_name_bufinbytes.

Outputs
format_name_buf

Returnstheformatname.

copied_len Returnsthelength(inbytes)ofthestringcopiedto
format_name_buf.

Returns
ClipboardSuccessonsuccess,ClipboardLockediftheclipboardislockedbyanotherapplication,ClipboardTruncateif
format_name_bufisnotlongenoughtoholdthereturneddata,orClipboardNoDataifthereisnodataontheclipboard.
Description
XmClipboardInquireFormat()returnsaformatnameforthecurrentdataitemintheclipboard.Theformatnamereturnedisspecifiedbyindex,where
1referstothefirstformat.Ifindexexceedsthenumberofformatsforthedataitem,thenXmClipboardInquireFormat()returnsavalueof0(zero)in
thecopied_lenargument.XmClipboardInquireFormat()returnstheformatnameintheformat_name_bufargument.Thisargumentisa
bufferofafixedlengththatisallocated

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page34

bytheprogrammer.Ifthebufferisnotlargeenoughtoholdtheformatname,theroutinecopiesasmuchoftheformatnameaswillfitinthebufferandreturns
ClipboardTruncate.
Usage
Toinquireabouttheformatsofthedataontheclipboard,youuseXmClipboardInquireCount()andXmClipboardInquireFormat()in
conjunction.XmClipboardInquireCount()returnsthenumberofformatsforthedataitemandXmClipboardInquireFormat()allowsyouto
iteratethroughalloftheformats.
SeeAlso
XmClipboardInquireCount(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page35

XmClipboardInquireLength
XmClipboard
Name
XmClipboardInquireLengthgetthelengthofthedataitemontheclipboard.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardInquireLength(display,window,format_name,length)
Display*display
Windowwindow
char*format_name
unsignedlong*length

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

format_name Specifiestheformatnameforthedata.

Outputs
length

Returnsthelengthofthedataitemforthespecifiedformat.

Returns
ClipboardSuccessonsuccess,ClipboardLockediftheclipboardislockedbyanotherapplication,orClipboardNoDataifthereisnodataon
theclipboardfortherequestedformat.
Description
XmClipboardInquireLength()returnsthelengthofthedatastoredunderthespecifiedformat_nameforthecurrentclipboarddataitem.Ifnodatais
foundcorrespondingtoformat_nameorifthereisnoitemontheclipboard,XmClipboardInquireLength()returnsalengthof0(zero).Whena
dataitemispassedbyname,thelengthofthedataisassumedtobepassedinacalltoXmClipboardCopy(),eventhoughthedatahasnotyetbeentransferred
totheclipboard.
Usage
XmClipboardInquireLength()providesawayforanapplicationtofindouthowmuchdataisontheclipboard,sothatitcanallocateabufferthatislarge
enoughtoretrievethedatawithonecalltoXmClipboardRetrieve().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page36

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
ThefollowingcodefragmentdemonstrateshowtouseXmClipboardInquireLength()toretrieveallofthedataontheclipboard:
intstatus
unsignedlongrecvd,length
char*data
Display*dpy=XtDisplayOfObject(widget)
Windowwindow=XtWindowOfObject(widget)

do
status=XmClipboardInquireLength(dpy,window,"STRING",&length)
while(status==ClipboardLocked)

if(length!=0){
data=XtMalloc(length+1)

do
status=XmClipboardRetrieve(dpy,window,"STRING",
(XtPointer)data,(unsignedlong)length+1,
&recvd,(long*)0)
while(status==ClipboardLocked)

if(status!=ClipboardSuccess||recvd!=length){
XtWarning("Failedtoreceiveallclipboarddata")
}
}

SeeAlso
XmClipboardRetrieve(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page37

XmClipboardInquirePendingItems
XmClipboard
Name
XmClipboardInquirePendingItemsgetalistofpendingdataID/privateIDpairs.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardInquirePendingItems(display,window,format_name,
item_list,count)
Display*display
Windowwindow
char*format_name
XmClipboardPendingList*item_list
unsignedlong*count

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfrom
XOpenDisplay()orXtDisplay().

window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

format_name Specifiestheformatnameforthedata.

Outputs
item_list Returnsanarrayofdata_id/private_idpairsforthespecified
format.
count

Returnsthenumberofitemsintheitem_listarray.

Returns
ClipboardSuccessonsuccessorClipboardLockediftheclipboardislockedbyanotherapplication.
Description
XmClipboardInquirePendingItems()returnsalistofpendingdataitems,representedbydata_id/private_idpairs,forthespecified
format_name.Thedata_idandprivate_idargumentsarespecifiedintheclipboardfunctionsforcopyingandretrieving.Adataitemisconsidered
pendingundertheseconditions:theapplicationthatownsthedataitemoriginallypasseditbyname,theapplicationhasnotyetcopiedthedata,andthedataitemhas
notbeendeletedfromtheclipboard.Iftherearenopendingitemsforthespecifiedformat_name,theroutinereturnsacountof0(zero).Theapplicationis
responsibleforfreeingthememorythatisallocatedbyXmClipboardInquirePendingItems()tostorethelist.UseXtFree()tofreethememory.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page38

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
AnapplicationshouldcallXmClipboardInquirePendingItems()beforeexiting,todeterminewhetherdatathathasbeenpassedbynameshouldbe
copiedtotheclipboard.
Structures
TheXmClipboardPendingListisdefinedasfollows:
typedefstruct{
longDataId
longPrivateId
}XmClipboardPendingRec,*XmClipboardPendingList

SeeAlso
XmClipboardStartCopy(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page39

XmClipboardLock
XmClipboard
Name
XmClipboardLocklocktheclipboard.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardLock(display,window)
Display*display
Windowwindow

Inputs
display SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().
window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

Returns
ClipboardSuccessonsuccessorClipboardLockediftheclipboardislockedbyanotherapplication.
Description
XmClipboardLock()lockstheclipboardonbehalfofanapplication,whichpreventsaccesstotheclipboardbyotherapplications.Iftheclipboardhasalready
beenlockedbyanotherapplication,theroutinereturnsClipboardLocked.Ifthesameapplicationhasalreadylockedtheclipboard,thelocklevelisincreased.
Usage
AnapplicationusesXmClipboardLock()toensurethatclipboarddataisnotchangedbycallstoclipboardfunctionsbyotherapplications.Anapplicationdoes
notneedtolocktheclipboardbetweencallstoXmClipboardStartRetrieve()andXmClipboardEndRetrieve(),becausetheclipboardis
lockedautomaticallybetweenthesecalls.XmClipboardUnlock()allowsotherapplicationstoaccesstheclipboardagain.
SeeAlso
XmClipboardEndCopy(1),XmClipboardEndRetrieve(1),XmClipboardStartCopy(1),XmClipboardStartRetrieve
(1),XmClipboardUnlock(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page40

XmClipboardRegisterFormat
XmClipboard
Name
XmClipboardRegisterFormatregisteranewformatforclipboarddataitems.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardRegisterFormat(display,format_name,format_length)
Display*display
char*format_name
intformat_length

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfrom
XOpenDisplay()orXtDisplay().

format_name Specifiesthestringnamefortheformat.
format_length

Specifiesthelengthoftheformatinbits(0,8,16,or32).

Returns
ClipboardSuccessonsuccess,ClipboardBadFormatiftheformatisnotproperlyspecified,ClipboardLockediftheclipboardislockedby
anotherapplication,orClipboardFailonfailure.
Description
XmClipboardRegisterFormat()registersanewformatwiththespecifiedformat_nameandformat_length.
XmClipboardRegisterFormat()returnsClipboardFailiftheformatisalreadyregisteredwiththespecifiedlengthorClipboardBadFormat
ifformat_nameisNULLorformat_lengthisnot0,8,16,or32bits.
Usage
XmClipboardRegisterFormat()isusedbyapplicationsthatsupportcuttingandpastingofarbitrarydatatypes.Everyformatthatisstoredonthe
clipboardneedstohavealengthassociatedwithit,sothatclipboardoperationsbetweenapplicationsthatrunonplatformswithdifferentbyteswappingorders
functionproperly.FormattypesthataredefinedbytheICCCMarepreregistered.Ifformat_lengthis0,XmClipboardRegisterFormat()
searchesthroughthepreregisteredformattypes,andreturnsClipboardSuccessifformat_nameisfound,ClipboardFailotherwise.
Ifyouareregisteringyourowndatastructureasaformat,youshouldchooseanappropriatename,anduse32astheformatsize.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page41

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmClipboardStartCopy(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page42

XmClipboardRetrieve
XmClipboard
Name
XmClipboardRetrieveretrieveadataitemfromtheclipboard.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardRetrieve(display,window,format_name,buffer,length,
num_bytes,private_id)
Display*display
Windowwindow
char*format_name
XtPointerbuffer
unsignedlonglength
unsignedlong*num_bytes
long*private_id

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfrom
XOpenDisplay()orXtDisplay().

window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

format_name

Specifiestheformatnameforthedata.

buffer

Specifiesthebuffertowhichtheclipboarddataiscopied.

length

Specifiesthelengthofbuffer.

Outputs
num_bytes

Returnsthenumberofbytesofdatacopiedintobuffer.

private_id

Returnstheprivatedatathatwasstoredwiththedataitem.

Returns
ClipboardSuccessonsuccess,ClipboardLockediftheclipboardislockedbyanotherapplication,ClipboardTruncateifbufferisnotlong
enoughtoholdthereturneddata,orClipboardNoDataifthereisnodataontheclipboardfortherequestedformat.
Description
XmClipboardRetrieve()fetchesthecurrentdataitemfromtheclipboardandcopiesittothespecifiedbuffer.Theformat_namespecifiesthetype
ofdatabeingretrieved.Thenum_bytesparameterreturnstheamountofdatathatiscopiedintobuffer.TheroutinereturnsClipboardTruncatewhen
allofthedatadoesnotfitinthebuffer,toindicatethatmoredataremainstobecopied.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page43

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
XmClipboardRetrieve()canbeusedtoretrievedatainonelargepieceorinmultiplesmallerpieces.Toretrievedatainonechunk,call
XmClipboardInquireLength()todeterminethesizeofthedataontheclipboard.MultiplecallstoXmClipboardRetrieve()withthesame
format_name,betweencallstoXmClipboardStartRetrieve()andXmClipboardEndRetrieve(),copydataincrementally.Sincethe
clipboardislockedbyacalltoXmClipboardStartRetrieve(),itissuggestedthatyourapplicationcallanyclipboardinquiryroutinesbetweenthiscall
andthefirstcalltoClipboardRetrieve().
Example
Thefollowingcodefragmentshowsthesequenceofcallsneededtoperformanincrementalretrieve.Notethatthiscodedoesnotstorethedataasitisretrieved:
intstatus
unsignedlongreceived
charbuffer[32]
Display*dpy=XtDisplayOfObject(widget)
Windowwindow=XtWindowOfObject(widget)

do
status=XmClipboardStartRetrieve(dpy,window,CurrentTime)
while(status==ClipboardLocked)

do{
/*retrievedatafromclipboard*/
status=XmClipboardRetrieve(dpy,window,
"STRING",(XtPointer)buffer,
(unsignedlong)sizeof(buffer),
&received,(long*)0)
}while(status==ClipboardTruncate)

status=XmClipboardEndRetrieve(dpy,window)

SeeAlso
XmClipboardEndRetrieve(1),XmClipboardInquireLength(1),XmClipboardLock(1),
XmClipboardStartRetrieve(1),XmClipboardUnlock(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page44

XmClipboardStartCopy
XmClipboard
Name
XmClipboardStartCopysetupstorageforaclipboardcopyoperation.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardStartCopy(display,window,clip_label,timestamp,
widget,callback,item_id)
Display*display
Windowwindow
XmStringclip_label
Timetimestamp
Widgetwidget
XmCutPasteProccallback
long*item_id

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfrom
XOpenDisplay()orXtDisplay().

window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

clip_label

Specifiesalabelthatisassociatedwiththedataitem.

timestamp

Specifiesthetimeoftheeventthattriggeredthecopyoperation.

widget

Specifiesthewidgetthatreceivesmessagesrequestingdatathathas
beenpassedbyname.

callback

Specifiesthecallbackfunctionthatiscalledwhentheclipboardneeds
datathathasbeenpassedbyname.

Outputs
Item_id

ReturnstheIDassignedtothedataitem.

Returns
ClipboardSuccessonsuccessorClipboardLockediftheclipboardislockedbyanotherapplication.
Description
XmClipboardStartCopy()createsthestorageanddatastructuresthatreceiveclipboarddata.Duringacutorcopyoperation,anapplicationcallsthis
functiontoinitiatetheoperation.Thedatathatiscopiedtothestructuresbecomesthenextclipboarddataitem.
SeveralargumentstoXmClipboardStartCopy()provideidentifyinginformation.Thewindowargumentspecifiesthewindowthatidentifiestheapplication
tothe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page45

clipboardanapplicationshouldpassthesamewindowIDtoeachclipboardroutinethatitcalls.clip_labelassignsatextstringtothedataitemthatcouldbe
usedasthelabelforaclipboardviewingwindow.Thetimestamppassedtotheroutinemustbeavalidtimestamp.Theitem_idargumentreturnsanumber
thatidentifiesthedataitem.Anapplicationusesthisnumbertospecifythedataiteminotherclipboardcalls.
Usage
Sincecopyingalargepieceofdatatotheclipboardcantakealongtimeanditispossiblethatthedatawillneverberequestedbyanotherapplication,theclipboard
copyroutinesprovideamechanismtocopydatabyname.Whenaclipboarddataitemispassedbyname,theapplicationdoesnotneedtocopythedatatothe
clipboarduntilithasbeenrequestedbyanotherapplication.Inordertopassdatabyname,thewidgetandcallbackargumentsto
XmClipboardStartCopy()mustbespecified.widgetspecifiestheIDofthewidgetthatreceivesmessagesrequestingthatdatabepassedbyname.Allof
themessagehandlingisdonebytheclipboardoperations,soanyvalidwidgetIDcanbeused.callbackspecifiestheprocedurethatisinvokedwhenthe
clipboardneedsthedatathatwaspassedbynameandwhenthedataitemisremovedfromtheclipboard.Thecallbackfunctioncopiestheactualdatatothe
clipboardusingXmClipboardCopyByName().
Example
Thefollowingroutinesshowthesequenceofcallsneededtocopydatabyname.Theto_clipbdcallbackshowsthecopyingofdataandcopy_by_name
showsthecallbackthatactuallycopiesthedata:
voidcopy_by_name(widget,data_id,private_id,reason)
Widgetwidget
long*data_id,*private_id
int*reason
{
Display*dpy=XtDisplay(toplevel)
Windowwindow=XtWindow(toplevel)
intstatus
charbuffer[32]

if(*reason==XmCR_CLIPBOARD_DATA_REQUEST){
(void)sprintf(buffer,"stuff")

do
status=XmClipboardCopyByName(dpy,window,
*data_id,(XtPointer)buffer,
(unsignedlong)strlen(buffer)+1,*private_id)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page46
while(status!=ClipboardSuccess)
}
}

voidto_clipbd(widget,client_data,call_data)
Widgetwidget
XtPointerclient_data
XtPointercall_data
{
unsignedlongitem_id=0
intstatus
XmStringclip_label
Display*dpy=XtDisplayOfObject(widget)
Windowwindow=XtWindowOfObject(widget)
unsignedlongsize=DATA_SIZE
char*data=(char*)client_data

clip_label=XmStringCreateLocalized("Data")

/*startacopyretryuntilunlocked*/
do
status=XmClipboardStartCopy(dpy,window,
clip_label,CurrentTime,widget,copy_by_name,&item_id)
while(status==ClipboardLocked)

XmStringFree(clip_label)

/*copythedataretryuntilunlocked*/
do
status=XmClipboardCopy(dpy,window,item_id,"STRING",
NULL,size,0,NULL)
while(status==ClipboardLocked)

/*endthecopyretryuntilunlocked*/
do
status=XmClipboardEndCopy(dpy,window,item_id)
while(status==ClipboardLocked)
}

Procedures
TheXmCutPasteProchasthefollowingformat:
typedefvoid(*XmCutPasteProc)(Widget,long*,long*,int*)
Widgetwidget
long*data_id
long*private_id
int*reason

AnXmCutPasteProctakesfourarguments.Thefirstargument,widget,isthewidgetpassedtothecallbackroutine,whichisthesamewidgetaspassedto

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page47

XmClipboardBeginCopy().Thedata_idargumentistheIDofthedataitemthatisreturnedbyXmClipboardCopy()andprivate_idisthe
privatedatapassedtoXmClipboardCopy().ThereasonargumenttakesthevalueXmCR_CLIPBOARD_DATA_REQUEST,whichindicatesthatthe
datamustbecopiedtotheclipboard,orXmCR_CLIPBOARD_DATA_DELETE,whichindicatesthattheclientcandeletethedatafromtheclipboard.Although
thelastthreeparametersarepointerstointegers,thevaluesarereadonlyandchangingthemhasnoeffect.
SeeAlso
XmClipboardBeginCopy(1),XmClipboardCancelCopy(1),XmClipboardCopy(1),XmClipboardCopyByName(1),
XmClipboardEndCopy(1),XmClipboardLock(1),XmClipboardRegisterFormat(1),XmClipboardUndoCopy(1),
XmClipboardUnlock(1),XmClipboardWithdrawFormat(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page48

XmClipboardStartRetrieve
XmClipboard
Name
XmClipboardStartRetrievestartaclipboardretrievaloperation.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardStartRetrieve(display,window,timestamp)
Display*display
Windowwindow
Timetimestamp

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

timestamp

Specifiesthetimestampoftheeventthattriggeredtheretrieval
operation.

Returns
ClipboardSuccessonsuccessorClipboardLockediftheclipboardislockedbyanotherapplication.
Description
XmClipboardStartRetrieve()startsaclipboardretrievaloperationbytellingtheclipboardthatanapplicationisreadytostartcopyingdatafromthe
clipboard.XmClipboardStartRetrieve()lockstheclipboarduntilXmClipboardEndRetrieve()iscalled.Thewindowargumentspecifies
thewindowthatidentifiestheapplicationtotheclipboardanapplicationshouldpassthesamewindowIDtoeachclipboardroutinethatitcalls.Thetimestamp
passedtotheroutinemustbeavalidtimestamp.
Usage
MultiplecallstoXmClipboardRetrieve()withthesameformat_name,betweencallstoXmClipboardStartRetrieve()and
XmClipboardEndRetrieve(),copydataincrementally.
Example
Thefollowingcodefragmentshowsthesequenceofcallsneededtoperformanincrementalretrieve.Notethatthiscodedoesnotstorethedataasitisretrieved:

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page49
intstatus
unsignedlongreceived
charbuffer[32]
Display*dpy=XtDisplayOfObject(widget)
Windowwindow=XtWindowOfObject(widget)

do
status=XmClipboardStartRetrieve(dpy,window,CurrentTime)
while(status==ClipboardLocked)

do{
/*retrievedatafromclipboard*/
status=XmClipboardRetrieve(dpy,window,"STRING",(XtPointer)buffer,
(unsignedlong)sizeof(buffer),&received,(long*)0)
}while(status==ClipboardTruncate)

status=XmClipboardEndRetrieve(dpy,window)

SeeAlso
XmClipboardEndRetrieve(1),XmClipboardInquireCount(1),XmClipboardInquireFormat(1),
XmClipboardInquireLength(1),XmClipboardInquirePendingItems(1),XmClipboardLock(1),
XmClipboardRetrieve(1),XmClipboardUnlock(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page50

XmClipboardUndoCopy
XmClipboard
Name
XmClipboardUndoCopyremovethelastitemcopiedtotheclipboard.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardUndoCopy(display,window)
Display*display
Windowwindow

Inputs
display SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().
window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

Returns
ClipboardSuccessonsuccessorClipboardLockediftheclipboardislockedbyanotherapplication.
Description
XmClipboardUndoCopy()deletestheitemmostrecentlyplacedontheclipboard,providedthattheapplicationthatoriginallyplacedtheitemhasmatching
valuesfordisplayandwindow.Ifthevaluesdonotmatch,noactionistaken.Theroutinealsorestoresanydataitemthatwasdeletedfromtheclipboardbythe
calltoXmClipboardCopy().
Usage
Motifmaintainsatwodeepstackofitemsthathavebeenplacedontheclipboard.Onceanitemhasbeencopiedtotheclipboard,thecopycanbeundonebycalling
XmClipboardUndoCopy().Callingthisroutinetwiceundoesthelastundooperation.
SeeAlso
XmClipboardBeginCopy(1),XmClipboardCopy(1),XmClipboardCopyByName(1),XmClipboardEndCopy(1),
XmClipboardStartCopy(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page51

XmClipboardUnlock
XmClipboard
Name
XmClipboardUnlockunlocktheclipboard.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardUnlock(display,window,remove_all_locks)
Display*display
Windowwindow
Booleanremove_all_locks

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

remove_all_locks

Specifieswhethernestedlocksshouldberemoved.

Returns
ClipboardSuccessonsuccessorClipboardFailiftheclipboardisnotlockedorifitislockedbyanotherapplication.
Description
XmClipboardUnlock()unlockstheclipboard,whichallowsotherapplicationstoaccessit.Ifremove_all_locksisTrue,allnestedlocksare
removed.IfitisFalse,onlyoneleveloflockisremoved.
Usage
MultiplecallstoXmClipboardLock()canincreasethelocklevel,andnormally,eachXmClipboardLock()callrequiresacorrespondingcallto
XmClipboardUnlock().However,bysettingremove_all_lockstoTrue,nestedlockscanberemovedwithasinglecall.
SeeAlso
XmClipboardBeginCopy(1),XmClipboardCancelCopy(1),XmClipboardEndCopy(1),XmClipboardEndRetrieve
(1),XmClipboardLock(1),XmClipboardStartCopy(1),XmClipboardStartRetrieve(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page52

XmClipboardWithdrawFormat
XmClipboard
Name
XmClipboardWithdrawFormatindicatethatanapplicationdoesnotwanttosupplyadataitemanylonger.
Synopsis
#include<Xm/CutPaste.h>
intXmClipboardWithdrawFormat(display,window,data_id)
Display*display
Windowwindow
longdata_id

Inputs
display SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().
window

SpecifiesawindowIDthatidentifiestheclienttotheclipboard.

data_id SpecifiestheIDforthepassedbynamedataitem.

Returns
ClipboardSuccessonsuccessorClipboardLockediftheclipboardislockedbyanotherapplication.
Description
XmClipboardWithdrawFormat()withdrawsadataitemthathasbeenpassedbynamefromtheclipboard.Thedata_idistheIDthatwasassignedto
theitemwhenitwaspassedbyXmClipboardCopy().
Usage
Despiteitsname,XmClipboardWithdrawFormat()doesnotremoveaformatspecificationfromtheclipboard.Theroutineprovidesanapplicationwitha
waytowithdrawdataofaparticularformatfromtheclipboard.
SeeAlso
XmClipboardBeginCopy(1),XmClipboardCopy(1),XmClipboardCopyByName(1),XmClipboardStartCopy(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page53

XmComboBoxAddItem
XmComboBox
Name
XmComboBoxAddItemaddacompoundstringtotheComboBoxlist.
Synopsis
#include<Xm/ComboBox.h>
voidXmComboBoxAddItem(widget,item,position,unique)
Widgetwidget
XmStringitem
intposition
Booleanunique

Inputs
widget

SpecifiestheComboBoxwidget.

item

SpecifiesthecompoundstringthatisaddedtotheComboBoxlist.

position

Specifiesthepositionatwhichtoaddthenewitem.

unique

Specifieswhethertheitemmustbeuniqueinthelist.

Availability
Motif2.1andlater.
Description
XmComboBoxAddItem()isaconvenienceroutinethataddsanitemintoaComboBoxlist.XmComboBoxAddItem()insertsthespecifieditemintothe
listcomponentoftheComboBoxwidgetatthespecifiedposition.Apositionvalueof1indicatesthefirstlocationinthelist,apositionvalueof2
indicatesthesecondlocation,andsoforth.Avalueof0(zero)specifiesthelastlocationinthelist.Ifthevalueexceedsthecurrentnumberofitemsinthelist,theitem
issilentlyappended.Ifuniqueistrue,theitemisonlyaddedifitdoesnotalreadyappearinthelist.
Usage
Inordertousethisroutine,acompoundstringmustbecreatedfortheitem.TheroutinecallsXmListAddItemUnselected()toinserttheitemintothelist
component.TheComboBoxlisttakesacopyofthesupplieditem.ItistheresponsibilityoftheprogrammertoreclaimthespacebycallingXmStringFree()
atanappropriatepoint.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page54

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmComboBoxSelectItem(1),XmComboBoxSetItem(1),XmComboBoxDeletePos(1),XmComboBoxUpdate(1),
XmComboBox(2),XmStringFree(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page55

XmComboBoxDeletePos
XmComboBox
Name
XmComboBoxDeletePosdeleteanitematthespecifiedpositionfromaComboBoxlist.
Synopsis
#include<Xm/ComboBox.h>
voidXmComboBoxDeletePos(widget,position)
Widgetwidget
intposition

Inputs
widget

SpecifiestheComboBoxwidget.

position

Specifiesthepositionfromwhichtodeleteanitem.

Availability
Motif2.1andlater.
Description
XmComboBoxDeletePos()removestheitematthespecifiedpositionfromtheComboBoxlist.Thefirstlocationwithinthelistisatposition1,thesecond
listitemisatposition2,andsoforth.Apositionvalueof0(zero)specifiesthelastlocationinthelist.IftheComboBoxlistdoesnothaveanitematthespecified
position,awarningmessageisdisplayed.
Usage
XmComboBoxDeletePos()isaconvenienceroutinethatallowsyoutoremoveanitemfromaComboBoxlist.TheroutinecallsXmListDeletePos()
onthelistcomponentoftheComboBox.
SeeAlso
XmComboBoxAddItem(1),XmComboBoxSelectItem(1),XmComboBoxSetItem(1),XmComboBoxUpdate(1),
XmComboBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page56

XmComboBoxSelectItem
XmComboBox
Name
XmComboBoxSelectItemselectanitemfromaComboBoxlist.
Synopsis
#include<Xm/ComboBox.h>
voidXmComboBoxSelectItem(widget,item)
Widgetwidget
XmStringitem

Inputs
widget

SpecifiestheComboBoxwidget.

item

Specifiestheitemthatistobeselected.

Availability
Motif2.1andlater.
Description
XmComboBoxSelectItem()selectsthefirstoccurrenceofthespecifieditemintheComboBoxlist.Iftheitemisfoundwithinthelist,thevalueisalso
insertedintotheComboBoxtextfield.Otherwise,awarningmessageisdisplayed.
Usage
XmComboBoxSelectItem()isaconvenienceroutinethatallowsyoutoselectanitemintheComboBoxlist.Inordertousethisroutine,acompoundstring
mustbecreatedfortheitem.NoComboBoxselectioncallbacksareinvokedasaresultofcallingthisprocedure.TheroutineinternallycallsXmListSelectPos
()onthelistcomponentoftheComboBox,afterperformingalinearsearchthroughtheXmNitemsofthelisttheitemparameterisusedonlyforthesearchand
isnotdirectlyusedasthenewlyselecteditem.Itistheresponsibilityoftheprogrammertoreclaimanyallocatedmemoryforthecompoundstringitembycalling
XmStringFree()atanappropriatetime.
SeeAlso
XmComboBoxAddItem(1),XmComboBoxDeletePos(1),XmComboBoxSetItem(1),XmComboBoxUpdate(1),XmComboBox
(2),XmStringFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page57

XmComboBoxSetItem
XmComboBox
Name
XmComboBoxSetItemselectandmakevisibleanitemfromaComboBoxlist.
Synopsis
#include<Xm/ComboBox.h>
voidXmComboBoxSetItem(widget,item)
Widgetwidget
XmStringitem

Inputs
widget

SpecifiestheComboBoxwidget.

item

Specifiestheitemthatistobeselected.

Availability
Motif2.1andlater.
Description
XmComboBoxSetItem()selectsthefirstoccurrenceofthespecifieditemintheComboBoxlist,andmakestheselectionthefirstvisibleiteminthelist.Ifthe
itemisfoundwithinthelist,thevalueisalsoinsertedintotheComboBoxtextfield.Otherwise,awarningmessageisdisplayed.
Usage
XmComboBoxSetItem()isaconvenienceroutinethatallowsyoutoselectanitemintheComboBox.Inordertousethisroutine,acompoundstringmustbe
createdfortheitem.NoComboBoxselectioncallbacksareinvokedasaresultofcallingthisprocedure.TheroutineinternallycallsXmListSelectPos()on
thelistcomponentoftheComboBox,afterperformingalinearsearchthroughtheXmNitemsofthelisttheitemparameterisusedonlyforthesearchandisnot
directlyusedasthenewlyselecteditem.Itistheresponsibilityoftheprogrammertoreclaimanyallocatedmemoryforthecompoundstringitembycalling
XmStringFree()atanappropriatetime.
SeeAlso
XmComboBoxAddItem(1),XmComboBoxDeletePos(1),XmComboBoxSelectItem(1),XmComboBoxUpdate(1),
XmComboBox(2),XmStringFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page58

XmComboBoxUpdate
XmComboBox
Name
XmComboBoxUpdateupdatetheComboBoxlistafterchangestocomponentwidgets.
Synopsis
#include<Xm/ComboBox.h>
voidXmComboBoxUpdate(widget)
Widgetwidget

Inputs
widget

SpecifiestheComboBoxwidget.

Availability
Motif2.0andlater.
Description
XmComboBoxUpdate()updatestheComboBoxtoreflectthestateofcomponentchildwidgets.Thismayberequiredwhentheprogrammerhasdirectly
modifiedthecontentsorresourcesoftheComboBoxlistcomponent,insteadofusingtheresourcesandfunctionsoftheComboBoxitself.
Usage
XmComboBoxUpdate()isaconvenienceroutinethatsynchronizestheinternalstateoftheComboBoxwiththatofthecomponentlistandtextfield.Inparticular,
thevalueofXmNselectedPositionisresettothevaluetakenfromtheinternallist.Inaddition,ifthetextfieldisunchanged,theXmNitemsand
XmNitemCountresourcesofthelistarequeriedandusedinconjunctionwiththerecalculatedXmNselectedPositiontoresettheComboBoxselected
item.
Thisroutineshouldbecalled,forexample,whenthecomponentlistisdirectlymanipulatedtochangetheselecteditem,withoutnotifyingtheComboBoxdirectly.
SeeAlso
XmComboBoxAddItem(1),XmComboBoxSelectItem(1),XmComboBoxSetItem(1),XmComboBoxDeletePos(1),
XmComboBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page59

XmCommandAppendValue
XmCommand
Name
XmCommandAppendValueappendacompoundstringtothecommand.
Synopsis
#include<Xm/Command.h>
voidXmCommandAppendValue(widget,command)
Widgetwidget
XmStringcommand

Inputs
widget

SpecifiestheCommandwidget.

command

Specifiesthestringthatisappended.

Description
XmCommandAppendValue()appendsthespecifiedcommandtotheendofthestringthatisdisplayedonthecommandlineofthespecifiedCommand
widget.
Usage
XmCommandAppendValue()isaconvenienceroutinethatchangesthevalueoftheXmNcommandresourceoftheCommandwidget.Inordertousethis
routine,acompoundstringmustbecreatedforthecommand.Thewidgetinternallycopiescommand,anditistheresponsibilityoftheprogrammertoreclaimany
allocatedmemoryforthecompoundstringatanappropriatetime.
SeeAlso
XmCommandSetValue(1),XmCommand(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page60

XmCommandError
XmCommand
Name
XmCommandErrordisplayanerrormessageinaCommandwidget.
Synopsis
#include<Xm/Command.h>
voidXmCommandError(widget,error)
Widgetwidget
XmStringerror

Inputs
widget

SpecifiestheCommandwidget.

error

Specifiestheerrormessagetobedisplayed.

Description
XmCommandError()displaysanerrormessageinthehistoryregionofthespecifiedCommandwidget.Theerrorstringremainsdisplayeduntilthenext
commandtakeseffect.
Usage
XmCommandError()displaystheerrormessageasoneoftheitemsintheXmNhistoryItemslist.Whenthenextcommandisentered,theerrormessageis
deletedfromthelist.Inordertousethisroutine,acompoundstringmustbecreatedfortheerroritem.Thewidgetinternallycopieserror,anditistheresponsibility
oftheprogrammertoreclaimanyallocatedmemoryforthecompoundstringatanappropriatetime.
SeeAlso
XmCommand(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page61

XmCommandGetChild
XmCommand
Name
XmCommandGetChildgetthespecifiedchildofaCommandwidget.
Synopsis
#include<Xm/Command.h>
WidgetXmCommandGetChild(widget,child)
Widgetwidget
unsignedcharchild

Inputs
widget

SpecifiestheCommandwidget.

child

SpecifiesatypeofchildoftheCommandwidget.

Returns
ThewidgetIDofthespecifiedchildoftheCommandwidget.
Description
XmCommandGetChild()returnsthewidgetIDofthespecifiedchildoftheCommandwidget.
Usage
ThechildXmDIALOG_COMMAND_TEXTspecifiesthecommandtextentryarea,XmDIALOG_PROMPT_LABELspecifiesthepromptlabelforthe
commandline,XmDIALOG_HISTORY_LISTspecifiesthecommandhistorylist,andXmDIALOG_WORK_AREAspecifiesanyworkareachildthathasbeen
addedtotheCommandwidget.FormoreinformationonthedifferentchildrenoftheCommandwidget,seethemanualpageinSection2,MotifandXtWidget
Classes.
Structures
Thepossiblevaluesforchildare:
XmDIALOG_COMMAND_TEXT

XmDIALOG_HISTORY_LIST

XmDIALOG_PROMPT_LABEL

XmDIALOG_WORK_AREA

SeeAlso
XmCommand(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page62

XmCommandSetValue
XmCommand
Name
XmCommandSetValuereplacethecommandstring.
Synopsis
#include<Xm/Command.h>
voidXmCommandSetValue(widget,command)
Widgetwidget
XmStringcommand

Inputs
widget

SpecifiestheCommandwidget.

command

Specifiesthestringthatisdisplayed.

Description
XmCommandSetValue()replacesthecurrentlydisplayedcommandlinetextofthespecifiedCommandwidgetwiththestringspecifiedbycommand.
Specifyingazerolengthstringclearsthecommandline.
Usage
XmCommandSetValue()isaconvenienceroutinethatchangesthevalueoftheXmNcommandresourceoftheCommandwidget.Inordertousethisroutine,
acompoundstringmustbecreatedforthecommand.Thewidgetinternallycopiescommand,anditistheresponsibilityoftheprogrammertoreclaimanyallocated
memoryforthecompoundstringatanappropriatetime.
SeeAlso
XmCommandAppendValue(1),XmCommand(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page63

XmContainerCopy
XmContainer
Name
XmContainerCopycopytheContainerprimaryselectionontotheclipboard.
Synopsis
#include<Xm/Container.h>
BooleanXmContainerCopy(container,timestamp)
Widgetcontainer
Timetimestamp

Inputs
container

SpecifiesaContainerwidget.

timestamp

Specifiesatimestampatwhichtomodifytheselection.

Returns
TrueiftheContainerselectionistransferabletotheclipboard,Falseotherwise.
Availability
Motif2.0andlater.
Description
XmContainerCopy()copiestheprimaryselectionfromaContainerwidgettotheclipboard.TheprimaryselectionofaContainerwidgetconsistsofasetof
selectedContaineritems.IftherearenoselectedContaineritemswithincontainer,orifthecontainerwidgetdoesnotowntheprimaryselection,orif
containercannotgainownershipoftheclipboardselection,thefunctionreturnsFalse.
Usage
XmContainerCopy()isaconvenienceroutinethatcopiesaContainerprimaryselectiontotheclipboard.Theproceduresidentifiedbythe
XmNconvertCallbacklistoftheContainerarecalledtotransfertheselection:theselectionmemberoftheXmConvertCallbackStructpassed
tocallbackshasthevalueCLIPBOARD,andtheparmmemberissettoXmCOPY.SeeXmTransfer(1)forspecificdetailsofthe
XmConvertCallbackStruct,andoftheUniformTransferModel(UTM)ingeneral.
SeeAlso
XmContainerCut(1),XmContainerCopyLink(1),XmContainerGetItemChildren(1),XmContainerPaste(1),
XmContainerPasteLink(1),XmContainerRelayout(1),XmContainerReorder(1),XmTransfer(1),XmContainer
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page64

XmContainerCopyLink
XmContainer
Name
XmContainerCopyLinkcopylinkstotheContainerprimaryselectionontotheclipboard.
Synopsis
#include<Xm/Container.h>
BooleanXmContainerCopyLink(container,timestamp)
Widgetcontainer
Timetimestamp

Inputs
container

SpecifiesaContainerwidget.

timestamp

Specifiesatimestampatwhichtomodifytheselection.

Returns
TrueiftheContainerselectionistransferabletotheclipboard,Falseotherwise.
Availability
Motif2.0andlater.
Description
XmContainerCopyLink()copieslinkstotheprimaryselectionofaContainerwidgetontotheclipboard.TheprimaryselectionofaContainerwidgetconsists
ofasetofselectedContaineritems.IftherearenoselectedContaineritemswithincontainer,orifthecontainerwidgetdoesnotowntheprimaryselection,
orifcontainercannotgainownershipoftheclipboardselection,thefunctionreturnsFalse.
Usage
XmContainerCopyLink()isaconvenienceroutinethatcopieslinkstoaContainerprimaryselectiontotheclipboard.Theproceduresidentifiedbythe
XmNconvertCallbacklistoftheContainerarecalled,possiblymanytimes:theselectionmemberoftheXmConvertCallbackStructpassedto
callbackshasthevalueCLIPBOARD,andtheparmmemberisXmLINK.SeeXmTransfer(1)fordetailsoftheXmConvertCallbackStruct,andofthe
UniformTransferModel(UTM)ingeneral.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page65

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmContainerCut(1),XmContainerCopy(1),XmContainerGetItemChildren(1),XmContainerPaste(1),
XmContainerPasteLink(1),XmContainerRelayout(1),XmContainerReorder(1),XmTransfer(1),XmContainer
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page66

XmContainerCut
XmContainer
Name
XmContainerCutcutstheContainerprimaryselectionontotheclipboard.
Synopsis
#include<Xm/Container.h>
BooleanXmContainerCut(container,timestamp)
Widgetcontainer
Timetimestamp

Inputs
container

SpecifiesaContainerwidget.

timestamp

Specifiesatimestampatwhichtomodifytheselection.

Returns
TrueiftheContainerselectionistransferabletotheclipboard,Falseotherwise.
Availability
Motif2.0andlater.
Description
XmContainerCut()cutstheprimaryselectionfromaContainerwidgetontotheclipboard.TheprimaryselectionofaContainerwidgetconsistsofasetof
selectedContaineritems.IftherearenoselectedContaineritemswithincontainer,orifthecontainerwidgetdoesnotowntheprimaryselection,orif
containercannotgainownershipoftheclipboardselection,thefunctionreturnsFalse.
Usage
XmContainerCut()isaconvenienceroutinethatmovesaContainerprimaryselectionontotheclipboard,thenremovestheprimaryselection.Theprocedures
identifiedbytheXmNconvertCallbacklistoftheContainerareinvokedtomovetheselectiontotheclipboard:theselectionmemberofthe
XmConvertCallbackStructpassedtocallbackshasthevalueCLIPBOARD,andtheparmmemberissettoXmMOVE.Thereafter,ifthedatawas
transferred,theconvertcallbacksareinvokedagaintodeletetheprimaryselection:theselectionmemberissettoCLIPBOARD,andthetargetmemberis
settoDELETE.SeeXmTransfer(1)fordetailsoftheXmConvertCallbackStruct,andoftheUniformTransferModel(UTM)ingeneral.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page67

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmContainerCopy(1),XmContainerCopyLink(1),XmContainerGetItemChildren(1),XmContainerPaste(1),
XmContainerPasteLink(1),XmContainerRelayout(1),XmContainerReorder(1),XmTransfer(1),XmContainer
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page68

XmContainerGetItemChildren
XmContainer
Name
XmContainerGetItemChildrenfindthechildrenofaContaineritem.
Synopsis
#include<Xm/Container.h>
intXmContainerGetItemChildren(container,item,item_children)
Widgetcontainer
Widgetitem
WidgetList*item_children

Inputs
container

SpecifiesaContainerwidget.

item

AchildoftheContainerwhichholdstheXmQTcontainerItem
trait.

Outputs
item_children

Thelistoflogicalchildrenassociatedwiththeitem.

Returns
Thenumberoflogicalchildrenwithintheitem_childrenlist.
Availability
Motif2.0andlater.
Description
XmContainerGetItemChildren()constructsalistofContaineritemsthathaveitemasalogicalparent.itemmustholdthe
XmQTcontainerItemtrait:anIconGadgetchildofcontainer,forexample.Awidgetisalogicalchildofitemifthevalueofitsconstraintresource
XmNentryParentisequaltoitem.containeristheContainerwidgetthathasitemasachild,andthelistoflogicalchildrenofitemisplacedin
item_children.Thefunctionreturnsthenumberoflogicalchildrenfound.
Usage
XmContainerGetItemChildren()isaconvenienceroutinethatallocatesaWidgetListtocontainthesetofallContainerchildrenwhose
XmNentryParentresourcematchesthatofadesignateditem.IfitemisNULL,orifitemisnotachildofcontainer,orifitemhasnological
children,theitem_childrenparameterisnotsetandthefunctionreturns0.StorageforthereturnedWidgetListisallocatedbythe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page69

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

function,anditistheresponsibilityoftheprogrammertofreethememoryusingXtFree()atanappropriatepoint.
SeeAlso
XmContainerCut(1),XmContainerCopy(1),XmContainerCopyLink(1),XmContainerPaste(1),
XmContainerPasteLink(1),XmContainerRelayout(1),XmContainerReorder(1),XmContainer(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page70

XmContainerPaste
XmContainer
Name
XmContainerPastepastestheclipboardselectionintoaContainer.
Synopsis
#include<Xm/Container.h>
BooleanXmContainerPaste(container)
Widgetcontainer

Inputs
container

SpecifiesaContainerwidget.

Returns
TrueiftheclipboardselectionistransferabletotheContainer,Falseotherwise.
Availability
Motif2.0andlater.
Description
XmContainerPaste()initiatesdatatransferoftheclipboardprimaryselectiontothecontainerwidget.Ifdataistransferredfromtheclipboard,the
functionreturnsTrue,otherwiseFalse.
Usage
XmContainerPaste()isaconvenienceroutinethatinitiatescopyingoftheclipboardprimaryselectiontoaContainerwidget.Theproceduresidentifiedbythe
XmNdestinationCallbacklistoftheContainerarecalled:theselectionmemberoftheXmDestinationCallbackStructpassedto
callbackshasthevalueCLIPBOARD,andtheoperationmemberissettoXmCOPY.XmContainerPaste()doesnottransferdataitselfitisthe
responsibilityoftheprogrammertosupplyadestinationcallbackwhichwillcopytheclipboardselectionintotheContainer.SeeXmTransfer(1)forspecificdetailsof
theXmDestinationCallbackStruct,andoftheUniformTransferModel(UTM)ingeneral.
SeeAlso
XmContainerCut(1),XmContainerCopy(1),XmContainerCopyLink(1),XmContainerGetItemChildren(1),
XmContainerPasteLink(1),XmContainerRelayout(1),XmContainerReorder(1),XmTransfer(1),XmContainer
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page71

XmContainerPasteLink
XmContainer
Name
XmContainerPasteLinkcopieslinksfromtheclipboardselectionintoaContainer.
Synopsis
#include<Xm/Container.h>
BooleanXmContainerPasteLink(container)
Widgetcontainer

Inputs
container

SpecifiesaContainerwidget.

Returns
TrueiftheclipboardselectionistransferabletotheContainer,Falseotherwise.
Availability
Motif2.0andlater.
Description
XmContainerPasteLink()initiatesdatatransferoftheclipboardprimaryselectiontothecontainerwidget.Ifdataistransferredfromtheclipboard,the
functionreturnsTrue,otherwiseFalse.
Usage
XmContainerPasteLink()isaconvenienceroutinethatinitiatescopyinglinksfromtheclipboardprimaryselectionintoaContainerwidget.Theprocedures
identifiedbytheXmNdestinationCallbacklistoftheContainerarecalled:theselectionmemberoftheXmDestinationCallbackStruct
passedtocallbackshasthevalueCLIPBOARD,andtheoperationmemberissettoXmLINK.XmContainerPasteLink()doesnottransferdata
itselfitistheresponsibilityoftheprogrammertosupplyadestinationcallbackwhichwilllinktheclipboardselectionintotheContainer.SeeXmTransfer(1)for
specificdetailsoftheXmConvertCallbackStruct,andoftheUniformTransferModel(UTM)ingeneral.
SeeAlso
XmContainerCut(1),XmContainerCopy(1),XmContainerCopyLink(1),XmContainerGetItemChildren(1),
XmContainerPaste(1),XmContainerRelayout(1),XmContainerReorder(1),XmTransfer(1),XmContainer(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page72

XmContainerRelayout
XmContainer
Name
XmContainerRelayoutforcerelayoutofaContainerwidget.
Synopsis
#include<Xm/Container.h>
voidXmContainerRelayout(container)
Widgetcontainer

Inputs
container

SpecifiesaContainerwidget.

Availability
Motif2.0andlater.
Description
XmContainerRelayout()forcesthecontainerwidgettorecalculatethelayoutofallContaineritems.
Usage
XmContainerRelayout()isaconvenienceroutinethatrecalculatesthegridlayoutofaContainer.Thefunctionhasnoeffectifthewidgetisnotrealized,if
XmNlayoutTypeisnotXmSPATIAL,orifXmNspatialStyleisXmNONE.Thefunctiondoesnotcausegeometrymanagementeffectswhenperforming
therelayout,althoughtheContainerwindowiscompletelyclearedandredrawnifthewidgetisrealized.XmContainerRelayout()usestheplace_item
methodoftheContainerwidgetclass.IfthisisNULLinanyderivedclass,XmContainerRelayout()hasnoeffectuponthelayoutofContaineritems.
SeeAlso
XmContainerCut(1),XmContainerCopy(1),XmContainerCopyLink(1),XmContainerGetItemChildren(1),
XmContainerPaste(1),XmContainerPasteLink(1),XmContainerReorder(1),XmContainer(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page73

XmContainerReorder
XmContainer
Name
XmContainerReorderreorderchildrenofaContainer.
Synopsis
#include<Xm/Container.h>
voidXmContainerReorder(container,item_list,item_count)
Widgetcontainer
WidgetListitem_list
intitem_count

Inputs
container

SpecifiesaContainerwidget.

item_list

SpecifiesalistofContainerchildwidgets.

item_count

Specifiesthenumberofwidgetsinitem_list.

Availability
Motif2.0andlater.
Description
XmContainerReorder()reordersanitem_listsetofitemsofaContainer.item_countisthenumberofitemswithintheitem_listarray.
Usage
XmContainerReorder()isaconvenienceroutinethatreordersContaineritemsaccordingtothevalueoftheXmNpositionIndexconstraintresourceof
eachitem,usingaquicksortalgorithm.IftheXmNlayoutTypeisXmOUTLINEorXmDETAIL,theContainersubsequentlyredoesthelayoutofalltheitems
withinthewidget.Neitherrelayoutnorreorderisperformedifitem_countislessthanorequalto1thereisnoerrorcheckingperformedonitem_listto
compareitwithNULLortoensurethatitmatchesthenumberofitemsspecifiedbyitem_count.
SeeAlso
XmContainerCut(1),XmContainerCopy(1),XmContainerCopyLink(1),XmContainerGetItemChildren(1),
XmContainerPaste(1),XmContainerPasteLink(1),XmContainerRelayout(1),XmContainer(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page74

XmConvertStringToUnits
XmResourceConversion
Name
XmConvertStringToUnitsconvertastringtoaninteger,optionallytranslatingtheunits.
Synopsis
intXmConvertStringToUnits(screen,spec,orientation,unit_type,
error_return)
Screen*screen
Stringspec
intorientation
intunit_type
XtEnum*error_return

Inputs
screen

Specifiesapointertothescreenstructure.

spec

Specifiesavaluetobeconverted.

orientation Specifieswhethertousehorizontalorverticalscreenresolution.Pass
eitherXmHORIZONTALorXmVERTICAL.
unit_type

Specifiestheunitsrequiredfortheresult.

Outputs
error_return

Returnstheerrorstatusoftheconversion.

Returns
Theconvertedvalue.
Availability
Motif2.0andlater.
Description
XmConvertStringToUnits()convertsastringspecintoaninteger.Theconversionofspecisintotheunitsspecifiedbyunit_type.Resolutionfor
theconversionisdeterminedfromthescreen,andorientationdetermineswhetherthehorizontalorverticalscreenresolutionisused.Theconvertedvalueis
returnedbythefunction.Theerror_returnparameterissetbythefunctiontoindicateanyerrorintheconversionprocess.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page75

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
XmConvertStringToUnits()convertsastringintoaninteger,translatingtheunitsoftheoriginalstringintothosespecifiedbyunit_type.Ifthe
screenisNULL,oriforientationisaninvalidvalue,orifaninvalidunit_typeissupplied,orifthestringspecisnotparseable,thefunctionreturns0
(zero),anderror_returnissettoTrue.Otherwise,error_returnissettoFalse,andthefunctionreturnstheconvertedvalue.
Thestringspecisassumedtobeinthefollowingformat:
floatvalueunits

floatvalueisafloatingpointnumber.unitsisoptionalifomitted,thedefaultunitofXmPIXELSisused.Otherwise,unitsmustbeoneofthefollowing
strings:
pix

pixel

pixels

in

inch

inches

cm

centimeter

centimeters

mm

millimeter

millimeters

pt

point

points

fu

font_unit

font_units

Structures
Thepossiblevaluesforunit_typeare:
XmPIXELS

XmCENTIMETERS

XmPOINTS

XmMILLIMETERS

Xm100TH_MILLIMETERS

XmFONT_UNITS

XmINCHES

Xm1000TH_INCHES

Xm100TH_POINTS

Xm100TH_FONT_UNITS

Example
Thefollowingarevalidstringspecifications:
3.1415926pix
3.1pt
6.3
0.3font_units
1

SeeAlso
XmConvertUnits(1),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page76

XmConvertUnits
XmResolutionIndependence
Name
XmConvertUnitsconvertavaluetoaspecifiedunittype.
Synopsis
intXmConvertUnits(widget,orientation,from_unit_type,
from_value,to_unit_type)
Widgetwidget
intorientation
intfrom_unit_type
intfrom_value
intto_unit_type

Inputs
widget

Specifiesthewidgetforwhichtoconvertthedata.

orientation Specifiesthescreenorientationthatisusedintheconversion.Pass
eitherXmHORIZONTALorXmVERTICAL.
from_unit_type

Specifiestheunittypeofthevaluethatisbeingconverted.

from_value

Specifiesthevaluethatisbeingconverted.

to_unit_type

Specifiesthenewunittypeofthevalue.

Returns
Theconvertedvalueor0(zero)iftheinputparametersarenotspecifiedcorrectly.
Description
XmConvertUnits()convertsthevaluespecifiedinfrom_valueintotheequivalentvalueinadifferentunitofmeasurement.Thisfunctionreturnsthe
resultingvalueifsuccessfulitreturns0(zero)ifwidgetisNULLorifincorrectvaluesaresuppliedfororientationorconversionunitarguments.orientation
mattersonlywhenconversionvaluesarefontunits,whicharemeasureddifferentlyinthehorizontalandverticaldimensions.
Usage
XmConvertUnits()allowsanapplicationtomanipulateresolutionindependentvalues.XmPIXELSspecifiesanormalpixelvalue,
Xm100TH_MILLIMETERSspecifiesavalueintermsof1/100ofamillimeter,Xm1000TH_INCHESspecifiesavalueintermsof1/1000ofaninch,
Xm100TH_POINTSspecifiesavalueintermsof1/100ofapoint(apointbeing1/72ofaninch),andXm100TH_FONT_UNITSspecifiesavaluein

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page77

termsof1/100ofafontunit.AfontunithashorizontalandverticalcomponentswhicharespecifiedbytheScreenresourcesXmNhorizontalFontUnitand
XmNverticalFontUnit.
Structures
Thepossiblevaluesforfrom_unit_typeandto_unit_typeare:
XmPIXELS

XmCENTIMETERS

XmMILLIMETERS

Xm100TH_MILLIMETERS XmFONT_UNITS

XmINCHES

Xm1000TH_INCHES

Xm100TH_POINTS

Xm100TH_FONT_UNITS

XmPOINTS

ThevaluesXmPOINTS,XmINCHES,XmCENTIMETERS,XmFONT_UNITS,andXmMILLIMETERSareavailableinMotif2.0andlater.
SeeAlso
XmSetFontUnits(1),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page78

XmCreateObject
XmWidgetCreation
Name
XmCreateObjectcreateaninstanceofaparticularwidgetclassorcompoundobject.
Synopsis
SimpleWidgets
#include<Xm/ArrowB.h>
WidgetXmCreateArrowButton(parent,name,arglist,argcount)

#include<Xm/ArrowBG.h>
WidgetXmCreateArrowButtonGadget(parent,name,arglist,argcount)

#include<Xm/BulletinB.h>
WidgetXmCreateBulletinBoard(parent,name,arglist,argcount)

#include<Xm/CascadeB.h>
WidgetXmCreateCascadeButton(parent,name,arglist,argcount)

#include<Xm/CascadeBG.h>
WidgetXmCreateCascadeButtonGadget(parent,name,arglist,argcount)

#include<Xm/Command.h>
WidgetXmCreateCommand(parent,name,arglist,argcount)

#include<Xm/ComboBox.h>
WidgetXmCreateComboBox(parent,name,arglist,argcount)
WidgetXmCreateDropDownComboBox(parent,name,arglist,argcount)
WidgetXmCreateDropDownList(parent,name,arglist,argcount)

#include<Xm/Container.h>
WidgetXmCreateContainer(parent,name,arglist,argcount)

#include<Xm/DialogS.h>
WidgetXmCreateDialogShell(parent,name,arglist,argcount)

#include<Xm/DragIcon.h>
WidgetXmCreateDragIcon(parent,name,arglist,argcount)

#include<Xm/DrawingA.h>
WidgetXmCreateDrawingArea(parent,name,arglist,argcount)

#include<Xm/DrawnB.h>
WidgetXmCreateDrawnButton(parent,name,arglist,argcount)

#include<Xm/FileSB.h>
WidgetXmCreateFileSelectionBox(parent,name,arglist,argcount)

#include<Xm/Form.h>
WidgetXmCreateForm(parent,name,arglist,argcount)

#include<Xm/Frame.h>
WidgetXmCreateFrame(parent,name,arglist,argcount)

#include<Xm/GrabShell.h>
WidgetXmCreateGrabShell(parent,name,arglist,argcount)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page79
#include<Xm/IconG.h>
WidgetXmCreateIconGadget(parent,name,arglist,argcount)

#include<Xm/Label.h>
WidgetXmCreateLabel(parent,name,arglist,argcount)

#include<Xm/LabelG.h>
WidgetXmCreateLabelGadget(parent,name,arglist,argcount)

#include<Xm/List.h>
WidgetXmCreateList(parent,name,arglist,argcount)

#include<Xm/MainW.h>
WidgetXmCreateMainWindow(parent,name,arglist,argcount)

#include<Xm/MenuShell.h>
WidgetXmCreateMenuShell(parent,name,arglist,argcount)

#include<Xm/MessageB.h>
WidgetXmCreateMessageBox(parent,name,arglist,argcount)

#include<Xm/Notebook.h>
WidgetXmCreateNotebook(parent,name,arglist,argcount)

#include<Xm/PanedW.h>
WidgetXmCreatePanedWindow(parent,name,arglist,argcount)

#include<Xm/PushB.h>
WidgetXmCreatePushButton(parent,name,arglist,argcount)

#include<Xm/PushBG.h>
WidgetXmCreatePushButtonGadget(parent,name,arglist,argcount)

#include<Xm/RowColumn.h>
WidgetXmCreateRowColumn(parent,name,arglist,argcount)
WidgetXmCreateRadioBox(parent,name,arglist,argcount)
WidgetXmCreateWorkArea(parent,name,arglist,argcount)

#include<Xm/Scale.h>
WidgetXmCreateScale(parent,name,arglist,argcount)

#include<Xm/ScrollBar.h>
WidgetXmCreateScrollBar(parent,name,arglist,argcount)

#include<Xm/ScrolledW.h>
WidgetXmCreateScrolledWindow(parent,name,arglist,argcount)

#include<Xm/SelectioB.h>
WidgetXmCreateSelectionBox(parent,name,arglist,argcount)

#include<Xm/Separator.h>
WidgetXmCreateSeparator(parent,name,arglist,argcount)

#include<Xm/SeparatoG.h>
WidgetXmCreateSeparatorGadget(parent,name,arglist,argcount)

#include<Xm/SSpinB.h>
WidgetXmCreateSimpleSpinBox(parent,name,arglist,argcount)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page80
#include<Xm/SpinB.h>
WidgetXmCreateSpinBox(parent,name,arglist,argcount)

#include<Xm/Text.h>
WidgetXmCreateText(parent,name,arglist,argcount)

#include<Xm/TextF.h>
WidgetXmCreateTextField(parent,name,arglist,argcount)

#include<Xm/ToggleB.h>
WidgetXmCreateToggleButton(parent,name,arglist,argcount)

#include<Xm/ToggleBG.h>
WidgetXmCreateToggleButtonGadget(parent,name,arglist,argcount)

DialogObjects
#include<Xm/BulletinB.h>
WidgetXmCreateBulletinBoardDialog(parent,name,arglist,argcount)

#include<Xm/FileSB.h>
WidgetXmCreateFileSelectionDialog(parent,name,arglist,argcount)

#include<Xm/Form.h>
WidgetXmCreateFormDialog(parent,name,arglist,argcount)

#include<Xm/MessageB.h>
WidgetXmCreateErrorDialog(parent,name,arglist,argcount)
WidgetXmCreateInformationDialog(parent,name,arglist,argcount)
WidgetXmCreateMessageDialog(parent,name,arglist,argcount)
WidgetXmCreateQuestionDialog(parent,name,arglist,argcount)
WidgetXmCreateTemplateDialog(parent,name,arglist,argcount)
WidgetXmCreateWarningDialog(parent,name,arglist,argcount)
WidgetXmCreateWorkingDialog(parent,name,arglist,argcount)

#include<Xm/SelectioB.h>
WidgetXmCreatePromptDialog(parent,name,arglist,argcount)
WidgetXmCreateSelectionDialog(parent,name,arglist,argcount)

#include<Xm/Command.h>
WidgetXmCreateCommandDialog(parent,name,arglist,argcount)

MenuObjects
#include<Xm/RowColumn.h>
WidgetXmCreateMenuBar(parent,name,arglist,argcount)
WidgetXmCreateOptionMenu(parent,name,arglist,argcount)
WidgetXmCreatePopupMenu(parent,name,arglist,argcount)
WidgetXmCreatePulldownMenu(parent,name,arglist,argcount)

SimpleMenuObjects
#include<Xm/Xm.h>
WidgetXmCreateSimpleCheckBox(parent,name,arglist,argcount)
WidgetXmCreateSimpleMenuBar(parent,name,arglist,argcount)
WidgetXmCreateSimpleOptionMenu(parent,name,arglist,argcount)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page81
WidgetXmCreateSimplePopupMenu(parent,name,arglist,argcount)
WidgetXmCreateSimplePulldownMenu(parent,name,arglist,argcount)
WidgetXmCreateSimpleRadioBox(parent,name,arglist,argcount)

ScrolledObjects
#include<Xm/List.h>
WidgetXmCreateScrolledList(parent,name,arglist,argcount)

#include<Xm/Text.h>
WidgetXmCreateScrolledText(parent,name,arglist,argcount)

Widgetparent
Stringname
ArgListarglist
Cardinalargcount

Inputs
parent

SpecifiesthewidgetIDoftheparentofthenewwidget.

name

Specifiesthestringnameofthenewwidgetforresourcelookup.

arglist

Specifiestheresourcename/valuepairsusedtocreatethewidget.

argcount

Specifiesthenumberofname/valuepairsinarglist.

Returns
ThesimplewidgetcreationroutinesreturnthewidgetIDofthewidgetthatiscreated.ThedialogcreationroutinesreturnthewidgetIDofthewidgetthatiscreatedas
achildoftheDialogShell.ThemenucreationroutinesreturnthewidgetIDoftheRowColumnwidgetthatiscreated.Thescrolledobjectcreationroutinesreturnthe
widgetIDoftheListorTextwidget.
Availability
XmCreateDragIcon()andXmCreateTemplateDialog()areavailableinMotif1.2andlater.
XmCreateGrabShell(),XmCreateIconGadget(),XmCreateComboBox(),XmCreateDropDownComboBox(),
XmCreateDropDownList(),XmCreateNotebook(),XmCreateContainer(),andXmCreateSpinBox()areavailableinMotif2.0
andlater.XmCreateSimpleSpinBox()isavailableinMotif2.1andlater.
Description
TheXmCreate*()routinesareconvenienceroutinesforcreatinganinstanceofaparticularwidgetclassoraparticularcompoundobject.Eachcreationroutine
takesthesamefourarguments:theparent'swidgetID,thenameofthenewwidget,alistofresourcename/valuepairs,andthenumberofname/valuepairs.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page82

Thesimplecreationroutinescreateasinglewidgetwiththedefaultresourcesettingsforthewidgetclass,exceptforXmCreateRadioBox()and
XmCreateWorkArea(),whichcreatespeciallyconfiguredRowColumnwidgets.
ThedialogcreationroutinesareconvenienceroutinesforcreatingaparticularunmanagedwidgetasachildofaDialogShell.Theparentargumentspecifiesthe
parentoftheDialogShellandnamespecifiesthestringnameoftheparticularwidgetthatiscreated.ThenameoftheDialogShellisthestringthatresultsfrom
appending_popuptothenameofthewidget.TheroutinesreturnthewidgetIDofthewidgetthatiscreatedasthechildoftheDialogShell.
Themenucreationroutinesareconvenienceroutinesforcreatingparticulartypesofmenuobjects.EachroutinecreatesaRowColumnwidgetwithspecificresource
settingsthatconfigurethewidgettooperateastheparticulartypeofmenu.XmCreatePopupMenu()andXmCreatePulldownMenu()createthe
RowColumnwidgetasthechildofaMenuShell.
ExceptforXmCreateSimpleSpinBox(),thesimplemenucreationroutinesareconvenienceroutinesforcreatingparticularconfigurationsofRowColumn
widgetsandtheirchildren.Forexample,XmCreateSimpleCheckBox()createsaCheckBoxwithToggleButtonGadgetsasitschildren.
XmCreateScrolledList()andXmCreateScrolledText()areconvenienceroutinesthatcreateaListorTextwidgetasthechildofa
ScrolledWindow.TheparentargumentspecifiestheparentoftheScrolledWindowandnamespecifiesthestringnameoftheListorTextwidget.Thenameof
theScrolledWindowisthestringthatresultsfromappendingSWtothenameofthewidget.TheroutinesreturnthewidgetIDoftheListorTextwidget.
Usage
EachwidgetorcompoundobjectthatcanbecreatedwithanXmCreate*()routinecanalsobecreatedusingXtCreateWidget().ThesimpleMotif
creationroutinesaresimplyveneerstoXtCreateWidget().TherestoftheMotifcreationroutinescreatemultiplewidgetsand/orsetspecificwidgetresources.
InordertouseXtCreateWidget()tocreatetheseobjects,youneedtohaveacompleteunderstandingofthecompoundobjectthatyouaretryingtocreate.
Formoreinformationoneachwidgetandcompoundobjectthatcanbecreated,seetheappropriatemanualpageinSection2,MotifandXtWidgetClasses.
SeeAlso
Section2,MotifandXtWidgetClasses

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page83

XmCvtByteStreamToXmString
XmCompoundStrings
Name
XmCvtByteStreamToXmStringconvertabytestreamtoacompoundstring.
Synopsis
XmStringXmCvtByteStreamToXmString(property)
unsignedchar*property

Inputs
property

Specifiesabytestream.

Returns
Anallocatedcompoundstring.
Availability
Motif2.0andlater.
Description
XmCvtByteStreamToXmString()convertsastreamofbytestoacompoundstring.Thefunctionistypicallyusedbythedestinationofadatatransfer
operation.
Usage
XmCvtByteStreamToXmString()convertsacompoundstringinbytestreamformatintoanXmString.Thefunctionallocatesstorageforthereturned
compoundstring,anditistheresponsibilityoftheprogrammertofreetheallocatedmemorybycallingXmStringFree()atanappropriatepoint.
SeeAlso
XmCvtXmStringToByteStream(1),XmStringFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page84

XmCvtCTToXmString
XmCompoundStrings
Name
XmCvtCTToXmStringconvertcompoundtexttoacompoundstring.
Synopsis
XmStringXmCvtCTToXmString(text)
char*text

Inputs
text

Specifiesthecompoundtextthatistobeconverted.

Returns
Theconvertedcompoundstring.
Description
XmCvtCTToXmString()convertsthespecifiedtextstringfromcompoundtextformat,whichisanXConsortiumStandarddefinedinCompoundText
Encoding,toaMotifcompoundstring.TheroutineassumesthatthecompoundtextisNULLterminatedandNULLswithinthecompoundtextarehandledcorrectly.
Iftextcontainshorizontaltabulation(HT)controlcharacters,theresultisundefined.XmCvtCTToXmString()allocatesstoragefortheconvertedcompound
string.TheapplicationisresponsibleforfreeingthisstorageusingXmStringFree().
Usage
Compoundtextisanencodingthatisdesignedtorepresenttextfromanylocale.Compoundtextstringsidentifytheirencodingusingembeddedescapesequences.
ThecompoundtextrepresentationwasstandardizedforX11R4foruseasatextinterchangeformatforinterclientcommunication.Anapplicationmustcall
XtAppInitialize()beforecallingXmCvtCTToXmString().Theconversionofcompoundtexttocompoundstringsisimplementationdependent.
XmCvtCTToXmString()isthecomplementofXmCvtXmStringToCT().
SeeAlso
XmCvtXmStringToCT(1),XmStringFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page85

XmCvtStringToUnitType
XmResourceConversion
Name
XmCvtStringToUnitTypeconvertastringtoaunittypevalue.
Synopsis
voidXmCvtStringToUnitType(args,num_args,from_val,to_val)
XrmValuePtrargs
Cardinal*num_args
XrmValue*from_val
XrmValue*to_val

Inputs
args

SpecifiesadditionalXrmValueargumentsthatareneedto
performtheconversion.

num_args Specifiesthenumberofitemsinargs.
from_val Specifiesvaluetoconvert.

Outputs
to_val

Returnstheconvertedvalue.

Availability
AsofMotif1.2,XmCvtStringToUnitType()isobsolete.IthasbeensupersededbyanewresourceconverterthatusestheRepTypefacility.
Description
XmCvtStringToUnitType()convertsthestringspecifiedinfrom_valtooneoftheunittypevalues:XmPIXELS,Xm100TH_MILLIMETERS,
Xm1000TH_INCHES,Xm100TH_POINTS,orXm100TH_FONT_UNITS.Thisvalueisreturnedinto_val.
Usage
XmCvtStringToUnitType()shouldnotbecalleddirectlyitshouldbeinstalledasaresourceconverterusingtheR3routineXtAddConverter().The
routineonlyneedstobeinstallediftheXmNunitTyperesourceforawidgetisbeingsetinaresourcefile.Inthiscase,XmCvtStringToUnitType()must
beinstalledwithXtAddConverter()beforethewidgetiscreated.UsethefollowingcalltoXtAddConverter()toinstalltheconverter:
XtAddConverter(XmRString,XmRUnitType,XmCvtStringToUnitType,NULL,0)

AsofMotif1.2,theuseofXmCvtStringToUnitType()asaresourceconverterisobsolete.Itisreplacedbyanewresourceconverterthatusesthe
RepTypefacility.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page86

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmGadget(2),XmManager(2),XmPrimitive(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page87

XmCvtTextPropertyToXmStringTable
XmCompoundStrings
Name
XmCvtTextPropertyToXmStringTableconvertanXTextPropertytoaStringTable.
Synopsis
#include<Xm/TxtPropCv.h>
intXmCvtTextPropertyToXmStringTable(display,text_prop,
str_table_return,count_return)
Display*display
XTextProperty*text_prop
XmStringTable*str_table_return
int*count_return

Inputs
display

SpecifiestheconnectiontotheXserver.

text_prop

SpecifiesapointertoanXTextPropertystructure.

Outputs
str_table_return

TheXmStringTablearrayconvertedfromtext_prop.

count_return

ThenumberofXmStringsinstr_table_return.

Returns
Successiftheconversionsucceeded,XLocaleNotSupportedifthecurrentlocaleisunsupported,XConverterNotFoundifnoconverterisavailable
inthecurrentlocale.
Availability
Motif2.0andlater.
Description
XmCvtTextPropertyToXmStringTable()convertsthedataspecifiedwithintext_propintoanarrayofXmStrings,returnedthrough
str_table_return.ThenumberofXmStringsinthearrayisreturnedincount_return.
Usage
TheXmCvtTextPropertyToXmStringTable()functionconvertsdataspecifiedwithinanXTextPropertystructureintoanXmStringTable.The
datatobeconvertedisthevaluememberoftext_prop,wherevalueisanarrayofbytes,consistingofaseriesofconcatenateditems,eachseparatedby
NULL.Thenumberofsuch

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page88

itemsisgivenbythenitemsmemberoftext_prop.ThelastitemisterminatedbytwoNULLbytes.Theinterpretationofeachitemdependsuponthe
encodingmemberoftext_prop.
Iftheencodingmemberoftext_propisCOMPOUND_TEXT,thedataisconvertedusingthefunctionXmCvtCTToXmString().Ifencodingis
COMPOUND_STRING,thedataisconvertedusingthefunctionXmCvtByteStreamToXmString().Conversionrequiresthataconverterhasbeen
registeredforthecurrentlocale,otherwisethefunctionreturnsXConverterNotFound.IfencodingisXA_STRING,eachreturnedXmStringisconverted
throughXmStringGenerate()withatagof"ISO88591"andatexttypeofXmCHARSET_TEXT.Ifencodingisthatofthecurrentlocale,each
returnedXmStringisconvertedthroughXmStringGenerate()withatagof_MOTIF_DEFAULT_LOCALE,andatexttypeofXmMULTIBYTE_TEXT.
Forothervaluesofencoding,thefunctionreturnsXLocaleNotSupported.
XmCvtTextPropertyToXmStringTable()returnsallocatedstorage,anditistheresponsibilityoftheprogrammertofreetheutilizedmemoryatan
appropriatepointbyfreeingeachelementofthearraythroughXmStringFree(),andsubsequentlythearrayitselfthroughXtFree().
Structures
TheXTextPropertystructureisdefinedin<X11/Xutil.h>asfollows:
typedefstruct{
unsignedchar*value/*sameasPropertyroutines*/
Atomencoding/*thepropertytype*/
intformat/*propertydataformat:8,16,or32.*/
unsignedlongnitems/*numberofdataitemsinvalue*/
}XTextProperty

SeeAlso
XmCvtByteStreamToXmString(1),XmCvtCTToXmString(1),XmStringFree(1),XmStringGenerate(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page89

XmCvtXmStringTableToTextProperty
XmCompoundStrings
Name
XmCvtXmStringTableToTextPropertyconvertanXmStringTabletoanXTextProperty.
Synopsis
#include<Xm/TxtPropCv.h>
intXmCvtXmStringTableToTextProperty(display,string_table,count,
style,prop_return)
Display*display
XmStringTablestring_table
intcount
XmICCEncodingStylestyle
XTextProperty*prop_return

Inputs
display

SpecifiestheconnectiontotheXserver.

string_table

Specifiesanarrayofcompoundstrings.

count

Specifiesthenumberofcompoundstringsinstring_table.

style

Specifiestheencodingstylefromwhichtoconvertstring_table.

Outputs
prop_return

TheXTextPropertystructureconvertedfromstring_table.

Returns
Successiftheconversionsucceeded,XLocaleNotSupportedifthecurrentlocaleisunsupported.
Availability
Motif2.0andlater.
Description
XmCvtXmStringTableToTextProperty()istheinversefunctiontoXmCvtTextPropertyToXmStringTable().Itconvertsanarrayof
compoundstrings,specifiedbystring_table,intotheelementsofanXTextPropertystructure.Thenumberofcompoundstringswithinthe
string_tableisgivenbycount.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page90

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
XmCvtXmStringTableToTextProperty()convertsanXmStringTableintotheelementsofanXTextPropertystructure.Theencoding
membercontainsanatomrepresentingtherequestedstyle.Thevaluemembercontainsalistoftheconverteditems,eachseparatedbyNULLbytes,and
terminatedbytwoNULLbytes,andnitemsisthenumberofsuchitemsconverted.XmCvtXmStringTableToTextProperty()returns
XLocaleNotSupportediftheconversioncannotbeperformedwithinthecurrentlocaleorifstyleisnotvalid,andSuccessotherwise.
IfstyleisXmSTYLE_COMPOUND_STRING,encodingis_MOTIF_COMPOUND_STRING,andvaluecontainsalistofXmStringsinbytestream
format.IfstyleisXmSTYLE_COMPOUND_TEXT,encodingisCOMPOUND_TEXT,andvaluecontainscompoundtextitems.Ifstyleis
XmSTYLE_LOCALE,encodingistheatomrepresentingtheencodingforthecurrentlocale,andvaluecontainsitemsconvertedintothecurrentlocale.If
styleisXmSTYLE_STRING,encodingisSTRING,andvaluecontainsitemsconvertedintoISO88591strings.IfstyleisXmSTYLE_TEXT,
andalltheXmStringsinstring_tableareconvertibleintotheencodingforthecurrentlocale,thefunctionbehavesasthoughstyleis
XmSTYLE_LOCALE.Otherwise,thefunctionbehavesasthoughstyleisXmSTYLE_COMPOUND_TEXT.Ifstyleis
XmSTYLE_STANDARD_ICC_TEXT,andalltheXmStringsinstring_tableareconvertibleasthoughthestyleisXmSTYLE_STRING,thefunction
behavesasthoughstyleisindeedXmSTYLE_STRING.Otherwise,thefunctionbehavesasthoughstyleisXmSTYLE_COMPOUND_TEXT.
Structures
TheXTextPropertystructureisdefinedin<X11/Xutil.h>asfollows:
typedefstruct{
unsignedchar*value/*sameasPropertyroutines*/
Atomencoding/*propertytype*/
intformat/*propertydataformat:8,16,or32*/
unsignedlongnitems/*numberofdataitemsinvalue*/
}XTextProperty

ThepossiblevaluesoftheXmICCEncodingStyleparameterstyleare:
XmSTYLE_COMPOUND_STRING

XmSTYLE_COMPOUND_TEXT

XmSTYLE_STRING

XmSTYLE_LOCALE

XmSTYLE_STANDARD_ICC_TEXT

XmSTYLE_TEXT

SeeAlso
XmCvtByteStreamToXmString(1),XmCvtCTToXmString(1),XmCvtTextPropertyToStringTable(1),XmStringFree
(1),XmStringGenerate(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page91

XmCvtXmStringToByteStream
XmCompoundStrings
Name
XmCvtXmStringToByteStreamconvertacompoundstringtobytestreamformat.
Synopsis
unsignedintXmCvtXmStringToByteStream(string,prop_return)
XmStringstring
unsignedchar**prop_return

Inputs
string

Specifiesthecompoundstringthatistobeconverted.

Outputs
prop_return

Theconvertedcompoundstringinbytestreamformat.

Returns
Thenumberofbytesinthebytestream.
Availability
Motif2.0andlater.
Description
XmCvtXmStringToByteStream()convertsacompoundstringstringintoastreamofbytes,returningthenumberofbytesrequiredfortheconversion.
Thebytestreamisreturnedinprop_return.ThefunctionistheinverseofXmCvtByteStreamToXmString().
Usage
XmCvtXmStringToByteStream()convertsanXmStringintobytestreamformat.Ifprop_returnisnotNULL,thefunctionplacesinto
prop_returntheconvertedstring,andreturnsitslengthinbytes.Ifprop_returnisNULL,thenumberofbytesiscalculatedandreturned,butno
conversionisperformed.XmCvtXmStringToByteStream()returnsallocatedstorageinprop_return,anditistheresponsibilityoftheprogrammerto
freetheutilizedmemoryatanappropriatepointbycallingXtFree().
SeeAlso
XmCvtByteStreamToXmString(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page92

XmCvtXmStringToCT
XmCompoundStrings
Name
XmCvtXmStringToCTconvertacompoundstringtocompoundtext.
Synopsis
char*XmCvtXmStringToCT(string)
XmStringstring

Inputs
string

Specifiesthecompoundstringthatistobeconverted.

Returns
Theconvertedcompoundtextstring.
Description
XmCvtXmStringToCT()convertsthespecifiedMotifcompoundstringtoastringinX11compoundtextformat,whichisdescribedintheXConsortium
StandardCompoundTextEncoding.
Usage
Compoundtextisanencodingthatisdesignedtorepresenttextfromanylocale.Compoundtextstringsidentifytheirencodingusingembeddedescapesequences.
ThecompoundtextrepresentationwasstandardizedforX11R4foruseasatextinterchangeformatforinterclientcommunication.XmCvtXmStringToCT()is
thecomplementofXmCvtCTToXmString().
InMotif1.2andlater,anapplicationmustnotcallXmCvtXmStringToCT()untilafterXtAppInitialize()iscalled,sothatthelocaleisestablished
correctly.Theroutineusesthefontlisttagofeachcompoundstringsegmenttoselectacompoundtextformatforthesegment.Amappingbetweenfontlisttagsand
compoundtextencodingformatsisstoredinaregistry.
IfthecompoundstringsegmenttagisassociatedwithXmFONTLIST_DEFAULT_TAGintheregistry,theconvertercallsXmbTextListToTextProperty
()withtheXCompoundTextStyleencodingstyleandusestheresultingcompoundtextforthesegment.Ifthecompoundstringsegmenttagismappedtoa
registeredMITcharset,theroutinecreatesthecompoundtextusingthecharsetasdefinedintheXConsortiumStandardCompoundTextEncoding.Ifthe
compoundstringsegmenttagisassociatedwithacharsetthatisnotXmFONTLIST_DEFAULT_TAGoraregisteredcharset,theconvertercreatesthecompound
textusingthecharsetandthetextasan"extendedsegment"withavariablenumberofoctetspercharacter.Ifthecompound

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page93

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

stringsegmenttagisnotmappedintheregistry,theresultdependsupontheimplementation.
SeeAlso
XmCvtCTToXmString(1),XmMapSegmentEncoding(1),XmRegisterSegmentEncoding(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page94

XmDeactivateProtocol
XmProtocols
Name
XmDeactivateProtocoldeactivateaprotocol.
Synopsis
#include<Xm/Protocols.h>
voidXmDeactivateProtocol(shell,property,protocol)
Widgetshell
Atomproperty
Atomprotocol

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

property

Specifiesthepropertythatholdstheprotocoldata.

protocol

Specifiestheprotocolatom.

Description
XmDeactivateProtocol()deactivatesthespecifiedprotocolwithoutremovingit.Iftheshellisrealized,XmDeactivateProtocol()
updatesitsprotocolhandlersandthespecifiedproperty.Aprotocolmaybeactiveorinactive.Ifprotocolisactive,theprotocolatomisstoredin
property,ifprotocolisinactive,theprotocolatomisnotstoredinproperty.
Usage
Aprotocolisacommunicationchannelbetweenapplications.Protocolsaresimplyatoms,storedinapropertyonthetoplevelshellwindowfortheapplication.
XmDeactivateProtocol()allowsaclienttotemporarilystopparticipatinginthecommunication.TheinverseroutineisXmActivateProtocol().
SeeAlso
XmActivateProtocol(1),XmDeactivateWMProtocol(1),XmInternAtom(1),VendorShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page95

XmDeactivateWMProtocol
XmProtocols
Name
XmDeactivateWMProtocoldeactivatetheXA_WM_PROTOCOLSprotocol.
Synopsis
#include<Xm/Protocols.h>
voidXmDeactivateWMProtocol(shell,protocol)
Widgetshell
Atomprotocol

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

protocol

Specifiestheprotocolatom.

Description
XmDeactivateWMProtocol()isaconvenienceroutinethatcallsXmDeactivateProtocol()withpropertysettoXA_WM_PROTOCOLS,the
windowmanagerprotocolproperty.
Usage
ThepropertyXA_WM_PROTOCOLSisasetofpredefinedprotocolsforcommunicationbetweenclientsandwindowmanagers.
XmDeactivateWMProtocol()allowsaclienttotemporarilystopparticipatinginthecommunicationwiththewindowmanager.Theinverseroutineis
XmActivateWMProtocol().
SeeAlso
XmActivateWMProtocol(1),XmDeactivateProtocol(1),XmInternAtom(1),VendorShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page96

XmDestroyPixmap
XmPixmaps
Name
XmDestroyPixmapremoveapixmapfromthepixmapcache.
Synopsis
BooleanXmDestroyPixmap(screen,pixmap)
Screen*screen
Pixmappixmap

Inputs
screen

Specifiesthescreenonwhichthepixmapislocated.

pixmap

Specifiesthepixmap.

Returns
TrueonsuccessorFalseifthereisnomatchingpixmapandscreeninthecache.
Description
XmDestroyPixmap()removesthespecifiedpixmapfromthepixmapcachewhenitisnolongerneeded.Apixmapisnotcompletelyfreeduntilthereareno
furtherreferencestoit.
Usage
Thepixmapcachemaintainsaperclientlistofthepixmapsthatareinuse.WheneverapixmapisrequestedusingXmGetPixmap(),aninternalreferencecounter
forthepixmapisincremented.XmDestroyPixmap()decrementsthiscounter,sothatwhenitreaches0(zero),thepixmapisremovedfromthecache.
SeeAlso
XmGetPixmap(1),XmInstallImage(1),XmUninstallImage(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page97

XmDirectionMatch
XmDirection
Name
XmDirectionMatchcomparetwodirections.
Synopsis
BooleanXmDirectionMatch(dir_1,dir_2)
XmDirectiondir_1
XmDirectiondir_2

Inputs
dir_1

Specifiesadirection.

dir_2

Specifiesadirectiontocomparewithdir_1.

Returns
Trueifthedirectionsmatch,otherwiseFalse.
Availability
Motif2.0andlater.
Description
XmDirectionMatch()isaconveniencefunctionthatcomparestwodirectionvalues,dir_1anddir_2,andreturnsTrueorFalse,dependingupon
whetherthevaluesarealogicalmatchforeachother.
Usage
AnXmDirectionconsistsofthreeparts:ahorizontalcomponent,averticalcomponent,andanorderofprecedencebetweeneach.XmDirectionvaluesmatchifboth
thehorizontalcomponentsandverticalcomponentsofeacharelogicallythesame,andtheorderbetweenthecomponentsisthesame.Ifonevaluedoesnothavea
horizontalcomponent,thisalwaysmatchesthehorizontalcomponentoftheothervalue.Similarly,ifonevaluehasnoverticalcomponent,theverticalcomponentinthe
othervalueisautomaticallyconsideredtomatch.Whereamatchisfoundbetweenthedirections,thefunctionreturnsTrueotherwiseitreturnsFalse.
Forexample,supposedir_1isXmTOP_TO_BOTTOM_LEFT_TO_RIGHT.ThishasaverticalcomponentofXmTOP_TO_BOTTOMandahorizontal
componentofXmLEFT_TO_RIGHT,withtheverticalcomponentbeingfirstintheorderofprecedence.Ifdir_2isXmLEFT_TO_RIGHT,thereisnovertical
component,soitautomaticallymatchestheverticalcomponentofdir_1.Thehorizontalcomponentsareidentical,and,therefore,thetwodirectionsareconsidered
amatch(itisalsoamatchifdir_1

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page98

isXmLEFT_TO_RIGHT_TOP_TO_BOTTOM).Ifdir_2isXmRIGHT_TO_LEFTorXmTOP_TO_BOTTOM_RIGHT_TO_LEFT,however,thereisno
matchbecausethehorizontalcomponentsdiffer.Ifdir_2isXmLEFT_TO_RIGHT_TOP_TO_BOTTOM,thefunctionalsoreturnsFalsebecausethe
horizontalandverticalcomponents,althoughfullyspecifiedandequalinvalue,havedifferentordersofprecedence.
Structures
ValidXmDirectionvaluesforeachofdir_1anddir_2are:
XmLEFT_TO_RIGHT

XmRIGHT_TO_LEFT

XmBOTTOM_TO_TOP

XmTOP_TO_BOTTOM

XmBOTTOM_TO_TOP_LEFT_TO_RIGHT

XmBOTTOM_TO_TOP_RIGHT_TO_LEFT

XmTOP_TO_BOTTOM_LEFT_TO_RIGHT

XmTOP_TO_BOTTOM_RIGHT_TO_LEFT

XmLEFT_TO_RIGHT_BOTTOM_TO_TOP

XmRIGHT_TO_LEFT_BOTTOM_TO_TOP

XmLEFT_TO_RIGHT_TOP_TO_BOTTOM

XmRIGHT_TO_LEFT_TOP_TO_BOTTOM

SeeAlso
XmDirectionMatchPartial(1),XmDirectionToStringDirection(1),XmStringDirectionToDirection(1),

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page99

XmDirectionMatchPartial
XmDirection
Name
XmDirectionMatchPartialpartiallycomparetwodirections.
Synopsis
BooleanXmDirectionMatchPartial(dir_1,dir_2,mask)
XmDirectiondir_1
XmDirectiondir_2
XmDirectionmask

Inputs
dir_1 Specifiesadirection.
dir_2 Specifiesanotherdirectiontocomparewithdir_1.
mask

Specifieswhetherthehorizontalcomponent
(XmHORIZONTAL_MASK),verticalcomponent
(XmVERTICAL_MASK),ortheorderofcomponentprecedence
(XmPRECEDENCE_MASK)iscompared.

Returns
Trueifthedirectionsmatch,otherwiseFalse.
Availability
Motif2.0andlater.
Description
XmDirectionMatchPartial()isaconveniencefunctionthatcomparestwodirectionvalues,dir_1anddir_2accordingtothecomparisonrule
specifiedinmask.
Usage
AnXmDirectionconsistsofthreelogicalparts:ahorizontalcomponent,averticalcomponent,andanorderofprecedencebetweeneach.Thefunctioncompares
correspondinglogicalpartsoftwoXmDirectionvalues.IfmaskisXmHORIZONTAL_MASK,thehorizontalcomponentsofdir_1anddir_2arecompared.If
maskisXmVERTICAL_MASK,theverticalcomponentsarecompared.IfmaskisXmPRECEDENCE_MASK,theorderofprecedencebetweenthehorizontal
andverticalcomponentsiscompared.Ifonevaluedoesnothaveaparticularlogicalpart,thisalwaysmatchesthelogicalpartinthesecondvalue.Whereamatchis
found,thefunctionreturnsTrueotherwiseitreturnsFalse.
Forexample,supposedir_1isXmTOP_TO_BOTTOM_LEFT_TO_RIGHTanddir_2isXmBOTTOM_TO_TOP_LEFT_TO_RIGHT.Ifmaskis
XmHORIZONTAL_MASK,thetwo

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page100

valuesmatchbecauseeachhasanequivalenthorizontalcomponent(XmLEFT_TO_RIGHT).IfmaskisXmVERTICAL_MASK,thereisnomatchbecauseeach
hasadifferentverticalcomponent.IfmaskisXmPRECEDENCE_MASK,thetwovaluesareamatchbecauseeachhastheverticalcomponentbeforethehorizontal.
Structures
ValidXmDirectionvaluesforeachofdir_1anddir_1are:
XmLEFT_TO_RIGHT

XmRIGHT_TO_LEFT

XmBOTTOM_TO_TOP

XmTOP_TO_BOTTOM

XmBOTTOM_TO_TOP_LEFT_TO_RIGHT

XmBOTTOM_TO_TOP_RIGHT_TO_LEFT

XmTOP_TO_BOTTOM_LEFT_TO_RIGHT

XmTOP_TO_BOTTOM_RIGHT_TO_LEFT

XmLEFT_TO_RIGHT_BOTTOM_TO_TOP

XmRIGHT_TO_LEFT_BOTTOM_TO_TOP

XmLEFT_TO_RIGHT_TOP_TO_BOTTOM

XmRIGHT_TO_LEFT_TOP_TO_BOTTOM

SeeAlso
XmDirectionMatch(1),XmDirectionToStringDirection(1),XmStringDirectionToDirection(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page101

XmDirectionToStringDirection
XmDirection
Name
XmDirectionToStringDirectionconvertadirectiontoastringdirection.
Synopsis
XmStringDirectionXmDirectionToStringDirection(direction)
XmDirectiondirection

Inputs
direction

Specifiesthedirectiontobeconverted.

Returns
TheequivalentXmStringDirection.
Availability
Motif2.0andlater.
Description
XmDirectionToStringDirection()convertsanXmDirectionvaluespecifiedbydirectionintoanXmStringDirectionvalue.
Usage
XmDirectionToStringDirection()convertsbetweentheXmDirectionandXmStringDirectiondatatypes.Ifdirectionhasahorizontal
component,thatcomponentisconverted.IfthehorizontalcomponentisXmLEFT_TO_RIGHT,thefunctionreturns
XmSTRING_DIRECTION_LEFT_TO_RIGHT.IfthehorizontalcomponentisXmRIGHT_TO_LEFT,thefunctionreturns
XmSTRING_DIRECTION_RIGHT_TO_LEFT.Ifdirectionhasnohorizontalcomponent,thefunctionreturnsXmSTRING_DIRECTION_DEFAULT.
Forexample,ifdirectionisXmRIGHT_TO_LEFT_TOP_TO_BOTTOM,thehorizontalcomponentisXmRIGHT_TO_LEFT,andthereturnvalueis
XmSTRING_DIRECTION_RIGHT_TO_LEFT.IfdirectionisXmBOTTOM_TO_TOP,thevaluehasonlyaverticalcomponent,andthefunctionreturns
XmSTRING_DIRECTION_DEFAULT.
SeeAlso
XmDirectionMatch(1),XmDirectionMatchPartial(1),XmStringDirectionToDirection(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page102

XmDragCancel
XmDragandDrop
Name
XmDragCancelcanceladragoperation.
Synopsis
#include<Xm/DragDrop.h>
voidXmDragCancel(dragcontext)
Widgetdragcontext

Inputs
dragcontext

SpecifiestheIDoftheDragContextobjectforthedrag
operationthatisbeingcancelled.

Availability
Motif1.2andlater.
Description
XmDragCancel()cancelsthedragoperationthatisinprogressforthespecifieddragcontext.IftheDragContexthasanyactionspending,theyare
terminated.Theroutinecanonlybecalledbytheclientthatinitiatedthedragoperation.XmDragCancel()freestheDragContextobjectassociatedwiththedrag
operation.
Usage
XmDragCancel()allowsaninitiatingclienttocanceladragoperationifitdecidesthatthattheoperationshouldnotcontinueforwhateverreason.Calling
XmDragCancel()isequivalenttotheuserpressingKCancelduringthedrag.TheXmNdropStartCallbackinformstheinitiatingclientofthe
cancellationbysettingthedropActionfieldtoXmDROP_CANCEL.Sothatitcanundoanydragundereffectsunderthedynamicprotocol,thereceivingclient
getsanXmCR_DROP_SITE_LEAVE_MESSAGEwhenthedragiscancelled.
SeeAlso
XmDragStart(1),XmDragContext(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page103

XmDragStart
XmDragandDrop
Name
XmDragStartstartadragoperation.
Synopsis
#include<Xm/DragDrop.h>
WidgetXmDragStart(widget,event,arglist,argcount)
Widgetwidget
XEvent*event
ArgListarglist
Cardinalargcount

Inputs
widget

Specifiesthewidgetorgadgetthatcontainsthedatathatisbeing
dragged.

event

Specifiestheeventthatcausedthedragoperation.

arglist

Specifiestheresourcename/valuepairsusedincreatingthe
DragContext.

argcount

Specifiesthenumberofname/valuepairsinarglist.

Returns
TheIDoftheDragContextobjectthatiscreated.
Availability
Motif1.2andlater.InMotif2.0andlater,XmDragStart()issubsumedbytheUniformTransferModel(UTM).TheMotifwidgetclassesdonotcall
XmDragStart()directly,butinstalltheXmQTtransfertraittoprovidedatatransferandconversion.TheyinitiatethedragthroughaUTMmechanismthat
callsXmDragStart()internally.
Description
XmDragStart()startsadragoperationbycreatingandreturningaDragContextobject.TheDragContextstoresinformationthatthetoolkitneedstoprocessa
dragtransaction.TheDragContextobjectiswidgetlike,inthatitusesresourcestospecifyitsattributes.ThetoolkitfreestheDragContextuponcompletionofthe
draganddropoperation.
ThewidgetargumenttoXmDragStart()shouldbethesmallestwidgetthatcontainsthesourcedataforthedragoperation.Theeventthatstartsthedrag
operationmustbeaButtonPressevent.Thearglistandargcountparametersworkasfor

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page104

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

anycreationroutineanyDragContextresourcesthatarenotsetbytheargumentsareretrievedfromtheresourcedatabaseorsettotheirdefaultvalues.
Usage
Motifsupportsthedraganddropmodelofselectionactions.Inawidgetthatactsasadragsource,ausercanmakeaselectionandthendragtheselection,using
BTransfer,tootherwidgetsthatareregisteredasdropsites.Thesedropsitescanbeinthesameapplicationoranotherapplication.
TheTextandTextFieldwidgets,theListwidget,andLabelanditssubclassesaresetuptoactasdragsourcesbythetoolkit.Inorderforanotherwidgettoactasa
dragsource,itmusthaveatranslationforBTransfer.TheactionroutineforthetranslationcallsXmDragStart(),eitherdirectlyorindirectlythroughthe
UTM,toinitiatethedraganddropoperation.
TheonlyDragContextresourcethatmustbespecifiedwhenXmDragStart()iscalledistheXmNconvertProcprocedure.Thisresourcespecifiesa
procedureoftypeXtConvertSelectionIncrProcthatconvertsthesourcedatatotheformat(s)requestedbythereceivingclient.Thespecificationofthe
otherresources,suchasthoseforoperationsanddragovervisuals,isoptional.FormoreinformationabouttheDragContextobject,seethemanualpageinSection
2,MotifandXtWidgetClasses.
Example
ThefollowingroutinesshowtheuseofXmDragStart()insettingupaScrollBartofunctionasadragsource.WhentheScrollBariscreated,thetranslationsare
overriddentoinvokeStartDragwhenBTransferispressed.ConvertProc,whichisnotshownhere,issetupbyStartDragtoperformthe
translationofthescrollbardataintocompoundtextformat:
/*
**XmSCOMPOUND_TEXTisdefinedinMotif2.0andlater
*/

#ifndefXmSCOMPOUND_TEXT
#defineXmSCOMPOUND_TEXT"COMPOUND_TEXT"
#endif/*XmSCOMPOUND_TEXT*/

/*globalvariable*/
AtomCOMPOUND_TEXT

/*startthedragoperation*/
staticvoidStartDrag(widget,event,params,num_params)
Widgetwidget
XEvent*event

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page105
String*params
Cardinal*num_params
{
Argargs[10]
intn=0
AtomexportList[1]

exportList[0]=COMPOUND_TEXT

XtSetArg(args[n],XmNexportTargets,exportList)n++
XtSetArg(args[n],XmNnumExportTargets,XtNumber(exportList))n++
XtSetArg(args[n],XmNdragOperations,XmDROP_COPY)n++
XtSetArg(args[n],XmNconvertProc,ConvertProc)n++
XtSetArg(args[n],XmNclientData,widget)n++
XmDragStart(widget,event,args,n)
}

/*definetranslationsandactions*/
staticchardragTranslations[]=
"#override<Btn2Down>:StartDrag()"

staticXtActionsRecdragActions[]=
{{"StartDrag",(XtActionProc)StartDrag}}

voidmain(argc,argv)
unsignedintargc
char**argv
{

Argargs[10]
intn
Widgettop,bboard,scrollbar
XtAppContextapp
XtTranslationsparsed_trans

XtSetLanguageProc(NULL,(XtLanguageProc)NULL,NULL)

top=XtAppInitialize(&app,"Drag",NULL,0,&argc,argv,NULL,NULL,0)

COMPOUND_TEXT=XInternAtom(XtDisplay(widget),XmSCOMPOUND_TEXT,False)

n=0
bboard=XmCreateBulletinBoard(top,"bboard",args,n)
XtManageChild(bboard)

/*overridebuttontwopresstostartadrag*/
parsed_trans=XtParseTranslationTable(dragTranslations)
XtAppAddActions(app,dragActions,XtNumber(dragActions))

n=0
XtSetArg(args[n],XmNtranslations,parsed_trans)n++

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page106
XtSetArg(args[n],XmNorientation,XmHORIZONTAL)n++
XtSetArg(args[n],XmNwidth,100)n++
scrollbar=XmCreateScrollBar(bboard,"scrollbar",args,n)
XtManageChild(scrollbar)

XtRealizeWidget(top)
XtAppMainLoop(app)
}

SeeAlso
XmDragCancel(1),XmTransfer(1),XmDragContext(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page107

XmDropSiteConfigureStackingOrder
XmDragandDrop
Name
XmDropSiteConfigureStackingOrderchangethestackingorderofadropsite.
Synopsis
#include<Xm/DragDrop.h>
voidXmDropSiteConfigureStackingOrder(widget,sibling,stack_mode)
Widgetwidget
Widgetsibling
Cardinalstack_mode

Inputs
widget

SpecifiesthewidgetIDassociatedwiththedropsite.

sibling

SpecifiesanoptionalwidgetIDofasiblingdropsite.

stack_mode

Specifiesthestackingposition.PasseitherXmABOVEorXmBELOW.

Availability
Motif1.2andlater.
Description
XmDropSiteConfigureStackingOrder()changesthestackingorderofadropsiterelativetoitssiblings.Theroutinechangesthestackingorderofthe
dropsiteassociatedwiththespecifiedwidget.Thestackingorderischangedonlyifthedropsitesassociatedwithwidgetandsiblingaresiblingsinboth
thewidgethierarchyandthedropsitehierarchy.Theparentofbothofthewidgetsmustberegisteredasacompositedropsite.
Ifsiblingisspecified,thestackingorderofthedropsiteischangedrelativetothestackpositionofthedropsiteassociatedwithsibling,basedonthevalue
ofstack_mode.Ifstack_modeisXmABOVE,thedropsiteispositionedjustabovethesiblingifstack_modeisXmBELOW,thedropsiteispositioned
justbelowthesibling.Ifsiblingisnotspecified,astack_modeofXmABOVEcausesthedropsitetobeplacedatthetopofthestack,whilea
stack_modeofBELOWcausesittobeplacedatthebottomofthestack.
Usage
Adropsitefordraganddropoperationscanbeacompositedropsite,whichmeansthatithaschildrenwhicharealsodropsites.Thestackingorderofthedrop
sitescontrolsclippingofdragundereffectsduringadraganddropoperation.Whendropsitesoverlap,thedragundereffectsofthedropsiteslowerinthestacking
orderareclipped

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page108

bythedropsitesabovethem,regardlessofwhetherornotthedropsitesareactive.YoucanuseXmDropSiteConfigureStackingOrder()tomodify
thestackingorder.UseXmDropSiteQueryStackingOrder()togetthecurrentstackingorder.
SeeAlso
XmDropSiteQueryStackingOrder(1),XmDropSiteRegister(1),XmDropSite(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page109

XmDropSiteEndUpdate
XmDragandDrop
Name
XmDropSiteEndUpdateendanupdateofmultipledropsites.
Synopsis
#include<Xm/DragDrop.h>
voidXmDropSiteEndUpdate(widget)
Widgetwidget

Inputs
widget

Specifiesanywidgetinthehierarchyassociatedwiththedropsitesthat
aretobeupdated.

Availability
Motif1.2andlater.
Description
XmDropSiteEndUpdate()finishesanupdateofmultipledropsites.Thewidgetparameterspecifiesawidgetinthewidgethierarchythatcontainsallofthe
widgetsassociatedwiththedropsitesbeingupdated.Theroutineuseswidgettoidentifytheshellthatcontainsallofthedropsites.
Usage
XmDropSiteEndUpdate()isusedwithXmDropSiteStartUpdate()andXmDropSiteUpdate()toupdateinformationaboutmultipledrop
sitesintheDropSiteregistry.XmDropSiteStartUpdate()startstheupdateprocessing,XmDropSiteUpdate()iscalledmultipletimestoupdate
informationaboutdifferentdropsites,andXmDropSiteEndUpdate()completestheprocessing.Theseroutinesoptimizetheupdatingofdropsiteinformation.
CallstoXmDropSiteStartUpdate()andXmDropSiteEndUpdate()canbenestedrecursively.
SeeAlso
XmDropSiteStartUpdate(1),XmDropSiteUpdate(1),XmDropSite(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page110

XmDropSiteQueryStackingOrder
XmDragandDrop
Name
XmDropSiteQueryStackingOrdergetthestackingorderofadropsite.
Synopsis
#include<Xm/DragDrop.h>
StatusXmDropSiteQueryStackingOrder(widget,parent_return,
child_returns,num_child_returns)
Widgetwidget
Widget*parent_return
Widget**child_returns
Cardinal*num_child_returns

Inputs
SpecifiesthewidgetIDassociatedwithacompositedropsite.

widget

Outputs
parent_return

ReturnsthewidgetIDoftheparentofthespecifiedwidget.

child_returns

Returnsalistofthechildrenofwidgetthatareregisteredasdrop
sites.

num_child_returns

Returnsthenumberofchildreninchild_returns.

Returns
Anonzerovalueonsuccessor0(zero)onfailure.
Availability
Motif1.2andlater.
Description
XmDropSiteQueryStackingOrder()retrievesinformationaboutthestackingorderofdropsites.Forthespecifiedwidget,theroutinereturnsits
parentandalistofitschildrenthatareregisteredasdropsites.Thechildrenarereturnedinchild_returns,whichliststhechildreninthecurrentstackingorder,
withthelowestchildinthestackingorderatthebeginningofthelistandthetopchildattheendofthelist.XmDropSiteQueryStackingOrder()allocates
storageforthelistofreturnedchildren.Theapplicationisresponsibleformanagingthisstorage,whichcanbefreedusingXtFree().Theroutinereturnsanonzero
valueonsuccessor0(zero)onfailure.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page111

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
Adropsitefordraganddropoperationscanbeacompositedropsite,whichmeansthatithaschildrenwhicharealsodropsites.Thestackingorderofthedrop
sitescontrolsclippingofdragundereffectsduringadraganddropoperation.Whendropsitesoverlap,thedragundereffectsofthedropsiteslowerinthestacking
orderareclippedbythedropsitesabovethem,regardlessofwhetherornotthedropsitesareactive.UseXmDropSiteQueryStackingOrder()toget
thecurrentstackingorderforacompositedropsite.YoucanuseXmDropSiteConfigureStackingOrder()tomodifythestackingorder.Text,
TextField,andContainerwidgetsareautomaticallyregisteredasdropsitesbytheMotiftoolkit.
SeeAlso
XmDropSiteConfigureStackingOrder(1),XmDropSiteRegister(1),XmDropSite(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page112

XmDropSiteRegister
XmDragandDrop
Name
XmDropSiteRegisterregisteradropsite.
Synopsis
#include<Xm/DragDrop.h>
voidXmDropSiteRegister(widget,arglist,argcount)
Widgetwidget
ArgListarglist
Cardinalargcount

Inputs
widget

SpecifiesthewidgetIDthatistobeassociatedwiththedropsite.

arglist

Specifiestheresourcename/valuepairsusedinregisteringthedrop
site.

argcount

Specifiesthenumberofname/valuepairsinarglist.

Availability
Motif1.2andlater.InMotif2.0andlater,XmDropSiteRegister()issubsumedbytheUniformTransferModel(UTM).TheMotifwidgetclassesdonot
callXmDropSiteRegister()directly,butinitiatethesitethroughaUTMmechanismthatcallsXmDropSiteRegister()internally.Thecallbacks
specifiedbytheXmNdestinationCallbackresourceofawidgethandlethedatadrop.
Description
XmDropSiteRegister()registersthespecifiedwidgetasadropsite,whichmeansthewidgethasadropsiteassociatedwithitintheDropSiteregistry.
Dropsitesarewidgetlike,inthattheyuseresourcestospecifytheirattributes.Thearglistandargcountparametersworkasforanycreationroutineany
dropsiteresourcesthatarenotsetbytheargumentsareretrievedfromtheresourcedatabaseorsettotheirdefaultvalues.Ifthedropsiteisregisteredwith
XmNdropSiteActivitysettoXmDROP_SITE_ACTIVEandXmNdropProcsettoNULL,theroutinegeneratesawarningmessage.
Usage
Motifsupportsthedraganddropmodelofselectionactions.Inawidgetthatactsasadragsource,ausercanmakeaselectionandthendragtheselection,using
BTransfer,tootherwidgetsthatareregisteredasdropsites.TheDropSiteregistrystoresinformationaboutallofthedropsitesforadisplay.Text,TextField,
andContainer

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page113

widgetsareautomaticallyregisteredasdropsiteswhentheyarecreated.AnapplicationcanregisterotherwidgetsasdropsitesusingXmDropSiteRegister
().Onceawidgetisregisteredasadropsite,itcanparticipateindraganddropoperations.Adropsitecanberemovedfromtheregistryusing
XmDropSiteUnregister().Whenadropsiteisremoved,thewidgetnolongerparticipatesindraganddropoperations.
Adropsitefordraganddropoperationscanbeacompositedropsite,whichmeansthatithaschildrenwhicharealsodropsites.Ifthedropsitebeingregisteredisa
descendantofawidgetthathasalreadybeenregisteredasadropsite,theXmNdropSiteTyperesourceoftheancestormustbesetto
XmDROP_SITE_COMPOSITE.Acompositedropsitemustberegisteredasadropsitebeforeitsdescendantsareregistered.Thestackingorderofthedropsites
controlsclippingofdragundereffectsduringadraganddropoperation.Whendropsitesoverlap,thedragundereffectsofthedropsiteslowerinthestackingorder
areclippedbythedropsitesabovethem,regardlessofwhetherornotthedropsitesareactive.Whenadescendantdropsiteisregistered,itisstackedaboveallof
itssiblingdropsitesthathavealreadybeenregistered.
Example
ThefollowingroutineshowstheuseofXmDropSiteRegister()toregisteraLabelwidgetasadropsite.WhenadropoperationoccursintheLabel,the
HandleDroproutine,whichisnotshownhere,handlesthedrop:
/*globalvariable*/
AtomCOMPOUND_TEXT

voidmain(argc,argv)
unsignedintargc
char**argv
{

Argargs[10]
intn
Widgettop,bb,label
XtAppContextapp
AtomimportList[1]

XtSetLanguageProc(NULL,(XtLanguageProc)NULL,NULL)

top=XtAppInitialize(&app,"Drop",NULL,0,&argc,argv,NULL,NULL,0)

n=0
bb=XmCreateBulletinBoard(top,"bb",args,n)
XtManageChild(bb)

COMPOUND_TEXT=XmInternAtom(XtDisplay(top),"COMPOUND_TEXT",False)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page114
n=0
label=XmCreateLabel(bb,"DropHere",args,n)
XtManageChild(label)

/*registerthelabelasadropsite*/
importList[0]=COMPOUND_TEXT
n=0
XtSetArg(args[n],XmNimportTargets,importList)n++
XtSetArg(args[n],XmNnumImportTargets,XtNumber(importList))n++
XtSetArg(args[n],XmNdropSiteOperations,XmDROP_COPY)n++
XtSetArg(args[n],XmNdropProc,HandleDrop)n++
XmDropSiteRegister(label,args,n)

XtRealizeWidget(top)
XtAppMainLoop(app)
}

SeeAlso
XmDropSiteConfigureStackingOrder(1),XmDropSiteEndUpdate(1),XmDropSiteQueryStackingOrder(1),
XmDropSiteRetrieve(1),XmDropSiteStartUpdate(1),XmDropSiteUnregister(1),XmDropSiteUpdate(1),
XmTransfer(1),XmDisplay(2),XmDropSite(2),XmDropTransfer(2),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page115

XmDropSiteRetrieve
XmDragandDrop
Name
XmDropSiteRetrievegettheresourcevaluesforadropsite.
Synopsis
#include<Xm/DragDrop.h>
voidXmDropSiteRetrieve(widget,arglist,argcount)
Widgetwidget
ArgListarglist
Cardinalargcount

Inputs
widget

SpecifiesthewidgetIDassociatedwiththedropsite.

arglist

Specifiestheresourcename/addresspairsthatcontaintheresource
namesandaddressesintowhichtheresourcevaluesarestored.

argcount

Specifiesthenumberofname/valuepairsinarglist.

Availability
Motif1.2andlater.
Description
XmDropSiteRetrieve()getsthespecifiedresourcesforthedropsiteassociatedwiththespecifiedwidget.Dropsitesarewidgetlike,inthattheyuse
resourcestospecifytheirattributes.ThearglistandargcountparametersworkasforXtGetValues().
Usage
XmDropSiteRetrieve()canbeusedtogetthecurrentattributesofadropsitefromtheDropSiteregistry.TheDropSiteregistrystoresinformationaboutall
ofthedropsitesforadisplay.AninitiatingclientcanalsouseXmDropSiteRetrieve()toretrieveinformationaboutthecurrentdropsitebypassingthe
DragContextfortheoperationtotheroutine.TheinitiatorcanaccessallofthedropsiteresourcesexceptXmNdragProcandXmdropProcusingthistechnique.
SeeAlso
XmDropSiteRegister(1),XmDropSiteUpdate(1),XmDropSite(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page116

XmDropSiteStartUpdate
XmDragandDrop
Name
XmDropSiteStartUpdatestartanupdateofmultipledropsites.
Synopsis
#include<Xm/DragDrop.h>
voidXmDropSiteStartUpdate(widget)
Widgetwidget

Inputs
widget

Specifiesanywidgetinthehierarchyassociatedwiththedropsitesthat
aretobeupdated.

Availability
Motif1.2andlater.
Description
XmDropSiteStartUpdate()beginsanupdateofmultipledropsites.Thewidgetparameterspecifiesawidgetinthewidgethierarchythatcontainsallof
thewidgetsassociatedwiththedropsitesbeingupdated.Theroutineuseswidgettoidentifytheshellthatcontainsallofthedropsites.
Usage
XmDropSiteStartUpdate()isusedwithXmDropSiteUpdate()andXmDropSiteEndUpdate()toupdateinformationaboutmultipledrop
sitesintheDropSiteregistry.XmDropSiteStartUpdate()startstheupdateprocessing,XmDropSiteUpdate()iscalledmultipletimestoupdate
informationaboutdifferentdropsites,andXmDropSiteEndUpdate()completestheprocessing.Theseroutinesoptimizetheupdatingofdropsiteinformation.
CallstoXmDropSiteStartUpdate()andXmDropSiteEndUpdate()canbenestedrecursively.
SeeAlso
XmDropSiteEndUpdate(1),XmDropSiteUpdate(1),XmDropSite(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page117

XmDropSiteUnregister
XmDragandDrop
Name
XmDropSiteUnregisterremoveadropsite.
Synopsis
#include<Xm/DragDrop.h>
voidXmDropSiteUnregister(widget)
Widgetwidget

Inputs
widget

SpecifiesthewidgetIDassociatedwiththedropsite.

Availability
Motif1.2andlater.
Description
XmDropSiteUnregister()removesthedropsiteassociatedwiththespecifiedwidgetfromtheDropSiteregistry.Aftertheroutineiscalled,thewidget
cannotbethereceiverinadraganddropoperation.Theroutinefreesalloftheinformationassociatedwiththedropsite.
Usage
Motifsupportsthedraganddropmodelofselectionactions.Inawidgetthatactsasadragsource,ausercanmakeaselectionandthendragtheselection,using
BTransfer,tootherwidgetsthatareregisteredasdropsites.OnceawidgetisregisteredasadropsitewithXmDropSiteRegister(),itcanparticipatein
draganddropoperations.TextandTextFieldwidgetsareautomaticallyregisteredasdropsiteswhentheyarecreated.XmDropSiteUnregister()provides
awaytoremoveadropsitefromtheregistry,sothatthewidgetnolongerparticipatesindraganddropoperations.
SeeAlso
XmDropSiteRegister(1),XmDropSite(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page118

XmDropSiteUpdate
XmDragandDrop
Name
XmDropSiteUpdatechangetheresourcevaluesforadropsite.
Synopsis
#include<Xm/DragDrop.h>
voidXmDropSiteUpdate(widget,arglist,argcount)
Widgetwidget
ArgListarglist
Cardinalargcount

Inputs
widget

SpecifiesthewidgetIDassociatedwiththedropsite.

arglist

Specifiestheresourcename/valuepairsusedinupdatingthedrop
site.

argcount

Specifiesthenumberofname/valuepairsinarglist.

Availability
Motif1.2andlater.
Description
XmDropSiteUpdate()changestheresourcesforthedropsiteassociatedwiththespecifiedwidget.Dropsitesarewidgetlike,inthattheyuseresourcesto
specifytheirattributes.ThearglistandargcountparametersworkasforXtSetValues().
Usage
XmDropSiteUpdate()canbeusedbyitselftoupdatetheattributesofadropsite.TheroutinecanalsobeusedwithXmDropSiteStartUpdate()
andXmDropSiteEndUpdate()toupdateinformationaboutmultipledropsitesintheDropSiteregistry.XmDropSiteStartUpdate()startsthe
updateprocessing,XmDropSiteUpdate()iscalledmultipletimestoupdateinformationaboutdifferentdropsites,andXmDropSiteEndUpdate()
completestheprocessing.TheDropSiteregistrystoresinformationaboutallofthedropsitesforadisplay.Theseroutinesoptimizetheupdatingofdropsite
informationbysendingalloftheupdatesatonce,ratherthanprocessingeachoneindividually.
SeeAlso
XmDropSiteEndUpdate(1),XmDropSiteRegister(1),XmDropSiteStartUpdate(1),XmDropSiteUnregister(1),
XmDropSite(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page119

XmDropTransferAdd
XmDragandDrop
Name
XmDropTransferAddadddroptransferentriestoadropoperation.
Synopsis
#include<Xm/DragDrop.h>
voidXmDropTransferAdd(drop_transfer,transfers,num_transfers)
Widgetdrop_transfer
XmDropTransferEntryRec*transfers
Cardinalnum_transfers

Inputs
drop_transfer

SpecifiestheIDoftheDropTransferobjecttowhichtheentriesare
beingadded.

transfers

Specifiestheadditionaldroptransferentries.

num_transfer

Specifiesthenumberofdroptransferentriesintransfers.

Availability
Motif1.2andlater.InMotif2.0andlater,thedraganddropmechanismsarepartoftheUniformTransferModel.Motifwidgetclassesdonotcall
XmDropTransferAdd()directly,butinsteadcallXmTransferValue()totransferdatatoadestination.XmTransferValue()calls
XmDropTransferAdd()internallyastheneedarises.
Description
XmDropTransferAdd()specifiesalistofadditionaldroptransferentriesthataretobeprocessedduringadropoperation.Thewidgetargumentspecifies
theDropTransferobjectassociatedwiththedropoperation.transfersisanarrayofXmDropTransferEntryRecstructuresthatspecifiesthetargetsofthe
additionaldroptransferoperations.XmDropTransferAdd()canbeusedtomodifytheDropTransferobjectuntilthelastcalltotheXmNtransferProcis
made.Afterthelastcall,theresultofmodifyingtheDropTransferobjectisundefined.
Usage
ThetoolkitusestheDropTransferobjecttomanagethetransferofdatafromthedragsourcetothedropsiteduringadraganddropoperation.
XmDropTransferAdd()providesawayforadropsitetospecifyadditionaltargetformatsafteradrop

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page120

operationhasstarted.TheroutineaddstheentriestotheXmNdropTransfersresource.TheattributesofaDropTransferobjectcanalsobemanipulatedwith
XtSetValues()andXtGetValues().
Structures
XmDropTransferEntryRecisdefinedasfollows:
typedefstruct{
XtPointerclient_data/*datapassedtothetransferproc*/
Atomtarget/*targetformatofthetransfer*/
}XmDropTransferEntryRec,*XmDropTransferEntry

SeeAlso
XmDropTransferStart(1),XmDragContext(2),XmDropTransfer(2),XmTransferValue(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page121

XmDropTransferStart
XmDragandDrop
Name
XmDropTransferStartstartadropoperation.
Synopsis
#include<Xm/DragDrop.h>
WidgetXmDropTransferStart(widget,arglist,argcount)
Widgetwidget
ArgListarglist
Cardinalargcount

Inputs
widget

SpecifiestheIDoftheDragContextobjectassociatedwiththe
operation.

arglist

Specifiestheresourcename/valuepairsusedincreatingthe
DropTransfer.

argcount Specifiesthenumberofname/valuepairsinarglist.

Returns
TheIDoftheDropTransferobjectthatiscreated.
Availability
Motif1.2andlater.InMotif2.0andlater,thedraganddropmechanismsarerationalizedaspartoftheUniformTransferModel.XmDropTransferStart()
iscalledonrequestinternallyastheneedarisesbythedestinationcallbackhandlers,orthroughtheXmTransferValue()andXmTransferDone()
functions.
Description
XmDropTransferStart()startsadropoperationbycreatingandreturningaDropTransferobject.TheDropTransferstoresinformationthatthetoolkit
needstoprocessadroptransaction.TheDropTransferiswidgetlike,inthatitusesresourcestospecifyitsattributes.ThetoolkitfreestheDropTransferupon
completionofthedraganddropoperation.
ThewidgetargumenttoXmDropTransferStart()istheDragContextobjectassociatedwiththedragoperation.Thearglistandargcount
parametersworkasforanycreationroutineanyDropTransferresourcesthatarenotsetbytheargumentsareretrievedfromtheresourcedatabaseorsettotheir
defaultvalues.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page122

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
Motifsupportsthedraganddropmodelofselectionactions.Inawidgetthatactsasadragsource,ausercanmakeaselectionandthendragtheselection,using
BTransfer,tootherwidgetsthatareregisteredasdropsites.Thesedropsitescanbeinthesameapplicationoranotherapplication.Thetoolkitusesthe
DropTransferobjecttomanagethetransferofdatafromthedragsourcetothedropsite.XmDropTransferStart()istypicallycalledfromwithinthe
XmNdropProcprocedureofthedropsite.
TheattributesofaDropTransferobjectcanbemanipulatedwithXtSetValues()andXtGetValues()untilthelastcalltotheXmNtransferProc
procedureismade.YoucanalsouseXmDropTransferAdd()toadddroptransferentriestobeprocessed.AfterthelastcalltoXmNtransferProc,the
resultofusingtheDropTransferobjectisundefined.FormoreinformationabouttheDropTransferobject,seethemanualpageinSection2,MotifandXtWidget
Classes.
Example
ThefollowingroutineshowstheuseofXmDropTransferStart()intheHandleDroproutine,whichistheXmNdropProcprocedureforaLabel
widgetthatisbeingusedasadropsite.ThedatatransferprocedureTransferProc()whichpresumablytranslatesthedataintheLabelintocompoundtext
format,isnotshown:
/*globalvariable*/
AtomCOMPOUND_TEXT

staticvoidHandleDrop(widget,client_data,call_data)
Widgetwidget
XtPointerclient_data
XtPointercall_data
{
XmDropProcCallbackDropData
XmDropTransferEntryRectransferEntries[1]
XmDropTransferEntrytransferList
Argargs[10]
intn

DropData=(XmDropProcCallback)call_data

n=0

if((DropData>dropAction!=XmDROP)||
(DropData>operation!=XmDROP_COPY)){
XtSetArg(args[n],XmNtransferStatus,XmTRANSFER_FAILURE)n++
}

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page123
else{
transferEntries[0].target=COMPOUND_TEXT
transferEntries[0].client_data=(XtPointer)widget
transferList=transferEntries
XtSetArg(args[n],XmNdropTransfers,transferEntries)n++
XtSetArg(args[n],XmNnumDropTransfers,XtNumber(transferEntries))n++
XtSetArg(args[n],XmNtransferProc,TransferProc)n++
}

XmDropTransferStart(DropData>dragContext,args,n)
}

SeeAlso
XmDropTransferAdd(1),XmDragContext(2),XmDropTransfer(2),XmTransferValue(2),XmTransferDone(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page124

XmFileSelectionBoxGetChild
XmFileSelectionBox
Name
XmFileSelectionBoxGetChildgetthespecifiedchildofaFileSelectionBoxwidget.
Synopsis
#include<Xm/FileSB.h>
WidgetXmFileSelectionBoxGetChild(widget,child)
Widgetwidget
unsignedcharchild

Inputs
widget

SpecifiestheFileSelectionBoxwidget.

child

SpecifiesthechildoftheFileSelectionBoxwidget.Passoneofthevalues
fromthelistbelow.

Returns
ThewidgetIDofthespecifiedchildoftheFileSelectionBox.
Description
XmFileSelectionBoxGetChild()returnsthewidgetIDofthespecifiedchildoftheFileSelectionBoxwidget.
Usage
XmDIALOG_APPLY_BUTTON,XmDIALOG_CANCEL_BUTTON,XmDIALOG_HELP_BUTTON,andXmDIALOG_OK_BUTTONspecifytheaction
buttonsinthewidget.XmDIALOG_DEFAULT_BUTTONspecifiesthecurrentdefaultbutton.XmDIALOG_DIR_LISTand
XmDIALOG_DIR_LIST_LABELspecifythedirectorylistanditslabel,whileXmDIALOG_LISTandXmDIALOG_LIST_LABELspecifythefilelistandits
label.XmDIALOG_FILTER_LABELandXmDIALOG_FILTER_TEXTspecifythefiltertextentryareaanditslabel,whileXmDIALOG_TEXTand
XmDIALOG_SELECTION_LABELspecifythefiletextentryareaanditslabel.XmDIALOG_SEPARATORspecifiestheseparatorand
XmDIALOG_WORK_AREAspecifiesanyworkareachildthathasbeenaddedtotheFileSelectionBox.
InMotif2.0andlater,iftheresourceXmNpathModeisXmPATH_MODE_RELATIVE,thedirectorypatternspecificationisdisplayedintwotextfields,rather
thanthesinglefiltertextentryarea.Whenthisisthecase,thepatternisdisplayedintheoriginalfiltertextarea,andthedirectoryportionisdisplayedinanadditional
textfieldcalledDirText.NocorrespondingmaskhasbeendefinedtoaccessthisextratextfieldthroughXmFileSelectionBoxGetChild()
XtNameToWidget()shouldbeusedtoaccesstheDirTextwidgetIDwhenrequired.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page125

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

FormoreinformationonthedifferentchildrenoftheFileSelectionBox,seethemanualpageinSection2,MotifandXtWidgetClasses.
Structures
Thepossiblevaluesforchildare:
XmDIALOG_APPLY_BUTTON

XmDIALOG_FILTER_LABEL

XmDIALOG_OK_BUTTON

XmDIALOG_CANCEL_BUTTON

XmDIALOG_FILTER_TEXT

XmDIALOG_SELECTION_LABEL

XmDIALOG_DEFAULT_BUTTON

XmDIALOG_HELP_BUTTON

XmDIALOG_SEPARATOR

XmDIALOG_DIR_LIST

XmDIALOG_LIST

XmDIALOG_TEXT

XmDIALOG_DIR_LIST_LABEL

XmDIALOG_LIST_LABEL

XmDIALOG_WORK_AREA

SeeAlso
XmFileSelectionBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page126

XmFileSelectionDoSearch
XmFileSelectionBox
Name
XmFileSelectionDoSearchstartadirectorysearch.
Synopsis
#include<Xm/FileSB.h>
voidXmFileSelectionDoSearch(widget,dirmask)
Widgetwidget
XmStringdirmask

Inputs
widget

SpecifiestheFileSelectionBoxwidget.

dirmask

Specifiesthedirectorymaskthatisusedinthedirectorysearch.

Description
XmFileSelectionDoSearch()startsadirectoryandfilesearchforthespecifiedFileSelectionBoxwidget.dirmaskisatextpatternthatcaninclude
wildcardcharacters.XmFileSelectionDoSearch()updatesthelistsofdirectoriesandfilesthataredisplayedbytheFileSelectionBox.Ifdirmaskis
nonNULL,theroutinerestrictsthesearchtodirectoriesthatmatchthedirmask.
Usage
XmFileSelectionBoxDoSearch()allowsyoutoforceaFileSelectionBoxtoreinitializeitself,whichisusefulifyouwanttosetthedirectorymaskdirectly.
SeeAlso
XmFileSelectionBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page127

XmFontListAdd
XmFontLists
Name
XmFontListAddcreateanewfontlist.
Synopsis
XmFontListXmFontListAdd(oldlist,font,charset)
XmFontListoldlist
XFontStruct*font
XmStringCharSetcharset

Inputs
oldlist

Specifiesthefontlisttowhichfontisadded.

font

Specifiesthefontstructure.

charset

Specifiesatagthatidentifiesthecharactersetforthefont.

Returns
Thenewfontlist,oldlistiffontorcharsetisNULL,orNULLifoldlistisNULL.
Availability
InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeandtheXmRendition
objectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.XmFontListAdd()wasobsoleteasof
Motif1.2itwassupersededbyXmFontListAppendEntry().
Description
XmFontListAdd()makesanewfontlistbyaddingthefontstructurespecifiedbyfonttotheoldfontlist.Theroutinereturnsthenewfontlistanddeallocates
oldlist.charsetspecifiesthecharactersetthatisassociatedwiththefont.ItcanbeXmSTRING_DEFAULT_CHARSET,whichtakesthecharacterset
fromthecurrentlanguageenvironment,butthisvaluemayberemovedfromfutureversionsofMotif.
XmFontListAdd()searchesthefontlistcacheforafontlistthatmatchesthenewfontlist.Iftheroutinefindsamatchingfontlist,itreturnsthatfontlistand
incrementsitsreferencecount.Otherwise,theroutineallocatesspaceforthenewfontlistandcachesit.Ineithercase,theapplicationisresponsibleformanagingthe
memoryassociatedwiththefontlist.Whentheapplicationisdoneusingthefontlist,itmustbefreedusingXmFontListFree().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page128

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
InMotif1.1and1.2,afontlistcontainsentriesthatdescribethefontsthatareinuse.InMotif1.1,eachentryassociatesafontandacharacterset.InMotif1.2,each
entryconsistsofafontorafontsetandanassociatedtag.InMotif2.0andlater,XmFontListisimplementedusingtheXmRenderTabletype.
XmRenditionobjectswithinarendertablerepresentthefontentries.XmFontListAdd()returnsareferencecountedrendertable.
XmFontListAdd()isretainedforcompatibilitywithMotif1.1andshouldnotbeusedinnewerapplications.
SeeAlso
XmFontListAppendEntry(1),XmFontListFree(1),XmRenderTableAddRenditions(1),XmRenditionCreate(1),
XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page129

XmFontListAppendEntry
XmFontLists
Name
XmFontListAppendEntryappendafontentrytoafontlist.
Synopsis
XmFontListXmFontListAppendEntry(oldlist,entry)
XmFontListoldlist
XmFontListEntryentry

Inputs
oldlist

Specifiesthefontlisttowhichentryisappended.

entry

Specifiesthefontlistentry.

Returns
ThenewfontlistoroldlistifentryisNULL.
Availability
Motif1.2andlater.InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeand
theXmRenditionobjectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.
Description
XmFontListAppendEntry()makesanewfontlistbyappendingthespecifiedentrytotheoldfontlist.IfoldlistisNULL,theroutinecreatesanew
fontlistthatcontainsthesingleentry.XmFontListAppendEntry()returnsthenewfontlistanddeallocatesoldlist.Theapplicationisresponsiblefor
freeingthefontlistentryusingXmFontListEntryFree().
XmFontListAppendEntry()searchesthefontlistcacheforafontlistthatmatchesthenewfontlist.Iftheroutinefindsamatchingfontlist,itreturnsthatfont
listandincrementsitsreferencecount.Otherwise,theroutineallocatesspaceforthenewfontlistandcachesit.Ineithercase,theapplicationisresponsiblefor
managingthememoryassociatedwiththefontlist.Whentheapplicationisdoneusingthefontlist,itshouldbefreedusingXmFontListEntryFree().
Usage
InMotif1.2,afontlistcontainsfontlistentries,whereeachentryconsistsofafontorfontsetandanassociatedtag.Beforeafontlistcanbeaddedtoafontlist,ithas
tobecreatedwithXmFontListEntryCreate()orXmFontListEntryLoad().InMotif

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page130

2.0andlater,XmFontListisanaliasfortheXmRenderTabletype.XmRenditionobjectswithinarendertablerepresentthefontentries.
XmFontListAppendEntry()returnsareferencecountedrendertable.
XmFontListAppendEntry()isretainedforcompatibilitywithMotif1.2andshouldnotbeusedinnewerapplications.
SeeAlso
XmFontListEntryCreate(1),XmFontListEntryFree(1),XmFontListEntryLoad(1),XmFontListFree(1),
XmFontListRemoveEntry(1),XmRenderTableAddRenditions(1),XmRenditionCreate(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page131

XmFontListCopy
XmFontLists
Name
XmFontListCopycopyafontlist.
Synopsis
XmFontListXmFontListCopy(fontlist)
XmFontListfontlist

Inputs
fontlist

Specifiesthefontlisttobecopied.

Returns
ThenewfontlistorNULLiffontlistisNULL.
Availability
InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeandtheXmRendition
objectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.
Description
XmFontListCopy()makesandreturnsacopyoffontlist.Theroutinesearchesthefontlistcacheforthefontlist,returnsthefontlist,andincrementsits
referencecount.Theapplicationisresponsibleformanagingthememoryassociatedwiththefontlist.Whentheapplicationisdoneusingthefontlist,itshouldbefreed
usingXmFontListFree().
Usage
Afontlistcontainsentriesthatdescribethefontsthatareinuse.InMotif1.1,eachentryassociatesafontandacharacterset.InMotif1.2,eachentryconsistsofa
fontorafontsetandanassociatedtag.InMotif2.0andlater,XmFontListisanaliasfortheXmRenderTabletype.XmRenditionobjectswithina
rendertablerepresentthefontentries.XmFontListCopy()isaconvenienceroutinewhichcallsXmRenderTableCopy()tocopyandreturnareference
countedrendertable.
XmFontListCopy()makesacorrectcopyofthefontlistregardlessofthetypeofentriesinthelist.Whenafontlistisassignedtoawidget,thewidgetmakesa
copyofthefontlist,soitissafetofreethefontlist.WhenyouretrieveafontlistfromawidgetusingXtGetValues(),youshouldnotalterthefontlistdirectly.If
youneedtomake

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page132

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

changestothefontlist,useXmFontListCopy()tomakeacopyofthefontlistandthenchangethecopy.
XmFontListCopy()isretainedforcompatibilitywithMotif1.2andshouldnotbeusedinnewerapplications.
SeeAlso
XmFontListFree(1).XmRenderTableCopy(1),XmRenditionCreate(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page133

XmFontListCreate
XmFontLists
Name
XmFontListCreatecreateafontlist.
Synopsis
XmFontListXmFontListCreate(font,charset)
XFontStruct*font
XmStringCharSetcharset

Inputs
font

Specifiesthefontstructure.

charset

Specifiesatagthatidentifiesthecharactersetforthefont.

Returns
ThenewfontlistorNULLiffontorcharsetisNULL.
Availability
InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeandtheXmRendition
objectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.XmFontListCreate()wasobsoleteas
ofMotif1.2itwassupersededbyXmFontListAppendEntry().
Description
XmFontListCreate()createsanewfontlistthatcontainsasingleentrywiththespecifiedfontandcharset.charsetspecifiesthecharactersetthat
isassociatedwiththefont.ItcanbeXmSTRING_DEFAULT_CHARSET,whichtakesthecharactersetfromthecurrentlanguageenvironment,butthisvaluemay
beremovedfromfutureversionsofMotif.
XmFontListCreate()searchesthefontlistcacheforafontlistthatmatchesthenewfontlist.Iftheroutinefindsamatchingfontlist,itreturnsthatfontlistand
incrementsitsreferencecount.Otherwise,theroutineallocatesspaceforthenewfontlistandcachesit.Ineithercase,theapplicationisresponsibleformanagingthe
memoryassociatedwiththefontlist.Whentheapplicationisdoneusingthefontlist,itshouldbefreedusingXmFontListFree().
Usage
Afontlistcontainsentriesthatdescribethefontsthatareinuse.InMotif1.1,eachentryassociatesafontandacharacterset.InMotif1.2,eachentryconsistsofa
fontor

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page134

afontsetandanassociatedtag.InMotif2.0andlater,XmFontListisanaliasfortheXmRenderTabletype.XmRenditionobjectswithinarendertable
representthefontentries.XmFontListCreate()isaconvenienceroutinewhichcallsXmRenditionCreate()tocreatearenditionobjectforthe
font.TherenditionobjectisaddedtoarendertablebytheXmRenderTableAddRenditions()function.Therendertableisreturned.
XmFontListCreate()isnotmultithreadsafeiftheapplicationhasmultipleapplicationcontexts.InMotif2.1,thefunctionXmFontListCreate_r()is
preferredwithinmultithreadedapplications.Fontsmustnotbesharedbetweendisplaysinamultithreadedenvironment.
XmFontListCreate()isretainedforcompatibilitywithMotif1.1andshouldnotbeusedinnewerapplications.
SeeAlso
XmFontListAppendEntry(1),XmFontListCreate_r(1),XmRenderTableAddRenditions(1),XmRenditionCreate
(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page135

XmFontListCreate_r
XmFontLists
Name
XmFontListCreate_rcreateafontlistinathreadsafemanner.
Synopsis
XmFontListXmFontListCreate_r(font,charset,widget)
XFontStruct*font
XmStringCharSetcharset
Widgetwidget

Inputs
font

Specifiesthefontstructure.

charset

Specifiesatagthatidentifiesthecharactersetforthefont.

widget

Specifiesawidget.

Returns
ThenewfontlistorNULLiffontorcharsetisNULL.
Availability
Motif2.1andlater.
Description
XmFontListCreate_r()isidenticaltoXmFontListCreate(),exceptthatitismultithreadsafe.Thewidgetparameterisusedtoobtainalock
upontheapplicationcontextassociatedwithwidget.TheolderroutineXmFontListCreate()isnotsafeinmultithreadedenvironmentsthathavemultiple
applicationcontexts.
Usage
Thewidgetdoesnotneedtobethewidgetthatusesfonthowever,itmustbeonthesamedisplay.Thesharingoffontsorfontlistsacrossmultipledisplaysis
notsafeformultithreadedapplications.AlthoughtheXmFontListisobsoleteinMotif2.0andlater,XmFontListCreate_r()isprovidedforbackwards
compatibilityforapplicationsthatusetheXmFontListinterfaceandareintendedtoruninmultithreadedenvironments.XmFontListCreate_r()should
notbeusedinapplicationsusingthenewerXmRenditionandXmRenderTableinterfaces.
SeeAlso
XmFontListCreate(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page136

XmFontListEntryCreate
XmFontLists
Name
XmFontListEntryCreatecreateafontlistentry.
Synopsis
XmFontListEntryXmFontListEntryCreate(tag,type,font)
char*tag
XmFontTypetype
XtPointerfont

Inputs
tag

Specifiesthetagforthefontlistentry.

type

Specifiesthetypeofthefontargument.Passeither
XmFONT_IS_FONTorXmFONT_IS_FONTSET.

font

Specifiesthefontorfontset.

Returns
Afontlistentry.
Availability
Motif1.2andlater.InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeand
theXmRenditionobjectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.
Description
XmFontListEntryCreate()makesafontlistentrythatcontainsthespecifiedfont,whichisidentifiedbytag.typeindicateswhetherfontspecifies
anXFontSetorapointertoanXFontStruct.tagisaNULLterminatedstringthatidentifiesthefontlistentry.Itcanhavethevalue
XmFONTLIST_DEFAULT_TAG,whichidentifiesthedefaultfontlistentryinafontlist.
XmFontListEntryCreate()allocatesspaceforthenewfontlistentry.Theapplicationisresponsibleformanagingthememoryassociatedwiththefontlist
entry.Whentheapplicationisdoneusingthefontlistentry,itshouldbefreedusingXmFontListEntryFree().
Usage
InMotif1.2,afontlistcontainsfontlistentries,whereeachentryconsistsofafontorfontsetandanassociatedtag.XmFontListEntryCreate()createsa
fontlistentryusinganXFontStructreturnedbyXLoadQueryFont()oranXFontSetreturned

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page137

byXCreateFontSet().Theroutinedoesnotcopythefontstructure,sotheXFontStructorXFontSetmustnotbefreeduntilallreferencestoithave
beenfreed.ThefontlistentrycanbeaddedtoafontlistusingXmFontListAppendEntry().InMotif2.0andlater,XmFontListisanaliasforthe
XmRenderTabletype.XmRenditionobjectswithinarendertablerepresentthefontentries.XmFontListEntryCreate()returnsarendition
object.
XmFontListEntryCreate()isnotmultithreadsafeiftheapplicationhasmultipleapplicationcontexts.InMotif2.1,thefunction
XmFontListEntryCreate_r()ispreferredwithinmultithreadedapplications.Fontsmustnotbesharedbetweendisplaysinamultithreadedenvironment.
XmFontListEntryCreate()isretainedforcompatibilitywithMotif1.2andshouldnotbeusedinnewerapplications.
SeeAlso
XmFontListAppendEntry(1),XmFontListEntryCreate_r(1),XmFontListEntryFree(1),
XmFontListEntryGetFont(1),XmFontListEntryGetTag(1),XmFontListEntryLoad(1),XmFontListRemoveEntry
(1),XmRenditionCreate(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page138

XmFontListEntryCreate_r
XmFontLists
Name
XmFontListEntryCreate_rcreateafontlistentryinathreadsafemanner.
Synopsis
XmFontListEntryXmFontListEntryCreate_r(tag,type,font,widget)
char*tag
XmFontTypetype
XtPointerfont
Widgetwidget

Inputs
tag

Specifiesthetagforthefontlistentry.

type

Specifiesthetypeofthefontargument.Passeither
XmFONT_IS_FONTorXmFONT_IS_FONTSET.

font

Specifiesthefontorfontset.

widget

Specifiesawidget.

Returns
Afontlistentry.
Availability
Motif2.1andlater.
Description
XmFontListEntryCreate_r()isinallrespectsidenticaltoXmFontListEntryCreate(),exceptthatXmFontListEntryCreate_r()is
providedformultithreadedapplications.Theadditionalwidgetparameterisusedtoobtainalockuponanapplicationcontext.Theolderroutine
XmFontListEntryCreate()isnotsafeinmultithreadedenvironmentsthathavemultipleapplicationcontexts.
Usage
Thewidgetdoesnotneedtobethewidgetthatusesfonthowever,itmustbeonthesamedisplay.Thesharingoffontsorfontlistsacrossmultipledisplaysis
notsafeformultithreadedapplications.
AlthoughtheXmFontListisobsoleteinMotif2.0andlater,XmFontListEntryCreate_r()isprovidedforbackwardscompatibilityforapplications
thatusetheXmFontListinterfaceandareintendedtoruninmultithreadedenvironments.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page139

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmFontListEntryCreate_r()shouldnotbeusedinapplicationsusingthenewerXmRenditionandXmRenderTableinterface.
SeeAlso
XmFontListEntryCreate(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page140

XmFontListEntryFree
XmFontLists
Name
XmFontListEntryFreefreethememoryusedbyafontlistentry.
Synopsis
voidXmFontListEntryFree(entry)
XmFontListEntry*entry

Inputs
entry

Specifiestheaddressofthefontlistentrythatistobefreed.

Availability
Motif1.2andlater.InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeand
theXmRenditionobjectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.
Description
XmFontListEntryFree()deallocatesstorageusedbythespecifiedfontlistentry.TheroutinedoesnotfreetheXFontSetorXFontStructdata
structureassociatedwiththefontlistentry.
Usage
InMotif1.2,afontlistcontainsfontlistentries,whereeachentryconsistsofafontorfontsetandanassociatedtag.Afontlistentrycanbecreatedusing
XmFontListEntryCreate()orXmFontListEntryLoad()andthenappendedtoafontlistwithXmFontListAppendEntry().Oncethe
entryhasbeenappendedtothenecessaryfontlists,itshouldbefreedusingXmFontListEntryFree().
InMotif1.2.1,thereisabuginXmFontListEntryFree()thatcausesittofreethefontorfontset,ratherthanthefontlistentry.Asaworkaroundforthis
specificversion,youcanuseXtFree()tofreethefontlistentry.
InMotif2.0andlater,XmFontListisanaliasfortheXmRenderTabletype.XmRenditionobjectswithinarendertablerepresentthefontentries.
XmFontListEntryFree()isasimpleconvenienceroutinethatcallsXmRenditionFree().
XmFontListEntryFree()isretainedforcompatibilitywithMotif1.2andshouldnotbeusedinnewerapplications.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page141

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmFontListAppendEntry(1),XmFontListEntryCreate(1),XmFontListEntryLoad(1),XmFontListNextEntry(1),
XmFontListRemoveEntry(1),XmRenditionFree(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page142

XmFontListEntryGetFont
XmFontLists
Name
XmFontListEntryGetFontgetthefontinformationfromafontlistentry.
Synopsis
XtPointerXmFontListEntryGetFont(entry,type_return)
XmFontListEntryentry
XmFontType*type_return

Inputs
entry

Specifiesthefontlistentry.

Outputs
type_return Returnsthetypeofthefontinformationthatisreturned.Validtypesare
XmFONT_IS_FONTorXmFONT_IS_FONTSET.

Returns
AnXFontSetorapointertoanXFontStruct.
Availability
Motif1.2andlater.InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeand
theXmRenditionobjectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.
Description
XmFontListEntryGetFont()retrievesthefontinformationforthespecifiedfontlistentry.Whenthefontlistentrycontainsafont,type_returnis
XmFONT_IS_FONTandtheroutinereturnsapointertoanXFontStruct.Whenthefontlistentrycontainsafontset,type_returnis
XmFONT_IS_FONTSETandtheroutinereturnstheXFontSet.TheXFontSetorXFontStructthatisreturnedisnotacopyofthedatastructure,soit
mustnotbefreedbyanapplication.
Usage
TheXmFontListandXmFontListEntrytypesareopaque,soifanapplicationneedstoperformanyprocessingonafontlist,ithastousespecialfunctions
tocyclethroughthefontlistentriesandretrieveinformationaboutthem.TheseroutinesuseanXmFontContexttomaintainanarbitrarypositioninafontlist.
XmFontListEntryGetFont()canbeusedtogetthefontstructureforafontlistentryonceithasbeenretrievedfromthefontlistusing
XmFontListNextEntry().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page143

type.XmRenditionobjectswithinarendertablerepresentthefontentries.XmFontListEntryGetFont()isaconvenienceroutinethatfetchesthe
XmNfontandXmNfontTypevaluesoftherenditionobjectrepresentedbyentry.ThevaluesarefetchedthroughthefunctionXmRenditionRetrieve
().type_returnissettothevalueoftheXmNfontTyperesource,andthefunctionXmFontListEntryGetFont()returnsthevalueofthe
XmNfontresourceoftherenditionobject.
XmFontListGetFont()isretainedforcompatibilitywithMotif1.2andshouldnotbeusedinnewerapplications.
SeeAlso
XmFontListEntryCreate(1),XmFontListEntryGetTag(1),XmFontListEntryLoad(1),XmFontListNextEntry(1),
XmRenditionRetrieve(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page144

XmFontListEntryGetTag
XmFontLists
Name
XmFontListEntryGetTaggetthetagofafontlistentry.
Synopsis
char*XmFontListEntryGetTag(entry)
XmFontListEntryentry

Inputs
entry

Specifiesthefontlistentry.

Returns
Thetagforthefontlistentry.
Availability
Motif1.2andlater.InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeand
theXmRenditionobjectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.
Description
XmFontListEntryGetTag()retrievesthetagofthespecifiedfontlistentry.Theroutineallocatesstorageforthetagstringtheapplicationisresponsible
forfreeingthememoryusingXtFree().
Usage
TheXmFontListandXmFontListEntrytypesareopaque,soifanapplicationneedstoperformanyprocessingonafontlist,ithastousespecialfunctions
tocyclethroughthefontlistentriesandretrieveinformationaboutthem.TheseroutinesuseaXmFontContexttomaintainanarbitrarypositioninafontlist.>hw
XmFontListEntryGetTagXmFontListEntryGetTag()canbeusedtogetthetagofafontlistentryonceithasbeenretrievedfromthefontlistusing
XmFontListNextEntry().
InMotif2.0andlater,XmFontListisanaliasfortheXmRenderTabletype.XmRenditionobjectswithinarendertablerepresentthefontentries.
XmFontListEntryGetTag()isaconvenienceroutinethatfetchesandreturnsacopyoftheXmNtagvalueoftherenditionobjectrepresentedbyentry.
ThevalueisfetchedthroughthefunctionXmRenditionRetrieve().
XmFontListGetTag()isretainedforcompatibilitywithMotif1.2andshouldnotbeusedinnewerapplications.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page145

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmFontListEntryCreate(1),XmFontListEntryGetFont(1),XmFontListEntryLoad(1),XmFontListNextEntry
(1),XmRenditionRetrieve(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page146

XmFontListEntryLoad
XmFontLists
Name
XmFontListEntryLoadloadafontorcreateafontsetandthencreateafontlistentry.
Synopsis
XmFontListEntryXmFontListEntryLoad(display,font_name,type,tag)
Display*display
char*font_name
XmFontTypetype
char*tag

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

font_name SpecifiesanXLogicalFontDescription(XLFD)string.
type

Specifiesthetypeoffont_name.PasseitherXmFONT_IS_FONT
orXmFONT_IS_FONTSET.

tag

Specifiesthetagforthefontlistentry.

Returns
Afontlistentry,orNULLifthefontcannotbefoundorthefontsetcannotbecreated.
Availability
Motif1.2andlater.InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeand
theXmRenditionobjectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.
Description
XmFontListEntryLoad()eitherloadsafontorcreatesafontsetdependingonthevalueoftypeandthencreatesafontlistentrythatcontainsthefontdata
andthespecifiedtag.font_nameisanXLFDstringwhichisparsedaseitherafontnameorabasefontnamelist.tagisaNULLterminatedstringthat
identifiesthefontlistentry.ItcanhavethevalueXmFONTLIST_DEFAULT_TAG,whichidentifiesthedefaultfontlistentryinafontlist.
IftypeissettoXmFONT_IS_FONT,theroutineusestheXtCvtStringToFontStruct()convertertoloadthefontstructspecifiedbyfont_name.
Ifthevalue

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page147

oftypeisXmFONT_IS_FONTSET,XmFontListEntryLoadusestheXtCvtStringToFontSetconvertertocreateafontsetinthecurrent
locale.
XmFontListEntryLoad()allocatesspaceforthenewfontlistentry.Theapplicationisresponsibleformanagingthememoryassociatedwiththefontlist
entry.Whentheapplicationisdoneusingthefontlistentry,itshouldbefreedusingXmFontListEntryFree().
Usage
InMotif1.2,afontlistcontainsfontlistentries,whereeachentryconsistsofafontorfontsetandanassociatedtag.XmFontListEntryLoad()setsupthe
fontdataandcreatesafontlistentry.ThefontlistentrycanbeaddedtoafontlistusingXmFontListAppendEntry().
InMotif2.0andlater,XmFontListisanaliasfortheXmRenderTabletype.XmRenditionobjectswithinarendertablerepresentthefontentries.
XmFontListEntryLoad()isaconvenienceroutinethatcreatesandreturnsarenditionobjectwithitsXmNfontNameresourcesettofont_nameand
XmNfontTypesettotype.TherenditionobjectiscreatedwithanXmNloadModelofXmLOAD_IMMEDIATE.
XmFontListEntryLoad()isretainedforcompatibilitywithMotif1.2andshouldnotbeusedinnewerapplications.
SeeAlso
XmFontListAppendEntry(1),XmFontListEntryCreate(1),XmFontListEntryFree(1),XmFontListEntryGetFont
(1),XmFontListEntryGetTag(1),XmFontListRemoveEntry(1),XmRenditionCreate(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page148

XmFontListFree
XmFontLists
Name
XmFontListFreefreethememoryusedbyafontlist.
Synopsis
voidXmFontListFree(fontlist)
XmFontListfontlist

Inputs
fontlist

Specifiesthefontlistthatistobefreed.

Availability
InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeandtheXmRendition
objectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.
Description
XmFontListFree()deallocatesstorageusedbythespecifiedfontlist,butdoesnotfreetheXFontSetorXFontStructstructures
associatedwiththefontlist.
Usage
Afontlistcontainsentriesthatdescribethefontsthatareinuse.InMotif1.1,eachentryassociatesafontandacharacterset.InMotif1.2,eachentryconsistsofa
fontorafontsetandanassociatedtag.XmFontListFree()freesthestorageusedbythefontlistbutdoesnotfreetheassociatedfontdatastructures.InMotif
2.0andlater,XmFontListisanaliasfortheXmRenderTabletype.XmRenditionobjectswithinarendertablerepresentthefontentries.
XmFontListFree()isaconveniencefunctionthatsimplycallsXmRenderTableFree().XmFontListFree()isretainedforcompatibilitywith
Motif1.1andshouldnotbeusedinnewerapplications.
ItisimportanttocallXmFontListFree()ratherthanXtFree()becauseMotifcachesfontlists.AcalltoXmFontListFree()decrementsthe
referencecountforthefontlistthefontlistisnotactuallyfreeduntilthereferencecountreaches0(zero).
SeeAlso
XmFontListAppendEntry(1),XmFontListCopy(1),XmFontListEntryFree(1),XmFontListRemoveEntry(1),
XmRenderTableFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page149

XmFontListFreeFontContext
XmFontLists
Name
XmFontListFreeFontContextfreeafontcontext.
Synopsis
voidXmFontListFreeFontContext(context)
XmFontContextcontext

Inputs
context

Specifiesthefontlistcontextthatistobefreed.

Availability
InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeandtheXmRendition
objectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.
Description
XmFontListFreeFontContext()deallocatesstorageusedbythespecifiedfontlistcontext.
Usage
TheXmFontListtypeisopaque,soifanapplicationneedstoperformanyprocessingonafontlist,ithastousespecialfunctionstocyclethroughthefontlist.
TheseroutinesuseaXmFontContexttomaintainanarbitrarypositioninafontlist.XmFontListFreeFontContext()isthelastofthethreefont
contextroutinesthatanapplicationshouldcallwhenprocessingafontlist,asitfreesthefontcontextdatastructure.Anapplicationbeginsbycalling
XmFontListInitFontContext()tocreateafontcontextandthenmakesrepeatedcallstoXmFontListNextEntry()or
XmFontListGetNextFont()tocyclethroughthefontlist.
XmFontListFreeFontContext()isretainedforcompatibilitywithMotif1.1andshouldnotbeusedinnewerapplications.
SeeAlso
XmFontListGetNextFont(1),XmFontListInitFontContext(1),XmFontListNextEntry(1),
XmRenderTableAddRendition(1),XmRenditionCreate(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page150

XmFontListGetNextFont
XmFontLists
Name
XmFontListGetNextFontretrieveinformationaboutthenextfontlistelement.
Synopsis
BooleanXmFontListGetNextFont(context,charset,font)
XmFontContextcontext
XmStringCharSet*charset
XFontStruct**font

Inputs
context

Specifiesthefontcontextforthefontlist.

Outputs
charset

Returnsthetagthatidentifiesthecharactersetforthefont.

font

Returnsthefontstructureforthecurrentfontlistelement.

Returns
TrueifthevaluesbeingreturnedarevalidorFalseotherwise.
Availability
InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeandtheXmRendition
objectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.XmFontListGetNextFont()was
obsoleteasofMotif1.2itwassupersededbyXmFontListNextEntry().
Description
XmFontListGetNextFont()returnsthecharactersetandfontforthenextelementofthefontlist.contextisthefontcontextcreatedby
XmFontListInitFontContext().ThefirstcalltoXmFontListGetNextFont()returnsthefirstfontlistelement.Repeatedcallsto
XmFontListGetNextFont()usingthesamecontextaccesssuccessivefontlistelements.TheroutinereturnsFalsewhenithasreachedtheendofthefont
list.
Usage
Afontlistcontainsentriesthatdescribethefontsthatareinuse.InMotif1.1,eachentryassociatesafontandacharacterset.InMotif1.2,eachentryconsistsofa
fontorafontsetandanassociatedtag.InMotif2.0andlater,XmFontListisanaliasforthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page151

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmRenderTabletype.XmRenditionobjectswithinarendertablerepresentthefontentries.
TheXmFontListtypeisopaque,soifanapplicationneedstoperformanyprocessingonafontlist,ithastousespecialfunctionstocyclethroughthefontlist.
TheseroutinesuseaXmFontContexttomaintainanarbitrarypositioninafontlist.XmFontListGetNextFont()cyclesthroughthefontsinafontlist.
XmFontListInitFontContext()iscalledfirsttocreatethefontcontext.Whenanapplicationisdoneprocessingthefontlist,itshouldcall
XmFontListFreeFontContext()withthesamecontexttofreetheallocateddata.
XmFontContextisanopaquetypethatcontainsanindexintotherenditionsofarendertable.Iftheroutineiscalledwithafontcontextthatcontainsafontset,it
returnsthefirstfontofthefontset.
XmFontListGetNextFont()isretainedforcompatibilitywithMotif1.1andshouldnotbeusedinnewerapplications.
SeeAlso
XmFontListFreeFontContext(1),XmFontListInitFontContext(1),XmFontListNextEntry(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page152

XmFontListInitFontContext
XmFontLists
Name
XmFontListInitFontContextcreateafontcontext.
Synopsis
BooleanXmFontListInitFontContext(context,fontlist)
XmFontContext*context
XmFontListfontlist

Inputs
fontlist

Specifiesthefontlist.

Outputs
context

Returnstheallocatedfontcontextstructure.

Returns
TrueifthefontcontextisallocatedorFalseotherwise.
Availability
InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeandtheXmRendition
objectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.
Description
XmFontListInitFontContext()createsafontcontextforthespecifiedfontlist.Thisfontcontextallowsanapplicationtoaccessthe
informationthatisstoredinthefontlist.XmFontListInitFontContext()allocatesspaceforthefontcontext.Theapplicationisresponsibleformanaging
thememoryassociatedwiththefontcontext.Whentheapplicationisdoneusingthefontcontext,itshouldbefreedusingXmFontListFreeFontContext
().
Usage
TheXmFontListtypeisopaque,soifanapplicationneedstoperformanyprocessingonafontlist,ithastousespecialfunctionstocyclethroughthefontlist.
TheseroutinesuseaXmFontContexttomaintainanarbitrarypositioninafontlist.XmFontListInitFontContext()isthefirstofthethreefont
contextroutinesthatanapplicationshouldcallwhenprocessingafontlist,asitcreatesthefontcontextdatastructure.Thecontextispassedto
XmFontListNextEntry()orXmFontListGetNextFont()tocyclethroughthefontlist.Whenanapplicationisdoneprocessing

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page153

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

thefontlist,itshouldcallXmFontListFreeFontContext()withthesamecontexttofreetheallocateddata.
InMotif2.0andlater,XmFontListisanaliasfortheXmRenderTabletype.XmRenditionobjectswithinarendertablerepresentthefontentries.The
XmFontContextisanopaquetypewhichcontainsanindexintotherenditionsofarendertable.
XmFontListInitFontContext()isretainedforcompatibilitywithMotif1.1andshouldnotbeusedinnewerapplications.
SeeAlso
XmFontListFreeFontContext(1),XmFontListGetNextFont(1),XmFontListInitFontContext(1),
XmFontListNextEntry(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page154

XmFontListNextEntry
XmFontLists
Name
XmFontListNextEntryretrievethenextfontlistentryinafontlist.
Synopsis
XmFontListEntryXmFontListNextEntry(context)
XmFontContextcontext

Inputs
context

Specifiesthefontcontextforthefontlist.

Returns
AfontlistentryorNULLifthecontextreferstoaninvalidentryorifitisattheendofthefontlist.
Availability
Motif1.2andlater.InMotif2.0andlater,theXmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletype
andtheXmRenditionobjectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.
Description
XmFontListNextEntry()returnsthenextfontlistentryinafontlist.contextisthefontcontextcreatedbyacallto
XmFontListInitFontContext().ThefirstcalltoXmFontListNextEntry()returnsthefirstentryinthefontlist.Repeatedcallsto
XmFontListNextEntry()usingthesamecontextaccesssuccessivefontlistentries.TheroutinereturnsNULLwhenithasreachedtheendofthefontlist.
Usage
InMotif1.2,afontlistcontainsfontlistentries,whereeachentryconsistsofafontorfontsetandanassociatedtag.InMotif2.0andlater,XmFontListisanalias
fortheXmRenderTabletype.XmRenditionobjectswithinarendertablerepresentthefontentries.XmFontContextisanopaquetypewhichcontains
anindexintotherenditionsofarendertable.
TheXmFontListandXmFontListEntrytypesareopaque,soifanapplicationneedstoperformanyprocessingonafontlist,ithastousespecialfunctions
tocyclethroughthefontlistentriesandretrieveinformationaboutthem.Theseroutinesusea

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page155

XmFontContexttomaintainanarbitrarypositioninafontlist.XmFontListInitFontContext()iscalledfirsttocreatethefontcontext.
XmFontListNextEntry()cyclesthroughthefontentriesinafontlist.Toaccesstheinformationinafontlistentry,useXmFontListEntryGetFont
()andXmFontListEntryGetTag().Whenanapplicationisdoneprocessingthefontlist,itshouldcallXmFontListFreeFontContext()with
thesamecontexttofreetheallocateddata.
XmFontListNextEntry()isretainedforcompatibilitywithMotif1.2andshouldnotbeusedinnewerapplications.
SeeAlso
XmFontListEntryFree(1),XmFontListEntryGetFont(1),XmFontListEntryGetTag(1),
XmFontListFreeFontContext(1),XmFontListInitFontContext(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page156

XmFontListRemoveEntry
XmFontLists
Name
XmFontListRemoveEntryremoveafontlistentryfromafontlist.
Synopsis
XmFontListXmFontListRemoveEntry(oldlist,entry)
XmFontListoldlist
XmFontListEntryentry

Inputs
oldlist

Specifiesthefontlistfromwhichentryisremoved.

entry

Specifiesthefontlistentry.

Returns
Thenewfontlist,oldlistifentryisNULLornoentriesareremoved,orNULLifoldlistisNULL.
Availability
Motif1.2andlater.InMotif2.0andlater,XmFontListandXmFontListEntryareobsolete.TheyaresupersededbytheXmRenderTabletypeand
theXmRenditionobjectrespectively.Tomaintainbackwardscompatibility,XmFontListhasbeenreimplementedasarendertable.
Description
XmFontListRemoveEntry()makesanewfontlistbyremovinganyentriesinoldlistthatmatchthespecifiedentry.Theroutinereturnsthenewfont
listanddeallocatesoldlist.XmFontListRemoveEntry()doesnotdeallocatethefontlistentry,sotheapplicationshouldfreethestorageusing
XmFontListEntryFree().
XmFontListRemoveEntry()searchesthefontlistcacheforafontlistthatmatchesthenewfontlist.Iftheroutinefindsamatchingfontlist,itreturnsthatfont
listandincrementsitsreferencecount.Otherwise,theroutineallocatesspaceforthenewfontlistandcachesit.Ineithercase,theapplicationisresponsiblefor
managingthememoryassociatedwiththefontlist.Whentheapplicationisdoneusingthefontlist,itshouldbefreedusingXmFontListFree().
Usage
InMotif1.2,afontlistcontainsfontlistentries,whereeachentryconsistsofafontorfontsetandanassociatedtag.InMotif2.0andlater,XmFontListisanalias
fortheXmRenderTabletype.XmRenditionobjectswithinarendertablerepresentthefont

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page157

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

entries.TheXmFontContextisanopaquetypewhichcontainsanindexintotherenditionsofarendertable.
AnapplicationcanuseXmFontListRemoveEntry()toremoveafontlistentryfromafontlist.Ifanapplicationneedstoprocessthefontlisttodetermine
whichentriestoremove,itcanuseXmFontListInitFontContext()andXmFontListNextEntry()tocyclethroughtheentriesinthefontlist.
XmFontListRemoveEntry()isretainedforcompatibilitywithMotif1.2andshouldnotbeusedinnewerapplications.
SeeAlso
XmFontListAppendEntry(1),XmFontListEntryCreate(1),XmFontListEntryFree(1),XmFontListEntryLoad(1),
XmFontListFree(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page158

XmGetAtomName
XmAtoms
Name
XmGetAtomNamegetthestringrepresentationofanatom.
Synopsis
#include<Xm/AtomMgr.h>
StringXmGetAtomName(display,atom)
Display*display
Atomatom

Inputs
display SpecifiesaconnectiontoanXserverreturnedfrom
XOpenDisplay()orXtDisplay().
atom

Specifiestheatomforthepropertynametobereturned.

Returns
Thestringthatrepresentsatom.
Availability
InMotif2.0andlater,XGetAtomName()ispreferred.
Description
XmGetAtomName()returnsthestringthatisusedtorepresentagivenatom.ThisroutineworkslikeXlib'sXGetAtomName()routine,buttheMotifroutine
providestheaddedfeatureofclientsidecaching.XmGetAtomName()allocatesspaceforthereturnedstringtheapplicationisresponsibleforfreeingthisstorage
usingXtFree()whentheatomisnolongerneeded.
Usage
Anatomisanumberthatidentifiesaproperty.Propertiesalsohavestringnames.XmGetAtomName()returnsthestringnamespecifiedintheoriginalcallto
XmInternAtom()orXInternAtom(),orforpredefinedatoms,astringversionofthesymbolicconstantwithouttheXA_attached.InMotif2.0andlater,
XmGetAtomName()isnomorethanaconvenienceroutinethatcallsXGetAtomName().WhileXmGetAtomName()isnotyetobsolete,
XGetAtomName()ispreferred.
SeeAlso
XmInternAtom(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page159

XmGetColorCalculation
XmColors
Name
XmGetColorCalculationgettheprocedurethatcalculatesdefaultcolors.
Synopsis
XmColorProcXmGetColorCalculation()

Returns
Theprocedurethatcalculatesdefaultcolors.
Description
XmGetColorCalculation()returnstheprocedurethatcalculatesthedefaultforeground,topandbottomshadow,andselectcolors.Theprocedure
calculatesthesecolorsbasedonthebackgroundcolorthatispassedtotheprocedure.
Usage
Motifwidgetsrelyontheuseofshadowedborderstoachievetheirthreedimensionalappearance.Thetopandbottomshadowcolorsarelighteranddarkershades
ofthebackgroundcolorthesecolorsarereversedtomakeacomponentappearraisedoutofthescreenorrecessedintothescreen.Theselectcolorisaslightly
darkershadeofthebackgroundcolorthatindicatesthatacomponentisselected.Thedefaultforegroundcoloriseitherblackorwhite,dependingonwhichcolor
providesthemostcontrastwiththebackgroundcolor.XmGetColorCalculation()returnstheprocedurethatcalculatesthesecolors.Use
XmSetColorCalculation()tochangethecalculationprocedure.
InMotif2.0andlater,colorcalculationprocedurescanbespecifiedonaperscreenbasisbyspecifyingavaluefortheXmScreenobject
XmNcolorCalculationProcresource.WhereaparticularXmScreendoesnothaveanassignedcalculator,theprocedurespecifiedby
XmGetColorCalculation()isusedasthedefault.
Procedures
TheXmColorProchasthefollowingsyntax:
typedefvoid(*XmColorProc)(XColor*,XColor*,XColor*,XColor*,XColor*)
XColor*bg_color/*specifiesthebackgroundcolor*/
XColor*fg_color/*returnstheforegroundcolor*/
XColor*sel_color/*returnstheselectcolor*/
XColor*ts_color/*returnsthetopshadowcolor*/
XColor*bs_color/*returnsthebottomshadowcolor*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page160

AnXmColorProctakesfivearguments.Thefirstargument,bg_color,isapointertoanXColorstructurethatspecifiesthebackgroundcolor.Thered,
green,blue,andpixelfieldsinthestructurecontainvalidvalues.TherestoftheargumentsarepointerstoXColorstructuresforthecolorsthataretobe
calculated.Theprocedurefillsinthered,green,andbluefieldsinthesestructures.
SeeAlso
XmChangeColor(1),XmGetColors(1),XmSetColorCalculation(1).XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page161

XmGetColors
XmColors
Name
XmGetColorsupdatethecolorsforawidget.
Synopsis
voidXmGetColors(screen,color_map,background,foreground_return,
top_shadow_return,bottom_shadow_return,select_return)
Screen*screen
Colormapcolor_map
Pixelbackground
Pixel*foreground_return
Pixel*top_shadow_return
Pixel*bottom_shadow_return
Pixel*select_return

Inputs
screen

Specifiesthescreenforwhichcolorsaretobeallocated.

color_map

Specifiesacolormapfromwhichthecolorsareallocated.

background

Specifiesthebackgroundfromwhichtocalculateallocatedcolors.

Outputs
foreground_return

Specifiesanaddressintowhichtheforegroundpixelisreturned.

top_shadow_return

Specifiesanaddressintowhichthetopshadowpixelisreturned.

bottom_shadow_return

Specifiesanaddressintowhichthebottomshadowpixelisreturned.

select_return

Specifiesanaddressintowhichtheselectpixelisreturned.

Description
XmGetColors()allocatesandreturnsasetofpixelswithinacolor_mapassociatedwithagivenscreenforuseastheforeground,topshadow,bottom
shadow,andselectcolorsofawidget.Thereturnedvaluesarecalculatedbaseduponasuppliedbackground.
Usage
XmGetColors()allocatesasetofpixelsfromacolormap.Thepixelsrequiredarebaseduponasuppliedbackgroundpixel.Ifanyreturnaddressis
specifiedasNULL,

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page162

therelevantpixelisnotallocated.InMotif1.2andearlier,pixelsareallocatedusingthecurrentcolorcalculationprocedure,whichcanbespecifiedusing
XmSetColorCalculation().InMotif2.0andlater,perscreencolorcalculationproceduresaresupported:iftheXmNcolorCalculationProc
resourceoftheXmScreenobjectassociatedwithscreenisnotNULL,theprocedurespecifiedbytheresourceisusedtocalculatethepixels.Otherwise,the
currentcolorcalculationprocedureisused.
SeeAlso
XmGetColorCalculation(1),XmSetColorCalculation(1).XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page163

XmGetDestination
XmKeyboardTraversal
Name
XmGetDestinationgetthecurrentdestinationwidget.
Synopsis
WidgetXmGetDestination(display)
Display*display

Inputs
display SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

Returns
ThewidgetIDofthecurrentdestinationwidgetorNULLifthereisnocurrentdestinationwidget.
Description
XmGetDestination()returnsthewidgetIDofthecurrentdestinationwidgetforthespecifieddisplay.Thedestinationwidgetisusuallythewidgetmost
recentlychangedbyaselect,edit,insert,orpasteoperation.XmGetDestination()identifiesthewidgetthatservesasthedestinationforquickpaste
operationsandsomeclipboardroutines.ThisroutinereturnsNULLifthereisnocurrentdestination,whichoccurswhennoeditoperationshavebeenperformedona
widget.
Usage
XmGetDestination()providesawayforanapplicationtoretrievethewidgetthatwouldbeactedonbyvariousselectionoperations,sothattheapplication
candoanynecessaryprocessingbeforetheoperationoccurs.
SeeAlso
XmGetFocusWidget(1),XmGetTabGroup(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page164

XmGetDragContext
XmDragandDrop
Name
XmGetDragContextgetinformationaboutadraganddropoperation.
Synopsis
#include<Xm/DragDrop.h>
WidgetXmGetDragContext(widget,timestamp)
Widgetwidget
Timetimestamp

Inputs
widget

Specifiesawidgetonthedisplaywherethedraganddropoperationis
takingplace.

timestamp SpecifiesatimestampthatidentifiesaDragContext.

Returns
TheIDoftheDragContextobjectorNULLifnoactiveDragContextisfound.
Availability
Motif1.2andlater.
Description
XmGetDragContext()retrievestheDragContextobjectassociatedwiththedisplayofthespecifiedwidgetthatisactiveatthespecifiedtimestamp.
Whenmorethatonedragoperationhasbeenstartedonadisply,atimestampcanuniquelyidentifytheactiveDragContext.Ifthespecifiedtimestamp
correspondstoatimestampprocessedbetweenthebeginningandendofasingledraganddropoperation,XmGetDragContext()returnstheDragContext
associatedwiththeoperation.IfthereisnoactiveDragContextforthetimestamp,theroutinereturnsNULL.
Usage
Motif1.2andlatersupportsthedraganddropmodelofselectionactions.EverydraganddropoperationhasaDragContextobjectassociatedwithitthatstores
informationaboutthedragoperation.BoththeinitiatingandthereceivingclientsuseinformationintheDragContexttoprocessthedragtransaction.TheDragContext
objectiswidgetlike,inthatitusesresourcestospecifyitsattributes.TheseresourcescanbecheckedusingXtGetValues()andmodifiedusing
XtSetValues().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page165

XmGetDragContext()providesawayforanapplicationtoretrieveaDragContextobject.TheapplicationcanthenuseXtGetValues()and
XtSetValues()tomanipulatetheDragContext.
SeeAlso
XmDragCancel(1),XmDragStart(1),XmDragContext(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page166

XmGetFocusWidget
XmKeyboardTraversal
Name
XmGetFocusWidgetgetthewidgetthathasthekeyboardfocus.
Synopsis
WidgetXmGetFocusWidget(widget)
Widgetwidget

Inputs
widget

Specifiesthewidgetwhosehierarchyistobetraversed.

Returns
ThewidgetIDofthewidgetwiththekeyboardfocusorNULLifnowidgethasthefocus.
Availability
Motif1.2andlater.
Description
XmGetFocusWidget()returnsthewidgetIDofthewidgetthathaskeyboardfocusinthewidgethierarchythatcontainsthespecifiedwidget.Theroutine
searchesthewidgethierarchythatcontainsthespecifiedwidgetuptothenearestshellancestor.XmGetFocusWidget()returnsthewidgetinthehierarchy
thatcurrentlyhasthefocus,orthewidgetthatlasthadthefocuswhentheusernavigatedtoanotherhierarchy.Ifnowidgetinthehierarchyhasthefocus,theroutine
returnsNULL.
Usage
XmGetFocusWidget()providesameansofdeterminingthewidgetthatcurrentlyhasthekeyboardfocus,whichcanbeusefulifyouaretryingtocontrol
keyboardnavigationinanapplication.
SeeAlso
XmGetTabGroup(1),XmGetVisibility(1),XmIsTraversable(1),XmProcessTraversal(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page167

XmGetMenuCursor
XmCursors
Name
XmGetMenuCursorgetthecurrentmenucursor.
Synopsis
CursorXmGetMenuCursor(display)
Display*display

Inputs
display SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

Returns
ThecursorIDforthecurrentmenucursororNoneifnocursorhasbeendefined.
Availability
InMotif1.2andlater,XmGetMenuCursor()isobsolete.IthasbeensupersededbygettingtheXmScreenresourceXmNmenuCursor.
Description
XmGetMenuCursor()returnsthecursorIDofthemenucursorcurrentlyinusebytheapplicationonthespecifieddisplay.Theroutinereturnsthecursorfor
thedefaultscreenofthedisplay.Ifthecursorisnotyetdefinedbecausetheapplicationcalledtheroutinebeforeanymenuswerecreated,then
XmGetMenuCursor()returnsthevalueNone.
Usage
Themenucursoristhepointershapethatisusedwheneveramenuisposted.Thiscursorcanbedifferentfromthenormalpointershape.InMotif1.2andlater,the
XmScreenobjecthasaresource,XmNmenuCursor,thatspecifiesthemenucursor.XmGetMenuCursor()isretainedforcompatibilitywithMotif1.1and
shouldnotbeusedinnewerapplications.
SeeAlso
XmSetMenuCursor(1),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page168

XmGetPixmap
XmPixmaps
Name
XmGetPixmapcreateandreturnapixmap.
Synopsis
PixmapXmGetPixmap(screen,image_name,foreground,background)
Screen*screen
char*image_name
Pixelforeground
Pixelbackground

Inputs
screen

Specifiesthescreenonwhichthepixmapistobedrawn.

image_name Specifiesthestringnameoftheimageusedtomakethepixmap.
foreground Specifiestheforegroundcolorthatiscombinedwiththeimagewhenitis
abitmap.
background Specifiesthebackgroundcolorthatiscombinedwiththeimagewhenit
isabitmap.

Returns
ApixmaponsuccessorXmUNSPECIFIED_PIXMAPwhenthespecifiedimage_namecannotbefound.
Description
XmGetPixmap()generatesapixmap,storesitinthepixmapcache,andreturnsitsresourceID.Beforetheroutineactuallycreatesthepixmap,itchecksthe
pixmapcacheforapixmapthatmatchesthespecifiedimage_name,screen,foreground,andbackground.Ifamatchisfound,thereference
countforthepixmapisincrementedandtheresourceIDforthepixmapisreturned.Ifnopixmapisfound,XmGetPixmap()checkstheimagecacheforaimage
thatmatchesthespecifiedimage_name.Ifamatchingimageisfound,itisusedtocreatethepixmapthatisreturned.
Whennomatchesarefound,XmGetPixmap()beginsasearchforanX10orX11bitmapfile,usingimage_nameastheComponent.Ifafileisfound,its
contentsareread,convertedintoanimage,andcachedintheimagecache.Then,theimageisusedtogenerateapixmapthatissubsequentlycachedandreturned.
Thedepthofthepixmapisthedefaultdepthofthescreen.Ifimage_namespecifiesabitmap,theforegroundandbackgroundcolorsarecombinedwith
theimage.Ifnofileisfound,theroutinereturnsXmUNSPECIFIED_PIXMAP.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page169

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
Whenimage_namestartswithaslash(/),itspecifiesafullpathnameandXmGetPixmap()opensthespecifiedfile.Otherwise,image_namespecifiesa
ComponentwhichcausesXmGetPixmap()tolookforthefileusingasearchpath.InMotif1.2andearlier,theXBMLANGPATHenvironmentvariablespecifies
thesearchpathforXbitmapfiles.InMotif2.0andlater,theenvironmentvariablesXMICONSEARCHPATHandXMICONBMSEARCHPATHspecifysearch
pathsforpixmapfiles:XMICONSEARCHPATHisusedifacolorserverisrunning,XMICONBMSEARCHPATHotherwise,andXBMLANGPATHisusedasa
fallback.
Thesearchpathcancontainthesubstitutioncharacter%B,whereimage_nameissubstitutedfor%B.Thesearchpathcanalsousethesubstitutioncharacters
acceptedbyXtResolvePathname(),where%Tismappedtobitmapsand%SismappedtoNULL.
IfXBMLANGPATHisnotset,XmGetPixmap()usesadefaultsearchpath.IftheXAPPLRESDIRenvironmentvariableisset,theroutinesearchesthe
followingpaths:
%B

/usr/lib/X11/%L/bitmaps/%N/%B

$XAPPLRESDIR/%L/bitmaps/%N/%B

/usr/lib/X11/%l_%t/bitmaps/%N/%B

$XAPPLRESDIR/%l_%t/bitmaps/%N/%B

/usr/lib/X11/%l/bitmaps/%N/%B

$XAPPLRESDIR/%l/bitmaps/%N/%B

/usr/lib/X11/bitmaps/%N/%B

$XAPPLRESDIR/bitmaps/%N/%B

/usr/lib/X11/%L/bitmaps/%B

$XAPPLRESDIR/%L/bitmaps/%B

/usr/lib/X11/%l_%t/bitmaps/%B

$XAPPLRESDIR/%l_%t/bitmaps/%B

/usr/lib/X11/%l/bitmaps/%B

$XAPPLRESDIR/%l/bitmaps/%B

/usr/lib/X11/bitmaps/%B

$XAPPLRESDIR/bitmaps/%B

/usr/include/X11/bitmaps/%B

$HOME/bitmaps/%B
$HOME/%B

IfXAPPLRESDIRisnotset,XmGetPixmap()searchesthesamepaths,exceptthatXAPPLRESDIRisreplacedbyHOME.Thesesearchpathsarevendor
dependentandavendormayusedifferentdirectoriesfor/usr/lib/X11and/usr/include/X11.Inthesearchpaths,theimagenameissubstitutedfor%B,theclassname
oftheapplicationissubstitutedfor%N,thelanguagestringofthedisplayissubstitutedfor%L,thelanguagecomponentofthelanguagestringissubstitutedfor%1,
andtheterritorystringissubstitutedfor%t.
SeeAlso
XmDestroyPixmap(1),XmGetPixmapByDepth(1),XmInstallImage(1),XmUninstallImage(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page170

XmGetPixmapByDepth
XmPixmaps
Name
XmGetPixmapByDepthcreateandreturnapixmapofthespecifieddepth.
Synopsis
PixmapXmGetPixmapByDepth(screen,image_name,foreground,
background,depth)
Screen*screen
char*image_name
Pixelforeground
Pixelbackground
intdepth

Inputs
screen

Specifiesthescreenonwhichthepixmapistobedrawn.

image_name Specifiesthestringnameoftheimageusedtomakethepixmap.
foreground Specifiestheforegroundcolorthatiscombinedwiththeimagewhenitis
abitmap.
background Specifiesthebackgroundcolorthatiscombinedwiththeimagewhenit
isabitmap.
depth

Specifiesthedepthofthepixmap.

Returns
ApixmaponsuccessorXmUNSPECIFIED_PIXMAPwhenthespecifiedimage_namecannotbefound.
Availability
Motif1.2andlater.
Description
XmGetPixmapByDepth()generatesapixmap,storesitinthepixmapcache,andreturnsitsresourceID.Beforetheroutineactuallycreatesthepixmap,it
checksthepixmapcacheforapixmapthatmatchesthespecifiedimage_name,screen,foreground,background,anddepth.Ifamatchis
found,thereferencecountforthepixmapisincrementedandtheresourceIDforthepixmapisreturned.Ifnopixmapisfound,XmGetPixmapByDepth()
checkstheimagecacheforaimagethatmatchesthespecifiedimage_name.Ifamatchingimageisfound,itisusedtocreatethepixmapthatisreturned.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page171

Whennomatchesarefound,XmGetPixmapByDepth()beginsasearchforanX10orX11bitmapfile,usingimage_nameastheComponent.Ifafileis
found,itscontentsareread,convertedintoanimage,andcachedintheimagecache.Then,theimageisusedtogenerateapixmapthatissubsequentlycachedand
returned.Thedepthofthepixmapisthespecifieddepth.Ifimage_namespecifiesabitmap,theforegroundandbackgroundcolorsarecombined
withtheimage.Ifnofileisfound,theroutinereturnsXmUNSPECIFIED_PIXMAP.
Usage
XmGetPixmapByDepth()worksjustlikeXmGetPixmap()exceptthatthedepthofthepixmapcanbespecified.WithXmGetPixmap(),thedepthof
thereturnedpixmapisthedefaultdepthofthescreen.SeeXmGetPixmap()foranexplanationofthesearchpaththatisusedtofindtheimage.
SeeAlso
XmDestroyPixmap(1),XmGetPixmap(1),XmInstallImage(1),XmUninstallImage(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page172

XmGetPostedFromWidget
XmMenus
Name
XmGetPostedFromWidgetgetthewidgetthatpostedamenu.
Synopsis
#include<Xm/RowColumn.h>
WidgetXmGetPostedFromWidget(menu)
Widgetmenu

Inputs
Specifiesthemenuwidget.

menu

Returns
ThewidgetIDofthewidgetthatpostedthemenu.
Description
XmGetPostedFromWidget()returnsthewidgetfromwhichthespecifiedmenuisposted.Thevaluethatisreturneddependsonthetypeofmenuthatis
specified.ForaPopupMenu,theroutinereturnsthewidgetfromwhichmenuispoppedup.ForaPulldownMenu,theroutinereturnstheRowColumnwidgetfrom
whichmenuispulleddown.Forcascadingsubmenus,thereturnedwidgetistheoriginalRowColumnwidgetatthetopofthemenusystem.Fortearoffmenusin
Motif1.2andlater,XmGetPostedFromWidget()returnsthewidgetfromwhichthemenuistornoff.
Usage
Ifanapplicationusesthesamemenuindifferentcontexts,itcanuseXmGetPostedFromWidget()inanactivatecallbacktodeterminethecontextinwhichthe
menucallbackshouldbeinterpreted.
SeeAlso
XmPopupMenu(2),XmPulldownMenu(2),XmRowColumn(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page173

XmGetScaledPixmap
XmPixmaps
Name
XmGetScaledPixmapcreateandreturnascaledpixmap.
Synopsis
PixmapXmGetScaledPixmap(widget,image_name,foreground,
background,depth,scaling_ratio)
Widgetwidget
char*image_name
Pixelforeground
Pixelbackground
intdepth
doublescaling_ratio

Inputs
widget

Specifiesawidget.

image_name Specifiesthestringnameoftheimageusedtomakethepixmap.
foreground Specifiestheforegroundcolorthatiscombinedwiththeimagewhenitis
abitmap.
background Specifiesthebackgroundcolorthatiscombinedwiththeimagewhenit
isabitmap.
depth

Specifiesthedepthofthepixmap.

scaling_ratio

Specifiesascalingratioappliedtothepixmap.

Returns
ApixmaponsuccessorXmUNSPECIFIED_PIXMAPwhenthespecifiedimage_namecannotbefound.
Availability
Motif2.1andlater.
Description
XmGetScaledPixmap()issimilartoXmGetPixmapByDepth(),exceptthatthereturnedpixmapisscaled.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page174

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
widgetisusedtofindaPrintShellbywanderingupthewidgethierarchy.ItisalsousedtofindaScreenonwhichtocreatethepixmap.Ifscaling_ratiois
zeroandanancestoralPrintShellisfound,theratioiscalculatedas:
printerresolution/defaultpixmapresolution

wherethedefaultpixmapresolutionistheXmNdefaultPixmapResolutionresourceofthePrintShell,andtheprinterresolutionisfetchedbythePrintShell
usingXpextensionstocommunicatewiththeXPrintserver.ThedefaultvalueofthePrintShellXmNdefaultPixmapResolutionresourceis100.Atpresent,
anyresolutionspecifiedwithinthepixmapfileitselfiscurrentlyignored,althoughitisintendedthatthisshouldtakeprecedenceoveranyPrintShellsetting.
Althoughotherwisefullydocumented,thefunctiondoesnothaveafunctionalprototypeinanyofthesuppliedpublicheaderfiles.
SeeAlso
XmDestroyPixmap(1),XmGetPixmapByDepth(1),XmPrintShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page175

XmGetSecondaryResourceData
XmWidgetInternals
Name
XmGetSecondaryResourceDataretrievesecondarywidgetresourcedata.
Synopsis
CardinalXmGetSecondaryResourceData(widget_class,
secondary_data_return)
WidgetClasswidget_class
XmSecondaryResourceData**secondary_data_return

Inputs
widget_class

Specifiesthewidgetclass.

Outputs
secondary_data_return

ReturnsanarrayofXmSecondaryResourceDatapointers.

Returns
Thenumberofsecondaryresourcedatastructuresassociatedwiththewidgetclass.
Availability
Motif1.2andlater.
Description
XmGetSecondaryResourceData()providesaccesstothesecondarywidgetresourcedataassociatedwithawidgetclass.SomeMotifwidgetclasses
haveresourcesthatarenotaccessiblewiththefunctionsXtGetResourceList()andXtGetConstraintResourceList().Ifthespecified
widget_classhassecondaryresources,XmGetSecondaryResourceDataprovidesdescriptionsoftheresourcesinoneormoredatastructuresand
returnsthenumbersuchstructures.Ifthewidget_classdoesnothavesecondaryresources,theroutinereturns0(zero)andthevalueof
secondary_data_returnisundefined.
Ifthewidget_classhassecondaryresources,XmGetSecondaryResourceDataallocatesanarrayofpointerstothecorrespondingdatastructures.
TheapplicationisresponsibleforfreeingtheallocatedmemoryusingXtFree().Theresourcelistineachstructure(thevalueoftheresourcesfield),thestructures,
andthearrayofpointerstothestructuresallneedtobefreed.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page176

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
XmGetSecondaryResourceData()onlyreturnsthesecondaryresourcesforawidgetclassiftheclasshasbeeninitialized.Youcaninitializeawidgetclass
bycreatinganinstanceoftheclassoranyofitssubclass.VendorShellandTextaretwoMotifwidgetclassesthathavesecondaryresources.Thetwofieldsinthe
XmSecondaryResourceDatastructurethatareofinteresttoanapplicationareresourcesandnum_resources.Thesefieldscontainalistofthe
secondaryresourcesandthenumberofsuchresources.
Mostapplicationsdonotneedtoqueryawidgetclassfortheresourcesitsupports.XmGetSecondaryResourceData()isintendedtosupportinterface
buildersandapplicationslikeeditresthatallowausertoviewtheavailableresourcesandsettheminteractively.UseXtGetResourceList()and
XtGetConstraintResourceList()togettheregularandconstraintresourcesforawidgetclass.
Example
ThefollowingcodefragmentshowstheuseofXmGetSecondaryResourceData()toprintthenamesofthesecondaryresourcesoftheVendorShell
widget:
XmSecondaryResourceData*res
Cardinalnum_res,i,j

if(num_res=XmGetSecondaryResourceData(vendorShellWidgetClass,&res)){
for(i=0i<num_resi++){
for(j=0j<res[i]>num_resourcesj++){
printf("%s",res[i]>resources[j].resource_name)
}
XtFree((char*)res[i]>resources)
XtFree((char*)res[i])
}
XtFree((char*)res)
}

Structures
TheXmSecondaryResourceDatastructureisdefinedasfollows:
typedefstruct{
XmResourceBaseProcbase_proc
XtPointerclient_data
Stringname
Stringres_class
XtResourceListresources
Cardinalnum_resources
}XmSecondaryResourceDataRec,*XmSecondaryResourceData

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page177

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
VendorShell(2),XmText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page178

XmGetTabGroup
XmKeyboardTraversal
Name
XmGetTabGroupgetthetabgroupforawidget.
Synopsis
WidgetXmGetTabGroup(widget)
Widgetwidget

Inputs
widget

Specifiesthewidgetwhosetabgroupistobereturned.

Returns
ThewidgetIDofthetabgroupofwidget.
Availability
Motif1.2andlater.
Description
XmGetTabGroup()returnsthewidgetIDofthewidgetthatisthetabgroupforthespecifiedwidget.Ifwidgetisatabgrouporashell,theroutinereturns
widget.Ifwidgetisnotatabgroupandnoancestoruptothenearestshellancestorisatabgroup,theroutinereturnsthenearestshellancestor.Otherwise,
XmGetTabGroup()returnsthenearestancestorofwidgetthatisatabgroup.
Usage
XmGetTabGroup()providesawaytofindoutthetabgroupforaparticularwidgetinanapplication.Atabgroupisagroupofwidgetsthatcanbetraversed
usingthekeyboardratherthanthemouse.Usersmovefromwidgettowidgetwithinasingletabgroupbypressingthearrowkeys,andbetweendifferenttabgroups
bypressingtheTaborShiftTabkeys.Ifthetab_groupwidgetisamanager,itschildrenareallmembersofthetabgroup(unlesstheyaremadeintoseparatetab
groups).Ifthewidgetisaprimitive,itisitsowntabgroup.Certainwidgetsmustnotbeincludedwithotherwidgetswithinatabgroup.Forexample,eachList,
Scrollbar,OptionMenu,ormultilineTextwidgetmustbeplacedinatabgroupbyitself,sincethesewidgetsdefinespecialbehaviorforthearroworTabkeys.
SeeAlso
XmGetFocusWidget(1),XmGetVisibility(1),XmIsTraversable(1),XmProcessTraversal(1),XmManager(2),
XmPrimitive(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page179

XmGetTearOffControl
XmMenus
Name
XmGetTearOffControlgetthetearoffcontrolforamenu.
Synopsis
#include<Xm/RowColumn.h>
WidgetXmGetTearOffControl(menu)
Widgetmenu

Inputs
menu SpecifiestheRowColumnwidgetwhosetearoffcontrolistobe
returned.

Returns
ThewidgetIDofthetearoffcontrolorNULLifnotearoffcontrolexists.
Availability
Motif1.2andlater.
Description
XmGetTearOffControl()retrievesthewidgetIDofthewidgetthatisthetearoffcontrolforthespecifiedmenu.WhentheXmNtearOffModel
resourceofaRowColumnwidgetissettoXmTEAR_OFF_ENABLEDforaPulldownMenuoraPopupMenu,theRowColumncreatesatearoffbuttonforthe
menu.Thetearoffbutton,whichcontainsadashedlinebydefault,isthefirstelementinthemenu.Whenthebuttonisactivated,themenuistornoff.Ifthespecified
menudoesnothaveatearoffcontrol,XmGetTearOffControl()returnsNULL.
Usage
InMotif1.2,aRowColumnthatisconfiguredasaPopupMenuoraPulldownMenusupportstearoffmenus.Whenamenuistornoff,itremainsonthescreenaftera
selectionismadesothatadditionalselectionscanbemade.Thetearoffcontrolisabuttonthathasaseparatorlikeappearance.OnceyouretrievethewidgetIDof
thetearoffcontrol,youcansetresourcestospecifyitsappearance.Youcanspecifyvaluesforthefollowingresources:XmNbackground,
XmNbackgroundPixmap,XmNbottomShadowColor,XmNforeground,XmNheight,XmNmargin,XmNseparatorType,
XmNshadowThickness,andXmNtopShadowColor.Youcanalsosettheseresourcesinaresourcefilebyusingthenameofthecontrol,whichis
TearOffControl.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page180

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmRepTypeInstallTearOffModelConverter(1),XmPopupMenu(2),XmPulldownMenu(2),XmRowColumn(2),
XmSeparator(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page181

XmGetVisibility
XmKeyboardTraversal
Name
XmGetVisibilitydeterminewhetherornotawidgetisvisible.
Synopsis
XmVisibilityXmGetVisibility(widget)
Widgetwidget

Inputs
widget

Specifiesthewidgetwhosevisibilitystateistobereturned.

Returns
XmVISIBILITY_UNOBSCUREDifwidgetiscompletelyvisible,XmVISIBILITY_PARTIALLY_OBSCUREDifwidgetispartiallyvisible,orXm
VISIBILITY_FULLY_OBSCUREDifwidgetisnotvisible.
Availability
Motif1.2andlater.
Description
XmGetVisibility()determineswhetherornotthespecifiedwidgetisvisible.TheroutinereturnsXmVISIBILITY_UNOBSCUREDiftheentire
rectangularareaofthewidgetisvisible.ItreturnsXmVISIBILITY_PARTIALLY_OBSCUREDifapartoftherectangularareaofthewidgetisobscuredbyits
ancestors.XmGetVisibility()returnsXmVISIBILITY_FULLY_OBSCUREDifthewidgetiscompletelyobscuredbyitsancestorsorifitisnotvisible
forsomeotherreason,suchasifitisunmappedorunrealized.
Usage
XmGetVisibility()providesawayforanapplicationtofindoutthevisibilitystateofaparticularwidget.Thisinformationcanbeusedtohelpdetermine
whetherornotawidgetiseligibletoreceivethekeyboardfocus.Inorderforawidgettoreceivethekeyboardfocus,itandallofitsancestorsmustnotbeinthe
processofbeingdestroyedandtheymustbesensitivetoinput.ThewidgetanditsancestorsmustalsohavetheirXmNtraversalOnresourcessettoTrue.If
thewidgetisviewable,whichmeansthatitanditsancestorsaremanaged,mapped,andrealizedandsomepartofthewidgetisvisible,thenthewidgetiseligibleto
receivethekeyboardfocus.AfullyobscuredwidgetisnoteligibletoreceivethefocusunlesspartofitiswithintheworkareaofaScrolledWindowwithan
XmNscrollingPolicyofXmAUTOMATICthathasanXmNtraverseObscuredCallback.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page182

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Structures
XmVisibilityisdefinedasfollows:
typedefenum{
XmVISIBILITY_UNOBSCURED,
XmVISIBILITY_PARTIALLY_OBSCURED,
XmVISIBILITY_FULLY_OBSCURED
}XmVisibility

SeeAlso
XmGetFocusWidget(1),XmGetTabGroup(1),XmIsTraversable(1),XmProcessTraversal(1),XmManager(2),
XmScrolledWindow(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page183

XmGetXmDisplay
XmDisplay
Name
XmGetXmDisplaygettheDisplayobjectforadisplay.
Synopsis
WidgetXmGetXmDisplay(display)
Display*display

Inputs
display SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

Returns
TheDisplayobjectforthedisplay.
Availability
Motif1.2andlater.
Description
XmGetXmDisplay()retrievestheDisplayobjectforthespecifieddisplay.
Usage
InMotif1.2andlater,theDisplayobjectstoresdisplayspecificinformationforusebythetoolkit.AnapplicationhasaDisplayobjectforeachdisplayitaccesses.
Whenanapplicationcreatesitsfirstshellonadisplay,typicallybycallingXtAppInitialize()orXtAppCreateShell(),aDisplayobjectiscreated
automatically.ThereisnowaytocreateaDisplayindependently.UseXmGetXmDisplay()togettheIDoftheDisplayobject,sothatyoucanuse
XtGetValues()andXtSetValues()toaccessandmodifyDisplayresources.
SeeAlso
XmDisplay(2),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page184

XmGetXmScreen
XmScreen
Name
XmGetXmScreengettheScreenobjectforascreen.
Synopsis
WidgetXmGetXmScreen(screen)
Screen*screen

Inputs
screen

SpecifiesascreenonadisplayreturnedbyXtScreen().

Returns
TheScreenobjectforthescreen.
Availability
Motif1.2andlater.
Description
XmGetXmScreen()retrievestheScreenobjectforthespecifiedscreen.
Usage
InMotif1.2andlater,theScreenobjectstoresscreenspecificinformationforusebythetoolkit.AnapplicationhasaScreenobjectforeachscreenthatitaccesses.
Whenanapplicationcreatesitsfirstshellonascreen,typicallybycallingXtAppInitialize()orXtAppCreateShell(),aScreenobjectiscreated
automatically.ThereisnowaytocreateaScreenindependently.UseXmGetXmScreen()togettheIDoftheScreenobject,sothatyoucanuse
XtGetValues()andXtSetValues()toaccessandmodifyScreenresources.
SeeAlso
XmDisplay(2),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page185

XmIm
XmInputMethods
Name
XmImintroductiontoinputmethods.
Synopsis
PublicHeader:

<Xm/XmIm.h>

Functions/Macros: XmImCloseXIM(),XmImFreeXIC(),XmImGetXIC
(),XmImGetXIM(),XmImMbLookupString(),
XmImMbResetIC(),XmImRegister(),
XmImSetFocusValues(),XmImSetValues(),
XmImSetXIC(),XmImUnregister(),
XmImUnsetFocus(),XmImVaSetFocusValues(),
XmImVaSetValues()

Availability
Motif1.2andlater.
Description
Manylanguagesareideographicandhaveconsiderablymorecharactersthantherearekeysonthekeyboard.TheQWERTYkeyboardisnotdesignedforlanguages
thatarenotbasedupontheLatinalphabet.Inordertoprovideamappingbetweenthealphabetandthekeyboardforideographiclanguages,itisnecessaryto
representparticularcharacterswithakeysequence,ratherthanasinglekeystroke.AninputmethodisthemeansbywhichXmapsbetweenthecharactersofthe
languageandtherepresentativekeysequences.Themostcommonuseofaninputmethodisinimplementinglanguageindependenttextwidgetinput.Astheuser
typesakeysequence,theinputmethoddisplaystheactualkeystrokesuntilthesequencecompletesacharacter,atwhichpointtherequiredcharacterisdisplayedin
thetextwidget.Theprocessofcomposingacharacterfromakeysequenceiscalledpreediting.
Inordertofacilitatepreediting,theinputmethodmaymaintainseveralareasonthescreen:astatusarea,apreeditarea,andanauxiliaryarea.Thestatusareaisan
outputonlywindowthatprovidesfeedbackontheinteractionwiththeinputmethod.Thepreeditareadisplaysthekeysequenceasitistyped.Theauxiliaryareacan
usedforpopupmenusorothercustomizedcontrolsrequiredbytheparticularinputmethod.Thelocationofthepreeditareaisdeterminedbythe
XmNpreeditTyperesourceofVendorShell.ThevalueOnTheSpotdisplaysthekeysequenceasitistypedintothedestinationtextwidgetitself.
OverTheSpotsuperimposesaneditingwindowoverthetopofthetextwidget.OffTheSpotcreatesadedicatededitingwindow,usuallyatthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page186

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

bottomofthedialog.Rootusesapreeditwindowthatisachildoftherootwindowofthedisplay.
Tocontroltheinteractionbetweentheapplicationandtheinputmethod,Xdefinesastructurecalledaninputcontextthatyoucanfetchandmanipulatewherethe
needarises.Eachwidgetregisteredwiththeinputmethodhasanassociatedinputcontext,whichmayormaynotbesharedamongtheregisteredwidgets.Motif
extendsthemechanismsprovidedbythelowerlevelXlibrariesandprovidesacachingmechanismwherebyinputcontextsaresharedbetweenwidgets.
Usage
Inputmethodsareusuallysuppliedbyhardwarevendors.Anapplicationgenerallyconnectstoaninputmethodwithoutyourneedingtodoanyspecialcodingthe
Motifwidgetsarefullycapableofconnectingtoaninputmethodwhenrequired.AlthoughMotifprovidesafunctionalinterfacetoenableyoutointeractwithaninput
method,theinterfaceisnotrequiredfortheMotifwidgets.Theexceptionsarewhenyouarewritingnewwidgetsorwhenyouneedinternationalizedinputfora
DrawingArea.
XmImRegister()registersawidgetwithaninputmethod.XmImSetValues()manipulatesaninputcontextbyregisteringcallbacksthatrespondtospecific
states.XmImSetFocusValues()issimilar,exceptthataftertheinputcontexthasbeenmodified,thefocusisresettothewidgetprovidingtheinput.
XmImMbLookupString()performsthenecessarykeysequencetocharactertranslationonbehalfoftheinputwidget.XmImUnregister()unregisters
thewidgetwiththeinputmethod.Typically,XmImRegister()iscalledwithintheInitializemethodofawidget,XmImUnregister()iscalledby
theDestroymethod,andXmImMbLookupString()iscalledwithinanactionorcallbackroutineofthewidgetinresponsetoanevent.Thesearethe
primaryfunctionsthatyoumayneedtocalltheyareallthatarerequiredtoimplementinternationalizedinputfortheMotiftextwidget.
NotethataninputmethoddoesnotneedtosupportallstylesofXmNpreeditType.
SeeAlso
XmImCloseXIM(1),XmImFreeXIC(1),XmImGetXIC(1),XmImGetXIM(1),XmImMbLookupString(1),XmImMbResetIC
(1),XmImRegister(1),XmImSetFocusValues(1),XmImSetValues(1),XmImSetXIC(1),XmImUnregister(1),
XmImUnsetFocus(1),XmImVaSetFocusValues(1),XmImVaSetValues(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page187

XmImCloseXIM
XmInputMethods
Name
XmImCloseXIMcloseallinputcontexts.
Synopsis
#include<Xm/XmIm.h>
voidXmImCloseXIM(widget)
Widgetwidget

Inputs
widget

Specifiesawidgetusedtodeterminethedisplayconnection.

Availability
Motif2.0andlater.
Description
XmImCloseXIM()isaconveniencefunctionthatclosesallinputcontextsassociatedwiththecurrentinputmethod.Thewidgetparameterisusedtoidentify
theXmDisplayobjectoftheapplication.
Usage
XmImCloseXIM()usesthewidgetparametertodeducetheinputmethodassociatedwiththeXmDisplayobject.Theapplication'sconnectiontotheinput
methodisclosed,andallwidgetsthatareregisteredwithanyinputcontextassociatedwiththeinputmethodareunregistered.Inordertoclosetheinputcontext
associatedwithasinglewidget,ratherthanclosingdownallconnections,useXmImUnregister().
TheMotifwidgetsinternallyregisterandunregisterthemselveswiththeinputmanagerusingXmImRegister()andXmImUnregister()asrequired.The
VendorShellcallsXmImCloseXIM()withinitsDestroymethodoncethelastVendorShellisdestroyed,inordertocleanuptheconnectiontotheinput
method.AnapplicationthatdynamicallyswitchesbetweeninputmethodsinamultilanguageapplicationmayneedtoinvokeXmImCloseXIM()asMotifonly
supportsasingleinputmethodatatime.ApplicationprogrammersdonotnormallyneedtouseXmImCloseXIM()directly.
SeeAlso
XmIm(1),XmImRegister(1),XmImUnregister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page188

XmImFreeXIC
XmInputMethods
Name
XmImFreeXICfreeaninputcontext.
Synopsis
#include<Xm/XmIm.h>
voidXmImFreeXIC(widget,xic)
Widgetwidget
XICxic

Inputs
widget

Specifiesawidgetfromwhichtheinputcontextregistryisdeduced.

xic

Specifiestheinputcontextthatistobefreed.

Availability
Motif2.0andlater.
Description
XmImFreeXIC()isaconveniencefunctionthatunregistersallwidgetsassociatedwiththeinputcontextxicandthenfreestheinputcontext.
Usage
XmImFreeXIC()usesthewidgetparametertodeduceanancestoralVendorShell,fromwhichtheXinputcontextregistryisfound.Allwidgetsassociated
withtheinputcontextxicwithintheregistryareunregistered,andtheinputcontextisfreed.
SeeAlso
XmIm(1),XmImGetXIC(1),XmImRegister(1),XmImSetXIC(1),XmImUnregister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page189

XmImGetXIC
XmInputMethods
Name
XmImGetXICcreateaninputcontextforawidget.
Synopsis
#include<Xm/XmIm.h>
XICXmImGetXIC(widget,input_policy,arglist,argcount)
Widgetwidget
XmInputPolicyinput_policy
ArgListarglist
Cardinalargcount

Inputs
widget

Specifiesawidgetforwhichtheinputcontextisrequired.

input_policy

Specifiesthepolicyforcreatinginputcontexts.

arglist

Specifiesalistofargumentsconsistingofname/valuepairs.

argcount

Specifiesthenumberofargumentsinarglist.

Returns
Theinputcontextassociatedwithwidget.
Availability
Motif2.0andlater.
Description
XmImGetXIC()createsandregistersanewinputcontextforawidget,dependingupontheinput_policy.Ifinput_policyisXmPER_WIDGET,
anewinputcontextiscreatedforthewidget.IfthevalueisXmPER_SHELL,anewinputcontextiscreatedonlyifaninputcontextassociatedwiththeancestoral
shellofwidgetdoesnotalreadyexist.Otherwisethewidgetisregisteredwiththeexistinginputcontext.IfthepolicyisXmINHERIT_POLICY,theinputpolicy
isinheritedbytakingthevalueoftheXmNinputPolicyresourcefromthenearestancestoralVendorShell.
Thesetofattributesfortheinputcontextisspecifiedthroughtheresourcelistarglist,whereeachelementofthelistisastructurethatcontainsaname/valuepair.
Thenumberofelementswithinthelistisgivenbyargcount.Thename/valuepairsarepassedthroughtothefunctionXCreateIC()iftheinputcontextis
created.XmImGetXIC()returnseitherthenewlycreatedinputcontextiftheinputpolicyisXmPER_WIDGETorthesharedcontext.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page190

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
InMotif1.2,thesupportedattributesforconfiguringacreatedinputcontextareXmNbackground,XmNforeground,XmNbackgroundPixmap,
XmNspotLocation,XmNfontList,andXmNarea.InMotif2.0andlater,thelistisextendedtoincludetheXmNpreeditCaretCallback,
XmNpreeditDoneCallback,XmNpreeditDrawCallback,andXmNpreeditStartCallbackresources.SeetheXCreateIC()entry
inVolumeTwo,XlibReferenceManual,fortheinterpretationofeachoftheresourcetypes.XmImGetXIC()allocatesstorageassociatedwiththecreatedinput
context,anditistheresponsibilityoftheprogrammertoreclaimthespaceatasuitablepointbycallingXmImFreeXIC().
Structures
TheenumeratedtypeXmInputPolicyhasthefollowingpossiblevalues:
XmINHERIT_POLICY
XmPER_WIDGET
XmPER_SHELL

SeeAlso
XmIm(1),XmImFreeXIC(1),XmImSetXIC(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page191

XmImGetXIM
XmInputMethods
Name
XmImGetXIMretrievetheinputmethodforawidget.
Synopsis
#include<Xm/XmIm.h>
XIMXmImGetXIM(widget)
Widgetwidget

Inputs
widget

Specifiesawidgetregisteredwiththeinputmanager.

Returns
Theinputmethodassociatedwithwidget.
Availability
Motif1.2andlater.
Description
XmImGetXIM()returnsapointertoanopaquedatastructurethatrepresentstheinputmethodthattheinputmanagerhasopenedforthespecifiedwidget.
Usage
WidgetsarenormallyregisteredwiththeinputmanagerthroughacalltoXmImRegister().Ifnoinputmethodisassociatedwiththewidget,theprocedure
usesanyspecifiedXmNinputMethodresourceofthenearestancestoralVendorShellinordertoopenaninputmethod.IftheresourceisNULL,theinputmethod
associatedwiththecurrentlocaleisopened.Ifnoinputmethodcanbeopened,thefunctionreturnsNULL.
XmImGetXIM()allocatesstoragefortheopaquedatastructurethatisreturned,anditistheresponsibilityoftheprogrammertoreclaimthespacebyacallto
XmImCloseXIM()atasuitablepoint.XmImGetXIM()isnotaprocedurethatanapplicationprogrammerneedstouse:theroutineisofmoreusetowidget
programmers.
SeeAlso
XmIm(1),XmImRegister(1),XmImCloseXIM(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page192

XmImMbLookupString
XmInputMethods
Name
XmImMbLookupStringretrieveacomposedstringfromaninputmethod.
Synopsis
#include<Xm/XmIm.h>
intXmImMbLookupString(widget,event,buffer,num_bytes,
keysym,status)
Widgetwidget
XKeyPressedEvent*event
char*buffer
intnum_bytes
KeySym*keysym
int*status

Inputs
widget

Specifiesawidgetregisteredwiththeinputmanager.

event

Specifiesakeypressevent.

num_bytes

Specifiesthelengthofthebufferarray.

Outputs
buffer

Returnsthecomposedstring.

keysym

Returnsanykeysymassociatedwiththeinputkeyboardevent.

status

Returnsthestatusofthelookup.

Returns
Thelengthofthecomposedstringinbytes.
Availability
Motif1.2andlater.
Description
XmImMbLookupString()translatesaneventintoacomposedcharacterand/orakeysym,usingtheinputcontextassociatedwithagivenwidget.Any
composedstringthatcanbededucedfromtheeventisplacedinbufferthecomposedstringconsistsofmultibytecharactersintheencodingofthelocaleof
theinputcontext.Ifakeysymisassociatedwiththeevent,thisisreturnedattheaddressspecifiedbykeysym.Thefunctionreturnsthenumberofbytesplaced
intobuffer.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page193

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
AwidgetisregisteredwithaninputmethodthroughthefunctionXmImRegister().Ifnoinputcontextisassociatedwiththewidget,thefunctionuses
XLookupString()tomapthekeyeventintocomposedtext.Otherwise,thefunctioncallsXmbLookupString()withtheinputcontextasthefirst
parameter.Iftheprogrammerisnotinterestedinkeysymvalues,aNULLvaluecanbepassedasthekeysymparameter.XmImMbLookupString()places
intobufferanycomposedcharacterstringassociatedwiththekeyevent.Iftheeventatthegivenpointintheinputsequencedoesnotsignifyauniquecharacterin
thelanguageofthecurrentlocale,thefunctionreturnszero:subsequentkeyeventsmayberequiredbeforeacharacteriscomposed.
Structures
ThepossiblevaluesreturnedinstatusarethesameasthosereturnedfromXmbLookupString().SeeVolumeTwo,XlibReferenceManual,forafull
descriptionandinterpretationofthevalues:
XBufferOverflow/*buffersizeinsufficienttoholdcomposedsequence*/
XLookupNone/*nocharactersequencematchingtheinputexists*/
XLookupChars/*inputcharacterswerecomposed*/
XLookupKeysym/*inputiskeysymratherthancomposedcharacter*/
XLookupBoth/*bothakeysymandcomposedcharacterarereturned*/

SeeAlso
XmIm(1),XmImRegister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page194

XmImMbResetIC
XmInputMethods
Name
XmImMbResetICresetaninputcontext.
Synopsis
#include<Xm/XmIm.h>
voidXmImMbResetIC(widget,mb_text)
Widgetwidget
char**mb_text

Inputs
widget

Specifiesawidgetregisteredwiththeinputmanager.

Outputs
mb_text

Returnspendinginputontheinputcontext.

Availability
Motif2.0andlater.
Description
XmImMbResetIC()resetstheinputcontextassociatedwithawidget.
Usage
XmImMbResetIC()isaconveniencefunctionthatresetsaninputcontexttotheinitialstate.Thefunctionisnomorethanawrapperontothefunction
XmbResetIC()(seeVolumeTwo,XlibReferenceManual),whichclearsthepreeditareaandupdatesthestatusareaoftheinputcontext.Thereturnvalueof
XmbResetIC()isplacedintotheaddressspecifiedbymb_text.Thisdataisimplementationdependent,andmaybeNULL.Ifdataisreturned,the
programmerisresponsibleforfreeingitbycallingXFree().
SeeAlso
XmIm(1),XmImRegister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page195

XmImRegister
XmInputMethods
Name
XmImRegisterregisterawidgetwithaninputmanager.
Synopsis
#include<Xm/XmIm.h>
voidXmImRegister(widget,reserved)
Widgetwidget
unsignedintreserved

Inputs
widget

Specifiesawidgettoregisterwiththeinputmanager.

reserved

Thisparameteriscurrentlyunused.

Availability
Motif1.2andlater.
Description
XmImRegister()isaconveniencefunctionthatregistersawidgetwiththeinputmanagertoestablishaconnectiontothecurrentinputmethod.Thefunctionis
calledwhenanapplicationneedstospeciallyarrangeforinternationalizedinputtoawidget.
Usage
TheMotifwidgetsinternallyregisterthemselveswiththeinputmanagerasrequired.YouonlyneedtocallXmImRegister()directlyifyouarewritinganew
widgetorrequireinternationalizedinputforaDrawingArea.IftheVendorShellancestorcontainingthewidgetalreadyhasanassociatedinputcontext,thefunction
simplyreturns.Otherwise,theXmNinputPolicyresourceofthenearestVendorShellancestorisfetchedtodeterminewhethertoshareanexistinginputcontext.
ThefunctionopensaninputmethodbyinspectingtheXmNinputMethodresourceoftheVendorShell.IftheresourceisNULL,adefaultinputmethodisopened
usinginformationfromthecurrentlocale.XmImRegister()shouldnotbecalledtwiceusingthesamewidgetwithoutfirstunregisteringthewidgetfromthe
initialinputmethod.
TheprogrammerisresponsibleforclosingdowntheconnectiontotheinputmethodbycallingXmImUnregister().TheDestroymethodofthewidgetisan
appropriateplacetocallthis.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page196

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmIm(1),XmImUnregister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page197

XmImSetFocusValues
XmInputMethods
Name
XmImSetFocusValuessetthevaluesandfocusforaninputcontext.
Synopsis
#include<Xm/XmIm.h>
voidXmImSetFocusValues(widget,arglist,argcount)
Widgetwidget
ArgListarglist
Cardinalargcount

Inputs
widget

Specifiesawidgetregisteredwiththeinputmanager.

arglist

Specifiesalistofresourcesconsistingofname/valuepairs.

argcount

Specifiesthenumberofargumentsinarglist.

Availability
Motif1.2andlater.
Description
XmImSetFocusValues()notifiestheinputmanagerthatawidgethasreceivedtheinputfocus.Ifthepreviousvaluesoftheinputcontextassociatedwith
thewidgetdonotallowthecontexttobereused,theoldcontextisunregisteredandanewoneregisteredwiththewidget.
Usage
XmImSetFocusValues()isidenticalinallrespectstoXmImSetValues(),exceptthataftertheinputcontexthasbeenreset,thefocuswindowattribute
oftheinputcontextissettothewindowoftheinputwidget.
TheMotifwidgetsinvokeXmImSetFocusValues()whennecessary.Forexample,theTextandTextFieldwidgetsautomaticallyinvoke
XmImSetFocusValues()inresponsetoFocusInandEnterNotifyevents.AprogrammerwhoisimplementinginternationalizedinputforaDrawingAreaor
creatinganewwidgetmayneedtocallthisfunctionwhenthewidgetreceivestheinputfocus.
SeeAlso
XmIm(1),XmImRegister(1),XmImSetValues(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page198

XmImSetValues
XmInputMethods
Name
XmImSetValuessetthevaluesforaninputcontext.
Synopsis
#include<Xm/XmIm.h>
voidXmImSetValues(widget,arglist,argcount)
Widgetwidget
ArgListarglist
Cardinalargcount

Inputs
widget

Specifiesawidgetregisteredwiththeinputmanager.

arglist

Specifiesalistofresourcesconsistingofname/valuepairs.

argcount

Specifiesthenumberofargumentsinarglist.

Availability
Motif1.2andlater.
Description
XmImSetValues()setstheattributesfortheinputcontextassociatedwiththespecifiedwidget.Thesetofattributestobemodifiedisspecifiedthroughthe
resourcelistarglist,whereeachelementofthelistisastructurethatcontainsaname/valuepair.Thenumberofelementswithinthelistisgivenbyargcount.
Usage
XmImSetValues()isaconvenienceroutinewhichinvokesXSetICValues()inordertoconfigureaninputcontext.SeeVolumeTwo,XlibReference
Manual,forthesetofattributessupportedbyXSetICValues()andfortheirinterpretation.
TheMotifwidgetsinvokeXmImSetValues()whennecessary.Forexample,theTextandTextFieldwidgetsautomaticallyinvokeXmImSetValues()
whenthewidgetisresizedorthefontchanged.AprogrammerwhoisimplementinginternationalizedinputforaDrawingAreaorcreatinganewwidgetmayneedto
callthisfunctionwhen,forexample,thewidgetneedstoreconfigurethespotlocation.
SeeAlso
XmIm(1),XmImSetFocusValues(1),XmImRegister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page199

XmImSetXIC
XmInputMethods
Name
XmImSetXICregisterawidgetwithanexistinginputcontext.
Synopsis
#include<Xm/XmIm.h>
XICXmImSetXIC(widget,xic)
Widgetwidget
XICxic

Inputs
widget

Specifiesawidgettoberegisteredwiththeinputcontext.

xic

Specifiesaninputcontextwherethewidgetistoberegistered.

Returns
Theinputcontextwherethewidgetisregistered.
Availability
Motif2.0andlater.
Description
XmImSetXIC()isaconveniencefunctionthatregistersawidgetwithaninputcontext.Ifthewidgetisregisteredwithanotherinputcontext,thewidgetisfirstly
unregisteredwiththatcontext.Thewidgetisthenregisteredwiththeinputcontextxic.IfxicisNULL,thefunctioncreatesanewinputcontextandregistersthe
widgetwithit.Thefunctionreturnstheinputcontextwherethewidgetisregistered.
Usage
XmImSetXIC()allocatesstoragewhenitcreatesanewinputcontext,anditistheresponsibilityoftheprogrammertofreethespaceatanappropriatepointby
callingXmImFreeXIC().
SeeAlso
XmIm(1),XmImFreeXIC(1),XmImRegister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page200

XmImUnregister
XmInputMethods
Name
XmImUnregisterunregistertheinputcontextforawidget.
Synopsis
#include<Xm/XmIm.h>
voidXmImUnregister(widget)
Widgetwidget

Inputs
widget

Specifiesawidgetwhoseinputcontextistobeunregistered.

Availability
Motif1.2andlater.
Description
XmImUnregister()isaconveniencefunctionthatunregisterstheinputcontextassociatedwithagivenwidget.Thefunctionistheinverseof
XmImRegister(),whichiscalledwhenanapplicationneedstospeciallyarrangeforinternationalizedinputtoawidget.
Usage
TheMotifwidgetsinternallyregisterthemselveswiththeinputmanagerasrequired.Onlyaprogrammerwhoiswritinganewwidget,orwhorequiresinternationalized
inputforaDrawingArea,needstocallXmImRegister()directly.WhereXmImRegister()hasbeencalledbytheapplication,itistheresponsibilityofthe
programmertoalsocallXmImUnregister(),usuallywithintheDestroymethodofthewidgetforwhichinternationalizedinputisrequired.
XmImUnregister()usesthewidgetparametertodeducetheinputmethodassociatedwithadisplayconnection.Anyinputcontextassociatedwiththeinput
methodisunregistered.
SeeAlso
XmIm(1),XmImRegister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page201

XmImUnsetFocus
XmInputMethods
Name
XmImUnsetFocusunsetfocusforinputcontext.
Synopsis
#include<Xm/XmIm.h>
voidXmImUnsetFocus(widget)
Widgetwidget

Inputs
widget

Specifiesawidgetthathaslosttheinputfocus.

Availability
Motif1.2andlater.
Description
XmImUnsetFocus()notifiestheinputmanagerthatawidgethaslosttheinputfocus.
Usage
XmImUnsetFocus()isaconvenienceroutinethatinvokesXUnsetICFocus()usingtheinputcontextassociatedwiththespecifiedwidget.Theinput
methodisnotifiedthatnomoreinputisexpectedfromthewidget.
TheMotifwidgetsinvokeXmImUnsetFocus()whennecessary.Forexample,theTextandTextFieldwidgetsautomaticallyinvokeXmUnsetFocus()in
responsetoFocusOutandLeaveNotifyevents.AprogrammerwhoisimplementinginternationalizedinputforaDrawingAreaorcreatinganewwidgetmayneedto
callthisfunctionwhenthewidgetlosestheinputfocus.
SeeAlso
XmIm(1),XmImSetFocusValues(1),XmImVaSetFocusValues(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page202

XmImVaSetFocusValues
XmInputMethods
Name
XmImVaSetFocusValuessetthevaluesandfocusforaninputcontext.
Synopsis
#include<Xm/XmIm.h>
voidXmImVaSetFocusValues(widget,...,NULL)
Widgetwidget

Inputs
widget

Specifiesawidgetregisteredwiththeinputmanager.

...,NULL

ANULLterminatedvariablelengthlistofresourcename/valuepairs.

Availability
Motif1.2andlater.
Description
XmImVaSetFocusValues()notifiestheinputmanagerthatawidgethasreceivedtheinputfocus.Ifthepreviousvaluesoftheinputcontextassociatedwith
thewidgetdonotallowthecontexttobereused,theoldcontextisunregisteredandanewoneregisteredwiththewidget.
Usage
XmImVaSetFocusValues()issimplyaconvenienceroutinewithavariablelengthargumentlistthatconstructsinternalarglistandargcount
parameterstoaXmImSetFocusValues()call.
SeeAlso
XmImSetFocusValues(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page203

XmImVaSetValues
XmInputMethods
Name
XmImVaSetValuessetthevaluesforaninputcontext.
Synopsis
#include<Xm/XmIm.h>
voidXmImVaSetValues(widget,...,NULL)
Widgetwidget

Inputs
widget

Specifiesawidgetregisteredwiththeinputmanager.

...,NULL

ANULLterminatedvariablelengthlistofresourcename/valuepairs.

Availability
Motif1.2andlater.
Description
XmImSetValues()setstheattributesfortheinputcontextassociatedwiththespecifiedwidget.
Usage
XmImVaSetValues()issimplyaconvenienceroutinewithavariablelengthargumentlistthatconstructsinternalarglistandargcountparameterstoa
XmImSetValues()call.
SeeAlso
XmImSetValues(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page204

XmInstallImage
XmPixmaps
Name
XmInstallImageinstallanimageintheimagecache.
Synopsis
BooleanXmInstallImage(image,image_name)
XImage*image
char*image_name

Inputs
image

Specifiestheimagetobeinstalled.

image_name

Specifiesthestringnameoftheimage.

Returns
TrueonsuccessorFalseifimageorimage_nameisNULLorimage_nameduplicatesanimagenamealreadyinthecache.
Description
XmInstallImage()installsthespecifiedimageintheimagecache.Theimagecanlaterbeusedtocreateapixmap.Whentheroutineinstallstheimage,it
doesnotmakeacopyoftheimage,soanapplicationshouldnotdestroytheimageuntilithasbeenuninstalled.Theroutinealsoexpandstheresourceconverterthat
handlesimagessothatimage_namecanbeusedinaresourcefile.Inordertoallowreferencesfromaresourcefile,XmInstallImage()mustbecalledto
installanimagebeforeanywidgetsthatusetheimagearecreated.
Usage
AnapplicationcanuseXmInstallImage()toinstallandcacheimages,sothattheimagescanbesharedthroughouttheapplication.Onceanimageisinstalled,
itcanbeusedtocreateapixmapwithXmGetPixmap().Thetoolkitprovidesthefollowingpreinstalledimagesthatcanbereferencedinaresourcefileorusedto
createapixmap:
ImageName

ImageDescription

background

Solidbackgroundtile

25_foreground

A25%foreground,75%backgroundtile

50_foreground

A50%foreground,50%backgroundtile

75_foreground

A75%foreground,25%backgroundtile

horizontal_tile

Horizontallinestile(Motif1.2.3andlater)

vertical_tile

Verticallinestile(Motif1.2.3andlater)

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page205

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ImageName

ImageDescription

horizontal

Sameashorizontal_tile(maintainedfor1.2.2compatibility)

vertical

Sameasvertical_tile(maintainedfor1.2.2compatibility)

slant_right

Rightslantinglinestile

slant_left

Leftslantinglinestile

menu_cascade

Anarrowpointingtotheright(Motif2.0andlater)

menu_cascade_rtol

Anarrowpointingtotheleft(Motif2.0andlater)

menu_checkmark

Atickmark(Motif2,0andlater)

menu_dash

Ahorizontalline(Motif2.0andlater)

collapsed

Afilledarrowpointingtotheright(Motif2.0andlater)

collapsed_rtol

Afilledarrowpointingtotheleft(Motif2.0andlater)

expanded

Afilledarrowpointingdownwards(Motif2.0andlater)

Example
Youmightusethefollowingcodetodefineandinstallanimage:
#definebitmap_width16
#definebitmap_height16
staticcharbitmap_bits[]={
0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,
0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,
0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,
0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF
}
staticXImageximage={
bitmap_width,/*width*/
bitmap_height,/*height*/
0,/*xoffset*/
XYBitmap,/*format*/
bitmap_bits,/*data*/
MSBFirst,/*byte_order*/
8,/*bitmap_unit*/
LSBFirst,/*bitmap_bit_order*/
8,/*bitmap_pad*/
1,/*depth*/
2,/*bytes_per_line*/
NULL/*obdata*/
}
XmInstallImage(&ximage,"image_name")

SeeAlso
XmDestroyPixmap(1),XmGetPixmap(1),XmUninstallImage(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page206

XmInternAtom
XmAtoms
Name
XmInternAtomreturnanatomforagivenpropertynamestring.
Synopsis
#include<Xm/AtomMgr.h>
AtomXmInternAtom(display,name,only_if_exists)
Display*display
Stringname
Booleanonly_if_exists

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

name

Specifiesthestringnameofthepropertyforwhichyouwanttheatom.

only_if_exists

SpecifiesaBooleanvaluethatindicateswhetherornottheatomis
createdifitdoesnotexist.

Returns
AnatomonsuccessorNone.
Availability
InMotif2.0andlater,XInternAtom()ispreferred.
Description
XmInternAtom()returnstheatomthatcorrespondstothegivenpropertyname.ThisroutineworkslikeXlib'sXInternAtom()routine,buttheMotif
routineprovidestheaddedfeatureofclientsidecaching.Ifnoatomexistswiththespecifiednameandonly_if_existsisTrue,XmInternAtom()
doesnotcreateanewatomitsimplyreturnsNone.Ifonly_if_existsisFalse,theroutinecreatestheatomandreturnsit.
Usage
Anatomisanumberthatidentifiesaproperty.Propertiesalsohavestringnames.XmInternAtom()returnstheatomassociatedwithapropertyifitexists,orit
maycreatetheatomifitdoesnotexist.Theatomremainsdefinedevenaftertheclientthatdefinedithasexited.Anatomdoesnotbecomeundefineduntilthelast
connectionto

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page207

theXservercloses.Predefinedatomsaredefinedin<X11/Xatom.h>andbeginwiththeprefixXA_.Predefinedatomsdonotneedtobeinternedwith
XmInternAtom().
InMotif2.0andlater,XmInternAtom()isnomorethanaconvenienceroutinethatcallsXInternAtom().WhileXmInternAtom()isnotyetofficially
obsolete,XInternAtom()ispreferred.
SeeAlso
XmGetAtomName(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page208

XmIsMotifWMRunning
XmWindowManager
Name
XmIsMotifWMRunningcheckwhethertheMotifWindowManager(mwm)isrunning.
Synopsis
BooleanXmIsMotifWMRunning(shell)
Widgetshell

Inputs
shell

Specifiestheshellwidgetwhosescreenisqueried.

Returns
TrueifmwmisrunningorFalseotherwise.
Description
XmIsMotifWMRunning()checksforthepresenceofthe_MOTIF_WM_INFOpropertyontherootwindowofthescreenofthespecifiedshellto
determinewhethertheMotifWindowManager(mwm)isrunningonthescreen.
Usage
mwmdefinesadditionaltypesofcommunicationbetweenitselfandclientprograms.Thiscommunicationisoptional,soanapplicationshouldnotdependonthe
communicationorthepresenceofmwmforanyfunctionality.XmIsMotifWMRunning()allowsanapplicationtocheckifmwmisrunningandactaccordingly.
SeeAlso
mwm(3).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page209

XmIsObject
XmWidgetClass
Name
XmIsObjectdeterminewhetherawidgetisasubclassofaclass.
Synopsis
#include<Xm/Gadget.h>
BooleanXmIsGadget(widget)

#include<Xm/Manager.h>
BooleanXmIsManager(widget)

#include<Xm/Primitive.h>
BooleanXmIsPrimitive(widget)

#include<Xm/ArrowB.h>
BooleanXmIsArrowButton(widget)

#include<Xm/ArrowBG.h>
BooleanXmIsArrowButtonGadget(widget)

#include<Xm/BulletinB.h>
BooleanXmIsBulletinBoard(widget)

#include<Xm/CascadeB.h>
BooleanXmIsCascadeButton(widget)

#include<Xm/CascadeBG.h>
BooleanXmIsCascadeButtonGadget(widget)

#include<Xm/ComboBox.h>
BooleanXmIsComboBox(widget)

#include<Xm/Command.h>
BooleanXmIsCommand(widget)

#include<Xm/Container.h>
BooleanXmIsContainer(widget)

#include<Xm/DialogS.h>
BooleanXmIsDialogShell(widget)

#include<Xm/Display.h>
BooleanXmIsDisplay(widget)

#include<Xm/DragC.h>
BooleanXmIsDragContext(widget)

#include<Xm/DragIcon.h>
BooleanXmIsDragIconObjectClass(widget)

#include<Xm/DrawingA.h>
BooleanXmIsDrawingArea(widget)

#include<Xm/DrawnB.h>
BooleanXmIsDrawnButton(widget)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page210
#include<Xm/DropSMgr.h>
BooleanXmIsDropSiteManager(widget)

#include<Xm/DropTrans.h>
BooleanXmIsDropTransfer(widget)

#include<Xm/FileSB.h>
BooleanXmIsFileSelectionBox(widget)

#include<Xm/Form.h>
BooleanXmIsForm(widget)

#include<Xm/Frame.h>
BooleanXmIsFrame(widget)

#include<Xm/GrabShell.h>
BooleanXmIsGrabShell(widget)

#include<Xm/IconG.h>
BooleanXmIsIconGadget(widget)

#include<Xm/Label.h>
BooleanXmIsLabel(widget)

#include<Xm/LabelG.h>
BooleanXmIsLabelGadget(widget)

#include<Xm/List.h>
BooleanXmIsList(widget)

#include<Xm/MainW.h>
BooleanXmIsMainWindow(widget)

#include<Xm/MenuShell.h>
BooleanXmIsMenuShell(widget)

#include<Xm/MessageB.h>
BooleanXmIsMessageBox(widget)

#include<Xm/Notebook.h>
BooleanXmIsNotebook(widget)

#include<Xm/PanedW.h>
BooleanXmIsPanedWindow(widget)

#include<Xm/PrintS.h>
BooleanXmIsPrintShell(widget)

#include<Xm/PushB.h>
BooleanXmIsPushButton(widget)

#include<Xm/PushBG.h>
BooleanXmIsPushButtonGadget(widget)

#include<Xm/RowColumn.h>
BooleanXmIsRowColumn(widget)

#include<Xm/Scale.h>
BooleanXmIsScale(widget)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page211
#include<Xm/Screen.h>
BooleanXmIsScreen(widget)

#include<Xm/ScrollBar.h>
BooleanXmIsScrollBar(widget)

#include<Xm/ScrolledW.h>
BooleanXmIsScrolledWindow(widget)

#include<Xm/SelectioB.h>
BooleanXmIsSelectionBox(widget)

#include<Xm/Separator.h>
BooleanXmIsSeparator(widget)

#include<Xm/SeparatoG.h>
BooleanXmIsSeparatorGadget(widget)

#include<Xm/Text.h>
BooleanXmIsText(widget)

#include<Xm/TextF.h>
BooleanXmIsTextField(widget)

#include<Xm/ToggleB.h>
BooleanXmIsToggleButton(widget)

#include<Xm/ToggleBG.h>
BooleanXmIsToggleButtonGadget(widget)

#include<Xm/VendorS.h>
BooleanXmIsVendorShell(widget)

Widgetwidget

Inputs
widget

SpecifiesthewidgetIDofthewidgetwhoseclassistobechecked.

Returns
TrueifwidgetisofthespecifiedclassorFalseotherwise.
Availability
XmIsDisplay(),XmIsDragContext(),XmIsDragIconObjectClass(),XmIsDropSiteManager(),
XmIsDropTransfer(),andXmIsScreen()areavailableinMotif1.2andlater.
XmIsComboBox(),XmIsContainer(),XmIsNotebook(),XmIsIconGadget(),andXmIsGrabShell()areavailableinMotif2.0
andlater.
XmIsPrintShell()isavailableinMotif2.1andlater.NotethatalthoughtheSpinBoxclassisavailableinMotif2.0andSimpleSpinBoxisavailableinMotif
2.1,neitherXmIsSpinBox()norXmIsSimpleSpinBox()aredefined.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page212

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Description
TheXmIs*()routinesaremacrosthatchecktheclassofthespecifiedwidget.ThemacrosreturnsTrueifwidgetisofthespecifiedclassorasubclassof
thespecifiedclass.Otherwise,themacrosreturnFalse.
Usage
AnapplicationcanusetheXmIs*()macrostochecktheclassofaparticularwidget.AllofthemacrosuseXtIsSubclass()todeterminetheclassofthe
widget.
Example
ThemissingmacroXmIsSpinBox()couldbedefinedasfollows:
#include<Xm/SpinB.h>

#ifndefXmIsSpinBox
#defineXmIsSpinBox(w)XtIsSubclass(w,xmSpinBoxWidgetClass)
#endif/*XmIsSpinBox*/

SeeAlso
Section2,MotifandXtWidgetClasses

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page213

XmIsTraversable
XmKeyboardTraversal
Name
XmIsTraversabledeterminewhetherornotawidgetcanreceivethekeyboardfocus.
Synopsis
BooleanXmIsTraversable(widget)
Widgetwidget

Inputs
widget

Specifiesthewidgetwhosetraversibilitystateistobereturned.

Returns
TrueifwidgetiseligibletoreceivethekeyboardfocusorFalseotherwise.
Availability
Motif1.2andlater.
Description
XmIsTraversable()determineswhetherornotthespecifiedwidgetcanreceivethekeyboardfocus.
Usage
Inorderforawidgettoreceivethekeyboardfocus,itandallofitsancestorsmustnotbeintheprocessofbeingdestroyedandtheymustbesensitivetoinput.The
widgetanditsancestorsmustalsohavetheirXmNtraversalOnresourcessettoTrue.Ifthewidgetisviewable,whichmeansthatitanditsancestorsare
managed,mapped,andrealizedandsomepartofthewidgetisvisible,thenthewidgetiseligibletoreceivethekeyboardfocus.Afullyobscuredwidgetisnoteligible
toreceivethefocusunlesspartofitiswithintheworkareaofaScrolledWindowwithanXmNscrollingPolicyofXmAUTOMATICthathasan
XmNtraverseObscuredCallback.
Primitivewidgetsandgadgetscanreceivethekeyboardfocus,whilemostmanagerwidgetscannot,eveniftheyhavetraversablechildren.However,somemanagers
maybeeligibletoreceivethekeyboardfocusundercertainconditions.Forexample,aDrawingAreacanreceivethekeyboardfocusifitmeetstheconditionsabove
anditdoesnothaveanychildrenwiththeXmNtraversalOnresourcesettoTrue.
SeeAlso
XmGetFocusWidget(1),XmGetTabGroup(1),XmGetVisibility(1),XmProcessTraversal(1),XmManager(2),
XmScrolledWindow(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page214

XmListAddItem
XmList
Name
XmListAddItem,XmListAddItemsaddanitem/itemstoalist.
Synopsis
#include<Xm/List.h>
voidXmListAddItem(widget,item,position)
Widgetwidget
XmStringitem
intposition

voidXmListAddItems(widget,items,item_count,position)
Widgetwidget
XmString*items
intitem_count
intposition

Inputs
widget

SpecifiestheListwidget.

item

Specifiestheitemthatistobeadded.

items

Specifiesalistofitemsthataretobeadded.

item_count

Specifiesthenumberofitemstobeadded.

position

Specifiesthepositionatwhichtoaddthenewitem(s).

Description
XmListAddItem()insertsthespecifieditemintothelist,whileXmListAddItems()insertsthespecifiedlistofitems.Ifitem_countissmaller
thanthenumberofitems,onlythefirstitem_countitemsofthearrayareadded.Thepositionargumentspecifiesthelocationofthenewitem(s)inthelist.
Apositionvalueof1indicatesthefirstitem,apositionvalueof2indicatestheseconditem,andsoon.Avalueof0(zero)specifiesthelastiteminthelist.
AninserteditemappearsselectedifitmatchesanitemintheXmNselectedItemslist.
Usage
XmListAddItem()andXmListAddItems()areconvenienceroutinesthatallowyoutoadditemstoalist.Theroutinesadditemstothelistbyinternally
manipulatingthearraysofcompoundstringsspecifiedbytheXmNitems,XmNitemCount,XmNselectedItems,and
XmNselectedItemCountresources.Ifanitembeingaddedtothelistduplicatesanitemthatisalreadyselected,thenewitemappearsasselected.Youshould
onlyusetheseroutinesifthelistsupportsmultipleselectionsand

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page215

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

youwanttoselectthenewitemswhoseduplicatesarealreadyselected.Inordertoadditemswiththeseroutines,youhavetocreateacompoundstringforeachitem.
SeeAlso
XmListAddItemUnselected(1),XmListReplaceItems(1),XmListReplaceItemsPos(1),
XmListReplaceItemsPosUnselected(1),XmListReplacePositions(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page216

XmListAddItemUnselected
XmList
Name
XmListAddItemUnselected,XmListAddItemsUnselectedaddanitem/itemstoalist.
Synopsis
#include<Xm/List.h>
voidXmListAddItemUnselected(widget,item,position)
Widgetwidget
XmStringitem
intposition

voidXmListAddItemsUnselected(widget,items,item_count,position)
Widgetwidget
XmString*items
intitem_count
intposition

Inputs
widget

SpecifiestheListwidget.

item

Specifiestheitemthatistobeadded.

items

Specifiesalistofitemsthataretobeadded.

item_count

Specifiesthenumberofitemstobeadded.

position

Specifiesthepositionatwhichtoaddthenewitem(s).

Availability
XmListAddItemsUnselected()isonlyavailableinMotif1.2andlater.
Description
XmListAddItemUnselected()insertsthespecifieditemintothelist,whileXmListAddItemsUnselected()insertsthespecifiedlistof
items.Ifitem_countissmallerthanthenumberofitems,onlythefirstitem_countitemsofthearrayareadded.Thepositionargumentspecifies
thelocationofthenewitem(s)inthelist.Apositionvalueof1indicatesthefirstitem,apositionvalueof2indicatestheseconditem,andsoon.Avalueof
0(zero)specifiesthelastiteminthelist.Aninserteditemdoesnotappearselected,evenifitmatchesanitemintheXmNselectedItemslist.
Usage
XmListAddItemUnselected()andXmListAddItemsUnselected()areconvenienceroutinesthatallowyoutoadditemstoalist.These
routinesadditemstothe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page217

listbyinternallymanipulatingthearrayofcompoundstringsspecifiedbytheXmNitemsandXmNitemCountresources.Ifanitembeingaddedtothelist
duplicatesanitemthatisalreadyselected,thenewitemdoesnotappearasselected.Inordertoadditemswiththeseroutines,youhavetocreateacompoundstring
foreachitem.
Example
ThefollowingcallbackroutineshowshowtouseofXmListAddItemUnselected()toinsertanitemintoalistinalphabeticalorder:
voidadd_item(text_w,client_data,call_data)
Widgettext_w
XtPointerclient_data
XtPointercall_data
{
char*text,*newtext=XmTextFieldGetString(text_w)
XmStringstr,*strlist
intu_bound,l_bound=0
Widgetlist_w=(Widget)client_data

/*newtextisthetexttypedintheTextFieldwidget*/
if(!newtext||!*newtext){
XtFree(newtext)
return
}

/*getthecurrententries(andnumberofentries)fromtheList*/
XtVaGetValues(list_w,
XmNitemCount,&u_bound,
XmNitems,&strlist,
NULL)
u_bound

/*performbinarysearch*/
while(u_bound>=l_bound){
inti=l_bound+(u_boundl_bound)/2
if(!XmStringGetLtoR(strlist[i],XmFONTLIST_DEFAULT_TAG,&text))
break
if(strcmp(text,newtext)>0)
u_bound=i1
else
l_bound=i+1
XtFree(text)
}

/*insertitematappropriatelocation*/
str=XmStringCreateLocalized(newtext)
XmListAddItemUnselected(list_w,str,l_bound+1)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page218
XmStringFree(str)
XtFree(newtext)
}

SeeAlso
XmListAddItem(1),XmListReplaceItems(1),XmListReplaceItemsPos(1),XmListReplaceItemsPosUnselected
(1),XmListReplaceItemsUnselected(1),XmListReplacePositions(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page219

XmListDeleteAllItems
XmList
Name
XmListDeleteAllItemsdeletealloftheitemsfromalist.
Synopsis
#include<Xm/List.h>
voidXmListDeleteAllItems(widget)
Widgetwidget

Inputs
widget

SpecifiestheListwidget.

Description
XmListDeleteAllItems()removesalloftheitemsfromthespecifiedListwidget.
Usage
XmListDeleteAllItems()isaconvenienceroutinethatallowsyoutoremovealloftheitemsfromalist.Theroutineremovesitemsfromthelistbyinternally
manipulatingthearrayofcompoundstringsspecifiedbytheXmNitemsandXmNitemCountresources.
SeeAlso
XmListDeleteItem(1),XmListDeleteItemsPos(1),XmListDeletePos(1),XmListDeletePositions(1),XmList
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page220

XmListDeleteItem
XmList
Name
XmListDeleteItem,XmListDeleteItemsdeleteanitem/itemsfromalist.
Synopsis
#include<Xm/List.h>
voidXmListDeleteItem(widget,item)
Widgetwidget
XmStringitem

voidXmListDeleteItems(widget,items,item_count)
Widgetwidget
XmString*items
intitem_count

Inputs
widget

SpecifiestheListwidget.

item

Specifiestheitemthatistobedeleted.

items

Specifiesalistofitemsthataretobedeleted.

item_count

Specifiesthenumberofitemstobedeleted.

Description
ListDeleteItem()removesthefirstoccurrenceofthespecifieditemfromthelist,whileXmListDeleteItems()removesthefirstoccurrenceof
eachoftheelementsofitems.Ifanitemdoesnotexist,awarningmessageisdisplayed.
Usage
XmListDeleteItem()andXmListDeleteItems()areconvenienceroutinesthatallowyoutoremoveitemsfromalist.Theroutinesremoveitems
fromthelistbyinternallymanipulatingthearrayofcompoundstringsspecifiedbytheXmNitemsandXmNitemCountresources.Ifthereismorethanone
occurrenceofaniteminthelist,theroutinesonlyremovethefirstoccurrence.Inordertoremoveitemswiththeseroutines,youhavetocreateacompoundstringfor
eachitem.Theroutinesusealinearsearchtolocatetheitemstobedeleted.
SeeAlso
XmListDeleteAllItems(1),XmListDeleteItemsPos(1),XmListDeletePos(1),XmListDeletePositions(1),
XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page221

XmListDeleteItemsPos
XmList
Name
XmListDeleteItemsPosdeleteitemsstartingataspecifiedpositionfromalist.
Synopsis
#include<Xm/List.h>
voidXmListDeleteItemsPos(widget,item_count,position)
Widgetwidget
intitem_count
intposition

Inputs
widget

SpecifiestheListwidget.

item_count

Specifiesthenumberofitemstobedeleted.

position

Specifiesthepositionfromwhichtodeleteitems.

Description
XmListDeleteItemsPos()removesitem_countitemsfromthelist,startingatthespecifiedposition.Apositionvalueof1indicatesthefirst
item,apositionvalueof2indicatestheseconditem,andsoon.Ifthenumberofitemsbetweenpositionandtheendofthelistislessthanitem_count,
theroutinedeletesalloftheitemsupthroughthelastiteminthelist.
Usage
XmListDeleteItemsPos()isaconvenienceroutinethatallowsyoutoremoveitemsfromalist.Theroutineremovesitemsfromthelistbyinternally
manipulatingthearrayofcompoundstringsspecifiedbytheXmNitemsandXmNitemCountresources.Sinceyouarespecifyingthepositionoftheitemstobe
removed,youdonothavetocreatecompoundstringsfortheitems.Theroutinedoesnothavetosearchfortheitems,soitavoidsthelinearsearchthatisusedby
XmListDeleteItems().
SeeAlso
XmListDeleteAllItems(1),XmListDeleteItem(1),XmListDeletePos(1),XmListDeletePositions(1),XmList
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page222

XmListDeletePos
XmList
Name
XmListDeletePosdeleteanitematthespecifiedpositionfromalist.
Synopsis
#include<Xm/List.h>
voidXmListDeletePos(widget,position)
Widgetwidget
intposition

Inputs
widget

SpecifiestheListwidget.

position

Specifiesthepositionfromwhichtodeleteanitem.

Description
XmListDeletePos()removestheitematthespecifiedpositionfromthelist.Apositionvalueof1indicatesthefirstitem,apositionvalueof2
indicatestheseconditem,andsoon.Avalueof0(zero)specifiesthelastiteminthelist.Ifthelistdoesnothavethespecifiedposition,awarningmessageis
displayed.
Usage
XmListDeletePos()isaconvenienceroutinethatallowsyoutoremoveanitemfromalist.Theroutineremovesitemsfromthelistbyinternallymanipulating
thearrayofcompoundstringsspecifiedbytheXmNitemsandXmNitemCountresources.Sinceyouarespecifyingthepositionoftheitemtoberemoved,you
donothavetocreateacompoundstringfortheitem.Theroutinedoesnothavetosearchfortheitem,soitavoidsthelinearsearchthatisusedby
XmListDeleteItem().
SeeAlso
XmListDeleteAllItems(1),XmListDeleteItem(1),XmListDeleteItemsPos(1),XmListDeletePositions(1),
XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page223

XmListDeletePositions
XmList
Name
XmListDeletePositionsdeleteitemsatthespecifiedpositionsfromalist.
Synopsis
#include<Xm/List.h>
voidXmListDeletePositions(widget,position_list,position_count)
Widgetwidget
int*position_list
intposition_count

Inputs
widget

SpecifiestheListwidget.

position_list

Specifiesalistofpositionsfromwhichtodeleteitems.

position_count

Specifiesthenumberofpositionstobedeleted.

Availability
Motif1.2andlater.
Description
XmListDeletePositions()removestheitemsthatappearatthepositionsspecifiedinposition_listfromthelist.Apositionvalueof1indicatesthe
firstitem,avalueof2indicatestheseconditem,andsoon.Ifthelistdoesnothavethespecifiedposition,awarningmessageisdisplayed.Ifposition_countis
smallerthanthenumberofpositionsinthelist,onlythefirstposition_countitemsaredeleted.
Usage
XmListDeletePositions()isaconvenienceroutinethatletsyouremoveitemsfromalist.TheroutineremovetheitemsbymodifyingtheXmNitemsand
XmNitemCountresources.Sinceyouarespecifyingthepositionsoftheitemstoberemoved,youdonothavetocreatecompoundstringsfortheitems.The
routinedoesnothavetosearchfortheitems,soitavoidsthelinearsearchusedbyXmListDeleteItems().
SeeAlso
XmListDeleteAllItems(1),XmListDeleteItem(1),XmListDeleteItemsPos(1),XmListDeletePos(1),XmList
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page224

XmListDeselectAllItems
XmList
Name
XmListDeselectAllItemsdeselectallitemsinalist.
Synopsis
#include<Xm/List.h>
voidXmListDeselectAllItems(widget)
Widgetwidget

Inputs
widget

SpecifiestheListwidget.

Description
XmListDeselectAllItems()unhighlightsalloftheselecteditemsinthespecifiedwidgetandremovestheseitemsfromtheXmNselectedItems
list.Ifthelistisinnormalmode,theitemwiththekeyboardfocusremainsselectedifthelistisinaddmode,alloftheitemsaredeselected.
Usage
XmListDeselectAllItems()isaconvenienceroutinethatallowsyoutodeselectalloftheitemsinalist.Theroutinedeselectsitemsinthelistbyinternally
manipulatingthearrayofcompoundstringsspecifiedbytheXmNselectedItemsandXmNselectedItemCountresources.Thisroutinedoesnotinvoke
anyselectioncallbacksforthelistwhentheitemsaredeselected.
SeeAlso
XmListDeselectItem(1),XmListDeselectPos(1),XmListSelectItem(1),XmListSelectPos(1),
XmListUpdateSelectedList(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page225

XmListDeselectItem
XmList
Name
XmListDeselectItemdeselectanitemfromalist.
Synopsis
#include<Xm/List.h>
voidXmListDeselectItem(widget,item)
Widgetwidget
XmStringitem

Inputs
widget

SpecifiestheListwidget.

item

Specifiestheitemthatistobedeselected.

Description
XmListDeselectItem()unhighlightsandremovesfromtheXmNselectedItemslistthefirstoccurrenceofthespecifieditem.
Usage
XmListDeselectItem()isaconvenienceroutinethatallowsyoutodeselectaniteminalist.Theroutinedeselectsitemsinthelistbyinternallymanipulating
thearrayofcompoundstringsspecifiedbytheXmNselectedItemsandXmNselectedItemCountresources.Thisroutinedoesnotinvokeanyselection
callbacksforthelistwhentheitemisdeselected.Ifthereismorethanoneoccurrenceofaniteminthelist,theroutineonlydeselectsthefirstoccurrence.Inorderto
deselectanitemwiththisroutine,youhavetocreateacompoundstringfortheitem.Theroutineusesalinearsearchtolocatetheitemtobedeselected.
SeeAlso
XmListDeselectAllItems(1),XmListDeselectPos(1),XmListSelectItem(1),XmListSelectPos(1),
XmListUpdateSelectedList(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page226

XmListDeselectPos
XmList
Name
XmListDeselectPosdeselectanitematthespecifiedpositionfromalist.
Synopsis
#include<Xm/List.h>
voidXmListDeselectPos(widget,position)
Widgetwidget
intposition

Inputs
widget

SpecifiestheListwidget.

position

Specifiesthepositionatwhichtodeselectanitem.

Description
XmListDeselectPos()unhighlightstheitematthespecifiedpositioninthelistandremovetheitemfromtheXmNselectedItemslist.A
positionvalueof1indicatesthefirstitem,apositionvalueof2indicatestheseconditem,andsoon.Avalueof0(zero)specifiesthelastiteminthelist.If
thelistdoesnothavethespecifiedposition,theroutinedoesnothing.
Usage
XmListDeselectPos()isaconvenienceroutinethatallowsyoutodeselectaniteminalist.Theroutinedeselectsitemsinthelistbyinternallymanipulatingthe
arrayofcompoundstringsspecifiedbytheXmNselectedItemsandXmNselectedItemCountresources.Thisroutinedoesnotinvokeanyselection
callbacksforthelistwhentheitemisdeselected.Sinceyouarespecifyingthepositionoftheitemtobedeselected,youdonothavetocreateacompoundstringfor
theitem.Theroutinedoesnothavetosearchfortheitem,soitavoidsthelinearsearchthatisusedbyXmListDeselectItem().
SeeAlso
XmListDeselectAllItems(1),XmListDeselectPos(1),XmListGetSelectedPos(1),XmListPosSelected(1),
XmListSelectItem(1),XmListSelectPos(1),XmListUpdateSelectedList(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page227

XmListGetKbdItemPos
XmList
Name
XmListGetKbdItemPosgetthepositionoftheiteminalistthathasthelocationcursor.
Synopsis
#include<Xm/List.h>
intXmListGetKbdItemPos(widget)
Widgetwidget

Inputs
widget

SpecifiestheListwidget.

Returns
Thepositionoftheitemthathasthelocationcursor.
Availability
Motif1.2andlater.
Description
XmListGetKbdItemPos()retrievesthepositionoftheiteminthespecifiedListwidgetthathasthelocationcursor.Areturnedvalueof1indicatesthefirst
item,avalueof2indicatestheseconditem,andsoon.Thevalue0(zero)specifiesthatthelistisempty.
Usage
XmListGetKbdItemPos()providesawaytodeterminewhichiteminalisthasthekeyboardfocus.Thisinformationisusefulifyouneedtoperformactions
basedonthepositionofthelocationcursorinthelist.
SeeAlso
XmListSetAddMode(1),XmListSetKbdItemPos(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page228

XmListGetMatchPos
XmList
Name
XmListGetMatchPosgetalloccurrencesofaniteminalist.
Synopsis
#include<Xm/List.h>
BooleanXmListGetMatchPos(widget,item,position_list,
position_count)
Widgetwidget
XmStringitem
int**position_list
int*position_count

Inputs
widget

SpecifiestheListwidget.

item

Specifiestheitemwhosepositionsaretoberetrieved.

Outputs
position_list

Returnsalistofthepositionsoftheitem.

position_count

Returnsthenumberofitemsinposition_list.

Returns
TrueiftheitemisinthelistorFalseotherwise.
Description
XmListGetMatchPos()determineswhetherthespecifieditemexistsinthelist.Ifthelistcontainsitem,theroutinereturnsTrueand
position_listreturnsalistofpositionsthatspecifythelocation(s)oftheitem.Apositionvalueof1indicatesthefirstitem,apositionvalueof2indicatesthe
seconditem,andsoon.XmListGetMatchPos()allocatesstoragefortheposition_listarraywhentheitemisfoundtheapplicationisresponsiblefor
freeingthisstorageusingXtFree().Ifthelistdoesnotcontainitem,theroutinereturnsFalse,andposition_countissettozero.InMotif1.2.3and
earlier,thevalueofposition_listisundefinedifitemisnotwithinthelist.FromMotif1.2.4andlater,position_listissettoNULLinthiscase.
Usage
XmListGetMatchPos()isaconvenienceroutinethatprovidesawaytolocatealloftheoccurrencesofaniteminalist.Alternatively,youcouldobtainthis
informationyourselfusingtheXmNitemsresourceandXmListItemPos().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page229

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
ThefollowingcodefragmentsshowtheuseofXmListGetMatchPos():
Widgetlist_w
int*pos_list
intpos_cnt,i
char*choice="ASampleTextString"
XmStringstr=XmStringCreateLocalized(choice)

if(!XmListGetMatchPos(list_w,str,&pos_list,&pos_cnt))
XtWarning("Can'tgetitemsinlist")
else{
printf("%sexistsat%dpositions:",choice,pos_cnt)
for(i=0i<pos_cnti++)
printf("%d",pos_list[i])
puts("")
XtFree(pos_list)
}
XmStringFree(str)

SeeAlso
XmListGetSelectedPos(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page230

XmListGetSelectedPos
XmList
Name
XmListGetSelectedPosgetthepositionsoftheselecteditemsinalist.
Synopsis
#include<Xm/List.h>
BooleanXmListGetSelectedPos(widget,position_list,position_count)
Widgetwidget
int**position_list
int*position_count

Inputs
widget

SpecifiestheListwidget.

Outputs
position_list

Returnsalistofthepositionsoftheselecteditems.

position_count

Returnsthenumberofitemsinposition_list.

Returns
TrueifthereareselecteditemsinthelistorFalseotherwise.
Description
XmListGetSelectedPos()determineswhetherthereareanyselecteditemsinthelist.Ifthelisthasselecteditems,theroutinereturnsTrueand
position_listreturnsalistofpositionsthatspecifythelocation(s)oftheitems.Apositionvalueof1indicatesthefirstitem,apositionvalueof2indicatesthe
seconditem,andsoon.XmListGetSelectedPos()allocatesstoragefortheposition_listarraywhenthereareselecteditemstheapplicationis
responsibleforfreeingthisstorageusingXtFree().Ifthelistdoesnotcontainanyselecteditems,theroutinereturnsFalseandposition_countissetto
zero.InMotif1.2.3andearlier,thevalueofposition_listisundefinediftherearenoselecteditemswithinthelist.FromMotif1.2.4andlater,
position_listissettoNULLinthiscase.
Usage
XmListGetSelectedPos()isaconvenienceroutinethatletsyoudeterminethepositionsofalloftheselecteditemsinalist.Alternatively,youcanobtainthis
informationmoredirectlyusingtheXmNselectedItemsresourceandXmListItemPos().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page231

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmListGetMatchPos(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page232

XmListItemExists
XmList
Name
XmListItemExistsdetermineifaspecifieditemisinalist.
Synopsis
#include<Xm/List.h>
BooleanXmListItemExists(widget,item)
Widgetwidget
XmStringitem

Inputs
widget

SpecifiestheListwidget.

item

Specifiestheitemwhosepresenceinthelistischecked.

Returns
TrueiftheitemisinthelistorFalseotherwise.
Description
XmListItemExists()determineswhetherthelistcontainsthespecifieditem.TheroutinereturnsTrueiftheitemispresentandFalseifitisnot.
Usage
XmListItemExists()isaconvenienceroutinethatdetermineswhetherornotanitemisinalist.Inordertousetheroutine,youhavetocreateacompound
stringfortheitem.Theroutineusesalinearsearchtolocatetheitem.YoumaybeabletoobtainthisinformationmoreeffectivelybysearchingtheXmNitemslist
usingyourownsearchprocedure.
SeeAlso
XmListGetMatchPos(1),XmListItemPos(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page233

XmListItemPos
XmList
Name
XmListItemPosreturnthepositionofaniteminalist.
Synopsis
#include<Xm/List.h>
intXmListItemPos(widget,item)
Widgetwidget
XmStringitem

Inputs
widget

SpecifiestheListwidget.

item

Specifiestheitemwhosepositionisreturned.

Returns
Thepositionoftheiteminthelistor0(zero)iftheitemisnotinthelist.
Description
XmListItemPos()returnsthepositionofthefirstoccurrenceofthespecifiediteminthelist.Apositionvalueof1indicatesthefirstitem,apositionvalueof2
indicatestheseconditem,andsoon.Ifitemisnotinthelist,XmListItemPos()returns0(zero).
Usage
XmListItemPos()isaconvenienceroutinethatfindsthepositionofaniteminalist.Ifthereismorethanoneoccurrenceoftheiteminthelist,theroutineonly
returnsthepositionofthefirstoccurrence.Inordertousetheroutine,youhavetocreateacompoundstringfortheitem.Theroutineusesalinearsearchtolocatethe
item.
Example
Thefollowingroutinesshowhowtomakesurethatagiveniteminalistisvisible:
voidMakePosVisible(list_w,item_no)
Widgetlist_w
intitem_no
{
inttop,visible

XtVaGetValues(list_w,
XmNtopItemPosition,&top,
XmNvisibleItemCount,&visible,

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page234
NULL)
if(item_no<top)
XmListSetPos(list_w,item_no)
elseif(item_no>=top+visible)
XmListSetBottomPos(list_w,item_no)
}

voidMakeItemVisible(list_w,item)
Widgetlist_w
XmStringitem
{
intitem_no=XmListItemPos(list_w,item)

if(item_no>0)
MakePosVisible(list_w,item_no)
}

SeeAlso
XmListItemExists(1),XmListPosSelected(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page235

XmListPosSelected
XmList
Name
XmListPosSelectedcheckiftheitemataspecifiedpositionisselectedinalist.
Synopsis
#include<Xm/List.h>
BooleanXmListPosSelected(widget,position)
Widgetwidget
intposition

Inputs
widget

SpecifiestheListwidget.

position

Specifiesthepositionthatischecked.

Returns
TrueiftheitemisselectedorFalseiftheitemisnotselectedorthepositionisinvalid.
Availability
Motif1.2andlater.
Description
XmListPosSelected()determineswhetherornotthelistitematthespecifiedpositionisselected.Apositionvalueof1indicatesthefirstitem,a
positionvalueof2indicatestheseconditem,andsoon.Thevalue0(zero)specifiesthelastiteminthelist.TheroutinereturnsTrueifthelistitemisselected.It
returnsFalseiftheitemisnotselectedorthelistdoesnothavethespecifiedposition.
Usage
XmListPosSelected()isaconvenienceroutinethatletsyoucheckifanitemataparticularpositionisselected.Alternatively,youcouldcheckthelistof
positionsreturnedbyXmListGetSelectedPos()toseeiftheitematapositionisselected.
SeeAlso
XmListDeselectPos(1),XmListGetSelectedPos(1),XmListSelectPos(1),XmListUpdateSelectedList(1),
XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page236

XmListPosToBounds
XmList
Name
XmListPosToBoundsreturntheboundingboxofanitematthespecifiedpositioninalist.
Synopsis
#include<Xm/List.h>
BooleanXmListPosToBounds(widget,position,x,y,width,height)
Widgetwidget
intposition
Position*x
Position*y
Dimension*width
Dimension*height

Inputs
widget

SpecifiestheListwidget.

position

Specifiesthepositionoftheitemforwhichtoreturnthebounding
box.

Outputs
x

Returnsthexcoordinateoftheboundingboxfortheitem.

Returnstheycoordinateoftheboundingboxfortheitem.

width

Returnsthewidthoftheboundingboxfortheitem.

height

Returnstheheightoftheboundingboxfortheitem.

Returns
TrueifitematthespecifiedpositionisvisibleorFalseotherwise.
Availability
Motif1.2andlater.
Description
XmListPosToBounds()returnstheboundingboxoftheitematthespecifiedpositioninthelist.Apositionvalueof1indicatesthefirstitem,a
positionvalueof2indicatestheseconditem,andsoon.Avalueof0(zero)specifiesthelastiteminthelist.Theroutinereturnsthexandycoordinatesofthe
upperleftcorneroftheboundingboxinrelationtotheupperleftcorneroftheListwidget.XmListPosToBounds()alsoreturnsthewidthandheightof
theboundingbox.PassingaNULLvalueforanyofthex,y,width,orheightparametersindicatesthatthevalue

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page237

fortheparametershouldnotbereturned.Iftheitematthespecifiedpositionisnotvisible,XmListPosToBounds()returnsFalseandthereturnvalues
areundefined.
Usage
XmListPosToBounds()providesawaytodeterminetheboundingboxofaniteminalist.Thisinformationisusefulifyouwanttoperformadditionalevent
processingordrawspecialgraphicsforthelistitem.
SeeAlso
XmListYToPos(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page238

XmListReplaceItems
XmList
Name
XmListReplaceItemsreplacespecifieditemsinalist.
Synopsis
#include<Xm/List.h>
voidXmListReplaceItems(widget,old_items,item_count,new_items)
Widgetwidget
XmString*old_items
intitem_count
XmString*new_items

Inputs
widget

SpecifiestheListwidget.

old_items

Specifiesalistoftheitemsthataretobereplaced.

item_count

Specifiesthenumberofitemsthataretobereplaced.

new_items

Specifiesalistofthenewitems.

Description
XmListReplaceItems()replacesthefirstoccurrenceofeachitemintheold_itemslistwiththecorrespondingitemfromthenew_itemslist.Ifan
itemintheold_itemslistdoesnotexistinthespecifiedListwidget,thecorrespondingiteminnew_listisskipped.Ifitem_countissmallerthanthe
numberofold_itemsornew_items,onlythefirstitem_countitemsarereplaced.Anewitemappearsselectedifitmatchesaniteminthe
XmNselectedItemslist.
Usage
XmListReplaceItems()isaconvenienceroutinethatallowsyoutoreplaceparticularitemsinalist.Theroutinereplacesitemsbymanipulatingthearrayof
compoundstringsspecifiedbytheXmNitemsandXmNitemCountresources.Ifanewitemduplicatesanitemthatisalreadyselected,thenewitemappearsas
selected.Youshouldonlyusethisroutineifthelistsupportsmultipleselectionsandyouwanttoselectthenewitemswhoseduplicatesarealreadyselected.Inorderto
replaceitemswiththisroutine,youhavetocreatecompoundstringsforalloftheoldandnewitems.Theroutineusesalinearsearchtolocatetheitemstobe
replaced.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page239

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmListAddItem(1),XmListAddItemUnselected(1),XmListReplaceItemsPos(1),
XmListReplaceItemsPosUnselected(1),XmListReplaceItemsUnselected(1),XmListReplacePositions(1),
XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page240

XmListReplaceItemsPos
XmList
Name
XmListReplaceItemsPosreplacespecifieditemsinalist.
Synopsis
#include<Xm/List.h>
voidXmListReplaceItemsPos(widget,new_items,item_count,position)
Widgetwidget
XmString*new_items
intitem_count
intposition

Inputs
widget

SpecifiestheListwidget.

new_items

Specifiesalistofthenewitems.

item_count

Specifiesthenumberofitemsthataretobereplaced.

position

Specifiesthepositionatwhichtoreplaceitems.

Description
XmListReplaceItemsPos()replacesaconsecutivenumberofitemsinthelistwithitemsfromthenew_itemslist.Thefirstitemthatisreplacedis
locatedatthespecifiedpositionandeachsubsequentitemisreplacedbythecorrespondingitemfromnew_items.Apositionvalueof1indicatesthe
firstitem,apositionvalueof2indicatestheseconditem,andsoon.Ifitem_countissmallerthanthenumberofnew_items,onlythefirst
item_countitemsarereplaced.Ifthenumberofitemsbetweenpositionandtheendofthelistislessthanitem_count,theroutinereplacesallofthe
itemsupthroughthelastiteminthelist.AnewitemappearsselectedifitmatchesanitemintheXmNselectedItemslist.
Usage
XmListReplaceItemsPos()isaconvenienceroutinethatallowsyoutoreplaceacontiguoussequenceofitemsinalist.Theroutinereplacesitemsby
manipulatingthearrayofcompoundstringsspecifiedbytheXmNitemsandXmNitemCountresources.Ifanewitemduplicatesanitemthatisalreadyselected,
thenewitemappearsasselected.Youshouldonlyusethisroutineifthelistsupportsmultipleselectionsandyouwanttoselectthenewitemswhoseduplicatesare
alreadyselected.Inordertoreplaceitemswiththisroutine,youhavetocreatecompoundstringsforallofthenewitems.Theroutinedoesnothavetosearchforthe
items,soitavoidsthelinearsearchesthatareusedbyXmListReplaceItems().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page241

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmListAddItem(1),XmListAddItemUnselected(1),XmListReplaceItems(1),
XmListReplaceItemsPosUnselected(1),XmListReplaceItemsUnselected(1),XmListReplacePositions(1),
XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page242

XmListReplaceItemsPosUnselected
XmList
Name
XmListReplaceItemsPosUnselectedreplacespecifieditemsinalist.
Synopsis
#include<Xm/List.h>
voidXmListReplaceItemsPosUnselected(widget,new_items,item_count,
position)
Widgetwidget
XmString*new_items
intitem_count
intposition

Inputs
widget

SpecifiestheListwidget.

new_items

Specifiesalistofthenewitems.

item_count

Specifiesthenumberofitemsthataretobereplaced.

position

Specifiesthepositionatwhichtoreplaceitems.

Availability
Motif1.2andlater.
Description
XmListReplaceItemsPosUnselected()replacesaconsecutivenumberofitemsinthelistwithitemsfromthenew_itemslist.Thefirstitemthatis
replacedislocatedatthespecifiedpositionandeachsubsequentitemisreplacedbythecorrespondingitemfromnew_items.Apositionvalueof1
indicatesthefirstitem,apositionvalueof2indicatestheseconditem,andsoon.Ifitem_countissmallerthanthenumberofnew_items,onlythefirst
item_countitemsarereplaced.Ifthenumberofitemsbetweenpositionandtheendofthelistislessthanitem_count,theroutinereplacesallofthe
itemsupthroughthelastiteminthelist.Anewitemdoesnotappearselected,evenifitmatchesanitemintheXmNselectedItemslist.
Usage
XmListReplaceItemsPosUnselected()isaconvenienceroutinethatallowsyoutoreplaceacontiguoussequenceofitemsinalist.Theroutine
replacesitemsbymodifyingthearrayofcompoundstringsspecifiedthroughtheXmNitemsandXmNitemCountresources.Ifanewitemduplicatesanitemthat
isalreadyselected,thenewitemdoesnotappearasselected.Inordertoreplaceitemswiththisroutine,youhave

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page243

tocreatecompoundstringsforallofthenewitems.Theroutinedoesnothavetosearchfortheitems,soitavoidsthelinearsearchesthatareusedby
XmListReplaceItemsUnselected().
SeeAlso
XmListAddItem(1),XmListAddItemUnselected(1),XmListReplaceItems(1),XmListReplaceItemsPos(1),
XmListReplaceItemsUnselected(1),XmListReplacePositions(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page244

XmListReplaceItemsUnselected
XmList
Name
XmListReplaceItemsUnselectedreplacespecifieditemsinalist.
Synopsis
#include<Xm/List.h>
voidXmListReplaceItemsUnselected(widget,old_items,item_count,
new_items)
Widgetwidget
XmString*old_items
intitem_count
XmString*new_items

Inputs
widget

SpecifiestheListwidget.

old_items

Specifiesalistoftheitemsthataretobereplaced.

item_count

Specifiesthenumberofitemsthataretobereplaced.

new_items

Specifiesalistofthenewitems.

Availability
Motif1.2andlater.
Description
XmListReplaceItemsUnselected()replacesthefirstoccurrenceofeachitemintheold_itemslistwiththecorrespondingitemfromthe
new_itemslist.Ifanitemintheold_itemslistdoesnotexistinthespecifiedListwidget,thecorrespondingiteminnew_listisskipped.If
item_countissmallerthanthenumberofold_itemsornew_items,onlythefirstitem_countitemsarereplaced.Anewitemdoesnotappear
selected,evenifitmatchesanitemintheXmNselectedItemslist.
Usage
XmListReplaceItemsUnselected()isaconvenienceroutinethatallowsyoutoreplaceparticularitemsinalist.Theroutinereplacesitemsbymodifying
thearrayofcompoundstringsspecifiedthroughtheXmNitemsandXmNitemCountresources.Ifanewitemduplicatesanitemthatisalreadyselected,thenew
itemdoesnotappearasselected.Inordertoreplaceitemswiththisroutine,youhavetocreatecompoundstringsforalloftheoldandnewitems.Theroutineusesa
linearsearchtolocatetheitemstobereplaced.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page245

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmListAddItem(1),XmListAddItemUnselected(1),XmListReplaceItems(1),XmListReplaceItemsPos(1),
XmListReplaceItemsPosUnselected(1),XmListReplacePositions(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page246

XmListReplacePositions
XmList
Name
XmListReplacePositionsreplaceitemsatthespecifiedpositionsinalist.
Synopsis
#include<Xm/List.h>
voidXmListReplacePositions(widget,position_list,item_list,
item_count)
Widgetwidget
int*position_list
XmString*item_list
intitem_count

Inputs
widget

SpecifiestheListwidget.

position_list

Specifiesalistofpositionsatwhichtoreplaceitems.

item_list

Specifiesalistofthenewitems.

item_count

Specifiesthenumberofitemsthataretobereplaced.

Availability
Motif1.2andlater.
Description
XmListReplacePositions()replacestheitemsthatappearatthepositionsspecifiedinposition_listwiththecorrespondingitemsfrom
item_list.Apositionvalueof1indicatesthefirstitem,avalueof2indicatestheseconditem,andsoon.Ifthelistdoesnothavethespecifiedposition,awarning
messageisdisplayed.Ifitem_countissmallerthanthenumberofpositionsinposition_list,onlythefirstitem_countitemsarereplaced.Anew
itemappearsselectedifitmatchesanitemintheXmNselectedItemslist.
Usage
XmListReplacePositions()isaconvenienceroutinethatallowsyoutoreplaceitemsatparticularpositionsinalist.Theroutinereplacesitemsby
modifyingthearrayofcompoundstringsspecifiedthroughtheXmNitemsandXmNitemCountresources.Ifanewitemduplicatesanitemthatisalready
selected,thenewitemappearsasselected.Youshouldonlyusethisroutineifthelistsupportsmultipleselectionsandyouwanttoselectthenewitemswhose
duplicatesarealreadyselected.Inorderto

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page247

replaceitemswiththisroutine,youhavetocreatecompoundstringsforallofthenewitems.Theroutinedoesnothavetosearchfortheitems,soitavoidsthelinear
searchesthatareusedbyXmListReplaceItems().
SeeAlso
XmListAddItem(1),XmListAddItemUnselected(1),XmListReplaceItems(1),XmListReplaceItemsPos(1),
XmListReplaceItemsPosUnselected(1),XmListReplaceItemsUnselected(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page248

XmListSelectItem
XmList
Name
XmListSelectItemselectanitemfromalist.
Synopsis
#include<Xm/List.h>
voidXmListSelectItem(widget,item,notify)
Widgetwidget
XmStringitem
Booleannotify

Inputs
widget

SpecifiestheListwidget.

item

Specifiestheitemthatistobeselected.

notify

Specifieswhetherornottheselectioncallbackisinvoked.

Description
XmListSelectItem()highlightsandselectsthefirstoccurrenceofthespecifiediteminthelist.IftheXmNselectionPolicyresourceofthelistis
XmMULTIPLE_SELECT,theroutinetogglestheselectionstateofitem.Foranyotherselectionpolicy,XmListSelectItem()replacesthecurrently
selecteditem(s)withitem.TheXmNselectedItemsresourcespecifiesthecurrentselectionofthelist.IfnotifyisTrue,XmListSelectItem()
invokestheselectioncallbackforthecurrentselectionpolicy.
Usage
XmListSelectItem()isaconvenienceroutinethatallowsyoutoselectaniteminalist.Theroutineselectstheitembymodifyingthearrayofcompound
stringsspecifiedbytheXmNselectedItemsandXmNselectedItemCountresources.Inordertoselectanitemwiththisroutine,youhavetocreatea
compoundstringfortheitem.Theroutineusesalinearsearchtolocatetheitemtobeselected.XmListSelectItem()onlyallowsyoutoselectasingleitem
therearenoroutinesforselectingmultipleitems.Ifyouneedtoselectmorethanoneitem,useXtSetValues()tosetXmNselectedItemsand
XmNselectedItemCount.
Thenotifyparameterindicateswhetherornottheselectioncallbacksforthecurrentselectionpolicyareinvoked.Youcanavoidredundantcodebysettingthis
parametertoTrue.IfyouarecallingXmListSelectItem()fromaselectioncallbackroutine,youprobablywanttosettheparametertoFalsetoavoid
thepossibilityofaninfiniteloop.CallingXmListSelectItem()withnotifysettoTruecausesthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page249

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

callbackroutinestobeinvokedinawaythatisindistinguishablefromauserinitiatedselectionaction.
SeeAlso
XmListDeselectAllItems(1),XmListDeselectItem(1),XmListDeselectPos(1),XmListSelectPos(1),
XmListUpdateSelectedList(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page250

XmListSelectPos
XmList
Name
XmListSelectPosselectanitematthespecifiedpositionfromalist.
Synopsis
#include<Xm/List.h>
voidXmListSelectPos(widget,position,notify)
Widgetwidget
intposition
Booleannotify

Inputs
widget

SpecifiestheListwidget.

position

Specifiesthepositionoftheitemthatistobeselected.

notify

Specifieswhetherornottheselectioncallbackisinvoked.

Description
XmListSelectPos()highlightsandselectstheitematthespecifiedpositioninthelist.Apositionvalueof1indicatesthefirstitem,aposition
valueof2indicatestheseconditem,andsoon.Avalueof0(zero)specifiesthelastiteminthelist.IftheXmNselectionPolicyresourceofthelistis
XmMULTIPLE_SELECT,theroutinetogglestheselectionstateoftheitem.Foranyotherselectionpolicy,XmListSelectPos()replacesthecurrently
selecteditemwiththespecifieditem.TheXmNselectedItemsresourceliststhecurrentselectionofthelist.IfnotifyisTrue,XmListSelectPos
()invokestheselectioncallbackforthecurrentselectionpolicy.
Usage
XmListSelectPos()isaconvenienceroutinethatallowsyoutoselectanitemataparticularpositioninalist.Theroutineselectstheitembymodifyingthe
arrayofcompoundstringsspecifiedthroughtheXmNselectedItemsandXmNselectedItemCountresources.Sinceyouarespecifyingthepositionof
theitemtobeselected,youdonothavetocreateacompoundstringfortheitem.Theroutinedoesnothavetosearchfortheitem,soitavoidsthelinearsearchused
byXmListSelectItem().XmListSelectPos()onlyallowsyoutoselectasingleitemtherearenoroutinesforselectingmultipleitems.Ifyouneedto
selectmorethanoneitem,useXtSetValues()tosetXmNselectedItemsandXmNselectedItemCount.
Thenotifyparameterindicateswhetherornottheselectioncallbacksforthecurrentselectionpolicyareinvoked.Youcanavoidredundantcodebysettingthis
parametertoTrue.IfyouarecallingXmListSelectPos()fromaselectioncallback

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page251

routine,youprobablywanttosettheparametertoFalsetoavoidthepossibilityofaninfiniteloop.CallingXmListSelectPos()withnotifysettoTrue
causesthecallbackroutinestobeinvokedinawaythatisindistinguishablefromauserinitiatedselectionaction.
SeeAlso
XmListDeselectAllItems(1),XmListDeselectItem(1),XmListDeselectPos(1),XmListGetSelectedPos(1),
XmListPosSelected(1),XmListSelectItem(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page252

XmListSetAddMode
XmList
Name
XmListSetAddModesetaddmodeinalist.
Synopsis
#include<Xm/List.h>
voidXmListSetAddMode(widget,mode)
Widgetwidget
Booleanmode

Inputs
widget

SpecifiestheListwidget.

mode

Specifieswhethertosetaddmodeonoroff.

Description
XmListSetAddMode()setsthestateofaddmodewhentheXmNselectionPolicyisXmEXTENDED_SELECT.IfmodeisTrue,addmodeis
turnedonifmodeisFalse,addmodeisturnedoff.WhenaListwidgetisinaddmode,theusercanmovethelocationcursorwithoutdisturbingthecurrent
selection.
Usage
XmListSetAddMode()providesawaytochangethestateofaddmodeinalist.Thedistinctionbetweennormalmodeandaddmodeisonlyimportantfor
makingkeyboardbasedselections.Innormalmode,thelocationcursorandtheselectioncanbeseparate.
SeeAlso
XmListGetKbdItemPos(1),XmListSetKbdItemPos(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page253

XmListSetBottomItem
XmList
Name
XmListSetBottomItemsetthelastvisibleiteminalist.
Synopsis
#include<Xm/List.h>
voidXmListSetBottomItem(widget,item)
Widgetwidget
XmStringitem

Inputs
widget

SpecifiestheListwidget.

item

Specifiestheitemthatismadethelastvisibleitem.

Description
XmListSetBottomItem()scrollstheListwidgetsothatthefirstoccurrenceofthespecifieditemappearsasthelastvisibleiteminthelist.
Usage
XmListSetBottomItem()providesawaytomakesurethataparticularitemisvisibleinalist.Theroutinechangestheviewableportionofthelistsothatthe
specifieditemisdisplayedatthebottomoftheviewport.Ifthereismorethanoneoccurrenceoftheiteminthelist,theroutineusesthefirstoccurrence.Inorderto
usethisroutine,youhavetocreateacompoundstringfortheitem.Theroutineusesalinearsearchtolocatetheitem.
SeeAlso
XmListSetBottomPos(1),XmListSetHorizPos(1),XmListSetItem(1),XmListSetPos(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page254

XmListSetBottomPos
XmList
Name
XmListSetBottomPossetthelastvisibleiteminalist.
Synopsis
#include<Xm/List.h>
voidXmListSetBottomPos(widget,position)
Widgetwidget
intposition

Inputs
widget

SpecifiestheListwidget.

position

Specifiesthepositionoftheitemthatismadethelastvisibleitem.

Description
XmListSetBottomPos()scrollstheListwidgetsothattheitematthespecifiedpositionappearsasthelastvisibleiteminthelist.Apositionvalue
of1indicatesthefirstitem,apositionvalueof2indicatestheseconditem,andsoon.Avalueof0(zero)specifiesthelastiteminthelist.
Usage
XmListSetBottomPos()providesawaytomakesurethatanitemataparticularpositionisvisibleinalist.Theroutinechangestheviewableportionofthe
listsothattheitematthespecifiedpositionisdisplayedatthebottomoftheviewport.Sinceyouarespecifyingthepositionoftheitem,youdonothavetocreate
acompoundstringfortheitem.Theroutinedoesnothavetosearchfortheitem,soitavoidsthelinearsearchthatisusedbyXmListSetBottomItem().
Example
Thefollowingroutineshowshowtomakesurethatanitematagivenpositioninalistisvisible:
voidMakePosVisible(list_w,item_no)
Widgetlist_w
intitem_no
{
inttop,visible

XtVaGetValues(list_w,
XmNtopItemPosition,&top,
XmNvisibleItemCount,&visible,
NULL)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page255
if(item_no<top)
XmListSetPos(list_w,item_no)
elseif(item_no>=top+visible)
XmListSetBottomPos(list_w,item_no)
}

SeeAlso
XmListSetBottomItem(1),XmListSetHorizPos(1),XmListSetItem(1),XmListSetPos(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page256

XmListSetHorizPos
XmList
Name
XmListSetHorizPossetthehorizontalpositionofalist.
Synopsis
#include<Xm/List.h>
voidXmListSetHorizPos(widget,position)
Widgetwidget
intposition

Inputs
widget

SpecifiestheListwidget.

position

Specifiesthehorizontalposition.

Description
XmListSetHorizPos()scrollsthelisttothespecifiedhorizontalposition.IfXmNlistSizePolicyissettoXmCONSTANTor
XmRESIZE_IF_POSSIBLEandthehorizontalscrollbarisvisible,XmListSetHorizPos()setstheXmNvalueresourceofthehorizontalscrollbarto
thespecifiedpositionandupdatesthevisibleareaofthelist.
Usage
WhenalistitemistoolongtofithorizontallyinsidetheviewingareaofaListwidget,thewidgeteitherexpandshorizontallyoraddsahorizontalscrollbar,depending
onthevalueoftheXmNlistSizePolicyresource.CallingXmListSetHorizPos()isequivalenttotheusermovingthehorizontalscrollbartothe
specifiedlocation.
SeeAlso
XmListSetBottomItem(1),XmListSetBottomPos(1),XmListSetItem(1),XmListSetPos(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page257

XmListSetItem
XmList
Name
XmListSetItemsetthefirstvisibleiteminalist.
Synopsis
#include<Xm/List.h>
voidXmListSetItem(widget,item)
Widgetwidget
XmStringitem

Inputs
widget

SpecifiestheListwidget.

item

Specifiestheitemthatismadethefirstvisibleitem.

Description
XmListSetItem()scrollstheListwidgetsothatthefirstoccurrenceofthespecifieditemappearsasthefirstvisibleiteminthelist.
Usage
XmListSetItem()providesawaytomakesurethataparticularitemisvisibleinalist.Theroutinechangestheviewableportionofthelistsothatthespecified
itemisdisplayedatthetopoftheviewport.UsingthisroutineisequivalenttosettingtheXmNtopItemPositionresource.Ifthereismorethanone
occurrenceoftheiteminthelist,theroutineusesthefirstoccurrence.Inordertousethisroutine,youhavetocreateacompoundstringfortheitem.Theroutineuses
alinearsearchtolocatetheitem.
SeeAlso
XmListSetBottomItem(1),XmListSetBottomPos(1),XmListSetHorizPos(1),XmListSetPos(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page258

XmListSetKbdItemPos
XmList
Name
XmListSetKbdItemPossetthepositionofthelocationcursorinalist.
Synopsis
#include<Xm/List.h>
BooleanXmListSetKbdItemPos(widget,position)
Widgetwidget
intposition

Inputs
widget

SpecifiestheListwidget.

position

Specifiesthepositionwherethelocationcursorisset.

Returns
TrueonsuccessorFalseifthereisnotitematpositionorthelistisempty.
Availability
Motif1.2andlater.
Description
XmListSetKbdItemPos()setsthelocationcursoratthespecifiedposition.Apositionvalueof1indicatesthefirstitem,apositionvalueof2
indicatestheseconditem,andsoon.Avalueof0(zero)specifiesthelastiteminthelist.Theroutinedoesnotchecktheselectionstateoftheitematthespecified
location.
Usage
XmListSetKbdItemPos()providesawaytochangewhichiteminalisthasthekeyboardfocus.Theroutineisusefulifyouneedtomakesurethatparticular
itemhasthekeyboardfocusatagiventime,suchaswhenthelistfirstreceivesthekeyboardfocus.
SeeAlso
XmListGetKbdItemPos(1),XmListSetAddMode(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page259

XmListSetPos
XmList
Name
XmListSetPossetsthefirstvisibleiteminalist.
Synopsis
#include<Xm/List.h>
voidXmListSetPos(widget,position)
Widgetwidget
intposition

Inputs
widget

SpecifiestheListwidget.

position

Specifiesthepositionoftheitemthatismadethefirstvisibleitem.

Description
XmListSetPos()scrollstheListwidgetsothattheitematthespecifiedpositionappearsasthefirstvisibleiteminthelist.Apositionvalueof1
indicatesthefirstitem,apositionvalueof2indicatestheseconditem,andsoon.Avalueof0(zero)specifiesthelastiteminthelist.
Usage
XmListSetPos()providesawaytomakesurethatanitemataparticularlocationisvisibleinalist.Theroutinechangestheviewableportionofthelistsothat
theitematthespecifiedpositionisdisplayedatthetopoftheviewport.UsingthisroutineisequivalenttosettingtheXmNtopItemPositionresource.
Sinceyouarespecifyingthepositionoftheitem,youdonothavetocreateacompoundstringfortheitem.Theroutinedoesnothavetosearchfortheitem,soit
avoidsthelinearsearchthatisusedbyXmListSetItem().
Example
Thefollowingroutineshowshowtomakesurethatanitematagivenpositioninalistisvisible:
voidMakePosVisible(list_w,item_no)
Widgetlist_w
intitem_no
{
inttop,visible

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page260
XtVaGetValues(list_w,
XmNtopItemPosition,&top,
XmNvisibleItemCount,&visible,
NULL)
if(item_no<top)
XmListSetPos(list_w,item_no)
elseif(item_no>=top+visible)
XmListSetBottomPos(list_w,item_no)
}

SeeAlso
XmListSetBottomItem(1),XmListSetBottomPos(1),XmListSetHorizPos(1),XmListSetItem(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page261

XmListUpdateSelectedList
XmList
Name
XmListUpdateSelectedListupdatethelistofselecteditemsinalist.
Synopsis
#include<Xm/List.h>
voidXmListUpdateSelectedList(widget)
Widgetwidget

Inputs
widget

SpecifiestheListwidget.

Availability
Motif1.2andlater.
Description
XmListUpdateSelectedList()updatesthearrayofcompoundstringsspecifiedthroughtheXmNselectedItemsresource.Theroutinefreesthe
currentselectedarray,andthentraversesthearrayofcompoundstringsspecifiedbytheXmNitemsresource,addingeachcurrentlyselecteditemtothe
XmNselectedItemslist.
Usage
XmListUpdateSelectedList()providesawaytoupdatethelistofselecteditemsinalist.Thisroutineisusefuliftheactualitemsthatareselectedgetout
ofsynchwiththevalueoftheXmNselectedItemsresource.Thissituationmightariseifyouareusinginternallistfunctionsandmodifyinginternaldatastructures.
Ifyouareusingthedefinedlistroutines,thesituationshouldneveroccur.
SeeAlso
XmListDeselectAllItems(1),XmListDeselectItem(1),XmListDeselectPos(1),XmListGetSelectedPos(1),
XmListPosSelected(1),XmListSelectItem(1),XmListSelectPos(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page262

XmListYToPos
XmList
Name
XmListYToPosgetthepositionoftheitematthespecifiedycoordinateinalist.
Synopsis
#include<Xm/List.h>
intXmListYToPos(widget,y)
Widgetwidget
Positiony

Inputs
widget

SpecifiestheListwidget.

Specifiestheycoordinate.

Returns
Thepositionoftheitematthespecifiedycoordinate.
Availability
Motif1.2andlater.
Description
XmListYToPos()retrievesthepositionoftheitematthespecifiedycoordinateinthelist.Theycoordinateisspecifiedinthecoordinatesystemofthelist.A
returnedvalueof1indicatesthefirstitem,avalueof2indicatestheseconditem,andsoon.Thevalue0(zero)specifiesthatthereisnoitematthespecifiedlocation.
AsofMotif1.2,areturnvalueof0(zero)indicatesthefirstitem,avalueof1indicatestheseconditem,andsoon.InMotif1.2.3andearlier,thevaluethatisreturned
maynotbeavalidpositioninthelist,soanapplicationshouldcheckthevaluewithrespecttothevalueofXmNitemCountbeforeusingit.InMotif1.2.4andlater,
thereturnedpositionmaynotexceedthevalueofXmNitemCount.
Usage
XmListYToPos()providesawaytotranslateaycoordinateintoalistposition.Thisroutineisusefulifyouareprocessingeventsthatreportapointerposition
andyouneedtoconvertthelocationoftheeventintoanitemposition.
SeeAlso
XmListPosToBounds(1),XmList(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page263

XmMainWindowSep
XmMainWindow
Name
XmMainWindowSep1,XmMainWindowSep2,XmMainWindowSep3getthewidgetIDofaMainWindowSeparator.
Synopsis
#include<Xm/MainW.h>
WidgetXmMainWindowSep1(widget)

WidgetXmMainWindowSep2(widget)

WidgetXmMainWindowSep3(widget)

Widgetwidget

Inputs
widget

SpecifiestheMainWindowwidget.

Returns
ThewidgetIDoftheparticularMainWindowSeparator.
Availability
InMotif2.0andlater,theseroutinesaremarkedasdeprecated.
Description
XmMainWindowSep1()returnsthewidgetIDoftheMainWindowwidget'sfirstSeparator,whichislocateddirectlybelowtheMenuBar.
XmMainWindowSep2()returnsthewidgetIDofthesecondSeparatorintheMainWindow,whichisbetweentheCommandandScrolledWindowwidgets.
XmMainWindowSep3()returnsthewidgetIDoftheMainWindow'sthirdSeparator,whichislocatedjustabovethemessagewindow.ThethreeSeparator
widgetsinaMainWindowarevisibleonlywhentheXmNshowSeparatorresourceissettoTrue.
Usage
XmMainWindowSep1(),XmMainWindowSep2(),andXmMainWindowSep3()provideaccesstothethreeSeparatorwidgetsthatcanbe
displayedbyaMainWindowwidget.WiththewidgetIDs,youcanchangethevisualattributesoftheindividualSeparators.
InMotif2.0andlater,thefunctionXtNameToWidget()isthepreferredmethodofobtainingtheMainWindowcomponents.Youshouldpasswidgetasthe
first

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page264

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

parameter,and''Separator1","Separator2",or"Separator3"asthesecondparametertothisprocedure.
SeeAlso
XmMainWindowSetAreas(1),XmMainWindow(2),XmScrolledWindow(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page265

XmMainWindowSetAreas
XmMainWindow
Name
XmMainWindowSetAreasspecifythechildrenforaMainWindow.
Synopsis
#include<Xm/MainW.h>
voidXmMainWindowSetAreas(widget,menu_bar,command_window,
horizontal_scrollbar,vertical_scrollbar,work_region)
Widgetwidget
Widgetmenu_bar
Widgetcommand_window
Widgethorizontal_scrollbar
Widgetvertical_scrollbar
Widgetwork_region

Inputs
widget

SpecifiestheMainWindowwidget.

menu_bar

SpecifiesthewidgetIDoftheMenuBar.

command_window

SpecifiesthewidgetIDofthecommandwindow.

horizontal_scrollbar

SpecifiesthewidgetIDofthehorizontalScrollBar.

vertical_scrollbar

SpecifiesthewidgetIDoftheverticalScrollBar.

work_region

SpecifiesthewidgetIDoftheworkwindow.

Description
InMotif2.0andlater,theprocedureismarkedasdeprecated.
Description
XmMainWindowSetAreas()setsupthestandardregionsoftheMainWindowwidgetforanapplication.TheMainWindowmustbecreatedbeforetheroutine
iscalled.XmMainWindowSetAreas()specifiestheMenuBar,theworkwindow,thecommandwindow,andthehorizontalandverticalScrollBarsforthe
MainWindow.Ifanapplicationdoesnothaveoneoftheseregions,thecorrespondingargumentcanbespecifiedasNULL.Eachregionmayhavechildwidgets,and
thisroutinedetermineswhichofthosechildrenwillbeactivelymanagedbytheMainWindow.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page266

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
EachoftheMainWindowregionsisassociatedwithaMainWindowresourceXmMainWindowSetAreas()setstheassociatedresources.Theassociated
resourcesthatcorrespondtothelastfiveargumentstotheroutineareXmNmenuBar,XmNcommand,XmNhorizontalScrollBar,
XmNverticalScrollBar,andXmNworkWindow.XmMainWindowSetAreas()doesnotprovideawaytosetupthemessageareathisregion
mustbesetupbyspecifyingtheXmNmessageWindowresource.
IfanapplicationdoesnotcallXmMainWindowSetAreas(),thewidgetmaystillsetsomeofthestandardregions.WhenaMenuBarchildisaddedtoa
MainWindow,ifXmNmenuBarhasnotbeenset,itissettotheMenuBarchild.WhenaCommandchildisaddedtoaMainWindow,ifXmNcommandhasnot
beenset,itissettotheCommandchild.IfScrollBarsareaddedaschildren,theXmNhorizontalScrollBarandXmNverticalScrollBarresources
maybesetiftheyhavenotalreadybeenspecified.AnychildthatisnotoneofthesetypesisusedfortheXmNworkWindow.Ifyouwanttobecertainaboutwhich
widgetsareusedforthedifferentregions,itiswisetocallXmMainWindowSetAreas()explicitly.
InMotif2.0andlater,XmMainWindowSetAreas()isdeprecated.YoushoulduseXtSetValues()inordertospecifytheXmNcommandWindow,
XmNmenuBar,XmNworkWindow,XmNhorizontalScrollBar,andXmNverticalScrollBarresourcesoftheMainWindow.
XmMainWindowSetAreas()doesnothandletheXmNmessageWindowresourceinanycase.
Example
ThefollowingcodefragmentshowshowtosetsomeoftheregionsofaMainWindow:
Widgettop,main_w,menubar,command_w,text_w,scrolled_text_w
Argargs[4]

main_w=XtVaCreateManagedWidget("main_w",xmMainWindowWidgetClass,top,
NULL)

menubar=XmCreateMenuBar(main_w,"menubar",NULL,0)
XtManageChild(menubar)

XtSetArg(args[0],XmNrows,24)
XtSetArg(args[1],XmNcolumns,80)
XtSetArg(args[2],XmNeditable,False)
XtSetArg(args[3],XmNeditMode,XmMULTI_LINE_EDIT)
text_w=XmCreateScrolledText(main_w,"text_w",args,4)
XtManageChild(text_w)
scrolled_text_w=XtParent(text_w)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page267
command_w=XmCreateText(main_w,"command_w",(Arg*)0,0)
XtManageChild(command_w)

#if(XmVERSION>2)
XtVaSetValues(main_w,
XmNmenuBar,menubar,
XmNcommandWindow,command_w,
XmNhorizontalScrollBar,NULL,
XmNverticalScrollBar,NULL,
XmNWorkWindow,scrolled_text_w,
0)
#else/*XmVERSION<2*/
XmMainWindowSetAreas(main_w,menubar,command_w,
NULL,NULL,scrolled_text_w)
#endif/*XmVERSION<2*/

SeeAlso
XmMainWindowSep(1),XmMainWindow(2),XmScrolledWindow(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page268

XmMapSegmentEncoding
XmCompoundStrings
Name
XmMapSegmentEncodinggetthecompoundtextencodingformatforafontlistelementtag.
Synopsis
char*XmMapSegmentEncoding(fontlist_tag)
char*fontlist_tag

Inputs
fontlist_tag

Specifiesthecompoundstringfontlistelementtag.

Returns
AcharacterstringthatcontainsacopyofthecompoundtextencodingformatorNULLifthefontlistelementtagisnotfoundintheregistry.
Availability
Motif1.2andlater.
Description
XmMapSegmentEncoding()retrievesthecompoundtextencodingformatassociatedwiththespecifiedfontlist_tag.Thetoolkitstoresthemappings
betweencompoundtextencodingsandfontlistelementstagsinaregistry.XmMapSegmentEncoding()searchestheregistryforacompoundtextencoding
formatassociatedwiththespecifiedfontlist_tagandreturnsacopyoftheformat.Iffontlist_tagisnotintheregistry,theroutinereturnsNULL.
XmMapSegmentEncoding()allocatesstorageforthereturnedcharacterstringtheapplicationisresponsibleforfreeingthestorageusingXtFree().
Usage
Compoundtextisanencodingthatisdesignedtorepresenttextfromanylocale.Compoundtextstringsidentifytheirencodingusingembeddedescapesequences.
ThecompoundtextrepresentationwasstandardizedforX11R4foruseasatextinterchangeformatforinterclientcommunication.
XmCvtXmStringToCT()convertsacompoundstringintocompoundtextbyusingthefontlisttagofeachcompoundstringsegmenttoselectacompoundtext
formatfromtheregistryforthesegment.XmMapSegmentEncoding()providesawayforan

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page269

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

applicationtodeterminethecompoundtextformatthatwouldbeusedforaparticularfontlistelementtag.
SeeAlso
XmCvtXmStringToCT(1),XmRegisterSegmentEncoding(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page270

XmMenuPosition
XmMenus
Name
XmMenuPositionpositionapopupmenu.
Synopsis
#include<Xm/RowColumn.h>
voidXmMenuPosition(menu,event)
Widgetmenu
XButtonPressedEvent*event

Inputs
menu

SpecifiesthePopupMenu.

event Specifiestheeventthatwaspassedtotheactionproceduremanagingthe
PopupMenu.

Description
XmMenuPosition()positionsapopupmenu,usingthevaluesofthex_rootandy_rootfieldsfromthespecifiedevent.Anapplicationmustcallthis
routinebeforemanagingthepopupmenu,exceptwhentheapplicationispositioningthemenuitself.
Usage
TheeventparameterforXmMenuPosition()isdefinedtobeoftypeXButtonPressedEventusinganothertypeofeventmightleadtotoolkit
problems.Thex_rootandy_rootfieldsintheeventstructureareusedtopositionthemenuatthelocationofthemousebuttonpress.Youcanmodifythese
fieldstopositionthemenuatanotherlocation.
InMotif2.0andlater,amenuwhoseXmNpopupEnabledresourceisXmPOPUP_AUTOMATICorXmPOPUP_AUTOMATIC_RECURSIVEhasan
installedeventhandlerthatcallsXmMenuPosition()directlywithouttheneedforanapplicationtointerveneinpostingthemenu.
Example
Thefollowingroutineshowstheuseofaneventhandlertopostapopupmenu:
voidPostIt(pb,client_data,event)
Widgetpb
XtPointerclient_data
XEvent*event

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page271
{
Widgetpopup=(Widget)client_data

if(event>button!=3)
return

XmMenuPosition(popup,event)
XtManageChild(popup)
}

SeeAlso
XmRowColumn(2),XmPopupMenu(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page272

XmMessageBoxGetChild
XmMessageBox
Name
XmMessageBoxGetChildgetthespecifiedchildofaMessageBoxwidget.
Synopsis
#include<Xm/MessageB.h>
WidgetXmMessageBoxGetChild(widget,child)
Widgetwidget
unsignedcharchild

Inputs
widget

SpecifiestheMessageBoxwidget.

child

SpecifiesthechildoftheMessageBoxwidget.Passoneofthevalues
fromthelistbelow.

Returns
ThewidgetIDofthespecifiedchildoftheMessageBox.
Description
XmMessageBoxGetChild()returnsthewidgetIDofthespecifiedchildoftheMessageBoxwidget.
Usage
XmDIALOG_CANCEL_BUTTON,XmDIALOG_HELP_BUTTON,andXmDIALOG_OK_BUTTONspecifytheactionbuttonsinthewidget.
XmDIALOG_DEFAULT_BUTTONspecifiesthecurrentdefaultbutton.XmDIALOG_SYMBOL_LABELspecifiesthelabelusedtodisplaythemessagesymbol,
whileXmDIALOG_MESSAGE_LABELspecifiesthemessagelabel.XmDIALOG_SEPARATORspecifiestheseparatorthatispositionedbetweenthemessage
andtheactionbuttons.
FormoreinformationonthedifferentchildrenoftheMessageBox,seethemanualpageinSection2,MotifandXtWidgetClasses.
Structures
Thepossiblevaluesforchildare:
XmDIALOG_CANCEL_BUTTON

XmDIALOG_OK_BUTTON

XmDIALOG_DEFAULT_BUTTON

XmDIALOG_SEPARATOR

XmDIALOG_HELP_BUTTON
XmDIALOG_MESSAGE_LABEL

XmDIALOG_SYMBOL_LABEL

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page273

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmBulletinBoard(2),XmBulletinBoardDialog(2),XmErrorDialog(2),XmInformationDialog(2),XmManager
(2),XmMessageBox(2),XmMessageDialog(2),XmQuestionDialog(2),XmTemplateDialog(2),XmWarningDialog
(2),XmWorkingDialog(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page274

XmNotebookGetPageInfo
XmNotebook
Name
XmNotebookGetPageInforeturninformationaboutaNotebookpage.
Synopsis
#include<Xm/Notebook.h>
XmNotebookPageStatusXmNotebookGetPageInfo(widget,page_number,
page_info)
Widgetwidget
intpage_number
XmNotebookPageInfo*page_info

Inputs
widget

SpecifiestheNotebookwidget.

page_number

Specifiesalogicalpagenumber.

Outputs
page_info

Returnsastructureintowhichtherequestedpageinformationis
placed.

Returns
Thestatusofthesearchfortherequestedinformation.
Availability
Motif2.0andlater.
Description
XmNotebookGetPageInfo()returnsinformationassociatedwithalogicalpageoftheNotebook.TheNotebooksearchesthroughthelistofitschildren,
lookingforthosethatareassociatedwiththelogicalpagenumberspecifiedbypage_number.TheNotebookprincipallysearchesforpagechildren,butcollects
datainpassingonanystatusareachildwithamatchinglogicalnumber,andmajorandminortabchildrenwhoselogicalpagenumberdoesnotexceed
page_number.Thefunctionreturnsapage_infostructurethatcontainsthedatacollectedforeachofthechildwidgettypes.
Iftherequestedpage_numberisgreaterthanthevalueoftheNotebookXmNlastPageNumberresource,orlessthantheNotebook
XmNfirstPageNumbervalue,thefunctionreturnsXmPAGE_INVALID.Otherwise,ifexactlyonematchingpagechildisfound,thefunctionreturns
XmPAGE_FOUND.Ifmorethanonematchingpagechildisfound,theroutinereturnsXmPAGE_DUPLICATED.Ifnomatchingpagechildisfound,thereturn
valueisXmPAGE_EMPTY.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page275

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
XmNotebookGetPageInfo()performsalinearsearchthroughthechildrenoftheNotebookforwidgetswhoseXmNpageNumberconstraintresource
matchestherequestedpage_number.IfamatchingchildisfoundwiththeXmNnotebookChildTyperesourcesettoXmPAGE,thewidgetIDisstored
withinthepage_widgetelementofthepage_infostructure.IfamatchingchildisoftypeXmSTATUS_AREA,thewidgetIDisplacedinthe
status_area_widgetelement.IfduringthesearchachildwidgetisfoundwhichisoftypeXmMAJOR_TABandthelogicalpagenumberofthechilddoes
notexceedpage_number,thewidgetIDisstoredwithinthemajor_tab_widgetelement.Again,ifachildwidgetisfoundoftypeXmMINOR_TABand
thelogicalpagenumberofthechilddoesnotexceedpage_number,thewidgetIDisstoredwithintheminor_tab_widgetelementofpage_info.
Thepage_widget,status_area_widget,major_tab_widget,andminor_tab_widgetelementsofthepage_infostructureare
setduringthesearchaseachNotebookchildiscompared,evenifnoXmPAGEchildisfoundorifpage_numberexceedstheNotebookfirstandlastpage
resources.Anelementofthepage_infostructurecanbeNULLifnochildoftheassociatedtypeisfoundwithalogicalpagenumberthatmeetsthematching
criteria.
TheNotebookautomaticallysortschildrenintoascendinglogicalpageorder,andthesearchisterminatedassoonasanychildhasalogicalpagenumberthatexceeds
therequestedpage_number.
Structures
XmNotebookPageInfoisdefinedasfollows:
typedefstruct{
intpage_number/*therequestedpagenumber*/
Widgetpage_widget/*anymatchingpagewidget*/
Widgetstatus_area_widget/*anymatchingstatusareawidget*/
Widgetmajor_tab_widget/*thenearestmajortabwidget*/
Widgetminor_tab_widget/*thenearestminortabwidget*/
}XmNotebookPageInfo

AXmNotebookPageStatuscanhaveoneofthefollowingvalues:
XmPAGE_FOUND

XmPAGE_EMPTY

XmPAGE_INVALID

XmPAGE_DUPLICATED

SeeAlso
XmNotebook(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page276

XmObjectAtPoint
XmWidgetLayout
Name
XmObjectAtPointdeterminethechildnearesttoapoint.
Synopsis
#include<Xm/Xm.h>
WidgetXmObjectAtPoint(widget,x,y)
Widgetwidget
Positionx
Positiony

Inputs
widget

Specifiesacompositewidget.

SpecifiesanXcoordinaterelativetothewidgetleftside.

SpecifiesanYcoordinaterelativetothewidgettopside.

Returns
Thewidgetmostcloselyassociatedwiththecoordinatex,y.
Availability
Motif2.0orlater.
Description
XmObjectAtPoint()searchesthelistofchildrenofwidgetandreturnsthewidgetIDofthechildassociatedwiththex,ycoordinate.xandyare
interpretedaspixelvalues,relativetothetopleftcorneroftheManagerwidget.
Usage
XmObjectAtPoint()callstheobject_at_pointmethodassociatedwithaManagerwidget,inordertodeterminethechildoftheManagermost
closelyassociatedwiththecoordinatespecifiedbyxandy.Eachwidgetclassmayoverridetheobject_at_pointmethodinheritedfromManager,toredefine
whatismeantby"associated."
ThedefaultManagerclassmethodreturnsthelastmanagedgadgetthatcontainsthecoordinate.DrawingAreaoverridesthedefaultmethodandperformsasimple
linearsearchforthefirstmanagedchild,widget,orgadgetthatcontainsthecoordinate.
TheContaineroverridestheobject_at_pointmethodandsearchesthroughthelistoflogicalchildnodes,usinganyXmQTpointIntraitheldbyeachchild
todeterminealogicalmatchwiththecoordinate.IfnoXmQTpointInisheldbythechild,theContainersimplycheckswhetherthethecoordinateiswithinthe
childdimensions.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page277

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

TheIconGadgetholdstheXmQTpointIntrait,althoughneitherthisfactnorthetraititselfisotherwisedocumented.
SeeAlso
XmContainer(2),XmDrawingArea(2),XmGadget(2),XmIconGadget(2),XmManager(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page278

XmOptionButtonGadget
XmMenus
Name
XmOptionButtonGadgetgettheCascadeButtonGadgetinanoptionmenu.
Synopsis
#include<Xm/RowColumn.h>
WidgetXmOptionButtonGadget(option_menu)
Widgetoption_menu

Inputs
option_menu

Specifiestheoptionmenu.

Returns
ThewidgetIDoftheinternalCascadeButtonGadget.
Description
XmOptionButtonGadget()returnsthewidgetIDfortheinternalCascadeButtonGadgetthatiscreatedwhenthespecifiedoption_menuwidgetis
created.AnoptionmenuisaRowColumnwidgetcontainingtwogadgets:aCascadeButtonGadgetthatdisplaysthecurrentselectionandpoststhesubmenu,anda
LabelGadgetthatdisplaystheXmNlabelStringresource.
Usage
XmOptionButtonGadget()providesawayforanapplicationtoaccesstheinternalCascadeButtonGadgetthatispartofanoptionmenu.Onceyouhave
retrievedthegadget,youcanalteritsappearance.InMotif1.2andlater,youcanalsospecifyresourcesforthegadgetusingthewidgetnameOptionButton.
SeeAlso
XmOptionLabelGadget(1),XmCascadeButtonGadget(2),XmLabelGadget(2),XmOptionMenu(2),XmRowColumn
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page279

XmOptionLabelGadget
XmMenus
Name
XmOptionLabelGadgetgettheLabelGadgetinanoptionmenu.
Synopsis
#include<Xm/RowColumn.h>
WidgetXmOptionLabelGadget(option_menu)
Widgetoption_menu

Inputs
option_menu

Specifiestheoptionmenu.

Description
XmOptionLabelGadget()returnsthewidgetIDfortheinternalLabelGadgetthatiscreatedwhenthespecifiedoption_menuwidgetiscreated.An
optionmenuisaRowColumnwidgetcontainingtwogadgets:aLabelGadgetthatdisplaystheXmNlabelStringresource,andaCascadeButtonGadgetthat
displaysthecurrentselectionandpoststhesubmenu.
Usage
XmOptionLabelGadget()providesawayforanapplicationtoaccesstheinternalLabelGadgetthatispartofanoptionmenu.Onceyouhaveretrievedthe
gadget,youcanalteritsappearance.InMotif1.2andlater,youcanalsospecifyresourcesforthegadgetusingthewidgetnameOptionLabel.
SeeAlso
XmOptionButtonGadget(1),XmCascadeButtonGadget(2),XmLabelGadget(2),XmOptionMenu(2),XmRowColumn
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page280

XmParseMappingCreate
XmParseMapping
Name
XmParseMappingCreatecreateaparsemapping.
Synopsis
XmParseMappingXmParseMappingCreate(arg_list,arg_count)
Arg*arg_list
Cardinalarg_count

Inputs
arg_list

Specifiesanargumentlist,consistingofresourcename/valuepairs.

arg_count

Specifiesthenumberofargumentsinarg_list.

Returns
Anallocatedparsemapping.
Availability
Motif2.0andlater.
Description
XmParseMappingCreate()createsaparsemapping,whichisanentryinaparsetable.Aparsemappingconsistsminimallyofamatchpatternanda
substitutionpatternorprocedurethatcanbeusedbystringparsingfunctionsinordertocompareagainstandsubsequentlytransformtext.Aparsemappingiscreated
througharesourcestyleargumentlist,wherearg_listisanarrayofresourcename/valuepairsandarg_countisthenumberofsuchpairs.
Usage
Aparsetableisanarrayofparsemappings.XmParseMappingCreate()createsaparsemappingusingaresourcestyleparameterlist.Theparsetablecan
subsequentlybepassedtoXmStringParseText()inordertofilterormodifyaninputstring.
XmParseMappingCreate()allocatesstorageassociatedwiththereturnedparsemappingobject.Itistheresponsibilityoftheprogrammertofreethe
allocatedmemorybyacalltoXmParseMappingFree()attheappropriatetime.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page281

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
Thefollowingcodefragmentcreatesaparsemappingthatperformsasimpleswapofoccurrencesoftwocharacterswithinaninputstring:
char*swapover(input,a,b)
char*input/*inputstring*/
char*a/*onlyfirstcharacterinarrayused*/
char*b/*onlyfirstcharacterinarrayused*/
{
XmStringtmp
XmParseMappingparse_mapping
XmParseTableparse_table=(XmParseTable)XtCalloc(2,
sizeof(XmParseMapping))
Cardinalparse_table_index=0
Argargv[4]
Cardinalargc=0
char*output=(char*)0

/*createaXmParseMappingobjecttoswap*awith*b*/
argc=0
tmp=XmStringCreateLocalized(a)
XtSetArg(argv[argc],XmNincludeStatus,XmINSERT)argc++
XtSetArg(argv[argc],XmNsubstitute,tmp)argc++
XtSetArg(argv[argc],XmNpattern,b)argc++
XtSetArg(argv[argc],XmNpatternType,XmCHARSET_TEXT)argc++
parse_mapping=XmParseMappingCreate(argv,argc)
parse_table[parse_table_index++]=parse_mapping
XmStringFree(tmp)

/*createaXmParseMappingobjecttoswap*bwith*a*/
argc=0
tmp=XmStringCreateLocalized(b)
XtSetArg(argv[argc],XmNincludeStatus,XmINSERT)argc++
XtSetArg(argv[argc],XmNsubstitute,tmp)argc++
XtSetArg(argv[argc],XmNpattern,a)argc++
XtSetArg(argv[argc],XmNpatternType,XmCHARSET_TEXT)argc++
parse_mapping=XmParseMappingCreate(argv,argc)
parse_table[parse_table_index++]=parse_mapping
XmStringFree(tmp)

/*substituteusingtheXmParseMapping.*/
tmp=XmStringParseText((XtPointer)input,NULL,NULL,XmCHARSET_TEXT,
parse_table,parse_table_index,NULL)
XmParseTableFree(parse_table,parse_table_index)

/*convertXmStringtoString*/
if(tmp!=(XmString)0){
XmStringGetLtoR(tmp,XmFONTLIST_DEFAULT_TAG,&output)
XmStringFree(tmp)
}

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page282
returnoutput
}

SeeAlso
XmParseMappingFree(1),XmParseMappingGetValues(1),XmParseMappingSetValues(1),XmParseTableFree(1),
XmStringParseText(1),XmStringUnparse(1),XmParseMapping(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page283

XmParseMappingFree
XmParseMapping
Name
XmParseMappingFreefreethememoryusedbyaparsemapping.
Synopsis
voidXmParseMappingFree(parse_mapping)
XmParseMappingparse_mapping

Inputs
parse_mapping

Specifiesaparsemapping.

Availability
Motif2.0andlater.
Description
XmParseMappingFree()deallocatesstorageusedbythespecifiedparsemappingobject.
Usage
TheXmParseMappingtypeisopaque.Itrepresentsanentryinaparsetablethatcanbeusedfortransformingtext.Aparsemappingiscreatedby
XmParseMappingCreate(),whichallocatesstoragefortheobjectrepresentedbythetype.Itistheresponsibilityoftheprogrammertoreclaimthememory
whentheparsemappingisnolongerrequired.ItisimportanttocallXmParseMappingFree()ratherthanXtFree()otherwise,compoundstringsinternally
referencedbytheobjectarenotdeallocated.
SeeAlso
XmParseMappingCreate(1),XmParseMappingGetValues(1),XmParseMappingSetValues(1),XmParseTableFree
(1),XmStringParseText(1),XmParseMapping(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page284

XmParseMappingGetValues
XmParseMapping
Name
XmParseMappingGetValuesfetchresourcesfromaparsemappingobject.
Synopsis
voidXmParseMappingGetValues(parse_mapping,arg_list,arg_count)
XmParseMappingparse_mapping
Arg*arg_list
Cardinalarg_count

Inputs
parse_mapping

Specifiesaparsemappingobject.

arg_count

Specifiesthenumberofargumentsinthelistarg_list.

Outputs
arg_list Specifiestheargumentlistofname/valuepairsthatcontaintheresource
namesandaddressesintowhichtheresourcevaluesaretobestored.

Availability
Motif2.0andlater.
Description
XmParseMappingGetValues()fetchesselectedattributesfromparse_mapping.Thesetofattributesretrievedisspecifiedthroughtheresourcelist
arg_list,whereeachelementofthelistisastructurethatcontainsaname/valuepair.Thenumberofelementswithinthelistisgivenbyarg_count.
Usage
IftheXmNsubstituteattributeoftheparsemappingisretrieved,theprocedurereturnsacopyoftheinternalvalue.Itistheresponsibilityoftheprogrammerto
recovertheallocatedspaceatasuitablepointbycallingXmStringFree().
Example
ThefollowingcodeillustratesfetchingthevaluesfromanXmParseMapping:
XtPointerpattern
XmTextTypepattern_type
XmStringsubstitute
XmParseProcparse_proc

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page285
XtPointerclient_data
XmIncludeStatusinclude_status
Argargv[6]
Cardinalargc=0

/*ConstructaresourcestyleargumentlistforXmParseMappingvalues*/
XtSetArg(argv[argc],XmNpattern,&pattern)argc++
XtSetArg(argv[argc],XmNpatternType,&pattern_type)argc++
XtSetArg(argv[argc],XmNsubstitute,&substitute)argc++
XtSetArg(argv[argc],XmNinvokeParseProc,&parse_proc)argc++
XtSetArg(argv[argc],XmNclientData,&client_data)argc++
XtSetArg(argv[argc],XmNincludeStatus,&include_status)argc++

/*Fetchthevaluesparse_mappingisanunspecifiedXmParseMapping*/
XmParseMappingGetValues(parse_mapping,argv,argc)
...

/*XmParseMappingGetValuesreturnsacopyoftheXmNsubstitutevalue,*/
/*whichmustbefreedwhennolongerrequiredbytheapplication*/
XmStringFree(substitute)

SeeAlso
XmParseMappingCreate(1),XmParseMappingFree(1),XmParseMappingSetValues(1),XmParseTableFree(1),
XmParseMapping(2),XmStringFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page286

XmParseMappingSetValues
XmParseMapping
Name
XmParseMappingSetValuessetsresourcesforaparsemappingobject.
Synopsis
voidXmParseMappingSetValues(parse_mapping,arg_list,arg_count)
XmParseMappingparse_mapping
Arg*arg_list
Cardinalarg_count

Inputs
parse_mapping

Specifiesaparsemappingobject.

arg_list

Specifiestheargumentlistofname/valuepairsthatcontaintheresources
tobemodified.

arg_count

Specifiesthenumberofargumentsinthelistarg_list.

Availability
Motif2.0andlater.
Description
XmParseMappingSetValues()setsselectedattributeswithinparse_mapping.Thesetofattributesthatismodifiedisspecifiedthroughtheresource
listarg_list,whereeachelementofthelistisastructurethatcontainsaname/valuepair.Thenumberofelementswithinthelistisgivenbyarg_count.
Usage
IftheXmNsubstituteattributeoftheparsemappingisset,theprocedureinternallymakesacopyofthesuppliedvalue.Itistheresponsibilityoftheprogrammer
torecovertheallocatedspaceatasuitablepointbycallingXmStringFree().
Example
Thefollowingskeletoncodeillustrateschangingthevaluesofaparsemapping:
XmIncludeStatusmap_tab(XtPointer*in_out,
XtPointertext_end,/*unused*/
XmTextTypetype,/*unused*/
XmStringTagtag,/*unused*/
XmParseMappingentry,/*unused*/
intpattern_length,/*unused*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page287
XmString*str_out,
XtPointercall_data)/*unused*/
{
/*InsertanXmStringTabcomponentintotheoutputstream*/
*str_out=XmStringComponentCreate(XmSTRING_COMPONENT_TAB,0,NULL)
*in_out=(*in_out+1)

returnXmINSERT
}

/*changeaparsemappingtoinvoketheaboveparseprocedure*/
voidset_parse_tab_mapping(XmParseMappingparse_mapping)
{
Argargv[4]
Cardinalargc=0

/*constructresourcestyleargumentlistforXmParseMappingvalues*/
XtSetArg(argv[argc],XmNpattern,"\t")argc++
XtSetArg(argv[argc],XmNpatternType,XmCHARSET_TEXT)argc++
XtSetArg(argv[argc],XmNincludeStatus,XmINVOKE)argc++
XtSetArg(argv[argc],XmNinvokeParseProc,map_tab)argc++

/*changethevalues*/
XmParseMappingSetValues(parse_mapping,argv,argc)
}

SeeAlso
XmParseMappingCreate(1),XmParseMappingFree(1),XmParseMappingGetValues(1),XmParseTableFree(1),
XmParseMapping(2),XmStringFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page288

XmParseTableFree
XmParseMapping
Name
XmParseTableFreefreethememoryusedbyaparsetable.
Synopsis
voidXmParseTableFree(parse_table,count)
XmParseTableparse_table
Cardinalparse_count

Inputs
parse_table

Specifiesaparsetable.

parse_count

Specifiesthenumberofentriesintheparsetable.

Availability
Motif2.0andlater.
Description
XmParseTableFree()deallocatesstorageusedbythespecifiedparse_table.Inaddition,thefunctiondeallocatesstorageusedbyanyparsemapping
elementsofthetable.parse_countindicatesthenumberofmappingelementswithinthetable.
Usage
AparsetableisanarrayofXmParseMappingobjects.XmParseMappingisanopaquetypethatisusedwhentransformingtext.Eachparsemappingobject
allocatesmemoryinadditiontoanymemoryallocatedbytheparsetablearray.ItisimportanttocallXmParseTableFree()ratherthanXtFree()when
deallocatingstorageassociatedwithaparsetableotherwise,objectswithinthearrayandcompoundstringsinternallyreferencedbytheparsemappingobjectsarenot
deallocated.Thefunctionshouldbecalledwhenaparsetableisnolongerneeded.
Example
/*allocateaparsetable*/
XmParseTableparse_table=(XmParseTable)XtCalloc(2,
sizeof(XmParseMapping))
Cardinalparse_table_index=0
XmParseMappingparse_mapping
Argargv[MAX_ARGS]
Cardinalargc=0

/*createaXmParseMappingobject*/
argc=0

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page289
...
parse_mapping=XmParseMappingCreate(argv,argc)
/*insertintoparsetable*/
parse_table[parse_table_index++]=parse_mapping

/*createanotherXmParseMappingobject*/
argc=0
...
parse_mapping=XmParseMappingCreate(argv,argc)
/*insertintoparsetable*/
parse_table[parse_table_index++]=parse_mapping

/*usetheParseTable.*/
tmp=XmStringParseText((XtPointer)input,NULL,NULL,XmCHARSET_TEXT,
parse_table,parse_table_index,NULL)

/*Freetheparsetable:thisalsofreestheparsemappings*/
XmParseTableFree(parse_table,parse_table_index)

SeeAlso
XmParseMappingCreate(1),XmParseMappingFree(1),XmParseMappingGetValues(1),XmParseMappingSetValues
(1),XmParseMapping(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page290

XmPrintPopupPDM
XmPrint
Name
XmPrintPopupPDMnotifythePrintDisplayManager.
Synopsis
#include<Xm/Print.h>
XtEnumXmPrintPopupPDM(print_shell,video_shell)
Widgetprint_shell
Widgetvideo_shell

Inputs
print_shell

SpecifiesaPrintShellwidget.

video_shell

SpecifiesthewidgetonwhosebehalfthePDMdialogisrequired.

Returns
ReturnsXmPDM_NOTIFY_SUCCESSifthePDMwasnotified,XmPDM_NOTIFY_FAILotherwise.
Availability
Motif2.1andlater.
Description
XmPrintPopupPDM()sendsanotificationtostartaPrintDisplayManagerfortheapplication.Thenotificationisissuedtoeitherthedisplayassociatedwith
print_shellorthedisplayofvideo_shell,dependinguponthevalueoftheenvironmentvariableXPDMDISPLAY.XPDMDISPLAYcanonlybesetto
"print"or"video".Ifthevalueis"print",thenotificationissenttothedisplayofprint_shell.Similarly,thevalue''video"sendsthenotificationtothedisplayof
video_shell.Ifthenotificationissent,thefunctionreturnsXmPDM_NOTIFY_SUCCESS,otherwisethereturnvalueisXmPDM_NOTIFY_FAIL.
Usage
XmPrintPopupPDM()isaconveniencefunctionthatissuesanotificationthroughtheXselectionmechanisminordertostartaPrintDialogManager.The
notificationisissuedasynchronously:thereturnvalueXmPDM_NOTIFY_SUCCESSindicatesthatthemessagehassuccessfullybeenissued,notthatanyPDMis
nowinitialized.InordertotrackthestatusofthePDM,theprogrammerregistersanXmNpdmNotificationCallbackwiththewidgetprint_shell,
whichmustbeaninstanceofthePrintShellwidgetclass.Toensurethatthecontentsofthevideo_shellisnotmodifiedwhilethePDMisinitializing,
XmPrintPopupPDM()createsaninputonlywindow

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page291

overthetopofvideo_shell,andthiswindowisonlyremovedwhenthePDMindicatesthatitispresentoriftheselectionXmIPDM_STARTtimesout.The
timeoutperiodissetattwominutes.
SeeAlso
XmPrintSetup(1),XmPrintToFile(1),XmRedisplayWidget(1),XmPrintShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page292

XmPrintSetup
XmPrint
Name
XmPrintSetupcreateaPrintShellwidget.
Synopsis
#include<Xm/Print.h>
WidgetXmPrintSetup(video_widget,print_screen,name,arg_list,
arg_count)
Widgetvideo_widget
Screen*print_screen
Stringname
ArgListarg_list
Cardinalarg_count

Inputs
video_widget

Specifiesawidgetfromwhichvideoapplicationdataisfetched.

print_screen

SpecifiesthescreenonwhichthePrintShelliscreated.

name

SpecifiesthenameofthecreatedPrintShell.

arg_list

Specifiesanargumentlistofname/valuepairsthatcontainresourcesfor
thePrintShell.

arg_count Specifiesthenumberofargumentsinthelistarg_list.

Returns
ThecreatedPrintShell,orNULLifnoApplicationShellcanbefoundfromvideo_widget.
Availability
Motif2.1andlater.
Description
XmPrintSetup()createsaPrintShellwidgetwiththespecifiednameonthescreenprint_screen.ThenewPrintShellisreturnedtotheapplication.
Resourcesthatconfigurethenewprintshellaresuppliedthroughanarrayofstructuresthatcontainname/valuepairs.Thearrayofresourcesisarg_list,andthe
numberofitemsinthearrayisarg_count.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page293

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
XmPrintSetup()createsanewApplicationShellonthescreenspecifiedbyprint_screenandthencreatesaPrintShellasapopupchild.Thenew
ApplicationShelliscreatedwiththesamenameandclassastheApplicationShellfromwhichvideo_widgetisdescended.TheXmNmappedWhenManaged
resourceofthePrintShellissettoFalse,undertheassumptionthatsubsequentnotificationofthestartofajoborpageisthecorrecttimetomapthewidget.
Finally,thePrintShellisrealizedandreturned.
SeeAlso
XmPrintPopupPDM(1),XmPrintToFile(1),XmRedisplayWidget(1),XmPrintShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page294

XmPrintToFile
XmPrint
Name
XmPrintToFilesaveXPrintServerdatatofile.
Synopsis
#include<Xm/Print.h>
XtEnumXmPrintToFile(display,file_name,finish_proc,client_data)
Display*display
Stringfile_name
XPFinishProcfinish_proc
XPointerclient_data

Inputs
display

SpecifiestheprintconnectiontotheXserver.

file_name

Specifiesthenameofthefiletocontaintheprintoutput.

finish_proc

Specifiesaprocedurecalledwhenprintingisfinished.

client_data

Specifiesapplicationdatatobepassedtofinish_proc.

Returns
Trueifprintingcanbeinitiated,otherwiseFalse.
Availability
Motif2.1andlater.
Description
XmPrintToFile()isaconveniencefunctionthatprovidesasimpleinterfaceontotheXPrintmechanism,inordertosaveprintdatatothefilefile_name.
Printingtakesplaceasynchronously.Theprogrammerreceivesnotificationofthestatusoftheprintingtaskbysupplyingfinish_proc,whichiscalledwhenthe
taskisfinished.ThedisplayparameteristheprintconnectiontotheXserverandisusedtodeduceanapplicationnameandclass.
Usage
IfXmPrintToFile()cannotopenthefilefile_nameforwriting,createapipe,orforkoffachildprocess,theprocedurereturnsFalse.Anapplication
nameandclassisdeducedusingthedisplayparameter.Thisinformationisusedbythechildprocess,whichcreatesanewapplicationcontextandopensanew
displayconnectionusingthesamenameandclassastheapplicationprocess.DataisretrievedfromtheXserverthroughacalltoXpGetDocumentData().The
parentprocessdoesnotwait

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page295

forthechildtocomplete,butreturnsimmediatelyafterinitiatingthechildprocess.ThereturnvalueTruethereforedoesnotmeanthattheprinttaskiscomplete,but
merelythatthetaskhasbeeninitiated.
TheapplicationisnotifiedoftaskcompletionthroughthesuppliedXPFinishProc.Thestatusparameterpassedtothefinishprocedurewhenthetaskis
completedissettoXPGetDocFinishedonsuccessfulcompletion.Ifforanyreasonthechildprocessfailstoprintthedata,thefilefile_nameisbothclosed
andremoved.ThefileisclosedinanycasepriortocallingtheXPFinishProc.
XpStartJob()mustbecalledbytheapplicationbeforeXmPrintToFile()canbecalled.
Structures
AnXPFinishProcisspecifiedasfollows:
typedefvoid(*XPFinishProc)(Display*display,
XPContextcontext,
XPGetDocStatusstatus,
XPointerclient_data)

IfstatusisXPGetDocFinished,theprinttaskhascompletedsuccessfully.
SeeAlso
XmPrintPopupPDM(1),XmPrintSetup(1),XmRedisplayWidget(1),XmPrintShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page296

XmProcessTraversal
XmKeyboardTraversal
Name
XmProcessTraversalsetthewidgetthathasthekeyboardfocus.
Synopsis
BooleanXmProcessTraversal(widget,direction)
Widgetwidget
XmTraversalDirectiondirection

Inputs
widget

Specifiesthewidgetwhosehierarchyistobetraversed.

direction Specifiesthedirectioninwhichtotraversethehierarchy.Passoneofthe
valuesfromthelistbelow.

Returns
TrueonsuccessorFalseotherwise.
Description
XmProcessTraversal()causestheinputfocustochangetoanotherwidgetunderapplicationcontrol,ratherthanasaresultofkeyboardtraversalevents
fromauser.widgetspecifiesthewidgetwhosehierarchyistraverseduptotheshellwidget.Ifthatshellhasthekeyboardfocus,XmProcessTraversal()
changesthekeyboardfocusimmediately.Ifthatshelldoesnothavethefocus,theroutinedoesnothaveaneffectuntiltheshellreceivesthefocus.
Thedirectionargumentspecifiesthenatureofthetraversaltobemade.Ineachcase,theroutinelocatesthehierarchythatcontainsthespecifiedwidgetand
thenperformstheactionthatisparticulartothedirection.Ifthenewsettingsucceeds,XmProcessTraversal()returnsTrue.Theroutinereturns
FalseifthekeyboardfocuspolicyisnotXmEXPLICIT,ifnotraversibleitemsexist,oriftheargumentsareinvalid.
Usage
ForXmTRAVERSE_CURRENT,ifthetabgroupthatcontainswidgetisinactive,itismadetheactivetabgroup.Ifwidgetisintheactivetabgroup,itisgiven
thekeyboardfocusifwidgetistheactivetabgroup,thefirsttraversableiteminitisgiventhekeyboardfocus.ForXmTRAVERSE_UP,
XmTRAVERSE_DOWN,XmTRAVERSE_LEFT,andXmTRAVERSE_RIGHT,inthehierarchythatcontainswidget,theiteminthespecifieddirectionfrom
theactiveitemisgiventhekeyboardfocus.ForXmTRAVERSE_NEXTandXmTRAVERSE_PREV,inthehierarchythatcontainswidget,thenextandprevious
itemsinchildorderfromtheactiveitemaregivenkeyboardfocus.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page297

ForXmTRAVERSE_HOME,inthehierarchythatcontainswidget,thefirsttraversableitemisgiventhekeyboardfocus.For
XmTRAVERSE_NEXT_TAB_GROUPandXmTRAVERSE_PREV_TAB_GROUP,inthehierarchythatcontainswidget,thenextandprevioustabgroups
fromtheactivetabgrouparegiventhekeyboardfocus.
InMotif2.0andlater,XmTRAVERSE_GLOBALLY_FORWARDandXmTRAVERSE_GLOBALLY_BACKWARDareprovidedinordertoimplementthe
XmDisplayresourceXmNenableButtonTab.Iftheresourceisenabled,usingXmTRAVERSE_GLOBALLY_FORWARDcausesnavigationtoproceedto
thenextitemwithinthecurrenttabgroup,unlessthecurrentlocationisthelastiteminthegroup,whennavigationisintothenexttabgroup.Similarly,for
XmTRAVERSE_GLOBALLY_BACKWARD,navigationproceedstothepreviousiteminthecurrenttabgroup,unlessthecurrentlocationisthefirstiteminthe
group,whennavigationisintotheprevioustabgroup.TheinterpretationofXmTRAVERSE_GLOBALLY_FORWARDand
XmTRAVERSE_GLOBALLY_BACKWARDisreversedwhereXmNlayoutDirectionisXmRIGHT_TO_LEFT.
XmProcessTraversal()doesnotallowtraversaltowidgetsindifferentshellsorwidgetsthatarenotmapped.CallingXmProcessTraversal()
insideaXmNfocusCallbackcausesasegmentationfault.
Example
ThefollowingcodefragmentsshowstheuseofXmProcessTraversal()asacallbackroutineforatextwidget.WhentheuserpressestheReturnkey,the
keyboardfocusisadvancedtothenextinputarea:
Widgetform,label,text

form=XtVaCreateWidget("form",xmFormWidgetClass,parent,
XmNorientation,XmHORIZONTAL,
NULL)

label=XtVaCreateManagedWidget("label",xmLabelGadgetClass,form,
XmNleftAttachment,XmATTACH_FORM,
XmNtopAttachment,XmATTACH_FORM,
XmNbottomAttachment,XmATTACH_FORM,
NULL)

text=XtVaCreateManagedWidget("text",xmTextWidgetClass,form,
XmNleftAttachment,XmATTACH_WIDGET,
XmNleftWidget,label,
XmNtopAttachment,XmATTACH_FORM,
XmNrightAttachment,XmATTACH_FORM,
XmNbottomAttachment,XmATTACH_FORM,
NULL)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page298
XtAddCallback(text,XmNactivateCallback,
XmProcessTraversal,(XtPointer)XmTRAVERSE_NEXT_TAB_GROUP)

XtManageChild(form)

Structures
Thepossiblevaluesfordirectionare:
XmTRAVERSE_CURRENT

XmTRAVERSE_NEXT

XmTRAVERSE_UP

XmTRAVERSE_PREV

XmTRAVERSE_DOWN

XmTRAVERSE_HOME

XmTRAVERSE_LEFT

XmTRAVERSE_NEXT_TAB_GROUP

XmTRAVERSE_RIGHT

XmTRAVERSE_PREV_TAB_GROUP

XmTRAVERSE_GLOBALLY_FORWARD

XmTRAVERSE_GLOBALLY_BACKWARD

SeeAlso
XmGetFocusWidget(1),XmGetTabGroup(1),XmGetVisibility(1),XmIsTraversable(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page299

XmRedisplayWidget
XmPrint
Name
XmRedisplayWidgetforcewidgetexposureforprinting.
Synopsis
#include<Xm/Print.h>
voidXmRedisplayWidget(widget)
Widgetwidget

Inputs
widget

Specifiesthewidgettoredisplay.

Availability
Motif2.1andlater.
Description
XmRedisplayWidget()forceswidgettoredisplayitselfbyinvokingtheexposemethodofthewidget.Theroutineisaconveniencefunctionthathidesthe
internalsoftheX11R6Xpmechanisms,whichusewidgetexposureinordertoimplementprinting.
Usage
XmRedisplayWidget()constructsaregionthatcorrespondspreciselytothelocationandareaoccupiedbyawidget.Theexposemethodofthewidget
iscalleddirectlyusingtheregioninordertoredisplaythewidget.XmRedisplayWidget()issynchronousineffect.Asynchronousprintingisdonebycreatinga
PrintShellandspecifyingXmNstartJobCallback,XmNendJobCallback,andXmNpageSetupCallbackprocedures,whichareinvokedin
responsetoXPrinteventsastheyarrive.
XmRedisplayWidget()isnotmultithreadsafe,noristhewidgetparameterfullyvalidateditisimplicitlyassumedtobethedescendantofaPrintShell.
Example
Thefollowingcodesynchronouslyprintsthecontentsofatextwidget:
Widgetapp_shell,app_text
Screenprint_screen
Displayprint_display
Widgetprint_shell,print_form,print_text
shortrows
intlines,pages,page

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page300
char*data
...
/*createaconnectiontotheXPrintserver*/
print_shell=XmPrintSetup(app_shell,print_screen,"PrintShell",NULL,0)
/*createasuitableprinthierarchy*/
print_form=XmCreateForm(print_shell,...)
print_text=XmCreateText(print_form,...)
/*configureandmanagetheprinthierarchy*/
...
/*copythevideotexttotheprinttext*/
/*whatiscopieddependsuponwhetheritis*/
/*contentsand/orvisualsthatareprinted*/
...
data=XmTextGetString(app_text)
XmTextSetString(print_text,data)
XtFree(data)
...

/*startaprintjob*/
print_display=XtDisplay(print_shell)
XpStartJob(print_display,XPSpool)

/*deducenumberoflogicalpagesintheprinttextwidget*/
XtVaGetValues(print_text,XmNrows,&rows,XmNtotalLines,&lines,0)

for(page=0,pages=lines/rowspage<pagespage++){
/*startofpagenotification*/
XpStartPage(print_display,XtWindow(print_shell),False)

/*forcetheprinttexttoexposeitself*/
XmRedisplayWidget(print_text)

/*endofpagenotification*/
XpEndPage(print_display)

/*scrolltonextpage*/
XmTextScroll(print_text,rows)
}

/*endofprintjobnotification*/
XpEndJob(print_display)
...

SeeAlso
XmPrintPopupPDM(1),XmPrintSetup(1),XmPrintToFile(1),XmPrintShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page301

XmRegisterSegmentEncoding
XmCompoundStrings
Name
XmRegisterSegmentEncodingregisteracompoundtextencodingformatforafontlistelementtag.
Synopsis
char*XmRegisterSegmentEncoding(fontlist_tag,ct_encoding)
char*fontlist_tag
char*ct_encoding

Inputs
fontlist_tag

Specifiesthecompoundstringfontlistelementtag.

ct_encoding

Specifiesthecompoundtextcharacterset.

Returns
Theoldcompoundtextencodingformatforapreviouslyregisteredfontlistelementtag,orNULLforanewfontlistelementtag.
Availability
Motif1.2andlater.
Description
XmRegisterSegmentEncoding()registersthespecifiedcompoundtextencodingformatct_encodingforthespecifiedfontlist_tag.Both
fontlist_tagandct_encodingmustbeNULLterminatedISO88591strings.Ifthefontlisttagisalreadyassociatedwithacompoundtextencoding
format,registeringthefontlisttagagainoverwritesthepreviousentryandtheroutinereturnsthepreviouscompoundtextformat.Ifthefontlisttagishasnotbeen
registeredbefore,theroutinereturnsNULL.Ifct_encodingisNULL,thefontlisttagisunregistered.Ifct_encodingis
XmFONTLIST_DEFAULT_TAG,thefontlisttagismappedtothecodesetofthecurrentlocale.XmRegisterSegmentEncoding()allocatesstorageif
theroutinereturnsacharacterstringtheapplicationisresponsibleforfreeingthestorageusingXtFree().
Usage
Compoundtextisanencodingthatisdesignedtorepresenttextfromanylocale.Compoundtextstringsidentifytheirencodingusingembeddedescapesequences.
ThecompoundtextrepresentationwasstandardizedforX11R4foruseasatextinterchangeformatforinterclientcommunication.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page302

XmCvtXmStringToCT()convertsacompoundstringintocompoundtext.Theroutineusesthefontlisttagofeachcompoundstringsegmenttoselecta
compoundtextformatforthesegment.Amappingbetweenfontlisttagsandcompoundtextencodingformatsisstoredinaregistry.
XmRegisterSegmentEncoding()providesawayforanapplicationtomapparticularfontlistelementtagstocompoundtextencodingformats.
SeeAlso
XmCvtXmStringToCT(1),XmMapSegmentEncoding(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page303

XmRemoveFromPostFromList
XmMenus
Name
XmRemoveFromPostFromListmakeamenuinaccessiblefromawidget.
Synopsis
#include<Xm/RowColumn.h>
voidXmRemoveFromPostFromList(menu,widget)
Widgetmenu
Widgetwidget

Inputs
menu

Specifiesamenuwidget.

widget

Specifiesthewidgetwhichnolongerpostsmenu.

Availability
InMotif2.0andlater,thefunctionalprototypehasbeenremovedfromRowColumn.h,althoughthereisotherwisenoindicationthattheprocedureisobsolete.
Description
XmRemoveFromPostFromList()istheinverseoftheprocedureXmAddToPostFromWidget().Themenuhierarchyassociatedwithmenuismade
inaccessiblefromwidget.
Usage
IfthetypeofmenuisXmMENU_PULLDOWN,theXmNsubMenuIdresourceofwidgetissettoNULL.IfthetypeofmenuisXmMENU_POPUP,event
handlerspresumablyaddedtowidgetbyXmAddToPostFromWidget()topostthemenuareremoved.
NocheckismadetoensurethattheXmNsubMenuIdresourceofwidgetisoriginallysettomenubeforeclearingthevalue.Passingthewrongmenuintothe
procedurecanthereforehaveunwantedeffects.ThereareimplicitassumptionsthatwidgetisaCascadeButtonorCascadeButtonGadgetwhenmenuis
XmMENU_PULLDOWN,andthatwidgetisnotaGadgetwhenmenuisXmMENU_POPUP.Thesearenotcheckedbytheprocedure.
SeeAlso
XmAddToPostFromList(1),XmGetPostedFromWidget(1),XmPopupMenu(2),XmPulldownMenu(2),XmRowColumn
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page304

XmRemoveProtocolCallback
Xmprotocols
Name
XmRemoveProtocolCallbackremoveclientcallbackfromaprotocol.
Synopsis
#include<Xm/Protocols.h>
voidXmRemoveProtocolCallback(shell,property,protocol,callback,
closure)
Widgetshell
Atomproperty
Atomprotocol
XtCallbackProccallback
XtPointerclosure

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

property

Specifiesthepropertythatholdstheprotocoldata.

protocol

Specifiestheprotocolatom.

callback

Specifiestheprocedurethatistoberemoved.

closure

Specifiesanyclientdatathatispassedtothecallback.

Description
XmRemoveProtocolCallback()removesthespecifiedcallbackfromthelistofcallbackproceduresthatareinvokedwhentheclientmessage
correspondingtoprotocolisreceived.
Usage
Aprotocolisacommunicationchannelbetweenapplications.Protocolsaresimplyatoms,storedinapropertyonthetoplevelshellwindowfortheapplication.To
communicateusingaprotocol,aclientsendsaClientMessageeventcontainingapropertyandprotocol,andthereceivingclientrespondsbycallingthe
associatedprotocolcallbackroutine.XmRemoveProtocolCallback()allowsyoutounregisteroneofthesecallbackroutines.Theinverseroutineis
XmAddProtocolCallback().
SeeAlso
XmAddProtocolCallback(1),XmInternAtom(1),XmRemoveWMProtocolCallback(1),VendorShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page305

XmRemoveProtocols
XmProtocols
Name
XmRemoveProtocolsremoveprotocolsfromtheprotocolmanager.
Synopsis
#include<Xm/Protocols.h>
voidXmRemoveProtocols(shell,property,protocols,num_protocols)
Widgetshell
Atomproperty
Atom*protocols
Cardinalnum_protocols

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

property

Specifiesthepropertythatholdstheprotocoldata.

protocols

Specifiesalistofprotocolatoms.

num_protocols

Specifiesthenumberofatomsinprotocols.

Description
XmRemoveProtocols()removesthespecifiedprotocolsfromtheprotocolmanageranddeallocatestheinternaltablesfortheprotocols.Ifthespecified
shellisrealizedandatleastoneoftheprotocolsisactive,theroutinealsoupdatesthehandlersandtheproperty.TheinverseroutineisXmAddProtocols().
Usage
Aprotocolisacommunicationchannelbetweenapplications.Protocolsaresimplyatoms,storedinapropertyonthetoplevelshellwindowfortheapplication.
XmRemoveProtocols()allowsyoueliminateprotocolsthatcanbeunderstoodbyyourapplication.TheinverseroutineisXmAddProtocols().
SeeAlso
XmAddProtocols(1),XmInternAtom(1),XmRemoveWMProtocols(1),VendorShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page306

XmRemoveTabGroup
XmKeyboardTraversal
Name
XmRemoveTabGroupremoveawidgetfromalistoftabgroups.
Synopsis
voidXmRemoveTabGroup(tab_group)
Widgettab_group

Inputs
tab_group

Specifiesthewidgettoberemoved.

Availability
AsofMotif1.1,XmRemoveTabGroup()isobsolete.IthasbeensupersededbysettingXmNnavigationTypetoXmNONE.
Description
XmRemoveTabGroup()removesthespecifiedwidgetfromthelistoftabgroupsassociatedwiththewidgethierarchy.Thisroutineisretainedforcompatibility
withMotif1.0andshouldnotbeusedinnewerapplications.Iftraversalbehaviorneedstobechanged,thisshouldbedonebysettingtheXmNnavigationType
resourcedirectly.
Usage
Atabgroupisagroupofwidgetsthatcanbetraversedusingthekeyboardratherthanthemouse.Usersmovefromwidgettowidgetwithinasingletabgroupby
pressingthearrowkeys.UsersmovebetweendifferenttabgroupsbypressingtheTaborShiftTabkeys.TheinverseroutineisXmAddTabGroup().
SeeAlso
XmAddTabGroup(1),XmGetTabGroup(1),XmManager(2),XmPrimitive(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page307

XmRemoveWMProtocolCallback
XmProtocols
Name
XmRemoveWMProtocolCallbackremoveclientcallbacksfromaXA_WM_PROTOCOLSprotocol.
Synopsis
#include<Xm/Protocols.h>
voidXmRemoveWMProtocolCallback(shell,protocol,callback,closure)
Widgetshell
Atomprotocol
XtCallbackProccallback
XtPointerclosure

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

protocol

Specifiestheprotocolatom.

callback

Specifiestheprocedurethatistoberemoved.

closure

Specifiesanyclientdatathatispassedtothecallback.

Description
XmRemoveWMProtocolCallback()isaconvenienceroutinethatcallsXmRemoveProtocolCallback()withpropertysetto
XA_WM_PROTOCOLS,thewindowmanagerprotocolproperty.
Usage
ThepropertyXA_WM_PROTOCOLSisasetofpredefinedprotocolsforcommunicationbetweenclientsandwindowmanagers.Tocommunicateusingaprotocol,a
clientsendsaClientMessageeventcontainingapropertyandprotocol,andthereceivingclientrespondsbycallingtheassociatedprotocolcallbackroutine.
XmRemoveWMProtocolCallback()allowsyoutounregisteroneofthesecallbackroutineswiththewindowmanagerprotocolproperty.Theinverse
routineisXmAddWMProtocolCallback().
SeeAlso
XmAddProtocolCallback(1),XmAddWMProtocolCallback(1),XmInternAtom(1),XmRemoveProtocolCallback(1),
VendorShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page308

XmRemoveWMProtocols
XmProtocols
Name
XmRemoveWMProtocolsremovetheXA_WM_PROTOCOLSprotocolsfromtheprotocolmanager.
Synopsis
#include<Xm/Protocols.h>
voidXmRemoveWMProtocols(shell,protocols,num_protocols)
Widgetshell
Atom*protocols
Cardinalnum_protocols

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

protocols

Specifiesalistofprotocolatoms.

num_protocols

Specifiesthenumberofatomsinprotocols.

Description
XmRemoveWMProtocols()isaconvenienceroutinethatcallsXmRemoveProtocols()withpropertysettoXA_WM_PROTOCOLS,thewindow
managerprotocolproperty.TheinverseroutineisXmAddWMProtocols().
Usage
ThepropertyXA_WM_PROTOCOLSisasetofpredefinedprotocolsforcommunicationbetweenclientsandwindowmanagers.XmRemoveWMProtocols()
allowsyoutoremovethisprotocolsothatitisnolongerunderstoodbyyourapplication.TheinverseroutineisXmAddWMProtocols().
SeeAlso
XmAddProtocols(1),XmAddWMProtocols(1),XmInternAtom(1),XmRemoveProtocols(1),VendorShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page309

XmRenderTableAddRenditions
XmRenditionTables
Name
XmRenderTableAddRenditionsaddrenditionstoarendertable.
Synopsis
XmRenderTableXmRenderTableAddRenditions(old_table,new_renditions,
new_rendition_count,merge_mode)
XmRenderTableold_table
XmRendition*new_renditions
Cardinalnew_rendition_count
XmMergeModemerge_mode

Inputs
old_table

Specifiesarendertable.

new_renditions

Specifiesanarrayofrenditionstomergewiththerendertable.

new_rendition_count

Specifiesthenumberofrenditionsinthearray.

merge_mode

Specifiestheactiontotakeifentrieshavethesametag.

Returns
Thenewlyallocatedmergedrendertable.
Availability
Motif2.0andlater.
Description
ArendertableisasetofrenditionsthatcanbeusedtospecifythewayinwhichanXmStringisdrawn.XmRenderTableAddRenditions()createsanew
rendertablebymergingthelistofrenditionsspecifiedbynew_renditionsintotherenditionscontainedwithinold_table.Ifarenditionwiththesametagis
foundinbothold_tableandnew_renditions,merge_modeisusedtogiveprecedence.Thenewrendertableisreturned.
Ifold_tableisNULL,anewrendertableisallocatedthatcontainsonlytherenditionsofnew_renditions.Ifnew_renditionsisNULLor
new_rendition_countiszero,theold_tableisreturnedunmodified.Ifarenditionwithinold_tablehasthesametagasonewithin
new_renditions,merge_modedetermineshowtoresolvetheconflict.Ifmerge_modeisXmMERGE_REPLACE,therenditionwithinold_table
isignoredandtherenditionwithinnew_renditionsisaddedto

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page310

thenewtable.IfthemodeisXmMERGE_SKIP,thenewtablecontainstherenditionfromold_tableandthatfromnew_renditionsisignored.Ifthe
modeisXmMERGE_NEW,therenditionwithinnew_renditionsisused,exceptifanyresourcesoftherenditionareunspecified,thevaluesarecopiedfromthe
matchingrenditionfromtheoldtable.AresourceisunspecifiedifthevalueisXmAS_ISorNULL.Lastly,ifthemodeisXmMERGE_OLD,itistheoldrendition
tablethatisaddedtothenewtable,andanyunspecifiedresourcesaretakenfromthenewrendition.
Usage
Thereferencecountfortheoriginaltableisdecrementedanddeallocatedwherenecessary,andanewlyallocatedrendertablecontainingthemergeddataisreturned.
ItistheresponsibilityoftheprogrammertoreclaimtheallocatedmemoryforthereturnedrendertablebycallingXmRenderTableFree()atasuitablepoint.
Example
Thefollowingspecimencodecreatesasetofrenditionsandmergesthemintoanunspecifiedrendertable:
XmRenditionnew_renditions[2]
XmRenderTablenew_table
Argargv[4]
Cardinalargc=0
Pixelfg=...
Pixelbg=...

XtSetArg(argv[argc],XmNfontName,"fixed")argc++
XtSetArg(argv[argc],XmNfontType,XmFONT_IS_FONT)argc++
XtSetArg(argv[argc],XmNloadModel,XmLOAD_DEFERRED)argc++
new_renditions[0]=XmRenditionCreate(widget,XmFONTLIST_DEFAULT_TAG,
argv,argc)

argc=0
XtSetArg(argv[argc],XmNrenditionBackground,bg)argc++
XtSetArg(argv[argc],XmNrenditionForeground,fg)argc++
new_renditions[1]=XmRenditionCreate(widget,"colors",argv,argc)

new_table=XmRenderTableAddRenditions(old_table,new_renditions,
2,XmMERGE_REPLACE)

SeeAlso
XmRenderTableCopy(1),XmRenderTableFree(1),XmRenderTableGetRendition(1),
XmRenderTableGetRenditions(1),XmRenderTableGetTags(1),XmRenderTableRemoveRenditions(1),
XmRenditionCreate(1),XmRenditionFree(1),XmRenditionRetrieve(1),XmRenditionUpdate(1),XmRendition
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page311

XmRenderTableCopy
XmRenderTable
Name
XmRenderTableCopycopyarendertable.
Synopsis
XmRenderTableXmRenderTableCopy(old_table,tags,tag_count)
XmRenderTableold_table
XmStringTag*tags
inttag_count

Inputs
old_table

Specifiesthetablecontainingtherenditionstobecopied.

tags

Specifiesanarrayoftags.Renditionswithmatchingtagsarecopied.

tag_count

Specifiesthenumberofitemswithinthetagsarray.

Returns
Anewrendertablecontainingrenditionswithmatchingtags,orNULL.
Availability
Motif2.0andlater.
Description
AnXmRenderTableisanarrayofXmRenditionobjectsthatareusedtorendercompoundstrings.XmRenderTableCopy()createsanewly
allocatedrendertablebycopyingrenditionsfromanexistingtable,old_table.Anarrayoftagscanbesuppliedtoactasafilteronlythoserenditionsfrom
old_tablethathaveamatchingXmNtagresourcearecopied.Thenumberofitemswithinanytagsarrayisspecifiedthroughtag_count.Iftagsis
NULL,alloftherenditionswithinold_tablearecopied.Ifold_tableisNULL,thefunctionreturnsNULL.
Usage
Thefunctionallocatesstorageforthereturnedrendertable,includingstorageforeachofthenewlycopiedrenditions.Itistheresponsibilityoftheprogrammerto
reclaimthememoryatanappropriatepointbycallingXmRenderTableFree().
InMotif2.0andlater,theXmRenderTablesupersedestheXmFontList,whichisnowconsideredobsolete.Forbackwardscompatibility,the
XmFontListopaquetypeisimplementedusingarendertable.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page312

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmRenderTableAddRenditions(1),XmRenderTableFree(1),XmRenderTableGetRendition(1),
XmRenderTableGetRenditions(1),XmRenderTableGetTags(1),XmRenderTableRemoveRenditions(1),
XmRenditionCreate(1),XmRenditionFree(1),XmRenditionRetrieve(1),XmRenditionUpdate(1),XmRendition
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page313

XmRenderTableCvtFromProp
XmRenditionTables
Name
XmRenderTableCvtFromPropconvertfromastringrepresentationintoarendertable.
Synopsis
XmRenderTableXmRenderTableCvtFromProp(widget,property,length)
Widgetwidget
char*property
unsignedintlength

Inputs
widget

Specifiesadestinationwidgetinadatatransfer.

property

Specifiestherendertableinstringrepresentationformat.

length

Specifiesthenumberofbytesinthepropertystring.

Returns
Theconvertedrendertable.
Availability
Motif2.0andlater.
Description
XmRenderTableCvtFromProp()convertsastringrepresentationofarendertableintoanXmRenderTable.Thestringrepresentationtobeconverted
isgivenbyproperty,andthesizeofthestringinbytesislength.
Usage
Thisprocedureistypicallyusedwithinthedestinationcallbackofwidgetwhenitisthetargetofadatatransfer.Theinversefunction,
XmRenderTableCvtToProp(),iscalledbytheconvertproceduresofthesourceofthedatatransfer.XmRenderTableCvtFromProp()returns
allocatedmemoryitistheresponsibilityoftheprogrammertoreclaimthespaceatasuitablepointbycallingXmRenderTableFree().
SeeAlso
XmRenderTableCvtToProp(1),XmRenderTableFree(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page314

XmRenderTableCvtToProp
XmRenditionTables
Name
XmRenderTableCvtToPropconvertarendertableintoastringrepresentation.
Synopsis
unsignedintXmRenderTableCvtToProp(widget,render_table,
property_return)
Widgetwidget
XmRenderTablerender_table
char**property_return

Inputs
Specifiesasourcewidgetfortherendertable.

widget
render_table

Specifiestherendertabletoconvert.

Outputs
property_return

Returnsthestringrepresentationoftheconvertedrendertable.

Returns
Thenumberofbytesintheconvertedstringrepresentation.
Availability
Motif2.0andlater.
Description
XmRenderTableCvtToProp()convertsanXmRenderTablerender_tableintoastringrepresentationattheaddressspecifiedby
property_return.Thelengthoftheconvertedstringisreturned.
Usage
Thisprocedureistypicallyusedwithintheconvertcallbackofwidgetwhenitisthesourceofadatatransfer.Theprocedurereturnsallocatedmemorywithin
property_returnitistheresponsibilityoftheprogrammertoreclaimthespaceatasuitablepointbycallingXtFree().
ThestandardbuiltinconversionroutineswithintheUniformTransferModelinternallycallXmRenderTableCvtToProp()whenaskedtoconvertthe
_MOTIF_RENDER_TABLEselection.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page315

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmRenderTableCvtFromProp(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page316

XmRenderTableFree
XmRenditionTables
Name
XmRenderTableFreefreethememoryusedbyarendertable.
Synopsis
voidXmRenderTableFree(table)
XmRenderTabletable

Inputs
table

Specifiestherendertabletofree.

Availability
Motif2.0andlater.
Description
XmRenderTableFree()isaconveniencefunctionthatdeallocatesspaceusedbytherendertabletable.
Usage
Rendertables,andtherenditionsthattheycontain,arereferencecounted.ItisimportanttocallXmRenderTableFree()onarendertableratherthan
XtFree()sothateachrenditioninthetableisproperlydeallocated.Motifcachesandsharesrendertablesandtherenditionsthattheycontain,andsoanimproper
XtFree()wouldnotrespectanysharingcurrentlyinplace.XmRenderTableFree()doesnotactuallyfreetherendertableuntilthereferencecountiszero.
SeeAlso
XmRenderTableAddRenditions(1),XmRenderTableCopy(1),XmRenderTableRemoveRenditions(1),
XmRenditionCreate(1),XmRenditionFree(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page317

XmRenderTableGetRendition
XmRenditionTables
Name
XmRenderTableGetRenditionsearcharendertableforamatchingrendition.
Synopsis
XmRenditionXmRenderTableGetRendition(table,tag)
XmRenderTabletable
XmStringTagtag

Inputs
table

Specifiestherendertabletosearch.

tag

Specifiesthetagwithwhichtofindarendition.

Returns
ArenditionthatmatchestagotherwiseNULL.
Availability
Motif2.0andlater.
Description
XmRenderTableGetRendition()isaconveniencefunctionthatsearchestableandreturnstherenditionthatmatchestag.
Usage
XmRenderTableGetRendition()performsalinearsearchthroughtherenditionscontainedwithintable,comparingtheXmNtagresourcevaluewith
thesearchstringgivenbytag.Ifnomatchisfound,anyXmNnoRenditioncallbacksregisteredwiththeXmDisplayobjectareinvoked,supplyingthetable
astherender_tableelementoftheXmDisplayCallbackStructpassedtothecallbacks.Ifthecallbacksmodifytherendertableelement,thelinear
searchisrestarted.Acopyofanymatchingrenditionisreturned.Ifnomatchisfound,theroutinereturnsNULL.
XmRenderTableGetRendition()allocatesspaceforthereturnedrenditionitistheresponsibilityoftheprogrammertoreclaimthespaceatasuitable
pointbycallingXmRenditionFree().
SeeAlso
XmRenderTableAddRenditions(1),XmRenderTableGetRenditions(1),XmRenderTableRemoveRenditions(1),
XmRenditionFree(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page318

XmRenderTableGetRenditions
XmRenditionTables
Name
XmRenderTableGetRenditionssearcharendertableformatchingrenditions.
Synopsis
XmRendition*XmRenderTableGetRenditions(table,tags,tag_count)
XmRenderTabletable
XmStringTag*tags
Cardinaltag_count

Inputs
table

Specifiestherendertabletosearch.

tags

Specifiesanarrayoftagsforwhichmatchingrenditionsarerequired.

tag_count

Specifiesthenumberofitemsintags.

Returns
Thearrayofrenditionswhichhavematchingtags.
Availability
Motif2.0andlater.
Description
XmRenderTableGetRenditions()searchestableforallrenditionsthathaveatagthatmatchesanentrywithinthelisttags.IfthetableisNULL,
iftagsisNULL,oriftag_countiszero,thefunctionreturnsNULL.Otherwise,thefunctionreturnsanallocatedarrayofmatchingrenditionobjects.
Usage
XmRenderTableGetRenditions()iteratesthroughasetoftags,comparingeachtagwiththegroupofrenditionscontainedwithinarendertable.Ifno
matchisfoundwhencomparingatag,anyXmNnoRenditioncallbacksregisteredwiththeXmDisplayobjectareinvoked,supplyingthetableasthe
render_tableelementoftheXmDisplayCallbackStructpassedtothecallbacks.Ifthecallbacksmodifytherendertableelement,thelinearsearchis
restartedforthattag.
Thedocumentationstatesthatthefunctionreturnsanallocatedarray,whererenditionsarecopiedintothearrayatthesameindexofthematchingtagwithinthetags
array.Forexample,ifthethirdtagintagsmatchesarendition,thatrenditionis

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page319

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

copiedintothethirdelementofthereturnedarray.Ifanytaginthetagslistdoesnotmatchanyrenditioninthetable,thatslotinthereturnedarrayissettoNULL.
Thesources,however,donotmatchthedocumentation:renditionsarecopiedintothearrayintheorderinwhichtheyarematched,ignoringanyslotsthatdonot
match.Thus,ifthefirsttagintagsresultsinaNULLmatch,anyrenditionfoundfromthesecondtagisplacedintothefirstslot.Ifthenumberofmatchedrenditions
islessthanthenumberofsuppliedtags,memoryforthereturnedarrayisreallocatedtomatchthenumberoffoundrenditions.Intheabsenceofa
XmNnoRenditioncallback,itisnotpossibletodeducethesizeofthereturnedrenditionarray.
Thefunctionallocatesspaceforboththereturnedrenditionarrayandtheconstituentrenditionsitistheresponsibilityoftheprogrammertoreclaimthespaceata
suitablepointbycallingXmRenditionFree()oneachoftheelementsinthereturnedarrayandsubsequentlycallingXtFree()onthearrayitself.
Example
ThefollowingspecimencodeillustratesthebasicoutlineofacalltoXmRenderTableGetRenditions():
XmRendition*match_renditions
XmStringTagtags[MAX_TAGS]
inti

tags[0]=XmFONTLIST_DEFAULT_TAG
tags[1]=XmS/*""*/
...

/*searchanunspecifiedrendertable*/
match_renditions=XmRenderTableGetRenditions(render_table,
tags,MAX_TAGS)

/*usethematchedsetofrenditions*/
...

/*freethereturnedspace*/
if(match_renditions!=NULL){
/*ASSUMPTION:XtNumber(match_renditions)==MAX_TAGS*/
/*Notavalidassumptionifatagdoesnotmatch*/
for(i=0i<MAX_TAGSi++){
XmRenditionFree(match_renditions[i])
}

XtFree(match_renditions)
}

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page320

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmRenderTableAddRenditions(1),XmRenderTableGetRendition(1),XmRenderTableRemoveRenditions(1),
XmRenditionFree(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page321

XmRenderTableGetTags
XmRenditionTables
Name
XmRenderTableGetTagsfetchthelistofrenditiontagsfromarendertable.
Synopsis
intXmRenderTableGetTags(table,tag_list)
XmRenderTabletable
XmStringTag**tag_list

Inputs
table

Specifiestherendertable.

Outputs
tag_list

Returnsthelistofrenditiontags.

Returns
Thenumberoftagswithinthereturnedtag_list.
Availability
Motif2.0andlater.
Description
XmRenderTableGetTags()isaconveniencefunctionthatiteratesthrougharendertable,collectingallthetagsfromtheindividualrenditionswithinthe
tableandreturningthemtotheprogrammer.Thefunctionreturnsthenumberoftagsplacedattheaddresstag_list.
Usage
XmRenderTableGetTags()allocatesanarrayandplacesacopyoftheXmNtagresourceforeachrenditionwithinthetableinthearray.Thearrayis
returnedattheaddressspecifiedbythetag_listparameter.IfthetableisNULL,tag_listisinitializedtoNULLandthefunctionreturnszero.Itisthe
responsibilityoftheprogrammertoreclaimthespacebycallingXtFree()oneachoftheitemswithintheallocatedarrayandthensubsequentlycallingXtFree
()onthearrayitself.
Example
ThefollowingspecimencodeillustratesthebasicoutlineofacalltoXmRenderTableGetTags():
XmStringTag*tags
intcount,i

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page322
/*fetchthetagsfromanunspecifiedrendertable*/
count=XmRenderTableGetTags(render_table,&tags)

/*usethetags*/
...

/*freethereturnedspace*/
if(tags!=(XmStringTag*)0){
for(i=0i<counti++){
XtFree(tags[i])
}

XtFree(tags)
}

SeeAlso
XmRenditionFree(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page323

XmRenderTableRemoveRenditions
XmRenditionTables
Name
XmRenderTableRemoveRenditionscopyarendertable,exceptspecifiedrenditions.
Synopsis
XmRenderTableXmRenderTableRemoveRenditions(old_table,tags,
tag_count)
XmRenderTableold_table
XmStringTag*tags
inttag_count

Inputs
old_table

Specifiesarendertable.

tags

Specifiesanarrayofrenditiontags.Anyrenditionthatmatchesanitemin
thearrayisnotcopiedfromold_table.

tag_count

Specifiesthenumberofitemsinthetagsarray.

Returns
Anewrendertablewithmatchingrenditionsremoved.
Availability
Motif2.0andlater.
Description
XmRenderTableRemoveRenditions()createsanewrendertablebycopyingfromold_tableonlythoserenditionsthatdonothaveatagmatching
itemswithinthearraytags.IftagsisNULL,iftag_countiszero,orifnorenditionsareremoved,thefunctionreturnstheold_tableunmodified.
Otherwise,old_tableisdeallocatedandthereferencecountsforanyexcludedrenditionsaredecrementedbeforethefunctionreturnsthenewlyallocatedrender
table.
Usage
ArenditionisnotcopiedintothereturnedtableifithasaXmNtagresourcevaluethatisthesameasanyitemwithinthetagslist.Whenthereturnedtablediffers
fromtheoriginalold_table,thefunctionallocatesspaceforthenewtable.Itistheresponsibilityoftheprogrammertoreclaimthespacebycalling
XmRenderTableFree().
SeeAlso
XmRenderTableAddRenditions(1),XmRenderTableFree(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page324

XmRenditionCreate
XmRenditionTables
Name
XmRenditionCreatecreatearenditionobject.
Synopsis
XmRenditionXmRenditionCreate(widget,tag,arglist,argcount)
Widgetwidget
XmStringTagtag
Arg*arglist
Cardinalargcount

Inputs
widget

Specifiesawidget.

tag

Specifiesatagfortherenditionobject.

arglist

Specifiesanargumentlistthatconsistsofresourcename/value
pairs.

argcount Specifiesthenumberofargumentsinarglist.

Returns
Thenewrenditionobject.
Availability
Motif2.0andlater.
Description
XmRenditionCreate()createsanewrenditionobjectthatcanbeusedasanentryinarendertableusedforrenderingXmStrings.widgetisusedtofinda
connectiontotheXserverandanapplicationcontext.tagisusedastheXmNtagresourceofthenewrenditionobject.Resourcesforthenewobjectaresupplied
inthearglistarray.
Usage
TheimplementationofXmRenditionisthroughapseudowidgetalthoughnotatruewidget,theobjecthasresourcesandaresourcestyleinterfaceforsetting
andfetchingvaluesoftherendition.Typically,arenditionismergedintoanexistingrendertablethroughthefunctionXmRenderTableAddRenditions().
CompoundstringsarerenderedbysuccessivelymatchingtagswithinthecompoundstringwiththeXmNtagresourcesofrenditionsinthetable,andthenbyusingthe
resourcesofmatchedrenditionstodisplaythestringcomponents.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page325

XmRenditionCreate()allocatesstorageforthereturnedrenditionobject.Itistheresponsibilityoftheprogrammertoreclaimthestorageatasuitablepoint
bycallingXmRenditionFree().Renditionsarereferencecounted,soitisimportanttocallXmRenditionFree(),ratherthanXtFree(),tomaintain
thereferences.
Example
Thefollowingcodecreatesapairofrenditionsandmergesthemintoanunspecifiedrendertable:
XmRenditionnew_renditions[2]
XmRenderTablenew_table
Argargv[4]
Cardinalargc=0
Pixelfg=...
Pixelbg=...

/*createarenditionwithfontsspecified*/
argc=0
XtSetArg(argv[argc],XmNfontName,"fixed")argc++
XtSetArg(argv[argc],XmNfontType,XmFONT_IS_FONT)argc++
XtSetArg(argv[argc],XmNloadModel,XmLOAD_DEFERRED)argc++
new_renditions[0]=XmRenditionCreate(widget,XmFONTLIST_DEFAULT_TAG,
argv,argc)

/*createarenditionwithlinestylespecified*/
argc=0
XtSetArg(argv[argc],XmNrenditionBackground,bg)argc++
XtSetArg(argv[argc],XmNrenditionForeground,fg)argc++
XtSetArg(argv[argc],XmNunderlineType,XmSINGLE_LINE)argc++
XtSetArg(argv[argc],XmNstrikethruType,XmSINGLE_LINE)argc++
new_renditions[1]=XmRenditionCreate(widget,"lineStyle",argv,argc)

/*mergeintoanunspecifiedrendertable*/
new_table=XmRenderTableAddRenditions(old_table,new_renditions,
2,XmMERGE_REPLACE)

SeeAlso
XmRenderTableAddRenditions(1),XmRenditionFree(1),XmRenditionRetrieve(1),XmRenditionUpdate(1),
XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page326

XmRenditionFree
XmRenditionTables
Name
XmRenditionFreefreethememoryusedbyarendition.
Synopsis
voidXmRenditionFree(rendition)
XmRenditionrendition

Inputs
rendition

Specifiestherenditionthatistobefreed.

Availability
Motif2.0andlater.
Description
XmRenditionFree()deallocatesstorageusedbythespecifiedrendition.TheroutinedoesnotfreeanyXFontSetorXFontStructdata
structuresassociatedwiththerenditionobject.
Usage
XmRenditionFree()freesthestorageusedbytherenditionobject,butdoesnotfreefontdatastructuresassociatedwiththeXmNfontresourceofthe
object.ItisimportanttocallXmRenditionFree()ratherthanXtFree()becauseMotifreferencecountsrenditionobjects.XmRenditionFree()
decrementsthereferencecountfortherenditiontherenditionisnotactuallyfreeduntilthereferencecountreaches0(zero).
SeeAlso
XmRenditionCreate(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page327

XmRenditionRetrieve
XmRenditionTables
Name
XmRenditionRetrievefetchrenditionobjectresources.
Synopsis
voidXmRenditionRetrieve(rendition,arg_list,arg_count)
XmRenditionrendition
Arg*arg_list
Cardinalarg_count

Inputs
rendition

Specifiestherenditionwhoseresourcesarefetched.

arg_count

Specifiesthenumberofargumentsinarg_list.

Outputs
arg_list

Specifiesanargumentlist,consistingofresourcename/value
pairs.

Availability
Motif2.0andlater.
Description
XmRenditionRetrieve()fetchesselectedresourcevaluesofarenditionobject.Thesetofresourcesretrievedisspecifiedthroughtheresourcelist
arg_list,whereeachelementofthelistisastructurethatcontainsaname/valuepair.Thenumberofelementswithinthelistisgivenbyarg_count.
Usage
XmRenditionRetrieve()directlyreturnsthevaluesoftherenditionresources,notcopiesofthem.Youshouldnotinadvertentlymodifyareturnedvalue,but
shouldinsteadmakeacopyofanypointervaluedresourcethatistobechanged.Forexample,theXmNtagandXmNfontNameresourcesshouldbecopiedinto
aseparateaddressspacebeforemodifyingormanipulatingtheirvalues.
IftheXmNloadModeloftherenditionobjectisXmLOAD_DEFERREDandthefontspecifiedbytheXmNfontresourceisNULL,buttheXmNfontName
valueisnotNULL,andiftheprogrammerhasspecifiedthatthefontistoberetrievedwithinarg_list,thenXmRenditionRetrieve()automatically
changestheloadmodeltoXmLOAD_IMMEDIATEanddirectlycallsaproceduretoloadthefontindicatedbyXmNfontNamebeforereturningtherequested
resourcevalues.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page328

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
Thefollowingcodeillustratesfetchingresourcesfromanunspecifiedrenditionobject:
Pixelbg
Pixelfg
XtPointerfont
Stringfont_name
XmFontTypefont_type
unsignedcharload_model
unsignedcharstrike_type
XmTabListtab_list
XmStringTagtag
unsignedcharul_type
Argav[10]
Cardinalac=0

XtSetArg(av[ac],XmNrenditionForeground,&fg)ac++
XtSetArg(av[ac],XmNrenditionBackground,&bg)ac++
XtSetArg(av[ac],XmNfont,&font)ac++
XtSetArg(av[ac],XmNfontName,&font_name)ac++
XtSetArg(av[ac],XmNfontType,&font_type)ac++
XtSetArg(av[ac],XmNloadModel,&load_model)ac++
XtSetArg(av[ac],XmNstrikethruType,&strike_type)ac++
XtSetArg(av[ac],XmNtabList,&tab_list)ac++
XtSetArg(av[ac],XmNtag,&tag)ac++
XtSetArg(av[ac],XmNunderlineType,&ul_type)ac++

XmRenditionRetrieve(rendition,av,ac)

SeeAlso
XmRenditionCreate(1),XmRenditionFree(1),XmRenditionUpdate(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page329

XmRenditionUpdate
XmRenditionTables
Name
XmRenditionUpdatesetrenditionobjectresources.
Synopsis
voidXmRenditionUpdate(rendition,arg_list,arg_count)
XmRenditionrendition
Arg*arg_list
Cardinalarg_count

Inputs
rendition

Specifiestherenditionwhoseresourcesaretobechanged.

arg_list

Specifiesanargumentlistthatconsistsofresourcename/valuepairs.

arg_count

Specifiesthenumberofargumentswithinarg_list.

Availability
Motif2.0andlater.
Description
XmRenditionUpdate()isaconveniencefunctionthatsetstheresourcesforarenditionobject.Theattributestochangearespecifiedthroughanarrayof
name/valuepairs,similartotheresourcestyleinterfaceofXtSetValues().
Usage
ModifyingthevalueoftheXmNfontNameresourceinitiallyresetstheXmNfontresourcetoNULL,irrespectiveofwhethertheloadmodelforthenewfontis
XmLOAD_IMMEDIATEorXmLOAD_DEFERRED.
Example
Thefollowingcodeillustratessettingresourcesforanunspecifiedrenditionobject:
Pixelbg=...
Pixelfg=...
Argav[10]
Cardinalac=0

XtSetArg(av[ac],XmNrenditionForeground,fg)ac++
XtSetArg(av[ac],XmNrenditionBackground,bg)ac++
XtSetArg(av[ac],XmNfontType,XmFONT_IS_FONT)ac++
XtSetArg(av[ac],XmNfontName,"fixed")ac++

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page330
XtSetArg(av[ac],XmNloadModel,XmLOAD_DEFERRED)ac++
XtSetArg(av[ac],XmNstrikethruType,XmSINGLE_LINE)ac++
XtSetArg(av[ac],XmNunderlineType,XmSINGLE_LINE)ac++

XmRenditionUpdate(rendition,av,ac)

SeeAlso
XmRenditionCreate(1),XmRenditionFree(1),XmRenditionRetrieve(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page331

XmRepTypeAddReverse
XmResourceConversion
Name
XmRepTypeAddReverseinstallthereverseconverterforarepresentationtype.
Synopsis
#include<Xm/RepType.h>
voidXmRepTypeAddReverse(rep_type_id)
XmRepTypeIdrep_type_id

Inputs
rep_type_id

SpecifiestheIDnumberoftherepresentationtype.

Availability
Motif1.2andlater.
Description
XmRepTypeAddReverse()installsareverseconverterforapreviouslyregisteredrepresentationtype.Thereverseconverterconvertsnumericalrepresentation
typevaluestostringvalues.Therep_type_idargumentspecifiestheIDnumberoftherepresentationtype.Iftherepresentationtypecontainsduplicatevalues,
thereverseconverterusesthefirstnameinthevalue_nameslistthatmatchesthespecifiednumericvalue.
Usage
InMotif1.2andlater,therepresentationtypemanagerprovidessupportforhandlingmanyofthetasksrelatedtoenumeratedvalues.Thisfacilityinstallsresource
convertersthatconvertastringvaluetoitsnumericalrepresentation.Therepresentationtypemanagercanalsobequeriedtogetinformationabouttheregistered
types.Thisfacilityisespeciallyusefulforinterfacebuildersandapplicationslikeeditresthatallowausertosetresourcesinteractively.XmRepTypeAddReverse
()providesawayforanapplicationtoinstallaconverterthatconvertsnumericvaluestotheirstringvalues.
SeeAlso
XmRepTypeGetId(1),XmRepTypeRegister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page332

XmRepTypeGetId
XmResourceConversion
Name
XmRepTypeGetIdgettheIDnumberofarepresentationtype.
Synopsis
#include<Xm/RepType.h>
XmRepTypeIdXmRepTypeGetId(rep_type)
Stringrep_type

Inputs
rep_type

Specifiesthestringnameofarepresentationtype.

Returns
TheIDnumberoftherepresentationtypeorXmREP_TYPE_INVALIDiftherepresentationtypeisnotregistered.
Availability
Motif1.2andlater.
Description
XmRepTypeGetId()retrievestheIDnumberofthespecifiedrepresentationtyperep_typefromtherepresentationtypemanager.Therep_typestringis
thestringnameofarepresentationtypethathasbeenregisteredwithXmRepTypeRegister().XmRepTypeGetId()returnstheIDnumberifthe
representationtypehasbeenregistered.Thisvalueisusedinotherrepresentationtypemanagerroutinestoidentifyaparticulartype.Otherwise,theroutinereturns
XmREP_TYPE_INVALID.
Usage
InMotif1.2andlater,therepresentationtypemanagerprovidessupportforhandlingmanyofthetasksrelatedtoenumeratedvalues.Thisfacilityinstallsresource
convertersthatconvertastringvaluetoitsnumericalrepresentation.Therepresentationtypemanagercanalsobequeriedtogetinformationabouttheregistered
types.Thisfacilityisespeciallyusefulforinterfacebuildersandapplicationslikeeditresthatallowausertosetresourcesinteractively.XmRepTypeGetId()
providesawayforanapplicationgettheIDofarepresentationtype,whichcanbeusedtoidentifythetypetootherrepresentationmanagerroutine.
SeeAlso
XmRepTypeGetNameList(1),XmRepTypeGetRecord(1),XmRepTypeGetRegistered(1),XmRepTypeRegister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page333

XmRepTypeGetNameList
XmResourceConversion
Name
XmRepTypeGetNameListgetthelistofvaluenamesforarepresentationtype.
Synopsis
#include<Xm/RepType.h>
String*XmRepTypeGetNameList(rep_type_id,
use_uppercase_format)
XmRepTypeIdrep_type_id
Booleanuse_uppercase_format

Inputs
rep_type_id

SpecifiestheIDnumberoftherepresentationtype.

use_uppercase_format

Specifieswhetherornotthenamesareinuppercasecharacters.

Returns
Apointertoanarrayofvaluenames.
Availability
Motif1.2andlater.
Description
XmRepTypeGetNameList()retrievesthelistofvaluenamesassociatedwiththespecifiedrep_type_id.TheroutinereturnsapointertoaNULL
terminatedlistofvaluenamesfortherepresentationtype,whereeachvaluenameisaNULLterminatedstring.Ifuse_uppercase_formatisTrue,thevalue
namesareinuppercasecharacterswithXmprefixes.Otherwise,thevaluenamesareinlowercasecharacterswithoutXmprefixes.XmRepTypeGetNameList
()allocatesstorageforthereturneddata.TheapplicationisresponsibleforfreeingthestorageusingXtFree()oneachoftheelementsinthereturnedarrayand
subsequentlyuponthearraypointeritself.
Usage
InMotif1.2andlater,therepresentationtypemanagerprovidessupportforhandlingmanyofthetasksrelatedtoenumeratedvalues.Thisfacilityinstallsresource
convertersthatconvertastringvaluetoitsnumericalrepresentation.Therepresentationtypemanagercanalsobequeriedtogetinformationabouttheregistered
types.Thisfacilityisespeciallyusefulforinterfacebuildersandapplicationslikeeditresthatallowausertosetresourcesinteractively.
XmRepTypeGetNameList()providesawayforanapplicationtogetthenamedvaluesforaparticularrepresentationtype.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page334

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmRepTypeGetId(1),XmRepTypeGetRecord(1),XmRepTypeGetRegistered(1),XmRepTypeRegister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page335

XmRepTypeGetRecord
XmResourceConversion
Name
XmRepTypeGetRecordgetinformationaboutarepresentationtype.
Synopsis
#include<Xm/RepType.h>
XmRepTypeEntryXmRepTypeGetRecord(rep_type_id)
XmRepTypeIdrep_type_id

Inputs
rep_type_id

SpecifiestheIDnumberoftherepresentationtype.

Returns
Apointertoarepresentationtypeentrystructure.
Availability
Motif1.2andlater.
Description
XmRepTypeGetRecord()retrievesinformationabouttherepresentationtypespecifiedbyrep_type_id.TheroutinereturnsaXmRepTypeEntry,
whichisapointertoarepresentationtypeentrystructure.Thisstructurecontainsinformationaboutthevaluenamesandvaluesfortheenumeratedtype.
XmRepTypeGetRecord()allocatesstorageforthereturneddata.TheapplicationisresponsibleforfreeingthestorageusingXtFree().
Usage
InMotif1.2andlater,therepresentationtypemanagerprovidessupportforhandlingmanyofthetasksrelatedtoenumeratedvalues.Thisfacilityinstallsresource
convertersthatconvertastringvaluetoitsnumericalrepresentation.Therepresentationtypemanagercanalsobequeriedtogetinformationabouttheregistered
types.Thisfacilityisespeciallyusefulforinterfacebuildersandapplicationslikeeditresthatallowausertosetresourcesinteractively.XmRepTypeGetRecord
()providesawayforanapplicationtoretrieveinformationaboutaparticularrepresentationtype.
Structures
TheXmRepTypeEntryisdefinedasfollows:
typedefstruct{
Stringrep_type_name/*nameofrepresentationtype*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page336
String*value_names/*arrayofvaluenames*/
unsignedchar*values/*arrayofnumericvalues*/
unsignedcharnum_values/*numberofvalues*/
Booleanreverse_installed/*reverseconverterinstalledflag*/
XmRepTypeIdrep_type_id/*representationtypeID*/
}XmRepTypeEntryRec,*XmRepTypeEntry,XmRepTypeListRec,*XmRepTypeList

SeeAlso
XmRepTypeGetId(1),XmRepTypeGetNameList(1),XmRepTypeGetRegistered(1),XmRepTypeRegister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page337

XmRepTypeGetRegistered
XmResourceConversion
Name
XmRepTypeGetRegisteredgettheregisteredrepresentationtypes.
Synopsis
#include<Xm/RepType.h>
XmRepTypeListXmRepTypeGetRegistered()

Returns
Apointertotheregistrationlistofrepresentationtypes.
Availability
Motif1.2andlater.
Description
XmRepTypeGetRegistered()retrievesthewholeregistrationlistfortherepresentationtypemanager.Theroutinereturnsacopyoftheregistrationlist,
whichcontainsinformationaboutalloftheregisteredrepresentationtypes.TheregistrationlistisanarrayofXmRepTypeListstructures,whereeachstructure
containsinformationaboutthevaluenamesandvaluesforasinglerepresentationtype.TheendoftheregistrationlistisindicatedbyaNULLpointerinthe
rep_type_namefield.XmRepTypeGetRegisteredallocatesstorageforthereturneddata.Theapplicationisresponsibleforfreeingthisstorageusing
XtFree().Thelistofvaluenames(thevalueofthevalue_namesfield),thelistofvalues(thevalueofthevaluesfield),andthearrayofstructuresallneed
tobefreed.
Usage
InMotif1.2andlater,therepresentationtypemanagerprovidessupportforhandlingmanyofthetasksrelatedtoenumeratedvalues.Thisfacilityinstallsresource
convertersthatconvertastringvaluetoitsnumericalrepresentation.Therepresentationtypemanagercanalsobequeriedtogetinformationabouttheregistered
types.Thisfacilityisespeciallyusefulforinterfacebuildersandapplicationslikeeditresthatallowausertosetresourcesinteractively.
XmRepTypeGetRegistered()providesawayforanapplicationtogetinformationaboutalloftheregisteredrepresentationtypes.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page338

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
ThefollowingcodefragmentshowstheuseofXmRepTypeGetRegistered()toprintthevaluenamesandvaluesofalloftheregisteredrepresentationtypes:
XmRepTypeListreplist
inti

replist=XmRepTypeGetRegistered()
while(replist>rep_type_name!=NULL){
printf("Representationtypename:%s\n",replist>rep_type_name)
printf("Valuenamesandassociatedvalues:\n")
for(i=0i<replist>num_valuesi++){
printf("%s:",replist>value_names[i])
printf("%d\n",replist>values[i])
}
replist++
XtFree((char*)replist>values)
XtFree((char*)replist>value_names)
}
XtFree((char*)replist)

Structures
TheXmRepTypeListisdefinedasfollows:
typedefstruct{
Stringrep_type_name/*nameofrepresentationtype*/
String*value_names/*arrayofvaluenames*/
unsignedchar*values/*arrayofnumericvalues*/
unsignedcharnum_values/*numberofvalues*/
Booleanreverse_installed/*reverseconverterinstalledflag*/
XmRepTypeIdrep_type_id/*representationtypeID*/
}XmRepTypeEntryRec,*XmRepTypeEntry,XmRepTypeListRec,*XmRepTypeList

SeeAlso
XmRepTypeGetRecord(1),XmRepTypeGetNameList(1),XmRepTypeRegister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page339

XmRepTypeInstallTearOffModelConverter
XmResourceConversion
Name
XmRepTypeInstallTearOffModelConverterinstalltheresourceconverterforXmNtearOffModel.
Synopsis
#include<Xm/RepType.h>
voidXmRepTypeInstallTearOffModelConverter()

Availability
Motif1.2andlater.InMotif2.0andlater,theconverterfortheXmNtearOffModelresourceisinternallyinstalledandthisfunctionisobsolete.
Description
XmRepTypeInstallTearOffModelConverter()installstheresourceconverterfortheRowColumnXmNtearOffModelresource.Thisresource
controlswhetherornotPulldownMenusandPopupMenusinanapplicationcanbetornoff.Oncetheconverterisinstalled,thevalueofXmNtearOffModelcan
bespecifiedinaresourcefile.
Usage
InMotif1.2,aRowColumnthatisconfiguredasaPopupMenuoraPulldownMenusupportstearoffmenus.Whenamenuistornoff,itremainsonthescreenaftera
selectionismadesothatadditionalselectionscanbemade.Amenupanethatcanbetornoffcontainsatearoffbuttonatthetopofthemenu.The
XmNtearOffModelresourcecontrolswhetherornottearofffunctionalityisavailableforamenu.Thisresourcecantakethevalues
XmTEAR_OFF_ENABLEDorXmTEAR_OFF_DISABLED.
InMotif1.2,theresourceconverterforXmNtearOffModelisnotinstalledbydefault.Someexistingapplicationsdependonreceivingacallbackwhenamenuis
mappedsincetornoffmenusarealwaysmapped,theseapplicationsmightfailifauserisallowedtoenabletearoffmenusfromaresourcefile.
XmRepTypeInstallTearOffModelConverter()registerstheconverterthatallowstheresourcetobesetfromaresourcefile.
SeeAlso
XmRowColumn(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page340

XmRepTypeRegister
XmResourceConversion
Name
XmRepTypeRegisterregisterarepresentationtyperesource.
Synopsis
#include<Xm/RepType.h>
XmRepTypeIdXmRepTypeRegister(rep_type,value_names,values,
num_values)
Stringrep_type
String*value_names
unsignedchar*values
unsignedcharnum_values

Inputs
rep_type

Specifiesthestringnamefortherepresentationtype.

value_names

Specifiesanarrayofvaluenamesfortherepresentationtype.

values

Specifiesanarrayofvaluesfortherepresentationtype.

num_values

Specifiesthenumberofitemsinvalue_namesandvalues.

Returns
TheIDnumberoftherepresentationtype.
Availability
Motif1.2andlater.
Description
XmRepTypeRegister()registersarepresentationtypewiththerepresentationtypemanager.Therepresentationtypemanagerprovidesresourceconversion
facilitiesforenumeratedvalues.XmRepTypeRegister()installsaresourceconverterthatconvertsstringvaluestonumericalrepresentationtypevalues.The
stringsinthevalue_namesarrayspecifythevaluenamesfortherepresentationtype.Thestringsarespecifiedinlowercasecharacters,withunderscorecharacters
separatingwordsandwithoutXmprefixes.
IfthevaluesargumentisNULL,theorderofthestringsinthevalue_namesarraydeterminesthenumericalvaluesfortheenumeratedtype.Inthiscase,the
namesareassignedconsecutivevaluesstartingwith0(zero).IfvaluesisnonNULL,itisusedtoassignvaluestothenames.Eachnameinthevalue_names
arrayisassignedthecorrespondingvalueinthevaluesarray,soitispossibletohavenonconsecutivevaluesorduplicatenamesforthesamevalue.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page341

XmRepTypeRegister()returnstheIDnumberthatisassignedtotherepresentationtype.Thisvalueisusedinotherrepresentationtypemanagerroutinesto
identifyaparticulartype.Arepresentationtypecanonlyberegisteredonce.Ifatypeisregisteredmorethanonce,thebehavioroftherepresentationtypemanageris
undefined.
Usage
InMotif1.2andlater,therepresentationtypemanagerprovidessupportforhandlingmanyofthetasksrelatedtoenumeratedvalues.Thisfacilityinstallsresource
convertersthatconvertastringvaluetoitsnumericalrepresentation.Therepresentationtypemanagercanalsobequeriedtogetinformationabouttheregistered
types.Thisfacilityisespeciallyusefulforinterfacebuildersandapplicationslikeeditresthatallowausertosetresourcesinteractively.XmRepTypeRegister()
providesawayforanapplicationtoregisterrepresentationtypesforapplicationspecificresourcesorfornewwidgetclasses.
SeeAlso
XmRepTypeAddReverse(1),XmRepTypeGetId(1),XmRepTypeGetNameList(1),XmRepTypeGetRecord(1),
XmRepTypeGetRegistered(1),XmRepTypeValidValue(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page342

XmRepTypeValidValue
XmResourceConversion
Name
XmRepTypeValidValuedeterminethevalidityofanumericalvalueforarepresentationtype.
Synopsis
#include<Xm/RepType.h>
BooleanXmRepTypeValidValue(rep_type_id,test_value,
enable_default_warning)
XmRepTypeIdrep_type_id
unsignedchartest_value
Widgetenable_default_warning

Inputs
rep_type_id

SpecifiestheIDnumberoftherepresentationtype.

test_value

Specifiesthevaluethatistobetested.

enable_default_warning

Specifiesawidgetthatisusedtogenerateadefaultwarning
message.

Returns
TrueifthespecifiedvalueisvalidorFalseotherwise.
Availability
Motif1.2andlater.
Description
XmRepTypeValidValue()checksthevalidityofthespecifiedtest_valuefortherepresentationtypespecifiedbyrep_type_id.Theroutinereturns
Trueifthevalueisvalid.Otherwise,itreturnsFalse.Iftheenable_default_warningparameterisnonNULL,XmRepTypeValidValue()
usesthespecifiedwidgettogenerateadefaultwarningmessageifthevalueisinvalid.Ifenable_default_warningisNULL,nodefaultwarningmessageis
provided.
Usage
InMotif1.2andlater,therepresentationtypemanagerprovidessupportforhandlingmanyofthetasksrelatedtoenumeratedvalues.Thisfacilityinstallsresource
convertersthatconvertastringvaluetoitsnumericalrepresentation.Therepresentationtypemanagercanalsobequeriedtogetinformationabouttheregistered
types.Thisfacilityisespeciallyusefulforinterfacebuildersandapplicationslikeeditresthatallowauserto

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page343

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

setresourcesinteractively.XmRepTypeValidValue()providesawayforanapplicationtocheckifavalueisvalidforaparticularrepresentationtype.
SeeAlso
XmRepTypeGetId(1),XmRepTypeRegister(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page344

XmResolveAllPartOffsets
XmWidgetInternals
Name
XmResolveAllPartOffsetsensureupwardcompatiblewidgetsandapplications.
Synopsis
voidXmResolveAllPartOffsets(widget_class,offset,
constraint_offset)
WidgetClasswidget_class
XmOffsetPtr*offset
XmOffsetPtr*constraint_offset

Inputs
widget_class

Specifiesthewidgetclasspointer.

Outputs
offset

Returnsthewidgetoffsetrecord.

constraint_offset

Returnstheconstraintoffsetrecord.

Description
XmResolveAllPartOffsets()ensuresthatanapplicationorawidgetwillbeupwardlycompatiblewiththerecordsinawidgetstructure.Inotherwords,if
thesizeofawidgetstructurechangesinthefuture,thisroutinecanbeusedtocalculatethelocationsofthenewoffsets.Thisroutineand
XmResolvePartOffsets()aresimilar.Duringthecreationofawidget,bothroutinesmodifythewidgetstructurebyallocatinganarrayofoffsetvalues.
XmResolvePartOffsets()affectsonlythewidgetinstancerecord,whileXmResolveAllPartOffsets()affectsthewidgetinstanceandconstraint
records.
Usage
IfyouaresubclassingaMotifwidget,youshoulduseXmResolveAllPartOffsets()andXmResolvePartOffsets()toensurethatyourwidget
willbecompatiblewithfuturereleasesofthetoolkit.
SeeAlso
XmResolvePartOffsets(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page345

XmResolvePartOffsets
XmWidgetInternals
Name
XmResolvePartOffsetsensureupwardcompatiblewidgetsandapplications.
Synopsis
voidXmResolvePartOffsets(widget_class,offset)
WidgetClasswidget_class
XmOffsetPtr*offset

Inputs
widget_class

Specifiesthewidgetclasspointer.

Outputs
offset

Returnsthewidgetoffsetrecord.

Description
XmResolvePartOffsets()ensuresthatanapplicationorawidgetwillbeupwardlycompatiblewiththerecordsinawidgetstructure.Inotherwords,ifthe
sizeofawidgetstructurechangesinthefuture,thisroutinecanbeusedtocalculatethelocationsofthenewoffsets.Thisroutineand
XmResolveAllPartOffsets()aresimilar.Duringthecreationofawidget,bothroutinesmodifythewidgetstructurebyallocatinganarrayofoffsetvalues.
XmResolvePartOffsets()affectsonlythewidgetinstancerecord,whileXmResolveAllPartOffsets()affectsthewidgetinstanceandconstraint
records.
Usage
IfyouaresubclassingaMotifwidget,youshoulduseXmResolvePartOffsets()andXmResolveAllPartOffsets()toensurethatyourwidget
willbecompatiblewithfuturereleasesofthetoolkit.
SeeAlso
XmResolveAllPartOffsets(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page346

XmScaleGetValue
XmScale
Name
XmScaleGetValuegettheslidervalueforaScalewidget.
Synopsis
#include<Xm/Scale.h>
voidXmScaleGetValue(widget,value_return)
Widgetwidget
int*value_return

Inputs
widget

SpecifiestheScalewidget.

Outputs
value_return

ReturnsthecurrentsliderpositionfortheScale.

Description
XmScaleGetValue()returnsthecurrentpositionofthesliderwithinthespecifiedScalewidget.
Usage
XmScaleGetValue()isaconvenienceroutinethatreturnsthevalueoftheXmNvalueresourcefortheScalewidget.Callingtheroutineisequivalenttocalling
XtGetValues()forthatresource,althoughXmScaleGetValue()accessesthevaluethroughthewidgetinstancestructureratherthanthrough
XtGetValues().
SeeAlso
XmScaleSetValue(1),XmScale(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page347

XmScaleSetTicks
XmScale
Name
XmScaleSetTickssettickmarksforaScalewidget.
Synopsis
#include<Xm/Scale.h>
voidXmScaleSetTicks(widget,big_every,num_med,num_small,
size_big,size_med,size_small)
Widgetwidget
intbig_every
Cardinalnum_med
Cardinalnum_small
Dimensionsize_big
Dimensionsize_med
Dimensionsize_small

Inputs
widget

Specifiesascalewidget.

big_every

Specifiesthenumberofscalevaluesbetweenlargetickmarks.

num_med

Specifiesthenumberofmediumsizedticksbetweenthelargetick
marks.

num_small

Specifiesthenumberofsmallsizedticksbetweenthemediumsizedtick
marks.

size_big

Specifiesthesizeofthelargetickmarks.

size_med

Specifiesthesizeofthemediumtickmarks.

size_small

Specifiesthesizeofthesmalltickmarks.

Availability
Motif2.0andlater.
Description
XmScaleSetTicks()placestickmarksalongtheedgeofaScalewidget.Tickmarksmaybeofthreetypes:big,medium,andsmall.Thesize(inpixels)of
eachtypeisspecifiedbysize_big,size_med,andsize_small,respectively.Thelocationofeachbigtickmarkisgivenbybig_every,which
simplyspecifiesthenumberofscalevaluesbetweeneachbigtickmark.Thenumberofmediumsizedtickmarksbetweeneachbigtickmarkisgivenbynum_med,
andthenumberofsmallsizedtickmarksbetweeneachmediumsizedtickmarkisnum_small.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page348

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
XmScaleSetTicks()isaconveniencefunctionthatplacestickmarksalongtheedgeofaScalebycreatingaseriesofSeparatorGadgetchildrenatevenly
spacedintervals.Ifsize_bigiszero,XmScaleSetTicks()simplyreturns.Ifsize_medorsize_smalliszero,num_medandnum_smallare
forcedtozerorespectively.Thenumberofmediumandsmalltickmarksrequiredmaybezero,butthenumberoflargetickmarksmustnotbelessthan2.
SeparatorGadgetsarecreatedwiththenames''BigTic","MedTic",and"SmallTic",wheretheXmNseparatorTyperesourceofeachisforcedto
XmSINGLE_LINE.XmScaleSetTicks()doesnotdeleteanyexistingtickswheninvokedonanyparticularScale,neitherdoestheScalerecalculateproper
positionsforthetickmarksifthescaleorientationischangedaftertickmarksareadded.Ineachcase,existingtickmarksmustbeerasedandsubsequentlyredrawn
orrespecified.
Example
ThefollowingcodeensuresthatanytickmarksareerasedbeforeaddingnewtickstoaScale:
#include<Xm/Scale.h>
#include<Xm/SeparatoG.h>

voidScaleEraseSetTicks(Widgetscale,
intbig_every,
Cardinalnum_med,
Cardinalnum_small,
Dimensionsize_big,
Dimensionsize_med,
Dimensionsize_med)
{
WidgetListchildren=(WidgetList)0
Cardinalnum_children=(Cardinal)0
inti
Stringname

/*fetchscalechildren.*/
XtVaGetValues(scale,
XmNchildren,&children,
XmNnumChildren,&num_children,
0)

/*destroyoldticks.*/
/*someoptimizationtoreusecorrectly*/
/*placedticksmightbeinorderhere...*/
for(i=0i<num_childreni++){
if(XmIsSeparatorGadget(children[i])){

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page349
if((name=XtName(children[i]))!=(String)0){
if((strcmp(name,"BigTic")==0)||
(strcmp(name,"MedTic")==0)||
(strcmp(name,"SmallTic")==0)){
XtDestroyWidget(children[i])
}
}
}
}

/*createnewticks.*/
XmScaleSetTicks(scale,
big_every,
num_med,num_small,
size_big,size_med,size_small)
}

SeeAlso
XmScaleSetValues(1).XmScale(2),XmSeparatorGadget(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page350

XmScaleSetValue
XmScale
Name
XmScaleSetValuesettheslidervalueforaScalewidget.
Synopsis
#include<Xm/Scale.h>
voidXmScaleSetValue(widget,value)
Widgetwidget
intvalue

Inputs
widget

SpecifiestheScalewidget.

value

Specifiesthevalueoftheslider.

Description
XmScaleSetValue()setsthecurrentpositionoftheslidertovalueinthespecifiedScalewidget.ThevaluemustbeintherangeXmNminimumto
XmNmaximum.
Usage
XmScaleSetValue()isaconvenienceroutinethatsetsthevalueoftheXmNvalueresourcefortheScalewidget.Callingtheroutineisequivalenttocalling
XtSetValues()forthatresource,althoughXmScaleSetValue()accessesthevaluethroughthewidgetinstancestructureratherthanthrough
XtSetValues().
SeeAlso
XmScaleGetValue(1),XmScale(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page351

XmScrollBarGetValues
XmScrollBar
Name
XmScrollBarGetValuesgetinformationaboutthecurrentstateofaScrollBarwidget.
Synopsis
#include<Xm/ScrollBar.h>
voidXmScrollBarGetValues(widget,value_return,slider_size_return,
increment_return,page_increment_return)
Widgetwidget
int*value_return
int*slider_size_return
int*increment_return
int*page_increment_return

Inputs
widget

SpecifiestheScrollBarwidget.

Outputs
value_return

Returnsthecurrentsliderposition.

slider_size_return

Returnsthecurrentsizeoftheslider.

increment_return

Returnsthecurrentincrementanddecrementlevel.

page_increment_return

Returnsthecurrentpageincrementanddecrementlevel.

Description
XmScrollBarGetValues()returnsthecurrentstateinformationforthespecifiedScrollBarwidget.Thisinformationconsistsofthepositionandsizeofthe
slider,aswellastheincrementandpageincrementvalues.
Usage
XmScrollBarGetValues()isaconvenienceroutinethatreturnsthevaluesoftheXmNvalue,XmNsliderSize,XmNincrement,and
XmNpageIncrementresourcesfortheScrollBarwidget.CallingtheroutineisequivalenttocallingXtGetValues()forthoseresources,although
XmScrollBarGetValues()accessesthevaluesthroughthewidgetinstancestructureratherthanthroughXtGetValues().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page352

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmScrollBarSetValues(1),XmScrollBar(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page353

XmScrollBarSetValues
XmScrollBar
Name
XmScrollBarSetValuessetthecurrentstateofaScrollBarwidget.
Synopsis
#include<Xm/ScrollBar.h>
voidXmScrollBarSetValues(widget,value,slider_size,increment,
page_increment,notify)
Widgetwidget
intvalue
intslider_size
intincrement
intpage_increment
Booleannotify

Inputs
widget

SpecifiestheScrollBarwidget.

value

Specifiesthesliderposition.

slider_size

Specifiesthesizeoftheslider.

increment

Specifiestheincrementanddecrementlevel.

page_increment

Specifiesthepageincrementanddecrementlevel.

notify

Specifieswhetherornotthevaluechangedcallbackisinvoked.

Description
XmScrollBarSetValues()setsthecurrentstateofthespecifiedScrollBarwidget.Thepositionofthesliderissettovalue,whichmustbeintherange
XmNminimumtoXmNmaximumminusXmNsliderSize.Thesizeofthesliderissettoslider_size,whichmustbebetween1andthesizeofthescroll
region.Theincrementandpageincrementvaluesaresettoincrementandpage_increment,respectively.IfnotifyisTrue,
XmScrollBarSetValues()invokestheXmNvalueChangedCallbackfortheScrollBarwhenthestateisset.
Usage
XmScrollBarSetValues()isaconvenienceroutinethatsetsthevaluesoftheXmNvalue,XmNsliderSize,XmNincrement,and
XmNpageIncrementresourcesfortheScrollBarwidget.CallingtheroutineisequivalenttocallingXtSetValues()forthoseresources,although
XmScrollBarSetValues()accessesthevaluesthroughthewidgetinstancestructureratherthanthroughXtSetValues().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page354

ThenotifyparameterindicateswhetherornotthevaluechangedcallbacksfortheScrollBarareinvoked.Youcanavoidredundantcodebysettingthisparameter
toTrue.IfyouarecallingXmScrollBarSetValues()fromavaluechangedcallbackroutine,youprobablywanttosettheparametertoFalsetoavoid
thepossibilityofaninfiniteloop.CallingXmScrollBarSetValues()withnotifysettoTruecausesthecallbackroutinestobeinvokedinawaythatis
indistinguishablefromauserinitiatedadjustmenttotheScrollBar.
SeeAlso
XmScrollBarGetValues(1),XmScrollBar(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page355

XmScrollVisible
XmScrolledWindow
Name
XmScrollVisiblemakeanobscuredchildofaScrolledWindowvisible.
Synopsis
#include<Xm/ScrolledW.h>
voidXmScrollVisible(scrollw_widget,widget,left_right_margin,
top_bottom_margin)
Widgetscrollw_widget
Widgetwidget
Dimensionleft_right_margin
Dimensiontop_bottom_margin

Inputs
scrollw_widget

SpecifiestheScrolledWindowwidget.

widget

SpecifiesthewidgetIDofthewidgetthatistobemadevisible.

left_right_margin

Specifiesthedistancebetweenthewidgetandtheleftorrightedgeof
theviewportiftheScrolledWindowisscrolledhorizontally.

top_bottom_margin

Specifiesthedistancebetweenthewidgetandthetoporbottomedgeof
theviewportiftheScrolledWindowisscrolledvertically.

Availability
Motif1.2andlater.
Description
XmScrollVisible()scrollsthespecifiedScrolledWindowscrollw_widgetsothattheobscuredorpartiallyobscuredwidgetbecomesvisibleinthe
workareaviewport.widgetmustbeadescendentofscrollw_widget.TheroutinerepositionstheworkareaoftheScrolledWindowandsetsthemargins
betweenthewidgetandtheviewportboundariesbasedonleft_right_marginandtop_bottom_marginifnecessary.
Usage
XmScrollVisible()providesawayforanapplicationtoensurethataparticularchildofaScrolledWindowisvisible.Inorderfortheroutinetowork,the

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page356

XmNscrollingPolicyoftheScrolledWindowwidgetmustbesettoXmAUTOMATIC.Thisroutineisdesignedtobeusedinthe
XmNtraverseObscureCallbackforaScrolledWindow.
SeeAlso
XmScrolledWindow(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page357

XmScrolledWindowSetAreas
XmScrolledWindow
Name
XmScrolledWindowSetAreasspecifythechildrenforascrolledwindow.
Synopsis
#include<Xm/ScrolledW.h>
voidXmScrolledWindowSetAreas(widget,horizontal_scrollbar,
vertical_scrollbar,work_region)
Widgetwidget
Widgethorizontal_scrollbar
Widgetvertical_scrollbar
Widgetwork_region

Inputs
widget

SpecifiestheScrolledWindowwidget.

horizontal_scrollbar

SpecifiesthewidgetIDofthehorizontalScrollBar.

vertical_scrollbar

SpecifiesthewidgetIDoftheverticalScrollBar.

work_region

SpecifiesthewidgetIDoftheworkwindow.

Availability
InMotif2.0andlater,XmScrolledWindowSetAreas()isobsolete.
Description
XmScrolledWindowSetAreas()setsupthestandardregionsofaScrolledWindowwidgetforanapplication.TheScrolledWindowmustbecreatedbefore
theroutineiscalled.XmScrolledWindowSetAreas()specifiesthehorizontalandverticalScrollBarsandtheworkwindowregion.Ifaparticular
ScrolledWindowdoesnothaveoneoftheseregions,thecorrespondingargumentcanbespecifiedasNULL.
Usage
EachoftheScrolledWindowregionsisassociatedwithaScrolledWindowresourceXmScrolledWindowSetAreas()setstheassociatedresources.The
resourcesthatcorrespondtothelastthreeargumentstotheroutineareXmNhorizontalScrollBar,XmNverticalScrollBar,and
XmNworkWindow,respectively.
IfanapplicationdoesnotcallXmScrolledWindowSetAreas(),thewidgetmaystillsetsomeofthestandardregions.IfScrollBarsareaddedaschildren,
theXmNhorizontalScrollBarandXmNverticalScrollBarresourcesmaybesetiftheyhave

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page358

notalreadybeenspecified.AnychildthatisnotaScrollBarisusedfortheXmNworkWindow.Ifyouwanttobecertainaboutwhichwidgetsareusedforthe
differentregions,itiswisetocallXmScrolledWindowSetAreas()explicitly.
InMotif2.0andlater,thisfunctionisobsolete.YoushouldspecifytheXmNhorizontalScrollBar,XmNverticalScrollBar,and
XmNworkWindowresourcesdirectlythroughacalltoXtSetValues().Althoughostensiblymaintainedforbackwardscompatibility,theimplementationof
XmScrolledWindowSetAreas()inMotif2.0andlaterisnotMotif1.2compatible.InMotif1.2,supplyingaNULLvalueforanyofthescrollbarorwork
windowparametersdirectlysetstheinternalcomponenttoNULL.InMotif2.0andlater,supplyingaNULLvaluecausesthatparametertobeignored,leavingthe
internalcomponentintact.
Example
ThefollowingcodefragmentshowshowtosettheregionsofaScrolledWindow:
Widgettoplevel,scrolled_w,drawing_a,vsb,hsb
intview_width,view_height

scrolled_w=XtVaCreateManagedWidget("scrolled_w",
xmScrolledWindowWidgetClass,toplevel,
XmNscrollingPolicy,XmAPPLICATION_DEFINED,
XmNvisualPolicy,XmVARIABLE,
NULL)

drawing_a=XtVaCreateManagedWidget("drawing_a",
xmDrawingAreaWidgetClass,scrolled_w,
XmNwidth,view_width,
XmNheight,view_height,
NULL)

vsb=XtVaCreateManagedWidget("vsb",xmScrollBarWidgetClass,scrolled_w,
XmNorientation,XmVERTICAL,
NULL)

hsb=XtVaCreateManagedWidget("hsb",xmScrollBarWidgetClass,scrolled_w,
XmNorientation,XmHORIZONTAL,
NULL)

XmScrolledWindowSetAreas(scrolled_w,hsb,vsb,drawing_a)

SeeAlso
XmScrolledWindow(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page359

XmSelectionBoxGetChild
XmSelectionBox
Name
XmSelectionBoxGetChildgetthespecifiedchildofaSelectionBoxwidget.
Synopsis
#include<Xm/SelectioB.h>
WidgetXmSelectionBoxGetChild(widget,child)
Widgetwidget
unsignedcharchild

Inputs
widget

SpecifiestheSelectionBoxwidget.

child

SpecifiesthechildoftheSelectionBoxwidget.Passoneofthevalues
fromthelistbelow.

Returns
ThewidgetIDofthespecifiedchildoftheSelectionBox.
Description
XmSelectionBoxGetChild()returnsthewidgetIDofthespecifiedchildoftheSelectionBoxwidget.
Usage
XmDIALOG_APPLY_BUTTON,XmDIALOG_CANCEL_BUTTON,XmDIALOG_HELP_BUTTON,andXmDIALOG_OK_BUTTONspecifytheaction
buttonsinthewidget.XmDIALOG_DEFAULT_BUTTONspecifiesthecurrentdefaultbutton.XmDIALOG_LISTandXmDIALOG_LIST_LABELspecifythe
listanditslabel.XmDIALOG_TEXTandXmDIALOG_SELECTION_LABELspecifytheselectiontextentryareaanditslabel.XmDIALOG_SEPARATOR
specifiestheseparatorandXmDIALOG_WORK_AREAspecifiesanyworkareachildthathasbeenaddedtotheSelectionBox.
FormoreinformationonthedifferentchildrenoftheSelectionBox,seethemanualpageinSection2,MotifandXtWidgetClasses.
Structures
Thepossiblevaluesforchildare:
XmDIALOG_APPLY_BUTTON

XmDIALOG_LIST

XmDIALOG_SEPARATOR

XmDIALOG_CANCEL_BUTTON

XmDIALOG_LIST_LABEL

XmDIALOG_TEXT

XmDIALOG_DEFAULT_BUTTON

XmDIALOG_OK_BUTTON

XmDIALOG_HELP_BUTTON

XmDIALOG_SELECTION_LABEL

XmDIALOG_WORK_AREA

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page360

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmPromptDialog(2),XmSelectionBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page361

XmSetColorCalculation
XmColors
Name
XmSetColorCalculationsettheprocedurethatcalculatesdefaultcolors.
Synopsis
XmColorProcXmSetColorCalculation(color_proc)
XmColorProccolor_proc

Inputs
color_proc

Specifiestheprocedurethatisusedforcolorcalculation.

Returns
Thepreviouscolorcalculationprocedure.
Description
XmSetColorCalculation()setstheprocedurecalledbythatcalculatesthedefaultforeground,topandbottomshadow,andselectioncolors.The
procedurecalculatesthesecolorsbasedonthebackgroundcolorthathasbeenpassedtotheprocedure.Ifcolor_procisNULL,thisroutinerestoresthedefault
colorcalculationprocedure.XmSetColorCalculation()returnsthecolorcalculationprocedurethatwasinusewhentheroutinewascalled.Both
XmGetColors()andXmChangeColor()usethecolorcalculationprocedure.
Usage
Motifwidgetsrelyontheuseofshadowedborderstocreatetheirthreedimensionalappearance.Thetopandbottomshadowcolorsarelighteranddarkershadesof
thebackgroundcolorthesecolorsarereversedtomakeacomponentappearraisedoutofthescreenorrecessedintothescreen.Theselectcolorisaslightlydarker
shadeofthebackgroundcolorthatindicatesthatacomponentisselected.Theforegroundcoloriseitherblackorwhite,dependingonwhichcolorprovidesthemost
contrastwiththebackgroundcolor.XmSetColorCalculation()setstheprocedurethatcalculatesthesecolors.UseXmGetColorCalculation()
togetthedefaultcolorcalculationprocedure.
InMotif2.0andlater,perscreencolorcalculationproceduresaresupported:iftheXmNcolorCalculationProcresourceoftheXmScreenobject
associatedwithagivenwidgetisnotNULL,theprocedurespecifiedbytheresourceisusedtocalculatecolorinpreferencetoanyprocedurewhichmayhavebeen
specifiedbyXmSetColorCalculation().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page362

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Procedures
TheXmColorProchasthefollowingsyntax:
typedefvoid(*XmColorProc)(XColor*,XColor*,XColor*,XColor*,XColor*)
XColor*bg_color/*specifiesthebackgroundcolor*/
XColor*fg_color/*returnstheforegroundcolor*/
XColor*sel_color/*returnstheselectcolor*/
XColor*ts_color/*returnsthetopshadowcolor*/
XColor*bs_color/*returnsthebottomshadowcolor*/

AnXmColorProctakesfivearguments.Thefirstargument,bg_color,isapointertoanXColorstructurethatspecifiesthebackgroundcolor.Thered,
green,blue,andpixelfieldsinthestructurecontainvalidvalues.TherestoftheargumentsarepointerstoXColorstructuresforthecolorsthataretobe
calculated.Theprocedurefillsinthered,green,andbluefieldsinthesestructures.
SeeAlso
XmChangeColor(1),XmGetColorCalculation(1),XmGetColors(1).XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page363

XmSetFontUnit
XmFonts
Name
XmSetFontUnitsetthefontunitvalues.
Synopsis
voidXmSetFontUnit(display,font_unit_value)
Display*display
intfont_unit_value

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

font_unit_value

Specifiesthevalueforbothhorizontalandverticalfontunits.

Availability
InMotif1.2andlater,XmSetFontUnit()isobsolete.IthasbeensupersededbysettingtheXmScreenresourcesXmNhorizontalFontUnitand
XmNverticalFontUnit.
Description
XmSetFontUnit()setsthevalueofthehorizontalandverticalfontunitsforallofthescreensonthedisplay.ThisroutineisretainedforcompatibilitywithMotif
1.1andshouldnotbeusedinnewerapplications.
Usage
Fontunitsarearesolutionindependentunitofmeasurementthatarebasedonthewidthandheightcharacteristicsofaparticularfont.Thedefaulthorizontaland
verticalfontunitvaluesarebasedontheXmNfontresource,whichinMotif1.2andlater,isaresourceoftheScreenobject.Anapplicationcanoverridethese
defaultvaluesbycallingXmSetFontUnit().Thevaluesshouldbesetbeforeanywidgetsthatuseresolutionindependentdataarecreated.
SeeAlso
XmConvertUnits(1),XmSetFontUnits(1),XmGadget(2),XmManager(2),XmPrimitive(2),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page364

XmSetFontUnits
XmFonts
Name
XmSetFontUnitssetthefontunitvalues.
Synopsis
voidXmSetFontUnits(display,h_value,v_value)
Display*display
inth_value
intv_value

Inputs
display SpecifiesaconnectiontoanXserverreturnedfrom
XOpenDisplay()orXtDisplay().
h_value Specifiesthevalueforhorizontalfontunits.
v_value Specifiesthevalueforverticalfontunits.

Availability
InMotif1.2andlater,XmSetFontUnits()isobsolete.IthasbeensupersededbysettingtheXmScreenresourcesXmNhorizontalFontUnitand
XmNverticalFontUnit.
Description
XmSetFontUnits()setsthevalueofthehorizontalandverticalfontunitstoh_valueandv_valuerespectively.Theroutinesetsthefontunitsforallof
thescreensonthedisplay.ThisroutineisretainedforcompatibilitywithMotif1.1andshouldnotbeusedinnewerapplications.
Usage
Fontunitsarearesolutionindependentunitofmeasurementthatarebasedonthewidthandheightcharacteristicsofaparticularfont.Thedefaulthorizontaland
verticalfontunitvaluesarebasedontheXmNfontresource,whichinMotif1.2andlater,isaresourceoftheScreenobject.Anapplicationcanoverridethese
defaultvaluesbycallingXmSetFontUnits().Thevaluesshouldbesetbeforeanywidgetsthatuseresolutionindependentdataarecreated.
SeeAlso
XmConvertUnits(1),XmSetFontUnit(1),XmGadget(2),XmManager(2),XmPrimitive(2),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page365

XmSetMenuCursor
XmCursors
Name
XmSetMenuCursorsetthecurrentmenucursor.
Synopsis
voidXmSetMenuCursor(display,cursorId)
Display*display
CursorcursorId

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfrom
XOpenDisplay()orXtDisplay().

cursorId SpecifiesthecursorIDforthemenucursor.

Availability
InMotif1.2andlater,XmSetMenuCursor()isobsolete.IthasbeensupersededbysettingtheXmScreenresourceXmNmenuCursor.
Description
XmSetMenuCursor()setsthemenucursorforanapplication.Theroutinesetsthecursorforallscreensonthespecifieddisplay.Thespecifiedcursoris
shownwhenevertheapplicationisusingaMotifmenuonthespecifieddisplay.
Usage
Themenucursoristhepointershapethatisusedwheneveramenuisposted.Thiscursorcanbedifferentfromthenormalpointershape.InMotif1.2andlater,the
newScreenobjecthasaresource,XmNmenuCursor,thatspecifiesthemenucursor.XmSetMenuCursor()isretainedforcompatibilitywithMotif1.1and
shouldnotbeusedinnewerapplications.
SeeAlso
XmGetMenuCursor(1),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page366

XmSetProtocolHooks
XmProtocols
Name
XmSetProtocolHookssetprehooksandposthooksforaprotocol.
Synopsis
#include<Xm/Protocols.h>
voidXmSetProtocolHooks(shell,property,protocol,
prehook,pre_closure,posthook,post_closure)
Widgetshell
Atomproperty
Atomprotocol
XtCallbackProcprehook
XtPointerpre_closure
XtCallbackProcposthook
XtPointerpost_closure

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocolproperty.

property

Specifiesthepropertythatholdstheprotocoldata.

protocol

Specifiestheprotocolatom.

prehook

Specifiestheproceduretoinvokebeforetheclientcallbacks.

pre_closure

Specifiesanyclientdatathatispassedtotheprehook.

posthook

Specifiestheproceduretoinvokeaftertheclientcallbacks.

post_closure

Specifiesanyclientdatathatispassedtotheposthook.

Description
XmSetProtocolHooks()allowspreandpostprocedurestobeinvokedinadditiontotheregularcallbackproceduresthatareperformedwhentheMotif
windowmanagersendsaprotocolmessage.Theprehookprocedureisinvokedbeforecallingtheproceduresontheclient'scallbacklist,whereasthe
posthookprocedureisinvokedaftercallingtheproceduresontheclient'scallbacklist.Thisroutinegivesshellsmorecontrolflow,ascallbackproceduresaren't
necessarilyexecutedinaparticularorder.
Usage
Aprotocolisacommunicationchannelbetweenapplications.Protocolsaresimplyatoms,storedinapropertyonthetoplevelshellwindowfortheapplication.To
communicateusingaprotocol,aclientsendsaClientMessageeventcontainingapropertyandprotocol,andthereceivingclientrespondsbycallingthe
associatedprotocol

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page367

callbackroutine.XmSetProtocolHooks()givesanapplicationmorecontrolovertheflowofcallbackprocedures,sincecallbacksarenotnecessarilyinvoked
inanyparticularorder.
SeeAlso
XmAddProtocolCallback(1),XmRemoveProtocolCallback(1),XmSetWMProtocolHooks(1),VendorShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page368

XmSetWMProtocolHooks
XmProtocols
Name
XmSetWMProtocolHookssetprehooksandposthooksfortheXA_WM_PROTOCOLSprotocol.
Synopsis
#include<Xm/Protocols.h>
voidXmSetWMProtocolHooks(shell,protocol,prehook,pre_closure,
posthook,post_closure)
Widgetshell
Atomprotocol
XtCallbackProcprehook
XtPointerpre_closure
XtCallbackProcposthook
XtPointerpost_closure

Inputs
shell

Specifiesthewidgetassociatedwiththeprotocol
property.

protocol

Specifiestheprotocolatom.

prehook

Specifiestheproceduretoinvokebeforetheclient
callbacks.

pre_closure

Specifiesanyclientdatathatispassedtotheprehook.

posthook

Specifiestheproceduretoinvokeaftertheclient
callbacks.

post_closure

Specifiesanyclientdatathatispassedtothe
posthook.

Description
XmSetXmProtocolHooks()isaconvenienceroutinethatcallsXmSetProtocolHooks()withpropertysettoXA_WM_PROTOCOLS.
Usage
ThepropertyXA_WM_PROTOCOLSisasetofpredefinedprotocolsforcommunicationbetweenclientsandwindowmanagers.Tocommunicateusingaprotocol,a
clientsendsaClientMessageeventcontainingapropertyandprotocol,andthereceivingclientrespondsbycallingtheassociatedprotocolcallbackroutine.
XmSetWMProtocolHooks()givesanapplicationmorecontrolovertheflowofcallbackprocedures,sincecallbacksarenotnecessarilyinvokedinany
particularorder.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page369

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmAddWMProtocolCallback(1),XmInternAtom(1),XmRemoveWMProtocolCallback(1),XmSetProtocolHooks(1),
VendorShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page370

XmSimpleSpinBoxAddItem
XmSpinBox
Name
XmSimpleSpinBoxAddItemaddanitemtoaSimpleSpinBox.
Synopsis
#include<Xm/SSpinB.h>
voidXmSimpleSpinBoxAddItem(widget,item,position)
Widgetwidget
XmStringitem
intposition

Inputs
widget

SpecifiesaSimpleSpinBoxwidget.

item

Specifiesanitemtoadd.

position

Specifiesthepositionatwhichtoaddthenewitem.

Availability
Motif2.1andlater.
Description
XmSimpleSpinBoxAddItem()addsanitemtoaSimpleSpinBoxwidgetatagivenpositionwithinthelistofvaluesthatthewidgetmaydisplay.If
positioniszeroorgreaterthanthenumberofitemsinthelist,theitemisappendedtothelist.
Usage
XmSimpleSpinBoxAddItem()isaconvenienceroutinethataddsanitemtothelistofitemswhichaSimpleSpinBoxmaydisplay.Inordertoaddanitemto
theSimpleSpinBox,acompoundstringmustbecreated.XmSimpleSpinBoxAddItem()addstheitemtotheSimpleSpinBoxbymanipulatingthe
XmNvalues,XmNnumValues,andXmNpositionresourcesofthewidget.IftheXmNspinBoxChildTyperesourceofthewidgetisnot
XmSTRING,oriftheitemisNULL,theproceduresimplyreturnswithoutmodifyingthearrayofvalues.TheSimpleSpinBoxwidgetmakesacopyofthesupplied
itemtheprogrammerisresponsibleforfreeingthecompoundstringatanappropriatepointbycallingXmStringFree().
SeeAlso
XmSimpleSpinBoxDeletePos(1),XmSimpleSpinBoxSetItem(1),XmStringFree(1),XmSimpleSpinBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page371

XmSimpleSpinBoxDeletePos
XmSpinBox
Name
XmSimpleSpinBoxDeletePosdeleteanitematthespecifiedpositionfromaSimpleSpinBox.
Synopsis
#include<Xm/SSpinB.h>
voidXmSimpleSpinBoxDeletePos(widget,position)
Widgetwidget
intposition

Inputs
widget

SpecifiesaSimpleSpinBoxwidget.

position

Specifiesthepositionatwhichtodeleteanitem.

Availability
Motif2.1andlater.
Description
XmSimpleSpinBoxDeletePos()deletesanitematagivenpositionfromaSimpleSpinBoxwidget.Avalueof1indicatesthefirstitem,2isthe
seconditem,andsoon.Thelastiteminthelistcanbespecifiedbypassingapositionofzero.
Usage
XmSimpleSpinBoxDeletePos()isaconveniencefunctionthatdeletesanitemfromthesetofvaluesassociatedwithaSimpleSpinBox.Thefunctiondirectly
manipulatestheXmNvalues,XmNnumValues,andXmNpositionresourcesofthewidget.IfthetypeofthewidgetisnotXmSTRING,thefunction
simplyreturnswithoutmodifyingthearrayofvalues.
SeeAlso
XmSimpleSpinBoxAddItem(1),XmSimpleSpinBoxSetItem(1),XmSimpleSpinBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page372

XmSimpleSpinBoxSetItem
XmSpinBox
Name
XmSimpleSpinBoxSetItemsetaniteminaSimpleSpinBox.
Synopsis
#include<Xm/SSpinB.h>
voidXmSimpleSpinBoxSetItem(widget,item)
Widgetwidget
XmStringitem

Inputs
widget

SpecifiesaSimpleSpinBoxwidget.

item

Specifiestheitemtoset.

Availability
Motif2.1andlater.
Description
XmSimpleSpinBoxSetItem()makesaniteminaSimpleSpinBoxwidgetthecurrentvalue.
Usage
XmSimpleSpinBoxSetItem()isaconvenienceroutinethatselectsoneoftheSimpleSpinBoxvalues.TheitemmustexistwithintheXmNvaluesarrayof
thewidget,otherwiseawarningmessageisdisplayed.ThefunctionmodifiestheXmNpositionresourceofthewidgetiftheitemisfound.Nocheckisperformed
toensurethatthetypeoftheSimpleSpinBoxisXmSTRING.
SeeAlso
XmSimpleSpinBoxAddItem(1),XmSimpleSpinBoxDeletePos(1),XmSimpleSpinBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page373

XmSpinBoxValidatePosition
XmSpinBox
Name
XmSpinBoxValidatePositionvalidatethecurrentvalueofaSpinBox.
Synopsis
#include<Xm/SpinB.h>
intXmSpinBoxValidatePosition(text_field,position_value)
Widgettext_field
int*position_value

Inputs
text_field

SpecifiesatextfieldchildofaSpinBoxwidget.

Outputs
position_value

Returnsthepositionofthecurrentvalue.

Returns
Thestatusofthevalidation.
Availability
Motif2.1andlater.
Description
XmSpinBoxValidatePosition()checksthatthetext_fieldchildofaSpinBoxhasavalidpositionvalueandplacesthevalidatedvalueofthe
text_fieldattheaddressposition_value.Ifthepositionisvalid,thefunctionreturnsXmVALID_VALUE.Otherwisethefunctionreturns
XmCURRENT_VALUE,XmMAXIMUM_VALUE,XmMINIMUM_VALUE,orXmINCREMENT_VALUE,dependinguponacomparisonofthecurrent
positionandotherconstraintresourcesofthetext_field.
Usage
XmSpinBoxValidatePosition()canbeusedtoensurethattheuserhasenteredavalidvalueintoaneditabletextualchildofaSpinBox.If
text_fieldisNULL,iftext_fielddoesnotholdtheXmQTaccessTextualtrait,oriftheXmNspinBoxChildTypeofthiswidgetisnot
XmNUMERIC,thefunctionreturnsXmCURRENT_VALUE.Thecurrentvalueofthetextfieldisfetchedasafloatingpointnumber,thenconvertedintoaninteger
usingtheXmNdecimalPointsresource:digitsafterthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page374

decimalplacearesimplytruncated.ThecurrentvalueissubsequentlycomparedagainsttheXmNminimumValueandXmNmaximumValueresources.Ifitis
lessthanthanXmNminimumValue,position_valueissettothevalueofXmNminimumValue,andthefunctionreturnsXmMINIMUM_VALUE.If
thecurrentvalueismorethanXmNmaximumValue,position_valueissettothevalueofXmNmaximumValue,andthefunctionreturns
XmMAXIMUM_VALUE.Lastly,thefunctionchecksthatthecurrentvaluefallsbetweenXmNminimumValueandXmNmaximumValueonaninterval
specifiedbytheXmNincrementValueresource.Thatis,thecurrentvalueisamemberoftheset:
{XmNminimumValue,
XmNminimumValue+XmNincrementValue,
XmNminimumValue+(2*XmNincrementValue),
XmNminimumValue+(3*XmNincrementValue),
...
XmNminimumValue+(n*XmNincrementValue),
...
XmNmaximumValue}

Ifthecurrentvaluedoesnotfallwithintheset,theposition_valueissettothenearestiteminthesetthatisnotmorethanthecurrentvalue,andthefunction
returnsXmINCREMENT_VALUE.Ifallcheckspass,theposition_valueissettothecurrentvalue,andthefunctionreturnsXmVALID_VALUE.
TheSpinBoxdoesnotmodifythecontentsoftext_fieldwhenperformingthevalidation.
Structures
Thereturnedstatushasthefollowingvalues:
XmCURRENT_VALUE
XmMAXIMUM_VALUE

XmINCREMENT_VALUE
XmMINIMUM_VALUE

XmVALID_VALUE

SeeAlso
XmSpinBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page375

XmStringBaseline
XmCompoundStrings
Name
XmStringBaselinegetthebaselinespacingforacompoundstring.
Synopsis
DimensionXmStringBaseline(fontlist,string)
XmFontListfontlist
XmStringstring

Inputs
fontlist

Specifiesthefontlistforthecompoundstring.

string

Specifiesthecompoundstring.

Returns
Thedistance,inpixels,fromthetopofthecharacterboxtothebaselineofthefirstlineoftext.
Availability
InMotif2.0andlater,XmFontListisobsolete.ItissupersededbyXmRenderTable,towhichithasbecomeanalias.
Description
XmStringBaseline()returnsthedistance,inpixels,fromthetopofthecharacterboxtothebaselineofthefirstlineoftextinstring.Ifstringis
createdwithXmStringCreateSimple(),fontlistmustbeginwiththefontassociatedwiththecharactersetfromthecurrentlanguageenvironment
otherwise,theresultisundefined.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringBaseline()providesinformationthatisusefulifyouneedtorenderacompoundstring.Motifwidgetsrendercompoundstringautomatically,soyou
onlyneedtoworryaboutrenderingthemyourselfifyouarewritingyourownwidget.Theroutineisalsousefulifyouwanttogetthedimensionsofacompoundstring
renderedwithaparticularfont.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page376

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmStringComponentCreate(1),XmStringExtent(1),XmStringHeight(1),XmStringWidth(1).XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page377

XmStringByteCompare
XmCompoundStrings
Name
XmStringByteComparecomparetwocompoundstringsbytebybyte.
Synopsis
BooleanXmStringByteCompare(string1,string2)
XmStringstring1
XmStringstring2

Inputs
string1

Specifiesacompoundstring.

string2

Specifiesanothercompoundstring.

Returns
TrueifthetwocompoundstringsarebytebybyteidenticalorFalseotherwise.
Description
XmStringByteCompare()comparesthecompoundstringsstring1andstring2bytebybyte.Ifthestringsareequivalent,itreturnsTrueotherwise
itreturnsFalse.IftwocompoundstringsarecreatedwithXmStringCreateLocalized()inthesamelanguageenvironment,usingthesamecharacter
string,thestringsarebyteforbyteequal.Similarly,iftwocompoundstringsarecreatedwithXmStringCreate()usingthesamefontlistelementtagand
characterstring,thestringsareequal.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringByteCompare()isoneofanumberofroutinesthatallowanapplicationtomanipulatecompoundstringsasitwouldregularcharacterstrings.
Whenacompoundstringisplacedintoawidget,thestringissometimesconvertedtoaninternalformat,whichprovidesfasterprocessingbutstripsoutredundant
information.Asaresult,whenanapplicationretrievesthecompoundstringfromthewidgetbycallingXtGetValues(),thereturnedstringdoesnotnecessarily
matchtheoriginalstringbyteforbyte.ThissituationoccursmostoftenwithLabelanditssubclasses.
SeeAlso
XmStringComponentCreate(1),XmStringCompare(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page378

XmStringByteStreamLength
XmCompoundStrings
Name
XmStringByteStreamLengthcalculatesthelengthofabytestream.
Synopsis
unsignedintXmStringByteStreamLength(string)
unsignedchar*string

Inputs
string

Specifiesastringinbytestreamformat.

Returns
Thelength,inbytes,ofthestring.
Availability
Motif2.0andlater.
Description
XmStringByteStreamLength()calculatesandreturnsthelengthofabytestreamstringinbytes,includinganyheaderinformation.Thestringis
presumedtobeacompoundstringwhichhasbeenconvertedintobytestreamformat.
Usage
Sincethereturnedvalueincludesthesizeofthestreamheader,thefunctionreturnsanonzerovalueevenifstringisNULL.Thefunctionisprimarilyusedaspart
ofdatatransferoperations,forexampleintransferingcompoundstringtablestoandfromtheclipboardorotherwidgets.
SeeAlso
XmCutXmStringToByteStream(1),XmCutByteStreamToXmString(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page379

XmStringCompare
XmCompoundStrings
Name
XmStringComparecomparetwocompoundstrings.
Synopsis
BooleanXmStringCompare(string1,string2)
XmStringstring1
XmStringstring2

Inputs
string1

Specifiesacompoundstring.

string2

Specifiesanothercompoundstring.

Returns
TrueifthetwocompoundstringsaresemanticallyequivalentorFalseotherwise.
Description
XmStringCompare()comparesthecompoundstringsstring1andstring2semantically.Ifthestringsareequivalent,itreturnsTrueotherwiseit
returnsFalse.XmStringCompare()issimilartoXmStringByteCompare()butlessrestrictive.Twocompoundstringaresemanticallyequivalentif
theyhavethesametextcomponents,fontlistelementtags,directions,andseparators.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringCompare()isoneofanumberofroutinesthatallowanapplicationtomanipulatecompoundstringsasitwouldregularcharacterstrings.
SeeAlso
XmStringComponentCreate(1),XmStringByteCompare(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page380

XmStringComponentCreate
XmCompoundStrings
Name
XmStringComponentCreatecreateacompoundstringconsistingofasinglecomponent.
Synopsis
XmStringXmStringComponentCreate(type,length,value)
XmStringComponentTypetype
unsignedintlength
XtPointervalue

Inputs
type

Specifiesthetypeofcomponenttocreate.

length

Specifiesthelength,inbytes,ofvalue.

value

Specifiesthevalueofthecomponent.

Returns
Anewcompoundstring,orNULL.
Availability
Motif2.0andlater.
Description
XmStringComponentCreate()createsanewcompoundstringthatconsistsofacomponentofthetypespecifiedbytypeandcontainsthegivenvalue.
Usage
IftypeisnotavalidcomponenttypeoriflengthisgreaterthanzeroandvalueisNULL,thefunctionreturnsNULL.Otherwise,thefunctionreturnsan
allocatedcompoundstring.ItistheresponsibilityoftheprogrammertoreclaimtheutilizedspaceatanappropriatepointbycallingXmStringFree().
Structures
Thestringcomponenttypecanhaveoneofthefollowingvalues:
XmSTRING_COMPONENT_CHARSET
XmSTRING_COMPONENT_TEXT
XmSTRING_COMPONENT_LOCALE_TEXT
XmSTRING_COMPONENT_DIRECTION
XmSTRING_COMPONENT_SEPARATOR
XmSTRING_COMPONENT_TAB

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page381
XmSTRING_COMPONENT_END
XmSTRING_COMPONENT_UNKNOWN
XmSTRING_COMPONENT_FONTLIST_ELEMENT_TAG
XmSTRING_COMPONENT_WIDECHAR_TEXT
XmSTRING_COMPONENT_LAYOUT_PUSH
XmSTRING_COMPONENT_LAYOUT_POP
XmSTRING_COMPONENT_RENDITION_BEGIN
XmSTRING_COMPONENT_RENDITION_END

Example
Thefollowingcodeillustratesbasiccompoundstringcreationbyconcatenatingelementsfromanarrayofstrings:
XmStringcreate_xmstring_from_array(char**array,intcount,Booleantab)
{
XmStringtxt,sep
XmStringxms=(XmString)0
XmStringComponentTypesep_type
inti

if(tab){
sep_type=XmSTRING_COMPONENT_TAB
}
else{
sep_type=XmSTRING_COMPONENT_SEPARATOR
}

for(i=0i<counti++){
txt=XmStringComponentCreate(XmSTRING_COMPONENT_TEXT,
strlen(array[i]),(XtPointer)array[i])
xms=XmStringConcatAndFree(xms,txt)

if(i<count){
/*anotheritemafterthis...*/
sep=XmStringComponentCreate(sep_type,0,NULL)
xms=XmStringConcatAndFree(xms,sep)
}
}

/*callermustfreethis*/
returnxms
}

SeeAlso
XmStringConcatAndFree(1),XmStringFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page382

XmStringConcat
XmCompoundStrings
Name
XmStringConcatconcatenatetwocompoundstrings.
Synopsis
XmStringXmStringConcat(string1,string2)
XmStringstring1
XmStringstring2

Inputs
string1

Specifiesacompoundstring.

string2

Specifiesanothercompoundstring.

Returns
Anewcompoundstring.
Description
XmStringConcat()returnsthecompoundstringformedbyappendingstring2tostring1,leavingtheoriginalcompoundstringsunchanged.Storage
fortheresultisallocatedwithintheroutineandshouldbefreedbycallingXmStringFree().Managementoftheallocatedmemoryistheresponsibilityofthe
application.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringConcat()isoneofanumberofroutinesthatallowanapplicationtomanipulatecompoundstringsasitwouldregularcharacterstrings.
SeeAlso
XmStringComponentCreate(1),XmStringCopy(1),XmStringFree(1),XmStringNConcat(1),XmStringNCopy(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page383

XmStringConcatAndFree
XmCompoundStrings
Name
XmStringConcatAndFreeconcatenatetwocompoundstrings.
Synopsis
XmStringXmStringConcatAndFree(string1,string2)
XmStringstring1
XmStringstring2

Inputs
string1

Specifiesacompoundstring.

string2

Specifiesanothercompoundstring.

Returns
Anewcompoundstring.
Availability
Motif2.0andlater.
Description
XmStringConcatAndFree()issimilartoXmStringConcat()inthateachreturnsacompoundstringformedbyappendingstring2tostring1.
XmStringConcatAndFree()differsfromXmStringConcat()byfreeingtheoriginalcompoundstrings.Storagefortheresultisallocatedwithinthe
routineandshouldbefreedbycallingXmStringFree().Managementoftheallocatedmemoryistheresponsibilityoftheapplication.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
SeeAlso
XmStringComponentCreate(1),XmStringCopy(1),XmStringConcat(1),XmStringFree(1),XmStringNConcat
(1),XmStringNCopy(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page384

XmStringCopy
XmCompoundStrings
Name
XmStringCopycopyacompoundstring.
Synopsis
XmStringXmStringCopy(string)
XmStringstring

Inputs
string

Specifiesacompoundstring.

Returns
Anewcompoundstring.
Description
XmStringCopy()copiesthecompoundstringstringandreturnsthecopy,leavingtheoriginalcompoundstringunchanged.Storagefortheresultisallocated
bytheroutineandshouldbefreedbycallingXmStringFree().Managementoftheallocatedmemoryistheresponsibilityoftheapplication.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringCopy()isoneofanumberofroutinesthatallowanapplicationtomanipulatecompoundstringsasitwouldregularcharacterstrings.
SeeAlso
XmStringComponentCreate(1),XmStringConcat(1),XmStringFree(1),XmStringNConcat(1),XmStringNCopy
(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page385

XmStringCreate
XmCompoundStrings
Name
XmStringCreatecreateacompoundstring.
Synopsis
XmStringXmStringCreate(text,tag)
char*text
XmStringCharSettag

Inputs
text

Specifiesthetextcomponentofthecompoundstring.

tag

Specifiesthefontlistelementtag.

Returns
Anewcompoundstring.
Description
XmStringCreate()createsacompoundstringcontainingtwocomponents:atextcomponentcomposedoftextandthefontlistelementtagspecifiedby
tag.textmustbeaNULLterminatedstring.tagcanhavethevalueXmFONTLIST_DEFAULT_TAG,whichidentifiesalocaleencodedtextsegment.
StorageforthereturnedcompoundstringisallocatedbytheroutineandshouldbefreedbycallingXmStringFree().Managementoftheallocatedmemoryis
theresponsibilityoftheapplication.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringCreate()allowsyoutocreateacompoundstringcomposedofafontlistelementtagandatextcomponent.
InMotif1.1,compoundstringsusecharactersetidentifiersratherthanfontlistelementtags.Thecharactersetidentifierforacompoundstringcanhavethevalue
XmSTRING_DEFAULT_CHARSET,whichtakesthecharactersetfromthecurrentlanguageenvironment,butthisvaluemayberemovedfromfutureversionsof
Motif.
XmStringCreate()createsacompoundstringwithnospecifieddirection.ThedefaultdirectionmaybetakenfromtheXmNstringDirectionresource
oftheparentofthewidgetthatcontainsthecompoundstring.Ifyouneedastringwitha

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page386

directionotherthanthedefaultdirection,useXmStringDirectionCreate()tocreateadirectionstringandconcatenateitwiththecompoundstring
containingthetext.
Example
ThefollowingcodefragmentshowshowtocreatecompoundstringsusingXmStringCreate():
Widgettoplevel
XmStrings1,s2,s3,text,tmp
Stringstring1="Thisisastring",
string2="thatcontainsthree",
string3="separatefonts."

s1=XmStringCreate(string1,"tag1")
s2=XmStringCreate(string2,"tag2")
s3=XmStringCreate(string3,XmFONTLIST_DEFAULT_TAG)

tmp=XmStringConcat(s1,s2)
text=XmStringConcat(tmp,s3)

XtVaCreateManagedWidget("widget_name",xmLabelWidgetClass,toplevel,
XmNlabelString,text,NULL)

XmStringFree(s1)
XmStringFree(s2)
XmStringFree(s3)
XmStringFree(tmp)
XmStringFree(text)

SeeAlso
XmStringComponentCreate(1),XmStringCreateLocalized(1),XmStringCreateLtoR(1),XmStringCreateSimple
(1),XmStringDirectionCreate(1),XmStringGenerate(1),XmStringSeparatorCreate(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page387

XmStringCreateLocalized
XmCompoundStrings
Name
XmStringCreateLocalizedcreateacompoundstringinthecurrentlocale.
Synopsis
XmStringXmStringCreateLocalized(text)
Stringtext

Inputs
text

Specifiesthetextcomponentofthecompoundstring.

Returns
Anewcompoundstring.
Availability
Motif1.2andlater.
Description
XmStringCreateLocalized()createsacompoundstringcontainingtwocomponents:atextcomponentcomposedoftextandthefontlistelementtag
XmFONTLIST_DEFAULT_TAG,whichidentifiesalocaleencodedtextsegment.textmustbeaNULLterminatedstring.Storageforthereturnedcompound
stringisallocatedbytheroutineandshouldbefreedbycallingXmStringFree().Managementoftheallocatedmemoryistheresponsibilityoftheapplication.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringCreateLocalized()createstheidenticalcompoundstringthatwouldresultfromcallingXmStringCreatewith
XmFONTLIST_DEFAULT_TAGasthefontlistentrytag.
Example
ThefollowingprogramshowshowtocreateacompoundstringinthecurrentlocaleanduseitasthelabelforaPushButton:
#include<Xm/RowColumn.h>
#include<Xm/PushB.h>

Stringfallbacks[]={"*fontList:915=tag",NULL}

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page388
main(argc,argv)
intargc
char*argv[]
{
Widgettoplevel,rowcol
XtAppContextapp
XmStringtext

XtSetLanguageProc(NULL,(XtLanguageProc)NULL,NULL)

toplevel=XtVaAppInitialize(&app,argv[0],NULL,0,
&argc,argv,fallbacks,NULL)

text=XmStringCreateLocalized("Testing,testing...")

rowcol=XtVaCreateWidget("rowcol",xmRowColumnWidgetClass,toplevel,
NULL)

XtVaCreateManagedWidget("pb",xmPushButtonWidgetClass,rowcol,
XmNlabelString,text,
NULL)

XmStringFree(text)
XtManageChild(rowcol)
XtRealizeWidget(toplevel)
XtAppMainLoop(app)
}

SeeAlso
XmStringComponentCreate(1),XmStringCreate(1),XmStringFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page389

XmStringCreateLtoR
XmCompoundStrings
Name
XmStringCreateLtoRcreateacompoundstring.
Synopsis
XmStringXmStringCreateLtoR(text,tag)
char*text
XmStringCharSettag

Inputs
text

Specifiesthetextcomponentofthecompoundstring.

tag

Specifiesthefontlistelementtag.

Returns
Anewcompoundstring.
Availability
InMotif2.0andlater,thisfunctionisobsoleteandisreplacedbythefunctionXmStringGenerate().
Description
XmStringCreateLtoR()createsacompoundstringcontainingtwocomponents:atextcomponentcomposedoftextandthefontlistelementtagspecified
bytag.textmustbeaNULLterminatedstring.Inaddition,XmStringCreateLtoR()searchesfornewlinecharacters(\n)intext.Eachtimea
newlineisfound,thecharactersuptothenewlineareplacedintoacompoundstringsegmentfollowedbyaseparatorcomponent.Theroutinedoesnotadda
separatorcomponenttotheendofthecompoundstring.Thedefaultdirectionofthestringislefttorightandtheassumedencodingis8bitcharactersratherthan16
bitcharacters.
tagcanhavethevalueXmFONTLIST_DEFAULT_TAG,whichidentifiesalocaleencodedtextsegment.Storageforthereturnedcompoundstringisallocated
bytheroutineandshouldbefreedbycallingXmStringFree().Managementoftheallocatedmemoryistheresponsibilityoftheapplication.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,among

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page390

otheritems,tab,rendition,direction,andlocalecomponents.XmStringCreateLtoR()allowsyoutocreateacompoundstringcomposedofafontlistelement
tagandamultilinetextcomponent.
InMotif1.1,compoundstringsusecharactersetidentifiersratherthanfontlistelementtags.Thecharactersetidentifierforacompoundstringcanhavethevalue
XmSTRING_DEFAULT_CHARSET,whichtakesthecharactersetfromthecurrentlanguageenvironment,butthisvaluemayberemovedfromfutureversionsof
Motif.
SeeAlso
XmStringComponentCreate(1),XmStringCreate(1),XmStringFree(1).XmStringGenerate(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page391

XmStringCreateSimple
XmCompoundStrings
Name
XmStringCreateSimplecreateacompoundstringinthecurrentlanguageenvironment.
Synopsis
XmStringXmStringCreateSimple(text)
char*text

Inputs
text

Specifiesthetextcomponentofthecompoundstring.

Returns
Anewcompoundstring.
Availability
InMotif1.2andlater,XmStringCreateSimple()isobsolete.IthasbeensupersededbyXmStringCreateLocalized().
Description
XmStringCreateSimple()createsacompoundstringcontainingtwocomponents:atextcomponentcomposedoftextandacharactersetidentifier
derivedfromtheLANGenvironmentvariableorfromavendorspecificdefault,whichisusuallyISO88591.textmustbeaNULLterminatedstring.Storagefor
thereturnedcompoundstringisallocatedbytheroutineandshouldbefreedbycallingXmStringFree().Managementoftheallocatedmemoryisthe
responsibilityoftheapplication.
Usage
InMotif1.1,compoundstringsusecharactersetidentifiersratherthanfontlistelementtags.XmStringCreateSimple()isretainedforcompatibilitywith
Motif1.1andshouldnotbeusedinnewerapplications.
SeeAlso
XmStringComponentCreate(1),XmStringCreate(1),XmStringCreateLocalized(1),XmStringFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page392

XmStringDirectionCreate
XmCompoundStrings
Name
XmStringDirectionCreatecreateacompoundstringcontainingadirectioncomponent.
Synopsis
XmStringXmStringDirectionCreate(direction)
XmStringDirectiondirection

Inputs
direction Specifiesthevalueofthedirectioncomponent.Passeither
XmSTRING_DIRECTION_L_TO_R,
XmSTRING_DIRECTION_R_TO_L,or
XmSTRING_DIRECTION_DEFAULT.

Returns
Anewcompoundstring.
Description
XmStringDirectionCreate()createsacompoundstringcontainingasinglecomponent,whichisadirectioncomponentwiththespecifieddirection
value.IfthedirectionisXmSTRING_DIRECTION_DEFAULT,thewidgetwherethecompoundstringisrenderedcontrolsthedirection.Storageforthereturned
compoundstringisallocatedbytheroutineandshouldbefreedbycallingXmStringFree().Managementoftheallocatedmemoryistheresponsibilityofthe
application.
Usage
InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.InMotif1.2,a
compoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatextcomponent.
XmStringDirectionCreate()allowsyoutocreateastringdirectioncomponentthatcanbeconcatenatedwithacompoundstringcontainingother
components.
SeeAlso
XmStringComponentCreate(1),XmStringCreate(1),XmStringFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page393

XmStringDirectionToDirection
XmStringDirection
Name
XmStringDirectionToDirectionconvertastringdirectiontoadirection.
Synopsis
XmDirectionXmStringDirectionToDirection(string_direction)
XmStringDirectionstring_direction

Inputs
string_direction

Specifiesthestringdirectiontobeconverted.

Returns
Theconverteddirection.
Availability
Motif2.0andlater.
Description
XmStringDirectionToDirection()convertsanXmStringDirectionvaluespecifiedbystring_directionintoanXmDirection
value.
Usage
XmStringDirectionToDirectionconvertsbetweentheXmStringDirectionandXmDirectiondatatypes.Ifstring_directionis
XmSTRING_DIRECTION_LEFT_TO_RIGHT,thefunctionreturnsXmLEFT_TO_RIGHT.Ifstring_directionis
XmSTRING_DIRECTION_RIGHT_TO_LEFT,thefunctionreturnsXmRIGHT_TO_LEFT.Otherwise,thefunctionreturnsXmDIRECTION_DEFAULT.
SeeAlso
XmStringDirectionCreate(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page394

XmStringDraw
XmCompoundStrings
Name
XmStringDrawdrawacompoundstring.
Synopsis
voidXmStringDraw(display,window,fontlist,string,gc,x,y,
width,alignment,layout_direction,clip)
Display*display
Windowwindow
XmFontListfontlist
XmStringstring
GCgc
Positionx
Positiony
Dimensionwidth
unsignedcharalignment
unsignedcharlayout_direction
XRectangle*clip

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

window

Specifiesthewindowwherethestringisdrawn.

fontlist

Specifiesthefontlistfordrawingthestring.

string

Specifiesacompoundstring.

gc

Specifiesthegraphicscontextthatisusedtodrawthestring.

Specifiesthexcoordinateoftherectanglethatwillcontainthestring.

Specifiestheycoordinateoftherectanglethatwillcontainthestring.

width

Specifiesthewidthoftherectanglethatwillcontainthestring.

alignment Specifiesthealignmentofthestringintherectangle.Passoneofthe
followingvalues:XmALIGNMENT_BEGINNING,
XmALIGNMENT_CENTER,orXmALIGNMENT_END.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page395

layout_direction

Specifiesthelayoutdirectionofthestringsegments.Pass
XmSTRING_DIRECTION_L_TO_R,
XmSTRING_DIRECTION_R_TO_L,or
XmSTRING_DIRECTION_DEFAULT.

clip

Specifiesancliprectanglethatrestrictstheareawherethestringwillbe
drawn.

Availability
InMotif2.0andlater,XmFontListisobsoleteandisreplacedbyXmRenderTable,towhichitisanalias.
Description
XmStringDraw()drawsthecompoundstringspecifiedbystringbyrenderingtheforegroundpixelsforeachcharacter.Ifstringiscreatedwith
XmStringCreateSimple(),fontlistmustbeginwiththefontassociatedwiththecharactersetfromthecurrentlanguageenvironmentotherwisethe
resultisundefined.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringDraw()providesameansofrenderingacompoundstringthatisanalogoustotheXlibstringrenderingroutines.Motifwidgetsrendercompound
stringsautomatically,soyouonlyneedtoworryaboutrenderingthemyourselfifyouarewritingyourownwidget.
InMotif1.2orlater,ifasegmentofacompoundstringisassociatedwithafontlistentrythatisafontset,thefontmemberofthegcisleftinanundefinedstateby
theunderlyingcalltoXmbDrawString().Ifasegmentofthecompoundstringisnotassociatedwithafontset,thegcmustcontainavalidfontmember.Thegc
mustbecreatedusingXtAllocateGC()graphicscontextscreatedwithXtGetGC()arenotvalid.
SeeAlso
XmStringDrawImage(1),XmStringDrawUnderline(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page396

XmStringDrawImage
XmCompoundStrings
Name
XmStringDrawImagedrawacompoundstring.
Synopsis
voidXmStringDrawImage(display,window,fontlist,string,gc,x,y,
width,alignment,layout_direction,clip)
Display*display
Windowwindow
XmFontListfontlist
XmStringstring
GCgc
Positionx
Positiony
Dimensionwidth
unsignedcharalignment
unsignedcharlayout_direction
XRectangle*clip

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

window

Specifiesthewindowwherethestringisdrawn.

fontlist

Specifiesthefontlistfordrawingthestring.

string

Specifiesacompoundstring.

gc

Specifiesthegraphicscontextthatisusedtodrawthestring.

Specifiesthexcoordinateoftherectanglethatwillcontainthestring.

Specifiestheycoordinateoftherectanglethatwillcontainthestring.

width

Specifiesthewidthoftherectanglethatwillcontainthestring.

alignment Specifiesthealignmentofthestringintherectangle.Passoneofthe
followingvalues:XmALIGNMENT_BEGINNING,
XmALIGNMENT_CENTER,orXmALIGNMENT_END.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page397

layout_direction

Specifiesthelayoutdirectionofthestringsegments.Pass
XmSTRING_DIRECTION_L_TO_R,
XmSTRING_DIRECTION_R_TO_L,or
XmSTRING_DIRECTION_DEFAULT.

clip

Specifiesancliprectanglethatrestrictstheareawherethestringwillbe
drawn.

Availability
InMotif2.0andlater,XmFontListisobsoleteandisreplacedbyXmRenderTable,towhichitisanalias.
Description
XmStringDrawImage()drawsthecompoundstringspecifiedbystringbypaintingtheforegroundandbackgroundpixelsforeachcharacter.Ifstring
iscreatedwithXmStringCreateSimple(),fontlistmustbeginwiththefontassociatedwiththecharactersetfromthecurrentlanguageenvironment
otherwisetheresultisundefined.
Usage
InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.InMotif1.2,a
compoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatextcomponent.
XmStringDrawImage()providesameansofrenderingacompoundstringthatisanalogoustotheXlibstringrenderingroutines.Motifwidgetsrender
compoundstringsautomatically,soyouonlyneedtoworryaboutrenderingthemyourselfifyouarewritingyourownwidget.InMotif1.2orlater,ifasegmentofa
compoundstringisassociatedwithafontlistentrythatisafontset,thefontmemberofthegcisleftinanundefinedstatebytheunderlyingcallto
XmbDrawImageString().Ifasegmentofthecompoundstringisnotassociatedwithafontset,thegcmustcontainavalidfontmember.Thegcmustbe
createdusingXtAllocateGC()graphicscontextscreatedwithXtGetGC()arenotvalid.
SeeAlso
XmStringDraw(1),XmStringDrawUnderline(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page398

XmStringDrawUnderline
XmCompoundStrings
Name
XmStringDrawUnderlinedrawacompoundstringwithanunderlinedsubstring.
Synopsis
voidXmStringDrawUnderline(display,window,fontlist,string,gc,x,
y,width,alignment,layout_direction,clip,underline)
Display*display
Windowwindow
XmFontListfontlist
XmStringstring
GCgc
Positionx
Positiony
Dimensionwidth
unsignedcharalignment
unsignedcharlayout_direction
XRectangle*clip
XmStringunderline

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

window

Specifiesthewindowwherethestringisdrawn.

fontlist

Specifiesthefontlistfordrawingthestring.

string

Specifiesacompoundstring.

gc

Specifiesthegraphicscontextthatisusedtodrawthestring.

Specifiesthexcoordinateoftherectanglethatwillcontainthestring.

Specifiestheycoordinateoftherectanglethatwillcontainthestring.

width

Specifiesthewidthoftherectanglethatwillcontainthestring.

alignment Specifiesthealignmentofthestringintherectangle.Passoneofthe
followingvalues:XmALIGNMENT_BEGINNING,
XmALIGNMENT_CENTER,orXmALIGNMENT_END.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page399

layout_direction

Specifiesthelayoutdirectionofthestringsegments.Pass
XmSTRING_DIRECTION_L_TO_R,
XmSTRING_DIRECTION_R_TO_L,or
XmSTRING_DIRECTION_DEFAULT.

clip

Specifiesancliprectanglethatrestrictstheareawherethestringwillbe
drawn.

underline Specifiesthesubstringthatistobeunderlined.

Availability
InMotif2.0andlater,XmFontListisobsoleteandisreplacedbyXmRenderTable,towhichitisanalias.
Description
XmStringDrawUnderline()issimilartoXmStringDraw(),butitalsodrawsanunderlinebeneaththefirstmatchingsubstringunderlinethatis
containedwithinstring.IfstringiscreatedwithXmStringCreateSimple(),fontlistmustbeginwiththefontassociatedwiththecharacter
setfromthecurrentlanguageenvironmentotherwisetheresultisundefined.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringDrawUnderline()providesameansofrenderingacompoundstringandunderliningasubstringwithinit.Motifwidgetsrendercompoundstrings
automatically,soyouonlyneedtoworryaboutrenderingthemyourselfifyouarewritingyourownwidget.
InMotif1.2andlater,ifasegmentofacompoundstringisassociatedwithafontlistentrythatisafontset,thefontmemberofthegcisleftinanundefinedstateby
theunderlyingcalltoXmbDrawString().Ifasegmentofthecompoundstringisnotassociatedwithafontset,thegcmustcontainavalidfontmember.Thegc
mustbecreatedusingXtAllocateGC()graphicscontextscreatedwithXtGetGC()arenotvalid.
SeeAlso
XmStringDraw(1),XmStringDrawImage(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page400

XmStringEmpty
XmCompoundStrings
Name
XmStringEmptydeterminewhethertherearetextsegmentsinacompoundstring.
Synopsis
BooleanXmStringEmpty(string)
XmStringstring

Inputs
string

Specifiesacompoundstring.

Returns
TrueiftherearenotextsegmentsinthestringorFalseotherwise.
Description
XmStringEmpty()returnsTrueifnotextsegmentsexistinthespecifiedstringandFalseotherwise.IftheroutineispassedNULL,itreturnsTrue.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringEmpty()isoneofanumberofroutinesthatallowanapplicationtomanipulatecompoundstringsasitwouldregularcharacterstrings.
SeeAlso
XmStringLength(1),XmStringLineCount(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page401

XmStringExtent
XmCompoundStrings
Name
XmStringExtentgetthesmallestrectanglethatcontainsacompoundstring.
Synopsis
voidXmStringExtent(fontlist,string,width,height)
XmFontListfontlist
XmStringstring
Dimension*width
Dimension*height

Inputs
fontlist

Specifiesthefontlistforthecompoundstring.

string

Specifiesthecompoundstring.

Outputs
width

Returnsthewidthofthecontainingrectangle.

height

Returnstheheightofthecontainingrectangle.

Availability
InMotif2.0andlater,XmFontListisobsoleteandisreplacedbyXmRenderTable,towhichitisanalias.
Description
XmStringExtent()calculatesthesizeofthesmallestrectanglethatcanenclosethespecifiedstringandreturnsthewidthandheightoftherectanglein
pixels.IfstringiscreatedwithXmStringCreateSimple(),fontlistmustbeginwiththefontfromthecharactersetofthecurrentlanguage
environmentotherwise,theresultisundefined.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringExtent()providesinformationthatisusefulifyouneedtorenderacompoundstring.Motifwidgetsrendercompoundstringsautomatically,soyou
onlyneedtoworryaboutrenderingthemyourselfifyouarewritingyourownwidget.Theroutineisalsousefulifyouwanttogetthedimensionsofacompoundstring
renderedwithaparticularfont.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page402

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmStringBaseline(1),XmStringHeight(1),XmStringWidth(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page403

XmStringFree
XmCompoundStrings
Name
XmStringFreefreethememoryusedbyacompoundstring.
Synopsis
voidXmStringFree(string)
XmStringstring

Inputs
string

Specifiesthecompoundstring.

Description
XmStringFree()freesthememoryusedbythespecifiedcompoundstring.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.Allofthe
routinesthatreturnacompoundstringallocatememoryforthestring.AnapplicationisresponsibleforthisstorageXmStringFree()providesawaytofreethe
memory.
WhenXtGetValues()iscalledforaresourcethatcontainsanXmString,acopyofthecompoundstringisreturned.Theallocatedstorageisagainthe
responsibilityoftheapplicationandcanbefreedusingXmStringFree().
Example
ThefollowingcodefragmentshowstheuseofXmStringFree():
Widgettoplevel,rowcol,pb
XmStringstr
char*text

str=XmStringCreateLocalized("Testing,testing...")

rowcol=XtVaCreateWidget("rowcol",xmRowColumnWidgetClass,toplevel,
NULL)

pb=XtVaCreateManagedWidget("pb",xmPushButtonWidgetClass,rowcol,
XmNlabelString,str,
NULL)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page404
XmStringFree(str)
.
.
.
XtVaGetValues(pb,XmNlabelString,&str,NULL)
XmStringGetLtoR(str,XmFONTLIST_DEFAULT_TAG,&text)
printf("PushButton'slabelis%s\n",text)
XmStringFree(str)
XtFree(text)

SeeAlso
XmStringCreate(1),XmStringCreateLocalized(1),XmStringCreateLtoR(1),XmStringCreateSimple(1),
XmStringDirectionCreate(1),XmStringSegmentCreate(1),XmStringSeparatorCreate(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page405

XmStringFreeContext
XmCompoundStrings
Name
XmStringFreeContextfreeastringcontext.
Synopsis
voidXmStringFreeContext(context)
XmStringContextcontext

Inputs
context

Specifiesthestringcontextthatistobefreed.

Description
XmStringFreeContext()deallocatesthestringcontextstructurespecifiedbycontext.
Usage
TheXmStringtypeisopaque,soifanapplicationneedstoperformanyprocessingonacompoundstring,ithastousespecialfunctionstocyclethroughthestring.
TheseroutinesuseaXmStringContexttomaintainanarbitrarypositioninacompoundstring.XmStringFreeContext()isthelastofthestringcontext
routinesthatanapplicationshouldcallwhenprocessingacompoundstring,asitfreesthestringcontextdatastructure.Anapplicationbeginsbycalling
XmStringInitContext()tocreateastringcontextandthenmakesrepeatedcallstoeitherXmStringGetNextComponent()or
XmStringGetNextSegment()tocyclethroughthecompoundstring.
Themostcommonuseoftheseroutinesisinconvertingacompoundstringtoaregularcharacterstringwhenthecompoundstringusesmultiplefontlistelementtagsor
ithasarighttoleftorientation.
Example
Thefollowingcodefragmentshowshowtoconvertacompoundstringintoacharacterstring:
XmStringstr
XmStringContextcontext
char*text,buf[128],*p
XmStringCharSettag
XmStringDirectiondirection
Booleanseparator

XtVaGetValues(widget,XmNlabelString,&str,NULL)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page406
if(!XmStringInitContext(&context,str)){
XmStringFree(str)
XtWarning("Can'tconvertcompoundstring.")
return
}

/*pkeepsarunningpointerthrubufastextisread*/
p=buf

while(XmStringGetNextSegment(context,&text,
&tag,&direction,&separator)){
/*copytextintopandadvancetotheendofthestring*/
p+=(strlen(strcpy(p,text)))
if(separator==True){/*ifthere'saseparator...*/
*p++='\n'
*p=0/*addnewlineandnullterminate*/
}
XtFree(text)/*we'redonewiththetextfreeit*/
}
XmStringFreeContext(context)

XmStringFree(str)

printf("Compoundstring:\n%s\n",buf)

SeeAlso
XmStringInitContext(1),XmStringGetNextSegment(1),XmStringGetNextComponent(1),
XmStringPeekNextComponent(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page407

XmStringGenerate
XmCompoundStrings
Name
XmStringGenerategenerateacompoundstring.
Synopsis
XmStringXmStringGenerate(text,tag,type,rendition)
XtPointertext
XmStringTagtag
XmTextTypetype
XmStringTagrendition

Inputs
text

Specifiesthedataformingthevalueofthecompoundstring.

tag

Specifiesthetagusedincreatingthecompoundstring.

type

Specifiesthetypeoftext.

rendition

Specifiesarenditiontag.

Returns
Anewcompoundstring.
Availability
Motif2.0andlater.
Description
XmStringGenerate()isaconveniencefunctionthatinvokesXmStringParseText()usingadefaultparsetableinordertoconverttextintoa
compoundstring.ThedefaultparsetablemapstabcharacterstoXmSTRING_COMPONENT_TABandnewlinecharactersto
XmSTRING_COMPONENT_SEPARATORcomponentsofthecompoundstring.Ifarenditiontagisspecified,theresultingcompoundstringisplacedwithin
matchingcomponentsoftypeXmSTRING_RENDITION_BEGINandXmSTRING_RENDITION_ENDthatcontaintherendition.Thetypeoftheinput
textisspecifiedbytypeandisoneofXmCHARSET_TEXT,XmWIDECHAR_TEXT,orXmMULTIBYTE_TEXT.typealsospecifiesthetypeofthe
tagwhichisusedincreatingthecompoundstring.IftagisNULLandtheinputtextisoftypeXmCHARSET_TEXT,thecompoundstringiscreatedwiththetag
settoXmFONTLIST_DEFAULT_TAG.IftagisNULLandtheinputtextisoftypeXmWIDECHAR_TEXTorXmMULTIBYTE_TEXT,thetagusedis
constructedfromthevalueof_MOTIF_DEFAULT_LOCALE.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page408

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
ThefunctionreturnsallocatedstorageanditistheresponsibilityoftheprogrammertoreclaimthespacebycallingXmStringFree()atanappropriatepoint.
InMotif2.0andlater,incommonwithotherobjects,thecompoundstringismanipulatedasareferencecounteddatastructure.XmStringfunctionspriortoMotif
2.0handleASN.1stringsandthedatastructuresareonlyusedinternally.
Example
ThefollowingcodeconvertsdatatakenfromaTextwidgetintoacompoundstring:
XmStringconvert_text(Widgettext)
{
/*ignoringwidechartextvalues*/
char*value=XmTextGetString(text)
XmStringxms=(XmString)0

if(value){
xms=XmStringGenerate((XtPointer)value,
XmFONTLIST_DEFAULT_TAG,
XmCHARSET_TEXT,
NULL)

XtFree(value)
}

/*callermustfreethis*/
returnxms
}

SeeAlso
XmStringFree(1),XmStringPutRendition(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page409

XmStringGetLtoR
XmCompoundStrings
Name
XmStringGetLtoRgetatextsegmentfromacompoundstring.
Synopsis
BooleanXmStringGetLtoR(string,tag,text)
XmStringstring
XmStringCharSettag
char**text

Inputs
string

Specifiesthecompoundstring.

tag

Specifiesthefontlistelementtag.

Outputs
text

ReturnstheNULLterminatedcharacterstring.

Returns
TrueifthereisamatchingtextsegmentorFalseotherwise.
Availability
InMotif2.0andlater,thisfunctionisobsolete.IthasbeenreplacedbyXmStringUnparse().
Description
XmStringGetLtoR()looksforatextsegmentinstringthatmatchesthefontlistelementtagspecifiedbytag.tagcanhavethevalue
XmFONTLIST_DEFAULT_TAG,whichidentifiesalocaleencodedtextsegment.TheroutinereturnsTrueifatextsegmentisfound.textreturnsapointerto
theNULLterminatedcharacterstringthatcontainsthetextfromthesegment.Storageforthereturnedcharacterstringisallocatedbytheroutineandshouldbefreed
bycallingXtFree().Managementoftheallocatedmemoryistheresponsibilityoftheapplication.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringGetLtoR()allowsyoutoretrieveacharacterstringfromacompoundstring,sothatyoucanusethestringwiththestandardCstringmanipulation
functions.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page410

InMotif1.1,compoundstringsusecharactersetidentifiersratherthanfontlistelementtags.Thecharactersetidentifierforacompoundstringcanhavethevalue
XmSTRING_DEFAULT_CHARSET,whichtakesthecharactersetfromthecurrentlanguageenvironment,butthisvaluemayberemovedfromfutureversionsof
Motif.
XmStringGetLtoR()getsthefirsttextsegmentfromthecompoundstringthatisassociatedwiththespecifiedtag.Ifthestringcontainsmultiplefontlist
elementtags,youmustcyclethroughthecompoundstringandretrieveeachsegmentindividuallyinordertoretrievetheentirestring.Theroutineonlygetsstringswith
alefttorightorientation.
SeeAlso
XmStringCreate(1),XmStringCreateLtoR(1),XmStringGetNextSegment(1),XmStringUnparse(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page411

XmStringGetNextComponent
XmCompoundStrings
Name
XmStringGetNextComponentretrievesinformationaboutthenextcompoundstringcomponent.
Synopsis
XmStringComponentTypeXmStringGetNextComponent(context,text,tag,
direction,unknown_tag,unknown_length,unknown_value)
XmStringContextcontext
char**text
XmStringCharSet*tag
XmStringDirection*direction
XmStringComponentType*unknown_tag
unsignedshort*unknown_length
unsignedchar**unknown_value

Inputs
context

Specifiesthestringcontextforthecompoundstring.

Outputs
text

ReturnstheNULLterminatedstringforatext
component.

tag

Returnsthefontlistelementtagforatagcomponent.

direction

Returnsthestringdirectionforadirectioncomponent.

unknown_tag

Returnsthetagofanunknowncomponent.

unknown_length

Returnsthelengthofanunknowncomponent.

unknown_value

Returnsthevalueofanunknowncomponent.

Returns
Thetypeofthecompoundstringcomponent.Thetypeisoneofthevaluesdescribedbelow.
Description
InMotif2.0andlater,XmStringGetNextComponent()isobsolete.IthasbeenreplacedbyXmStringGetNextTriple().
Description
XmStringGetNextComponent()readsthenextcomponentinthecompoundstringspecifiedbycontextandreturnsthetypeofcomponentfound.The
return

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page412

valueindicateswhich,ifany,oftheoutputparametersarevalid.Storageforthereturnedvaluesisallocatedbytheroutineandmustbefreedbytheapplicationusing
XtFree().
ForthetypeXmSTRING_COMPONENT_FONTLIST_ELEMENT_TAG,thefontlistelementtagisreturnedintag.InMotif2.0andlater,thetype
XmSTRING_COMPONENT_CHARSETisobsoleteandisretainedonlyforcompatibilitywithMotif1.2.Thetypeindicatesthatthecharactersetidentifieris
returnedintag.XmSTRING_COMPONENT_FONTLIST_ELEMENT_TAGreplacesXmSTRING_COMPONENT_CHARSET.
ForthestringcomponenttypesXmSTRING_COMPONENT_TEXTandXmSTRING_COMPONENT_LOCALE_TEXT,thetextstringisreturnedintext.For
XmSTRING_COMPONENT_DIRECTION,thedirectionisreturnedindirection.Onlyoneoftag,text,anddirectioncanbevalidatanyone
time.
ThetypeXmSTRING_COMPONENT_SEPARATORindicatesthatthenextcomponentisaseparator,whileXmSTRING_COMPONENT_ENDspecifiestheend
ofthecompoundstring.FortypeXmSTRING_COMPONENT_UNKNOWN,thetag,length,andvalueoftheunknowncomponentarereturnedinthecorresponding
arguments.
Usage
TheXmStringtypeisopaque,soifanapplicationneedstoperformanyprocessingonacompoundstring,ithastousespecialfunctionstocyclethroughthestring.
TheseroutinesuseaXmStringContexttomaintainanarbitrarypositioninacompoundstring.XmStringInitContext()iscalledfirsttocreatethe
stringcontext.XmStringGetNextComponent()cyclesthroughthecomponentsinthecompoundstring.Whenanapplicationisdoneprocessingthestring,it
shouldcallXmStringFreeContext()withthesamecontexttofreetheallocateddata.
Structures
AXmStringComponentTypecanhaveoneofthefollowingvalues:
XmSTRING_COMPONENT_CHARSET
XmSTRING_COMPONENT_TEXT
XmSTRING_COMPONENT_LOCALE_TEXT
XmSTRING_COMPONENT_DIRECTION
XmSTRING_COMPONENT_SEPARATOR
XmSTRING_COMPONENT_END
XmSTRING_COMPONENT_UNKNOWN

InMotif2.0andlater,thefollowingadditionaltypesaredefined:
XmSTRING_COMPONENT_FONTLIST_ELEMENT_TAG
XmSTRING_COMPONENT_WIDECHAR_TEXT

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page413
XmSTRING_COMPONENT_LAYOUT_PUSH
XmSTRING_COMPONENT_LAYOUT_POP
XmSTRING_COMPONENT_RENDITION_BEGIN
XmSTRING_COMPONENT_RENDITION_END

SeeAlso
XmStringFreeContext(1),XmStringGetNextTriple(1),XmStringGetNextSegment(1),XmStringInitContext
(1),XmStringPeekNextComponent(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page414

XmStringGetNextSegment
XmCompoundStrings
Name
XmStringGetNextSegmentretrievesinformationaboutthenextcompoundstringsegment.
Synopsis
BooleanXmStringGetNextSegment(context,text,tag,direction,
separator)
XmStringContextcontext
char**text
XmStringCharSet*charset
XmStringDirection*direction
Boolean*separator

Inputs
context

Specifiesthestringcontextforthecompoundstring.

Outputs
text

ReturnstheNULLterminatedstringforthesegment.

tag

Returnsthefontlistelementtagforthesegment.

direction

Returnsthestringdirectionforthesegment.

separator

Returnswhetherornotthenextcomponentisaseparator.

Returns
TrueifavalidsegmentislocatedorFalseotherwise.
Availability
InMotif2.0andlater,thisfunctionisobsolete.IthasbeenreplacedbyXmStringGetNextTriple().
Description
XmStringGetNextSegment()retrievesthetextstring,fontlistelementtag,anddirectionforthenextsegmentofthecompoundstringspecifiedby
context.TheroutinereturnsTrueifavalidsegmentisretrievedotherwise,itreturnsFalse.Storageforthereturnedtextisallocatedbytheroutineand
mustbefreedbytheapplicationusingXtFree().
Usage
TheXmStringtypeisopaque,soifanapplicationneedstoperformanyprocessingonacompoundstring,ithastousespecialfunctionstocyclethroughthestring.
These

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page415

routinesuseaXmStringContexttomaintainanarbitrarypositioninacompoundstring.XmStringInitContext()iscalledfirsttocreatethestring
context.XmStringGetNextSegment()cyclesthroughthesegmentsinthecompoundstring.Theseparatorbooleancanbeusedtodeterminewhether
ornotthenextcomponentinthecompoundstringisaseparator.Whenanapplicationisdoneprocessingthestring,itshouldcallXmStringFreeContext()
withthesamecontexttofreetheallocateddata.
Themostcommonuseoftheseroutinesisinconvertingacompoundstringtoaregularcharacterstringwhenthecompoundstringusesmultiplefontlistelementtagsor
ithasarighttoleftorientation.
SeeAlso
XmStringFreeContext(1),XmStringGetLtoR(1),XmStringGetNextComponent(1),XmStringGetNextTriple(1),
XmStringInitContext(1),XmStringPeekNextComponent(1),XmStringPeekNextTriple(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page416

XmStringGetNextTriple
XmCompoundStrings
Name
XmStringGetNextTripleretrieveinformationaboutthenextcomponent.
Synopsis
XmStringComponentTypeXmStringGetNextTriple(context,length,value)
XmStringContextcontext
unsignedint*length
XtPointer*value

Inputs
context

Specifiesthestringcontextforthecompoundstring.

Outputs
length

Returnsthelengthofthevalueofthecomponent.

value

Returnsthevalueofthecomponent.

Returns
Thetypeofthecomponent.
Availability
Motif2.0andlater.
Description
XmStringGetNextTriple()isaconveniencefunctionthatreturnsthetype,length,andvalueofthenextcomponentwithinthecompoundstring
associatedwithcontext.Thecontextisanopaquestructureusedforwalkingalongcompoundstringsonecomponentatatime,andisinitializedthroughacall
toXmStringInitContext().
Usage
IfeitherofvalueorlengthareNULLpointers,thefunctionimmediatelyreturnsXmSTRING_COMPONENT_ENDwithoutfetchingthenextstringsegment.
Otherwise,valueisinitiallysettopointtoNULL,lengthisresettozero,andthenextsegmentisprocessed.Thefunctionallocatesmemoryforthereturned
value,whichshouldbereclaimedatanappropriatepointbycallingXtFree().
Example
Thefollowingcodefragmentshowshowtoconvertacompoundstringintoacharacterstring:

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page417
XmStringstr
XmStringContextcontext
char*text,buf[128],*p
XmStringComponentTypetype
unsignedintlen

/*FetchtheCompoundStringfromsomewhere*/
XtVaGetValues(widget,XmNlabelString,&str,NULL)

if(!XmStringInitContext(&context,str)){
XmStringFree(str)
XtWarning("Can'tconvertcompoundstring.")
return
}

/*pkeepsarunningpointerthroughbufastextisread*/
p=buf

/*Ignoringlocaleorwidechartextforsimplicity*/
while((type=XmStringGetNextTriple(context,
&len,&text))!=XmSTRING_COMPONENT_END){
switch(type)
{
caseXmSTRING_COMPONENT_TAB:
*p++='\t'
break
caseXmSTRING_COMPONENT_SEPARATOR:
*p++='\n'
*p='\0'
break
caseXmSTRING_COMPONENT_TEXT:
(void)strcpy(p,text)
p+=len
break
}
XtFree(text)
}

XmStringFreeContext(context)
XmStringFree(str)

printf("Compoundstring:\n%s\n",buf)

Structures
AnXmStringComponentTypecanhaveoneofthefollowingvalues:
XmSTRING_COMPONENT_CHARSET
XmSTRING_COMPONENT_TEXT
XmSTRING_COMPONENT_LOCALE_TEXT
XmSTRING_COMPONENT_DIRECTION

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page418
XmSTRING_COMPONENT_SEPARATOR
XmSTRING_COMPONENT_END
XmSTRING_COMPONENT_UNKNOWN
XmSTRING_COMPONENT_FONTLIST_ELEMENT_TAG
XmSTRING_COMPONENT_WIDECHAR_TEXT
XmSTRING_COMPONENT_LAYOUT_PUSH
XmSTRING_COMPONENT_LAYOUT_POP
XmSTRING_COMPONENT_RENDITION_BEGIN
XmSTRING_COMPONENT_RENDITION_END

SeeAlso
XmStringFreeContext(1),XmStringGetNextComponent(1),XmStringGetNextSegment(1),XmStringInitContext
(1),XmStringPeekNextComponent(1),XmStringPeekNextTriple(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page419

XmStringHasSubstring
XmCompoundStrings
Name
XmStringHasSubstringdeterminewhetheracompoundstringcontainsasubstring.
Synopsis
BooleanXmStringHasSubstring(string,substring)
XmStringstring
XmStringsubstring

Inputs
string

Specifiesthecompoundstring.

substring

Specifiesthesubstring.

Returns
TrueifstringcontainssubstringorFalseotherwise.
Description
XmStringHasSubstring()determineswhetherthecompoundstringsubstringiscontainedwithinanysinglesegmentofthecompoundstring
string.substringmusthaveonlyasinglesegment.TheroutinereturnsTrueifstringcontainssubstringandFalseotherwise.
IftwocompoundstringsarecreatedwithXmStringCreateLocalized()inthesamelanguageenvironmentandtheysatisfytheabovecondition,
XmStringHasSubstring()returnsTrue.IftwostringsarecreatedwithXmStringCreate()usingthesamecharactersetandtheysatisfythe
condition,theroutinealsoreturnsTrue.WhencomparingacompoundstringcreatedbyXmStringCreate()withacompoundstringcreatedby
XmStringCreateSimple()theresultisundefined.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringHasSubstring()isoneofanumberofroutinesthatallowanapplicationtomanipulatecompoundstringsasitwouldregularcharacterstrings.
SeeAlso
XmStringEmpty(1),XmStringLength(1),XmStringLineCount(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page420

XmStringHeight
XmCompoundStrings
Name
XmStringHeightgetthelineheightofacompoundstring.
Synopsis
DimensionXmStringHeight(fontlist,string)
XmFontListfontlist
XmStringstring

Inputs
fontlist

Specifiesthefontlistforthecompoundstring.

string

Specifiesthecompoundstring.

Returns
Theheightofthecompoundstring.
Availability
InMotif2.0andlater,XmFontListisobsoleteandisreplacedbyXmRenderTable,towhichitisanalias.
Description
XmStringHeight()returnstheheight,inpixels,ofthespecifiedcompoundstring.Ifstringcontainsmultiplelines,whereaseparatorcomponent
delimitseachline,thetotalheightofallofthelinesisreturned.IfstringiscreatedwithXmStringCreateSimple(),fontlistmustbeginwiththe
fontfromthecharactersetofthecurrentlanguageenvironmentotherwisetheresultisundefined.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringHeight()providesinformationthatisusefulifyouneedtorenderacompoundstring.Motifwidgetsrendercompoundstringsautomatically,soyou
onlyneedtoworryaboutrenderingthemyourselfifyouarewritingyourownwidget.Theroutineisalsousefulifyouwanttogetthedimensionsofacompoundstring
renderedwithaparticularfont.
SeeAlso
XmStringBaseline(1),XmStringExtent(1),XmStringWidth(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page421

XmStringInitContext
XmCompoundStrings
Name
XmStringInitContextcreateastringcontext.
Synopsis
BooleanXmStringInitContext(context,string)
XmStringContext*context
XmStringstring

Inputs
string

Specifiesthecompoundstring.

Outputs
context

Returnstheallocatedstringcontextstructure.

Returns
TrueifthestringcontextisallocatedorFalseotherwise.
Description
XmStringInitContext()createsastringcontextforthespecifiedcompoundstring.Thisstringcontextallowsanapplicationtoaccessthecontents
ofacompoundstring.
Usage
TheXmStringtypeisopaque,soifanapplicationneedstoperformanyprocessingonacompoundstring,ithastousespecialfunctionstocyclethroughthestring.
TheseroutinesuseaXmStringContexttomaintainanarbitrarypositioninacompoundstring.XmStringInitContext()isthefirstofthethreestringcontext
routinesthatanapplicationshouldcallwhenprocessingacompoundstring,asitcreatesthestringcontextdatastructure.Thecontextispassedto
XmStringGetNextTriple()tocyclethroughthecompoundstring.Whenanapplicationisdoneprocessingthestring,itshouldcall
XmStringFreeContext()withthesamecontexttofreetheallocateddata.
Themostcommonuseoftheseroutinesisinconvertingacompoundstringtoaregularcharacterstringwhenthecompoundstringusesmultiplefontlistelementtagsor
ithasarighttoleftorientation.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page422

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
Thefollowingcodefragmentshowshowtoconvertacompoundstringintoacharacterstring:
XmStringstr
XmStringContextcontext
char*text,buf[128],*p
XmStringComponentTypetype
unsignedintlen

/*FetchtheCompoundStringfromsomewhere*/
XtVaGetValues(widget,XmNlabelString,&str,NULL)

if(!XmStringInitContext(&context,str)){
XmStringFree(str)
XtWarning("Can'tconvertcompoundstring.")
return
}

/*pkeepsarunningpointerthroughbufastextisread*/
p=buf

/*Ignoringlocaleorwidechartextforsimplicity*/
while((type=XmStringGetNextTriple(context,
&len,&text))!=XmSTRING_COMPONENT_END){
switch(type)
{
caseXmSTRING_COMPONENT_TAB:
*p++='\t'
break
caseXmSTRING_COMPONENT_SEPARATOR:
*p++='\n'
*p='\0'
break
caseXmSTRING_COMPONENT_TEXT:
(void)strcpy(p,text)
p+=len
break
}
XtFree(text)
}

XmStringFreeContext(context)
XmStringFree(str)

printf("Compoundstring:\n%s\n",buf)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page423

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmStringFreeContext(1),XmStringGetNextComponent(1),XmStringGetNextTriple(1),
XmStringGetNextSegment(1),XmStringPeekNextComponent(1),XmStringPeekNextTriple(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page424

XmStringIsVoid
XmCompoundStrings
Name
XmStringIsVoiddeterminewhethertherearevalidsegmentsinacompoundstring.
Synopsis
BooleanXmStringIsVoid(string)
XmStringstring

Inputs
string

Specifiesacompoundstring.

Returns
TrueiftherearenosegmentsinthestringorFalseotherwise.
Availability
Motif2.0andlater.
Description
XmStringIsVoid()checkstoseewhetherthereanytext,tab,orseparatorsegmentswithinthespecifiedstring.IftheroutineispassedNULL,itreturns
True.Ifthestringcontainstext,tab,orseparatorcomponents,itreturnsFalse.Otherwise,itreturnsTrue.
Usage
InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.InMotif1.2,a
compoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatextcomponent.
SeeAlso
XmStringEmpty(1),XmStringLength(1),XmStringLineCount(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page425

XmStringLength
XmCompoundStrings
Name
XmStringLengthgetthelengthofacompoundstring.
Synopsis
intXmStringLength(string)
XmStringstring

Inputs
string

Specifiesthecompoundstring.

Returns
Thelengthofthecompoundstring.
Availability
InMotif2.0andlater,thisfunctionisobsolete.IthasbeenreplacedbyXmStringByteStreamLength().
Description
XmStringLength()returnsthelength,inbytes,ofthespecifiedcompoundstring.Thecalculationincludesthelengthofalltags,directionindicators,and
separators.Theroutinereturns0(zero)ifthestructureofstringisinvalid.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringLength()isoneofanumberofroutinesthatallowanapplicationtomanipulatecompoundstringsasitwouldregularcharacterstrings.However,this
routinecannotbeusedtogetthelengthofthetextrepresentedbythecompoundstringitisnotthesameasstrlen().
SeeAlso
XmStringByteStreamLength(1),XmStringEmpty(1),XmStringLineCount(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page426

XmStringLineCount
XmCompoundStrings
Name
XmStringLineCountgetthenumberoflinesinacompoundstring.
Synopsis
intXmStringLineCount(string)
XmStringstring

Inputs
string

Specifiesthecompoundstring.

Returns
Thenumberoflinesinthecompoundstring.
Description
XmStringLineCount()returnsthenumberoflinesinthespecifiedcompoundstring.Thelinecountisdeterminedbyadding1tothenumberofseparators
inthestring.
Usage
InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.InMotif1.2andlater,
acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatextcomponent.
XmStringLineCount()providesinformationthatisusefulinlayingoutcomponentsthatdisplaycompoundstrings.
Example
Thefollowingroutineshowshowtoreadthecontentsofafileintoabufferandthenconvertthebufferintoacompoundstring.Theroutinealsoreturnsthenumberof
linesinthecompoundstring:
XmStringConvertFileToXmString(Component,&lines)
char*Component
int*lines
{
structstatstatb
intfd,len,lines
char*text
XmStringstr

*lines=0

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page427
if(!(fd=open(Component,O_RDONLY))){
XtWarning("internalerrorcan'topenfile")
returnNULL
}
if(fstat(fd,&statb)==1||
!(text=XtMalloc((len=statb.st_size)+1))){
XtWarning("internalerrorcan'tshowtext")
close(fd)
returnNULL
}
(void)read(fd,text,len)
text[len]=0

str=XmStringCreateLtoR(text,XmFONTLIST_DEFAULT_TAG)

XtFree(text)
close(fd)

*lines=XmStringLineCount(str)
returnstr
}

SeeAlso
XmStringEmpty(1),XmStringLength(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page428

XmStringNConcat
XmCompoundStrings
Name
XmStringNConcatconcatenateaspecifiedportionofacompoundstringtoanothercompoundstring.
Synopsis
XmStringXmStringNConcat(string1,string2,num_bytes)
XmStringstring1
XmStringstring2
intnum_bytes

Inputs
string1

Specifiesacompoundstring.

string2

Specifiesthecompoundstringthatisappended.

num_bytes

Specifiesthenumberofbytesofstring2thatareappended.

Returns
Anewcompoundstring.
Availability
InMotif2.0andlater,thisfunctionisobsoleteandisonlymaintainedforbackwardscompatibility.
Description
XmStringNConcat()returnsthecompoundstringformedbyappendingbytesfromstring2totheendofstring1,leavingtheoriginalcompoundstrings
unchanged.num_bytesofstringareappended,whichincludestags,directionalindicators,andseparators.Storagefortheresultisallocatedwithinthisroutine
andshouldbefreedbycallingXmStringFree().Managementoftheallocatedmemoryistheresponsibilityoftheapplication.
Ifnum_bytesislessthanthelengthofstring2,theresultingstringcouldbeinvalid.Inthiscase,XmStringNConcat()appendsasmanybytesas
possible,uptoamaximumofnum_bytes,toensurethecreationofavalidstring.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringNConcat()

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page429

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

isoneofanumberofroutinesthatallowanapplicationtomanipulatecompoundstringsasitwouldregularcharacterstrings.
SeeAlso
XmStringConcat(1),XmStringCopy(1),XmStringFree(1),XmStringNCopy(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page430

XmStringNCopy
XmCompoundStrings
Name
XmStringNCopycopyaspecifiedportionofacompoundstring.
Synopsis
XmStringXmStringNCopy(string,num_bytes)
XmStringstring
intnum_bytes

Inputs
string

Specifiesacompoundstring.

num_bytes

Specifiesthenumberofbytesofstringthatarecopied.

Returns
Anewcompoundstring.
Availability
InMotif2.0andlater,thisfunctionisobsoleteandisonlymaintainedforbackwardscompatibility.
Description
XmStringNCopy()copiesnum_bytesbytesfromthecompoundstringstringandreturnstheresultingcopy,leavingtheoriginalstringunchanged.The
numberofbytescopiedincludestags,directionalindicators,andseparators.Storagefortheresultisallocatedwithinthisroutineandshouldbefreedbycalling
XmStringFree().Managementoftheallocatedmemoryistheresponsibilityoftheapplication.
Ifnum_bytesislessthanthelengthofstring,theresultingstringcouldbeinvalid.Inthiscase,XmStringNCopy()copiesasmanybytesaspossible,up
toamaximumofnum_bytestoensurethecreationofavalidstring.
Usage
InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.InMotif1.2,a
compoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatextcomponent.
XmStringNCopy()isoneofanumberofroutinesthatallowanapplicationtomanipulatecompoundstringsasitwouldregularcharacterstrings.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page431

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmStringConcat(1),XmStringCopy(1),XmStringFree(1),XmStringNConcat(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page432

XmStringParseText
XmCompoundStrings
Name
XmStringParseTextconvertastringtoacompoundstring.
Synopsis
XmStringXmStringParseText(text,text_end,tag,type,parse_table,
parse_count,client_data)
XtPointertext
XtPointer*text_end
XmStringTagtag
XmTextTypetype
XmParseTableparse_table
Cardinalparse_count
XtPointerclient_data

Inputs
text

Specifiesastringtobeconverted.

text_end

Specifiesapointerintotextwhereparsingistofinish.

tag

Specifiesthetagtobeusedincreatingthecompoundstring.

type

Specifiesthetypeofthetextandthetag.

parse_table Specifiesatableusedformatchingcharactersintheinputtext.
parse_count Specifiesthenumberofitemsintheparse_table.
client_data Specifiesapplicationdatatopasstoanyparseprocedureswithinthe
parse_table.

Outputs
text_end

Returnsalocationwithinthetextwhereparsingfinished.

Returns
Theconvertedcompoundstring.
Availability
Motif2.0andlater.
Description
XmStringParseText()convertsthestringspecifiedbytextintoacompoundstring.Aparse_tablecanbespecifiedthatconsistsofasetof
mappingstocontroltheconversionprocess.Thecontentsofthestringtobeconvertedcanbeinoneofanumberofformats:simplecharacters,multibyte,orwide
characters.Thetypeparameterspecifiesthetypeoftheinputtext,andisalsousedtointerpretthetagwhichis

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page433

usedincreatingtextcomponentswithinthereturnedcompoundstring.text_endisbothaninputandanoutputparameter:asaninputparameter,itspecifiesa
locationwithintextwhereparsingistoterminateasanoutputparameter,itpointstoalocationwithintextwhereparsingactuallyfinished.SupplyingNULLfor
text_endisinterpretedtomeanthatparsingshouldstopattheoccurrenceofanullbyte.
Usage
IftypeisXmCHARSET_TEXT,theinputtextisassumedtoconsistofasimplearrayofcharacters,andthetagisinterpretedasthenameofacharsettouse
inconstructingthereturnedcompoundstring.IftagisNULL,adefaultcharsetusingXmFONTLIST_DEFAULT_TAGisused.
IfthetypeisXmMULTIBYTE_TEXTorXmWIDECHAR_TEXT,theinputtextisassumedtobeinmultibyteorwidechartextformatrespectively,andthe
tagisinterpretedasalocalespecifier.ThetagshouldeitherbespecifiedasNULLor_MOTIF_DEFAULT_LOCALE:ifNULL,alocalecomponentwitha
valueof_MOTIF_DEFAULT_LOCALEiscreatedinanycase.
Aparsetablecanbespecifiedforcontrollingtheconversionprocess.AparsetableconsistsofasetofXmParseMappingobjects,whichhavematchpattern,
substitutionpattern,andparseprocedurecomponents.Theheadoftheinputstreamiscomparedagainstelementswithintheparsetable.Ifthereisacorrespondence
betweentheinputandaparsemappingmatchpattern,theparsemappingobjectisusedtoconstructtheoutputcompoundstringatthatpointintheconversion,either
bydirectlyinsertingthesubstitutionpatternorbyinvokingtheparseprocedureofthemappingobject.Theparsemappingspecifieshowtheinputpointerisadvanced,
andtheprocessisrepeated,comparingtheheadoftheinputagainsttheparsetable.Attheendoftheconversion,thetext_endparameterissettopointtothe
locationwithintheinputtextwhereparsingactuallyterminated.Dependinguponthewayinwhichtheparsetableinteractswiththeinputtext,thereturned
text_endmaynotbethesamelocationthattheprogrammerspecifiedifmoreorlessoftheinputtextisconsumed.
Animplicitautomaticconversiontakesplacewherethereisnomatchingparsemappingobjectfortheheadoftheinput.Inotherwords,itisnotnecessarytoprovide
aparsetabletoconverteverything:parsetablesareonlyrequiredwherespecificinputsneedtobehandledspecially.XmStringParseText()usesaninternal
parsemappingwhichhandleschangesinstringdirectionintheabsenceofasuppliedmappingforthetask.Aparsemappinghandlesstringdirectionchangesifthe
XmNpatternresourceoftheobjectisequaltoXmDIRECTION_CHANGE.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page434

XmStringParseText()allocatesmemoryforthereturnedcompoundstring.Itistheresponsibilityoftheprogrammertoreclaimthespacethroughacallto
XmStringFree()atanappropriatepoint.
Example
Thefollowingspecimencodeconvertsaninputstringcontainingtabandnewlinecharactersintoacompoundstring:
XmParseTableparse_table=(XmParseTable)XtCalloc(2,
sizeof(XmParseMapping))
XmStringtmp
XmStringoutput
Argav[4]
Cardinalac

/*map\ttoatabcomponent*/
tmp=XmStringComponentCreate(XmSTRING_COMPONENT_TAB,0,NULL)
ac=0
XtSetArg(av[ac],XmNincludeStatus,XmINSERT)ac++
XtSetArg(av[ac],XmNsubstitute,tmp)ac++
XtSetArg(av[ac],XmNpattern,"\t")ac++
parse_table[0]=XmParseMappingCreate(av,ac)
XmStringFree(tmp)

/*map\ntoaseparatorcomponent*/
tmp=XmStringSeparatorCreate()
ac=0
XtSetArg(av[ac],XmNincludeStatus,XmINSERT)ac++
XtSetArg(av[ac],XmNsubstitute,tmp)ac++
XtSetArg(av[ac],XmNpattern,"\n")ac++
parse_table[1]=XmParseMappingCreate(av,ac)
XmStringFree(tmp)

/*convertthe(unspecified)inputstringintoacompoundstring*/
output=XmStringParseText(input,NULL,NULL,XmCHARSET_TEXT,
parse_table,2,NULL)

XmParseTableFree(parse_table)

SeeAlso
XmStringFree(1),XmStringGenerate(1),XmStringUnparse(1).XmParseMapping(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page435

XmStringPeekNextComponent
XmCompoundStrings
Name
XmStringPeekNextComponentreturnsthetypeofthenextcompoundstringcomponent.
Synopsis
XmStringComponentTypeXmStringPeekNextComponent(context)
XmStringContextcontext

Inputs
context

Specifiesthestringcontextforthecompoundstring.

Returns
Thetypeofthecompoundstringcomponent.Thetypeisoneofthevaluesdescribedbelow.
Availability
InMotif2.0andlater,thisfunctionisobsolete.IthasbeensupersededbyXmStringPeekNextTriple().
Description
XmStringPeekNextComponent()checksthenextcomponentinthecompoundstringspecifiedbycontextandreturnsthetypeofthecomponent
found.TheroutineshowswhatwouldbereturnedbyacalltoXmStringGetNextComponent(),withoutactuallyupdatingcontext.
ThetypeXmSTRING_COMPONENT_FONTLIST_ELEMENT_TAGindicatesthatthenextcomponentisafontlistelementtag.InMotif1.2,thetype
XmSTRING_COMPONENT_CHARSETisobsoleteandisretainedforcompatibilitywithMotif1.1.Thetypeindicatesthatthenextcomponentisacharacterset
identifier.XmSTRING_COMPONENT_FONTLIST_ELEMENT_TAGreplacesXmSTRING_COMPONENT_CHARSET.
ThetypesXmSTRING_COMPONENT_TEXTandXmSTRING_COMPONENT_LOCALE_TEXTspecifythatthenextcomponentistext.
XmSTRING_COMPONENT_DIRECTIONindicatesthatthenextcomponentisastringdirectioncomponent.
ThetypeXmSTRING_COMPONENT_SEPARATORindicatesthatthenextcomponentisaseparator,whileXmSTRING_COMPONENT_ENDspecifiestheend
ofthecompoundstring.ThetypeXmSTRING_COMPONENT_UNKNOWNindicatesthatthetypeofthenextcomponentisunknown.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page436

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
TheXmStringtypeisopaque,soifanapplicationneedstoperformanyprocessingonacompoundstring,ithastousespecialfunctionstocyclethroughthestring.
TheseroutinesuseaXmStringContexttomaintainanarbitrarypositioninacompoundstring.XmStringInitContext()iscalledfirsttocreatethestring
context.XmStringPeekNextComponent()peeksatthenextcomponentinthecompoundstringwithoutcyclingthroughthecomponent.Whenan
applicationisdoneprocessingthestring,itshouldcallXmStringFreeContext()withthesamecontexttofreetheallocateddata.
Structures
AXmStringComponentTypecanhaveoneofthefollowingvalues:
XmSTRING_COMPONENT_CHARSET
XmSTRING_COMPONENT_TEXT
XmSTRING_COMPONENT_LOCALE_TEXT
XmSTRING_COMPONENT_DIRECTION
XmSTRING_COMPONENT_SEPARATOR
XmSTRING_COMPONENT_END
XmSTRING_COMPONENT_UNKNOWN

InMotif2.0andlater,thefollowingadditionaltypesaredefined:
XmSTRING_COMPONENT_FONTLIST_ELEMENT_TAG
XmSTRING_COMPONENT_WIDECHAR_TEXT
XmSTRING_COMPONENT_LAYOUT_PUSH
XmSTRING_COMPONENT_LAYOUT_POP
XmSTRING_COMPONENT_RENDITION_BEGIN
XmSTRING_COMPONENT_RENDITION_END

SeeAlso
XmStringFreeContext(1),XmStringGetNextComponent(1),XmStringGetNextSegment(1),
XmStringPeekNextTriple(1),XmStringInitContext(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page437

XmStringPeekNextTriple
XmCompoundStrings
Name
XmStringPeekNextTripleretrievethetypeofthenextcomponent.
Synopsis
XmStringComponentTypeXmStringPeekNextTriple(context)
XmStringContextcontext

Inputs
context

Specifiesthestringcontextforthecompoundstring.

Returns
Thetypeofthenextcomponent.
Availability
Motif2.0andlater.
Description
XmStringPeekNextTriple()returnsthetypeofthenextcomponentwithoutupdatingthecompoundstringcontext.
Usage
AnXmStringContextisanopaquedatatypethatisusedforwalkingalongacompoundstringonecomponentatatime.Itisinitializedbyacallto
XmStringInitContext.EachsuccessivecalltoXmStringGetNextComponent()adjuststhestringcontexttopointtothenextcomponent.
XmStringPeekNextTriple()returnsthetypeofthenextcomponentwithoutadjustingthecontext,andthusitcanbeusedtolookaheadintothe
compoundstring.
Structures
Thestringcomponenttypecanhaveoneofthefollowingvalues:
XmSTRING_COMPONENT_CHARSET
XmSTRING_COMPONENT_TEXT
XmSTRING_COMPONENT_LOCALE_TEXT
XmSTRING_COMPONENT_DIRECTION
XmSTRING_COMPONENT_SEPARATOR
XmSTRING_COMPONENT_END
XmSTRING_COMPONENT_UNKNOWN
XmSTRING_COMPONENT_FONTLIST_ELEMENT_TAG
XmSTRING_COMPONENT_WIDECHAR_TEXT
XmSTRING_COMPONENT_LAYOUT_PUSH

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page438
XmSTRING_COMPONENT_LAYOUT_POP
XmSTRING_COMPONENT_RENDITION_BEGIN
XmSTRING_COMPONENT_RENDITION_END

SeeAlso
XmStringFreeContext(1),XmStringGetNextComponent(1),XmStringGetNextSegment(1),XmStringInitContext
(1),XmStringPeekNextComponent(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page439

XmStringPutRendition
XmCompoundStrings
Name
XmStringPutRenditionaddrenditioncomponentstoacompoundstring.
Synopsis
XmStringXmStringPutRendition(string,rendition)
XmStringstring
XmStringTagrendition

Inputs
string

Specifiesacompoundstringwhichrequiresrenditioncomponents.

rendition

Specifiesatagusedtocreatetherenditioncomponents.

Returns
Anewlyallocatedcompoundstringwithrenditioncomponents.
Availability
Motif2.0andlater.
Description
XmStringPutRendition()isaconveniencefunctionthatplacesXmSTRING_COMPONENT_RENDITION_BEGINand
XmSTRING_COMPONENT_RENDITION_ENDcomponentsthatcontainrenditionaroundacompoundstring.Thestringisnotmodifiedbythe
procedure,whichmakesacopy.
Usage
XmStringPutRendition()allocatesspaceforthereturnedcompoundstring,anditistheresponsibilityoftheprogrammertoreclaimthespaceatan
appropriatepointbycallingXmStringFree().
SeeAlso
XmStringFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page440

XmStringSegmentCreate
XmCompoundStrings
Name
XmStringSegmentCreatecreateacompoundstringsegment.
Synopsis
XmStringXmStringSegmentCreate(text,tag,direction,separator)
char*text
XmStringCharSettag
XmStringDirectiondirection
Booleanseparator

Inputs
text

Specifiesthetextcomponentofthecompoundstringsegment.

tag

Specifiesthefontlistelementtag.

direction Specifiesthevalueofthedirectioncomponent.Passeither
XmSTRING_DIRECTION_L_TO_Ror
XmSTRING_DIRECTION_R_TO_L.
separator Specifieswhetherornotaseparatorisaddedtothecompoundstring.

Returns
Anewcompoundstring.
Availability
InMotif2.0andlater,thisfunctionisdeprecated.AcombinationofXmStringComponentCreate()andXmStringConcat()ispreferred.
Description
XmStringSegmentCreate()createsacompoundstringsegmentthatcontainsthespecifiedtext,tag,anddirection.IfseparatorisTrue,a
separatorisaddedtothesegment,followingthetext.IfseparatorisFalse,thecompoundstringsegmentdoesnotcontainaseparator.Storageforthe
returnedcompoundstringisallocatedbytheroutineandshouldbefreedbycallingXmStringFree().Managementoftheallocatedmemoryistheresponsibility
oftheapplication.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,among

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page441

otheritems,tab,rendition,direction,andlocalecomponents.XmStringSegmentCreate()allowsyoutocreateasinglesegmentthatcanbeconcatenated
withacompoundstringcontainingothersegments.
SeeAlso
XmStringCreate(1),XmStringFree(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page442

XmStringSeparatorCreate
XmCompoundStrings
Name
XmStringSeparatorCreatecreateacompoundstringcontainingaseparatorcomponent.
Synopsis
XmString

XmStringSeparatorCreate()

Returns
Anewcompoundstring.
Description
XmStringSeparatorCreate()createsandreturnsacompoundstringcontainingaseparatorasitsonlycomponent.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringSeparatorCreate()allowsyoutocreateaseparatorcomponentthatcanbeconcatenatedwithacompoundstringcontainingothercomponents.
SeeAlso
XmStringCreate(1),XmStringFree(1),XmStringSegmentCreate(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page443

XmStringTableParseStringArray
XmCompoundStrings
Name
XmStringTableParseStringArrayconvertanarrayofstringsintoacompoundstringtable.
Synopsis
XmStringTableXmStringTableParseStringArray(strings,count,tag,
type,parse_table,parse_count,client_data)
XtPointer*strings
Cardinalcount
XmStringTagtag
XmTextTypetype
XmParseTableparse_table
Cardinalparse_count
XtPointerclient_data

Inputs
strings

Specifiesanarrayofstrings.

count

Specifiesthenumberofitemsinstrings.

tag

Specifiesthetagusedtocreatetheresultingcompoundstringtable.

type

Specifiesthetypeofeachinputstring,andthetag.

parse_table

Specifiesaparsetabletocontroltheconversionprocess.

parse_count

Specifiesthenumberofparsemappingsinparse_table.

client_data

Specifiesapplicationdatatopasstoparseprocedureswithinthe
parse_table.

Returns
Anarrayofcompoundstrings.
Availability
Motif2.0andlater.
Description
XmStringTableParseStringArray()convertsanarrayofstringsintoanarrayofcompoundstrings.XmStringTableParseStringArray
()isnomorethanaconveniencefunctionwhichallocatesspaceforantableofcompoundstrings,andsubsequentlycallsXmStringParseText()iteratively
oneachitemwithinthestringsarraytoconverttheitemintoacompoundstring.Eachconverteditemisplacedwithin

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page444

theallocatedtableatacorrespondinglocationtoitspositioninthestringsarray.Aparse_tablecanbespecifiedwhichconsistsofasetofmappingsto
controltheconversionprocess.Thecontentsofeachofthestringstobeconvertedcanbeinoneofanumberofformats:simplecharacters,multibyte,orwide
characters.Thetypeparameterspecifiesthetypeoftheinputstrings,andisalsousedtointerpretthetagwhichisusedincreatingtextcomponentswithinthe
returnedcompoundstringarray.
Usage
ThefunctioncallsXmStringParseText()passingNULLasthetext_end(second)parameter:eachitemwithinthearrayofstringsisconverteduntil
theoccurrenceofaterminatingnullbyte.XmStringTableParseStringArray()returnsallocatedstorage:theelementswithinthereturnedtableare
compoundstringsallocatedbytheinternalcalltoXmStringParseText(),andshouldeachbefreedatanappropriatepointthroughXmStringFree().
XmStringTableParseStringArray()alsoallocatesspaceforthetableitself,andthisshouldsubsequentlybefreedusingXtFree().
SeeAlso
XmStringFree(1),XmStringGenerate(1),XmStringParseText(1),XmStringTableUnparse(1),XmParseMapping
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page445

XmStringTableProposeTablist
XmCompoundStrings
Name
XmStringTableProposeTablistcreateatablistforacompoundstringtable.
Synopsis
XmTabListXmStringTableProposeTablist(strings,string_count,widget,
padding,offset_model)
XmStringTablestrings
Cardinalstring_count
Widgetwidget
floatpadding
XmOffsetModeloffset_model

Inputs
strings

Specifiesanarrayofcompoundstrings.

string_count

Specifiesthenumberofitemsinstrings.

widget

Specifiesawidgetfromwhichrenditioninformationiscalculated.

padding

Specifiesaseparationbetweencolumns.

offset_model

Specifieswhethertabsarecreatedatabsoluteorrelativeoffsets.

Returns
AnewXmTabList.
Availability
Motif2.0andlater.
Description
XmStringTableProposeTablist()createsanXmTabListvaluethatcanbeusedtospecifyhowanarrayoftabbedcompoundstringsisaligned
intocolumns.
AcompoundstringistabbedifitcontainsanXmSTRING_COMPONENT_TABcomponentbetweentextualcomponents:eachtextcomponentformsanindividual
columnentry.Thestringsarerenderedwithrespecttoatablisteachtabcontainsafloatingpointoffsetwhichspecifiesthestartinglocationofacolumn.
XmStringTableProposeTablist()createsatablistappropriateforlayingoutthegivenstringsinamulticolumnformat.
TheXmNunitTyperesourceofwidgetisusedtocalculatetheunitsinwhichthetabcalculationisperformed.Extraspacingbetweeneachcolumnisspecified
bythe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page446

paddingparameter,andthisisalsointerpretedintermsoftheunittypeofwidget.Theoffset_modeldetermineswhetherthefloatingpointpositions
calculatedforeachtabinthereturnedXmTabListareatabsolutelocations(XmABSOLUTE),orrelativetotheprevioustab(XmRELATIVE).
Usage
ThetablistcreatedbyXmStringTableProposeTablist()canbeappliedtotherendertableofthewidgetwherethestringsaretobedisplayedby
modifyingtheXmNtabListresourceofanexistingrenditionthroughtheprocedureXmRenditionUpdate().Alternately,anewrenditioncanbecreated
usingXmRenditionCreate(),andthereaftermergedintothewidgetrendertableusingXmRenderTableAddRenditions().
XmStringTableProposeTablist()returnsallocatedstorage,anditistheresponsibilityoftheprogrammertoreclaimtheallocatedspaceatasuitable
pointbycallingXmTabListFree().
Ifnorendertableisassociatedwithwidget,XmStringTableProposeTablist()invokesinternalroutinestodeduceadefaultrendertable:these
routinesarenotmultithreadsafe.
SeeAlso
XmTabCreate(1),XmTabFree(1),XmTabListCopy(1),XmTabListFree(1),XmRenderTableAddRenditions(1),
XmRenditionCreate(1),XmRenditionUpdate(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page447

XmStringTableToXmString
XmCompoundStrings
Name
XmStringTableToXmStringconvertcompoundstringtabletocompoundstring.
Synopsis
XmStringXmStringTableToXmString(table,count,break_component)
XmStringTabletable
Cardinalcount
XmStringbreak_component

Inputs
table

Specifiesanarrayofcompoundstrings.

count

Specifiedthenumberofitemsinthetable.

break_component

Specifiesacompoundstringusedtoseparateconvertedtableitems.

Returns
Acompoundstring.
Availability
Motif2.0andlater.
Description
XmStringTableToXmString()isaconveniencefunctionthatconvertsatableofcompoundstringsintoasinglecompoundstring.A
break_componentcanbeinsertedbetweeneachcomponentconvertedfromthetableinordertoseparateeach.
Usage
XmStringTableToXmString()simplywalksalongthearrayofitemswithinthetable,concatenatingacopyofeachitemtotheresult,alongwithacopy
ofthebreak_component.Thebreak_componentcanbeNULL,althoughacomponentoftypeXmSTRING_COMPONENT_TABor
XmSTRING_COMPONENT_SEPARATORisasuitablechoice.Thefunctionreturnsallocatedstorage,anditistheresponsibilityoftheprogrammertoreclaimthe
spacebycallingXmStringFree()atasuitablepoint.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page448

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
ThefollowingcodeillustratesabasiccalltoXmStringTableToXmString():
XmStringxms
XmStringbreak_component

/*createabreakcomponent*/
break_component=XmComponentCreate(XmSTRING_COMPONENT_SEPARATOR,0,NULL)

/*convertan(unspecified)compoundstringtable*/
xms=XmStringTableToXmString(table,table_count,break_component)

/*usethecompoundstring*/
...

/*freetheallocatedspace*/
XmStringFree(xms)

SeeAlso
XmStringConcat(1),XmStringCopy(1),XmStringFree(1),XmStringToXmStringTable(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page449

XmStringTableUnparse
XmCompoundStrings
Name
XmStringTableUnparseconvertacompoundstringtabletoanarrayofstrings.
Synopsis
XtPointer*XmStringTableUnparse(table,count,tag,tag_type,
output_type,parse_table,parse_count,parse_model)
XmStringTabletable
Cardinalcount
XmStringTagtag
XmTextTypetag_type
XmTextTypeoutput_type
XmParseTableparse_table
Cardinalparse_count
XmParseModelparse_model

Inputs
table

Specifiesthecompoundstringtabletounparse.

count

Specifiesthenumberofcompoundstringsintable.

tag

Specifieswhichtextsegmentstounparse.

tag_type

Specifiesthetypeoftag.

output_type

Specifiesthetypeofconversionrequired.

parse_table

Specifiesaparsetabletocontroltheconversion.

parse_count

Specifiesthenumberofparsemappingsinparse_table.

parse_model

Specifieshownontextcomponentsareconverted.

Returns
Anallocatedstringarraycontainingtheunparsedcontentsofthecompoundstrings.
Availability
Motif2.0andlater.
Description
XmStringTableUnparse()isaconveniencefunctionthatunparsesanarrayofcompoundstrings.TheXmStringTabletableisconvertedintoastring
array,whosecontentsisdeterminedbyoutput_type,whichcanbeXmCHARSET_TEXT,XmWIDECHAR_TEXT,orXmMULTIBYTE_TEXT.Only
thosetextcomponentswithinthetablewhichmatchtagareconverted:NULLconvertsalltextcomponents.An

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page450

XmParseTablecanbesuppliedwhichactsasafilter:eachparsemappinginthetablecontainsapatternwhichmustmatchatextcomponentofthecompound
stringifthatcomponentistobeconverted.
parse_modeldetermineshownontextcomponentsofstringarehandledwhenmatchingagainstparse_table.IfthevalueisXmOUTPUT_ALL,all
componentsaretakenintoaccountintheconversionprocess.IfthevalueisXmOUTPUT_BETWEEN,anynontextcomponentswhicharenotbetweentwotext
componentsareignored.IfthevalueisXmOUTPUT_BEGINNING,anynontextcomponentswhichdonotprecedeatextcomponentareignored.Similarly,the
valueXmOUTPUT_ENDspecifiesthatanynontextcomponentswhichdonotfollowatextcomponentareignored.XmOUTPUT_BOTHisacombinationof
XmOUTPUT_BEGINNINGandXmOUTPUT_END.Thenumberofitemswithinthereturnedstringarrayisidenticaltothesuppliednumberofcompoundstrings.
Eachconvertedstringoccupiesthesameindexinthereturnedarrayastheindexofthesourcecompoundstringintable.
Usage
XmStringTableUnparse()isthelogicalinverseoftheroutineXmStringTableParseStringArray().Itsimplyinvokes
XmStringUnparse()oneachoftheelementsinthesuppliedtable.Thefunctionreturnsallocatedstorage,bothforthereturnedarray,andforeachelement
withinthearray.ItistheresponsibilityoftheprogrammertoreclaimthestorageatanappropriatepointbycallingXtFree()oneachelementinthearrayandupon
thearrayitself.
Structures
AnXmParseModelhasthefollowingpossiblevalues:
XmOUTPUT_ALL
XmOUTPUT_BEGINNING
XmOUTPUT_BETWEEN
XmOUTPUT_BOTH
XmOUTPUT_END

SeeAlso
XmStringFree(1),XmStringParseText(1),XmStringTableParseStringArray(1),XmStringUnparse(1),
XmParseMapping(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page451

XmStringToXmStringTable
XmCompoundStrings
Name
XmStringToXmStringTableconvertacompoundstringtoacompoundstringtable.
Synopsis
CardinalXmStringToXmStringTable(string,break_comp,table)
XmStringstring
XmStringbreak_comp
XmStringTable*table

Inputs
string

Specifiesacompoundstring.

break_comp

Specifiesacomponentthatindicateswheretosplitstringintoan
individualtableelement.

Outputs
table

Returnstheconvertedcompoundstringtable.

Returns
Thenumberofelementsintheconvertedcompoundstringtable.
Availability
Motif2.0andlater.
Description
XmStringToXmStringTable()isaconveniencefunctionthatconvertsanXmStringstringintoanarrayofcompoundstrings.break_compisa
componentthatisusedtodeterminehowtosplitthestringintoindividualitems:componentsinstringareconsideredtoformcontiguoussequencesdelimited
bybreak_comp,eachsequenceformingaseparateentryintheconvertedstringtable.Anycomponentfromstringthatmatchesthedelimiting
break_compisnotcopiedintotheconvertedtable.Ifbreak_compisNULL,thereturnedcompoundstringtablecontainsasingleentry:acopyoftheoriginal
string.
Usage
XmStringToXmStringTable()istheinversefunctiontoXmStringTableToXmString().Abreak_compcomponentoftype
XmSTRING_COMPONENT_TABorXmSTRING_COMPONENT_SEPARATORisthemostusefulchoice.Thefunctionreturnsallocatedstorage,anditisthe
responsibilityoftheprogrammertoreclaimthespaceby

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page452

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

callingXmStringFree()oneachelementinthetable,andthenXtFree()onthetableitself.
Example
ThefollowingcodeillustratesabasiccalltoXmStringToXmStringTable():
Cardinalcount
XmStringTabletable
XmStringbreak_component
inti

/*createabreakcomponent*/
break_component=XmComponentCreate(XmSTRING_COMPONENT_SEPARATOR,
0,NULL)

/*convertan(unspecified)compoundstring*/
count=XmStringToXmStringTable(xms,break_component,&table)

/*usethetable*/
...

/*freetheallocatedspace*/
for(i=0i<counti++){
XmStringFree(table[i])
}

XtFree(table)

SeeAlso
XmStringFree(1),XmStringTableToXmString(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page453

XmStringUnparse
XmCompoundStrings
Name
XmStringUnparseconvertacompoundstringintoastring.
Synopsis
XtPointerXmStringUnparse(string,tag,tag_type,output_type,
parse_table,parse_count,parse_model)
XmStringstring
XmStringTagtag
XmTextTypetag_type
XmTextTypeoutput_type
XmParseTableparse_table
Cardinalparse_count
XmParseModelparse_model

Inputs
string

Specifiesthecompoundstringtounparse.

tag

Specifieswhichtextsegmentsofstringtounparse.

tag_type

Specifiesthetypeoftag.

output_type

Specifiesthetypeofconversionrequired.

parse_table

Specifiesaparsetabletocontroltheconversion.

parse_count

Specifiesthenumberofparsemappingsinparse_table.

parse_model

Specifieshownontextcomponentsareconverted.

Returns
Anallocatedstringcontainingtheunparsedcontentsofacompoundstring.
Availability
Motif2.0andlater.
Description
XmStringUnparse()isaconveniencefunctionthatunparsesacompoundstring.TheXmStringstringisconvertedintoastring,whosecontentsis
determinedbyoutput_type,whichcanbeXmCHARSET_TEXT,XmWIDECHAR_TEXT,orXmMULTIBYTE_TEXT.Onlythosetextcomponents
withinthestringthatmatchtagareconverted:NULLconvertsalltextcomponents.AnXmParseTablecanbesuppliedtoactasafiltereachparsemappingin
thetablecontainsapatternwhichmustmatchatextcomponentofthecompoundstringifthatcomponentistobeconverted.parse_modeldetermineshownon
textcomponentsofstringarehandledwhen

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page454

matchingagainstparse_table.IfthevalueisXmOUTPUT_ALL,allnontextcomponentsareusedintheconversionprocess.Ifthevalueis
XmOUTPUT_BETWEEN,anynontextcomponentsthatfallbetweentextcomponentsareused.IfthevalueisXmOUTPUT_BEGINNING,nontextcomponents
thatprecedeatextcomponentareutilized.Similarly,XmOUTPUT_ENDusesnontextcomponentsthatfollowatextcomponent.XmOUTPUT_BOTHisa
combinationofXmOUTPUT_BEGINNINGandXmOUTPUT_END.
Usage
XmStringUnparse()isthelogicalinverseoftheroutineXmStringParseText().Thefunctionreturnsallocatedstorage,anditistheresponsibilityof
theprogrammertoreclaimthestoragebycallingXtFree()atanappropriatepoint.
Structures
AnXmParseModelhasthefollowingpossiblevalues:
XmOUTPUT_ALL
XmOUTPUT_BEGINNING
XmOUTPUT_BETWEEN
XmOUTPUT_BOTH
XmOUTPUT_END

Example
ThefollowingcodeoutlinesabasiccalltoXmStringUnparse(),whichconvertsseparatorandtabcomponentsintotheoutput:
XmParseTableparse_table=(XmParseTable)XtCalloc(2,
sizeof(XmParseMapping))
XmStringtmp
XmStringoutput
char*string
Argav[4]
Cardinalac

/*maptabcomponentto\t*/
tmp=XmStringComponentCreate(XmSTRING_COMPONENT_TAB,0,NULL)
ac=0
XtSetArg(av[ac],XmNincludeStatus,XmINSERT)ac++
XtSetArg(av[ac],XmNsubstitute,tmp)ac++
XtSetArg(av[ac],XmNpattern,"\t")ac++
parse_table[0]=XmParseMappingCreate(av,ac)
XmStringFree(tmp)

/*mapseparatorcomponentto\n*/
tmp=XmStringSeparatorCreate()

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page455
ac=0
XtSetArg(av[ac],XmNincludeStatus,XmINSERT)ac++
XtSetArg(av[ac],XmNsubstitute,tmp)ac++
XtSetArg(av[ac],XmNpattern,"\n")ac++
parse_table[l]=XmParseMappingCreate(av,ac)
XmStringFree(tmp)

/*convertthe(unspecified)compoundstring*/
string=(char*)XmStringUnparse(xms,NULL,
XmCHARSET_TEXT,XmCHARSET_TEXT,
parse_table,2,XmOUTPUT_ALL)

/*usetheconvertedstring*/
....

/*freetheallocatedspace*/
XtFree(string)

/*Freetheparsetable:thisalsofreestheparsemappings*/
XmParseTableFree(parse_table,2)

SeeAlso
XmStringFree(1),XmStringParseText(1),XmStringTableUnparse(1),XmParseMapping(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page456

XmStringWidth
XmCompoundStrings
Name
XmStringWidthgetthewidthofthelongestlineoftextinacompoundstring.
Synopsis
DimensionXmStringWidth(fontlist,string)
XmFontListfontlist
XmStringstring

Inputs
fontlist

Specifiesthefontlistforthecompoundstring.

string

Specifiesthecompoundstring.

Returns
Thewidthofthecompoundstring.
Description
XmStringWidth()returnsthewidth,inpixels,ofthelongestlineoftextinthespecifiedcompoundstring.Linesinthecompoundstringaredelimitedby
separatorcomponents.IfstringiscreatedwithXmStringCreateSimple(),fontlistmustbeginwiththefontfromthecharactersetofthecurrent
languageenvironmentotherwisetheresultisundefined.
Usage
InMotif1.2,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafontlistelementtag,astringdirection,andatext
component.InMotif2.0andlater,thesetofavailablesegmentsisextendedtoinclude,amongotheritems,tab,rendition,direction,andlocalecomponents.
XmStringWidth()providesinformationthatisusefulifyouneedtorenderacompoundstring.Motifwidgetsrendercompoundstringsautomatically,soyou
onlyneedtoworryaboutrenderingthemyourselfifyouarewritingyourownwidget.Theroutineisalsousefulifyouwanttogetthedimensionsofacompoundstring
renderedwithaparticularfont.
SeeAlso
XmStringBaseline(1),XmStringExtent(1),XmStringHeight(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page457

XmTabCreate
XmTabLists
Name
XmTabCreatecreateatabstop.
Synopsis
XmTabXmTabCreate(value,units,offset_model,alignment,decimal)
floatvalue
unsignedcharunits
XmOffsetModeloffset_model
unsignedcharalignment
char*decimal

Inputs
value

Specifiesthevaluetobeusedincalculatingthelocationofatabstop.

units

Specifiestheunitsinwhichvalueisexpressed.

offset_model

Specifieswhetherthetabisatanabsolutepositionorrelativetothe
previoustab.

alignment

Specifieshowtextshouldbealignedtothistabstop.

decimal

Specifiesthemultibytecharacterinthecurrentlocaletobeusedasa
decimalpoint.

Returns
AnXmTabobject.
Availability
Motif2.0andlater.
Description
XmTabCreate()createsatabstopatthepositionspecifiedbyvalue,whichisexpressedintermsofunits.Ifvalueislessthan0(zero),awarningis
displayed,andvalueisresetto0.0.Theoffset_modeldetermineswhetherthetabpositionisanabsolutelocation(XmABSOLUTE)calculatedfromthestart
ofanyrenderingorrelativetotheprevioustabstop(XmRELATIVE).alignmentspecifieshowtextisalignedwithrespecttothetablocationatpresentonly
XmALIGNMENT_BEGINNINGissupported.decimalisamultibytecharacterthatdescribesthedecimalpointcharacterinthecurrentlocale.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page458

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
AtabstopcanbecreatedandinsertedintoanXmTabListthroughthefunctionXmTabListInsertTabs().Thetablistisusedtorenderamulticolumn
layoutofcompoundstringsbyspecifyingthelistastheXmNtabListresourceofarenditionobjectwithinarendertableassociatedwithawidget.Thedecimal
parameteriscurrentlyunused.
XmTabCreate()allocatesstoragefortheobjectitreturns.Itistheresponsibilityoftheprogrammertofreethememoryatanappropriatepointbyacallto
XmTabFree().
Structures
TheXmOffsetModeltypehasthefollowingpossiblevalues:
XmABSOLUTE

XmRELATIVE

Validvaluesfortheunitsparameterare:
XmPIXELS

XmCENTIMETERS

Xm100TH_MILLIMETERS

XmMILLIMETERS

Xm1000TH_INCHES

XmINCHES

Xm100TH_FONT_UNITS

XmFONT_UNITS

Xm100TH_POINTS

XmPOINTS

SeeAlso
XmTabFree(1),XmTabGetValues(1),XmTabListInsertTabs(1),XmTabSetValue(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page459

XmTabFree
XmTabLists
Name
XmTabFreefreethememoryusedbyanXmTabobject.
Synopsis
voidXmTabFree(tab)
XmTabtab

Inputs
tab

SpecifiesanXmTabobject.

Availability
Motif2.0andlater.
Description
XmTabFree()reclaimsthememoryassociatedwithtab,previouslyallocatedbyacalltoXmTabCreate().
Usage
AtabstopcanbecreatedusingXmTabCreate()andinsertedintoanXmTabListthroughthefunctionXmTabListInsertTabs().Thetablistisused
torenderamulticolumnlayoutofcompoundstringsbyspecifyingthelistastheXmNtabListresourceofarenditionobjectwithinarendertableassociatedwitha
widget.
SeeAlso
XmTabCreate(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page460

XmTabGetValues
XmTabLists
Name
XmTabGetValuesfetchthevalueofanXmTabobject.
Synopsis
floatXmTabGetValues(tab,units,offset_model,alignment,decimal)
XmTabtab
unsignedchar*units
XmOffsetModel*offset_model
unsignedchar*alignment
char**decimal

Inputs
tab

SpecifiesanXmTabobject.

Outputs
units

Returnstheunitsinwhichthetabstopiscalculated.

offset_model

Returnstheoffsetmodel.

alignment

Returnsthetextalignmentwithrespecttothetabstop.

decimal

Returnsthemultibytecharacterusedtorepresentthedecimalpoint.

Returns
Thedistance,expressedinunits,whichthetabisoffset.
Availability
Motif2.0andlater.
Description
XmTabGetValues()retrievesthedataassociatedwithatabstopobject.Thefunctionreturnsthepositionvalueofatabstop,whichisexpressedintermsof
units.Theoffset_modeldetermineswhetherthetabpositionisanabsolutelocation(XmABSOLUTE)calculatedfromthestartofanyrenderingorrelative
totheprevioustabstop(XmRELATIVE).alignmentspecifieshowtextisalignedwithrespecttothetablocationatpresentonly
XmALIGNMENT_BEGINNINGissupported.decimalisamultibytecharacterwhichdescribesthedecimalpointcharacterinthecurrentlocale.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page461

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
AtabstopcanbecreatedusingthefunctionXmTabCreate()andinsertedintoanXmTabListthroughthefunctionXmTabListInsertTabs().The
tablistisusedtorenderamulticolumnlayoutofcompoundstringsbyspecifyingthelistastheXmNtabListresourceofarenditionobjectwithinarendertable
associatedwithawidget.Thedecimalvalueiscurrentlyunused.
Structures
TheXmOffsetModeltypehasthefollowingpossiblevalues:
XmABSOLUTE

XmRELATIVE

Validvaluesforunitsare:
XmPIXELS

XmCENTIMETERS

Xm100TH_MILLIMETERS

XmMILLIMETERS

Xm1000TH_INCHES

XmINCHES

Xm100TH_FONT_UNITS

XmFONT_UNITS

Xm100TH_POINTS

XmPOINTS

SeeAlso
XmTabCreate(1),XmTabSetValue(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page462

XmTabListTabCopy
XmTabLists
Name
XmTabListTabCopycopyanXmTabListobject.
Synopsis
XmTabListXmTabListTabCopy(tab_list,offset,count)
XmTabListtab_list
intoffset
Cardinalcount

Inputs
tab_list

Specifiesthetablisttocopy.

offset

Specifiesanindexintothetablistfromwhichtostartcopying.

count

Specifiesthenumberoftabstopstocopy.

Returns
Anewtablistcontainingtabscopiedfromtab_list.
Availability
Motif2.0andlater.
Description
XmTabListTabCopy()isaconveniencefunctionthatcreatesanewXmTabListbycopyingportionsofanexistingtab_list.Iftab_listisNULL,the
functionsimplyreturnsNULL.Otherwise,anewtablistisallocatedandselectedtabsarecopied,dependingontheoffsetandcountparameters.count
specifiesthenumberoftabstocopy,andoffsetdetermineswhereintheoriginallisttostart.Ifoffsetiszero,tabsarecopiedfromthebeginningof
tab_list.Ifoffsetisnegative,tabsarecopiedinreverseorderfromtheendoftab_list.Ifcountiszero,alltabsfromoffsettotheendof
tab_listarecopied.
Usage
AtabstopcanbecreatedusingthefunctionXmTabCreate()andinsertedintoanXmTabListthroughthefunctionXmTabListInsertTabs().Thetab
listisusedtorenderamulticolumnlayoutofcompoundstringsbyspecifyingthelistastheXmNtabListresourceofarenditionobjectwithinarendertable
associatedwithawidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page463

XmTabListCopy()allocatesstoragefortheobjectitreturns.Itistheresponsibilityoftheprogrammertofreethememoryatanappropriatepointbyacallto
XmTabListFree().
SeeAlso
XmTabCreate(1),XmTabListFree(1),XmTabListInsertTabs(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page464

XmTabListFree
XmTabLists
Name
XmTabListFreefreethememoryusedbyatablist.
Synopsis
voidXmTabListFree(tab_list)
XmTabListtab_list

Inputs
tab_list

Specifiedthetablisttofree.

Availability
Motif2.0andlater.
Description
XmTabListFree()reclaimsthespaceusedbyanXmTabListobject,tab_list.
Usage
IncommonwithotherobjectsinMotif2.0andlater,thetab(XmTab)andtablist(XmTabList)aredynamicallyallocateddatastructuresthatmustbefreedwhenno
longerrequired.Forexample,XmStringTableProposeTablist()dynamicallycreatesatablistforrenderingamulticolumncompoundstringtablewhich
mustbesubsequentlydeallocated.
ItisimportanttocallXmTabListFree()insteadofXtFree()becauseXmTabListFree()alsoreclaimsstorageforeachoftheelementsinthetablist.
SeeAlso
XmStringTableProposeTablist(1),XmTabCreate(1),XmTabListInsertTabs(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page465

XmTabListGetTab
XmTabLists
Name
XmTabListGetTabretrieveatabfromatablist.
Synopsis
XmTabXmTabListGetTab(tab_list,position)
XmTabListtab_list
Cardinalposition

Inputs
tab_list

Specifiesatablist.

position

Specifiesthepositionoftherequiredtabwithinthetab_list.

Returns
Acopyoftherequiredtab.
Availability
Motif2.0andlater.
Description
XmTabListGetTab()returnsacopyofatabfromtheXmTabListspecifiedbytab_list.positiondetermineswhereinthelistoftabstherequiredtab
iscopiedfrom.Thefirsttabwithintab_listisatpositionzero,thesecondtabatposition1,andsoon.Ifpositionisnotlessthanthenumberoftabswithin
thelist,XmTabListGetTab()returnsNULL.
Usage
AtabstopcanbecreatedusingthefunctionXmTabCreate()andinsertedintoanXmTabListthroughthefunctionXmTabListInsertTabs().Thetab
listisusedtorenderamulticolumnlayoutofcompoundstringsbyspecifyingthelistastheXmNtabListresourceofarenditionobjectwithinarendertable
associatedwithawidget.
XmTabListGetTab()returnsacopyofthetabwithintheoriginaltablist.Itistheresponsibilityoftheprogrammertoreclaimthespaceatasuitablepointby
callingXmTabFree().
SeeAlso
XmTabCreate(1),XmTabFree(1),XmTabListInsertTabs(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page466

XmTabListInsertTabs
XmTabLists
Name
XmTabListInsertTabsinserttabsintoatablist.
Synopsis
XmTabListXmTabListInsertTabs(tab_list,tabs,tab_count,position)
XmTabListtab_list
XmTab*tabs
Cardinaltab_count
intposition

Inputs
tab_list

Specifiesthetablistintowhichtabsareadded.

tabs

Specifiesanarrayoftabstoadd.

tab_count

Specifiesthenumberoftabswithinthetabsarray.

position

Specifiesanindexintotab_listatwhichtoinsertthetabs.

Returns
Anewlyallocatedtablist.
Availability
Motif2.0andlater.
Description
XmTabListInsertTabs()createsanewtablistbymergingasetoftabsintoatab_listatagivenposition.IftabsisNULLortab_count
iszero,thefunctionreturnstheoriginaltab_list.Ifpositioniszero,thenewtabsareinsertedattheheadofthenewtablist.Ifpositionis1,theyare
insertedafterthefirsttab,andsoforth.Ifpositionisgreaterthanthenumberoftabsintab_list,thenewtabsareappended.Ifpositionisnegative,the
newtabsareinsertedinreverseorderattheendoftheoriginallist,sothatthefirstnewtabbecomesthelasttabinthenewlist.
Usage
AtabstopcanbecreatedusingthefunctionXmTabCreate()andinsertedintoanXmTabListthroughthefunctionXmTabListInsertTabs().Thetab
listisusedtorenderamulticolumnlayoutofcompoundstringsbyspecifyingthelistastheXmNtabListresourceofarenditionobjectwithinarendertable
associatedwithawidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page467

XmTabListInsertTabs()returnsallocatedstorage.Itistheresponsibilityoftheprogrammertoreclaimthespaceatasuitablepointbycalling
XmTabListFree().
SeeAlso
XmTabCreate(1),XmTabFree(1),XmTabListFree(1),XmTabListInsertTabs(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page468

XmTabListRemoveTabs
XmTabLists
Name
XmTabListRemoveTabscopyatablist,excludingspecifiedtabs.
Synopsis
XmTabListXmTabListRemoveTabs(old_list,position_list,
position_count)
XmTabListold_list
Cardinal*position_list
Cardinalposition_count

Inputs
old_list

Specifiesthetablisttocopy.

position_list

Specifiesanarrayoftabpositionstoexclude.

position_count

Specifiesthelengthofposition_list.

Returns
Acopyofold_list,withthespecifiedpositionsexcluded.
Availability
Motif2.0andlater.
Description
XmTabListRemoveTabs()removestabsfromaold_listbyallocatinganewtablistthatcontainsallthetabsoftheoriginallistexceptforthoseat
specificpositionswithinaposition_list.Thefirsttabwithinatablistisatpositionzero,thesecondtabatposition1,andsoon.Ifold_listisNULL,
position_listisNULL,orposition_countiszero,thefunctionreturnsold_listunmodified.Otherwiseold_listisfreed,asareany
excludedtabelements,beforethenewlyallocatedtablistisreturned.
Usage
AtabstopcanbecreatedusingthefunctionXmTabCreate()andinsertedintoanXmTabListthroughthefunctionXmTabListInsertTabs().Thetab
listisusedtorenderamulticolumnlayoutofcompoundstringsbyspecifyingthelistastheXmNtabListresourceofarenditionobjectwithinarendertable
associatedwithawidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page469

Whenthereturnedtablistdiffersfromtheoriginalold_listparameter,XmTabListRemoveTabs()returnsallocatedstorage.Itistheresponsibilityofthe
programmertoreclaimthespaceatasuitablepointbycallingXmTabListFree().
SeeAlso
XmTabCreate(1),XmTabFree(1),XmTabListFree(1),XmTabListInsertTabs(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page470

XmTabListReplacePositions
XmTabLists
Name
XmTabListReplacePositionscopyatablist,replacingtabsatspecifiedpositions.
Synopsis
XmTabListXmTabListReplacePositions(old_list,position_list,tabs,
tab_count)
XmTabListold_list
Cardinal*position_list
XmTab*tabs
Cardinaltab_count

Inputs
old_list

Specifiesthetablisttomodify.

position_list

Specifiesanarrayofpositionsatwhichtoreplacethetabs.

tabs

Specifiesthetabswhichreplacethoseinold_list.

tab_count

Specifiesthenumberoftabsandpositions.

Returns
Anewtablistwithtabsreplacedatspecifiedpositions.
Availability
Motif2.0andlater.
Description
XmTabListReplacePositions()createsanewlyallocatedtablistthatcontainsalltheoriginaltabsinold_list,exceptthatatanypositioncontained
withinposition_list,thecorrespondingtabfromtabsisusedinsteadoftheoriginal.Thatis,atthefirstpositionspecifiedwithinposition_list,the
originaltabisreplacedbythefirsttabwithintabs.Thefirsttabwithinatablistisatpositionzero,thesecondtabatposition1,andsoon.Ifold_listis
NULL,tabsisNULL,orposition_listisNULL,oriftab_countiszero,thefunctionreturnsold_listunmodified.Otherwiseold_listis
freed,asareanyreplacedtabelements,beforethenewlyallocatedtablistisreturned.
Usage
AtabstopcanbecreatedusingthefunctionXmTabCreate()andinsertedintoanXmTabListthroughthefunctionXmTabListInsertTabs().Thetab
listisusedto

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page471

renderamulticolumnlayoutofcompoundstringsbyspecifyingthelistastheXmNtabListresourceofarenditionobjectwithinarendertableassociatedwitha
widget.
Whenthereturnedtablistdiffersfromtheoriginalold_listparameter,XmTabListReplacePositions()returnsallocatedstorage.Itisthe
responsibilityoftheprogrammertoreclaimthespaceatasuitablepointbycallingXmTabListFree()
SeeAlso
XmTabCreate(1),XmTabFree(1),XmTabListFree(1),XmTabListInsertTabs(1),XmTabListRemoveTabs(1),
XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page472

XmTabListTabCount
XmTabLists
Name
XmTabListTabCountcountthenumberoftabsinatablist.
Synopsis
CardinalXmTabListTabCount(tab_list)
XmTabListtab_list

Inputs
tab_list

Specifiesthetablisttocount.

Returns
Thenumberoftabstopsintab_list.
Availability
Motif2.0andlater.
Description
XmTabListCount()isaconveniencefunctionthatcountsthenumberofXmTabobjectscontainedwithintab_list.Iftab_listisNULL,thefunction
returnszero.
Usage
AtabstopcanbecreatedusingthefunctionXmTabCreate()andinsertedintoanXmTabListthroughthefunctionXmTabListInsertTabs().Thetab
listisusedtorenderamulticolumnlayoutofcompoundstringsbyspecifyingthelistastheXmNtabListresourceofarenditionobjectwithinarendertable
associatedwithawidget.
SeeAlso
XmTabCreate(1),XmTabFree(1),XmTabListFree(1),XmTabListInsertTabs(1),XmTabListRemoveTabs(1),
XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page473

XmTabSetValue
XmTabLists
Name
XmTabSetValuesetthevalueofatabstop.
Synopsis
voidXmTabSetValue(tab,value)
XmTabtab
floatvalue

Inputs
tab

Specifiesthetabtomodify.

value

Specifiesthenewvalueforthetabstop.

Availability
Motif2.0andlater.
Description
XmTabSetValue()setsthevalueassociatedwithanXmTabobject.Thevalueisafloatingpointquantitythatrepresentseitheranabsolutedistancefromthe
startofthecurrentrenditionoravaluerelativetotheprevioustabstop.Theoffsetmodelspecifiedwhenthetabiscreateddetermineswhethervalueisrelativeor
absolute.Ifvalueislessthan0(zero),awarningmessageisdisplayedandthefunctionreturnswithoutmodifyingthetab.
Usage
AtabstopcanbecreatedusingthefunctionXmTabCreate()andinsertedintoanXmTabListthroughthefunctionXmTabListInsertTabs().Thetab
listisusedtorenderamulticolumnlayoutofcompoundstringsbyspecifyingthelistastheXmNtabListresourceofarenditionobjectwithinarendertable
associatedwithawidget.
SeeAlso
XmTabCreate(1),XmTabGetValues(1),XmTabListInsertTabs(1),XmRendition(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page474

XmTargetsAreCompatible
XmDragandDrop
Name
XmTargetsAreCompatibledeterminewhetherornotthetargettypesofadragsourceandadropsitematch.
Synopsis
#include<Xm/DragDrop.h>
BooleanXmTargetsAreCompatible(display,export_targets,
num_export_targets,import_targets,num_import_targets)
Display*display
Atom*export_targets
Cardinalnum_export_targets
Atom*import_targets
Cardinalnum_import_targets

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

export_targets

Specifiesthelistoftargetatomstowhichthedragsourcecanconvertthe
data.

num_export_targets

Specifiesthenumberofitemsinexport_targets.

import_targets

Specifiesthelistoftargetatomsthatareacceptedbythedropsite.

num_import_targets

Specifiesthenumberofitemsinimport_targets.

Returns
TrueifthereisacompatibletargetorFalseotherwise.
Availability
Motif1.2andlater.
Description
XmTargetsAreCompatible()determineswhetherornottheimporttargetsofadropsitematchanyoftheexporttargetsofadragsource.Theroutine
returnsTrueifthetwoobjectshaveatleastonetargetincommonotherwiseitreturnsFalse.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page475

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
Motif1.2andlatersupportsthedraganddropmodelofselectionactions.Inawidgetthatactsasadragsource,ausercanmakeaselectionandthendragthe
selection,usingBTransfer,tootherwidgetsthatareregisteredasdropsites.Thesedropsitescanbeinthesameapplicationoranotherapplication.Inorderfora
draganddropoperationtosucceed,thedragsourceandthedropsitemustbothbeabletohandledatainthesameformat.XmTargetsAreCompatible()
providesawayforanapplicationtocheckifadragsourceandadropsitesupportcompatibleformats.
SeeAlso
XmDragContext(2),XmDropSite(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page476

XmTextClearSelection
XmText
Name
XmTextClearSelection,XmTextFieldClearSelectioncleartheprimaryselection.
Synopsis
#include<Xm/Text.h>
voidXmTextClearSelection(widget,time)

#include<Xm/TextF.h>
voidXmTextFieldClearSelection(widget,time)

Widgetwidget
Timetime

Inputs
widget

SpecifiestheTextorTextFieldwidget.

time

Specifiesthetimeoftheeventthatcausedtherequest.

Description
XmTextClearSelection()andXmTextFieldClearSelection()cleartheprimaryselectioninthespecifiedwidget.
XmTextClearSelection()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldClearSelection()onlyworks
foraTextFieldwidget.Foreachroutine,timespecifiestheservertimeoftheeventthatcausedtherequesttocleartheselection.
Usage
XmTextClearSelection()andXmTextFieldClearSelection()provideaconvenientwaytodeselectthetextselectioninaTextorTextField
widget.Ifnotextisselected,theroutinesdonothing.Anytextthatisstoredintheclipboardorselectionpropertiesremainstheroutinesaffecttheselectedtextinthe
widgetonly.Ifyouarecallingoneoftheseroutinesfromacallbackroutine,youprobablywanttousethetimefieldfromtheeventpointerinthecallback
structureasthevalueofthetimeparameter.YoucanalsousethevalueCurrentTime,butthereisnoguaranteethatusingthistimepreventsraceconditions
betweenmultipleclientsthataretryingtousetheclipboard.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page477

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
ThefollowingcallbackroutinefortheitemsonanEditmenu(Cut,Copy,Link,Paste,andClear)showstheuseofXmTextClearSelection():
Widgettext_w,status

voidcut_paste(widget,client_data,call_data)
Widgetwidget
XtPointerclient_data
XtPointercall_data
{
intnum=(int)client_data
XmAnyCallbackStruct*cbs=(XmAnyCallbackStruct*)call_data
Booleanresult=True

switch(num){
case0:
result=XmTextCut(text_w,cbs>event>xbutton.time)
break
case1:
result=XmTextCopy(text_w,cbs>event>xbutton.time)
break
case2:
result=XmTextCopyLink(text_w,cbs>event>xbutton.time)
break
case3:
result=XmTextPaste(text_w)
break
case4:
XmTextClearSelection(text_w,cbs>event>xbutton.time)
break
}

if(result==False)
XmTextSetString(status,"Thereisnoselection.")
else
XmTextSetString(status,NULL)
}

SeeAlso
XmTextCopy(1),XmTextCopyLink(1),XmTextCut(1),XmTextGetSelection(1),XmTextGetSelectionPosition
(1),XmTextGetSelectionWcs(1),XmTextSetSelection(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page478

XmTextCopy
XmText
Name
XmTextCopy,XmTextFieldCopycopytheprimaryselectiontotheclipboard.
Synopsis
#include<Xm/Text.h>
BooleanXmTextCopy(widget,time)

#include<Xm/TextF.h>
BooleanXmTextFieldCopy(widget,time)

Widgetwidget
Timetime

Inputs
widget

SpecifiestheTextorTextFieldwidget.

time

Specifiesthetimeoftheeventthatcausedtherequest.

Returns
TrueonsuccessorFalseotherwise.
Description
XmTextCopy()andXmTextFieldCopy()copytheprimaryselectioninthespecifiedwidgettotheclipboard.XmTextCopy()workswhen
widgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldCopy()onlyworksforaTextFieldwidget.Foreachroutine,timespecifiestheserver
timeoftheeventthatcausedtherequesttocopytheselection.BothroutinesreturnTrueifsuccessful.IftheprimaryselectionisNULL,ifitisnotownedbythe
specifiedwidget,orifthefunctioncannotobtainownershipoftheclipboardselection,theroutinesreturnFalse.
InMotif2.0andlater,XmTextCopy()interfaceswiththeUniformTransferModelbyindirectlyinvokingtheXmNconvertCallbackproceduresofthe
widget.
Usage
XmTextCopy()andXmTextFieldCopy()copythetextthatisselectedinaTextorTextFieldwidgetandplaceitontheclipboard.Ifyouarecallingoneof
theseroutinesfromacallbackroutine,youprobablywanttousethetimefieldfromtheeventpointerinthecallbackstructureasthevalueofthetime
parameter.YoucanalsousethevalueCurrentTime,butthereisnoguaranteethatusingthistimepreventsraceconditionsbetweenmultipleclientsthataretrying
tousetheclipboard.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page479

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
ThefollowingcallbackroutinefortheitemsonanEditmenu(Cut,Copy,Link,Paste,PasteLink,andClear)showstheuseofXmTextCopy():
Widgettext_w,status

voidcut_paste(widget,client_data,call_data)
Widgetwidget
XtPointerclient_data
XtPointercall_data
{
intnum=(int)client_data
XmAnyCallbackStruct*cbs=(XmAnyCallbackStruct*)call_data
Booleanresult=True

switch(num){
case0:
result=XmTextCut(text_w,cbs>event>xbutton.time)
break
case1:
result=XmTextCopy(text_w,cbs>event>xbutton.time)
break
case2:
result=XmTextCopyLink(text_w,cbs>event>xbutton.time)
break
case3:
result=XmTextPaste(text_w)
break
case4:
result=XmTextPasteLink(text_w)
break
case5:
XmTextClearSelection(text_w,cbs>event>xbutton.time)
break
}

if(result==False)
XmTextSetString(status,"Thereisnoselection.")
else
XmTextSetString(status,NULL)
}

SeeAlso
XmTextClearSelection(1),XmTextCopyLink(1),XmTextCut(1),XmTextGetSelection(1),
XmTextGetSelectionWcs(1),XmTextPaste(1),XmTextPasteLink(1),XmTextRemove(1),XmTextSetSelection
(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page480

XmTextCopyLink
XmText
Name
XmTextCopyLink,XmTextFieldCopyLinkcopytheprimaryselectiontotheclipboard.
Synopsis
#include<Xm/Text.h>
BooleanXmTextCopyLink(widget,time)

#include<Xm/TextF.h>
BooleanXmTextFieldCopyLink(widget,time)

Widgetwidget
Timetime

Inputs
widget

SpecifiestheTextorTextFieldwidget.

time

Specifiesthetimeoftheeventthatcausedtherequest.

Returns
TrueonsuccessorFalseotherwise.
Availability
Motif2.0andlater.
Description
XmTextCopyLink()andXmTextFieldCopyLink()copyalinktotheprimaryselectioninthespecifiedwidgettotheclipboard.
XmTextCopyLink()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldCopyLink()onlyworksforaTextField
widget.Foreachroutine,timespecifiestheservertimeoftheeventthatcausedtherequesttocopytheselection.BothroutinesreturnTrueifsuccessful.Ifthe
primaryselectionisNULL,ifitisnotownedbythespecifiedwidget,orifthefunctioncannotobtainownershipoftheclipboardselection,theroutinesreturn
False.
XmTextCopyLink()andXmTextFieldCopyLink()interfacewiththeUniformTransferModelbyindirectlyinvokingXmNconvertCallback
proceduresforthewidget.TheTextwidgetitselfdoesnotcopylinks:convertprocedureswhichtheprogrammerprovidesareresponsibleforcopyingthelinktothe
clipboard.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page481

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
XmTextCopyLink()andXmTextFieldCopyLink()copylinkstothetextthatisselectedinaTextorTextFieldwidgetandplaceitontheclipboard.If
youarecallingoneoftheseroutinesfromacallbackroutine,youprobablywanttousethetimefieldfromtheeventpointerinthecallbackstructureasthevalue
ofthetimeparameter.YoucanalsousethevalueCurrentTime,butthereisnoguaranteethatusingthistimepreventsraceconditionsbetweenmultipleclients
thataretryingtousetheclipboard.
Example
ThefollowingcallbackroutinefortheitemsonanEditmenu(Cut,Copy,Link,PastePasteLink,andClear)showstheuseofXmTextCopyLink():
Widgettext_w,status

voidcut_paste(widget,client_data,call_data)
Widgetwidget
XtPointerclient_data
XtPointercall_data
{
intnum=(int)client_data
XmAnyCallbackStruct*cbs=(XmAnyCallbackStruct*)call_data
Booleanresult=True

switch(num){
case0:
result=XmTextCut(text_w,cbs>event>xbutton.time)
break
case1:
result=XmTextCopy(text_w,cbs>event>xbutton.time)
break
case2:
result=XmTextCopyLink(text_w,cbs>event>xbutton.time)
break
case3:
result=XmTextPaste(text_w)
break
case4:
result=XmTextPasteLink(text_w)
break
case5:
XmTextClearSelection(text_w,cbs>event>xbutton.time)
break
}

if(result==False)
XmTextSetString(status,"Thereisnoselection.")

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page482
else
XmTextSetString(status,NULL)
}

SeeAlso
XmTextClearSelection(1),XmTextCopy(1),XmTextCut(1),XmTextGetSelection(1),XmTextGetSelectionWcs
(1),XmTextPaste(1),XmTextPasteLink(1),XmTextRemove(1),XmTextSetSelection(1),XmText(2),
XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page483

XmTextCut
XmText
Name
XmTextCut,XmTextFieldCutcopytheprimaryselectiontotheclipboardandremovetheselectedtext.
Synopsis
#include<Xm/Text.h>
BooleanXmTextCut(widget,time)

#include<Xm/TextF.h>
BooleanXmTextFieldCut(widget,time)

Widgetwidget
Timetime

Inputs
widget

SpecifiestheTextorTextFieldwidget.

time

Specifiesthetimeoftheeventthatcausedtherequest.

Returns
TrueonsuccessorFalseotherwise.
Description
XmTextCut()andXmTextFieldCut()copytheprimaryselectioninthespecifiedwidgettotheclipboardandthendeletetheprimaryselection.
XmTextCut()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldCut()onlyworksforaTextFieldwidget.Foreach
routine,timespecifiestheservertimeoftheeventthatcausedtherequesttocuttheselection.BothroutinesreturnTrueifsuccessful.Ifthewidgetisnot
editable,iftheprimaryselectionisNULLorifitisnotownedbythespecifiedwidget,orifthefunctioncannotobtainownershipoftheclipboardselection,the
routinesreturnFalse.
XmTextCut()andXmTextFieldCut()alsoinvokethecallbackroutinesfortheXmNvalueChangedCallback,the
XmNmodifyVerifyCallback,andtheXmNmodifyVerifyCallbackWcscallbacksforthespecifiedwidget.Ifbothverificationcallbacksare
present,theXmNmodifyVerifyCallbackproceduresareinvokedfirstandtheresultsarepassedtotheXmNmodifyVerifyCallbackWcs
procedures.
InMotif2.0andlater,XmTextCut()interfaceswiththeUniformTransferModelbyindirectlyinvokingtheXmNconvertCallbackproceduresofthe
widget,firsttotransfertheselectiontotheclipboardandthentodeletetheselection.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page484

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
XmTextCut()andXmTextFieldCut()copythetextthatisselectedinaTextorTextFieldwidget,placeitontheclipboard,andthendeletetheselected
text.Ifyouarecallingoneoftheseroutinesfromacallbackroutine,youprobablywanttousethetimefieldfromtheeventpointerinthecallbackstructureasthe
valueofthetimeparameter.YoucanalsousethevalueCurrentTime,butthereisnoguaranteethatusingthistimepreventsraceconditionsbetweenmultiple
clientsthataretryingtousetheclipboard.
Example
ThefollowingcallbackroutinefortheitemsonanEditmenu(Cut,Copy,Link,Paste,andPasteLink,Clear)showstheuseofXmTextCut():
Widgettext_w,status

voidcut_paste(widget,client_data,call_data)
Widgetwidget
XtPointerclient_data
XtPointercall_data
{
intnum=(int)client_data
XmAnyCallbackStruct*cbs=(XmAnyCallbackStruct*)call_data
Booleanresult=True

switch(num){
case0:
result=XmTextCut(text_w,cbs>event>xbutton.time)
break
case1:
result=XmTextCopy(text_w,cbs>event>xbutton.time)
break
case2:
result=XmTextCopyLink(text_w,cbs>event>xbutton.time)
break
case3:
result=XmTextPaste(text_w)
break
case4:
result=XmTextPasteLink(text_w)
break
case5:
XmTextClearSelection(text_w,cbs>event>xbutton.time)
break
}

if(result==False)
XmTextSetString(status,"Thereisnoselection.")

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page485
else
XmTextSetString(status,NULL)
}

SeeAlso
XmTextClearSelection(1),XmTextCopy(1),XmTextCopyLink(1),XmTextGetSelection(1),
XmTextGetSelectionWcs(1),XmTextPaste(1),XmTextPasteLink(1),XmTextRemove(1),XmTextSetSelection
(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page486

XmTextDisableRedisplay
XmText
Name
XmTextDisableRedisplaypreventvisualupdateofaTextwidget.
Synopsis
#include<Xm/Text.h>
voidXmTextDisableRedisplay(widget)
Widgetwidget

Inputs
widget

SpecifiestheTextwidget.

Availability
Motif1.2andlater.
Description
XmTextDisableRedisplay()temporarilyinhibitsvisualupdateofthespecifiedTextwidget.Evenifthevisualattributesofthewidgethavebeen
modified,theappearanceremainsunchangeduntilXmTextEnableRedisplay()iscalled.
Usage
XmTextDisableRedisplay()andXmTextEnableRedisplay()allowanapplicationtomakemultiplechangestoaTextwidgetwithoutimmediate
visualupdates.Whenmultiplechangesaremadewithredisplayenabled,visualflashingoftenoccurs.Theseroutineseliminatethisproblem.
SeeAlso
XmTextEnableRedisplay(1),XmUpdateDisplay(1),XmText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page487

XmTextEnableRedisplay
XmText
Name
XmTextEnableRedisplayallowvisualupdateofaTextwidget.
Synopsis
#include<Xm/Text.h>
voidXmTextEnableRedisplay(widget)
Widgetwidget

Inputs
widget

SpecifiestheTextwidget.

Availability
Motif1.2andlater.
Description
XmTextEnableRedisplay()allowsthespecifiedTextwidgettoupdateitsvisualappearance.Thisroutineisusedinconjunctionwith
XmTextDisableRedisplay(),whichpreventsvisualupdateoftheTextwidget.WhenXmTextEnableRedisplay()iscalled,thewidgetmodifies
itsvisualstoreflectallofthechangessincethelastcalltoXmTextDisableRedisplay().Allfuturechangesthataffectthevisualappearancearedisplayed
immediately.
Usage
XmTextDisableRedisplay()andXmTextEnableRedisplay()allowanapplicationtomakemultiplechangestoaTextwidgetwithoutimmediate
visualupdates.Whenmultiplechangesaremadewithredisplayenabled,visualflashingoftenoccurs.Theseroutineseliminatethisproblem.
SeeAlso
XmTextDisableRedisplay(1),XmUpdateDisplay(1),XmText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page488

XmTextFindString
XmText
Name
XmTextFindStringfindthebeginningpositionofatextstring.
Synopsis
#include<Xm/Xm.h>
BooleanXmTextFindString(widget,start,string,direction,position)
Widgetwidget
XmTextPositionstart
char*string
XmTextDirectiondirection
XmTextPosition*position

Inputs
widget

SpecifiestheTextwidget.

start

Specifiesthepositionfromwhichthesearchbegins.

string

Specifiesthestringforwhichtosearch.

direction

Specifiesthedirectionofthesearch.PasseitherXmTEXT_FORWARD
orXmTEXT_BACKWARD.

Outputs
position

Returnsthepositionwherethesearchstringstarts.

Returns
TrueifthestringisfoundorFalseotherwise.
Availability
Motif1.2andlater.
Description
XmTextFindString()findsthebeginningpositionofthespecifiedstringintheTextwidget.Dependingonthevalueofdirection,theroutine
searchesforwardorbackwardfromthespecifiedstartpositionforthefirstoccurrenceofstring.IfXmTextFindString()findsamatch,itreturns
Trueandpositionspecifiesthepositionofthefirstcharacterofthestringasthenumberofcharactersfromthebeginningofthetext,wherethefirstcharacter
positionis0(zero).Ifamatchisnotfound,theroutinereturnsFalseandthevalueofpositionisundefined.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page489

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
XmTextFindString()isaconvenienceroutinethatsearchesthetextinaTextwidgetforaparticularstring.Withouttheroutine,thesearchmustbeperformed
usingthestandardstringmanipulationroutines.
Example
ThefollowingroutineshowstheuseofXmTextFindString()tolocateastringinatexteditingwindow.Thesearchstringisspecifiedbytheuserinasingle
lineTextwidget:
Widgettext_w,search_w

voidsearch_text()
{
char*search_pat
XmTextPositionpos,search_pos
Booleanfound=False

if(!(search_pat=XmTextGetString(search_w))||!*search_pat){
XtFree(search_pat)
return
}

/*findnextoccurrencefromcurrentpositionwrapifnecessary*/
pos=XmTextGetCursorPosition(text_w)
found=XmTextFindString(text_w,pos,search_pat,
XmTEXT_FORWARD,&search_pos)
if(!found)
found=XmTextFindString(text_w,0,search_pat,
XmTEXT_FORWARD,&search_pos)

if(found)
XmTextSetInsertionPosition(text_w,search_pos)
XtFree(search_pat)
}

SeeAlso
XmTextFindStringWcs(1),XmTextGetSubstring(1),XmTextGetSubstringWcs(1),XmText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page490

XmTextFindStringWcs
XmText
Name
XmTextFindStringWcsfindthebeginningpositionofawidecharacterstring.
Synopsis
#include<Xm/Text.h>
BooleanXmTextFindStringWcs(widget,start,wcstring,direction,
position)
Widgetwidget
XmTextPositionstart
wchar_t*wcstring
XmTextDirectiondirection
XmTextPosition*position

Inputs
widget

SpecifiestheTextwidget.

start

Specifiesthepositionfromwhichthesearchbegins.

wcstring

Specifiesthewidecharacterstringforwhichtosearch.

direction

Specifiesthedirectionofthesearch.Passeither
XmTEXT_FORWARDorXmTEXT_BACKWARD.

Outputs
position

Returnsthepositionwherethesearchstringstarts.

Returns
TrueifthestringisfoundorFalseotherwise.
Availability
Motif1.2andlater.
Description
XmTextFindStringWcs()findsthebeginningpositionofthespecifiedwidecharacterwcstringintheTextwidget.Dependingonthevalueof
direction,theroutinesearchesforwardorbackwardfromthespecifiedstartpositionforthefirstoccurrenceofwcstring.If
XmTextFindStringWcs()findsamatch,itreturnsTrueandpositionspecifiesthepositionofthefirstcharacterofthestringasthenumberof
charactersfromthebeginningofthetext,wherethefirstcharacterpositionis0(zero).Ifamatchisnotfound,theroutinereturnsFalseandthevalueof
positionisundefined.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page491

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
InMotif1.2andlater,theTextwidgetsupportswidecharacterstrings.XmTextFindStringWcs()isaconvenienceroutinethatsearchesthetextinaText
widgetforaparticularwidecharacterstring.Theroutineconvertsthewidecharacterstringintoamultibytestringandthenperformsthesearch.Withouttheroutine,
thesearchmustbeperformedusingthestandardstringmanipulationroutines.
SeeAlso
XmTextFindString(1),XmTextGetSubstring(1),XmTextGetSubstringWcs(1),XmText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page492

XmTextGetBaseline
XmText
Name
XmTextGetBaseline,XmTextFieldGetBaselinegetthepositionofthebaseline.
Synopsis
#include<Xm/Text.h>
intXmTextGetBaseline(widget)

#include<Xm/TextF.h>
intXmTextFieldGetBaseline(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
Thebaselineposition.
Description
XmTextGetBaseline()returnstheycoordinateofthebaselineofthefirstlineoftextinthespecifiedTextwidget,while
XmTextFieldGetBaseline()returnstheycoordinateofthebaselineforthetextinthespecifiedTextFieldwidget.XmTextGetBaseline()
workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldGetBaseline()onlyworksforaTextFieldwidget.Foreachroutine,the
returnedvalueisrelativetothetopofthewidgetanditaccountsforthemarginheight,shadowthickness,highlightthickness,andfontascentofthefirstfontinthe
fontlist.
Usage
XmTextGetBaseline()andXmTextFieldGetBaseline()provideinformationthatisusefulwhenyouarelayingoutanapplicationandtryingto
aligndifferentcomponents.
SeeAlso
XmTextGetCenterline(1),XmWidgetGetBaselines(1),XmWidgetGetDisplayRect(1),XmText(2),XmTextField
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page493

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Name
XmTextGetCenterlinegettheheightofverticaltext.
Synopsis
#include<Xm/Text.h>
intXmTextGetCenterline(widget)
Widgetwidget

Inputs
widget

SpecifiestheTextwidget.

Returns
Thecenterlinexposition.
Availability
Motif2.1andlater.
Description
XmTextGetCenterline()calculatesthexcoordinateofthecenterlineinaTextwidgetcontainingverticaltext.IfthelayoutdirectionoftheTextwidgetdoes
notmatchXmTOP_TO_BOTTOM_LEFT_TO_RIGHT,thefunctionreturnszero.Otherwise,theprocedurecalculatesthexpositionofthecenterlinerelativetothe
leftoftheText.Themarginwidth,shadowthickness,andthewidthofthefontaretakenintoconsiderationwhenperformingthecalculation.
Usage
XmTextGetCenterline()providesinformationthatisusefulwhenyouarelayingoutanapplicationandtryingtoaligndifferentcomponents.
SeeAlso
XmTextGetBaseline(1),XmWidgetGetCenterlines(1),XmWidgetGetDisplayRect(1),XmText(2),XmTextField
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page494

XmTextGetCursorPosition
XmText
Name
XmTextGetCursorPosition,XmTextFieldGetCursorPositiongetthepositionoftheinsertioncursor.
Synopsis
#include<Xm/Text.h>
XmTextPositionXmTextGetCursorPosition(widget)

#include<Xm/TextF.h>
XmTextPositionXmTextFieldGetCursorPosition(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
ThevalueoftheXmNcursorPositionresource.
Description
XmTextGetCursorPosition()andXmTextFieldGetCursorPosition()returnthevalueoftheXmNcursorPositionresourceforthe
specifiedwidget.XmTextGetCursorPosition()workswhenwidgetisaTextwidgetoraTextFieldwidget,while
XmTextFieldGetCursorPosition()onlyworksforaTextFieldwidget.Foreachroutine,thevaluespecifiesthelocationoftheinsertioncursorasthe
numberofcharactersfromthebeginningofthetext,wherethefirstcharacterpositionis0(zero).
Usage
XmTextGetCursorPosition()andXmTextFieldGetCursorPosition()areconvenienceroutinesthatreturnthevalueofthe
XmNcursorPositionresourceforaTextorTextFieldwidget.CallingoneoftheroutinesisequivalenttocallingXtGetValues()fortheresource,
althoughtheroutinesaccessthevaluethroughthewidgetinstancestructuresratherthanthroughXtGetValues().
SeeAlso
XmTextGetInsertionPosition(1),XmTextSetCursorPosition(1),XmTextSetInsertionPosition(1),
XmTextShowPosition(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page495

XmTextGetEditable
XmText
Name
XmTextGetEditable,XmTextFieldGetEditablegettheeditpermissionstate.
Synopsis
#include<Xm/Text.h>
BooleanXmTextGetEditable(widget)

#include<Xm/TextF.h>
BooleanXmTextFieldGetEditable(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
ThestateoftheXmNeditableresource.
Description
XmTextGetEditable()andXmTextFieldGetEditable()returnthevalueoftheXmNeditableresourceforthespecifiedTextorTextField
widget.XmTextGetEditable()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldGetEditable()onlyworks
foraTextFieldwidget.
Usage
Bydefault,theXmNeditableresourceisTrue,whichmeansthatausercaneditthetextstring.SettingtheresourcetoFalsemakesatextareareadonly.
XmTextGetEditable()andXmTextFieldGetEditable()areconvenienceroutinesthatreturnthevalueoftheXmNeditableresourcefora
TextorTextFieldwidget.CallingoneoftheroutinesisequivalenttocallingXtGetValues()fortheresource,althoughtheroutinesaccessthevaluethroughthe
widgetinstancestructuresratherthanthroughXtGetValues().
SeeAlso
XmTextSetEditable(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page496

XmTextGetInsertionPosition
XmText
Name
XmTextGetInsertionPosition,XmTextFieldGetInsertionPositiongetthepositionoftheinsertioncursor.
Synopsis
#include<Xm/Text.h>
XmTextPositionXmTextGetInsertionPosition(widget)

#include<Xm/TextF.h>
XmTextPositionXmTextFieldGetInsertionPosition(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
ThevalueoftheXmNcursorPositionresource.
Description
ThefunctionsXmTextGetInsertionPosition()andXmTextFieldGetInsertionPosition()returnthevalueofthe
XmNcursorPositionresourceforthespecifiedwidget.XmTextGetInsertionPosition()workswhenwidgetisaTextwidgetora
TextFieldwidget,whileXmTextFieldGetInsertionPosition()onlyworksforaTextFieldwidget.Foreachroutine,thevaluespecifiesthelocationof
theinsertioncursorasthenumberofcharactersfromthebeginningofthetext,wherethefirstcharacterpositionis0(zero).
Usage
Thefunctions,XmTextGetInsertionPosition()andXmTextFieldGetInsertionPosition(),areconvenienceroutinesthatreturnthe
valueoftheXmNcursorPositionresourceforaTextorTextFieldwidget.CallingoneoftheroutinesisequivalenttocallingXtGetValues()forthe
resource,althoughtheroutinesaccessthevaluethroughthewidgetinstancestructuresratherthanthroughXtGetValues().
SeeAlso
XmTextGetCursorPosition(1),XmTextSetInsertionPosition(1),XmTextSetCursorPosition(1),
XmTextShowPosition(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page497

XmTextGetLastPosition
XmText
Name
XmTextGetLastPosition,XmTextFieldGetLastPositiongetthepositionofthelastcharacteroftext.
Synopsis
#include<Xm/Text.h>
XmTextPositionXmTextGetLastPosition(widget)

#include<Xm/TextF.h>
XmTextPositionXmTextFieldGetLastPosition(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
Thepositionofthelasttextcharacter.
Description
XmTextGetLastPosition()andXmTextFieldGetLastPosition()returnthepositionofthelastcharacteroftextinthespecifiedwidget.
XmTextGetLastPosition()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldGetLastPosition()onlyworks
foraTextFieldwidget.Foreachroutine,thereturnedvaluespecifiesthepositionasthenumberofcharactersfromthebeginningofthetext,wherethefirstcharacter
positionis0(zero).
Usage
XmTextGetLastPosition()andXmTextFieldGetLastPosition()areconvenienceroutinesthatreturnthenumberofcharactersoftextina
TextorTextFieldwidget.
SeeAlso
XmTextGetCursorPosition(1),XmTextGetInsertionPosition(1),XmTextGetTopCharacter(1),XmTextScroll
(1),XmTextSetCursorPosition(1),XmTextSetInsertionPosition(1),XmTextSetTopCharacter(1),
XmTextShowPosition(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page498

XmTextGetMaxLength
XmText
Name
XmTextGetMaxLength,XmTextFieldGetMaxLengthgetthemaximumpossiblelengthofatextstring.
Synopsis
#include<Xm/Text.h>
intXmTextGetMaxLength(widget)

#include<Xm/TextF.h>
intXmTextFieldGetMaxLength(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
ThevalueoftheXmNmaxLengthresource.
Description
XmTextGetMaxLength()andXmTextFieldGetMaxLength()returnthevalueoftheXmNmaxLengthresourceforthespecifiedTextor
TextFieldwidget.XmTextGetMaxLength()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldGetMaxLength()
onlyworksforaTextFieldwidget.Foreachroutine,thereturnedvaluespecifiesthemaximumallowablelengthofatextstringthatausercanenterfromthekeyboard.
Usage
XmTextGetMaxLength()andXmTextFieldGetMaxLength()areconvenienceroutinesthatreturnthevalueoftheXmNmaxLengthresourcefor
aTextorTextFieldwidget.CallingoneoftheroutinesisequivalenttocallingXtGetValues()fortheresource,althoughtheroutinesaccessthevaluethroughthe
widgetinstancestructuresratherthanthroughXtGetValues().
SeeAlso
XmTextSetMaxLength(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page499

XmTextGetSelection
XmText
Name
XmTextGetSelection,XmTextFieldGetSelectiongetthevalueoftheprimaryselection.
Synopsis
#include<Xm/Text.h>
char*XmTextGetSelection(widget)

#include<Xm/TextF.h>
char*XmTextFieldGetSelection(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
Astringcontainingtheprimaryselection.
Description
XmTextGetSelection()andXmTextFieldGetSelection()returnapointertoacharacterstringcontainingtheprimaryselectioninthespecified
widget.XmTextGetSelection()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldGetSelection()only
worksforaTextFieldwidget.Foreachroutine,ifnotextisselectedinthewidget,thereturnedvalueisNULL.Storageforthereturnedstringisallocatedbythe
routineandshouldbefreedbycallingXtFree().Managementoftheallocatedmemoryistheresponsibilityoftheapplication.
Usage
XmTextGetSelection()andXmTextFieldGetSelection()provideaconvenientwaytogetthecurrentselectionfromaTextorTextField
widget.
SeeAlso
XmTextGetSelectionPosition(1),XmTextGetSelectionWcs(1),XmTextSetSelection(1),XmText(2),
XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page500

XmTextGetSelectionPosition
XmText
Name
XmTextGetSelectionPosition,XmTextFieldGetSelectionPositiongetthepositionoftheprimaryselection.
Synopsis
#include<Xm/Text.h>
BooleanXmTextGetSelectionPosition(widget,left,right)

#include<Xm/TextF.h>
BooleanXmTextFieldGetSelectionPosition(widget,left,right)

Widgetwidget
XmTextPosition*left
XmTextPosition*right

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Outputs
left

Returnsthepositionoftheleftedgeoftheprimaryselection.

right

Returnsthepositionoftherightedgeoftheprimaryselection.

Returns
TrueifwidgetownstheprimaryselectionorFalseotherwise.
Description
XmTextGetSelectionPosition()andXmTextFieldGetSelectionPosition()returntheleftandrightboundariesoftheprimaryselection
forthespecifiedwidget.XmTextGetSelectionPosition()workswhenwidgetisaTextwidgetoraTextFieldwidget,while
XmTextFieldGetSelectionPosition()onlyworksforaTextFieldwidget.Eachboundaryvaluespecifiesthepositionasthenumberofcharacters
fromthebeginningofthetext,wherethefirstcharacterpositionis0(zero).EachroutinereturnsTrueifthespecifiedTextorTextFieldwidgetownstheprimary
selectionotherwise,theroutinereturnsFalseandthevaluesofleftandrightareundefined.
Usage
XmTextGetSelectionPosition()andXmTextFieldGetSelectionPosition()provideaconvenientwaytogetthepositionofthecurrent
selection.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page501

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmTextGetSelection(1),XmTextGetSelectionWcs(1),XmTextSetSelection(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page502

XmTextGetSelectionWcs
XmText
Name
XmTextGetSelectionWcs,XmTextFieldGetSelectionWcsgetthewidecharactervalueoftheprimaryselection.
Synopsis
#include<Xm/Text.h>
wchar_t*XmTextGetSelectionWcs(widget)

#include<Xm/TextF.h>
wchar_t*XmTextFieldGetSelectionWcs(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
Awidecharacterstringcontainingtheprimaryselection.
Availability
Motif1.2andlater.
Description
XmTextGetSelectionWcs()andXmTextFieldGetSelectionWcs()returnapointertoawidecharacterstringcontainingtheprimaryselection
inthespecifiedwidget.XmTextGetSelectionWcs()workswhenwidgetisaTextwidgetoraTextFieldwidget,while
XmTextFieldGetSelectionWcs()onlyworksforaTextFieldwidget.Foreachroutine,ifnotextisselectedinthewidget,thereturnedvalueisNULL.
StorageforthereturnedwidecharacterstringisallocatedbytheroutineandshouldbefreedbycallingXtFree().Managementoftheallocatedmemoryisthe
responsibilityoftheapplication.
Usage
InMotif1.2andlater,theTextandTextFieldwidgetssupportwidecharacterstrings.XmTextGetSelectionWcs()and
XmTextFieldGetSelectionWcs()provideaconvenientwaytogetthecurrentselectioninwidecharacterformatfromaTextorTextFieldwidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page503

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmTextGetSelection(1),XmTextGetSelectionPosition(1),XmTextSetSelection(1),XmText(2),XmTextField
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page504

XmTextGetSource
XmText
Name
XmTextGetSourcegetthetextsource.
Synopsis
#include<Xm/Text.h>
XmTextSourceXmTextGetSource(widget)
Widgetwidget

Inputs
widget

SpecifiestheTextwidget.

Returns
ThesourceoftheTextwidget.
Description
XmTextGetSource()returnsthesourceofthespecifiedTextwidget.EveryTextwidgethasanXmTextSourcedatastructureassociatedwithitthat
functionsasthetextsourceandsink.
Usage
Multipletextwidgetscansharethesametextsource,whichmeansthateditinginoneofthewidgetsisreflectedinalloftheothers.XmTextGetSource()
retrievesthesourceforawidgetthissourcecanthenbeusedtosetthesourceofanotherTextwidgetusingXmTextSetSource().
XmTextGetSource()isaconvenienceroutinethatreturnsthevalueoftheXmNsourceresourcefortheTextwidget.Callingtheroutineisequivalentto
callingXtGetValues()fortheresource,althoughtheroutineaccessesthevaluethroughthewidgetinstancestructuresratherthanthroughXtGetValues().
SeeAlso
XmTextSetSource(1),XmText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page505

XmTextGetString
XmText
Name
XmTextGetString,XmTextFieldGetStringgetthetextstring.
Synopsis
#include<Xm/Text.h>
char*XmTextGetString(widget)

#include<Xm/TextF.h>
char*XmTextFieldGetString(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
AstringcontainingthevalueoftheTextorTextFieldwidget.
Description
XmTextGetString()andXmTextFieldGetString()returnapointertoacharacterstringcontainingthevalueofthespecifiedwidget.
XmTextGetString()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldGetString()onlyworksforaTextField
widget.Foreachroutine,ifthestringhasalengthof0(zero),thereturnedvalueistheemptystring.Storageforthereturnedstringisallocatedbytheroutineand
shouldbefreedbycallingXtFree().Managementoftheallocatedmemoryistheresponsibilityoftheapplication.
Usage
XmTextGetString()andXmTextFieldGetString()areconvenienceroutinesthatreturnthevalueoftheXmNvalueresourceforaTextor
TextFieldwidget.CallingoneoftheroutinesisequivalenttocallingXtGetValues()fortheresource,althoughtheroutinesaccessthevaluethroughthewidget
instancestructuresratherthanthroughXtGetValues().
InMotif1.2andlater,theTextandTextFieldwidgetssupportwidecharacterstrings.TheresourceXmNvalueWcscanbeusedtosetthevalueofaTextor
TextFieldwidgettoawidecharacterstring.EvenifyousettheXmNvalueWcsresource,youcanstilluseXmTextGetString()or
XmTextFieldGetString()toretrievethevalueofthewidget,sincethevalueisstoredinternallyasamultibytestring.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page506

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
ThefollowingroutineshowstheuseofXmTextGetString()toretrievethetextfromoneTextwidgetandusethetexttosearchforthestringinanotherText
widget:
Widgettext_w,search_w

voidsearch_text()
{
char*search_pat
XmTextPositionpos,search_pos
Booleanfound=False

if(!(search_pat=XmTextGetString(search_w))||!*search_pat){
XtFree(search_pat)
return
}

/*findnextoccurrencefromcurrentpositionwrapifnecessary*/
pos=XmTextGetCursorPosition(text_w)
found=XmTextFindString(text_w,pos,search_pat,
XmTEXT_FORWARD,&search_pos)
if(!found)
found=XmTextFindString(text_w,0,searchpat,
XmTEXT_FORWARD,&search_pos)

if(found)
XmTextSetInsertionPosition(text_w,search_pos)
XtFree(search_pat)
}

SeeAlso
XmTextGetStringWcs(1),XmTextGetSubstring(1),XmTextGetSubstringWcs(1),XmTextSetString(1),
XmTextSetStringWcs(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page507

XmTextGetStringWcs
XmText
Name
XmTextGetStringWcs,XmTextFieldGetStringWcsgetthewidecharactertextstring.
Synopsis
#include<Xm/Text.h>
wchar_t*XmTextGetStringWcs(widget)

#include<Xm/TextF.h>
wchar_t*XmTextFieldGetStringWcs(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
AwidecharacterstringcontainingthevalueoftheTextorTextFieldwidget.
Availability
Motif1.2andlater.
Description
XmTextGetStringWcs()andXmTextFieldGetStringWcs()returnapointertoawidecharacterstringcontainingthevalueofthespecified
widget.XmTextGetStringWcs()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldGetStringWcs()only
worksforaTextFieldwidget.Foreachroutine,ifthestringhasalengthof0(zero),thereturnedvalueistheemptystring.Storageforthereturnedwidecharacter
stringisallocatedbytheroutineandshouldbefreedbycallingXtFree().Managementoftheallocatedmemoryistheresponsibilityoftheapplication.
Usage
XmTextGetStringWcs()andXmTextFieldGetStringWcs()areconvenienceroutinesthatreturnthevalueoftheXmNvalueWcsresourcefora
TextorTextFieldwidget.CallingoneoftheroutinesisequivalenttocallingXtGetValues()fortheresource,althoughtheroutinesaccessthevaluethroughthe
widgetinstancestructuresratherthanthroughXtGetValues().
InMotif1.2andlater,theTextandTextFieldwidgetssupportwidecharacterstrings.TheresourceXmNvalueWcscanbeusedtosetthevalueofaTextor
TextFieldwidget

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page508

toawidecharacterstring.EvenifyouusetheXmNvalueresourcetosetthevalueofawidget,youcanstilluseXmTextGetStringWcs()or
XmTextFieldGetStringWcs()toretrievethevalueofthewidget,sincethevaluecanbeconvertedtoawidecharacterstring.
SeeAlso
XmTextGetString(1),XmTextGetSubstring(1),XmTextGetSubstringWcs(1),XmTextSetString(1),
XmTextSetStringWcs(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page509

XmTextGetSubstring
XmText
Name
XmTextGetSubstring,XmTextFieldGetSubstringgetacopyofpartofthetextstring.
Synopsis
#include<Xm/Text.h>
intXmTextGetSubstring(widget,start,num_chars,buffer_size,buffer)

#include<Xm/TextF.h>
intXmTextFieldGetSubstring(widget,start,num_chars,buffer_size,
buffer)

Widgetwidget
XmTextPositionstart
intnum_chars
intbuffer_size
char*buffer

Inputs
widget

SpecifiestheTextorTextFieldwidget.

start

Specifiesthestartingcharacterpositionfromwhichdataiscopied.

num_chars

Specifiesthenumberofcharactersthatarecopied.

buffer_size

Specifiesthesizeofbuffer.

buffer

Specifiesthecharacterbufferwherethecopyisstored.

Returns
XmCOPY_SUCCEEDEDonsuccess,XmCOPY_TRUNCATEDiffewerthannum_charsarecopied,orXmCOPY_FAILEDonfailure.
Availability
Motif1.2andlater.
Description
XmTextGetSubstring()andXmTextFieldGetSubstring()getacopyofpartoftheinternaltextbufferforthespecifiedwidget.
XmTextGetString()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldGetString()onlyworksforaTextField
widget.Theroutinescopynum_charscharactersstartingatstartposition,whichspecifiesthepositionasthenumberofcharactersfromthebeginningofthe
text,wherethefirstcharacterpositionis0

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page510

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(zero).ThecharactersarecopiedintotheprovidedbufferandareNULLterminated.
XmTextGetSubstring()andXmTextFieldGetSubstring()returnXmCOPY_SUCCEEDEDonsuccess.Ifthespecifiednum_charsdoesnot
fitintheprovidedbuffer,theroutinesreturnXmCOPY_TRUNCATED.Inthiscase,buffercontainsasmanycharactersaswouldfitplusaNULLterminator.
Ifeitheroftheroutinesfailstomakethecopy,itreturnsXmCOPY_FAILEDandthecontentsofbufferareundefined.
Usage
XmTextGetSubstring()andXmTextFieldGetSubstring()provideaconvenientwaytoretrieveaportionofthetextstringinaTextorTextField
widget.TheroutinesreturnthespecifiedpartoftheXmNvalueresourceforthewidget.
InMotif1.2andlater,theTextandTextFieldwidgetssupportwidecharacterstrings.TheresourceXmNvalueWcscanbeusedtosetthevalueofaTextor
TextFieldwidgettoawidecharacterstring.EvenifyousettheXmNvalueWcsresource,youcanstilluseXmTextGetSubstring()or
XmTextFieldGetSubstring()toretrievepartofthevalueofthewidget,sincethevalueisstoredinternallyasamultibytestring.
Thenecessarybuffer_sizeforXmTextGetSubstring()andXmTextFieldGetSubstring()dependsonthemaximumnumberofbytesper
characterforthecurrentlocale.ThisinformationisstoredinMB_CUR_MAX,amacrodefinedinstdlib.h.Thebufferneedstobelargeenoughtostorethe
substringandaNULLterminator.Youcanusethefollowingequationtocalculatethenecessarybuffer_size:
buffer_size=(num_chars*MB_CUR_MAX)+1

SeeAlso
XmTextGetString(1),XmTextGetStringWcs(1),XmTextGetSubstringWcs(1),XmTextSetString(1),
XmTextSetStringWcs(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page511

XmTextGetSubstringWcs
XmText
Name
XmTextGetSubstringWcs,XmTextFieldGetSubstringWcsgetacopyofpartofthewidecharactertextstring.
Synopsis
#include<Xm/Text.h>
intXmTextGetSubstringWcs(widget,start,num_chars,buffer_size,
buffer)

#include<Xm/TextF.h>
intXmTextFieldGetSubstringWcs(widget,start,num_chars,buffer_size,
buffer)

Widgetwidget
XmTextPositionstart
intnum_chars
intbuffer_size
wchar_t*buffer

Inputs
widget

SpecifiestheTextorTextFieldwidget.

start

Specifiesthestartingcharacterpositionfromwhichdatais
copied.

num_chars

Specifiesthenumberofwidecharactersthatarecopied.

buffer_size

Specifiesthesizeofbuffer.

buffer

Specifiesthewidecharacterbufferwherethecopyisstored.

Returns
XmCOPY_SUCCEEDEDonsuccess,XmCOPY_TRUNCATEDiffewerthannum_charsarecopied,orXmCOPY_FAILEDonfailure.
Availability
Motif1.2andlater.
Description
XmTextGetSubstringWcs()andXmTextFieldGetSubstringWcs()getacopyofpartoftheinternalwidecharactertextbufferforthespecified
widget.XmTextGetSubstringWcs()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldGetSubstringWcs()
onlyworksforaTextFieldwidget.Theroutinescopynum_charswidecharactersstartingatstartposition,which

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page512

specifiesthepositionasthenumberofcharactersfromthebeginningofthetext,wherethefirstcharacterpositionis0(zero).Thewidecharactersarecopiedintothe
providedbufferandareNULLterminated.
XmTextGetSubstringWcs()andXmTextFieldGetSubstringWcs()returnXmCOPY_SUCCEEDEDonsuccess.Ifthespecified
num_charsdoesnotfitintheprovidedbuffer,theroutinesreturnXmCOPY_TRUNCATED.Inthiscase,buffercontainsasmanywidecharactersas
wouldfitplusaNULLterminator.Ifeitheroftheroutinesfailstomakethecopy,itreturnsXmCOPY_FAILEDandthecontentsofbufferareundefined.
Usage
XmTextGetSubstringWcs()andXmTextFieldGetSubstringWcs()provideaconvenientwaytoretrieveaportionofthewidecharactertext
stringinaTextorTextFieldwidget.TheroutinesreturnthespecifiedpartoftheXmNvalueWcsresourceforthewidget.
InMotif1.2andlater,theTextandTextFieldwidgetssupportwidecharacterstrings.TheresourceXmNvalueWcscanbeusedtosetthevalueofaTextor
TextFieldwidgettoawidecharacterstring.EvenifyouusetheXmNvalueresourcetosetthevalueofawidget,youcanstilluse
XmTextGetSubstringWcs()orXmTextFieldGetSubstringWcs()toretrievepartofthevalueofthewidget,sincethevaluecanbeconvertedto
awidecharacterstring.Thenecessarybuffer_sizeforXmTextGetSubstringWcs()andXmTextFieldGetSubstringWcs()is
num_chars+1.
SeeAlso
XmTextGetString(1),XmTextGetStringWcs(1),XmTextGetSubstring(1),XmTextSetString(1),
XmTextSetStringWcs(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page513

XmTextGetTopCharacter
XmText
Name
XmTextGetTopCharactergetthepositionofthefirstcharacteroftextthatisdisplayed.
Synopsis
#include<Xm/Text.h>
XmTextPositionXmTextGetTopCharacter(widget)
Widgetwidget

Inputs
widget

SpecifiestheTextwidget.

Returns
Thepositionofthefirstvisiblecharacter.
Description
XmTextGetTopCharacter()returnsthevalueoftheXmNtopCharacterresourceforthespecifiedTextwidget.Thereturnedvaluespecifiesthe
positionofthefirstvisiblecharacteroftextasthenumberofcharactersfromthebeginningofthetext,wherethefirstcharacterpositionin0(zero).
Usage
XmTextGetTopCharacter()isaconvenienceroutinethatreturnsthevalueoftheXmNtopCharacterresourceforaTextwidget.Callingtheroutinesis
equivalenttocallingXtGetValues()fortheresource,althoughtheroutinesaccessesthevaluethroughthewidgetinstancestructuresratherthanthrough
XtGetValues().
SeeAlso
XmTextGetCursorPosition(1),XmTextGetInsertionPosition(1),XmTextGetLastPosition(1),XmTextScroll
(1),XmTextSetCursorPosition(1),XmTextSetInsertionPosition(1),XmTextSetTopCharacter(1),
XmTextShowPosition(1),XmText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page514

XmTextInsert
XmText
Name
XmTextInsert,XmTextFieldInsertinsertastringintothetextstring.
Synopsis
#include<Xm/Text.h>
voidXmTextInsert(widget,position,value)

#include<Xm/TextF.h>
voidXmTextFieldInsert(widget,position,value)

Widgetwidget
XmTextPositionposition
char*string

Inputs
widget

SpecifiestheTextorTextFieldwidget.

position

Specifiesthepositionatwhichthestringisinserted.

string

Specifiesthestringtobeinserted.

Description
XmTextInsert()andXmTextFieldInsert()insertatextstringinthespecifiedTextorTextFieldwidget.XmTextInsert()workswhen
widgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldInsert()onlyworksforaTextFieldwidget.Thespecifiedstringisinsertedat
position,wherecharacterpositionsarenumberedsequentially,startingwith0(zero)atthebeginningofthetext.Toinsertastringafterthenthcharacter,usea
positionvalueofn.
XmTextInsert()andXmTextFieldInsert()alsoinvokethecallbackroutinesfortheXmNvalueChangedCallback,the
XmNmodifyVerifyCallback,andtheXmNmodifyVerifyCallbackWcscallbacksforthespecifiedwidget.Ifbothverificationcallbacksare
present,theXmNmodifyVerifyCallbackproceduresareinvokedfirstandtheresultsarepassedtotheXmNmodifyVerifyCallbackWcs
procedures.
Usage
XmTextInsert()andXmTextFieldInsert()provideaconvenientmeansofinsertingtextinaTextorTextFieldwidget.Theroutinesinserttextby
modifyingthevalueoftheXmNvalueresourceofthewidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page515

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
ThefollowingroutineshowstheuseofXmTextInsert()toinsertamessageintoastatusTextwidget:
Widgetstatus

voidinsert_text(message)
char*message
{
XmTextPositioncurpos

curpos=XmTextGetInsertionPosition(status)
XmTextInsert(status,curpos,message)

curpos=curpos+strlen(message)
XmTextShowPosition(status,curpos)
XmTextSetInsertionPosition(status,curpos)
}

SeeAlso
XmTextInsertWcs(1),XmTextReplace(1),XmTextReplaceWcs(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page516

XmTextInsertWcs
XmText
Name
XmTextInsertWcs,XmTextFieldInsertWcsinsertawidecharacterstringintothetextstring.
Synopsis
#include<Xm/Text.h>
voidXmTextInsert(widget,position,wcstring)

#include<Xm/TextF.h>
voidXmTextFieldInsertWcs(widget,position,wcstring)

Widgetwidget
XmTextPositionposition
wchar_t*wcstring

Inputs
widget

SpecifiestheTextorTextFieldwidget.

position

Specifiesthepositionatwhichthestringisinserted.

wcstring

Specifiesthewidecharacterstringtobeinserted.

Availability
Motif1.2andlater.
Description
XmTextInsertWcs()andXmTextFieldInsertWcs()insertawidecharactertextstringinthespecifiedwidget.XmTextInsertWcs()
workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldInsertWcs()onlyworksforaTextFieldwidget.Thespecifiedstring
isinsertedatposition,wherecharacterpositionsarenumberedsequentially,startingwith0(zero)atthebeginningofthetext.Toinsertastringafterthenth
character,useapositionvalueofn.
XmTextInsertWcs()andXmTextFieldInsertWcs()alsoinvokethecallbackroutinesfortheXmNvalueChangedCallback,the
XmNmodifyVerifyCallback,andtheXmNmodifyVerifyCallbackWcscallbacksforthespecifiedwidget.Ifbothverificationcallbacksare
present,theXmNmodifyVerifyCallbackproceduresareinvokedfirstandtheresultsarepassedtotheXmNmodifyVerifyCallbackWcs
procedures.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page517

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
InMotif1.2andlater,theTextandTextFieldwidgetssupportwidecharacterstrings.XmTextInsertWcs()andXmTextFieldInsertWcs()provide
aconvenientmeansofinsertingawidecharacterstringinaTextorTextFieldwidget.Theroutinesinserttextbyconvertingthewidecharacterstringtoamultibyte
stringandthenmodifyingthevalueoftheXmNvalueresourceofthewidget.
SeeAlso
XmTextInsert(1),XmTextReplace(1),XmTextReplaceWcs(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page518

XmTextPaste
XmText
Name
XmTextPaste,XmTextFieldPasteinserttheclipboardselection.
Synopsis
#include<Xm/Text.h>
BooleanXmTextPaste(widget)

#include<Xm/TextF.h>
BooleanXmTextFieldPaste(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
TrueonsuccessorFalseotherwise.
Description
XmTextPaste()andXmTextFieldPaste()inserttheclipboardselectionatthecurrentpositionoftheinsertioncursorinthespecifiedwidget.
XmTextPaste()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldPaste()onlyworksforaTextFieldwidget.Ifthe
insertioncursoriswithinthecurrentselectionandthevalueofXmNpendingDeleteisTrue,thecurrentselectionisreplacedbytheclipboardselection.Both
routinesreturnTrueifsuccessful.Ifthewidgetisnoteditableorifthefunctioncannotobtainownershipoftheclipboardselection,theroutinesreturnFalse.
InMotif2.0andlater,XmTextPaste()interfaceswiththeUniformTransferModelbyindirectlyinvokingtheXmNdestinationCallbackproceduresof
thewidget.
XmTextPaste()andXmTextFieldPaste()alsoinvokethecallbackroutinesforXmNvalueChangedCallback,
XmNmodifyVerifyCallback,andXmNmodifyVerifyCallbackWcsforthespecifiedwidget.Ifbothverificationcallbacksarepresent,the
XmNmodifyVerifyCallbackproceduresareinvokedfirstandtheresultsarepassedtotheXmNmodifyVerifyCallbackWcsprocedures.
Usage
XmTextPaste()andXmTextFieldPaste()getthecurrentselectionfromtheclipboardandinsertitatthelocationoftheinsertioncursorintheTextor
TextFieldwidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page519

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
ThefollowingcallbackroutinefortheitemsonanEditmenu(Cut,Copy,Link,Paste,PasteLink,andClear)showstheuseofXmTextPaste():
Widgettext_w,status

voidcut_paste(widget,client_data,call_data)
Widgetwidget
XtPointerclient_data
XtPointercall_data
{
intnum=(int)client_data
XmAnyCallbackStruct*cbs=(XmAnyCallbackStruct*)call_data
Booleanresult=True

switch(num){
case0:
result=XmTextCut(text_w,cbs>event>xbutton.time)
break
case1:
result=XmTextCopy(text_w,cbs>event>xbutton.time)
break
case2:
result=XmTextCopyLink(text_w,cbs>event>xbutton.time)
break
case3:
result=XmTextPaste(text_w)
break
case4:
result=XmTextPasteLink(text_w)
break
case5:
XmTextClearSelection(text_w,cbs>event>xbutton.time)
break
}

if(result==False)
XmTextSetString(status,"Thereisnoselection.")
else
XmTextSetString(status,NULL)
}

SeeAlso
XmTextCopy(1),XmTextCopyLink(1),XmTextCut(1),XmTextPasteLink(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page520

XmTextPasteLink
XmText
Name
XmTextPasteLink,XmTextFieldPasteLinkinserttheclipboardselection.
Synopsis
#include<Xm/Text.h>
BooleanXmTextPasteLink(widget)

#include<Xm/TextF.h>
BooleanXmTextFieldPasteLink(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
TrueonsuccessorFalseotherwise.
Availability
Motif2.0andlater.
Description
XmTextPasteLink()andXmTextFieldPasteLink()inserttheclipboardselectionatthecurrentpositionoftheinsertioncursorinthespecified
widget.XmTextPasteLink()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldPasteLink()onlyworksfora
TextFieldwidget.IftheinsertioncursoriswithinthecurrentselectionandthevalueofXmNpendingDeleteisTrue,thecurrentselectionisreplacedbythe
clipboardselection.BothroutinesreturnTrueifsuccessful.Ifthewidgetisnoteditableorifthefunctioncannotobtainownershipoftheclipboardselection,the
routinesreturnFalse.
XmTextPasteLink()andXmTextFieldPasteLink()interfacewiththeUniformTransferModelbyindirectlyinvokingthe
XmNdestinationCallbackproceduresofthewidget.TheTextwidgetitselfdoesnotcreatelinkstotheprimaryselection:destinationcallbacksprovidedby
theprogrammerareresponsibleforperforminganydatatransferrequired.
XmTextPasteLink()andXmTextFieldPasteLink()alsoinvokethecallbackroutinesfortheXmNvalueChangedCallback,the
XmNmodifyVerifyCallback,andtheXmNmodifyVerifyCallbackWcscallbacksforthespecifiedwidget.Ifbothverificationcallbacksare
present,theXmNmodifyVerifyCallbackprocedures

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page521

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

areinvokedfirstandtheresultsarepassedtotheXmNmodifyVerifyCallbackWcsprocedures.
Usage
XmTextPasteLink()andXmTextFieldPasteLink()getthecurrentselectionfromtheclipboardandinsertalinktoitatthelocationoftheinsertion
cursorintheTextorTextFieldwidget.
Example
ThefollowingcallbackroutinefortheitemsonanEditmenu(Cut,Copy,Link,Paste,PasteLink,andClear)showstheuseofXmTextPaste():
Widgettext_w,status

voidcut_paste(widget,client_data,call_data)
Widgetwidget
XtPointerclient_data
XtPointercall_data
{
intnum=(int)client_data
XmAnyCallbackStruct*cbs=(XmAnyCallbackStruct*)call_data
Booleanresult=True

switch(num){
case0:
result=XmTextCut(text_w,cbs>event>xbutton.time)
break
case1:
result=XmTextCopy(text_w,cbs>event>xbutton.time)
break
case2:
result=XmTextCopyLink(text_w,cbs>event>xbutton.time)
break
case3:
result=XmTextPaste(text_w)
break
case4:
result=XmTextPasteLink(text_w)
break
case5:
XmTextClearSelection(text_w,cbs>event>xbutton.time)
break
}

if(result==False)
XmTextSetString(status,"Thereisnoselection.")

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page522
else
XmTextSetString(status,NULL)
}

SeeAlso
XmTextCopy(1),XmTextCopyLink(1),XmTextCut(1),XmTextPaste(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page523

XmTextPosToXY
XmText
Name
XmTextPosToXY,XmTextFieldPosToXYgetthex,ypositionofacharacterposition.
Synopsis
#include<Xm/Text.h>
BooleanXmTextPosToXY(widget,position,x,y)

#include<Xm/TextF.h>
BooleanXmTextFieldPosToXY(widget,position,x,y)

Widgetwidget
XmTextPositionposition
Position*x
Position*y

Inputs
widget

SpecifiestheTextorTextFieldwidget.

position

Specifiesthecharacterposition.

Outputs
x

Returnsthexcoordinateofthecharacterposition.

Returnstheycoordinateofthecharacterposition.

Returns
TrueifthecharacterpositionisdisplayedinthewidgetorFalseotherwise.
Description
XmTextPosToXY()andXmTextFieldPosToXY()returnthexandycoordinatesofthecharacteratthespecifiedpositionwithinthespecified
widget.XmTextPosToXY()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldPosToXY()onlyworksfora
TextFieldwidget.Characterpositionsarenumberedsequentially,startingwith0(zero)atthefirstcharacterofthetext.Thereturnedcoordinatevaluesarespecified
relativetotheupperleftcornerofwidget.BothroutinesreturnTrueifthecharacteratpositioniscurrentlydisplayedinthewidget.Otherwise,the
routinesreturnFalseandnovaluesarereturnedinthexandyarguments.
Usage
XmTextPosToXY()andXmTextFieldPosToXY()provideawaytodeterminetheactualpositionofacharacterinaTextorTextFieldwidget.This
informationisuseful

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page524

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

ifyouneedtoperformadditionaleventprocessingordrawspecialgraphicsinthewidget.
SeeAlso
XmTextXYToPos(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page525

XmTextRemove
XmText
Name
XmTextRemove,XmTextFieldRemovedeletetheprimaryselection.
Synopsis
#include<Xm/Text.h>
BooleanXmTextRemove(widget)

#include<Xm/TextF.h>
BooleanXmTextFieldRemove(widget)

Widgetwidget

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Returns
TrueonsuccessorFalseotherwise.
Description
XmTextRemove()andXmTextFieldRemove()deletetheprimaryselectedtextfromthespecifiedwidget.XmTextRemove()workswhen
widgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldRemove()onlyworksforaTextFieldwidget.BothroutinesreturnTrueifsuccessful.If
thewidgetisnoteditable,iftheprimaryselectionisNULL,orifitisnotownedbythespecifiedwidget,theroutinesreturnFalse.
XmTextRemove()andXmTextFieldRemove()alsoinvokethecallbackroutinesforXmNvalueChangedCallback,
XmNmodifyVerifyCallback,andXmNmodifyVerifyCallbackWcsforthespecifiedwidget.Ifbothverificationcallbacksarepresent,the
XmNmodifyVerifyCallbackroutinesareinvokedfirstandtheresultsarepassedtotheXmNmodifyVerifyCallbackWcsroutines.
Usage
XmTextRemove()andXmTextFieldRemove()arelikeXmTextCut()andXmTextFieldCut(),inthattheyremoveselectedtextfromaText
orTextFieldhowever,theydonotcopytheselectedtexttotheclipboardbeforeremovingit.
SeeAlso
XmTextClearSelection(1),XmTextCut(1),XmTextGetSelection(1),XmTextGetSelectionPosition(1),
XmTextGetSelectionWcs(1),XmTextSetSelection(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page526

XmTextReplace
XmText
Name
XmTextReplace,XmTextFieldReplacereplacepartofthetextstring.
Synopsis
#include<Xm/Text.h>
voidXmTextReplace(widget,from_pos,to_pos,value)

#include<Xm/TextF.h>
voidXmTextFieldReplace(widget,from_pos,to_pos,value)

Widgetwidget
XmTextPositionfrom_pos
XmTextPositionto_pos
char*value

Inputs
widget

SpecifiestheTextorTextFieldwidget.

from_pos

Specifiesthestartingpositionofthetextthatistobereplaced.

to_pos

Specifiestheendingpositionofthetextthatistobereplaced.

value

Specifiesthereplacementstring.

Description
XmTextReplace()andXmTextFieldReplace()replaceaportionofthetextstringinthespecifiedwidget.XmTextReplace()workswhen
widgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldReplace()onlyworksforaTextFieldwidget.Thespecifiedvaluereplacesthetext
startingatfrom_posandcontinuingupto,butnotincluding,to_pos,wherecharacterpositionsarenumberedsequentially,startingwith0(zero)atthefirst
characterofthetext.Toreplacethecharactersafterthenthcharacteruptothemthcharacter,useafrom_posvalueofnandato_posvalueofm.
XmTextReplace()andXmTextFieldReplace()alsoinvokethecallbackroutinesfortheXmNvalueChangedCallback,the
XmNmodifyVerifyCallback,andtheXmNmodifyVerifyCallbackWcscallbacksforthespecifiedwidget.Ifbothverificationcallbacksare
present,theXmNmodifyVerifyCallbackproceduresareinvokedfirstandtheresultsarepassedtotheXmNmodifyVerifyCallbackWcs
procedures.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page527

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
XmTextReplace()andXmTextFieldReplace()provideaconvenientmeansofreplacingtextinaTextorTextFieldwidget.Theroutinesreplacetext
bymodifyingthevalueoftheXmNvalueresourceofthewidget.
Example
ThefollowingroutineshowstheuseofXmTextReplace()toreplacealloftheoccurrencesofastringinaTextwidget.Thesearchandreplacementstringsare
specifiedbytheuserinsinglelineTextwidgets:
Widgettext_w,search_w,replace_w

voidsearch_and_replace()
{
char*search_pat,*new_pat
XmTextPositioncurpos,searchpos
intsearch_len,pattern_len
Booleanfound=False

search_len=XmTextGetLastPosition(search_w)
if(!(search_pat=XmTextGetString(search_w))||!*search_pat){
XtFree(search_pat)
return
}
pattern_len=XmTextGetLastPosition(replace_w)
if(!(new_pat=XmTextGetString(replace_w))||!*new_pat){
XtFree(search_pat)
XtFree(new_pat)
return
}
curpos=0
found=XmTextFindString(text_w,curpos,search_pat,
XmTEXT_FORWARD,&searchpos)
while(found){
XmTextReplace(text_w,searchpos,searchpos+search_len,new_pat)
curpos=searchpos+1
found=XmTextFindString(text_w,curpos,search_pat,
XmTEXT_FORWARD,&searchpos)
}
XtFree(search_pat)
XtFree(new_pat)
}

SeeAlso
XmTextInsert(1),XmTextInsertWcs(1),XmTextReplaceWcs(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page528

XmTextReplaceWcs
XmText
Name
XmTextReplaceWcs,XmTextFieldReplaceWcsreplacepartofthewidecharactertextstring.
Synopsis
#include<Xm/Text.h>
voidXmTextReplaceWcs(widget,from_pos,to_pos,wcstring)

#include<Xm/TextF.h>
voidXmTextFieldReplaceWcs(widget,from_pos,to_pos,wcstring)

Widgetwidget
XmTextPositionfrom_pos
XmTextPositionto_pos
wchar_t*wcstring

Inputs
widget

SpecifiestheTextorTextFieldwidget.

from_pos

Specifiesthestartingpositionofthetextthatistobereplaced.

to_pos

Specifiestheendingpositionofthetextthatistobereplaced.

wcstring

Specifiesthereplacementwidecharacterstring.

Availability
Motif1.2andlater.
Description
XmTextReplaceWcs()andXmTextFieldReplaceWcs()replaceaportionofthetextstringinthespecifiedwidgetwiththespecifiedwide
characterstringwcstring.XmTextReplaceWcs()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldReplaceWcs
()onlyworksforaTextFieldwidget.Thespecifiedwcstringreplacesthetextstartingatfrom_posandcontinuingupto,butnotincluding,to_pos,where
characterpositionsarenumberedsequentially,startingwith0(zero)atthefirstcharacterofthetext.Toreplacethecharactersafterthenthcharacteruptothemth
character,useafrom_posvalueofnandato_posvalueofm.
XmTextReplaceWcs()andXmTextFieldReplaceWcs()alsoinvokethecallbackroutinesfortheXmNvalueChangedCallback,the
XmNmodifyVerifyCallback,andtheXmNmodifyVerifyCallbackWcscallbacksforthespecifiedwidget.If

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page529

bothverificationcallbacksarepresent,theXmNmodifyVerifyCallbackproceduresareinvokedfirstandtheresultsarepassedtothe
XmNmodifyVerifyCallbackWcsprocedures.
Usage
InMotif1.2andlater,theTextandTextFieldwidgetssupportwidecharacterstrings.XmTextReplaceWcs()andXmTextFieldReplaceWcs()
provideaconvenientmeansofreplacingastringinaTextorTextFieldwidgetwithawidecharacterstring.Theroutinesconvertthewidecharacterstringtoamulti
bytestringandthenreplacethetextbymodifyingthevalueoftheXmNvalueresourceofthewidget.
SeeAlso
XmTextInsert(1),XmTextInsertWcs(1),XmTextReplace(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page530

XmTextScroll
XmText
Name
XmTextScrollscrollthetext.
Synopsis
#include<Xm/Text.h>
voidXmTextScroll(widget,lines)
Widgetwidget
intlines

Inputs
widget

SpecifiestheTextwidget.

lines

Specifiesthenumberoflines.

Description
XmTextScroll()scrollsthetextinthespecifiedTextwidgetbythespecifiednumberoflines.Thetextisscrolledupwardiflinesispositiveand
downwardiflinesisnegative.Inthecaseofverticaltext,apositivevaluescrollsthetextforwards,andanegativevaluescrollsbackwards.
Usage
XmTextScroll()providesawaytoperformrelativescrollinginaTextwidget.TheTextwidgetdoesnothavetobethechildofaScrolledWindowforthe
scrollingtooccur.Theroutinesimplychangesthecurrentlyviewableregionoftext.
SeeAlso
XmTextGetCursorPosition(1),XmTextGetInsertionPosition(1),XmTextGetLastPosition(1),
XmTextGetTopCharacter(1),XmTextSetCursorPosition(1),XmTextSetInsertionPosition(1),
XmTextSetTopCharacter(1),XmText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page531

XmTextSetAddMode
XmText
Name
XmTextSetAddMode,XmTextFieldSetAddModesettheaddmodestate.
Synopsis
#include<Xm/Text.h>
voidXmTextSetAddMode(widget,state)

#include<Xm/TextF.h>
voidXmTextFieldSetAddMode(widget,state)

Widgetwidget
Booleanstate

Inputs
widget

SpecifiestheTextorTextFieldwidget.

state

Specifiesthestateofaddmode.

Description
XmTextSetAddMode()andXmTextFieldSetAddMode()setthestateofaddmodeforthespecifiedwidget.XmTextSetAddMode()works
whenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldSetAddMode()onlyworksforaTextFieldwidget.IfstateisTrueadd
modeisturnedonifstateisFalse,addmodeisturnedoff.WhenaTextorTextFieldwidgetisinaddmode,theusercanmovetheinsertioncursorwithout
alteringtheprimaryselection.
Usage
XmTextSetAddMode()andXmTextFieldSetAddMode()provideawaytochangethestateofaddmodeinaTextorTextFieldwidget.The
distinctionbetweennormalmodeandaddmodeisonlyimportantformakingkeyboardbasedselections.Innormalmode,thelocationcursorandtheselectionmove
together,whileinaddmode,thelocationcursorandtheselectioncanbeseparate.
SeeAlso
XmTextSetCursorPosition(1),XmTextSetInsertionPosition(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page532

XmTextSetCursorPosition
XmText
Name
XmTextSetCursorPosition,XmTextFieldSetCursorPositionsetthepositionoftheinsertioncursor.
Synopsis
#include<Xm/Text.h>
voidXmTextSetCursorPosition(widget,position)

#include<Xm/TextF.h>
voidXmTextFieldSetCursorPosition(widget,position)

Widgetwidget
XmTextPositionposition

Inputs
widget

SpecifiestheTextorTextFieldwidget.

position

Specifiesthepositionoftheinsertioncursor.

Description
XmTextSetCursorPosition()andXmTextFieldSetCursorPosition()setthevalueoftheXmNcursorPositionresourceto
positionforthespecifiedwidget.XmTextSetCursorPosition()workswhenwidgetisaTextwidgetoraTextFieldwidget,while
XmTextFieldSetCursorPosition()onlyworksforaTextFieldwidget.Thisresourcespecifiesthelocationoftheinsertioncursorasthenumberof
charactersfromthebeginningofthetext,wherethefirstcharacterpositionis0(zero).
XmTextSetCursorPosition()andXmTextFieldSetCursorPosition()alsoinvokethecallbackroutinesforthe
XmNmotionVerifyCallbackforthespecifiedwidgetifthepositionoftheinsertioncursorchanges.
Usage
XmTextSetCursorPosition()andXmTextFieldSetCursorPosition()areconvenienceroutinesthatsetthevalueofthe
XmNcursorPositionresourceforaTextorTextFieldwidget.CallingoneoftheroutinesisequivalenttocallingXtSetValues()fortheresource,
althoughtheroutinesaccessthevaluethroughthewidgetinstancestructuresratherthanthroughXtSetValues().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page533

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmTextGetCursorPosition(1),XmTextGetInsertionPosition(1),XmTextSetInsertionPosition(1),
XmTextShowPosition(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page534

XmTextSetEditable
XmText
Name
XmTextSetEditable,XmTextFieldSetEditablesettheeditpermissionstate.
Synopsis
#include<Xm/Text.h>
voidXmTextSetEditable(widget,editable)

#include<Xm/TextF.h>
voidXmTextFieldSetEditable(widget,editable)

Widgetwidget
Booleaneditable

Inputs
widget

SpecifiestheTextorTextFieldwidget.

editable

Specifieswhetherornotthetextcanbeedited.

Description
XmTextSetEditable()andXmTextFieldSetEditable()setthevalueoftheXmNeditableresourcetoeditableforthespecified
widget.XmTextSetEditable()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldSetEditable()onlyworks
foraTextFieldwidget.
Usage
Bydefault,theXmNeditableresourceisTrue,whichmeansthatausercaneditthetextstring.SettingtheresourcetoFalsemakesatextareareadonly.
XmTextSetEditable()andXmTextFieldSetEditable()areconvenienceroutinesthatsetthevalueoftheXmNeditableresourceforaText
orTextFieldwidget.CallingoneoftheroutinesisequivalenttocallingXtSetValues()fortheresource,althoughtheroutinesaccessthevaluethroughthewidget
instancestructuresratherthanthroughXtSetValues().
SeeAlso
XmTextGetEditable(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page535

XmTextSetHighlight
XmText
Name
XmTextSetHighlight,XmTextFieldSetHighlighthighlighttext.
Synopsis
#include<Xm/Text.h>
voidXmTextSetHighlight(widget,left,right,mode)

#include<Xm/TextF.h>
voidXmTextFieldSetHighlight(widget,left,right,mode)

Widgetwidget
XmTextPositionleft
XmTextPositionright
XmHighlightModemode

Inputs
widget SpecifiestheTextorTextFieldwidget.
left

Specifiestheleftboundarypositionofthetexttobehighlighted.

right

Specifiestherightboundarypositionofthetexttobehighlighted.

mode

Specifiesthehighlightingmode.Passoneofthefollowingvalues:
XmHIGHLIGHT_NORMAL,XmHIGHLIGHT_SELECTED,or
XmHIGHLIGHT_SECONDARY_SELECTED.

Description
XmTextSetHighlight()andXmTextFieldSetHighlight()highlighttextinthespecifiedwidgetwithoutselectingthetext.
XmTextSetHighlight()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldSetHighlight()onlyworksfora
TextFieldwidget.Theleftandrightargumentsspecifytheboundarypositionsofthetextthatistobehighlighted.Eachboundaryvaluespecifiesthepositionas
thenumberofcharactersfromthebeginningofthetext,wherethefirstcharacterpositionis0(zero).Themodeparameterindicatesthetypeofhighlightingthatis
done.XmHIGHLIGHT_NORMALremovesanyhighlighting,XmHIGHLIGHT_SELECTEDusesreversevideohighlighting,and
XmHIGHLIGHT_SECONDARY_SELECTEDusesunderlinehighlighting.
Usage
XmTextSetHighlight()andXmTextFieldSetHighlight()provideawaytohighlighttextinaTextorTextFieldwidget.Theseroutinesareuseful
ifyouneedto

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page536

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

emphasizecertaintextinawidget.Theseroutineonlyhighlighttexttheydonotselectthespecifiedtext.
Example
ThefollowingroutineshowstheuseofXmTextSetHighlight()tohighlightalloftheoccurrencesofastringinaTextwidget.Thesearchstringisspecifiedby
theuserinasinglelineTextwidget:
Widgettext_w,search_w

voidsearch_text()
{
char*search_pat
XmTextPositioncurpos,searchpos
intlen
Booleanfound=False

len=XmTextGetLastPosition(search_w)
if(!(search_pat=XmTextGetString(search_w))||!*search_pat){
XtFree(search_pat)
return
}

curpos=0
found=XmTextFindString(text_w,curpos,search_pat,
XmTEXT_FORWARD,&searchpos)
while(found){
XmTextSetHighlight(text_w,searchpos,searchpos+len,
XmHIGHLIGHT_SECONDARY_SELECTED)
curpos=searchpos+1
found=XmTextFindString(text_w,curpos,search_pat,
XmTEXT_FORWARD,&searchpos)
}

XtFree(search_pat)
}

SeeAlso
XmTextSetSelection(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page537

XmTextSetInsertionPosition
XmText
Name
XmTextSetInsertionPosition,XmTextFieldSetInsertionPositionsetthepositionoftheinsertioncursor.
Synopsis
#include<Xm/Text.h>
voidXmTextSetInsertionPosition(widget,position)

#include<Xm/TextF.h>
voidXmTextFieldSetInsertionPosition(widget,position)

Widgetwidget
XmTextPositionposition

Inputs
widget

SpecifiestheTextorTextFieldwidget.

position

Specifiesthepositionoftheinsertioncursor.

Description
Thefunctions,XmTextSetInsertionPosition()andXmTextFieldSetInsertionPosition(),setthevalueofthe
XmNcursorPositionresourcetopositionforthespecifiedwidget.XmTextSetInsertionPosition()workswhenwidgetisaText
widgetoraTextFieldwidget,whileXmTextFieldSetInsertionPosition()onlyworksforaTextFieldwidget.Thisresourcespecifiesthelocationof
theinsertioncursorasthenumberofcharactersfromthebeginningofthetext,wherethefirstcharacterpositionis0(zero).
XmTextSetInsertionPosition()andXmTextFieldSetInsertionPosition()alsoinvokethecallbackroutinesforthe
XmNmotionVerifyCallbackforthespecifiedwidgetifthepositionoftheinsertioncursorchanges.
Usage
Thefunctions,XmTextSetInsertionPosition()andXmTextFieldSetInsertionPosition(),areconvenienceroutinesthatsetthevalue
oftheXmNcursorPositionresourceforaTextorTextFieldwidget.CallingoneoftheroutinesisequivalenttocallingXtSetValues()fortheresource,
althoughtheroutinesaccessthevaluethroughthewidgetinstancestructuresratherthanthroughXtSetValues().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page538

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
ThefollowingcodeshowstheuseofXmTextSetInsertionPosition()inaroutinethatsearchesforastringinaTextwidgetandmovestheinsertion
cursortothestringifitisfound:
Widgettext_w,search_w

voidsearch_text()
{
char*search_pat
XmTextPositionpos,search_pos
Booleanfound=False

if(!(search_pat=XmTextGetString(search_w))||!*search_pat){
XtFree(search_pat)
return
}

/*findnextoccurrencefromcurrentpositionwrapifnecessary*/
pos=XmTextGetCursorPosition(text_w)
found=XmTextFindString(text_w,pos,search_pat,
XmTEXT_FORWARD,&search_pos)
if(!found)
found=XmTextFindString(text_w,0,search_pat,
XmTEXT_FORWARD,&search_pos)

if(found)
XmTextSetInsertionPosition(text_w,search_pos)
XtFree(search_pat)
}

SeeAlso
XmTextGetCursorPosition(1),XmTextGetInsertionPosition(1),XmTextSetCursorPosition(1),
XmTextShowPosition(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page539

XmTextSetMaxLength
XmText
Name
XmTextSetMaxLength,XmTextFieldSetMaxLengthsetthemaximumpossiblelengthofatextstring.
Synopsis
#include<Xm/Text.h>
voidXmTextSetMaxLength(widget,max_length)

#include<Xm/TextF.h>
voidXmTextFieldSetMaxLength(widget,max_length)

Widgetwidget
intmax_length

Inputs
widget

SpecifiestheTextorTextFieldwidget.

max_length

Specifiesthemaximumallowablelengthofthetextstring.

Description
XmTextSetMaxLength()andXmTextFieldSetMaxLength()setthevalueoftheXmNmaxLengthresourcetomax_lengthforthespecified
widget.XmTextSetMaxLength()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldSetMaxLength()only
worksforaTextFieldwidget.Thisresourcespecifiesthemaximumallowablelengthofatextstringthatausercanenterfromthekeyboard.
Usage
XmTextSetMaxLength()andXmTextFieldSetMaxLength()areconvenienceroutinesthatsettheXmNmaxLengthresourceforaTextor
TextFieldwidget.CallingoneoftheroutinesisequivalenttocallingXtSetValues()fortheresource,althoughtheroutinesaccessthevaluethroughthewidget
instancestructuresratherthanthroughXtSetValues().Theresourcelimitsthelengthofatextstringthatausermaytype,butnotthelengthofstringsentered
withtheXmNvalueorXmNvalueWcsresourcesortheXmTextSetString(),XmTextFieldSetString(),XmTextSetStringWcs
(),andXmTextFieldSetStringWcs()routines.
SeeAlso
XmTextGetMaxLength(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page540

XmTextSetSelection
XmText
Name
XmTextSetSelection,XmTextFieldSetSelectionsetthevalueoftheprimaryselection.
Synopsis
#include<Xm/Text.h>
voidXmTextSetSelection(widget,first,last,time)

#include<Xm/TextF.h>
voidXmTextFieldSetSelection(widget,first,last,time)

Widgetwidget
XmTextPositionfirst
XmTextPositionlast
Timetime

Inputs
widget

SpecifiestheTextorTextFieldwidget.

first

Specifiesthefirstcharacterpositiontobeselected.

last

Specifiesthelastcharacterpositiontobeselected.

time

Specifiesthetimeoftheeventthatcausedtherequest.

Description
XmTextSetSelection()andXmTextFieldSetSelection()settheprimaryselectioninthespecifiedwidget.XmTextSetSelection()
workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldSetSelection()onlyworksforaTextFieldwidget.Thefirstand
lastargumentsspecifythebeginningandendingpositionsofthetextthatistobeselected.Eachofthesevaluesspecifiesthepositionasthenumberofcharacters
fromthebeginningofthetext,wherethefirstcharacterpositionis0(zero).Foreachroutine,timespecifiestheservertimeoftheeventthatcausedtherequesttoset
theselection.
XmTextSetSelection()andXmTextFieldSetSelection()changetheinsertioncursorforthewidgettothelastpositionoftheselection.
TheroutinesalsoinvokethecallbackroutinesfortheXmNmotionVerifyCallbackforthespecifiedwidget.
Usage
XmTextSetSelection()andXmTextFieldSetSelection()provideaconvenientwaytosetthecurrentselectioninaTextorTextFieldwidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page541

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmTextClearSelection(1),XmTextCopy(1),XmTextCut(1),XmTextGetSelection(1),
XmTextGetSelectionPosition(1),XmTextGetSelectionWcs(1),XmTextRemove(1),XmText(2),XmTextField
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page542

XmTextSetSource
XmText
Name
XmTextSetSourcesetthetextsource.
Synopsis
#include<Xm/Text.h>
voidXmTextSetSource(widget,source,top_character,cursor_position)
Widgetwidget
XmTextSourcesource
XmTextPositiontop_character
XmTextPositioncursor_position

Inputs
widget

SpecifiestheTextwidget.

source

Specifiesthetextsource.

top_character

Specifiesthecharacterpositiontodisplayatthetopofthewidget.

cursor_position

Specifiesthepositionoftheinsertioncursor.

Description
XmTextSetSource()setsthesourceofthespecifiedTextwidget.Thetop_characterandcursor_positionvaluesspecifypositionsasthe
numberofcharactersfromthebeginningofthetext,wherethefirstcharacterpositionis0(zero).IfsourceisNULL,theTextwidgetcreatesadefaultstringsource
anddisplaysawarning.
Usage
Multipletextwidgetscansharethesametextsource,sothateditinginoneofthewidgetsisreflectedinalloftheothers.XmTextGetSource()retrievesthe
sourceforawidgetthissourcecanthenbeusedtosetthesourceofanotherTextwidgetusingXmTextSetSource().XmTextSetSource()isa
convenienceroutinethatsetsthevalueoftheXmNsourceresourcefortheTextwidget.CallingtheroutineisequivalenttocallingXtSetValues()forthe
resource,althoughtheroutineaccessesthevaluethroughthewidgetinstancestructuresratherthanthroughXtSetValues().
Whenanewtextsourceisset,theoldtextsourceisdestroyedunlessanotherTextwidgetisusingtheoldsource.Ifyouwanttoreplaceatextsourcewithout
destroyingit,createanunmanagedTextwidgetandsetitssourcetothetextsourceyouwanttosave.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page543

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmTextGetSource(1),XmText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page544

XmTextSetString
XmText
Name
XmTextSetString,XmTextFieldSetStringsetthetextstring.
Synopsis
#include<Xm/Text.h>
voidXmTextSetString(widget,value)

#include<Xm/TextF.h>
voidXmTextFieldSetString(widget,value)

Widgetwidget
char*value

Inputs
widget

SpecifiestheTextorTextFieldwidget.

value

Specifiesthestringvalue.

Description
XmTextSetString()andXmTextFieldSetString()setthecurrenttextstringinthespecifiedwidgettothespecifiedvalue.
XmTextSetString()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldSetString()onlyworksforaTextField
widget.Bothfunctionsalsosetthepositionoftheinsertioncursortothebeginningofthenewtextstring.
XmTextSetString()andXmTextFieldSetString()invokethecallbackroutinesfortheXmNvalueChangedCallback,the
XmNmodifyVerifyCallback,andtheXmNmodifyVerifyCallbackWcscallbacksforthespecifiedwidget.Ifbothverificationcallbacksare
present,theXmNmodifyVerifyCallbackproceduresareinvokedfirstandtheresultsarepassedtotheXmNmodifyVerifyCallbackWcs
procedures.TheroutinesalsoinvokethecallbackroutinesfortheXmNmotionVerifyCallbackforthespecifiedwidget.
Usage
XmTextSetString()andXmTextFieldSetString()areconvenienceroutinesthatsetthevalueoftheXmNvalueresourceforaTextorTextField
widget.CallingoneoftheroutinesisequivalenttocallingXtSetValues()fortheresource,althoughtheroutinesaccessthevaluethroughthewidgetinstance
structuresratherthanthroughXtSetValues().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page545

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
ThefollowingcodeshowstheuseofXmTextSetString()inaroutinethatdisplaysthecontentsoffileinaTextwidget.TheComponentisspecifiedbythe
userinaTextFieldwidget:
Widgettext_w,file_w

voidread_file()
{
char*Component,*text
structstatstatb
intfd,len

if(!(Component=XmTextFieldGetString(file_w))||!*Component){
XtFree(Component)
return
}

if(!(fd=open(Component,O_RDONLY))){
XtWarning("internalerrorcan'topenfile")
}
if(fstat(fd,&statb)==1||
!(text=XtMalloc((len=statb.st_size)+1))){
XtWarning("internalerrorcan'tshowtext")
close(fd)
}
(void)read(fd,text,len)
text[len]=0

XmTextSetString(text_w,text)

XtFree(text)
XtFree(Component)
close(fd)
}

SeeAlso
XmTextGetString(1),XmTextGetStringWcs(1),XmTextGetSubstring(1),XmTextGetSubstringWcs(1),
XmTextSetStringWcs(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page546

XmTextSetStringWcs
XmText
Name
XmTextSetStringWcs,XmTextFieldSetStringWcssetthewidecharactertextstring.
Synopsis
#include<Xm/Text.h>
voidXmTextSetStringWcs(widget,wcstring)

#include<Xm/TextF.h>
voidXmTextFieldSetStringWcs(widget,wcstring)

Widgetwidget
wchar_t*wcstring

Inputs
widget

SpecifiestheTextorTextFieldwidget.

wcstring

Specifiesthewidecharacterstringvalue.

Availability
Motif1.2andlater.
Description
XmTextSetStringWcs()andXmTextFieldSetStringWcs()setthecurrentwidecharactertextstringinthespecifiedwidgettothespecified
string.XmTextSetStringWcs()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldSetStringWcs()only
worksforaTextFieldwidget.Bothfunctionsalsosetthepositionoftheinsertioncursortothebeginningofthenewtextstring.
XmTextSetStringWcs()andXmTextFieldSetStringWcs()invokethecallbackroutinesfortheXmNvalueChangedCallback,the
XmNmodifyVerifyCallback,andtheXmNmodifyVerifyCallbackWcscallbacksforthespecifiedwidget.Ifbothverificationcallbacksare
present,theXmNmodifyVerifyCallbackproceduresareinvokedfirstandtheresultsarepassedtotheXmNmodifyVerifyCallbackWcs
procedures.TheroutinesalsoinvokethecallbackroutinesfortheXmNmotionVerifyCallbackforthespecifiedwidget.
Usage
InMotif1.2andlater,theTextandTextFieldwidgetssupportwidecharacterstrings.TheresourceXmNvalueWcscanbeusedtosetthevalueofaTextor
TextFieldwidget

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page547

toawidecharacterstring.XmTextSetStringWcs()andXmTextFieldSetStringWcs()areconvenienceroutinesthatsetthevalueofthe
XmNvalueWcsresourceforaTextorTextFieldwidget.CallingoneoftheroutinesisequivalenttocallingXtSetValues()fortheresource,althoughthe
routinesaccessthevaluethroughthewidgetinstancestructuresratherthanthroughXtSetValues().
SeeAlso
XmTextGetString(1),XmTextGetStringWcs(1),XmTextGetSubstring(1),XmTextGetSubstringWcs(1),
XmTextSetString(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page548

XmTextSetTopCharacter
XmText
Name
XmTextSetTopCharactersetthepositionofthefirstcharacteroftextthatisdisplayed.
Synopsis
#include<Xm/Text.h>
voidXmTextSetTopCharacter(widget,top_character)
Widgetwidget
XmTextPositiontop_character

Inputs
widget

SpecifiestheTextwidget.

top_character

Specifiesthepositionthatistobedisplayedatthetopofthe
widget.

Description
XmTextSetTopCharacter()setsthevalueoftheXmNtopCharacterresourcetotop_characterforthespecifiedTextwidget.Ifthe
XmNeditModeresourceissettoXmMULTI_LINE_EDIT,theroutinescrollsthetextsothatthelinecontainingthecharacterpositionspecifiedby
top_characterappearsatthetopofthewidget,butdoesnotshiftthetextleftorright.Otherwise,thecharacterpositionspecifiedbytop_characteris
displayedasthefirstvisiblecharacterinthewidget.top_characterspecifiesacharacterpositionasthenumberofcharactersfromthebeginningofthetext,
wherethefirstcharacterpositionis0(zero).
Usage
XmTextSetTopCharacter()isaconvenienceroutinethatsetsthevalueoftheXmNtopCharacterresourceforaTextwidget.Callingtheroutinesis
equivalenttocallingXtSetValues()fortheresource,althoughtheroutinesaccessesthevaluethroughthewidgetinstancestructuresratherthanthrough
XtSetValues().
SeeAlso
XmTextGetCursorPosition(1),XmTextGetInsertionPosition(1),XmTextGetLastPosition(1),
XmTextGetTopCharacter(1),XmTextScroll(1),XmTextSetCursorPosition(1),XmTextSetInsertionPosition
(1),XmTextShowPosition(1),XmText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page549

XmTextShowPosition
XmText
Name
XmTextShowPosition,XmTextFieldShowPositiondisplaythetextataspecifiedposition.
Synopsis
#include<Xm/Text.h>
voidXmTextShowPosition(widget,position)

#include<Xm/TextF.h>
voidXmTextFieldShowPosition(widget,position)

Widgetwidget
XmTextPositionposition

Inputs
widget

SpecifiestheTextorTextFieldwidget.

position

Specifiesthecharacterpositionthatistobedisplayed.

Description
XmTextShowPosition()andXmTextFieldShowPosition()causethetextcharacteratpositiontobedisplayedinthespecifiedwidget.
XmTextShowPosition()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldShowPosition()onlyworksfora
TextFieldwidget.Thepositionargumentspecifiesthepositionasthenumberofcharactersfromthebeginningofthetext,wherethefirstcharacterpositionis0
(zero).
Usage
XmTextShowPosition()andXmTextFieldShowPosition()provideawaytoforceaTextorTextFieldwidgettodisplayacertainportionofits
text.Thisroutineisusefulifyoumodifythevalueofwidgetandwantthemodificationtobeimmediatelyvisiblewithouttheuserhavingtoscrollthetext.Ifthevalueof
theXmNautoShowCursorPositionresourceisTrue,youshouldsettheinsertioncursortopositionaswell.Youcansettheinsertioncursorby
settingtheXmcursorPositionresourceorbyusingXmTextSetInsertionPosition()orXmTextFieldSetInsertionPosition().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page550

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
ThefollowingcodeshowstheuseofXmTextShowPosition()inaroutinethatinsertsamessageintoastatusTextwidget:
Widgetstatus

voidinsert_text(message)
char*message
{
XmTextPositioncurpos

curpos=XmTextGetInsertionPosition(status)
XmTextInsert(status,curpos,message)

curpos=curpos+strlen(message)
XmTextShowPosition(status,curpos)
XmTextSetInsertionPosition(status,curpos)
}

SeeAlso
XmTextGetCursorPosition(1),XmTextGetInsertionPosition(1),XmTextSetCursorPosition(1),
XmTextSetInsertionPosition(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page551

XmTextXYToPos
XmText
Name
XmTextXYToPos,XmTextFieldXYToPosgetthecharacterpositionforanx,yposition.
Synopsis
#include<Xm/Text.h>
XmTextPositionXmTextXYToPos(widget,x,y)

#include<Xm/TextF.h>
XmTextPositionXmTextFieldXYToPos(widget,x,y)

Widgetwidget
Positionx
Positiony

Inputs
widget

SpecifiestheTextorTextFieldwidget.

Specifiesthexcoordinaterelativetowidget'supperleftcorner.

Specifiestheycoordinaterelativetowidget'supperleftcorner.

Returns
Thecharacterpositionthatisclosesttothex,yposition.
Description
XmTextXYToPos()andXmTextFieldXYToPos()returnthepositionofthecharacterclosesttothespecifiedxandycoordinateswithinthespecified
widget.XmTextXYToPos()workswhenwidgetisaTextwidgetoraTextFieldwidget,whileXmTextFieldXYToPos()onlyworksfora
TextFieldwidget.Thexandycoordinatesarerelativetotheupperleftcornerofthewidget.Characterpositionsarenumberedsequentially,startingwith0(zero)at
thefirstcharacterofthetext.
Usage
XmTextXYToPos()andXmTextFieldXYToPos()provideawaytodeterminethecharacterataparticularcoordinateinaTextorTextFieldwidget.This
informationisusefulifyouneedtoperformadditionaleventprocessingordrawspecialgraphics.
SeeAlso
XmTextPosToXY(1),XmText(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page552

XmToggleButtonGetState
XmToggleButton
Name
XmToggleButtonGetState,XmToggleButtonGadgetGetStategetthestateofaToggleButton.
Synopsis
#include<Xm/ToggleB.h>
BooleanXmToggleButtonGetState(widget)

#include<Xm/ToggleBG.h>
BooleanXmToggleButtonGadgetGetState(widget)

Widgetwidget

Inputs
widget

SpecifiestheToggleButtonorToggleButtonGadget.

Returns
Thestateofthebutton.
Description
XmToggleButtonGetState()andXmToggleButtonGadgetGetState()returnthestateofthespecifiedwidget.
XmToggleButtonGetState()workswhenwidgetisaToggleButtonoraToggleButtonGadget,whileXmToggleButtonGadgetGetState()
onlyworksforaToggleButtonGadget.InMotif1.2andearlier,eachoftheroutinesreturnsTrueifthebuttonisselectedorFalseifthebuttonisunselected.In
Motif2.0andlater,atogglebuttoncanbeinoneofthreestates:XmSET,XmINDETERMINATE,andXmUNSET(whereXmUNSETisequivalenttoFalse
andXmSETisequivalenttoTrue)
Usage
XmToggleButtonGetState()andXmToggleButtonGadgetGetState()areconvenienceroutinesthatreturnthevalueoftheXmNset
resourceforaToggleButtonorToggleButtonGadget.CallingoneoftheroutinesisequivalenttocallingXtGetValues()fortheresource,althoughtheroutines
accessthevaluethroughthewidgetinstancestructuresratherthanthroughXtGetValues().
SeeAlso
XmToggleButtonSetState(1),XmToggleButtonSetValue(1),XmToggleButton(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page553

XmToggleButtonSetState
XmToggleButton
Name
XmToggleButtonSetState,XmToggleButtonGadgetSetStatesetthestateofaToggleButton.
Synopsis
#include<Xm/ToggleB.h>
voidXmToggleButtonSetState(widget,state,notify)

#include<Xm/ToggleBG.h>
voidXmToggleButtonGadgetSetState(widget,state,
notify)

Widgetwidget
Booleanstate
Booleannotify

Inputs
widget

SpecifiestheToggleButtonorToggleButtonGadget.

state

Specifiesthestateofthebutton.

notify

SpecifieswhetherornottheXmNvalueChangedCallbackis
called.

Description
XmToggleButtonSetState()andXmToggleButtonGadgetSetState()setthestateofthespecifiedwidget.
XmToggleButtonSetState()workswhenwidgetisaToggleButtonoraToggleButtonGadget,whileXmToggleButtonGadgetSetState()
onlyworksforaToggleButtonGadget.InMotif1.2andearlier,whenstateisTrue,thebuttonisselected,andwhenstateisFalse,thebuttonis
deselected.InMotif2.0andlater,atogglebuttoncanbeinoneofthreestates:XmSET,XmINDETERMINATE,andXmUNSET(whereXmUNSETisequivalent
toFalseandXmSETisequivalenttoTrue).IfnotifyisTrue,theroutinesinvokethecallbacksspecifiedbytheXmNvalueChangedCallback
resource.IfthespecifiedwidgetisthechildofaRowColumnwithXmNradioBehaviorsettoTrue,thecurrentlyselectedchildoftheRowColumnis
deselected.
Usage
XmToggleButtonSetState()andXmToggleButtonGadgetSetState()areconvenienceroutinesthatsetthevalueoftheXmNsetresource
foraToggleButtonorToggleButtonGadget.Callingoneoftheroutinesisequivalenttocalling

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page554

XtSetValues()fortheresource,althoughtheroutinesaccessthevaluethroughthewidgetinstancestructuresratherthanthroughXtSetValues().InMotif
2.0andlater,thevalueXmINDETERMINATEismappedtoXmSET.Tosetatogglebuttonintoanindeterminatestatethroughtheconveniencefunctions,call
XmToggleButtonSetValue()orXmToggleButtonGadgetSetValue()instead.
SeeAlso
XmToggleButtonGetState(1),XmToggleButtonSetValue(1),XmToggleButton(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page555

XmToggleButtonSetValue
XmToggleButton
Name
XmToggleButtonSetValue,XmToggleButtonGadgetSetValuesetthevalueofaToggleButton.
Synopsis
#include<Xm/ToggleB.h>
BooleanXmToggleButtonSetValue(widget,state,notify)

#include<Xm/ToggleBG.h>
BooleanXmToggleButtonGadgetSetValue(widget,state,
notify)

Widgetwidget
XmToggleButtonStatestate
Booleannotify

Inputs
widget

SpecifiestheToggleButtonorToggleButtonGadget.

state

Specifiesthestateofthebutton.

notify

SpecifieswhetherornottheXmNvalueChangedCallbackis
called.

Availability
Motif2.0andlater.
Description
XmToggleButtonSetValue()andXmToggleButtonGadgetSetValue()aresimilartoXmToggleButtonSetState()and
XmToggleButtonGadgetSetState(),exceptthatitispossibletosettheToggleButtonintoanXmINDETERMINATEstate,providedthatthebuttonis
inthecorrectmode.IfthewidgethastheXmNtoggleModeresourceofXmTOGGLE_INDETERMINATE,theroutinesetstheXmNsetresourceofthe
widgettotherequiredstate,callsanyXmNvalueChangedCallbackproceduresifnotifyisTrue,andthenreturnsTrue.Otherwise,thefunction
returnsFalse.
Usage
XmToggleButtonSetValue()andXmToggleButtonGadgetSetValue()areconvenienceroutinesthatsetthevalueoftheXmNsetresource
foraToggleButtonorToggleButtonGadgetthatcandisplayanindeterminatestate.Callingoneofthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page556

routinesisequivalenttocallingXtSetValues()fortheresource,althoughtheroutinesaccessthevaluethroughthewidgetinstancestructuresratherthanthrough
XtSetValues().
Structures
TheXmToggleButtonStatetypehasthefollowingpossiblevalues:
XmSET

XmUNSET

XmINDETERMINATE

SeeAlso
XmToggleButtonGetState(1),XmToggleButtonSetState(1),XmToggleButton(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page557

XmTrackingEvent
XmWidgetSelection
Name
XmTrackingEventallowformodalselectionofacomponent.
Synopsis
#include<Xm/Xm.h>
WidgetXmTrackingEvent(widget,cursor,confine_to,event_return)
Widgetwidget
Cursorcursor
Booleanconfine_to
XEvent*event_return

Inputs
widget

Specifiesthewidgetinwhichthemodalinteractionoccurs.

cursor

Specifiesthecursorthatistobeusedasthepointer.

confine_to

Specifieswhetherornotthepointerisconfinedtowidget.

Outputs
event_return

ReturnstheButtonReleaseorKeyReleaseevent.

Returns
ThewidgetorgadgetthatcontainsthepointerorNULLifnowidgetorgadgetcontainsthepointer.
Availability
Motif1.2andlater.
Description
XmTrackingEvent()grabsthepointerandwaitsfortheusertoreleaseBSelectorpressandreleaseakey,discardingalloftheinterveningevents.The
routinereturnstheIDofthewidgetorgadgetcontainingthepointerwhenBSelectorthekeyisreleasedandevent_returncontainsthereleaseevent.Ifno
widgetorgadgetcontainsthepointerwhenthereleaseoccurs,thefunctionreturnsNULL.Themodalinteractionoccurswithinthespecifiedwidget,whichis
typicallyatoplevelshell.Duringtheinteraction,cursorisusedasthepointershape.Ifconfine_toisTrue,thepointerisconfinedtowidgetduringthe
interactionotherwisethepointerisnotconfined.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page558

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
XmTrackingEvent()providesawaytoallowausertoselectacomponent.Thismodalinteractionismeanttosupportacontextsensitivehelpsystem,where
theuserclicksonawidgettoobtainmoreinformationaboutit.XmTrackingEvent()returnstheselectedwidget,sothatahelpcallbackcanbeinvokedto
providetheappropriateinformation.
Example
ThefollowingcodeshowstheuseofXmTrackingEvent()inaroutinethatinitiatescontextsensitivehelp:
Widgettoplevel,help_button
...
XtAddCallback(help_button,XmNactivateCallback,query_for_help,toplevel)
...
voidquery_for_help(widget,client_data,call_data)
Widgetwidget
XtPointerclient_data
XtPointercall_data
{
Cursorcursor
Widgettop,help_widget
XmAnyCallbackStructcb
XtCallbackStatushascb
XEvent*event

top=(Widget)client_data
cursor=XCreateFontCursor(XtDisplay(top),XC_question_arrow)

help_widget=XmTrackingEvent(top,cursor,True,&event)
while(help_widget!=NULL){
hascb=XtHasCallbacks(help_widget,XmNhelpCallback)
if(hascb==XtCallbackHasSome){
cb.reason=XmCR_HELP
cb.event=event
XtCallCallbacks(help_widget,XmNhelpCallback,(XtPointer)&cb)
help_widget=NULL
}
else
help_widget=XtParent(help_widget)
}
}

SeeAlso
XmTrackingLocate(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page559

XmTrackingLocate
XmWidgetSelection
Name
XmTrackingLocateallowformodalselectionofacomponent.
Synopsis
WidgetXmTrackingLocate(widget,cursor,confine_to)
Widgetwidget
Cursorcursor
Booleanconfine_to

Inputs
widget

Specifiesthewidgetinwhichthemodalinteractionoccurs.

cursor

Specifiesthecursorthatistobeusedasthepointer.

confine_to

Specifieswhetherornotthepointerisconfinedtowidget.

Returns
Thewidgetorgadgetthatcontainsthepointer,orNULLifnone.
Availability
InMotif1.2andlater,XmTrackingLocate()isobsolete.IthasbeensupersededbyXmTrackingEvent().
Description
XmTrackingLocate()grabsthepointerandwaitsfortheusertoreleaseBSelectorpressandreleaseakey,discardingalloftheinterveningevents.The
routinereturnstheIDofthewidgetorgadgetcontainingthepointerwhenBSelectorthekeyisreleased.Ifnowidgetorgadgetcontainsthepointerwhenthe
releaseoccurs,thefunctionreturnsNULL.Themodalinteractionoccurswithinthespecifiedwidget,whichistypicallyatoplevelshell.Duringtheinteraction,
cursorisusedasthepointershape.Ifconfine_toisTrue,thepointerisconfinedtowidgetduringtheinteractionotherwisethepointerisnotconfined.
XmTrackingLocate()isretainedforcompatibilitywithMotif1.1andshouldnotbeusedinnewerapplications.
Usage
XmTrackingLocate()providesawaytoallowausertoselectacomponent.Thismodalinteractionismeanttosupportacontextsensitivehelpsystem,where
theuserclicksonawidgettoobtainmoreinformationaboutit.Theroutinereturnstheselectedwidget,sothatahelpcallbackcanprovidetheappropriate
information.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page560

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmTrackingEvent(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page561

XmTransfer
XmUniformTransferModel
Name
XmTransferintroductiontotheuniformtransfermodel.
Synopsis
PublicHeader:

<Xm/Transfer.h>

Functions/Macros: XmTransferDone(),XmTransferSendRequest(),
XmTransferSetParameters(),XmTransferStartRequest(),
XmTransferValue().

Availability
Motif2.0andlater.
Description
Motifwidgetssupportseveralmethodsofdatatransfer.Datacanbetransferredfromawidgettotheprimaryorsecondaryselection,totheclipboard,or,throughthe
draganddropmechanisms,toanotherwidget.UpuntilMotif2.0,eachofthesedatatransferoperationsrequireadifferenttreatmentbytheprogrammer.InMotif2.0
andlater,theUniformTransferModel(UTM)makesitpossibletoperformdatatransferusinganyofthetransfermethodswithasingleprogramminginterface.UTM
isdesignedtoallowapplicationstousecommoncodeforallthesupporteddatatransferrequirementsandisintentionallywrittentoeasethewayinwhichnewtransfer
targetscanbewritten.DatatransfercodewrittenpriortoMotif2.0continuestoworkinnewerversionsofthetoolkit,althoughallthewidgetshavebeenrewrittento
internallyusetheUTMwhereappropriate.
TheUTMisimplementedthroughtwonewcallbackresources,XmNconvertCallbackandXmNdestinationCallback,whichareavailableinthe
Primitivewidgetclass(andinanyderivedclasses),aswellasintheContainer,Scale,andDrawingAreawidgetclasses.Theprogrammerprovides
XmNconvertCallbackandXmNdestinationCallbackproceduresthatcommunicatewithoneanotherinordertonegotiatethetargetformatinwhich
dataisrequired.Inaddition,theprogrammerprovidesatransferprocedurethatperformstheinsertionofdataofthecorrectformatintothedestinationwidget.
AnXmNconvertCallbackprocedureisassociatedwiththesourceofthedata.Itisresponsibleforconvertingthedata,typicallytheselecteditemsofthe
sourcewidget,intotheformatrequestedbythedestination.Itmayalsoprovidealistofthesupported

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page562

transfertargetsrequestedbyaXmNdestinationCallbackprocedure.Theconversionproceduretransfersdatatothedestinationwidgetbyplacingvalues
withintheXmConvertCallbackStructstructurepassedasaparametertothecallback.
TheXmNdestinationCallbackprocedureisresponsiblefornegotiatingtheformatinwhichdataisrequiredatthedestinationwidget.Itmayrequesttheset
ofsupportedformatsinwhichthesourcecanexportthedata,althoughthesimplestprocedurerequestsdatainaspecifictargetformat.Inspecifyingtherequesttothe
sourceofthedata,thecallbackspecifiesafurthertransferprocedurethatperformstheactualinsertionofdataatthedestination.Thedestinationcallback
communicateswiththesourcebyissuingrequestsusingtheXmTransferValue()routine.Ifthedestinationcallbackrequeststhefulllistofsupportedsource
targets,thetransferprocedureitselfdecidesthebestformatforthedestinationandinternallyissuesafurtherXmTransferValue()call,requestingthedataina
specifictargetformat.Theprogrammerhastoprovidethelogicthatdeterminesthebestformatwithinthetransferprocedure.
Usage
ItisnotnecessaryfortheprogrammertoprovideXmNconvertCallbackandXmNdestinationCallbackproceduresforallthetargetsthatMotif
supports.AspartoftheUTM,MotifwidgetsthatsupporttheXmNconvertCallbackandXmNdestinationCallbackresourcesalsohaveinternal
routinesthatenableautomaticdatatransferofasetofbuiltintargettypes.TheinternalroutinesareimplementedusingtheXmQTtransfertrait,whichhas
convertProcanddestinationProcmethods.WherenoXmNconvertCallbackissuppliedbytheprogrammer,theconvertProcisinvoked
toperformthedataconversion.Similarly,intheabsenceofaXmNdestinationCallback,UTMcallsthedestinationProc.Aprogrammerneeds
onlytoimplementXmNconvertCallbackorXmNdestinationCallbackprocedureswhereanewtargettypeisbeingprovidedoverandabovethose
handledbythewidgetclassdefaultprocedures.
Structures
ApointertothefollowingstructureispassedtocallbacksontheXmNconvertCallbacklist:
typedefstruct
{
intreason/*thereasonthatthecallbackisinvoked*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Atomselection/*selectionforwhichconversionisrequested*/
Atomtarget/*theconversiontarget*/
XtPointersource_data/*selectionsourceinformation*/
XtPointerlocation_data/*informationaboutthedatatobetransferred*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page563
intflags/*inputstatusoftheconversion*/
XtPointerparm/*parameterdataforthetarget*/
intparm_format/*formatofparameterdata*/
unsignedlongparm_length/*numberofelementsinparameterdata*/
Atomparm_type/*thetypeoftheparameterdata*/
intstatus/*outputstatusoftheconversion*/
XtPointervalue/*returnedconversiondata*/
Atomtype/*typeofconversiondatareturned*/
intformat/*formatoftheconversiondata*/
unsignedlonglength/*numberofelementsintheconversiondata*/
}XmConvertCallbackStruct

selectionrepresentstheselectionforwhichconversionisrequested.CLIPBOARD,PRIMARY,SECONDARY,or_MOTIF_DROParethepossible
values(thatis,thetypesofdatatransferthattheUTMsupports).
targetrepresentstherequiredformatforthedatatotransfer,expressedasanatom.
source_dataprovidesdatarelatedtothesourceoftheselection.Ifselectionis_MOTIF_DROP,source_datapointstoaDragContext
objectotherwise,itisNULL.
location_dataspecifieswherethedatatobeconvertedistobefound.Iflocation_dataisNULL,conversiondataisinterpretedasthewidget'scurrent
selection.Otherwise,theinterpretationoflocation_dataiswidgetclassspecific.
flagsspecifiesthecurrentstatusoftheconversion.Possiblevaluesofthisenumeratedtypeare:
XmCONVERTING_NONE/*unused*/
XmCONVERTING_PARTIAL/*some,butnotall,oftargetdataisconverted*/
XmCONVERTING_SAME/*conversiontargetissourceofthetransferdata*/
XmCONVERTING_TRANSACT/*unused*/

parmcontainsextradataassociatedwithtarget.Iftargetistheatomrepresentedby_MOTIF_CLIPBOARD_TARGETSor
_MOTIF_DEFERRED_CLIPBOARD_TARGETS,parmisoneofXmCOPY,XmMOVE,orXmLINK.parmisanarrayofdataitems,thenumberof
suchitemsisspecifiedbyparm_length,andthetypeofeachitembyparm_format.
parm_formatspecifieswhetherthedatawithinparmisrepresentedbyalistofchar,short,orlongquantities.Ifparm_formatis0(zero),parmisNULL.
Aparm_formatvalueof8indicatesparmislogicallyalistofchar,16representsalistofshortquantities,and32isforalistoflongvalues.parm_format
indicateslogicaltype,notphysicalimplementation:aparm_formatof32indicatesalistoflongquantities,evenifaparticularmachinehas64bitlongs.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page564

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

parm_lengthspecifiesthenumberofdataitemsattheparmaddress.
parm_typespecifiesthetypeoftheparmdata,expressedasanatom.ThedefaultisXA_INTEGER.
statusspecifiesthestatusoftheconversion.Theinitial(default)valueisXmCONVERT_DEFAULT,which,ifunchangedbythecallback,invokesanyconversion
proceduresassociatedwiththewidgetclasswhenthecallbackfinishes.ThesearetheconvertProcmethodsofanyXmQTtransfertraitthatthewidget
holds.Anyconverteddataproducedbyawidgetclassroutineoverwritesanydatafromthecallback.IfthecallbacksetsstatustoXmCONVERT_MERGE,
widgetclassconversionproceduresareinvoked,merginganydatasoproducedwithconversiondatafromthecallback.Areturnedstatusof
XmCONVERT_REFUSEindicatesthatthecallbackterminatestheconversionprocesswithoutcompletion,andnowidgetclassproceduresaretobeinvoked.
XmCONVERT_DONEsimilarlyresultsinnowidgetclassprocedureinvocation,butinthisinstancethecallbackindicatesthatconversionhasbeensuccessfully
completed.
valueiswherethecallbackplacestheresultoftheconversionprocess.ThedefaultisNULL.Itisassumedthatanyvaluespecifiedisdynamicallyallocatedby
theprogrammer,althoughtheprogrammermustnotsubsequentlyfreethevaluethisisperformedbytheUTM.Itistheresponsibilityoftheprogrammertoensurethat
thetype,format,andlengthelementsareappropriatelysettomatchanydataplacedinvalue.
typespecifiesthelogicaltypeofanydatareturnedwithinvalue,expressedasanatom.
formatspecifieswhetherthedatawithinvalueisrepresentedbyalistofchar,short,orlongquantities.Ifformatis0(zero),valueisNULL.Aformat
valueof8indicatesvalueislogicallyalistofchar,16representsalistofshortquantities,and32isforalistoflongvalues.formatindicateslogicaltype,not
physicalimplementationaformatof32indicatesalistoflongvalues,eveniftheyareactually64bits.
lengthspecifiesthenumberofdataitemsatthevalueaddress.
CallbacksontheXmNdestinationCallbacklistarepassedapointertothefollowingstructure:
typedefstruct
{
intreason/*reasonthatthecallbackisinvoked*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Atomselection/*therequestedselectiontype,asanatom*/
XtEnumoperation/*thetypeoftransferrequested*/
intflags/*whetherdestinationandsourcearethesame*/
XtPointertransfer_id/*uniqueidentifierfortherequest*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page565
XtPointerdestination_data/*informationaboutthedestination*/
XtPointerlocation_data/*informationaboutthedata*/
Timetime/*timewhentransferoperationstarted*/
}XmDestinationCallbackStruct

selectionspecifies,asanatom,thetypeofselectionforwhichdatatransferisrequired.CLIPBOARD,PRIMARY,SECONDARY,or_MOTIF_DROP
arethepossiblelogicalvalues.
operationindicatesthetypeofdatatransferoperationrequested.Thepossiblevaluesare:
XmCOPY/*copytransfer*/
XmMOVE/*movetransfer*/
XmLINK/*linktransfer*/
XmOTHER/*informationcontainedwithindestination_dataelement*/

IfoperationisXmOTHER,destination_datacontainsapointertoanXmDropProcCallbackStruct,whichcontainsanoperation
element.SeeXmDropSiteformoreinformationconcerningtheXmDropProcCallbackStruct.
flagsindicateswhetherthesourceofthetransferdataisalsothedestination.Possiblevaluesare:
XmCONVERTING_NONE/*destinationisnotthesourceofthedata*/
XmCONVERTING_SAME/*destinationisthesourceofthedata*/

transfer_idspecifiesauniqueidentifierforthecurrenttransferrequest.
destination_dataspecifiesinformationaboutthedestinationofthetransferoperation.Iftheselectionis_MOTIF_DROP,thecallbackhasbeen
invokedbyanXmDropProcofthedropsite,anddestination_datacontainsapointertoanXmDropProcCallbackStruct.Iftheselectionis
SECONDARY,destination_dataisanatomrepresentingatargettypeintowhichtheselectionownersuggeststhetransfershouldbeconverted.
Otherwise,destination_dataisNULL.
location_datadetermineswherethedataistobetransferred.Theinterpretationvariesbetweenthewidgetclasses.IntheContainerwidget,thevalueof
location_dataisapointertoanXPointstructure,containingthexandycoordinatesofthetransferlocation.Iflocation_dataisNULL,dataistobe
transferredtothecurrentcursorlocationforthewidget.
timeistheservertimewhenthetransferoperationwasinitiated.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page566

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Transferproceduresarepassedapointertothefollowingstructuretheinterpretationoftheelementsisthesameasthoseinthecallbacksdescribedpreviously:
typedefstruct
{
intreason/*reasonthatthecallbackisinvoked*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Atomselection/*therequestedselectiontype,asanatom*/
Atomtarget/*theconversiontarget*/
Atomtype/*typeofconversiondatareturned*/
XtPointertransfer_id/*uniqueidentifierfortherequest*/
intflags/*whetherdestinationandsourcearesame*/
intremaining/*numbertransfersremainingfortransfer_id*/
XtPointervalue/*returnedconversiondata*/
unsignedlonglength/*numberofelementsinconversiondata*/
intformat/*formatoftheconversiondata*/
}XmSelectionCallbackStruct

Example
ThefollowingisanexampleXmNdestinationCallbackthatsimplyrequeststhelistofexporttargetsfromthesourceandwhichspecifiesatransfer
procedureforhandlingthedataimport:
voiddestination_handler(w,client_data,call_data)
Widgetw
XtPointerclient_data
XtPointercall_data
{
XmDestinationCallbackStruct*dptr=
(XmDestinationCallbackStruct*)call_data

AtomTARGETS=XmInternAtom(XtDisplay(w),"TARGETS",False)

/*transferprocedurewillissueasubsequentrequest*/
/*fordatainaspecifictargetformat.itreceives*/
/*thelistofsupportedtargetsfromthesource.*/
XmTransferValue(dptr>transfer_id,
TARGETS,
(XtCallbackProc)transfer_procedure,
NULL,
XtLastTimestampProcessed())
}

ThefollowingexampleXmNconvertCallbackprocedureexportstheselectedtextwithinaTextwidget.AlthoughtheconvertProcmethodassociated
withtheText's

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page567

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmQTtransfertraitperformsthistaskinamodifiedform,thecodedoesoutlinethebasicstructurerequired:
voidconvert_callback(w,client_data,call_data)
Widgetw
XtPointerclient_data
XtPointercall_data
{
XmConvertCallbackStruct*cptr=(XmConvertCallbackStruct*)call_data
AtomTARGETS,CB_TARGETS,SELECTED_TEXT
Atomtargets[1]
Display*display=XtDisplay(w)

TARGETS=XmInternAtom(display,"TARGETS",False)
CB_TARGETS=XmInternAtom(display,
"_MOTIF_CLIPBOARD_TARGETS",False)
SELECTED_TEXT=XmInternAtom(display,"SELECTED_TEXT",False)

/*ifthedestinationhasrequestedthelistofsupportedtargets*/
/*thisisreturnedinthecallbackdata*/
if((cptr>target==TARGETS)||(cptr>target==CB_TARGETS)){
targets[0]=SELECTED_TEXT
cptr>type=XA_ATOM
cptr>value=(XtPointer)targets
cptr>length=1
cptr>format=32

/*mergethedatawiththelistoftargetssupportedby*/
/*theconvertProcmethodoftheXmQTtransfertrait*/
cptr>status=XmCONVERT_MERGE
}
else{
if(cptr>target==SELECTED_TEXT){
char*selection=XmTextGetSelection(w)
/*destinationhasrequestedthenewtarget*/
cptr>value=selection
/*exportedtargetistherequestedtarget*/
cptr>type=cptr>target
cptr>format=8
cptr>length=(selection?strlen(selection):0)

/*conversioncomplete*/
cptr>status=XmCONVERT_DONE
}
else{
/*targetisonethisprocedureisnothandling*/
/*resultiseitherXmCONVERT_MERGEorXmCONVERT_DEFAULT*/
/*dependingonwhetherwethrowawayresultsfromany*/
/*otherconvertcallbackwehaveregistered.*/
/*thedefaultisXmCONVERT_DEFAULT*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page568
returnXmCONVERT_DEFAULT
}
}

returnXmCONVERT_DEFAULT
}

Hereisanexampletransferprocedure,whichisregisteredbyaXmNdestinationCallbackusingXmTransferValue():
voidtransfer_procedure(w,client_data,call_data)
Widgetw
XtPointerclient_data
XtPointercall_data
{
XmSelectionCallbackStruct*sptr=(XmSelectionCallbackStruct*)call_data
AtomTARGETS,CB_TARGETS,SELECTED_TEXT
Display*display=XtDisplay(w)
Atom*targets,choice
inti

choice=(Atom)0
TARGETS=XmInternAtom(display,"TARGETS",False)
CB_TARGETS=XmInternAtom(display,"_MOTIF_CLIPBOARD_TARGETS",False)
SELECTED_TEXT=XmInternAtom(display,"SELECTED_TEXT",False)

if(((sptr>target==TARGETS)||(sptr>target==CB_TARGETS))&&
(sptr>type==XA_ATOM)){
/*destinationcallbackrequestedlistoftargetsfromthesource*/
/*thesourceconvertCallbackreturnsthelist.Wenowchoose...*/

targets=(Atom*)sptr>value

for(i=0i<sptr>lengthi++){
if(targets[i]==SELECTED_TEXT){
/*thesourceexportsselectedtext.letspickthisone...*/
choice=targets[i]
}
}

/*There'snoselectionwelike...*/
if(choice==(Atom)0){
XmTransferDone(sptr>transfer_id,XmTRANSFER_DONE_FAIL)
return
}

/*nowgobacktosourceandaskforthedatainformatofchoice*/
/*mightaswelluseourselfagainastransferprocedure...*/

XmTransferValue(sptr>transfer_id,
choice,/*PreferredSELECTED_TEXTtarget*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page569
transfer_procedure,
NULL,
XtLastTimestampProcessed())
}
elseif(sptr>target==SELECTED_TEXT){
/*inserttheselectedtextatourowninsertionpoint*/
XmTextPositionpos=XmTextGetInsertionPosition(w)

XmTextInsert(w,pos,(char*)sptr>value)

/*alldone*/
XmTransferDone(sptr>transfer_id,XmTRANSFER_DONE_SUCCEED)
}
}

SeeAlso
XmTransferDone(1),XmTransferSendRequest(1),XmTransferSetParameters(1),XmTransferStartRequest(1),
XmTransferValue(1),XmContainer(2),XmDrawingArea(2),XmPrimitive(2),XmScale(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page570

XmTransferDone
XmUniformTransferModel
Name
XmTransferDonecompleteadatatransferoperation.
Synopsis
#include<Xm/Transfer.h>
voidXmTransferDone(transfer_id,status)
XtPointertransfer_id
XmTransferStatusstatus

Inputs
transfer_id

Specifiesauniqueidentifierforthetransferoperation.

status

Specifiesthecompletionstatusofthetransfer.

Availability
Motif2.0andlater.
Description
UndertheUniformTransferModel,XmTransferDone()completesadatatransferoperation.Theprocedureiscalledfromdestinationcallbacksortransfer
proceduresinordertosignaltheendofdatatransferbacktothesourceofthedata.
transfer_iduniquelyidentifiesatransferoperation.Thevalueissuppliedfromthetransfer_idelementofeithera
XmDestinationCallbackStructpassedtothedestinationcallback,oraXmSelectionCallbackStructpassedtoatransferprocedure.
statusissettoindicatethestatusofthecurrenttransferoperationandissentbacktotheselectionowner.statusisoneofXmTRANSFER_DONE_FAIL,
XmTRANSFER_DONE_SUCCEED,XmTRANSFER_DONE_CONTINUE,orXmTRANSFER_DONE_DEFAULT.Thestatus
XmTRANSFER_DONE_DEFAULTignoresallremainingqueuedtransferoperationsthatmayhavebeeninitiatedwithinthedestinationcallbacksandinvokesthe
widgetclassdefaulttransferprocedures.Thatis,anyunprocessedmultiplebatchedrequestscreatedbetweenXmTransferStartRequest()and
XmTransferEndRequest()callsareskipped.IfstatusisXmTRANSFER_DONE_FAIL,theXmNtransferStatusofthecurrentDropTransfer
objectissettoXmTRANSFER_FAILURE.XmTRANSFER_DONE_SUCCEEDandXmTRANSFER_DONE_CONTINUEaresimilar,exceptthatwith
XmTRANSFER_DONE_CONTINUEtheowneroftheselectionisnotnotifiedifthetargetis_MOTIF_SNAPSHOT.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page571

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
InMotif2.0andlater,theUniformTransferModel(UTM)enhancestheMotif1.2datatransfermechanismsbyprovidingastandardinterfacebywhichthesource
anddestinationofthedatatransfercancommunicate.TheimplementationoftheUTMisthroughXmNconvertCallbackand
XmNdestinationCallbackresourceprocedures.Aconvertcallbackisassociatedwiththesourceofthedataandisresponsibleforexportingdatainthe
formatrequiredbythedestinationwidget.Thedestinationcallbackisresponsibleforrequestingdatafromthesourceintheformatitrequires,bycalling
XmTransferValue(),Thedestinationcallbacktypicallydoesnotimportthedatadirectly,butspecifiesatransferproceduretoperformtheinsertionofdataat
thedestinationwidget.ThetransferprocedureisspecifiedbypassingaroutineasaparametertotheXmTransferValue()call.Whenthetransferisfinished,
eitherbecauseithascompletedorbecauseithasbeenterminatedduetoanerror,thetransferprocedurecallsXmTransferDone()toreturnthestatustothe
source.
Example
ThefollowingexampletransferprocedurecallsXmTransferDone()toindicatethestatusofthedatadrop:
voidtransfer_procedure(w,client_data,call_data)
Widgetw
XtPointerclient_data
XtPointercall_data
{
XmSelectionCallbackStruct*sptr=
(XmSelectionCallbackStruct*)call_data
AtomTARGETS,CB_TARGETS,IMPORT_FORMAT
Display*display=XtDisplay(w)
Atom*targets,choice
inti

TARGETS=XmInternAtom(display,"TARGETS",False)
CB_TARGETS=XmInternAtom(display,
"_MOTIF_CLIPBOARD_TARGETS",False)
IMPORT_FORMAT=XmInternAtom(display,"IMPORT_FORMAT",False)

if(((sptr>target==TARGETS)||(sptr>target==CB_TARGETS))&&
(sptr>type==XA_ATOM)){
/*destinationcallbackrequestedlistoftargetsfromthesource*/
/*thesourceconvertCallbackreturnsthelist.Wenowchoose...*/

targets=(Atom*)sptr>value
choice=(Atom)0

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page572
for(i=0i<sptr>lengthi++){
if(targets[i]==IMPORT_FORMAT){
/*thesourceexportsourrequiredtarget...*/
choice=targets[i]
}
}

if(choice==(Atom)0){
/*sourcedoesnotexportwhatwerequire*/
/*assumedestinationProcintheXmQTtransferTrait*/
/*doesnoteither...*/
XmTransferDone(sptr>transfer_id,XmTRANSFER_DONE_FAIL)

return
}

/*nowgobacktosourceandaskforthedatainformatofchoice*/
/*mightaswelluseourselfagainastransferprocedure...*/
XmTransferValue(sptr>transfer_id,
choice,/*IMPORT_FORMAT*/
transfer_procedure,
NULL,
XtLastTimestampProcessed())
}
elseif(sptr>target==IMPORT_FORMAT){
/*performwhateverisrequiredtoimportsptr>value*/
...

/*alldone*/
XmTransferDone(sptr>transfer_id,XmTRANSFER_DONE_SUCCEED)
}
else{
/*wrongexporttarget*/
XmTransferDone(sptr>transfer_id,XmTRANSFER_DONE_FAIL)
}
}

Structures
TheXmTransferStatustypehasthefollowingpossiblevalues:
XmTRANSFER_DONE_CONTINUE

XmTRANSFER_DONE_DEFAULT

XmTRANSFER_DONE_FAIL

XmTRANSFER_DONE_SUCCEED

SeeAlso
XmTransfer(1),XmTransferSendRequest(1),XmTransferSetParameters(1),XmTransferStartRequest(1),
XmTransferValue(1),XmDropTransfer(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page573

XmTransferSendRequest
XmUniformTransferModel
Name
XmTransferSendRequestsendamultipletransferrequest.
Synopsis
#include<Xm/Transfer.h>
voidXmTransferSendRequest(transfer_id,time)
XtPointertransfer_id
Timetime

Inputs
transfer_id

Specifiesauniqueidentifierforthetransferoperation.

time

Specifiesthetimeofthetransfer.

Availability
Motif2.0andlater.
Description
IntheUniformTransferModel,XmTransferSendRequest()markstheendofaseriesoftransferrequestsstartedbyXmTransferStartRequest
().transfer_iduniquelyidentifiesatransferoperation.Thevaluecomesfromthetransfer_idelementofa
XmDestinationCallbackStructorXmSelectionCallbackStructpassedtoadestinationcallbackortransferprocedure,respectively.time
specifiesthetimeoftheXEventthatinitiatedthedatatransfer.XtLastTimestampProcessed()isthesimplestmethodofspecifyingthetimevalue.
Usage
InMotif2.0andlater,theUniformTransferModel(UTM)enhancestheMotif1.2datatransfermechanismsbyprovidingastandardinterfacebywhichthesource
anddestinationofthedatatransfercancommunicate.TheimplementationoftheUTMisthroughXmNconvertCallbackand
XmNdestinationCallbackresourceprocedures.Thedestinationcallbackisresponsibleforrequestingdatafromthesourceintheformatitrequires,by
callingXmTransferValue().AsetofdatatransferrequestscanbequeuedbywrappingaseriesofXmTransferValue()callswithin
XmTransferStartRequest()andXmTransferSendRequest()calls.
SeeAlso
XmTransfer(1),XmTransferDone(1),XmTransferSetParameters(1),XmTransferStartRequest(1),
XmTransferValue(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page574

XmTransferSetParameters
XmUniformTransferModel
Name
XmTransferSetParameterssetparametersfornexttransfer.
Synopsis
#include<Xm/Transfer.h>
voidXmTransferSetParameters(transfer_id,parm,parm_format,
parm_length,parm_type)
XtPointertransfer_id
XtPointerparm
intparm_format
unsignedlongparm_length
Atomparm_type

Inputs
transfer_id

Specifiesauniqueidentifierforthetransferoperation.

parm

Specifiesparameterstobepassedtoconversionroutines.

parm_format

Specifiestheformatofdataintheparmargument.

parm_length

Specifiesthenumberofelementswithintheparmdata.

parm_type

Specifiesthetypeofparm.

Availability
Motif2.0andlater.
Description
IntheUniformTransferModel,XmTransferSetParameters()definesparameterdataforasubsequentXmTransferValue()call.
transfer_iduniquelyidentifiesatransferoperation.Thevalueissuppliedfromthetransfer_idelementofaXmDestinationCallbackStruct
orXmSelectionCallbackStructpassedtoadestinationcallbackortransferprocedure,respectively.
parmspecifiesparameterdatatobepassedtotheconversionfunctiontheXmNconvertCallbackproceduresofthesourcewidgetthatownsthe
selection.parm_formatspecifieswhetherthedatawithinparmconsistsof8,16,or32bitquantities.parm_lengthspecifiesthenumberofelements,of
sizedeterminedbyparm_format,thatareattheaddressparm.parm_typespecifiesthelogicaltypeofparmandisapplicationspecific.NeitherMotif,the
XTookit,northeXLibraryinterpretparm_typeinanymanner.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page575

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Usage
InMotif2.0andlater,theUniformTransferModelenhancestheMotif1.2datatransfermechanismsbyprovidingastandardinterfacebywhichthesourceand
destinationofthedatatransfercancommunicate.TheprogrammerprovidesXmNdestinationCallbackproceduresthatissuetherequesttotransferdata
fromthesourceofthetransferbycallingXmTransferValue().AnyparameterizeddatafortheXmTransferValue()procedureisestablishedthrougha
priorXmTransferSetParameters()call.XmTransferSetParameters()isaconveniencefunctionthatmapssimplyontoa
XtSetSelectionParameters()call.
SeeAlso
XmTransfer(1),XmTransferDone(1),XmTransferSendRequest(1),XmTransferStartRequest(1),
XmTransferValue(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page576

XmTransferStartRequest
XmUniformTransferModel
Name
XmTransferStartRequestinitiateamultipletransferrequest.
Synopsis
#include<Xm/Transfer.h>
voidXmTransferStartRequest(transfer_id)
XtPointertransfer_id

Inputs
transfer_id

Specifiesauniqueidentifierforthecurrentdatatransfer
operation.

Availability
Motif2.0andlater.
Description
IntheUniformTransferModel,XmTransferStartRequest()initiatesthestartofaseriesoftransferrequests.transfer_iduniquelyidentifiesa
transferoperation.Thevalueissuppliedfromthetransfer_idelementofaXmDestinationCallbackStructor
XmSelectionCallbackStructpassedtoadestinationcallbackortransferprocedure,respectively.
Usage
InMotif2.0andlater,theUniformTransferModelenhancestheMotif1.2datatransfermechanismsbyprovidingastandardinterfacebywhichthesourceand
destinationofthedatatransfercancommunicate.Asetofdatatransferrequestscanbequeuedbywrappingtheseriesofrequestswithin
XmTransferStartRequest()andXmTransferSendRequest()calls.TheprocedureXmTransferValue()providesthedatatransfer
requestsinthequeue.
SeeAlso
XmTransfer(1),XmTransferDone(1),XmTransferSendRequest(1),XmTransferSetParameters(1),
XmTransferValue(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page577

XmTransferValue
XmUniformTransferModel
Name
XmTransferValuetransferdatatoadestination.
Synopsis
#include<Xm/Transfer.h>
voidXmTransferValue(transfer_id,target,callback,client_data,
time)
XtPointertransfer_id
Atomtarget
XtCallbackProccallback
XtPointerclient_data
Timetime

Inputs
transfer_id

Specifiesauniqueidentifierforthecurrentdatatransferoperation.

target

Specifiesthetargettowhichtheselectionistobeconverted.

callback

Specifiesatransferproceduretobecalledwhentheselectionhasbeen
convertedbythesource.

client_data

Specifiesapplicationdatatobepassedtocallback.

time

Specifiesthetimeofthetransfer.

Availability
Motif2.0andlater.
Description
IntheUniformTransferModel,XmTransferValue()arrangestotransferdatafromthesourceoftransferdatatothedestination.transfer_iduniquely
identifiesatransferoperation.Thevalueissuppliedfromthetransfer_idelementofaXmDestinationCallbackStructor
XmSelectionCallbackStructpassedtoadestinationortransfercallback,respectively.
targetspecifiestheselectiontobeconvertedandtransferred.Iftargetis_MOTIF_DROP,thefunctioninvokesXmDropTransferStart()with
internaltransferprocedurestoperformthedatatransfer.Otherwise,thedataisextractedfromtheselectionusingXtGetSelectionValue().
callbackisatransferprocedure,anapplicationprocedurethatiscalledwhenthedataisconvertedandavailablefromthesource.client_dataisanydata
thatthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page578

programmerwantstobepassedtothecallback.Thecallbackisinvokedwiththreeparameters:thedestinationwidget,theapplicationclient_data,
andapointertoaXmSelectionCallbackStruct.
timespecifiesthetimeoftheXEventwhichinitiatedthedatatransfer.XtLastTimestampProcessed()isthesimplestmethodofspecifyingthetimevalue.
Usage
InMotif2.0andlater,theUniformTransferModel(UTM)enhancestheMotif1.2datatransfermechanismsbyprovidingastandardinterfacebywhichthesource
anddestinationofthedatatransfercancommunicate.TheimplementationoftheUTMisthroughXmNconvertCallbackand
XmNdestinationCallbackresourceprocedures.Aconvertcallbackisassociatedwiththesourceofthedataandisresponsibleforexportingdatainthe
formatrequiredbythedestination.Thedestinationcallbackisresponsibleforrequestingdatafromthesourceintheformatitrequires,bycalling
XmTransferValue().Thedestinationcallbackitselfdoesnottypicallyinsertthetransferreddataintothedestinationwidget,butratherspecifiesatransfer
procedure,whichperformstheimport,asaparametertotheXmTransferValue()call.
XmTransferValue()iscalledfromdestinationcallbacksortransferprocedurestoeffecttheactualtransferofdatafromthesource,whetherthatbethe
clipboardorawidget.TheprogrammerdefinedcallbackreplacestheXmNtransferProcaddedtoaDropTransferobject,whichtheUniformTransfer
Modelinternallyencapsulatesandhides.
SeeAlso
XmTransfer(1),XmTransferDone(1),XmTransferSendRequest(1),XmTransferSetParameters(1),
XmTransferStartRequest(1),XmDropTransfer(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page579

XmTranslateKey
XmKeyboardHandling
Name
XmTranslateKeyconvertakeycodetoakeysymusingthedefaulttranslator.
Synopsis
#include<Xm/Xm.h>
voidXmTranslateKey(display,keycode,modifiers,modifiers_return,
keysym_return)
Display*display
KeyCodekeycode
Modifiersmodifiers
Modifiers*modifiers_return
KeySym*keysym_return

Inputs
display

SpecifiesaconnectiontoanXserverreturnedfromXOpenDisplay
()orXtDisplay().

keycode

Specifiesthekeycodethatistranslated.

modifiers

Specifiesthemodifierkeysthatareappliedtothekeycode.

Outputs
modifiers_return

Returnsthemodifiersusedbythekeytranslatortogeneratethe
keysym.

keysym_return

Returnstheresultingkeysym.

Availability
Motif1.2andlater.
Description
XmTranslateKey()isthedefaultXtKeyProctranslationprocedureusedbyMotifapplications.Theroutinetakesakeycodeandmodifiersandreturnsthe
correspondingosfkeysym.
Usage
TheMotiftoolkitusesamechanismcalledvirtualbindingstomaponesetofkeysymstoanotherset.Thismappingpermitswidgetsandapplicationstouseonesetof
keysymsintranslationtablesapplicationsanduserscanthencustomizethekeysymsusedinthetranslationsbasedontheparticularkeyboardthatisbeingused.
Keysymsthatcan

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page580

beusedinthiswayarecalledosfkeysyms.Motifmaintainsamappingbetweentheosfkeysymsandtheactualkeysymsthatrepresentkeysonaparticular
keyboard.SeetheintroductiontoSection2,MotifandXtWidgetClasses,formoreinformationaboutthemappingofosfkeysymstoactualkeysyms.
XmTranslateKey()isusedbytheXToolkitduringeventprocessingtotranslatethekeycodeofaneventtotheappropriateosfkeysymifthereisamapping
forthekeysym.Theeventisthendispatchedtotheappropriateactionroutineifthereisatranslationfortheosfkeysym.
Ifyouneedtoprovideanewtranslatorwithexpandedfunctionality,youcancallXmTranslateKey()togetthedefaulttranslation.Use
XtSetKeyTranslator()toregisteranewkeytranslator.Toreinstallthedefaultbehavior,youcancallXtSetKeyTranslator()with
XmTranslateKey()astheprocargument.
SeeAlso
xmbind(3).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page581

XmUninstallImage
XmPixmaps
Name
XmUninstallImageremoveanimagefromtheimagecache.
Synopsis
BooleanXmUninstallImage(image)
XImage*image

Inputs
image

Specifiestheimagestructuretoberemoved.

Returns
TrueonsuccessorFalseifimageisNULLoritcannotbefound.
Description
XmUninstallImage()removesthespecifiedimagefromtheimagecache.TheroutinereturnsTrueifitissuccessful.ItreturnsFalseifimageis
NULLorifimageisnotfoundintheimagecache.
Usage
XmUninstallImage()removesanimagefromtheimagecache.Onceanimageisuninstalled,itcannotbereferencedagainandanewimagecanbeinstalled
withthesamename.Ifyouhavecreatedanypixmapsthatusetheimage,theyarenotaffectedbytheimagebeinguninstalled,sincetheyarebasedonimagedata,not
theimageitself.Afteranimagehasbeenuninstalled,youcansafelyfreetheimage.
SeeAlso
XmDestroyPixmap(1),XmGetPixmap(1),XmInstallImage(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page582

XmUpdateDisplay
XmDisplay
Name
XmUpdateDisplayupdatethedisplay.
Synopsis
voidXmUpdateDisplay(widget)
Widgetwidget

Inputs
widget

Specifiesanywidget.

Description
XmUpdateDisplay()causesallpendingexposureeventstobeprocessedimmediately,insteadofhavingthemremaininthequeueuntilallofthecallbackshave
beeninvoked.
Usage
XmUpdateDisplay()providesapplicationswithawaytoforceanvisualupdateofthedisplay.Becausecallbacksareinvokedbeforenormalexposure
processingoccurs,whenamenuoradialogboxisunposted,thedisplayisnotupdateduntilallofthecallbackshavebeencalled.Thisroutineisusefulwhenevera
timeconsumingactionmightdelaytheredrawingofthewindowsonthedisplay.
SeeAlso
XmDisplay(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page583

XmVaCreateSimpleCheckBox
XmWidgetCreation
Name
XmVaCreateSimpleCheckBoxcreateaCheckBoxcompoundobject.
Synopsis
WidgetXmVaCreateSimpleCheckBox(parent,name,callback,...,NULL)
Widgetparent
Stringname
XtCallbackProccallback

Inputs
parent

SpecifiesthewidgetIDoftheparentofthenewwidget.

name

Specifiesthestringnameofthenewwidgetforresourcelookup.

callback

Specifiesthecallbackprocedurethatiscalledwhenthevalueofabutton
changes.

...,NULL

ANULLterminatedvariablelengthlistofresourcename/valuepairs.

Returns
ThewidgetIDoftheRowColumnwidget.
Description
XmVaCreateSimpleCheckBox()isaRowColumnconvenienceroutinethatcreatesaCheckBoxwithToggleButtonGadgetsasitschildren.Thisroutineis
similartoXmCreateSimpleCheckBox(),butitusesaNULLterminatedvariablelengthargumentlistinplaceofthearglistandargcount
parameters.Thevariablelengthargumentlistspecifiesresourcename/valuepairsaswellasthechildrenoftheCheckBox.Thecallbackargumentspecifiesthe
callbackroutinethatisaddedtotheXmNvalueChangedCallbackofeachToggleButtonGadgetchildoftheCheckBox.Whenthecallbackisinvoked,the
buttonnumberofthebuttonwhosevaluehaschangedispassedtothecallbackintheclient_dataparameter.
ThenameofeachToggleButtonGadgetchildisbutton_n,wherenisthenumberofthebutton,rangingfrom0(zero)to1lessthanthenumberofbuttonsinthe
CheckBox.Thebuttonsarecreatedandnamedintheorderinwhichtheyarespecifiedinthevariablelengthargumentlist.
Usage
Avariablelengthargumentlistiscomposedofseveralgroupsofarguments.Withineachgroup,thefirstargumentisaconstantorastringthatspecifieswhich
arguments

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page584

followinthegroup.Thefirstargumentcanbeoneofthefollowingvalues:XmVaCHECKBUTTON,aresource_name,XtVaTypedList,or
XtVaNestedList.ThevariablelengthargumentlistmustbeNULLterminated.
IfthefirstargumentinagroupisXmVaCHECKBUTTON,itisfollowedbyfourarguments:label,mnemonic,accelerator,and
accelerator_text.ThisgroupspecifiesaToggleButtonGadgetchildoftheCheckBoxanditsassociatedresources.(AsofMotif1.2andlater,allbutthe
labelargumentareignored.)
Ifthefirstargumentinagroupisaresource_namestring,itisfollowedbyaresourcevalueoftypeXtArgVal.Thisgroupspecifiesastandardresource
name/valuepairfortheRowColumnwidget.IfthefirstargumentinagroupisXtVaTypedArg,itisfollowedbyfourarguments:name,type,value,and
size.ThisgroupspecifiesaresourcenameandvalueusingthestandardXtVaTypedArgformat.IfthefirstargumentinagroupisXtVaNestedList,itis
followedbyoneargumentoftypeXtVarArgsList,whichisreturnedbyXtVaCreateArgsList().
Example
YoucanuseXmVaCreateSimpleCheckBox()asinthefollowingexample:
Widgettoplevel,check_box
XmStringnormal,bold,italic

normal=XmStringCreateLocalized("normal")
bold=XmStringCreateLocalized("bold")
italic=XmStringCreateLocalized("italic")
check_box=XmVaCreateSimpleCheckBox(toplevel,"check_box",toggled,
XmVaCHECKBUTTON,normal,NULL,NULL,NULL,
XmVaCHECKBUTTON,bold,NULL,NULL,NULL,
XmVaCHECKBUTTON,italic,NULL,NULL,NULL,
NULL)
XmStringFree(normal)
XmStringFree(bold)
XmStringFree(italic)

SeeAlso
XmCheckBox(2),XmRowColumn(2),XmToggleButtonGadget(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page585

XmVaCreateSimpleMenuBar
XmWidgetCreation
Name
XmVaCreateSimpleMenuBarcreateaMenuBarcompoundobject.
Synopsis
WidgetXmVaCreateSimpleMenuBar(parent,name,...,NULL)
Widgetparent
Stringname

Inputs
parent

SpecifiesthewidgetIDoftheparentofthenewwidget.

name

Specifiesthestringnameofthenewwidgetforresourcelookup.

...,NULL

ANULLterminatedvariablelengthlistofresourcename/valuepairs.

Returns
ThewidgetIDoftheRowColumnwidget.
Description
XmVaCreateSimpleMenuBar()isaRowColumnconvenienceroutinethatcreatesaMenuBarwithCascadeButtonGadgetsasitschildren.Thisroutineis
similartoXmCreateSimpleMenuBar(),butitusesaNULLterminatedvariablelengthargumentlistinplaceofthearglistandargcountparameters.
Thevariablelengthargumentlistspecifiesresourcename/valuepairsaswellasthechildrenoftheMenuBar.
ThenameofeachCascadeButtonGadgetisbutton_n,wherenisthenumberofthebutton,rangingfrom0(zero)to1lessthanthenumberofbuttonsinthe
MenuBar.Thebuttonsarecreatedandnamedintheorderinwhichtheyarespecifiedinthevariablelengthargumentlist.
Usage
Avariablelengthargumentlistiscomposedofseveralgroupsofarguments.Withineachgroup,thefirstargumentisaconstantorastringthatspecifieswhich
argumentsfollowinthegroup.Thefirstargumentcanbeoneofthefollowingvalues:XmVaCASCADEBUTTON,aresource_name,XtVaTypedList,or
XtVaNestedList.ThevariablelengthargumentlistmustbeNULLterminated.
IfthefirstargumentinagroupisXmVaCASCADEBUTTON,itisfollowedbytwoarguments:labelandmnemonic.Thisgroupspecifiesa
CascadeButtonGadgetchildoftheMenuBaranditsassociatedresources.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page586

Ifthefirstargumentinagroupisaresource_namestring,itisfollowedbyaresourcevalueoftypeXtArgVal.Thisgroupspecifiesastandardresource
name/valuepairfortheRowColumnwidget.IfthefirstargumentinagroupisXtVaTypedArg,itisfollowedbyfourarguments:name,type,value,and
size.ThisgroupspecifiesaresourcenameandvalueusingthestandardXtVaTypedArgformat.IfthefirstargumentinagroupisXtVaNestedList,itis
followedbyoneargumentoftypeXtVarArgsList,whichisreturnedbyXtVaCreateArgsList().
Example
YoucanuseXmVaCreateSimpleMenuBar()asinthefollowingexample:
Widgettop,mainw,menubar,fmenu,emenu
XmStringfile,edit,new,quit,cut,clear,copy,paste

file=XmStringCreateLocalized("File")
edit=XmStringCreateLocalized("Edit")
menubar=XmVaCreateSimpleMenuBar(main_w,"menubar",
XmVaCASCADEBUTTON,file,'F',
XmVaCASCADEBUTTON,edit,'E',
NULL)
XmStringFree(file)
XmStringFree(edit)

new=XmStringCreateLocalized("New")
quit=XmStringCreateLocalized("Quit")
fmenu=XmVaCreateSimplePulldownMenu(menubar,"file_menu",0,file_cb,
XmVaPUSHBUTTON,new,'N',NULL,NULL.
XmVaSEPARATOR,
XmVaPUSHBUTTON,quit,'Q',NULL,NULL,
NULL)
XmStringFree(new)
XmStringFree(quit)

cut=XmStringCreateLocalized("Cut")
copy=XmStringCreateLocalized("Copy")
clear=XmStringCreateLocalized("Clear")
paste=XmStringCreateLocalized("Paste")
emenu=XmVaCreateSimplePulldownMenu(menubar,"edit_menu",0,cut_paste,
XmVaPUSHBUTTON,cut,'C',NULL,NULL,
XmVaPUSHBUTTON,copy,'O',NULL,NULL,
XmVaPUSHBUTTON,paste,'P',NULL,NULL,
XmVaSEPARATOR,
XmVaPUSHBUTTON,clear,'l',NULL,NULL,
NULL)
XmStringFree(cut)
XmStringFree(clear)
XmStringFree(copy)
XmStringFree(paste)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page587

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmCascadeButtonGadget(2),XmMenuBar(2),XmRowColumn(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page588

XmVaCreateSimpleOptionMenu
XmWidgetCreation
Name
XmVaCreateSimpleOptionMenucreateanOptionMenucompoundobject.
Synopsis
WidgetXmVaCreateSimpleOptionMenu(parent,name,option_label,
option_mnemonic,button_set,callback,...,NULL)
Widgetparent
Stringname
XmStringoption_label
KeySymoption_mnemonic
intbutton_set
XtCallbackProccallback

Inputs
parent

SpecifiesthewidgetIDoftheparentofthenewwidget.

name

Specifiesthestringnameofthenewwidgetforresourcelookup.

option_label

SpecifiesthelabelusedfortheOptionMenu.

option_mnemonic

SpecifiesthemnemoniccharacterassociatedwiththeOptionMenu.

button_set

SpecifiestheinitialsettingoftheOptionMenu.

callback

Specifiesthecallbackprocedurethatiscalledwhenabuttonisactivated.

...,NULL

ANULLterminatedvariablelengthlistofresourcename/valuepairs.

Returns
ThewidgetIDoftheRowColumnwidget.
Description
XmVaCreateSimpleOptionMenu()isaRowColumnconvenienceroutinethatcreatesanOptionMenualongwithitssubmenuofCascadeButtonGadget
and/orPushButtonGadgetchildren.ThisroutineissimilartoXmCreateSimpleOptionMenu(),butitusesaNULLterminatedvariablelengthargumentlistin
placeofthearglistandargcountparameters.Thevariablelengthargumentlistspecifiesresourcename/valuepairsaswellasthechildrenofthe
OptionMenu.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page589

Theoption_label,option_mnemonic,andbutton_setargumentsareusedtosettheXmNlabelString,XmNmnemonic,and
XmNmenuHistoryresourcesoftheRowColumnrespectively.Thebutton_setparameterspecifiesthenthbuttonchildoftheOptionMenu,wherethefirst
buttonisbutton0(zero)theXmNmenuHistoryresourceissettotheactualwidget.Thecallbackargumentspecifiesthecallbackroutinethatisaddedtothe
XmNactivateCallbackofeachCascadeButtonGadgetandPushButtonGadgetchildinthesubmenuoftheOptionMenu.Whenthecallbackisinvoked,the
buttonnumberofthebuttonwhosevaluehaschangedispassedtothecallbackintheclient_dataparameter.
Thenameofeachbuttonisbutton_n,wherenisthenumberofthebutton,rangingfrom0(zero)to1lessthanthenumberofbuttonsinthesubmenu.Thenameof
eachseparatorisseparator_n,wherenisthenumberoftheseparator,rangingfrom0(zero)to1lessthanthenumberofseparatorsinthesubmenu.The
buttonsarecreatedandnamedintheorderinwhichtheyarespecifiedinthevariablelengthargumentlist.
Usage
Avariablelengthargumentlistiscomposedofseveralgroupsofarguments.Withineachgroup,thefirstargumentisaconstantorastringthatspecifieswhich
argumentsfollowinthegroup.Thefirstargumentcanbeoneofthefollowingvalues:XmVaPUSHBUTTON,XmVaCASCADEBUTTON,XmVaSEPARATOR,
XmVaDOUBLE_SEPARATOR,aresource_name,XtVaTypedList,orXtVaNestedList.ThevariablelengthargumentlistmustbeNULL
terminated.
IfthefirstargumentinagroupisXmVaPUSHBUTTON,itisfollowedbyfourarguments:label,mnemonic,accelerator,and
accelerator_text.ThisgroupspecifiesaPushButtonGadgetinthepulldownsubmenuoftheOptionMenuanditsassociatedresources.Ifthefirstargumentin
agroupisXmVaCASCADEBUTTON,itisfollowedbytwoarguments:labelandmnemonic.ThisgroupspecifiesaCascadeButtonGadgetinthepulldown
submenuoftheOptionMenuanditsassociatedresources.IfthefirstargumentinagroupisXmVaSEPARATORorXmVaDOUBLE_SEPARATOR,itisnot
followedbyanyarguments.ThesegroupsspecifySeparatorGadgetsinthepulldownsubmenuoftheOptionMenu.
Ifthefirstargumentinagroupisaresource_namestring,itisfollowedbyaresourcevalueoftypeXtArgVal.Thisgroupspecifiesastandardresource
name/valuepairfortheRowColumnwidget.IfthefirstargumentinagroupisXtVaTypedArg,itisfollowedbyfourarguments:name,type,value,and
size.ThisgroupspecifiesaresourcenameandvalueusingthestandardXtVaTypedArg

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page590

format.IfthefirstargumentinagroupisXtVaNestedList,itisfollowedbyoneargumentoftypeXtVarArgsList,whichisreturnedby
XtVaCreateArgsList().
Example
YoucanuseXmVaCreateSimpleOptionMenu()asinthefollowingexample:
Widgetrc,option_menu
XmStringdraw_shape,line,square,circle

draw_shape=XmStringCreateLocalized("DrawMode:")
line=XmStringCreateLocalized("Line")
square=XmStringCreateLocalized("Square")
circle=XmStringCreateLocalized("Circle")
option_menu=XmVaCreateSimpleOptionMenu(rc,"option_menu",
draw_shape,'D',0,option_cb,
XmVaPUSHBUTTON,line,'L',NULL,NULL,
XmVaPUSHBUTTON,square,'S',NULL,NULL,
XmVaPUSHBUTTON,circle,'C',NULL,NULL,
NULL)
XmStringFree(line)
XmStringFree(square)
XmStringFree(circle)
XmStringFree(draw_shape)

SeeAlso
XmOptionButtonGadget(1),XmOptionLabelGadget(1),XmCascadeButtonGadget(2),XmLabelGadget(2),
XmOptionMenu(2),XmPushButtonGadget(2),XmRowColumn(2),XmSeparatorGadget(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page591

XmVaCreateSimplePopupMenu
XmWidgetCreation
Name
XmVaCreateSimplePopupMenucreateaPopupMenucompoundobjectasthechildofaMenuShell.
Synopsis
WidgetXmVaCreateSimplePopupMenu(parent,name,callback,...,NULL)
Widgetparent
Stringname
XtCallbackProccallback

Inputs
parent

SpecifiesthewidgetIDoftheparentoftheMenuShell.

name

Specifiesthestringnameofthenewwidgetforresourcelookup.

callback

Specifiesthecallbackprocedurethatiscalledwhenabuttonisactivated
oritsvaluechanges.

...,NULL

ANULLterminatedvariablelengthlistofresourcename/valuepairs.

Returns
ThewidgetIDoftheRowColumnwidget.
Description
XmVaCreateSimplePopupMenu()isaRowColumnconvenienceroutinethatcreatesaPopupMenualongwithitsbuttonchildren.Theroutinecreatesthe
PopupMenuasachildofaMenuShell.ThisroutineissimilartoXmCreateSimplePopupMenu(),butitusesaNULLterminatedvariablelengthargumentlist
inplaceofthearglistandargcountparameters.Thevariablelengthargumentlistspecifiesresourcename/valuepairsaswellasthechildrenofthe
PopupMenu.ThecallbackargumentspecifiesthecallbackroutinethatisaddedtotheXmNactivateCallbackofeachCascadeButtonGadgetand
PushButtonGadgetchildandtheXmNvalueChangedCallbackofeachToggleButtonGadgetchildinthePopupMenu.Whenthecallbackisinvoked,the
buttonnumberofthebuttonwhosevaluehaschangedispassedtothecallbackintheclient_dataparameter.
Thenameofeachbuttonisbutton_n,wherenisthenumberofthebutton,rangingfrom0(zero)to1lessthanthenumberofbuttonsinthemenu.Thenameof
eachseparatorisseparator_n,wherenisthenumberoftheseparator,rangingfrom0(zero)to1lessthanthenumberofseparatorsinthemenu.Thenameof
eachtitleislabel_n,wherenisthenumberofthetitle,rangingfrom0(zero)to1lessthanthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page592

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

numberoftitlesinthemenu.Thebuttonsarecreatedandnamedintheorderinwhichtheyarespecifiedinthevariablelengthargumentlist.
Usage
Avariablelengthargumentlistiscomposedofseveralgroupsofarguments.Withineachgroup,thefirstargumentisaconstantorastringthatspecifieswhich
argumentsfollowinthegroup.Thefirstargumentcanbeoneofthefollowingvalues:XmVaPUSHBUTTON,XmVaCASCADEBUTTON,
XmVaRADIOBUTTON,XmVaCHECKBUTTON,XmVaTITLE,XmVaSEPARATOR,XmVaDOUBLE_SEPARATOR,aresource_name,
XtVaTypedList,orXtVaNestedList.ThevariablelengthargumentlistmustbeNULLterminated.
IfthefirstargumentinagroupisXmVaPUSHBUTTON,itisfollowedbyfourarguments:label,mnemonic,accelerator,and
accelerator_text.ThisgroupspecifiesaPushButtonGadgetchildofthePopupMenuanditsassociatedresources.Ifthefirstargumentinagroupis
XmVaCASCADEBUTTON,itisfollowedbytwoarguments:labelandmnemonic.ThisgroupspecifiesaCascadeButtonGadgetchildofthePopupMenuand
itsassociatedresources.IfthefirstargumentinagroupisXmVaRADIOBUTTONorXmVaCHECKBUTTON,itisfollowedbyfourarguments:label,
mnemonic,accelerator,andaccelerator_text.ThesegroupsspecifyToggleButtonGadgetchildrenofthePopupMenuandtheirassociated
resources.
IfthefirstargumentisXmVaTITLE,itisfollowedbyatitleargument.ThisgroupspecifiesaLabelGadgettitleinthePopupMenuanditsassociatedresource.If
thefirstargumentinagroupisXmVaSEPARATORorXmVaDOUBLE_SEPARATOR,itisnotfollowedbyanyarguments.Thesegroupsspecify
SeparatorGadgetsinthePopupMenu.
Ifthefirstargumentinagroupisaresource_namestring,itisfollowedbyaresourcevalueoftypeXtArgVal.Thisgroupspecifiesastandardresource
name/valuepairfortheRowColumnwidget.IfthefirstargumentinagroupisXtVaTypedArg,itisfollowedbyfourarguments:name,type,value,and
size.ThisgroupspecifiesaresourcenameandvalueusingthestandardXtVaTypedArgformat.IfthefirstargumentinagroupisXtVaNestedList,itis
followedbyoneargumentoftypeXtVarArgsList,whichisreturnedbyXtVaCreateArgsList().
Example
YoucanuseXmVaCreateSimplePopupMenu()asinthefollowingexample:
Widgetdrawing_a,popup_menu
XmStringline,square,circle,quit,quit_acc

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page593
line=XmStringCreateLocalized("Line")
square=XmStringCreateLocalized("Square")
circle=XmStringCreateLocalized("Circle")
quit=XmStringCreateLocalized("Quit")
quit_acc=XmStringCreateLocalized("CtrlC")
popup_menu=XmVaCreateSimplePopupMenu(drawing_a,"popup",popup_cb,
XmVaPUSHBUTTON,line,NULL,NULL,NULL,
XmVaPUSHBUTTON,square,NULL,NULL,NULL,
XmVaPUSHBUTTON,circle,NULL,NULL,NULL,
XmVaSEPARATOR,
XmVaPUSHBUTTON,quit,NULL,"Ctrl<Key>c",quit_acc,
NULL)
XmStringFree(line)
XmStringFree(square)
XmStringFree(circle)
XmStringFree(quit)
XmStringFree(quit_acc)

SeeAlso
XmCascadeButtonGadget(2),XmLabelGadget(2),XmMenuShell(2),XmPopupMenu(2),XmPushButtonGadget(2),
XmRowColumn(2),XmSeparatorGadget(2),XmToggleButtonGadget(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page594

XmVaCreateSimplePulldownMenu
XmWidgetCreation
Name
XmVaCreateSimplePulldownMenucreateaPulldownMenucompoundobjectasthechildofaMenuShell.
Synopsis
WidgetXmVaCreateSimplePulldownMenu(parent,name,post_from_button,
callback,...,NULL)
Widgetparent
Stringname
intpost_from_button
XtCallbackProccallback

Inputs
parent

SpecifiesthewidgetIDoftheparentoftheMenuShell.

name

Specifiesthestringnameofthenewwidgetforresourcelookup.

post_from_button

SpecifiestheCascadeButtonorCascadeButtonGadgetinthe
parentwidgettowhichthemenuisattached.

callback

Specifiesthecallbackprocedurethatiscalledwhenabuttonis
activatedoritsvaluechanges.

...,NULL

ANULLterminatedvariablelengthlistofresourcename/value
pairs.

Returns
ThewidgetIDoftheRowColumnwidget.
Description
XmVaCreateSimplePulldownMenu()isaRowColumnconvenienceroutinethatcreatesaPulldownMenualongwithitsbuttonchildren.Theroutine
createsthePulldownMenuasachildofaMenuShell.ThisroutineissimilartoXmCreateSimplePulldownMenu(),butitusesaNULLterminatedvariable
lengthargumentlistinplaceofthearglistandargcountparameters.Thevariablelengthargumentlistspecifiesresourcename/valuepairsaswellasthe
childrenofthePulldownMenu.
Thepost_from_buttonparameterspecifiestheCascadeButtonorCascadeButtonGadgettowhichthePulldownMenuisattachedasasubmenu.The
argumentspecifiesthenthCascadeButtonorCascadeButtonGadget,wherethefirstbuttonisbutton0(zero).Thecallbackargumentspecifiesthecallback
routinethatisaddedtotheXmNactivateCallbackofeachCascadeButtonGadgetandPushButtonGadgetchild

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page595

andtheXmNvalueChangedCallbackofeachToggleButtonGadgetchildinthePulldownMenu.Whenthecallbackisinvoked,thebuttonnumberofthe
buttonwhosevaluehaschangedispassedtothecallbackintheclient_dataparameter.
Thenameofeachbuttonisbutton_n,wherenisthenumberofthebutton,rangingfrom0(zero)to1lessthanthenumberofbuttonsinthemenu.Thenameof
eachseparatorisseparator_n,wherenisthenumberoftheseparator,rangingfrom0(zero)to1lessthanthenumberofseparatorsinthemenu.Thenameof
eachtitleislabel_n,wherenisthenumberofthetitle,rangingfrom0(zero)to1lessthanthenumberoftitlesinthemenu.Thebuttonsarecreatedandnamedin
theorderinwhichtheyarespecifiedinthevariablelengthargumentlist.
Usage
Avariablelengthargumentlistiscomposedofseveralgroupsofarguments.Withineachgroup,thefirstargumentisaconstantorastringthatspecifieswhich
argumentsfollowinthegroup.Thefirstargumentcanbeoneofthefollowingvalues:XmVaPUSHBUTTON,XmVaCASCADEBUTTON,
XmVaRADIOBUTTON,XmVaCHECKBUTTON,XmVaTITLE,XmVaSEPARATOR,XmVaDOUBLE_SEPARATOR,aresource_name,
XtVaTypedList,orXtVaNestedList.ThevariablelengthargumentlistmustbeNULLterminated.
IfthefirstargumentinagroupisXmVaPUSHBUTTON,itisfollowedbyfourarguments:label,mnemonic,accelerator,and
accelerator_text.ThisgroupspecifiesaPushButtonGadgetchildofthePulldownMenuanditsassociatedresources.Ifthefirstargumentinagroupis
XmVaCASCADEBUTTON,itisfollowedbytwoarguments:labelandmnemonic.ThisgroupspecifiesaCascadeButtonGadgetchildofthePulldownMenu
anditsassociatedresources.IfthefirstargumentinagroupisXmVaRADIOBUTTONorXmVaCHECKBUTTON,itisfollowedbyfourarguments:label,
mnemonic,accelerator,andaccelerator_text.ThesegroupsspecifyToggleButtonGadgetchildrenofthePulldownMenuandtheirassociated
resources.
IfthefirstargumentisXmVaTITLE,itisfollowedbyatitleargument.ThisgroupspecifiesaLabelGadgettitleinthePulldownMenuanditsassociatedresource.
IfthefirstargumentinagroupisXmVaSEPARATORorXmVaDOUBLE_SEPARATOR,itisnotfollowedbyanyarguments.Thesegroupsspecify
SeparatorGadgetsinthePulldownMenu.
Ifthefirstargumentinagroupisaresource_namestring,itisfollowedbyaresourcevalueoftypeXtArgVal.Thisgroupspecifiesastandardresource
name/valuepairfortheRowColumnwidget.IfthefirstargumentinagroupisXtVaTypedArg,itisfollowedbyfourarguments:name,type,value,and
size.ThisgroupspecifiesaresourcenameandvalueusingthestandardXtVaTypedArg

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page596

format.IfthefirstargumentinagroupisXtVaNestedList,itisfollowedbyoneargumentoftypeXtVarArgsList,whichisreturnedby
XtVaCreateArgsList().
Example
YoucanuseXmVaCreateSimplePulldownMenu()asinthefollowingexample:
Widgettop,mainw,menubar,fmenu,emenu
XmStringfile,edit,new,quit,cut,clear,copy,paste

file=XmStringCreateLocalized("File")
edit=XmStringCreateLocalized("Edit")
menubar=XmVaCreateSimpleMenuBar(main_w,"menubar",
XmVaCASCADEBUTTON,file,'F',
XmVaCASCADEBUTTON,edit,'E',
NULL)
XmStringFree(file)
XmStringFree(edit)

new=XmStringCreateLocalized("New")
quit=XmStringCreateLocalized("Quit")
fmenu=XmVaCreateSimplePulldownMenu(menubar,"file_menu",0,file_cb,
XmVaPUSHBUTTON,new,'N',NULL,NULL,
XmVaSEPARATOR,
XmVaPUSHBUTTON,quit,'Q',NULL,NULL,
NULL)
XmStringFree(new)
XmStringFree(quit)

cut=XmStringCreateLocalized("Cut")
copy=XmStringCreateLocalized("Copy")
clear=XmStringCreateLocalized("Clear")
paste=XmStringCreateLocalized("Paste")
emenu=XmVaCreateSimplePulldownMenu(menubar,"edit_menu",1,cut_paste,
XmVaPUSHBUTTON,cut,'C',NULL,NULL,
XmVaPUSHBUTTON,copy,'o',NULL,NULL,
XmVaPUSHBUTTON,paste,'P',NULL,NULL,
XmVaSEPARATOR,
XmVaPUSHBUTTON,clear,'1',NULL,NULL,
NULL)
XmStringFree(cut)
XmStringFree(clear)
XmStringFree(copy)
XmStringFree(paste)

SeeAlso
XmCascadeButtonGadget(2),XmLabelGadget(2),XmMenuShell(2),XmPulldownMenu(2),XmPushButtonGadget
(2),XmRowColumn(2),XmSeparatorGadget(2),XmToggleButtonGadget(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page597

XmVaCreateSimpleRadioBox
XmWidgetCreation
Name
XmVaCreateSimpleRadioBoxcreateaRadioBoxcompoundobject.
Synopsis
WidgetXmVaCreateSimpleRadioBox(parent,name,button_set,callback,
...,NULL)
Widgetparent
Stringname
intbutton_set
XtCallbackProccallback

Inputs
parent

SpecifiesthewidgetIDoftheparentofthenewwidget.

name

Specifiesthestringnameofthenewwidgetforresourcelookup.

button_set

SpecifiestheinitialsettingoftheRadioBox.

callback

Specifiesthecallbackprocedurethatiscalledwhenthevalueofabutton
changes.

...,NULL

ANULLterminatedvariablelengthlistofresourcename/valuepairs.

Returns
ThewidgetIDoftheRowColumnwidget.
Description
XmVaCreateSimpleRadioBox()isaRowColumnconvenienceroutinethatcreatesaRadioBoxwithToggleButtonGadgetsasitschildren.Thisroutineis
similartoXmCreateSimpleRadioBox(),butitusesaNULLterminatedvariablelengthargumentlistinplaceofthearglistandargcount
parameters.Thevariablelengthargumentlistspecifiesresourcename/valuepairsaswellasthechildrenoftheCheckBox.Thebutton_setargumentisusedto
settheXmNmenuHistoryresourceoftheRowColumn.TheparameterspecifiesthenthbuttonchildoftheRadioBox,wherethefirstbuttonisbutton0(zero)the
XmNmenuHistoryresourceissettotheactualwidget.Thecallbackargumentspecifiesthecallbackroutinethatisaddedtothe
XmNvalueChangedCallbackofeachToggleButtonGadgetchildoftheRadioBox.Whenthecallbackisinvoked,thebuttonnumberofthebuttonwhose
valuehaschangedispassedtothecallbackintheclient_dataparameter.
ThenameofeachToggleButtonGadgetchildisbutton_n,wherenisthenumberofthebutton,rangingfrom0(zero)to1lessthanthenumberofbuttonsinthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page598

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

RadioBox.Thebuttonsarecreatedandnamedintheorderinwhichtheyarespecifiedinthevariablelengthargumentlist.
Usage
Avariablelengthargumentlistiscomposedofseveralgroupsofarguments.Withineachgroup,thefirstargumentisaconstantorastringthatspecifieswhich
argumentsfollowinthegroup.Thefirstargumentcanbeoneofthefollowingvalues:XmVaRADIOBUTTON,aresource_name,XtVaTypedList,or
XtVaNestedList.ThevariablelengthargumentlistmustbeNULLterminated.IfthefirstargumentinagroupisXmVaRADIOBUTTON,itisfollowedbyfour
arguments:label,mnemonic,accelerator,andaccelerator_text.ThisgroupspecifiesaToggleButtonGadgetchildoftheRadioBoxandits
resources.(AsofMotif1.2andlater,allbutthelabelargumentareignored.)
Ifthefirstargumentinagroupisaresource_namestring,itisfollowedbyaresourcevalueoftypeXtArgVal.Thisgroupspecifiesastandardresource
name/valuepairfortheRowColumnwidget.IfthefirstargumentinagroupisXtVaTypedArg,itisfollowedbyfourarguments:name,type,value,and
size.ThisgroupspecifiesaresourcenameandvalueusingthestandardXtVaTypedArgformat.IfthefirstargumentinagroupisXtVaNestedList,itis
followedbyoneargumentoftypeXtVarArgsList,whichisreturnedbyXtVaCreateArgsList().
Example
YoucanuseXmVaCreateSimpleRadioBox()asinthefollowingexample:
Widgettoplevel,radio_box
XmStringone,two,three

one=XmStringCreateLocalized("WFNX")
two=XmStringCreateLocalized("WMJX")
three=XmStringCreateLocalized("WXKS")
radio_box=XmVaCreateSimpleRadioBox(toplevel,"radio_box",
0,toggled,
XmVaRADIOBUTTON,one,NULL,NULL,NULL,
XmVaRADIOBUTTON,two,NULL,NULL,NULL,
XmVaRADIOBUTTON,three,NULL,NULL,NULL,
NULL)
XmStringFree(one)
XmStringFree(two)
XmStringFree(three)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page599

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmRadioBox(2),XmRowColumn(2),XmToggleButtonGadget(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page600

XmWidgetGetBaselines
XmWidgetLayout
Name
XmWidgetGetBaselinesgetthepositionsofthebaselinesinawidget.
Synopsis
BooleanXmWidgetGetBaselines(widget,baselines,line_count)
Widgetwidget
Dimension**baselines
int*line_count

Inputs
widget

Specifiesthewidgetforwhichtogetbaselinevalues.

Outputs
baselines

Returnsanarraycontainingthevalueofeachbaselineoftextinthe
widget.

line_count Returnsthenumberoflinesoftextinthewidget.

Returns
TrueifthewidgetcontainsatleastonebaselineorFalseotherwise.
Availability
Motif1.2andlater.
Description
XmWidgetGetBaselines()returnsanarraythatcontainsthebaselinevaluesforthespecifiedwidget.Foreachlineoftextinthewidget,thebaselinevalue
istheverticaloffsetinpixelsfromtheoriginoftheboundingboxofthewidgettothetextbaseline.Theroutinereturnsthebaselinevaluesinbaselinesandthe
numberoflinesoftextinthewidgetinline_count.XmWidgetGetBaselines()returnsTrueifthewidgetcontainsatleastonelineoftextand
thereforehasabaseline.Ifthewidgetdoesnotcontainanytext,theroutinereturnsFalseandthevaluesofbaselinesandline_countareundefined.The
routineallocatesstorageforthereturnedvalues.TheapplicationisresponsibleforfreeingthisstorageusingXtFree().
Usage
XmWidgetGetBaselines()providesinformationthatisusefulwhenyouarelayingoutanapplicationandtryingtoaligndifferentcomponents.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page601

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmWidgetGetDisplayRect(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page602

XmWidgetGetDisplayRect
XmWidgetLayout
Name
XmWidgetGetDisplayRectgetthedisplayrectangleforawidget.
Synopsis
BooleanXmWidgetGetDisplayRect(widget,displayrect)
Widgetwidget
XRectangle*displayrect

Inputs
widget

Specifiesthewidgetforwhichtogetthedisplayrectangle.

Outputs
displayrect ReturnsanXRectanglethatspecifiesthedisplayrectangleofthe
widget.

Returns
TrueifthewidgethasadisplayrectangleorFalseotherwise.
Availability
Motif1.2andlater.
Description
XmWidgetGetDisplayRect()getsthedisplayrectangleforthespecifiedwidget.Theroutinereturnsthewidth,theheight,andthexandycoordinates
oftheupperleftcornerofthedisplayrectangleinthedisplayrectXRectangle.Allofthevaluesarespecifiedaspixels.Thedisplayrectangleforawidget
isthesmallestrectanglethatenclosesthestringorthepixmapinthewidget.XmWidgetGetDisplayRect()returnsTrueifthewidgethasadisplay
rectangleotheritreturnsFalseandthevalueofdisplayrectisundefined.
Usage
XmWidgetGetDisplayRect()provideinformationthatisusefulwhenyouarelayingoutanapplicationandtryingtoaligndifferentcomponents.
SeeAlso
XmWidgetGetBaselines(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page603

PARTII
MOTIFANDXTWIDGETCLASSES
ThissectiondescribesthewidgetsandgadgetsavailableintheMotiftoolkit,includingvariouscompoundobjects(suchasdialogs,menubars,andpulldownmenus)
thatarenotreallyseparatewidgetorgadgetclasses,butcanbecreatedasiftheywere,withacalltoasingleconvenienceroutine.Objectsarepresented
alphabetically,startingwithabriefdescriptionandthenlistinginformationinseparatesections.Forgadgets,welistonlythatinformationwhichdiffersfromthe
correspondingwidgetforcompoundobjects,wepresentonlythedescriptionandreferyoutotheunderlyingobjects.
Thefirstreferencepage,Introduction,explainstheformatandcontentsofeachofthefollowingpages.ItalsoincludesadiagramoftheMotifwidgetclasshierarchy
anddescribestheMotifvirtualbindingmechanism.

InThisSection:
Introduction

BulletinBoardDialog

FileSelectionBox

MessageBox

RowColumn

ToggleButton

ApplicationShell

CascadeButton

FileSelectionDialog

MessageDialog

Scale

ToggleButtonGadget

Composite

CascadeButtonGadget

Form

Notebook

Screen

WarningDialog

Constraint

CheckBox

FormDialog

OptionMenu

ScrollBar

WorkingDialog

Core

ComboBox

Frame

PanedWindow

ScrolledList

Object

Command

Gadget

ParseMapping

ScrolledText

OverrideShell

Container

GrabShell

PopupMenu

ScrolledWindow

RectObj

DialogShell

IconGadget

Primitive

SelectionBox

Shell

Display

InformationDialog

PrintShell

SelectionDialog

TopLevelShell

DragContext

Label

PromptDialog

Separator

TransientShell

DragIcon

LabelGadget

PulldownMenu

SeparatorGadget

VendorShell

DrawingArea

List

PushButton

SimpleSpinBox

WMShell

DrawnButton

MainWindow

PushButtonGadget

SpinBox

ArrowButton

DropSite

Manager

QuestionDialog

TemplateDialog

ArrowButtonGadget

DropTransfer

MenuBar

RadioBox

Text

BulletinBoard

ErrorDialog

MenuShell

Rendition

TextField

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page605

Introduction
MotifandXtWidgetClasses
ThispagedescribestheformatandcontentsofeachreferencepageinSection2,whichcoverseachoftheMotifandXtIntrinsicswidgettypes.
Name
Widgetabriefdescriptionofthewidget.
Synopsis
PublicHeaders:

Thefilestoincludewhenyouusethiswidget.

ClassName:

Thenameofthewidgetclassusedastheresourceclassforeachinstanceofthe
widget.

ClassHierarchy:

Thesuperclassesofthiswidget,listedinsuperclasstosubclassorder.Thearrow
symbol( )indicatesasubclass.

ClassPointer:

Theglobalvariablethatpointstothewidgetclassstructure.Thisisthevalueused
whencreatingawidget.

Instantiation:

Ccodethatinstantiatesthewidget,forwidgetsthatcanbeinstantiated.Forthe
widgetsandgadgetsintheMotiftoolkit,wehaveshownhowtoinstantiatethe
widgetusingXtCreateWidget().Eachwidgetandgadgethasa
conveniencecreationroutineofthegeneralform:
WidgetXmCreateobject(Widgetparent,String
name,ArgListarglist,Cardinalargcount)
whereobjectistheshorthandfortheclass.

Functions/Macros: Functionsand/ormacrosspecifictothiswidgetclass.

Availability
ThissectiondescribestheavailabilityofthewidgetclassacrossvariousversionsofMotif.Thesectionisomittedifthewidgetclasshasalwaysbeenpresentinthe
toolkit.
Description
Thissectiongivesanoverviewofthewidgetclassandthefunctionalityitprovides.
Traits
Thissectionappearsforanytraitsthataresetbythewidgetclass.TheTraitmechanismsareavailableinMotif2.0andlater.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page606

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewResources
Thissectionpresentsatableoftheresourcesthatarenewlydefinedbyeachwidgetclass(notinheritedfromasuperclass).Inadditiontotheresource'sname,class,
datatype,anddefaultvalue,afifthcolumnlistsacodeconsistingofoneormoreofthelettersC,S,andG.Thiscodeindicateswhethertheresourcecanbesetwhen
thewidgetiscreated(C),whetheritcanbesetwithXtSetValues()(S),andwhetheritcanbereadwithXtGetValues()(G).Abriefdescriptionofeach
newresourcefollowsthetable.Forresourceswhosevaluesaredefinedconstants,theseconstantsarelisted.Unlessotherwisenoted,theyaredefinedin
<Xm/Xm.h>.
OtherNewResources
Ifpresent,thesesectionsdescriberesourcesassociatedwithspecificusesofthewidgetforexample,RowColumnwidgetresourcesforusewithsimplecreation
routines,orTextwidgetresourcesforuseintextinput.
CallbackResources
Thissectionpresentsatableofthecallbackresourcesthatarenewlydefinedbythisclass.Thetableliststhenameofeachresourcealongwithitsreasonconstant.
CallbackStructure
Thissectionliststhestructure(s)associatedwiththeobject'scallbackfunctions.
Procedures
Thissectionlistsanyprocedureorfunctionprototypesassociatedwiththewidget.
DefaultResourceValues
Thissectionpresentsatableofthedefaultresourcevaluesthataresetwhenacompoundobjectiscreated.
InheritedResources
Thissectionpresentsanalphabeticallyarrangedtableofinheritedresources,alongwiththesuperclassthatdefinesthem.
WidgetHierarchy
Thissectionpresentsthewidgetinstancehierarchythatresultsfromcreatingacompoundobject.ThefullwidgethierarchyisshowninFigure1.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page607

Figure1:
ClasshierarchyoftheMotifwidgetset

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page608

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Translations
Thissectionpresentsthetranslationsassociatedwitheachwidgetorgadget.BecausethebuttoneventsandkeyeventsusedinMotifdonotnecessarilycorrespondto
theeventsintheXWindowSystem,theMotiftoolkithascreatedamechanismcalledvirtualbindings.VirtualbindingslinkthetranslationsusedinMotiftotheirX
eventcounterparts.The''Translations"sectionslisttheireventsintermsofthesevirtualbindings.Inordertounderstandthesyntaxusedinthe"Translations"sectionsof
thesereferencepages,youmustunderstandthecorrespondencebetweenvirtualbindingsandactualkeysymsorbuttons.Thefollowingtablesdescribethevirtual
bindingsofevents.
VirtualModifier

ActualModifier

MAlt

<Mod1>

MCtrl

<Ctrl>

MShift

<Shift>

MLink

<Ctrl><Shift>

MMove

<Shift>

MCopy

<Ctrl>

VirtualButton

ActualButtonEvents

BCustom

<Btn3>

BTransfer

<Btn2>

BExtend

<Shift><Btn1>

BMenu

<Btn3>

BSelect

<Btn1>

BToggle

<Ctrl><Btn1>

VirtualKey

ActualKeyEvents

KActivate

<Key>Return

<Ctrl><Key>Return

<Key>osfActivate

KAddMode

<Key>osfAddMode

KBackSpace

<Key>osfBackSpace

KBackTab

<Shift><Key>Tab

KBeginData

<Ctrl><Key>osfBeginLine

KBeginLine

<Key>osfBeginLine

KCancel

<Key>osfCancel

KClear

<Key>osfClear

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page609

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
VirtualKey

ActualKeyEvents

KCopy

<Key>osfCopy

<Ctrl><Key>osfInsert

KCut

<Key>osfCut

<Shift><Key>osfDelete

KDelete

<Key>osfDelete

KDeselectAll

<Ctrl><Key>backslash

KDown

<Key>osfDown

KEndData

<Ctrl><Key>osfEndLine

KEndLine

<Key>osfEndLine

KEnter

<Key>Return

KEscape

<Key>Escape

KExtend

<Ctrl><Shift><Key>space

<Shift><Key>osfSelect

KHelp

<Key>osfHelp

KInsert

<Key>osfInsert

KLeft

<Key>osfLeft

KMenu

<Key>osfMenu

KMenuBar

<Key>osfMenuBar

KNextField

<Key>Tab

<Ctrl><Key>Tab

KNextMenu

<Ctrl><Key>osfDown

<Ctrl><Key>osfRight

KPageDown

<Key>osfPageDown

KPageLeft

<Ctrl><Key>osfPageUp

<Key>osfPageLeft

KPageRight

<Ctrl><Key>osfPageDown

KPageUp

<Key>osfPageUp

KPaste

<Key>osfPaste

<Shift><Key>osfInsert

KPrevField

<Shift><Key>Tab

<Ctrl><Shift><Key>Tab

KPrevMenu

<Ctrl><Key>osfUp

<Ctrl><Key>osfLeft

KPrimaryCopy

<Ctrl><Key>osfPrimaryPaste

<Mod1><Key>osfCopy

<Mod1><Ctrl><Key>osfInsert

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page610

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
VirtualKey

ActualKeyEvents

KPrimaryCut

<Mod1><Key><osfPrimaryPaste

<Mod1><Key>osfCut

<Mod1><Shift><Key>osfDelete

KPrimaryPaste

<Key>osfPrimaryPaste

KQuickCopy

<Ctrl><Key>osfQuickPaste

KQuickCut

<Mod1><Key>osfQuickPaste

KQuickExtend

<Shift><Key>osfQuickPaste

KQuickPaste

<Key>osfQuickPaste

KReselect

<Ctrl><Shift><Key>osfSelect

KRestore

<Ctrl><Shift><Key>osfInsert

KRight

<Key>osfRight

KSelect

<Key>space

<Ctrl><Key>space

<Key>osfSelect

KSelectAll

<Ctrl><Key>slash

KSpace

<Key>space

KTab

<Key>Tab

KUndo

<Key>osfUndo

<Mod1><Key>osfBackSpace

KUp

<Key>osfUp

KAny

<Key>

KeysymsthatbeginwiththelettersosfarenotdefinedbytheXserver.Thesekeysymsaregeneratedatruntimebyaclient,interpretedbyXmTranslateKey(),
andusedbythetranslationmanagerwhentheserversendsanactualkeyevent.Anapplicationmaintainsamappingbetweenosfkeysymsandactualkeysymsthatis
basedoninformationthatisretrievedatapplicationstartup.Thisinformationcomesfromoneofthefollowingsources,listedinorderofprecedence:
TheXmNdefaultVirtualBindingsresourceinaresourcedatabase.Asamplespecificationisshownbelow:
*defaultVirtualBindings:\
osfBackSpace:<Key>BackSpace\n\
osfInsert:<Key>InsertChar\n\
osfDelete:<Key>DeleteChar

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page611

Apropertyontherootwindow.mwmsetsthispropertyonstartup.ItcanalsobesetbythexmbindclientinMotif1.2orlater,orthepriorstartupofanotherMotif
application.
Afilenamed.motifbind,intheuser'shomedirectory.Inthisfile,thepreviousspecificationwouldbetypedasfollows:
osfBackSpace:<Key>BackSpace
osfInsert:<Key>InsertChar
osfDelete:<Key>DeleteChar

Avendorspecificsetofbindingslocatedusingthefilexmbind.alias.Ifthisfileexistsintheuser'shomedirectory,itissearchedforapathnameassociatedwiththe
vendorstringorthevendorstringandvendorrelease.Ifthesearchisunsuccessful,Motifcontinueslookingforxmbind.aliasinthedirectoryspecifiedby
XMBINDDIRorin/usr/lib/Xm/bindingsifthevariableisnotset.Ifthisfileexists,itissearchedforapathnameasbefore.Ifeithersearchlocatesapathnameandthe
fileexists,thebindingsinthatfileareused.Anxmbind.aliasfilecontainslinesofthefollowingform:
"vendor_string[vendor_release]"bindings_file

Viafixedfallbackdefaults.osfkeysymstringshavethefixedfallbackdefaultbindingslistedbelow:
osfActivate

<unbound>

osfAddMode

<Shift>F8

osfBackSpace

Backspace

osfBeginLine

Home

osfClear

Clear

osfCopy

<unbound>

osfCut

<unbound>

osfDelete

Delete

osfDown

Down

osfEndLine

End

osfCancel

<Escape>

osfHelp

F1

osfInsert

Insert

osfLeft

Left

osfMenu

F4

osfMenuBar

F10

osfPageDown

Next

osfPageLeft

<unbound>

osfPageRight

<unbound>

osfPageUp

Prior

osfPaste

<unbound>

osfPrimaryPaste

<unbound>

osfQuickPaste

<unbound>

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page612

osfRight

Right

osfSelect

Select

osfUndo

Undo

osfUp

Up

ActionRoutines
Thissectiondescribestheactionroutinesthatarelistedinthe"Translations"section.
Behavior
Thissectiondescribesthekeyboardandmouseeventsthataffectgadgets,whichdonothavetranslationsoractions.
AdditionalBehavior
Thissectiondescribesanyadditionalwidgetbehaviorthatisnotprovidedbytranslationsandactions.
SeeAlso
Thissectionrefersyoutorelatedfunctionsandwidgetclasses.Thenumbersinparenthesesfollowingeachreferencerefertothesectionsofthisbookinwhichtheyare
found.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page613

ApplicationShell
MotifandXtWidgetClasses
Name
ApplicationShellwidgetclassthemainshellforanapplication.
Synopsis
PublicHeaders:

<Xm/Xm.h>
<X11/Shell.h>

Class:

ApplicationShell

ClassHierarchy:

Core Composite
ApplicationShell

ClassPointer:

applicationShellWidgetClass

Shell

WMShell VendorShell

TopLevelShell

widget=XtAppInitialize(...)
Instantiation:
or
widget=XtAppCreateShell(app_name,app_class,
applicationShellWidgetClass,...)
Functions/Macros: XtAppCreateShell(),XtVaAppCreateShell(),
XtIsApplicationShell()

Description
AnApplicationShellisthenormaltoplevelwindowforanapplication.Itdoesnothaveaparentanditisattherootofthewidgettree.Anapplicationshouldhave
onlyoneApplicationShell,unlesstheapplicationisimplementedasmultiplelogicalapplications.Normally,anapplicationwilluseTopLevelShellwidgetsforothertop
levelwindows.AnApplicationShellisreturnedbythecalltoXtVaAppInitialize().Itcanalsobecreatedexplicitlywithacallto
XtVaAppCreateShell().
NewResources
ApplicationShelldefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNargc

XmCArgc

int

CSG

XmNargv

XmCArgv

String*

NULL

CSG

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page614

XmNargc
NumberofargumentsinXmNargv.
XmNargv
Listofcommandlineargumentsusedtostarttheapplication.ThisisthestandardCargv,passedinthecalltoXtAppInitialize().Itisusedtosetthe
WM_COMMANDpropertyforthiswindow,whichistheargumentlistrequiredbyasessionmanagertorestarttheapplicationifnecessary.Theresourcevaluecanbe
changedatappropriatepointsifsomespecificinternalstatehasbeenreachedfromwhichtheapplicationcanbedirectlyrestarted.
InheritedResources
ApplicationShellinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Thedefaultvalueof
XmNborderWidthisresetto0byVendorShell.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNlayoutDirection

VendorShell

XmNallowShellResize

Shell

XmNmappedWhenManaged

Core

XmNancestorSensitive

Core

XmNmaxAspectX

WMShell

XmNaudibleWarning

VendorShell

XmNmaxAspectY

WMShell

XmNbackground

Core

XmNmaxHeight

WMShell

XmNbackgroundPixmap

Core

XmNmaxWidth

WMShell

XmNbaseHeight

WMShell

XmNminAspectX

WMShell

XmNbaseWidth

WMShell

XmNminAspectY

WMShell

XmNborderColor

Core

XmNminHeight

WMShell

XmNborderPixmap

Core

XmNminWidth

WMShell

XmNborderWidth

Core

XmMmwmDecorations

VendorShell

XmNbuttonFontList

VendorShell

XmNmwmFunctions

VendorShell

XmNbuttonRenderTable

VendorShell

XmNmwmInputMode

VendorShell

XmNchildren

Composite

XmNmwmMenu

VendorShell

XmNcolormap

Core

XmNnumChildren

Composite

XmNcreatePopupChildProc

Shell

XmNoverrideRedirect

Shell

XmNdefaultFontList

VendorShell

XmNpopdownCallback

Shell

XmNdeleteResponse

VendorShell

XmNpopupCallback

Shell

XmNdepth

Core

XmNpreeditType

VendorShell

XmNdestroyCallback

Core

XmNsaveUnder

Shell

XmNgeometry

Shell

XmNscreen

Core

XmNheight

Core

XmNsensitive

Core

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page615

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNheightInc

WMShell

XmNshellUnitType

VendorShell

XmNiconic

TopLevelShell

XmNtextFontList

VendorShell

XmNiconMask

WMShell

XmNtextRenderTable

VendorShell

XmNiconName

TopLevelShell

XmNtitle

WMShell

XmNiconNameEncoding

TopLevelShell

XmNtitleEncoding

WMShell

XmNiconPixmap

WMShell

XmNtransient

WMShell

XmNiconWindow

WMShell

XmNtranslations

Core

XmNiconX

WMShell

XmNunitType

VendorShell

XmNiconY

WMShell

XmNuseAsyncGeometry

VendorShell

XmNinitialResources
Persistent

Core

XmNvisual

Shell

XmNinitialState

WMShell

XmNwaitForWm

WMShell

XmNinput

WMShell

XmNwidth

Core

XmNinputMethod

VendorShell

XmNwidthInc

WMShell

XmNinputPolicy

VendorShell

XmNwindowGroup

WMShell

XmNinsertPosition

Composite

XmNwinGravity

WMShell

XmNkeyboardFocusPolicy

VendorShell

XmNwmTimeout

WMShell

XmNlabelFontList

VendorShell

XmNx

Core

XmNlabelRenderTable

VendorShell

XmNy

Core

TheVendorShellsuperclassinstallsahandlerthatinterceptsthewindowmanagerWM_DELETE_WINDOWmessage.Thehandlerisinheritedbysubclassesof
VendorShell.IthasthebehaviorthatifXmNdeleteResponseisXmDESTROYandthewidgetisaninstanceofanApplicationShell,theapplicationcontext
associatedwiththewidgetisdestroyed,followedbyacalltoexit().
SeeAlso
Composite(2),Core(2),Shell(2),TopLevelShell(2),VendorShell(2),WMShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page616

Composite
MotifandXtWidgetClasses
Name
Compositewidgetclassthefundamentalwidgetthatcanhavechildren.
Synopsis
PublicHeaders:

<Xm/Xm.h>
<X11/Composite.h>

ClassName:

Composite

ClassHierarchy:

Core Composite

ClassPointer:

compositeWidgetClass

Instantiation:

CompositeisanIntrinsicsmetaclassandisnotnormally
instantiated.

Functions/Macros: XtIsComposite()

Description
Compositewidgetscontainotherwidgets.ACompositewidgetsupportsanarbitrarynumberofchildren,althoughderivedclassesmayimposealimitforwhatever
reason.Compositehandlesthegeometrymanagementofitschildren.Italsomanagesthedestructionofdescendantswhenitisdestroyed.ChildrenofaComposite
widgetareordered,andCompositeprovidesthemeanstosortorplacethelistofchildreninsomelogicalorder.
NewResources
Compositedefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNchildren

XmCReadOnly

WidgetList

NULL

XmNinsertPosition

XmCInsertPosition

XtOrderProc

NULL

CSG

XmNnumChildren

XmCReadOnly

Cardinal

XmNchildren
Listofwidget'schildren.
XmNinsertPosition
PointstoanXtOrderProc()functionthatiscalledtodeterminethepositionatwhicheachchildisinsertedintotheXmNchildrenarray.Compositesupplies
adefaultfunctionthatappendschildrenintheorderofcreation.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page617

XmNnumChildren
LengthofthelistinXmNchildren.
Procedures
XtOrderProc
AnXtOrderProcisapointertoafunction,specifiedasfollows:
typedefCardinal(*XtOrderProc)(Widget)

AnXtOrderProcfunctioniscalledbytheinsert_childmethodofaCompositeorderivedclass,whenanewchildiscreatedwithinthewidget.The
functiontakesasingleparameter,whichisthewidgetIDofthenewchild.Thefunctionreturnsthenumberofchildrenthatgobeforethenewchildinthe
XmNchildrenarray.
Compositesuppliesadefaultfunctionthatsimplyappendsnewchildrenintheorderofcreation.Subclassesmaysupplyalternativedefaultbehavior.Programmers
maysupplytheirownXtOrderProctosortchildreninsomespecifiedmanner.
InheritedResources
Compositeinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNheight

Core

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNscreen

Core

XmNborderColor

Core

XmNsensitive

Core

XmNborderPixmap

Core

XmNtranslations

Core

XmNborderWidth

Core

XmNwidth

Core

XmNcolormap

Core

XmNx

Core

XmNdepth

Core

XmNy

Core

XmNdestroyCallback

Core

SeeAlso
Core(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page618

Constraint
MotifandXtWidgetClasses
Name
Constraintwidgetclassawidgetthatprovidesconstraintresourcesforitschildren.
Synopsis
PublicHeaders:

<Xm/Xm.h>
<X11/Constraint.h>

ClassName:

Constraint

ClassHierarchy:

Core

ClassPointer:

constraintWidgetClass

Instantiation:

ConstraintisanIntrinsicsmetaclassandisnotnormally
instantiated.

Functions/Macros:

XtIsConstraint()

Composite

Constraint

Description
Constraintwidgetsaresonamedbecausetheymaymanagethegeometryoftheirchildrenbasedonconstraintsassociatedwitheachchild.Theseconstraintscanbeas
simpleasthemaximumwidthandheighttheparentallowsthechildtooccupy,orascomplicatedashowotherchildrenchangeifachildismovedorresized.
Constraintwidgetsletaparentdefineresourcesthataresuppliedfortheirchildren.Forexample,ifaConstraintparentdefinesthemaximumwidthandheightforits
children,theseresourcesareretrievedforeachchildasiftheyareresourcesthataredefinedbythechildwidgetitself.
NewResources
Constraintdoesnotdefineanynewresources.
InheritedResources
Constraintinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNheight

Core

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNmappedWhenManaged

Core

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page619

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNbackgroundPixmap

Core

XmNscreen

Core

XmNborderColor

Core

XmNsensitive

Core

XmNborderPixmap

Core

XmNtranslations

Core

XmNborderWidth

Core

XmNwidth

Core

XmNcolormap

Core

XmNx

Core

XmNdepth

Core

XmNy

Core

XmNdestroyCallback

Core

SeeAlso
Composite(2),Core(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page620

Core
MotifandXtWidgetClasses
Name
Corewidgetclassthefundamentalclassforwindowedwidgets.
Synopsis
PublicHeader:

<Xm/Xm.h>
<X11/Core.h>

ClassName:

Core

ClassHierarchy:

Object

ClassPointer:

widgetClassorcoreWidgetClass

Instantiation:

CoreisanIntrinsicsmetaclassandisnotnormallyinstantiated.

Functions/Macros:

XtIsWidget()

RectObj unnamed

Core

Description
Coreisthefundamentalclassforwindowedwidgets.AllwidgetswithwindowsaresubclassesofCore.TheObjectandRectObjclassessupportgadgets
(windowlesswidgets).Coreissometimesinstantiatedforuseasabasicdrawingarea.
NewResources
Coredefinesthefollowingresources(someofwhichareactuallydefinedbytheObjectandRectObjclasses):
Name

Class

Type

Default

Access

XmNaccelerators

XmCAccelerators

XtAccelerators

dynamic

CSG

XmNancestorSensitive

XmCSensitive

Boolean

dynamic

XmNbackground

XmCBackground

Pixel

dynamic

CSG

XmNbackgroundPixmap

XmCPixmap

Pixmap

XmUNSPECIFIED_PIXMAP

CSG

XmNborderColor

XmCBorderColor

Pixel

XtDefaultForeground

CSG

XmNborderPixmap

XmCPixmap

Pixmap

XmUNSPECIFIED_PIXMAP

CSG

XmNborderWidth

XmCBorderWidth

Dimension

CSG

XmNcolormap

XmCColormap

Colormap

dynamic

CG

XmNdepth

XmCDepth

int

dynamic

CG

XmNdestroyCallback

XmCCallback

XtCallbackList

NULL

XmNheight

XmCHeight

Dimension

dynamic

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page621

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNinitialResources
Persistent

XmCInitialResources
Persistent

Boolean

True

XmNmappedWhenManaged

XmCMappedWhenManaged

Boolean

True

CSG

XmNscreen

XmCScreen

Screen*

dynamic

CG

XmNsensitive

XmCSensitive

Boolean

True

CSG

XmNtranslations

XmCTranslations

XtTranslations

dynamic

CSG

XmNwidth

XmCWidth

Dimension

dynamic

CSG

XmNx

XmCPosition

Position

CSG

XmNy

XmCPosition

Position

CSG

XmNaccelerators
Atranslationtableboundwithitsactionsforawidget.Adestinationwidgetcanbesetuptousethisacceleratortable.
XmNancestorSensitive
Tellswhetherawidget'simmediateparentshouldreceiveinput.DefaultvalueisTrueifthewidgetisatoplevelshell,copiedfromthe
XmNancestorSensitiveresourceofitsparentifthewidgetisapopupshell,orthebitwiseANDoftheXmNsensitiveand
XmNancestorSensitiveresourcesoftheparentforotherwidgets.
XmNbackground
Widget'sbackgroundcolor.
XmNbackgroundPixmap
Pixmapwithwhichtotilethebackground,beginningattheupperleftcorner.
XmNborderColor
Pixelvaluethatdefinesthecoloroftheborder.
XmNborderPixmap
Pixmapwithwhichtotiletheborder,beginningattheupperleftcorneroftheborder.
XmNborderWidth
Width(inpixels)ofthewindow'sborder.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page622

XmNcolormap
Colormapusedinconvertingtopixelvalues.Previouslycreatedpixelvaluesareunaffected.Thedefaultvalueisthescreen'sdefaultcolormapfortoplevelshellsoris
copiedfromtheparentforotherwidgets.
XmNdepth
Numberofbitsallowedforeachpixel.TheXtIntrinsicssetthisresourcewhenthewidgetiscreated.AswiththeXmNcolormapresource,thedefaultvaluecomes
fromthescreen'sdefaultoriscopiedfromtheparent.
XmNdestroyCallback
Listofcallbacksinvokedwhenthewidgetisdestroyed.
XmNheight
Windowheight(inpixels),excludingtheborder.
XmNinitialResourcesPersistent
Tellswhetherresourcesshouldbereferencecounted.IfTrue(default),itisassumedthatthewidgetwon'tbedestroyedwhiletheapplicationisrunning,andthusthe
widget'sresourcesarenotreferencecounted.SetthisresourcetoFalseifyourapplicationmightdestroythewidgetandwillneedtodeallocatetheresources.
XmNmappedWhenManaged
IfTrue(default),thewidgetbecomesvisible(ismapped)assoonasitisbothrealizedandmanaged.IfFalse,theapplicationperformsthemappingand
unmappingofthewidget.IfchangedtoFalseafterthewidgetisrealizedandmanaged,thewidgetisunmapped.
XmNscreen
Screenlocationofthewidget.Thedefaultvaluecomeseitherfromthescreen'sdefaultoriscopiedfromtheparent.
XmNsensitive
Tellswhetherawidgetissensitivetoinput.TheXtSetSensitive()routinecanbeusedtochangeawidget'ssensitivityandtoguaranteethatifaparenthasits
XmNsensitiveresourcesettoFalse,itschildrenwillhavetheirancestorsensitiveflagsetcorrectly.
XmNtranslations
PointstoatranslationtablemustbecompiledwithXtParseTranslationTable().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page623

XmNwidth
Windowwidth(inpixels),excludingtheborder.
XmNx
Thexcoordinateofthewidget'supperleftoutercorner,relativetotheupperleftinnercornerofitsparent.
XmNy
Theycoordinateofthewidget'supperleftoutercorner,relativetotheupperleftinnercornerofitsparent.
SeeAlso
Object(2),RectObj(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page624

Object
MotifandXtWidgetClasses
Name
Objectwidgetclassfundamentalobjectclass.
Synopsis
PublicHeaders:

<Xm/Xm.h>
<X11/Object.h>

ClassName:

Object

ClassHierarchy:

Object

ClassPointer:

objectClass

Instantiation:

ObjectisanIntrinsicsmetaclassandisnotnormallyinstantiated.

Functions/Macros:

XtIsObject()

Description
Objectistherootoftheclasshierarchyitdoesnothaveasuperclass.AllwidgetsandgadgetsaresubclassesofObject.Objectencapsulatesthemechanismsfor
resourcemanagementandisneverinstantiated.
NewResources
Objectdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNdestroyCallback

XmCCallback

XtCallbackList

NULL

XmNdestroyCallback
ListofcallbacksinvokedwhentheObjectisdestroyed.
SeeAlso
Core(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page625

OverrideShell
MotifandXtWidgetClasses
Name
OverrideShellwidgetclassapopupshellthatbypasseswindowmanagement.
Synopsis
PublicHeader:

<X11/Shell.h>

ClassName:

OverrideShell

ClassHierarchy:

Core

Composite

Shell

OverrideShell

ClassPointer:

overrideShellWidgetClass

Instantiation:

widget=XtCreatePopupShell(name,
overrideWidgetClass,...)

Functions/Macros:

XtIsOverrideShell()

Description
OverrideShellisadirectsubclassofShellthatperformsnointeractionwithwindowmanagers.Itisusedforwidgets,suchaspopupmenus,thatshouldbypassthe
windowmanager.
NewResources
OverrideShelldoesnotdefineanynewresources.
InheritedResources
OverrideShellinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.OverrideShellsetsthedefaultvalues
ofbothXmNoverrideRedirectandXmNsaveUndertoTrue.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinitialResources
Persistent

Core

XmNallowShellResize

Shell

XmNinsertPosition

Composite

XmNancestorSensitive

Core

XmNmappedWhenManaged

Core

XmNbackground

Core

XmNnumChildren

Composite

XmNbackgroundPixmap

Core

XmNoverrideRedirect

Shell

XmNborderColor

Core

XmNpopdownCallback

Shell

XmNborderPixmap

Core

XmNpopupCallback

Shell

XmNborderWidth

Core

XmNsaveUnder

Shell

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page626

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNchildren

Composite

XmNscreen

Core

XmNcolormap

Core

XmNsensitive

Core

XmNcreatePopupChildProc

Shell

XmNtranslations

Core

XmNdepth

Core

XmNvisual

Shell

XmNdestroyCallback

Core

XmNwidth

Core

XmNgeometry

Shell

XmNx

Core

XmNheight

Core

XmNy

Core

SeeAlso
Composite(2),Core(2),Shell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page627

RectObj
MotifandXtWidgetClasses
Name
RectObjwidgetclassfundamentalobjectclasswithgeometry.
Synopsis
PublicHeader:

<Xm/Xm.h>
<X11/RectObj.h>

ClassName:

RectObj

ClassHierarchy:

Object

ClassPointer:

rectObjClass

Instantiation:

RectObjisanIntrinsicsmetaclassandisnotnormallyinstantiated.

Functions/Macros:

XtIsRectObj()

RectObj

Description
RectObjisasupportingsuperclassforwidgetsandgadgets,definedbytheXToolkitIntrinsics.AlloftheMotifwidgetsareultimatelyderivedfromRectObj.Itdoes
nothaveawindow,butitdoeshaveaheight,width,andlocation,anditencapsulatesthemechanismsforgeometrymanagement.
NewResources
RectObjdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNancestorSensitive

XmCSensitive

Boolean

dynamic

XmNborderWidth

XmCBorderWidth

Dimension

CSG

XmNheight

XmCHeight

Dimension

dynamic

CSG

XmNsensitive

XmCSensitive

Boolean

True

CSG

XmNwidth

XmCWidth

Dimension

dynamic

CSG

XmNx

XmCPosition

Position

CSG

XmNy

XmCPosition

Position

CSG

XmNancestorSensitive
Tellswhetheragadget'simmediateparentshouldreceiveinput.DefaultvalueisthebitwiseANDoftheXmNsensitiveandXmNancestorSensitive
resourcesoftheparent.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page628

XmNborderWidth
Width(inpixels)ofthewindow'sborder.
XmNheight
Windowheight(inpixels),excludingtheborder.
XmNsensitive
Tellswhetherawidgetreceivesinput(issensitive).TheXtSetSensitive()routinecanbeusedtochangeawidget'ssensitivityandtoguaranteethatifaparent
hasitsXmNsensitiveresourcesettoFalse,thenitschildrenwillhavetheirancestorsensitiveflagsetcorrectly.
XmNwidth
Windowwidth(inpixels),excludingtheborder.
XmNx
Thexcoordinateofthewidget'supperleftoutercorner,relativetotheupperleftinnercornerofitsparent.
XmNy
Theycoordinateofthewidget'supperleftoutercorner(thatis,outsideofanyborderorshadowrectangle),relativetoitsparentsupperleftinnercorner(insideall
borderorshadowrectangles).
InheritedResources
RectObjinheritsthefollowingresource:
Resource

InheritedFrom

XmNdestroyCallback

Object

SeeAlso
Object(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page629

Shell
MotifandXtWidgetClasses
Name
Shellwidgetclassfundamentalwidgetclassthatcontrolsinteractionbetweentoplevelwindowsandthewindowmanager.
Synopsis
PublicHeader:

<Xm/Xm.h>
<X11/Shell.h>

ClassName:

Shell

ClassHierarchy:

Core

ClassPointer:

shellWidgetClass

Instantiation:

ShellisanIntrinsicsmetaclassandisnotnormallyinstantiated.

Functions/Macros:

XtIsShell()

Composite

Shell

Description
ShellisasubclassofCompositethathandlesinteractionbetweenthewindowmanageranditssinglechild.
NewResources
Shelldefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNallowShellResize

XmCAllowCWShellResize

Boolean

False

CG

XmNcreatePopup
ChildProc

XmCCreatePopup
ChildProc

XtCreatePopup
ChildProc

NULL

CSG

XmNgeometry

XmCGeometry

String

NULL

CSG

XmNoverrideRedirect

XmCOverrideRedirect

Boolean

False

CSG

XmNpopdownCallback

XmCCallback

XtCallbackList

NULL

XmNpopupCallback

XmCCallback

XtCallbackList

NULL

XmNsaveUnder

XmCSaveUnder

Boolean

False

CSG

XmNvisual

XmCVisual

Visual*

CopyFrom
Parent

CSG

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page630

XmNallowShellResize
IfFalse(default),theShellwidgetrefusesgeometryrequestsfromitschildren(byreturningXtGeometryNo).
XmNcreatePopupChildProc
ApointertoanXtCreatePopupChildProcprocedurethatcreatesachildwidgetbutonlywhentheshellispoppedup,notwhentheapplicationisstarted.
Thisisusefulinmenus,forexample,sinceyoudon'tneedtocreatethemenuuntilitispoppedup.Thisprocedureiscalledafteranycallbacksspecifiedinthe
XmNpopupCallbackresource.
XmNgeometry
ThisresourcespecifiesthevaluesfortheresourcesXmNx,XmNy,XmNwidth,andXmNheightinsituationswhereanunrealizedwidgethasaddedor
removedsomeofitsmanagedchildren.
XmNoverrideRedirect
IfTrue,thewidgetisconsideredatemporarywindowthatredirectsthekeyboardfocusawayfromthemainapplicationwindows.Usuallythisresourceshouldn'tbe
changed.
XmNpopdownCallback
ListofcallbacksthatarecalledwhenthewidgetispoppeddownusingXtPopdown().
XmNpopupCallback
ListofcallbacksthatarecalledwhenthewidgetispoppedupusingXtPopup().
XmNsaveUnder
IfTrue,screencontentsthatareobscuredbyawidgetaresaved,therebyavoidingtheoverheadofsendingexposeeventsafterthewidgetisunmapped.
XmNvisual
Thevisualserverresourcethatisusedwhencreatingthewidget.
Procedures
XtCreatePopupChildProc
AnXtCreatePopupChildProcisapointertoaprocedure,specifiedasfollows:
typedefvoid(*XtCreatePopupChildProc)(Widget)

AnXtCreatePopupChildProcprocedureiscalledwhenaShellorderivedclassispoppedup,typicallythroughacalltoXtPopup().Thefunction
hasasingleparameter,whichisthewidgetIDoftheshell.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page631

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

InheritedResources
Shellinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNheight

Core

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNinsertPosition

Composite

XmNbackgroundPixmap

Core

XmNmappedWhenManaged

Core

XmNborderColor

Core

XmNnumChildren

Composite

XmNborderPixmap

Core

XmNscreen

Core

XmNborderWidth

Core

XmNsensitive

Core

XmNchildren

Composite

XmNtranslations

Core

XmNcolormap

Core

XmNwidth

Core

XmNdepth

Core

XmNx

Core

XmNdestroyCallback

Core

XmNy

Core

SeeAlso
Composite(2),Core(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page632

TopLevelShell
MotifandXtWidgetClasses
Name
TopLevelShellwidgetclassadditionaltoplevelshellsforanapplication.
Synopsis
PublicHeader:

<Xm/Xm.h>
<X11/Shell.h>

ClassName:

TopLevelShell

ClassHierarchy:

Core Composite
TopLevelShell

ClassPointer:

topLevelShellWidgetClass

Instantiation:

widget=XtCreatePopupShell(name,
topLevelShellWidgetClass,...)

Functions/Macros:

XtIsTopLevelShell()

Shell

WMShell VendorShell

Description
TopLevelShellisasubclassofVendorShellthatisusedforadditionalshellsinapplicationsthathavemorethanonetoplevelwindow.
NewResources
TopLevelShelldefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNiconic

XmCIconic

Boolean

False

CSG

XmNiconName

XmCIconName

String

NULL

CSG

XmNiconNameEncoding

XmCIconNameEncoding

Atom

dynamic

CSG

XmNiconic
IfTrue,thewidgetisrealizedasaniconotherwise,itisrealizedasanormalwindow.XmNiconicoverridesthevalueoftheinheritedXmNinitialState
resource.
XmNiconName
Theabbreviatednamethatlabelsaniconifiedapplication.
XmNiconNameEncoding
ThepropertytypeforencodingtheXmNiconNameresource.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page633

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

InheritedResources
TopLevelShellinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.TopLevelShellresetsXmNinput
toTrue.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNmaxAspectX

WMShell

XmNallowShellResize

Shell

XmNmaxAspectY

WMShell

XmNancestorSensitive

Core

XmNmaxHeight

WMShell

XmNaudibleWarning

VendorShell

XmNmaxWidth

WMShell

XmNbackground

Core

XmNminAspectX

WMShell

XmNbackgroundPixmap

Core

XmNminAspectY

WMShell

XmNbaseHeight

WMShell

XmNminHeight

WMShell

XmNbaseWidth

WMShell

XmNminWidth

WMShell

XmNborderColor

Core

XmNmwmDecorations

VendorShell

XmNborderPixmap

Core

XmNmwmFunctions

VendorShell

XmNborderWidth

Core

XmNmwmInputMode

VendorShell

XmNbuttonFontList

VendorShell

XmNmwmMenu

VendorShell

XmNbuttonRenderTable

VendorShell

XmNnumChildren

Composite

XmNchildren

Composite

XmNoverrideRedirect

Shell

XmNcolormap

Core

XmNpopdownCallback

Shell

XmNcreatePopupChildProc

Shell

XmNpopupCallback

Shell

XmNdefaultFontList

VendorShell

XmNpreeditType

VendorShell

XmNdeleteResponse

VendorShell

XmNsaveUnder

Shell

XmNdepth

Core

XmNscreen

Core

XmNdestroyCallback

Core

XmNsensitive

Core

XmNgeometry

Shell

XmNshellUnitType

VendorShell

XmNheight

Core

XmNtextFontList

VendorShell

XmNheightInc

WMShell

XmNtextRenderTable

VendorShell

XmNiconMask

WMShell

XmNtitle

WMShell

XmNiconPixmap

WMShell

XmNtitleEncoding

WMShell

XmNiconWindow

WMShell

XmNtransient

WMShell

XmNiconX

WMShell

XmNtranslations

Core

XmNiconY

WMShell

XmNunitType

VendorShell

XmNinitialResources
Persistent

Core

XmNuseAsyncGeometry

VendorShell

XmNinitialState

WMShell

XmNvisual

Shell

XmNinput

WMShell

XmNWaitForWm

WMShell

XmNinputMethod

VendorShell

XmNwidth

Core

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page634

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNinputPolicy

VendorShell

XmNwidthInc

WMShell

XmNinsertPosition

Composite

XmNwindowGroup

WMShell

XmNkeyboardFocusPolicy

VendorShell

XmNwinGravity

WMShell

XmNlabelFontList

VendorShell

XmNwmTimeout

WMShell

XmNlabelRenderTable

VendorShell

XmNx

Core

XmNlayoutDirection

VendorShell

XmNy

Core

XmNmappedWhenManaged

Core

SeeAlso
Composite(2),Core(2).Shell(2),VendorShell(2),WMShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page635

TransientShell
MotifandXtWidgetClasses
Name
TransientShellwidgetclasspopupshellthatinteractswiththewindowmanager.
Synopsis
PublicHeader:

<Xm/Xm.h>
<X11/Shell.h>

ClassName:

TransientShell

ClassHierarchy:

Core Composite
TransientShell

ClassPointer:

transientShellWidgetClass

Instantiation:

widget=XtCreatePopupShell(name,
transientShellWidgetClass,...)

Functions/Macros:

XtIsTransientShell()

Shell

WMShell VendorShell

Description
TransientShellisasubclassofVendorShellthatisusedforpopupshellwidgets,suchasdialogboxes,thatinteractwiththewindowmanager.Mostwindowmanagers
willnotallowtheusertoiconifyaTransientShellwindowonitsownandmayiconifyitautomaticallyifthewindowthatitistransientforisiconified.
NewResources
TransientShelldefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNtransientFor

XmCTransientFor

Widget

NULL

CSG

XmNtransientFor
ThewidgetfromwhichtheTransientShellwillpopup.IfthevalueofthisresourceisNULLoridentifiesanunrealizedwidget,TransientShellusesthevalueofthe
WMShellresourceXmNwindowGroup.
InheritedResources
TransientShellinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.TransientShellresetstheresources
XmNinput,XmNtransient,andXmNsaveUndertoTrue.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page636
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNmaxAspectX

WMShell

XmNallowShellResize

Shell

XmNmaxAspectY

WMShell

XmNancestorSensitive

Core

XmNmaxHeight

WMShell

XmNaudibleWarning

VendorShell

XmNmaxWidth

WMShell

XmNbackground

Core

XmNminAspectX

WMShell

XmNbackgroundPixmap

Core

XmNminAspectY

WMShell

XmNbaseHeight

WMShell

XmNminHeight

WMShell

XmNbaseWidth

WMShell

XmNminWidth

WMShell

XmNborderColor

Core

XmNmwmDecorations

VendorShell

XmNborderPixmap

Core

XmNwmFunctions

VendorShell

XmNborderWidth

Core

XmNmwmInputMode

VendorShell

XmNbuttonFontList

VendorShell

XmNmwmMenu

VendorShell

XmNbuttonRenderTable

VendorShell

XmNnumChildren

Composite

XmNchildren

Composite

XmNoverrideRedirect

Shell

XmNcolormap

Core

XmNpopdownCallback

Shell

XmNcreatePopupChildProc

Shell

XmNpopupCallback

Shell

XmNdefaultFontList

VendorShell

XmNpreeditType

VendorShell

XmNdeleteResponse

VendorShell

XmNsaveUnder

Shell

XmNdepth

Core

XmNscreen

Core

XmNdestroyCallback

Core

XmNsensitive

Core

XmNgeometry

Shell

XmNshellUnitType

VendorShell

XmNheight

Core

XmNtextFontList

VendorShell

XmNheightInc

WMShell

XmNtextRenderTable

VendorShell

XmNiconMask

WMShell

XmNtitle

WMShell

XmNiconPixmap

WMShell

XmNtitleEncoding

WMShell

XmNiconWindow

WMShell

XmNtransient

WMShell

XmNiconX

WMShell

XmNtranslations

Core

XmNiconY

WMShell

XmNunitType

VendorShell

XmNinitialResources
Persistent

Core

XmNuseAsyncGeometry

VendorShell

XmNinitialState

WMShell

XmNvisual

Shell

XmNinput

WMShell

XmNwaitForWm

WMShell

XmNinputMethod

VendorShell

XmNwidth

Core

XmNinputPolicy

VendorShell

XmNwidthInc

WMShell

XmNinsertPosition

Composite

XmNwindowGroup

WMShell

XmNkeyboardFocusPolicy

VendorShell

XmNwinGravity

WMShell

XmNlabelFontList

VendorShell

XmNwmTimeout

WMShell

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page637

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNlabelRenderTable

VendorShell

XmNx

Core

XmNlayoutDirection

VendorShell

XmNy

Core

XmNmappedWhenManaged

Core

SeeAlso
Composite(2),Core(2),Shell(2),VendorShell(2),WMShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page638

VendorShell
MotifandXtWidgetClasses
Name
VendorShellwidgetclassshellwidgetwithMotifspecifichooksforwindowmanagerinteraction.
Synopsis
PublicHeader:

<Xm/VendorS.h>
<X11/Shell.h>

ClassName:

VendorShell

ClassHierarchy:

Core

ClassPointer:

vendorShellWidgetClass

Instantiation:

VendorShellisametaclassandisnotnormallyinstantiated.

Functions/Macros:

XmIsVendorShell()

Composite

Shell

WMShell VendorShell

Description
VendorShellisavendorspecificsupportingsuperclassforallshellclassesthatarevisibletothewindowmanagerandthatdonothaveoverrideredirection.
VendorShelldefinesresourcesthatprovidetheMotiflookandfeelandmanagesthespecificcommunicationneededbytheMotifWindowManager(mwm).
Traits
VendorShellholdstheXmQTspecifyRenderTable,XmQTspecifyLayoutDirection,XmQTaccessColorsand
XmQTspecifyUnitTypetraits,whichareinheritedbyanyderivedclasses,andusestheXmQTspecifyRenderTabletrait.
NewResources
VendorShelldefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNaudibleWarning

XmCAudibleWarning

unsignedchar

XmBELL

CSG

XmNbuttonFontList

XmCButtonFontList

XmFontList

dynamic

CSG

XmNbuttonRenderTable

XmCButtonRenderTable

XmRenderTable

dynamic

CSG

XmNdefaultFontList

XmCDefaultFontList

XmFontList

dynamic

CG

XmNdeleteResponse

XmCDeleteResponse

unsignedchar

XmDESTROY

CSG

XmNinputMethod

XmCInputMethod

String

NULL

CSG

XmNinputPolicy

XmCInputPolicy

XmInputPolicy

XmPER_SHELL

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page639

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNkeyboard
FocusPolicy

XmCKeyboard
FocusPolicy

unsignedchar

XmEXPLICIT

CSG

XmNlabelFontList

XmCLabelFontList

XmFontList

dynamic

CG

XmNlabelRenderTable

XmCLabelRenderTable

XmRenderTable

dynamic

CSG

XmNlayoutDirection

XmCLayoutDirection

XmDirection

XmLEFT_
TO_RIGHT

CG

XmNmwmDecorations

XmCMwmDecorations

int

CSG

XmNmwmFunctions

XmCMwmFunctions

int

CSG

XmNmwmInputMode

XmCMwmInputMode

int

CSG

XmNmwmMenu

XmCMwmMenu

String

NULL

CSG

XmNpreeditType

XmCPreeditType

String

dynamic

CSG

XmNshellUnitType

XmCShellUnitType

unsignedchar

XmPIXELS

CSG

XmNtextFontList

XmCTextFontList

XmFontList

dynamic

CG

XmNtextRenderTable

XmCTextRenderTable

XmRenderTable

dynamic

CSG

XmNuseAsyncGeometry

XmCUseAsyncGeometry

Boolean

False

CSG

XmNunitType

XmCUnitType

unsignedchar

XmPIXELS

CSG

XmNaudibleWarning
Specifieswhetheranactionperformsanassociatedaudiblecue.Possiblevaluesare:
XmBELL/*ringsthebell*/
XmNONE/*doesnothing*/

XmNbuttonFontList
SpecifiesthefontlistusedforthebuttondescendantsoftheVendorShellwidget.InMotif2.0andlater,XmFontListisconsideredobsoleteitisreplacedby
XmRenderTable.TheXmNbuttonRenderTableresourceisthepreferredmethodofspecifyingappearance.
XmNbuttonRenderTable
InMotif2.0andlater,specifiestherendertabletobeusedbyVendorShell'sbuttondescendants.IfinitiallyNULL,thevalueistakenfromanyspecified
XmNdefaultFontListvalueforbackwardscompatibility.IfthisisalsoNULL,thenearestancestorthathastheXmQTspecifyRenderTabletraitis
sought,takingtheXmBUTTON_RENDER_TABLEvaluefromanywidgetsofound.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page640

XmNdefaultFontList
ThedefaultfontlistforthechildrenoftheVendorShellwidget.Theresourceisobsolete,replacedbytheXmNbuttonFontList,XmNlabelFontList,
andXmNtextFontListresources,whichareinturnalsoobsolete.
XmNdeleteResponse
TheactiontoperformwhentheshellreceivesaWM_DELETE_WINDOWmessage.Possiblevaluesare:
XmDESTROY/*destroywindow*/
XmUNMAP/*unmapwindow*/
XmDO_NOTHING/*leavewindowasis*/

XmNinputMethod
Specifiesthestringthatsetsthelocalemodifierfortheinputmethod.
XmNinputPolicy
InMotif2.0andlater,specifiesthepolicytoadoptwhencreatinganinputcontext.Possiblevaluesare:
XmPER_SHELL/*oneinputcontextpershellhierarchy*/
XmPER_WIDGET/*oneinputcontextperwidget*/

XmNkeyboardFocusPolicy
Themethodofassigningkeyboardfocus.Possiblevaluesare:
XmEXPLICIT/*clicktotypepolicy*/
XmPOINTER/*pointerdrivenpolicy*/

XmNlabelFontList
SpecifiesthefontlistusedforthelabeldescendantsoftheVendorShellwidget.InMotif2.0andlater,XmFontListisconsideredobsoleteitisreplacedby
XmRenderTable.TheXmNlabelRenderTableresourceisthepreferredmethodofspecifyingappearance.
XmNlabelRenderTable
InMotif2.0andlater,specifiestherendertabletobeusedbyVendorShell'slabeldescendants.IfinitiallyNULL,thevalueistakenfromanyspecified
XmNdefaultFontListvalueforbackwardscompatibility.IfthisisalsoNULL,thenearestancestorthathastheXmQTspecifyRenderTabletraitis
sought,takingtheXmLABEL_RENDER_TABLEvaluefromanywidgetsofound.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page641

XmNlayoutDirection
InMotif2.0andlater,specifiesthedefaultdirectioninwhichvisualcomponentsaretobelaidout.DescendantsofVendorShellusethisvalueintheabsenceofan
explicitlayoutdirectionfurtherdownthewidgethierarchy.Possiblevaluesare:
XmLEFT_TO_RIGHT

XmRIGHT_TO_LEFT

XmBOTTOM_TO_TOP

XmTOP_TO_BOTTOM

XmBOTTOM_TO_TOP_LEFT_TO_RIGHT

XmBOTTOM_TO_TOP_RIGHT_TO_LEFT

XmTOP_TO_BOTTOM_LEFT_TO_RIGHT

XmTOP_TO_BOTTOM_RIGHT_TO_LEFT

XmLEFT_TO_RIGHT_BOTTOM_TO_TOP

XmRIGHT_TO_LEFT_BOTTOM_TO_TOP

XmLEFT_TO_RIGHT_TOP_TO_BOTTOM

XmRIGHT_TO_LEFT_TOP_BOTTOM

XmNmwmDecorations
Thisresourcecorrespondstothevaluesassignedbythedecorationsfieldofthe_MOTIF_WM_HINTSproperty.Thisresourcedetermineswhichframe
buttonsandhandlestoincludewithawindow.ThevaluefortheresourceisabitwiseinclusiveORofoneormoreofthefollowing,whicharedefinedin
<Xm/MwmUtil.h>:
MWM_DECOR_ALL/*removedecorationsfromfullset*/
MWM_DECOR_BORDER/*windowborder*/
MWM_DECOR_RESIZEH/*resizehandles*/
MWM_DECOR_TITLE/*titlebar*/
MWM_DECOR_MENU/*window'smenubutton*/
MWM_DECOR_MINIMIZE/*minimizebutton*/
MWM_DECOR_MAXIMIZE/*maximizebutton*/

XmNmwmFunctions
Thisresourcecorrespondstothevaluesassignedbythefunctionsfieldofthe_MOTIF_WM_HINTSproperty.Thisresourcedetermineswhichfunctionstoinclude
inthesystemmenu.ThevaluefortheresourceisabitwiseinclusiveORofoneormoreofthefollowing,whicharedefinedin<Xm/MwmUtil.h>:
MWM_FUNC_ALL/*removefunctionsfromfullset*/
MWM_FUNC_RESIZE/*f.resize*/
MWM_FUNC_MOVE/*f.move*/
MWM_FUNC_MINIMIZE/*f.minimize*/
MWM_FUNC_MAXIMIZE/*f.maximize*/
MWM_FUNC_CLOSE/*f.kill*/

XmNmwmInputMode
Thisresourcecorrespondstothevaluesassignedbytheinput_modefieldofthe_MOTIF_WM_HINTSproperty.Thisresourcedeterminestheconstraintson
thewindow'skeyboardfocus.Thatis,itdetermineswhethertheapplicationtakes

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page642

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

thekeyboardfocusawayfromtheprimarywindowornot.Thepossiblevaluesareasfollows,definedin<Xm/MwmUtil.h>:
MWM_INPUT_MODELESS

MWM_INPUT_PRIMARY_APPLICATION_MODAL

MWM_INPUT_SYSTEM_MODAL

MWM_INPUT_FULL_APPLICATION_MODAL

IfthevalueisMWM_INPUT_MODELESS,inputcanbedirectedtoanywindow.IfthevalueisMWM_INPUT_PRIMARY_APPLICATION_MODAL,input
cannotbedirectedatanancestorofthewindow.ThevalueMWM_INPUT_SYSTEM_MODALindicatesthatinputonlygoestothecurrentwindow.
MWM_INPUT_FULL_APPLICATION_MODALspecifiesthatinputmaynotbedirectedatanyotherwindowoftheapplication.
XmNmwmMenu
Themenuitemstoaddatthebottomoftheclient'swindowmenu.Thestringhasthisformat:
label[mnemonic][accelerator]mwm_f.function

XmNpreeditType
Specifiestheinputmethodstylesthatareavailable.Theresourcevalueisacommaseparatedlistofthefollowingvalues:
OffTheSpot/*XIMPreeditArea*/
Root/*XIMPreeditNothing*/
None/*XIMPreeditNone*/
OverTheSpot/*XIMPreeditPosition*/
OnTheSpot/*XIMPreeditCallbacks*/

XmNshellUnitType
Themeasurementunitstouseinresourcesthatspecifyasizeorposition.InMotif2.0andlater,theresourceisobsoleteandisreplacedbytheXmNunitType
resource.
XmNtextFontList
SpecifiesthefontlistusedforthetextdescendantsoftheVendorShellwidget.InMotif2.0andlater,XmFontListisconsideredobsoleteitisreplacedby
XmRenderTable.TheXmNtextRenderTableresourceisthepreferredmethodofspecifyingappearance.
XmNtextRenderTable
InMotif2.0andlater,specifiestherendertabletobeusedbyVendorShell'stextandlistdescendants.IfinitiallyNULL,thevalueistakenfromanyspecified
XmNdefaultFontListvalueforbackwardscompatibility.IfthisisalsoNULL,

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page643

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

thenearestancestorthathastheXmQTspecifyRenderTabletraitissought,takingtheXmTEXT_RENDER_TABLEvaluefromanywidgetsofound.
XmNuseAsyncGeometry
IfTrue,thegeometrymanagerdoesn'twaittoconfirmageometryrequestthatwassenttothewindowmanager.Thegeometrymanagerperformsthisbysettingthe
WMShellresourceXmNwaitForWmtoFalseandbysettingtheWMShellresourceXmNwmTimeoutto0.IfXmNuseAsyncGeometryisFalse
(default),thegeometrymanagerusessynchronousnotification,andsoitdoesn'tchangetheresourcesXmNwaitForWmandXmNwmTimeout.
XmNunitType
InMotif2.0andlater,specifiestheunitsinwhichsizeandpositionresourcesarecalculated.TheresourcereplacesXmNshellUnitType,whichisconsidered
obsolete.ThevaluesXmFONT_UNITSandXm100TH_FONT_UNITShaveahorizontalandverticalcomponent,calculatedfromthevaluesofthe
XmNhorizontalFontUnitandXmNverticalFontUnitresourcesoftheXmScreenobject.Possiblevaluesare:
XmPIXELS/*pixels*/
XmMILLIMETERS/*millimeters*/
Xm100TH_MILLIMETERS/*1/100ofamillimeter*/
XmCENTIMETERS/*centimeters*/
XmINCHES/*inches*/
Xm1000TH_INCHES/*1/1000ofaninch*/
XmPOINTS/*pointunits(1/72ofaninch)*/
Xm100TH_POINTS/*1/100ofapoint*/
XmFONT_UNITS/*dependsonXmScreenresources*/
Xm100TH_FONT_UNITS/*1/100oftheabove*/

InheritedResources
VendorShellinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.VendorShellresets
XmNborderWidthfrom1to0andresetsXmNinputtoTrue.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNmaxAspectX

WMShell

XmNallowShellResize

Shell

XmNmaxAspectY

WMShell

XmNancestorSensitive

Core

XmNmaxHeight

WMShell

XmNbackground

Core

XmNmaxWidth

WMShell

XmNbackgroundPixmap

Core

XmNminAspectX

WMShell

XmNbaseHeight

WMShell

XmNminAspectY

WMShell

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page644

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNbaseWidth

WMShell

XmNminHeight

WMShell

XmNborderColor

Core

XmNminWidth

WMShell

XmNborderPixmap

Core

XmNnumChildren

Composite

XmNborderWidth

Core

XmNoverrideRedirect

Shell

XmNchildren

Composite

XmNpopdownCallback

Shell

XmNcolormap

Core

XmNpopupCallback

Shell

XmNcreatePopupChildProc

Shell

XmNsaveUnder

Shell

XmNdepth

Core

XmNscreen

Core

XmNdestroyCallback

Core

XmNsensitive

Core

XmNgeometry

Shell

XmNtitle

WMShell

XmNheight

Core

XmNtitleEncoding

WMShell

XmNheightInc

WMShell

XmNtransient

WMShell

XmNiconMask

WMShell

XmNtranslations

Core

XmNiconPixmap

WMShell

XmNvisual

Shell

XmNiconWindow

WMShell

XmNwaitForWm

WMShell

XmNiconX

WMShell

XmNwidth

Core

XmNiconY

WMShell

XmNwidthInc

WMShell

XmNinitialResources
Persistent

Core

XmNwindowGroup

WMShell

XmNinitialState

WMShell

XmNwinGravity

WMShell

XmNinput

WMShell

XmNwmTimeout

WMShell

XmNinsertPosition

Composite

XmNx

Core

XmNmappedWhenManaged

Core

XmNy

Core

SeeAlso
Composite(2),Core(2),Shell(2),WMShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page645

WMShell
MotifandXtWidgetClasses
Name
WMShellwidgetclassfundamentalshellwidgetthatinteractswithanICCCMcompliantwindowmanager.
Synopsis
PublicHeader:

<Xm/Xm.h>
<X11/Shell.h>

ClassName:

WMShell

ClassHierarchy:

Core

ClassPointer:

wmShellWidgetClass

Instantiation:

WMShellisanIntrinsicsmetaclassandisnotnormallyinstantiated.

Functions/Macros:

XtIsWMShell()

Composite

Shell

WMShell

Description
WMShellisadirectsubclassofShellthatprovidesbasicwindowmanagerinteraction.WMShellisnotdirectlyinstantiateditencapsulatestheapplicationresources
thatapplicationsusetocommunicatewithwindowmanagers.
NewResources
WMShelldefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNbaseHeight

XmCBaseHeight

int

XtUnspecifiedShellInt

CSG

XmNbaseWidth

XmCBaseWidth

int

XtUnspecifiedShellInt

CSG

XmNheightInc

XmCHeightInc

int

XtUnspecifiedShellInt

CSG

XmNiconMask

XmCIconMask

Pixmap

NULL

CSG

XmNiconPixmap

XmCIconPixmap

Pixmap

NULL

CSG

XmNiconWindow

XmCIconWindow

Window

NULL

CSG

XmNiconX

XmCIconX

int

CSG

XmNiconY

XmCIconY

int

CSG

XmNinitialState

XmCInitialState

int

NormalState

CSG

XmNinput

XmCInput

Boolean

False

CSG

XmNmaxAspectX

XmCMaxAspectX

int

XtUnspecifiedShellInt

CSG

XmNmaxAspectY

XmCMaxAspectY

int

XtUnspecifiedShellInt

CSG

XmNmaxHeight

XmCMaxHeight

int

XtUnspecifiedShellInt

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page646

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNmaxWidth

XmCMaxWidth

int

XtUnspecifiedShellInt

CSG

XmNminAspectX

XmCMinAspectX

int

XtUnspecifiedShellInt

CSG

XmNminAspectY

XmCMinAspectY

int

XtUnspecifiedShellInt

CSG

XmNminHeight

XmCMinHeight

int

XtUnspecifiedShellInt

CSG

XmNminWidth

XmCMinWidth

int

XtUnspecifiedShellInt

CSG

XmNtitle

XmCTitle

String

dynamic

CSG

XmNtitleEncoding

XmCTitleEncoding

Atom

dynamic

CSG

XmNtransient

XmCTransient

Boolean

False

CSG

XmNwaitForWm

XmCWaitForWm

Boolean

True

CSG

XmNwidthInc

XmCWidthInc

int

XtUnspecifiedShellInt

CSG

XmNwindowGroup

XmCWindowGroup

Window

dynamic

CSG

XmNwinGravity

XmCWinGravity

int

dynamic

CSG

XmNwmTimeout

XmCWmTimeout

int

5000

CSG

XmNbaseHeight
XmNbaseWidth
Thebasedimensionsfromwhichthepreferredheightandwidthcanbesteppedupordown(asspecifiedbyXmNheightIncorXmNwidthInc).
XmNheightInc
Theamountbywhichtoincrementordecrementthewindow'sheightwhenthewindowmanagerchoosesapreferredvalue.ThebaseheightisXmNbaseHeight,
andtheheightcandecrementtothevalueofXmNminHeightorincrementtothevalueofXmNmaxHeight.SeealsoXmNwidthInc.
XmNiconMask
Abitmapthatthewindowmanagercanuseinordertocliptheapplication'siconintoanonrectangularshape.
XmNiconPixmap
Theapplication'sicon.
XmNiconWindow
TheIDofawindowthatservesastheapplication'sicon.
XmNiconX
XmNiconY
Windowmanagerhintsfortherootwindowcoordinatesoftheapplication'sicon.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page647

XmNinitialState
Theinitialappearanceofthewidgetinstance.Possiblevaluesaredefinedin<X11/Xutil.h>:
NormalState/*applicationstartsasawindow*/
IconicState/*applicationstartsasanicon*/

XmNinput
ABooleanthat,inconjunctionwiththeWM_TAKE_FOCUSatomintheWM_PROTOCOLSproperty,determinestheapplication'skeyboardfocusmodel.Theresult
isdeterminedbythevalueofXmNinputandtheexistenceoftheatom,asdescribedbelow:
ValueofXmNinputResource

WM_TAKE_FOCUSAtom

KeyboardFocusModel

False

Doesnotexist

Noinputallowed

True

Doesnotexist

Passive

True

Exists

Locallyactive

False

Exists

Globallyactive

XmNmaxAspectX
XmNmaxAspectY
Thenumeratoranddenominator,respectively,ofthemaximumaspectratiorequestedforthiswidget.
XmNmaxHeight
XmNmaxWidth
Themaximumdimensionsforthewidget'spreferredheightorwidth.
XmNminAspectX
XmNminAspectY
Thenumeratoranddenominator,respectively,oftheminimumaspectratiorequestedforthiswidget.
XmNminHeight
XmNminWidth
Theminimumdimensionsforthewidget'spreferredheightorwidth.
XmNtitle
Thestringthatthewindowmanagerdisplaysastheapplication'sname.Bydefault,theiconnameisused,butifthisisn'tspecified,thenameoftheapplicationisused.
XmNtitleEncoding
ThepropertytypeforencodingtheXmNtitleresource.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page648

XmNtransient
IfTrue,thisindicatesapopupwindoworsomeothertransientwidget.Thisresourceisusuallynotchanged.
XmNwaitForWm
IfTrue(default),theXToolkitwaitsforaresponsefromthewindowmanagerbeforeactingasifnowindowmanagerexists.Thewaitingtimeisspecifiedbythe
XmNwmTimeoutresource.
XmNwidthInc
Theamountbywhichtoincrementordecrementthewindow'swidthwhenthewindowmanagerchoosesapreferredvalue.ThebasewidthisXmNbaseWidth,
andthewidthcandecrementtothevalueofXmNminWidthorincrementtothevalueofXmNmaxWidth.SeealsoXmNheightInc.
XmNwindowGroup
Thewindowassociatedwiththiswidgetinstance.Thiswindowactsastheprimarywindowofagroupofwindowsthathavesimilarbehavior.
XmNwinGravity
Thewindowgravityusedinpositioningthewidget.Unlessaninitialvalueisgiven,thisresourcewillbesetwhenthewidgetisrealized.Thedefaultvalueis
NorthWestGravity(iftheShellresourceXmNgeometryisNULL)otherwise,XmNwinGravityassumesthevaluereturnedbytheXmWMGeometry
routine.
XmNwmTimeout
ThenumberofmillisecondsthattheXToolkitwaitsforaresponsefromthewindowmanager.ThisresourceismeaningfulwhentheXmNwaitForWmresourceis
settoTrue.
InheritedResources
WMShellinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinitialResources
Persistent

Core

XmNallowShellResize

Shell

XmNinsertPosition

Composite

XmNancestorSensitive

Core

XmNmappedWhenManaged

Core

XmNbackground

Core

XmNnumChildren

Composite

XmNbackgroundPixmap

Core

XmNoverrideRedirect

Shell

XmNborderColor

Core

XmNpopdownCallback

Shell

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page649

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNborderPixmap

Core

XmNpopupCallback

Shell

XmNborderWidth

Core

XmNsaveUnder

Shell

XmNchildren

Composite

XmNscreen

Core

XmNcolormap

Core

XmNsensitive

Core

XmNcreatePopupChildProc

Shell

XmNtranslations

Core

XmNdepth

Core

XmNvisual

Shell

XmNdestroyCallback

Core

XmNwidth

Core

XmNgeometry

Shell

XmNx

Core

XmNheight

Core

XmNy

Core

SeeAlso
Composite(2),Core(2),Shell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page650

XmArrowButton
MotifandXtWidgetClasses
Name
XmArrowButtonwidgetclassadirectionalarrowshapedbuttonwidget.
Synopsis
PublicHeader:

<Xm/ArrowB.h>

ClassName:

XmArrowButton

ClassHierarchy:

Core XmPrimitive XmArrowButton

ClassPointer:

xmArrowButtonWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmArrowButtonWidgetClass,...)

Functions/Macros:

XmCreateArrowButton(),XmIsArrowButton()

Description
AnArrowButtonisadirectionalarrowshapedbuttonthatincludesashadedborder.TheshadingchangestomaketheArrowButtonappeareitherpressedinwhen
selectedorraisedwhenunselected.
Traits
ArrowButtonholdstheXmQTactivatabletrait,whichisinheritedbyanyderivedclasses.
NewResources
ArrowButtondefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNarrowDirection

XmCArrowDirection

unsignedchar

XmARROW_UP

CSG

XmNdetailShadowThickness

XmCShadowThickness

Dimension

dynamic

CSG

XmNmultiClick

XmCMultiClick

unsignedchar

dynamic

CSG

XmNarrowDirection
Setsthearrowdirection.Possiblevaluesare:
XmARROW_UP

XmARROW_LEFT

XmARROW_DOWN

XmARROW_RIGHT

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page651

XmNdetailShadowThickness
InMotif2.0andlater,specifiesthethicknessoftheshadowinsidethetriangleoftheArrowButton.Valuesof0,1,and2aresupported.InMotif2.0,thedefaultis2.
InMotif2.1andlater,thedefaultdependsuponthevalueoftheXmDisplayresourceXmNenableThinThickness:ifTrue,thedefaultis1otherwise2.
XmNmultiClick
Aflagthatdetermineswhethersuccessivebuttonclicksareprocessedorignored.Possiblevaluesare:
XmMULTICLICK_DISCARD/*ignoresuccessivebuttonclicks*/
/*defaultvalueinamenusystem*/
XmMULTICLICK_KEEP/*countsuccessivebuttonclicks*/
/*defaultvaluewhennotinamenu*/

CallbackResources
ArrowButtondefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNactivateCallback

XmCR_ACTIVATE

XmNarmCallback

XmCR_ARM

XmNdisarmCallback

XmCR_DISARM

XmNactivateCallback
ListofcallbacksthatarecalledwhenBSelectispressedandreleasedinsidethewidget.
XmNarmCallback
ListofcallbacksthatarecalledwhenBSelectispressedwhilethepointerisinsidethewidget.
XmNdisarmCallback
ListofcallbacksthatarecalledwhenBSelectisreleasedafterithasbeenpressedinsidethewidget.
CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
intclick_count/*numberofclicksinmulticlicksequence*/
}XmArrowButtonCallbackStruct

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page652

click_countismeaningfulonlyforXmNactivateCallback.Furthermore,iftheXmNmultiClickresourceissettoXmMULTICLICK_KEEP,
thenXmNactivateCallbackiscalledforeachclick,andthevalueofclick_countisthenumberofclicksthathaveoccurredinthelastsequenceof
multipleclicks.IftheXmNmultiClickresourceissettoXmMULTICLICK_DISCARD,thenclick_countalwayshasavalueof1.
InheritedResources
ArrowButtoninheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Thedefaultvalueof
XmNborderWidthisresetto0byPrimitive.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNhighlightThickness

XmPrimitive

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNlayoutDirection

XmPrimitive

XmNbackgroundPixmap

Core

XmNmappedWhenManaged

Core

XmNborderColor

Core

XmNnavigationType

XmPrimitive

XmNborderPixmap

Core

XmNpopupHandler
Callback

XmPrimitive

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmPrimitive

XmNsensitive

Core

XmNbottomShadowPixmap

XmPrimitive

XmNshadowThickness

XmPrimitive

XmNcolormap

Core

XmNtopShadowColor

XmPrimitive

XmNconvertCallback

XmPrimitive

XmNtopShadowPixmap

XmPrimitive

XmNdepth

Core

XmNtranslations

Core

XmNdestroyCallback

Core

XmNtraversalOn

XmPrimitive

XmNforeground

XmPrimitive

XmNunitType

XmPrimitive

XmNheight

Core

XmNunitType

XmPrimitive

XmNhelpCallback

XmPrimitive

XmNwidth

Core

XmNhighlightColor

XmPrimitive

XmNx

Core

XmNhighlightOnEnter

XmPrimitive

XmNy

Core

XmNhighlightPixmap

XmPrimitive

Translations
ThetranslationsofArrowButtonincludethoseofPrimitive.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page653
Event

Action

BSelectPress

Arm()

BSelectClick

Activate()

Disarm()

BSelectRelease

Activate()

Disarm()

BSelectPress2+

MultiArm()

BSelectRelease2+

MultiActivate()

KSelect

ArmAndActivate()

MCtrlBSelectPress

ButtonTakeFocus()

KHelp

Help()

ActionRoutines
ArrowButtondefinesthefollowingactionroutines:
Activate()
DisplaystheArrowButtonasunselected,andinvokesthelistofcallbacksspecifiedbyXmNactivateCallback.
Arm()
DisplaystheArrowButtonasselected,andinvokesthelistofcallbacksspecifiedbyXmNarmCallback.
ArmAndActivate()
DisplaystheArrowButtonasselected,andinvokesthelistofcallbacksspecifiedbyXmNarmCallback.Afterdoingthis,theactionroutinedisplaysthe
ArrowButtonasunselected,andinvokesthelistofcallbacksspecifiedbyXmNactivateCallbackandXmNdisarmCallback.
ButtonTakeFocus()
InMotif2.0andlater,movesthecurrentkeyboardfocustotheArrowButton,withoutactivatingthewidget.
Disarm()
DisplaystheArrowButtonasunselected,andinvokesthelistofcallbacksspecifiedbyXmNdisarmCallback.
Help()
InvokesthelistofcallbacksspecifiedbyXmNhelpCallback.IftheArrowButtondoesn'thaveanyhelpcallbacks,theHelp()routineinvokesthose
associatedwiththenearestancestorthathasthem.
MultiActivate()
Incrementstheclick_countmemberofXmArrowButtonCallbackStruct,displaystheArrowButtonasunselected,andinvokesthelistof

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page654

callbacksspecifiedbyXmNactivateCallbackandXmNdisarmCallback.ThisactionroutinetakeseffectonlywhentheXmNmultiClick
resourceissettoXmMULTICLICK_KEEP.
MultiArm()
DisplaystheArrowButtonasselected,andinvokesthelistofcallbacksspecifiedbyXmNarmCallback.Thisactionroutinetakeseffectonlywhenthe
XmNmultiClickresourceissettoXmMULTICLICK_KEEP.
AdditionalBehavior
ArrowButtonhasthefollowingadditionalbehavior:
<EnterWindow>
DisplaystheArrowButtonasselectedifthepointerleavesandreentersthewindowwhileBSelectispressed.
<LeaveWindow>
DisplaystheArrowButtonasunselectedifthepointerleavesthewindowwhileBSelectispressed.
SeeAlso
XmCreateObject(1),Core(2),XmPrimitive(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page655

XmArrowButtonGadget
MotifandXtWidgetClasses
Name
XmArrowButtonGadgetwidgetclassadirectionalarrowshapedbuttongadget.
Synopsis
PublicHeader:

<Xm/ArrowBG.h>

ClassName:

XmArrowButtonGadget

ClassHierarchy:

Object

RectObj XmGadget

XmArrowButtonGadget

ClassPointer:

xmArrowButtonGadgetClass

Instantiation:

widget=XtCreateWidget(name,
xmArrowButtonGadgetClass,...)

Functions/Macros: XmCreateArrowButtonGadget(),
XmIsArrowButtonGadget()

Description
ArrowButtonGadgetisthegadgetvariantofArrowButton.ArrowButtonGadget'sresources,callbackresources,andcallbackstructurearethesameasthoseof
ArrowButton.
Traits
ArrowButtonGadgetholdstheXmQTactivatable,XmQTcareParentVisual,andXmQTaccessColorstraits,whichareinheritedbyanyderived
classes.
InheritedResources
ArrowButtonGadgetinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Thedefaultvalueof
XmNborderWidthisresetto0byGadget.
Resource

InheritedFrom

Resource

InheritedFrom

XmNancestorSensitive

RectObj

XmNhighlightThickness

XmGadget

XmNbackground

XmGadget

XmNlayoutDirection

XmGadget

XmNbackgroundPixmap

XmGadget

XmNnavigationType

XmGadget

XmNbottomShadowColor

XmGadget

XmNsensitive

RectObj

XmNbottomShadowPixmap

XmGadget

XmNshadowThickness

XmGadget

XmNborderWidth

RectObj

XmNtopShadowColor

XmGadget

XmNdestroyCallback

Object

XmNtopShadowPixmap

XmGadget

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page656

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNforeground

XmGadget

XmNtraversalOn

XmGadget

XmNheight

RectObj

XmNunitType

XmGadget

XmNhelpCallback

XmGadget

XmNuserData

XmGadget

XmNhighlightColor

XmGadget

XmNwidth

RectObj

XmNhighlightOnEnter

XmGadget

XmNx

RectObj

XmNhighlightPixmap

XmGadget

XmNy

RectObj

Behavior
Asagadgetsubclass,ArrowButtonGadgethasnotranslationsassociatedwithit.However,ArrowButtonGadgetbehaviorcorrespondstotheactionroutinesofthe
ArrowButtonwidget.SeetheArrowButtonactionroutinesformoreinformation.
Behavior

EquivalentArrowButtonActionRoutine

BSelectPress

Arm()

BSelectClickorBSelectRelease

Activate()

Disarm()

BSelectPress2+

MultiArm()

BSelectRelease2+

MultiActivate()

KSelect

ArmAndActivate()

MCtrlBSelectPress

ButtonTakeFocus()

KHelp

Help()

ArrowButtonGadgethasadditionalbehaviorassociatedwith<Enter>and<Leave>,whichdisplaytheArrowButtonGadgetasselectedifthepointerleavesand
reentersthegadgetwhileBSelectispressedorasunselectedifthepointerleavesthegadgetwhileBSelectispressed.
SeeAlso
XmCreateObject(1),Core(2),Object(2),RectObj(2),XmArrowButton(2),XmGadget(2),XmPrimitive(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page657

XmBulletinBoard
MotifandXtWidgetClasses
Name
XmBulletinBoardwidgetclassasimplegeometrymanagingwidget.
Synopsis
PublicHeader:

<Xm/BulletinB.h>

ClassName:

XmBulletinBoard

ClassHierarchy:

Core Composite
XmBulletinBoard

ClassPointer:

xmBulletinBoardWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmBulletinBoardWidgetClass,...)

Constraint XmManager

Functions/Macros: XmCreateBulletinBoard(),
XmCreateBulletinBoardDialog()

Description
BulletinBoardisageneralpurposemanagerthatallowschildrentobeplacedatarbitraryx,ypositions.ThesimplegeometrymanagementofBulletinBoardcanbe
usedtoenforcemarginsandtopreventchildwidgetsfromoverlapping.BulletinBoardisthebasewidgetformostdialogwidgetsanddefinesmanyresourcesthathave
aneffectonlywhenitisanimmediatechildofaDialogShell.
Traits
BulletinBoardholdstheXmQTspecifyRenderTableandXmQTdialogShellSavvytraits,whichareinheritedbyanyderivedclasses,andusesthe
XmQTtakesDefaultandXmQTspecifyRenderTabletraits.
NewResources
BulletinBoarddefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNallowOverlap

XmCAllowOverlap

Boolean

True

CSG

XmNautoUnmanage

XmCAutoUnmanage

Boolean

True

CG

XmNbuttonFontList

XmCButtonFontList

XmFontList

dynamic

CSG

XmNbuttonRenderTable

XmCButtonRenderTable

XmRenderTable

dynamic

CSG

XmNcancelButton

XmCWidget

Window

NULL

SG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page658

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNdefaultButton

XmCWidget

Window

NULL

SG

XmNdefaultPosition

XmCDefaultPosition

Boolean

True

CSG

XmNdialogStyle

XmCDialogStyle

unsignedchar

dynamic

CSG

XmNdialogTitle

XmCDialogTitle

XmString

NULL

CSG

XmNlabelFontList

XmCLabelFontList

XmFontList

dynamic

CSG

XmNlabelRenderTable

XmCLabelRenderTable

XmRenderTable

dynamic

CSG

XmNmarginHeight

XmCMarginHeight

Dimension

10

CSG

XmNmarginWidth

XmCMarginWidth

Dimension

10

CSG

XmNnoResize

XmCNoResize

Boolean

False

CSG

XmNresizePolicy

XmCResizePolicy

unsignedchar

XmRESIZE_ANY

CSG

XmNshadowType

XmCShadowType

unsignedchar

XmSHADOW_OUT

CSG

XmNtextFontList

XmCTextFontList

XmFontList

dynamic

CSG

XmNtextRenderTable

XmCTextRenderTable

XmRenderTable

dynamic

CSG

XmNtextTranslations

XmCTranslations

XtTranslations

NULL

XmNallowOverlap
IfTrue(default),childwidgetsareallowedtooverlap.
XmNautoUnmanage
IfTrue(default),theBulletinBoardisautomaticallyunmanagedafterabuttonisactivatedunlessthebuttonisanApplyorHelpbutton.
XmNbuttonFontList
SpecifiesthefontlistusedforthebuttondescendantsoftheBulletinBoardwidget.InMotif2.0andlater,XmFontListisconsideredobsoleteitisreplacedby
XmRenderTable.TheXmNbuttonRenderTableresourceisthepreferredmethodofspecifyingappearance.
XmNbuttonRenderTable
InMotif2.0andlater,specifiestherendertableusedforanybuttondescendantsoftheBulletinBoardwidget.IfNULL,thisisinheritedfromthenearestancestorthat
hastheXmQTspecifyRenderTabletrait,usingtheXmBUTTON_RENDER_TABLEvalueofanyancestorsofound.Thebuttonrendertableresourcetakes
precedenceoveranyspecifiedXmNbuttonFontList.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page659

XmNcancelButton
ThewidgetIDoftheCancelbutton.ThesubclassesofBulletinBoarddefineaCancelbuttonandsetthisresource.
XmNdefaultButton
ThewidgetIDofthedefaultbutton.SomeofthesubclassesofBulletinBoarddefineadefaultbuttonandsetthisresource.Toindicatethatitisthedefault,thisbutton
appearsdifferentfromtheothers.
XmNdefaultPosition
IfTrue(default)andiftheBulletinBoardisthechildofaDialogShell,theBulletinBoardiscenteredrelativetotheDialogShell'sparent.
XmNdialogStyle
TheBulletinBoard'sdialogstyle,whosevaluecanbesetonlyiftheBulletinBoardisunmanaged.Possiblevaluesare:
XmDIALOG_WORK_AREA/*defaultwhenparentisnotaDialogShell*/
XmDIALOG_MODELESS/*defaultwhenparentisaDialogShell*/
XmDIALOG_FULL_APPLICATION_MODAL
XmDIALOG_APPLICATION_MODAL
XmDIALOG_PRIMARY_APPLICATION_MODAL
XmDIALOG_SYSTEM_MODAL

ThevalueXmDIALOG_APPLICATION_MODAL,althoughmaintainedforbackwardscompatibility,isdeprecatedinMotif1.2andlater.Use
XmDIALOG_PRIMARY_APPLICATION_MODALinstead.
XmNdialogTitle
Thedialogtitle.SettingthisresourcealsosetstheresourcesXmNtitleandXmNtitleEncodinginaparentthatisasubclassofWMShell.
XmNlabelFontList
SpecifiesthefontlistusedforthelabeldescendantsoftheBulletinBoardwidget.InMotif2.0andlater,XmFontListisconsideredobsoleteitisreplacedby
XmRenderTable.TheXmNlabelRenderTableresourceisthepreferredmethodofspecifyingappearance.
XmNlabelRenderTable
InMotif2.0andlater,specifiestherendertableusedforanylabeldescendantsoftheBulletinBoardwidget.IfNULL,thisisinheritedfromthenearestancestorthat
hastheXmQTspecifyRenderTabletrait,usingtheXmLABEL_RENDER_TABLEvalueofanyancestorsofound.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page660

XmNmarginHeight
MinimumspacingbetweenaBulletinBoard'stoporbottomedgeandanychildwidget.
XmNmarginWidth
MinimumspacingbetweenaBulletinBoard'srightorleftedgeandanychildwidget.
XmNnoResize
IfFalse(default),mwmincludesresizecontrolsinthewindowmanagerframeoftheBulletinBoard'sshellparent.
XmNresizePolicy
HowBulletinBoardwidgetsareresized.Possiblevaluesare:
XmRESIZE_NONE/*remainatfixedsize*/
XmRESIZE_GROW/*expandonly*/
XmRESIZE_ANY/*shrinkorexpand,asneeded*/

XmNshadowType
Thestyleinwhichshadowsaredrawn.Possiblevaluesare:
XmSHADOW_IN/*widgetappearsinset*/
XmSHADOW_OUT/*widgetappearsoutset*/
XmSHADOW_ETCHED_IN/*doublelinewidgetappearsinset*/
XmSHADOW_ETCHED_OUT/*doublelinewidgetappearsraised*/

XmNtextFontList
SpecifiesthefontlistusedforthetextdescendantsoftheBulletinBoardwidget.InMotif2.0andlater,XmFontListisconsideredobsoleteitisreplacedby
XmRenderTable.TheXmNtextRenderTableresourceisthepreferredmethodofspecifyingappearance.
XmNtextRenderTable
InMotif2.0andlater,specifiestherendertableusedforanytextdescendantsoftheBulletinBoardwidget.IfNULL,thisisinheritedfromthenearestancestorthat
hastheXmQTspecifyRenderTabletrait,usingtheXmTEXT_RENDER_TABLEvalueofanyancestorsofound.
XmNtextTranslations
ForanyTextwidget(oritssubclass)thatisachildofaBulletinBoard,thisresourceaddstranslations.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page661

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

CallbackResources
BulletinBoarddefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNfocusCallback

XmCR_FOCUS

XmNmapCallback

XmCR_MAP

XmNunmapCallback

XmCR_UNMAP

XmNfocusCallback
Listofcallbacksthatarecalledwhenthewidgetoroneofitsdescendantsreceivestheinputfocus.
XmNmapCallback
Listofcallbacksthatarecalledwhenthewidgetismapped,ifitisachildofaDialogShell.
XmNunmapCallback
Listofcallbacksthatarecalledwhenthewidgetisunmapped,ifitisachildofaDialogShell.
CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*pointstoeventstructurethattriggeredcallback*/
}XmAnyCallbackStruct

InheritedResources
BulletinBoardinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.BulletinBoardsetsthevalueof
XmNinitialFocustothevalueofXmNdefaultButton.WhenitisachildofaDialogShell,BulletinBoardresetsthedefaultXmNshadowThickness
from0to1.ThedefaultvalueofXmNborderWidthisresetto0byManager.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinitialResources
Persistent

Core

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page662

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNnavigationType

XmManager

XmNborderColor

Core

XmNnumChildren

Composite

XmNborderPixmap

Core

XmNpopupHandler
Callback

XmManager

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmManager

XmNsensitive

Core

XmNbottomShadowPixmap

XmManager

XmNshadowThickness

XmManager

XmNchildren

Composite

XmNstringDirection

XmManager

XmNcolormap

Core

XmNtopShadowColor

XmManager

XmNdepth

Core

XmNtopShadowPixmap

XmManager

XmNdestroyCallback

Core

XmNtranslations

Core

XmNforeground

XmManager

XmNtraversalOn

XmManager

XmNheight

Core

XmNunitType

XmManager

XmNhelpCallback

XmManager

XmNuserData

XmManager

XmNhighlightColor

XmManager

XmNwidth

Core

XmNhighlightPixmap

XmManager

XmNx

Core

XmNinitialFocus

XmManager

XmNy

Core

XmNinsertPosition

Composite

Translations
ThetranslationsforBulletinBoardincludethoseofXmManager.
AdditionalBehavior
BulletinBoardhasthefollowingadditionalbehavior:
MAnyKCancel
ForasensitiveCancelbutton,invokestheXmNactivateCallbackcallbacks.
KActivate
Forthebuttonthathaskeyboardfocus,invokestheXmNactivateCallbackcallbacks.
<FocusIn>
InvokestheXmNfocusCallbackcallbacks.Thewidgetreceivesfocuseitherwhentheusertraversestoit(XmNkeyboardFocusPolicyis

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page663

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmEXPLICIT)orwhenthepointerentersthewindow(XmNkeyboardFocusPolicyisXmPOINTER).
<Map>
InvokestheXmNmapCallbackcallbacks.
<Unmap>
InvokestheXmNunmapCallbackcallbacks.
SeeAlso
XmCreateObject(1),Composite(2),Constraint(2),Core(2),XmBulletinBoardDialog(2),XmDialogShell
(2),XmManager(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page664

XmBulletinBoardDialog
MotifandXtWidgetClasses
Name
XmBulletinBoardDialoganunmanagedBulletinBoardasachildofaDialogShell.
Synopsis
<Xm/BulletinB.h>

PublicHeader:

widget=XmCreateBulletinBoardDialog(...)
Instantiation:
Functions/Macros:

XmCreateBulletinBoardDialog()

Description
ABulletinBoardDialogisacompoundobjectcreatedbyacalltoXmCreateBulletinBoardDialog()thatisusefulforcreatingcustomdialogs.A
BulletinBoardDialogconsistsofaDialogShellwithanunmanagedBulletinBoardwidgetasitschild.TheBulletinBoardDialogdoesnotcontainanylabels,buttons,or
otherdialogcomponentsthesecomponentsareaddedbytheapplication.
DefaultResourceValues
ABulletinBoardDialogsetsthefollowingdefaultvaluesforBulletinBoardresources:
Name

Default

XmNdialogStyle

XmDIALOG_MODELESS

WidgetHierarchy
WhenaBulletinBoardDialogiscreatedwithaspecifiedname,theDialogShellisnamedname_popupandtheBulletinBoardiscalledname.
SeeAlso
XmCreateObject(1),XmBulletinBoard(2),XmDialogShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page665

XmCascadeButton
MotifandXtWidgetClasses
Name
XmCascadeButtonwidgetclassabuttonwidgetthatpostsmenus.
Synopsis
PublicHeader:

<Xm/CascadeB.h>

ClassName:

XmCascadeButton

ClassHierarchy:

Core

XmPrimitive XmLabel XmCascadeButton

ClassPointer:

xmCascadeButtonWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmCascadeButtonWidgetClass,...)

Functions/Macros:

XmCascadeButtonHighlight(),XmCreateCascadeButton
(),XmIsCascadeButton()

Description
CascadeButtonsareusedinmenusystemstopostmenus.ACascadeButtoneitherlinksamenubartoamenupaneorconnectsamenupanetoanothermenupane.
Thewidgetcanhaveamenuattachedtoitasasubmenu.
Traits
CascadeButtonusestheXmQTmenuSystemandXmQTspecifyRenderTabletraits.
NewResources
CascadeButtondefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNcascadePixmap

XmCPixmap

Pixmap

dynamic

CSG

XmNmappingDelay

XmCMappingDelay

int

180

CSG

XmNsubMenuId

XmCMenuWidget

Widget

NULL

CSG

XmNcascadePixmap
ThepixmapwithintheCascadeButtonthatindicatesasubmenu.Bydefault,thispixmapisanarrowpointingtowardthesubmenutobepoppedup.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page666

XmNmappingDelay
ThenumberofmillisecondsitshouldtakefortheapplicationtodisplayasubmenuafteritsCascadeButtonhasbeenselected.
XmNsubMenuId
ThewidgetIDofthepulldownmenupaneassociatedwiththeCascadeButton.ThemenupaneisdisplayedwhentheCascadeButtonisselected.Thepulldownmenu
paneandtheCascadeButtonmusthaveacommonparent.
CallbackResources
CascadeButtondefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNactivateCallback

XmCR_ACTIVATE

XmNcascadingCallback

XmCR_CASCADING

XmNactivateCallback
ListofcallbacksthatarecalledwhenBSelectispressedandreleasedwhilethepointerisinsidethewidgetandthereisnosubmenutopost.
XmNcascadingCallback
ListofcallbacksthatarecalledbeforethesubmenuassociatedwiththeCascadeButtonismapped.
CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
}XmAnyCallbackStruct

InheritedResources
CascadeButtoninheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.CascadeButtonsetsthedefault
valuesofXmNmarginBottom,XmNmarginRight,XmNmarginTop,XmNmarginWidth,andXmNtraversalOndynamically.InMotif2.0
andearlier,thedefaultvaluesofXmNhighlightThicknessandXmNshadowThicknessareresetto2.InMotif2.1,thedefaultvaluesdependuponthe
XmDisplayXmNenableThinThickness

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page667

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

resource:ifTruethedefaultis1otherwise,itis2.ThedefaultvalueofXmNborderWidthisresetto0byPrimitive.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerator

XmLabel

XmNlabelType

XmLabel

XmNaccelerators

Core

XmNlayoutDirection

XmPrimitive

XmNacceleratorText

XmLabel

XmNmappedWhenManaged

Core

XmNalignment

XmLabel

XmNmarginBottom

XmLabel

XmNancestorSensitive

Core

XmNmarginHeight

XmLabel

XmNbackground

Core

XmNmarginLeft

XmLabel

XmNbackgroundPixmap

Core

XmNmarginRight

XmLabel

XmNborderColor

Core

XmNmarginTop

XmLabel

XmNborderPixmap

Core

XmNmarginWidth

XmLabel

XmNborderWidth

Core

XmNmnemonicCharSet

XmLabel

XmNbottomShadowColor

XmPrimitive

XmNmnemonic

XmLabel

XmNbottomShadowPixmap

XmPrimitive

XmNnavigationType

XmPrimitive

XmNcolormap

Core

XmNpopupHandler
Callback

XmPrimitive

XmNconvertCallback

XmPrimitive

XmNrecomputeSize

XmLabel

XmNdepth

Core

XmNrenderTable

XmLabel

XmNdestroyCallback

Core

XmNscreen

Core

XmNfontList

XmLabel

XmNsensitive

Core

XmNforeground

XmPrimitive

XmNshadowThickness

XmPrimitive

XmNheight

Core

XmNstringDirection

XmLabel

XmNhelpCallback

XmPrimitive

XmNtopShadowColor

XmPrimitive

XmNhighlightColor

XmPrimitive

XmNtopShadowPixmap

XmPrimitive

XmNhighlightOnEnter

XmPrimitive

XmNtranslations

Core

XmNhighlightPixmap

XmPrimitive

XmNtraversalOn

XmPrimitive

XmNhighlightThickness

XmPrimitive

XmNunitType

XmPrimitive

XmNinitialResources
Persistent

Core

XmNuserData

XmPrimitive

XmNlabelInsensitivePixmap

XmLabel

XmNwidth

Core

XmNlabelPixmap

XmLabel

XmNx

Core

XmNlabelString

XmLabel

XmNy

Core

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page668

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Translations
ThetranslationsofCascadeButtonincludethemenutraversaltranslationsofLabel.
Event

Action

BSelectPress

MenuBarSelect()(inamenubar)

StartDrag()(inapopupmenuorapulldownmenu)

BSelectRelease

DoSelect()

MCtrlBSelectPress

MenuButtonTakeFocus()

MCtrlBSelectRelease

MenuButtonTakeFocusUp()

KActivate

KeySelect()

KSelect

KeySelect()

KHelp

Help()

MAnyKCancel

CleanupMenuBar()

ActionRoutines
CascadeButtondefinesthefollowingactionroutines:
CleanupMenuBar()
Unpostsanymenusandrestoresthekeyboardfocustothegroupofwidgets(tabgroup)thathadthefocusbeforetheCascadeButtonwasarmed.
DoSelect()
PoststheCascadeButton'ssubmenuandallowskeyboardtraversal.IfthereisnosubmenuattachedtotheCascadeButton,thisactionroutineactivatesthe
CascadeButtonandunpostsallthemenusinthecascade.
Help()
SimilartoCleanupMenuBar()inthattheHelp()routineunpostsanymenusandrestoreskeyboardfocus.Thisroutinealsoinvokesthelistofcallbacks
specifiedbyXmNhelpCallback.IftheCascadeButtondoesn'thaveanyhelpcallbacks,theHelp()routineinvokesthoseassociatedwiththenearestancestor
thathasthem.
KeySelect()
PoststheCascadeButton'ssubmenu,providedthatkeyboardtraversalisallowed.IfthereisnosubmenuattachedtotheCascadeButton,thisactionroutineactivates
theCascadeButtonandunpostsallthemenusinthecascade.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page669

MenuBarSelect()
Unpostsanypreviouslypostedmenus,poststhesubmenuassociatedwiththeCascadeButton,andenablesmousetraversal.
MenuButtonTakeFocus()
InMotif2.0andlater,movesthecurrentkeyboardfocustotheCascadeButton,withoutactivatingthewidget.
MenuButtonTakeFocusUp()
InMotif2.0andlater,removesthekeyboardfocusfromtheCascadeButton.
StartDrag()
PoststhesubmenuassociatedwiththeCascadeButtonandenablesmousetraversal.
AdditionalBehavior
CascadeButtonhasthefollowingadditionalbehavior:
<EnterWindow>
ArmstheCascadeButtonandpostsitssubmenu.
<LeaveWindow>
DisarmstheCascadeButtonandunpostsitssubmenu.
SeeAlso
XmCascadeButtonHighlight(1),XmCreateObject(1),Core(2),XmLabel(2),XmPrimitive(2),XmRowColumn
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page670

XmCascadeButtonGadget
MotifandXtWidgetClasses
Name
XmCascadeButtonGadgetwidgetclassabuttongadgetthatpostsmenus.
Synopsis
PublicHeader:

<Xm/CascadeBG.h>

ClassName:

XmCascadeButtonGadget

ClassHierarchy:

Object RectObj XmGadget XmLabelGadget


XmCascadeButtonGadget

ClassPointer:

xmCascadeButtonGadgetClass

Instantiation:

widget=XtCreateWidget(name,
xmCascadeButtonWidgetClass,...)

Functions/Macros:

XmCascadeButtonGadgetHighlight(),
XmCreateCascadeButtonGadget(),
XmIsCascadeButtonGadget(),
XmOptionButtonGadget()

Description
CascadeButtonGadgetisthegadgetvariantofCascadeButton.CascadeButtonGadget'snewresources,callbackresources,andcallbackstructurearethesameas
thoseforCascadeButton.
Traits
CascadeButtonGadgetusestheXmQTmenuSystemandXmQTspecifyRenderTabletraits.
InheritedResources
CascadeButtonGadgetinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.CascadeButtonGadgetsets
thedefaultvaluesofXmNmarginBotton,XmNmarginRight,XmNmarginTop,andXmNmarginWidthdynamically.Italsosetsthedefaultvalue
of>hwXmNhighlightThicknessXmNhighlightThicknessto0.ThedefaultvalueofXmNborderWidthisresetto0byGadget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page671
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerator

XmLabelGadget

XmNmarginBottom

XmLabelGadget

XmNacceleratorText

XmLabelGadget

XmNmarginHeight

XmLabelGadget

XmNalignment

XmLabelGadget

XmNmarginLeft

XmLabelGadget

XmNancestorSensitive

RectObj

XmNmarginRight

XmLabelGadget

XmNbackground

XmGadget

XmNmarginTop

XmLabelGadget

XmNbackgroundPixmap

XmGadget

XmNmarginWidth

XmLabelGadget

XmNborderWidth

RectObj

XmNmnemonic

XmLabelGadget

XmNbottomShadowColor

XmGadget

XmNmnemonicCharSet

XmLabelGadget

XmNbottomShadowPixmap

XmGadget

XmNnavigationType

XmGadget

XmNdestroyCallback

Object

XmNrecomputeSize

XmLabelGadget

XmNfontList

XmLabelGadget

XmNrenderTable

XmLabelGadget

XmNforeground

XmGadget

XmNsensitive

RectObj

XmNheight

RectObj

XmNshadowThickness

XmGadget

XmNhelpCallback

XmGadget

XmNstringDirection

XmLabelGadget

XmNhighlightColor

XmGadget

XmNtopShadowColor

XmGadget

XmNhighlightOnEnter

XmGadget

XmNtopShadowPixmap

XmGadget

XmNhighlightPixmap

XmGadget

XmNtraversalOn

XmGadget

XmNhighlightThickness

XmGadget

XmNunitType

XmGadget

XmNlabelInsensitivePixmap

XmLabelGadget

XmNuserData

XmGadget

XmNlabelPixmap

XmLabelGadget

XmNwidth

RectObj

XmNlabelString

XmLabelGadget

XmNx

RectObj

XmNlabelType

XmLabelGadget

XmNy

RectObj

XmNlayoutDirection

XmGadget

Behavior
Asagadgetsubclass,CascadeButtonGadgethasnotranslationsassociatedwithit.However,CascadeButtonGadgetbehaviorcorrespondstotheactionroutinesof
theCascadeButtonwidget.SeetheCascadeButtonactionroutinesformoreinformation.
Behavior

EquivalentCascadeButtonActionRoutine

BSelectPress

MenuBarSelect()orStartDrag()

BSelectRelease

DoSelect()

MCtrlBSelectPress

MenuButtonTakeFocus()

MCtrlBSelectRelease

MenuButtonTakeFocusUp()

KActivateorKSelect

KeySelect()

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page672

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Behavior

EquivalentCascadeButtonActionRoutine

KHelp

Help()

MAnyKCancel

CleanupMenuBar()

Inamenubarthatisarmed,CascadeButtonGadgethasadditionalbehaviorassociatedwith<Enter>,whicharmstheCascadeButtonGadgetandpostsits
submenu,andwith<Leave>,whichdisarmstheCascadeButtonGadgetandunpostsitssubmenu.
SeeAlso
XmCascadeButtonHighlight(1),XmCreateObject(1),XmOptionButtonGadget(1),Object(2),RectObj(2),
XmCascadeButton(2),XmGadget(2),XmLabelGadget(2),XmRowColumn(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page673

XmCheckBox
MotifandXtWidgetClasses
Name
XmCheckBoxaRowColumnthatcontainsToggleButtons.
Synopsis
PublicHeader:

<Xm/RowColumn.h>

ClassName:

XmRowColumn

ClassHierarchy:

Core

ClassPointer:

Composite

Constraint

XmManager XmRowColumn

xmRowColumnWidgetClass
widget=XmCreateSimpleCheckBox(...)

Instantiation:
Functions/Macros:

XmCreateRowColumn(),XmCreateSimpleCheckBox(),
XmIsRowColumn(),XmVaCreateSimpleCheckBox()

Description
ACheckBoxisaninstanceofaRowColumnwidgetthatcontainsToggleButtonorToggleButtonGadgetchildren,anynumberofwhichmaybeselectedatagiven
time.ACheckBoxisaRowColumnwidgetwithitsXmNrowColumnTyperesourcesettoXmWORK_AREAandXmNradioAlwaysOnesettoFalse.
ACheckBoxcanbecreatedbymakingaRowColumnwiththeseresourcevalues.Whenitiscreatedinthisway,aCheckBoxdoesnotautomaticallycontain
ToggleButtonchildrentheyareaddedbytheapplication.
ACheckBoxcanalsobecreatedbyacalltoXmCreateSimpleCheckBox()orXmVaCreateSimpleCheckBox().Theseroutinesautomatically
createtheCheckBoxwithToggleButtonGadgetsaschildren.TheroutinesusetheRowColumnresourcesassociatedwiththecreationofsimplemenus.Fora
CheckBox,theonlytypeallowedintheXmNbuttonTyperesourceisXmCHECKBUTTON.ThenameofeachToggleButtonGadgetisbutton_n,wherenis
thenumberofthebutton,rangingfrom0to1lessthanthenumberofbuttonsintheCheckBox.
DefaultResourceValues
ACheckBoxsetsthefollowingdefaultvaluesforitsresources:
Name

Default

XmNnavigationType

XmTAB_GROUP

XmNradioBehavior

False

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page674

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Default

XmNrowColumnType

XmWORK_AREA

XmNtraversalOn

True

SeeAlso
XmCreateObject(1),XmVaCreateSimpleCheckBox(1),XmRowColumn(2),XmToggleButton(2),
XmToggleButtonGadget(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page675

XmComboBox
MotifandXtWidgetClasses
Name
XmComboBoxwidgetclassacompositewidgetthatcombinesatextwidgetwithalistofchoices.
Synopsis
PublicHeader:

<Xm/ComboBox.h>

ClassName:

XmComboBox

ClassHierarchy:

Core

ClassPointer:

Composite

Constraint

XmManager XmComboBox

xmComboBoxWidgetClass
widget=XtCreateWidget(name,xmComboBoxWidgetClass,...)

Instantiation:
Functions/Macros:

XmComboBoxAddItem(),XmComboBoxDeletePos(),
XmComboBoxSelectItem(),XmComboBoxSetItem(),XmComboBoxUpdate
(),XmCreateComboBox(),XmCreateDropDownComboBox(),
XmCreateDropDownList(),XmIsComboBox()

Availability
Motif2.0andlater.
Description
ComboBoxisacompositewidgetthatcombinesbothtextentryandscrolledlistselection.TheComboBoxcanbeconfiguredinvariousways,dependingonwhether
thetextfieldistobeeditableandwhetherthescrolledlististobepermanentlyvisible.Thetextfieldcontainsthecurrentlyselecteditemanitemselectedfromthelist
isautomaticallyplacedintothetextfield.Whetherenteringdataintothetextfieldorselectingfromthelist,theusercanselectonlyoneitematanygiventime.Data
typeddirectlyintothetextfielddoesnot,however,automaticallyselectanymatchingiteminthelist.
Bydefault,boththetextfieldandthelistarefullyvisible,andthelistisplacedunderneaththetextwidget.Theusercaneitherentercharactersdirectlyintothetextfield
orselectanitemfromthelist.Alternatively,theComboBoxwidgetcanbeconfiguredsuchthatthelistishiddenuntilrequired.Inthiscase,theComboBoxwidget
drawsanarrowbuttonadjacenttothetextfield.Clickingonthearrowdisplays

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page676

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

thehiddenlistunderneaththetextfield.Selectinganitemfromthedisplayedpopuplistautomaticallypopsdownthelist.
TheXmNcomboBoxTyperesourceconfiguresthetypeoftheComboBox.Youmayspecifyoneofthefollowingtypes:combobox(XmCOMBO_BOX),drop
downcombobox(XmDROP_DOWN_COMBO_BOX),ordropdownlist(XmDROP_DOWN_LIST).Thecomboboxtypehasapermanentlyvisiblelistandthe
textfieldiseditable.Adropdowncomboboxhasaneditabletextfield,thelistishidden,andthearrowbuttonisdrawn.Adropdownlistisidenticaltoadropdown
comboboxexceptthatthetextfieldisnoteditable:theusermustselectfromthelisttochangetheselection.
IftheComboBoxwidgethasanoneditabletextfield,anycharacterstypeddonotappeardirectlyinthetextfield.Instead,anycharactersenteredmaybecompared
againstitemsinthelist,dependingonthevalueoftheXmNmatchBehaviorresource.Whenthelisthastheinputfocusandthisresourceisenabled,characters
typedarecomparedagainstthefirstcharacterofeachiteminthelist.Ifamatchisfound,thematchedlistitemisautomaticallyselected.Subsequentlytypingthesame
characterprogressescyclicallythroughthelisttofindanyfurthermatchingitem.
ThepositionofthearrowbuttonrelativetothetextfielddependsupontheXmNlayoutDirectionresourceoftheShellancestoroftheComboBoxwidget.If
XmNlayoutDirectionisXmLEFT_TO_RIGHT,thearrowbuttonisdrawntotherightofthetextfield.Otherwise,avalueofXmRIGHT_TO_LEFT
drawsthearrowbuttontotheleft.
Traits
ComboBoxusestheXmQTaccessTextualandXmQTspecifyRenderTabletraits.
NewResources
ComboBoxdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNarrowSize

XmCArrowSize

Dimension

dynamic

CSG

XmNarrowSpacing

XmCArrowSpacing

Dimension

dynamic

CSG

XmNcolumns

XmCColumns

short

dynamic

CSG

XmNcomboBoxType

XmCComboBoxType

unsignedchar XmCOMBO_BOX

CG

XmNfontList

XmCFontList

XmFontList

NULL

CSG

XmNhighlight
Thickness

XmCHighlight
Thickness

Dimension

dynamic

CSG

XmNitemCount

XmCItemCount

int

dynamic

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page677

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNitems

XmCItems

XmStringTable

dynamic

CSG

XmNlist

XmCList

Widget

dynamic

XmNmarginHeight

XmCMarginHeight

Dimension

CSG

XmNmarginWidth

XmCMarginWidth

Dimension

CSG

XmNmatchBehavior

XmCMatchBehavior

unsignedchar

dynamic

CSG

XmNpositionMode

XmCPositionMode

XtEnum

XmZERO_BASED

CG

XmNrenderTable

XmCRenderTable

XmRenderTable

dynamic

CSG

XmNselectedItem

XmCSelectedItem

XmString

NULL

CSG

XmNselected
Position

XmCSelected
Position

int

CSG

XmNtextField

XmCTextField

Widget

dynamic

XmNvisibleItem
Count

XmCVisibleItem
Count

int

10

CSG

XmNarrowSize
Thesizeofthedrawnarrowbuttonusedtodisplaythehiddenlist.Thedefaultsizedependsuponthesizeofthetextfield,andthusthesizeoftheComboBoxwidget.
AttemptingtochangethearrowsizemayresultinageometryrequesttotheparentoftheComboBoxwidget.Ifthisrequestisrefused,thearrowsizeissettothe
maximumsizethatfitsintothespaceallowedbytheparentoftheComboBoxwidget.
XmNarrowSpacing
Thehorizontalspacing,inpixels,betweenthedrawnarrowbuttonandthetextfield.ThedefaultvalueiscalculatedfromthevalueoftheXmNmarginWidth
resource.
XmNcolumns
Specifiesthenumberofcolumnsinthetextfield.ThedefaultvalueisthatofXmTextField.
XmNcomboBoxType
SpecifiesthetypeoftheComboBox.Possiblevaluesare:
XmCOMBO_BOX/*visiblelisteditabletextfield*/
XmDROP_DOWN_COMBO_BOX/*hiddenlisteditabletextfield*/
XmDROP_DOWN_LIST/*hiddenlistnoneditabletextfield*/

XmNfontList
Thefontlistusedfortheitemsinthelistandtextfield.InMotif2.0andlater,XmFontListisobsoleteasadatatypetheresourceismaintainedforbackwards

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page678

compatibilitythroughanimplementationasanXmRenderTable.TheXmNrenderTableresourceisthepreferredmethodofspecifyingappearance.If
botharendertableandfontlistarespecified,therendertabletakesprecedence.Thedefaultfontlististakenfromthedefaultrendertable.
XmNhighlightThickness
Thethicknessofthehighlightingrectangle.InMotif2.0,thedefaultis2.InMotif2.1andlater,thedefaultdependsuponthevalueoftheXmDisplayresource
XmNenableThinThickness:ifTrue,thedefaultis1otherwise,itis2.
XmNitemCount
Thetotalnumberofitems.Ifunspecified,thevalueistakenfromtheinternallist.TheComboBoxwidgetupdatesthisresourceeverytimealistitemisaddedor
removedthroughtheComboBoxconveniencefunctions.
XmNitems
Apointertoanarrayofcompoundstrings,representingtheitemstodisplayinthelist.AcalltoXtGetValues()returnstheactuallistitems,notacopy.
Applicationsshouldnotdirectlyfreeanyitemsfetchedinthismanner.Iftheresourceisunspecified,thevalueistakenfromtheinternallist.TheComboBoxwidget
updatesthisresourceeverytimealistitemisaddedorremovedthroughtheComboBoxconveniencefunctions.
XmNlist
ThelistwidgetcreatedbytheComboBox.Applicationscannotchangethevalueofthisresource,butmayfetchthevaluetoperformrequiredoperationsonthe
internallist.
XmNmarginHeight
TheminimumspacingbetweentheComboBoxtoporbottomedgeandthechildlistandtextfieldwidgets.
XmNmarginWidth
TheminimumspacingbetweentheComboBoxleftorrightedgeandthechildlistandtextfieldwidgets.
XmNmatchBehavior
Determineswhethermatchingbehaviorisenabled,wherecharacterstypedarecomparedagainstitemsinthelist.Possiblevaluesare:
XmNONE/*Nomatchbehavior*/
XmQUICK_NAVIGATE/*Matchbehaviorenabled*/

ThevalueXmQUICK_NAVIGATEmayonlybespecifiediftheXmNcomboBoxTyperesourcehasvalueXmDROP_DOWN_LIST.XmQUICK

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page679

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NAVIGATEisthedefaultwhenXmNcomboBoxTypeisXmDROP_DOWN_LIST.Otherwise,XmNONEisthedefault.
XmNpositionMode
SpecifiesthewayinwhichthepositionoftheselecteditemisreportedincallbacksandcontrolstheinitialindexvalueoftheXmNselectedPositionresource.
Possiblevaluesare:
XmZERO_BASED/*firstiteminlistispositionzero*/
XmONE_BASED/*firstiteminlistispositionone0*/

AvalueofXmZERO_BASEDconfigurescallbackdataontheXmNselectionCallbacklistsuchthattheitem_positionelementofthe
XmComboBoxCallbackStructisindexedfromzero:selectingthefirstlistitemhasitem_positionsettozero,selectingtheseconditemhas
item_positionasone,andsoforth.Similarly,fetchingtheXmNselectedPositionresourcewhenthefirstiteminthelistisselectedreturnsthe
valuezero.
AvalueofXmONE_BASEDsetstheitem_positionelementsuchthatselectingthefirstiteminthelistisreportedatpositionone,theseconditemis
reportedatpositiontwo,andsoon.Byanalogy,fetchingtheXmNselectedPositionresourcewhenthefirstiteminthelistisselectedreturnsthevalue
one.
Inallcases,changestothetextfieldarereportedwithitem_positionsettozero.
AXmNpositionModeofXmONE_BASEDthereforemakesiteasiertodistinguishbetweentextfieldandlistselection,sinceitem_positionsetto
zeroisnotambiguous.
TheComboBoxconveniencefunctionsforadding,deleting,orselectingitemsinthelistareunaffectedbythevalueofthisresource:thesefunctionsalwaysassume
thatthefirstitemisatpositionone.
ThisresourceisprovidedforCDEcompatibility.Inparticular,settingthevaluetoXmZERO_BASEDmakestheComboBoxselectionbehaviorconsistentwith
thatoftheDtComboBoxwidget.
XmNrenderTable
SpecifiestherendertablefortheComboBox,forboththetextfieldandlistchildren.IfNULL,thisisinheritedfromthenearestancestorthathasthe
XmQTspecifyRenderTabletrait.TheBulletinBoard,VendorShell,and

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page680

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

MenuShellwidgetsandderivedclassessetthistrait.TherendertableresourcetakesprecedenceoveranyspecifiedXmNfontList.
XmNselectedItem
AcompoundstringrepresentingthecurrentlyselecteditemcontainedwithintheComboBoxtextfield.
XmNselectedPosition
IdentifiestheindexoftheXmNselectedIteminthelist.TheinterpretationoftheindexdependsuponthevalueoftheXmNpositionModeresource.If
XmNpositionModeisXmZERO_BASED,aXmNselectedPositionvalueof0(zero)indicatesthatthefirstlistitemisselected,avalueof1indicates
theseconditemisselected,andsoforth.IfXmNpositionModeisXmONE_BASED,thevalue1indicatesthatthefirstlistitemisselected,thevalue2indicates
thesecondlistitem,andsoon,withvalue0(zero)indicatingthatnolistitemisselected.
XmNtextField
ThetextfieldwidgetcreatedbytheComboBox.Applicationscannotchangethevalueofthisresource,butmayfetchthevaluetoperformrequiredoperationsonthe
internaltextfield.
XmNvisibleItemCount
Thenumberofitemstodisplayintheworkareaofthelist.Ifspecified,thisresourceoverridestheXmNvisibleItemCountresourceoftheinternallistwidget.
Theresourcemayaffecttheheightofthelistwidget,andhencetheComboBoxitself,dependinguponwhetherthelistispermanentlyvisible.Ifthe
XmNvisibleItemCountvalueislessthanthenumberofitemsinthelist,thelistisautomaticallyconfiguredwithaverticalScrollBar.
CallbackResources
ComboBoxdefinesthefollowingcallbackresource:
Callback

ReasonConstant

XmNselectionCallback

XmCR_SELECT

XmNselectionCallback
ListofcallbacksthatarecalledwhenaselectionoccursintheComboBoxwidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page681

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*pointstoeventstructurethattriggeredcallback*/
XmStringitem_or_text/*theselecteditem*/
intitem_position/*theindexoftheiteminthelist*/
}XmComboBoxCallbackStruct

Theitem_or_textelementisacompoundstringthatrepresentstheComboBoxselecteditem.Itpointstoallocatedmemorythatisreclaimedafterthecallbacks
ontheXmNselectionCallbacklisthavereturned.Iftheitemistobecached,theapplicationshouldcopytheitemusingXmStringCopy().
Theitem_positionelementspecifiestheindexoftheselecteditemwithintheXmNitemsarrayofthelist.Theinterpretationofthevaluedependsuponthe
XmNpositionModeresourceoftheComboBoxwidget.WithXmNpositionModesettoXmONE_BASED,anitem_positionof1referstothefirst
iteminthelist,andanitem_positionofzeroindicatesthattheselecteditemhasbeenentereddirectlyintothetextfield(nolistselection).Witha
XmNpositionModeofXmZERO_BASED,anitem_positionofzerocouldeithermeanthatthefirstiteminthelistisselected,orthattheselectionisfrom
directtextentry,andanitem_positionof1referstothesecondlistitem.
DefaultResourceValues
AComboBoxsetsthefollowingdefaultvaluesforthescrolledlistresources:
Name

Default

XmNborderWidth

XmNhighlightThickness

dynamic

XmNlistSizePolicy

XmVARIABLE

XmNnavigationType

XmNONE

XmNrenderTable

dynamic

XmNselectionPolicy

XmBROWSE_SELECT

XmNspacing

XmNtraversalOn

dynamic

XmNvisualPolicy

XmVARIABLE

TheXmNhighlightThicknessissetto2iftheComboBoxisadropdownlist,zerootherwise.TheXmNrenderTableisinheritedfromtheComboBox.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page682

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNtraversalOnisforcedtoFalseiftheComboBoxXmNcomboBoxTypeisXmCOMBO_BOX.
AComboBoxsetsthefollowingdefaultvaluesforthetextfieldresources:
Name

Default

XmNborderWidth

XmNcursorPositionVisible

dynamic

XmNeditable

dynamic

XmNeditMode

dynamic

XmNhighlightThickness

XmNnavigationType

XmNONE

XmNrenderTable

dynamic

XmNshadowThickness

dynamic

IftheComboBoxisadropdownlist,XmNcursorPositionVisibleandXmNeditablearesettoFalse,andtheXmNshadowThicknessisset
tozero.Otherwise,XmNcursorPositionVisibleandXmNeditablearesetTrue,andXmNeditModeissettoXmSINGLE_LINE_EDIT.
InheritedResources
ComboBoxinheritstheresourcesshownbelow.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.ComboBoxsetsthedefaultvalues
ofXmNmarginWidth,andXmNmarginHeightto2,andXmNnavigationTypetoXmSTICKY_TAB_GROUP.Thedefaultvalueof
XmNborderWidthisresetto0(zero)byManager.ThedefaultvaluesforXmNhighlightThicknessandXmNshadowThicknessdependuponthe
XmDisplay,hwXmNenableThinThicknessXmNenableThinThicknessresource:ifTrue,thedefaultis1otherwise,itis2.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinsertPosition

Composite

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNnavigationType

XmManager

XmNborderColor

Core

XmNnumChildren

XmManager

XmNborderPixmap

Core

XmNpopupHandlerCallback

XmManager

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmManager

XmNsensitive

Core

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page683

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNbottomShadowPixmap

XmManager

XmNshadowThickness

XmManager

XmNchildren

Composite

XmNstringDirection

XmManager

XmNcolormap

Core

XmNtopShadowColor

XmManager

XmNdepth

Core

XmNtopShadowPixmap

XmManager

XmNdestroyCallback

Core

XmNtranslations

Core

XmNheight

Core

XmNtraversalOn

XmManager

XmNhelpCallback

XmManager

XmNuserData

XmManager

XmNhighlightColor

XmManager

XmNwidth

Core

XmNhighlightPixmap

XmManager

XmNx

Core

XmNinitialFocus

XmManager

XmNy

Core

XmNinitialResources
Persistent

Core

WidgetHierarchy
TheComboBoxcreatesthetextfieldwiththenameText,andthescrolledlistisnamedList.IftheComboBoxisofadropdowntype,anXmGrabShellnamed
GrabShelliscreatedasaparenttothescrolledlist.
Translations
ThetranslationsforComboBoxincludethoseofXmManager.
Event

Action

BSelectPress

CBArmAndDropDownList()

BSelectRelease

CBDisarm()

ComboBoxplacesthefollowingtranslationsuponthelist:
Event

Action

KDown

CBDropDownList()

KUp

CBDropDownList()

KCancel

CBCancel()

KActivate

CBActivate()

MShiftKBeginData

CBListAction(ListBeginData)

MShiftKEndData

CBListAction(ListEndData)

KPageUp

CBListAction(ListPrevPage)

KPageDown

CBListAction(ListNextPage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page684

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

ComboBoxplacesthefollowingtranslationsuponthetextfield:
Event

Action

<FocusOut>

CBTextFocusOut()

ActionRoutines
ComboBoxdefinesthefollowingactionroutines:
CBActivate()
Fetchesthevaluefromthetextfield.IftheXmNcomboBoxTypeisXmCOMBO_BOX,invokesthelistofcallbacksspecifiedby
XmNdefaultActionCallbackfortheinternallist,passingthetextfieldvalueastheselecteditemwithinthecallbackdata.Regardlessof
XmNcomboBoxType,ifthevaluematchesanitemwithinthelist,thelistitemisselectedotherwise,alllistitemsaredeselected.Lastly,thelistofcallbacks
specifiedbyXmNselectionCallbackisinvoked.
CBArmAndDropDownList()
Ifthemouseisoverthedrawnarrowbutton,drawsthearrowbuttonasthoughselectedandpoststhedropdownlist.
CBCancel()
Popsdownthedropdownlistanddrawsthearrowbuttoninunselectedstate.
CBDisarm()
Drawsthearrowbuttoninunselectedstate.
CBDropDownList()
Poststhedropdownlist
CBFocusIn()
DrawsfocushighlightingaroundtheComboBoxwidget.
CBFocusOut()
ErasesfocushighlightingaroundtheComboBoxwidget.Ifthetextfieldhaschanged,invokesthelistofcallbacksspecifiedbyXmNselectionCallback.
CBListAction(type)
Agenericactiontoperformoperationsontheinternallist.TheactionTypemaybeoneofUp,Down,ListPrevPage,ListNextPage,
ListBeginData,orListEndData.ThetypesUpandDownsimplyselecttherelevantiteminthelistintherequireddirectionrelativetothecurrently
selecteditem.Theremainingtypesdirectlyinvokethe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page685

ListPrevPage,ListNextPage,ListBeginData,orListEndDataactionsofthelist.ThetypesUpandDowndifferfromthe
correspondingListactionsinthattheComboBoxactionswraparoundtheitemsintheinternallist.
CBTextFocusOut()
Turnsofftextfieldcursorblinking.
SeeAlso
XmComboBoxAddItem(1),XmComboBoxDeletePos(1),XmComboBoxSelectItem(1),XmComboBoxSetItem(1),
XmComboBoxUpdate(1),XmCreateObject(1),Composite(2),Constraint(2),Core(2),XmManager(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page686

XmCommand
MotifandXtWidgetClasses
Name
XmCommandwidgetclassacompositewidgetforcommandentry.
Synopsis
PublicHeader:

<Xm/Command.h>

ClassName:

XmCommand

ClassHierarchy:

Core Composite
XmCommand

ClassPointer:

xmCommandWidgetClass

Constraint

XmManager XmBulletinBoard XmSelectionBox

widget=XtCreateWidget(name,xmCommandWidgetClass,...)
Instantiation:
Functions/Macros: XmCommandAppendValue(),XmCommandError(),XmCommandGetChild(),
XmCommandSetValue(),XmCreateCommand(),XmIsCommand()

Description
Commandisacompositewidgetthathandlescommandentrybyprovidingaprompt,acommandinputfield,andahistorylistregion.ManyoftheCommandwidget's
newresourcesareinfactrenamedresourcesfromSelectionBox.
NewResources
Commanddefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNcommand

XmCTextString

XmString

""

CSG

XmNhistoryItems

XmCItems

XmStringTable

NULL

CSG

XmNhistoryItemCount XmCItemCount

int

CSG

XmNhistoryMaxItems

XmCMaxItems

int

100

CSG

XmNhistoryVisible
ItemCount

XmCVisibleItemCount

int

dynamic

CSG

XmNpromptString

XmCPromptString

XmString

dynamic

CSG

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page687

XmNcommand
Thetextcurrentlydisplayedonthecommandline.SynonymouswiththeXmNtextStringresourceinSelectionBox.XmNcommandcanbechangedusingthe
routinesXmCommandSetValue()andXmCommandAppendValue().
XmNhistoryItems
Theitemsinthehistorylist.SynonymouswiththeXmNlistItemsresourceinSelectionBox.AcalltoXtGetValues()returnstheactuallistitems(nota
copy),sodon'thaveyourapplicationfreetheseitems.
XmNhistoryItemCount
ThenumberofstringsinXmNhistoryItems.SynonymouswiththeXmNlistItemCountresourceinSelectionBox.
XmNhistoryMaxItems
Thehistorylist'smaximumnumberofitems.Whenthisnumberisreached,thefirsthistoryitemisremovedbeforethenewcommandisaddedtothelist.
XmNhistoryVisibleItemCount
Thenumberofhistorylistcommandsthatwilldisplayatonetime.SynonymouswiththeXmNvisibleItemCountresourceinSelectionBox.
XmNpromptString
Thecommandlineprompt.SynonymouswiththeXmNselectionLabelStringresourceinSelectionBox.
CallbackResources
Commanddefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNcommandEnteredCallback

XmCR_COMMAND_ENTERED

XmNcommandChangedCallback

XmCR_COMMAND_CHANGED

XmNcommandChangedCallback
Listofcallbacksthatarecalledwhenthevalueofthecommandchanges.
XmNcommandEnteredCallback
Listofcallbacksthatarecalledwhenacommandisenteredinthewidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page688

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
XmStringvalue/*thestringcontainedinthecommandarea*/
intlength/*thesizeofthisstring*/
}XmCommandCallbackStruct

InheritedResources
Commandinheritstheresourcesshownbelow.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Commandsetsthedefaultvaluesof
XmNautoUnmanageandXmNdefaultPositiontoFalse,XmNdialogTypetoXmDIALOG_COMMAND,andXmNlistLabelStringto
NULL.InversionsofMotifpriorto2.1.10,XmNresizePolicyisresettoXmRESIZE_NONE.InMotif2.1.10andlater,itisresettoXmRESIZE_ANY:this
undocumentedchangeisabugwhichpersistsinMotif2.1.20.ThedefaultvalueofXmNborderWidthisresetto0byManager.BulletinBoardsetsthevalueof
XmNinitialFocustoXmNdefaultButtonandresetsthedefaultXmNshadowThicknessfrom0to1iftheCommandwidgetisachildofa
DialogShell.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNlistItemCount

XmSelectionBox

XmNallowOverlap

XmBulletinBoard

XmNlistItems

XmSelectionBox

XmNancestorSensitive

Core

XmNlistLabelString

XmSelectionBox

XmNapplyCallback

XmSelectionBox

XmNlistVisibleItem
Count

XmSelectionBox

XmNapplyLabelString

XmSelectionBox

XmNmapCallback

XmBulletinBoard

XmNautoUnmanage

XmBulletinBoard

XmNmappedWhenManaged

Core

XmNbackground

Core

XmNmarginHeight

XmBulletinBoard

XmNbackgroundPixmap

Core

XmNmarginWidth

XmBulletinBoard

XmNborderColor

Core

XmNminimizeButtons

XmSelectionBox

XmNborderPixmap

Core

XmNmustMatch

XmSelectionBox

XmNborderWidth

Core

XmNnavigationType

XmManager

XmNbottomShadowColor

XmManager

XmNnoMatchCallback

XmSelectionBox

XmNbottomShadowPixmap

XmManager

XmNnoResize

XmBulletinBoard

XmNbuttonFontList

XmBulletinBoard

XmNnumChildren

Composite

XmNbuttonRenderTable

XmBulletinBoard

XmNokCallback

XmSelectionBox

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page689

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

XmNcancelButton

XmBulletinBoard XmNokLabelString

Resource

XmSelectionBox

XmNcancelCallback

XmSelectionBox

XmNpopupHandler
Callback

XmManager

XmNcancelLabelString

XmSelectionBox

XmNresizePolicy

XmBulletinBoard

XmNchildren

Composite

XmNscreen

Core

XmNchildPlacement

XmSelectionBox

XmNselectionLabel
String

XmSelectionBox

XmNcolormap

Core

XmNsensitive

Core

XmNdefaultButton

XmBulletinBoard XmNshadowThickness

XmManager

XmNdefaultPosition

XmBulletinBoard XmNshadowType

XmBulletinBoard

XmNdepth

Core

XmNstringDirection

XmManager

XmNdestroyCallback

Core

XmNtextAccelerators

XmSelectionBox

XmNdialogStyle

XmBulletinBoard XmNtextColumns

XmSelectionBox

XmNdialogTitle

XmBulletinBoard XmNtextFontList

XmBulletinBoard

XmNdialogType

XmSelectionBox

XmBulletinBoard

XmNfocusCallback

XmBulletinBoard XmNtextString

XmSelectionBox

XmNforeground

XmManager

XmNtextTranslations

XmBulletinBoard

XmNheight

Core

XmNtopShadowColor

XmManager

XmNhelpCallback

XmManager

XmNtopShadowPixmap

XmManager

XmNhelpLabelString

XmSelectionBox

XmNtranslations

Core

XmNhighlightColor

XmManager

XmNtraversalOn

XmManager

XmNhighlightPixmap

XmManager

XmNunitType

XmManager

XmNinitialFocus

XmManager

XmNunmapCallback

XmBulletinBoard

XmNinitialResources
Persistent

Core

XmNuserData

XmManager

XmNinsertPosition

Composite

XmNwidth

Core

XmNlabelFontList

XmBulletinBoard XmNx

Core

XmNlabelRenderTable

XmBulletinBoard XmNy

Core

XmNlayoutDirection

XmManager

XmNtextRenderTable

InheritedFrom

WidgetHierarchy
Commandcreatesdescendantsnamedasshowninthefollowingtable.Resourcesforachildcomponentcanbemodifiedthroughresourcefilesorvia
XtNameToWidget(),usingtherelevantname,withasubsequentXtSetValues()callusingthewidgetsoreturned.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page690
Name

Class

Role

ItemsList

XmList

thehistorylistwidget

Selection

XmLabelGadget

thecommandpromptwidget

Text

XmTextField

thecommandinputwidget

Translations
ThetranslationsforCommandareinheritedfromXmSelectionBox.
ActionRoutines
Commanddefinesthefollowingactionroutines:
SelectionBoxUpOrDown(flag)
Selectsacommandfromthehistorylist,replacesthecurrentcommandlinetextwiththislistitem,andinvokesthecallbacksspecifiedby
XmNcommandChangedCallback.Thevalueofflagdetermineswhichhistorylistcommandisselected.Withaflagvalueof0,1,2,or3,thisaction
routineselectsthelist'sprevious,next,first,orlastitem,respectively.
AdditionalBehavior
Commandhasthefollowingadditionalbehavior:
MAnyKCancel
Theeventispassedtotheparentifitisamanagerwidget.
KActivate
IntheTextwidget,invokestheXmNactivateCallbackcallbacks,appendsthetexttothehistorylist,andinvokesthe
XmNcommandEnteredCallbackcallbacks.
<Key>
IntheTextwidget,anykeystrokethatchangestextinvokestheXmNcommandChangedCallbackcallbacks.
KActivateor<DoubleClick>
IntheListwidget,invokestheXmNdefaultActionCallbackcallbacks,appendstheselecteditemtothehistorylist,andinvokesthe
XmNcommandEnteredCallbackcallbacks.
<FocusIn>
InvokestheXmNfocusCallbackcallbacks.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page691

<MapWindow>
IfthewidgetisachildofaDialogShell,invokestheXmNmapCallbackcallbackswhenthewidgetismapped.
<UnmapWindow>
IfthewidgetisachildofaDialogShell,invokestheXmNunmapCallbackcallbackswhenthewidgetisunmapped.
SeeAlso
XmCommandAppendValue(1),XmCommandError(1),XmCommandGetChild(1),XmCommandSetValue(1),
XmCreateObject(1),Composite(2),Constraint(2),Core(2),XmBulletinBoard(2),XmManager(2),
XmSelectionBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page692

XmContainer
MotifandXtWidgetClasses
Name
XmContainerwidgetclassawidgetthatcontrolsthelayoutandselectionofasetofitems.
Synopsis
PublicHeader:

<Xm/Container.h>

ClassName:

XmContainer

ClassHierarchy:

Core

ClassPointer:

Composite

Constraint XmManager XmContainer

xmContainerWidgetClass
widget=XtCreateWidget(name,xmContainerWidgetClass,...)

Instantiation:
Functions/Macros:

XmContainerCopy(),XmContainerCopyLink(),XmContainerCut(),
XmContainerGetItemChild(),XmContainerPaste(),
XmContainerPasteLink(),XmContainerRelayout(),
XmContainerReorder(),XmCreateContainer()

Availability
Motif2.0andlater.
Description
AContainerisaconstraintwidgetthatcontrolsthelayoutandselectionofcontaineritems.Containerisintendedtoprovideanobjectorientedviewoftheworld:an
applicationobjectcanberepresentedintheContainerasacontaineritem.Theusercansubsequentlymanipulatetheitembymoving,copying,selecting,ordeletingit,
orperformdraganddropoperationsbetweenapplicationsusingtheitem.NewitemscanbedroppedintotheContainer.Ateachstage,callbacksindicatetothe
applicationtheoperationperformeduponeachitem,andhencetherequestedoperationupontheobjectitrepresents.TheContainerrecognizesasacontaineritem
anychildwidgetthatholdstheXmQTcontainerItemtrait.TheIconGadgetistheonlystandardMotifwidgettoholdthistrait.
TheContainerprovidesthreestylesinwhichitemscanbedisplayed,specifiedthroughtheXmNlayoutTyperesource.Theresourcecanhavethevalue
XmOUTLINE,XmDETAIL,orXmSPATIAL.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page693

TheXmOUTLINElayoutstyleprovidesatreeviewontotheitemsitisappropriatewhenapplicationobjectsexistinaparent/childrelationshiptoeachother.The
logicalrelationshipbetweenitemsisspecifiedbysettingtheXmNentryParentconstraintresourceofanitemtopointtothelogicalparent.Theorderofitems
withinthetreedependsupontheXmNpositionIndexconstraintvalueforeachitem.TheContainerdrawsconnectinglinesbetweenitemstoindicatethe
relationships.TheContainercreatesadditionalPushButtonGadgetsthatareusedforfoldingandunfoldingportionsofthetree.
TheXmDETAILlayoutstylegivesatabularformat,whereeachrowofthetablerepresentsanobject,eachcellwithintherowpossiblyrepresentingapropertyofthe
object.ThedataattachedtoanobjectanddisplayedintherowisspecifiedthroughtheXmNdetailresourcesoftheassociatedcontaineritem.Columnheadings
canbespecifiedthroughtheXmNdetailColumnHeadingresourcesoftheContainer.
TheXmSPATIALlayoutstyleprovidesagenericlayout,wheretheexactpositioningofitemsiscontrolledthroughfurtherresources.Thiscantaketheformofagrid
layout,whereitemscanspansingleormultiplecellsofthegrid,orafreeformatwhereitemscanbepositionedatabsolutexandycoordinatesoftheContainer.Atits
simplest,thegridlayoutcanbeusedtoconstructageneralpurposeiconbox.TheresourcesXmNspatialStyle,XmNspatialIncludeModel,and
XmNspatialSnapModelcontrolthepositioningofitems.
TheContainercontrolsthewayinwhichitemsareselectedandprovidesselectionnotification.Thewidgetsupportssingle,browse,multiple,andextendedselection.
SelectionofitemswithintheContainercanbeperformedbyincludingthemwithinarubberbandrectanglecalledamarquee,whichtheuserspecifiesusingthemouse.
Alternatively,selectioncanbeperformedbysimplyswipingthemouseoveranitem.ThestyleofselectionisspecifiedthroughtheXmNselectionTechnique
resource.
TheusercanonlymovecontaineritemsiftheXmNlayoutTypeisXmSPATIAL.
Traits
ContainerholdstheXmQTtransfer,XmQTtraversalControl,andXmQTcontainertraitsandusestheXmQTscrollFrame,
XmQTcontainerItem,XmQTnavigator,XmQTspecifyRenderTable,andXmQTpointIntraits.
NewResources
Containerdefinesthefollowingresources.TheClassineachcasefollowsthenormalconventions,replacingtheprefixXmNwithXmCforeachresourcename,
capitalizingthefourthletter.Forexample,theClassnameassociatedwithXmNautomatic

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page694

SelectionisXmCAutomaticSelection.However,XmNlargeCellHeightandXmNsmallCellHeightareofClassXmCCellHeight,
andXmNlargeCellWidthandXmNsmallCellWidthareofClassXmCCellWidth,respectively:
Name

Type

Default

Access

XmNautomaticSelection

unsignedchar

XmAUTO_SELECT

CSG

XmNcollapsedStatePixmap

Pixmap

dynamic

CSG

XmNdetailColumnHeading

XmStringTable

NULL

CSG

XmNdetailColumn
HeadingCount

Cardinal

CSG

XmNdetailOrder

Cardinal*

NULL

CSG

XmNdetailOrderCount

Cardinal

CSG

XmNdetailTabList

XmTabList

NULL

CSG

XmNentryViewType

unsignedchar

XmANY_ICON

CSG

XmNexpandedStatePixmap

Pixmap

dynamic

CSG

XmNfontList

XmFontList

dynamic

CSG

XmNlargeCellHeight

Dimension

CSG

XmNlargeCellWidth

Dimension

CSG

XmNlayoutType

unsignedchar

XmSPATIAL

CSG

XmNmarginHeight

Dimension

CSG

XmNmarginWidth

Dimension

CSG

XmNoutlineButtonPolicy

unsignedchar

XmOUTLINE_BUTTON_PRESENT

CSG

XmNoutlineColumnWidth

Dimension

CSG

XmNoutlineIndentation

Dimension

40

CSG

XmNoutlineLineStyle

unsignedchar

XmSINGLE

CSG

XmNprimaryOwnership

unsignedchar

XmOWN_POSSIBLE_MULTIPLE

CSG

XmNrenderTable

XmRenderTable

dynamic

CSG

XmNselectColor

Pixel

XmREVERSED_GROUND_COLORS

CSG

XmNselectedObjectCount

int

SG

XmNselectedObjects

WidgetList

NULL

SG

XmNselectionPolicy

unsignedchar

XmEXTENDED_SELECT

CSG

XmNselectionTechnique

unsignedchar

XmTOUCH_OVER

CSG

XmNsmallCellHeight

Dimension

CSG

XmNsmallCellWidth

Dimension

CSG

XmNspatialIncludeModel

unsignedchar

XmAPPEND

CSG

XmNspatialResizeModel

unsignedchar

XmGROW_MINOR

CSG

XmNspatialSnapModel

unsignedchar

XmNONE

CSG

XmNspatialStyle

unsignedchar

XmGRID

CSG

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page695

XmNautomaticSelection
Specifieswhetherselectioncallbacksareinvokedimmediatelyandeachtimethatanitemisselectedorwhentheuserhascompletedtheselectionaction.Possible
valuesare:
XmAUTO_SELECT/*callbackscalledimmediatelyonselection*/
XmNO_AUTO_SELECT/*callbacksdelayeduntiluseractioncompleted*/

XmNcollapsedStatePixmap
SpecifiesthepixmaptodisplayonthePushButtonGadgettoindicatethatlogicalchilditemsarefolded(hidden)withinanXmOUTLINElayout.Theresourcehasno
effectunlessresourceXmNoutlineButtonPolicyisXmOUTLINE_BUTTON_PRESENT.Otherwise,iftheresourceisunspecified,adefaultpixmapwith
anupwardspointingarrowisdisplayed.
XmNdetailColumnHeading
SpecifiesanXmStringarraytouseascolumnheadingsinanXmDETAILlayout.NocolumnheadingsaredisplayedifthevalueisNULL.
XmNdetailColumnHeadingCount
SpecifiesthelengthofthearrayassociatedwiththeXmNdetailColumnHeadingresource.
XmNdetailOrder
SpecifiesanarrayofCardinalvaluesthatrepresentswhichcolumn,andinwhichorder,thedetaildataassociatedwithcontaineritemsistobedisplayed.Theresource
hasnoeffectunlessXmNlayoutTypeisXmDETAIL.IfNULL,theXmNdetailOrderCountresourceisusedtodeterminethecolumndetaildata
associatedwitheachitem.
XmNdetailOrderCount
SpecifiesthelengthofthearrayassociatedwiththeXmNdetailOrderresource.IfXmNdetailOrderisNULLandXmNdetailOrderCountisnot
zero,eachcontaineritemdisplaysanydetailinformationinorderstartingfromcolumn1,uptothevalueofXmNdetailOrderCount.Otherwise,withavalueof
zero,adefaultalgorithminspectstheXmQTcontainerItemtraitofeachitemtodeterminethecolumnardata.
XmNdetailTabList
SpecifiesanXmTabListthatindicatesthestartofeachcolumninanXmDETAILlayout.IfNULL,theContainercalculatesadefaultXmTabList.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page696

XmNentryViewType
SpecifiestheviewtypeforallContainerchildren.IfthevalueisXmANY_ICON,thentheXmQTcontainerItemtraitofeachchildspecifiestheindividualview
type.Possiblevaluesare:
XmANY_ICON/*childrenusetheirownviewtype*/
XmLARGE_ICON/*allchildrenforcedtoXmLARGE_ICON*/
XmSMALL_ICON/*allchildrenforcedtoXmSMALL_ICON*/

XmNexpandedStatePixmap
SpecifiesthepixmaptodisplayonthePushButtonGadgettoindicatethatlogicalchilditemsareunfolded(displayed).Theresourcehasnoeffectunless
XmNoutlineButtonPolicyisXmOUTLINE_BUTTON_PRESENT.Otherwise,iftheresourceisunspecified,adefaultpixmapwithadownwardspointing
arrowisdisplayed.
XmNfontList
XmFontListisconsideredobsoleteinMotif2.0andlaterithasbeensubsumedintotheXmRenderTable.AnyspecifiedXmNrenderTableresource
takesprecedence.
XmNlargeCellHeight
SpecifiestheheightofacellwhentheContainerisusingagridlayout.TheresourceisnotusedwhenXmNentryViewTypeisXmSMALL_ICON.
XmNlargeCellWidth
SpecifiesthewidthofacellwhentheContainerisusingagridlayout.TheresourceisnotusedwhenXmNentryViewTypeisXmSMALL_ICON.
XmNlayoutType
SpecifiesthewayinwhichtheContainerlaysoutchildren.Possiblevaluesare:
XmOUTLINE/*itemsaredisplayedinatreearrangement*/
XmSPATIAL/*itemsdisplayedaccordingtoXmNspatialStyleresource*/
XmDETAIL/*itemsdisplayedintabularrow/columnformat*/

XmNmarginHeight
SpecifiesthespacingatthetopandbottomoftheContainerwidget.
XmNmarginWidth
SpecifiesthespacingattheleftandrightoftheContainerwidget.
XmNoutlineButtonPolicy
SpecifieswhetheraPushButtonGadget,usedforfolding/unfoldingitems,isdisplayedwitheachcontaineritemthathaslogicalchildren,specifiedbythe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page697

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNentryParentresource.TheresourcehasnoeffectifXmNspatialStyleisnotXmOUTLINE.Possiblevaluesare:
XmOUTLINE_BUTTON_ABSENT/*displayfold/unfoldbuttons*/
XmOUTLINE_BUTTON_PRESENT/*noPushButtonGadgetbuttons*/

XmNoutlineColumnWidth
SpecifiesthewidthofthefirstcolumnwithinanXmDETAILlayout,andthepreferredwidthoftheContainerwithinanXmOUTLINElayout.Ifzero,theContainer
deducesadefaultvaluebaseduponthewidthofthewidestitempixmapandtheXmNoutlineIndentationresource.
XmNoutlineIndentation
Specifiesanindentationforcontaineritems.TheresourcehasnoeffectwhenXmNlayoutStyleisXmSPATIAL.
XmNoutlineLineStyle
SpecifieswhethertodrawconnectinglinesbetweencontaineritemsinanXmOUTLINEorXmDETAILlayout.Possiblevaluesare:
XmNO_LINE/*nolineisdrawnbetweenitems*/
XmSINGLE/*alineonepixelwideconnectsitems*/

XmNprimaryOwnership
SpecifieswhethertheContainertakespossessionoftheprimaryselectionwhentheusermakesaselectionfromtheitemswithinthewidget.Possiblevaluesare:
XmOWN_NEVER/*neverowntheprimaryselection*/
XmOWN_ALWAYS/*alwaysowntheprimaryselection*/
XmOWN_MULTIPLE/*ownifmorethanoneitemisselected*/
XmOWN_POSSIBLE_MULTIPLE/*ownifmultipleselectionpossible*/

XmNrenderTable
SpecifiestherendertablethatisusedforallchildrenoftheContainer.IfNULL,thenearestancestorholdingtheXmQTspecifyRenderTabletraitissearched,
usingtheXmLABEL_FONTLISTvalue.
XmNselectColor
Specifiesacolorthatcontaineritemchildrencanusetoindicateselectedstate.InadditiontoallocatedPixelvalues,theconstantXmDEFAULT_SELECT_COLOR
specifiesacolorbetweentheXmNbackgroundandXmNbottomShadowColor,XmHIGHLIGHT_COLORmakestheselectcolorthesameasthe
XmNhighlightColorvalue,andXmREVERSED_GROUND_COLORSmakesthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page698

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNselectColorthesameastheXmNforeground,usingtheXmNbackgroundcolortorenderanytext.
XmNselectedObjectCount
Specifiesthenumberofwidgetsinthearrayofselectedcontaineritems,representedbytheXmNselectedObjectsresource.
XmNselectedObjects
Specifiesanarrayofwidgetsthatrepresentsthesetofcontaineritemscurrentlyselected.
XmNselectionPolicy
Specifiesthewayinwhichcontaineritemscanbeselected.Possiblevaluesare:
XmSINGLE_SELECT/*onlyoneselecteditempermitted*/
XmBROWSE_SELECT/*asabove,exceptitemsareselectedbydragging*/
XmMULTIPLE_SELECT/*itemsincontiguousrangeareselectable*/
XmEXTENDED_SELECT/*itemsindiscontiguousrangeareselectable*/

XmNselectionTechnique
Specifiesthewayinwhichitemsareselected.Possiblevaluesare:
XmMARQUEE/*itemsmustbewhollyenclosedwithinmarquee*/
XmMARQUEE_EXTEND_START/*includesitemcontainingmarqueestart*/
/*coordinate*/
XmMARQUEE_EXTEND_BOTH/*includesitemscontainingmarqueestart/end*/
/*coordinates*/
XmTOUCH_ONLY/*selectitemsbetweenstartandendlocation*/
XmTOUCH_OVER/*selectonlyitemsthemousepassesthrough*/

XmNsmallCellHeight
SpecifiestheheightofacellwhentheContainerspatialstyleisXmGRIDandtheXmNentryViewTyperesourceisXmSMALL_ICON.
XmNsmallCellWidth
SpecifiesthewidthofacellwhentheContainerspatialstyleisXmGRIDandtheXmNentryViewTyperesourceisXmSMALL_ICON.
XmNspatialIncludeModel
SpecifiesthelayoutofanitemwithinagridXmSPATIALlayouttype,whentheitemismanaged.Possiblevaluesare:
XmAPPEND/*placeafterthelastoccupiedcell*/
/*accordingtoXmNlayoutDirection*/
XmCLOSEST/*placeinthefreecell*/
/*nearestthex,ycoordinatesoftheitem*/
XmFIRST_FIT/*placetheiteminthefirstfreecell*/
/*accordingtoXmNlayoutDirection*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page699

XmNspatialResizeModel
SpecifieshowtheContainerattemptstoresizeitselfwhenthereisinsufficientspacetocontainanewitem.TheresourceonlyhasaneffectwithinagridXmSPATIAL
layouttype.ThedefinitionofXmGROW_MAJORandXmGROW_MINORdependuponthevalueoftheXmNlayoutDirectionresource.Themajordimension
iswidthwhentheXmNlayoutDirectionishorizontallyorientedandheightwhenthedirectionisverticallyoriented.Similarly,theminordimensionisheight
whentheXmNlayoutDirectionishorizontallyorientedandwidthwhenthedirectionisverticallyoriented.Possiblevaluesare:
XmGROW_BALANCED/*requestbothwidthandheightfromparent*/
XmGROW_MAJOR/*requestgrowthinthemajordimension*/
XmGROW_MINOR/*requestgrowthintheminordimension*/

XmNspatialSnapModel
SpecifieshowtheContainerpositionsanitemwithinacell,whentheXmNlayoutTypeisXmSPATIAL.AvalueofXmSNAP_TO_GRIDpositionstheitemat
theupperleftorupperrightofthecell,dependinguponthevalueofXmNlayoutDirection.AvalueofXmNONEpositionstheitemdependinguponthevalue
ofXmNxandXmNy.Ifthesefalloutsidethecell,layoutisperformedaccordingtotheXmSNAP_TO_GRIDmethod.AvalueofXmCENTERcenterstheitem.
XmNspatialStyle
Specifiesthelayoutofcontaineritems,whentheXmNlayoutTypeisXmSPATIAL.Possiblevaluesare:
XmCELLS/*gridlayoutofsamesizedcellsitemcanoccupymanycells*/
XmGRID/*gridlayoutofsamesizedcellsitemcanoccupyonecell*/
XmNONE/*layoutaccordingtoXmNxandXmNyresources*/

NewConstraintResources
Containerdefinesthefollowingconstraintresourcesforitschildren:
Name

Class

Type

Default

Access

XmNentryParent

XmCEntryParent

Widget

NULL

CSG

XmNoutlineState

XmCOutlineState

unsignedchar XmCOLLAPSED

CSG

XmNpositionIndex

XmCPositionIndex

int

CSG

XmLAST_POSITION

XmNentryParent
Specifiesalogicalparentfortheitem.TherootofahierarchyhasthevalueNULL.UsedwhentheXmNlayoutTypeisXmOUTLINEorXmDETAIL.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page700

XmNoutlineState
SpecifieswhethertodisplaylogicalchilditemswhentheXmNlayoutTypeisXmOUTLINEorXmDETAIL.Possiblevaluesare:
XmCOLLAPSED/*doesnotdisplaychilditems*/
XmEXPANDED/*displayschilditems*/

XmNpositionIndex
SpecifiestheorderoftheitemwithintheContainer,whenXmNlayoutTypeisXmOUTLINEorXmDETAIL.ItemsarefirstorderedbyXmNentryParent,
thenbyXmNpositionIndexwithinthoseitemssharingthesameXmNentryParent.Ifunspecified,thehighestsuchindexforallotheritemssharingthe
samelogicalparentiscalculatedandthenincremented.Ifnootheritemsharesthesamelogicalparent,thedefaultiszero.
CallbackResources
Containerdefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNconvertCallback

XmCR_OK

XmNdefaultActionCallback

XmCR_DEFAULT_ACTION

XmNdestinationCallback

XmCR_OK

XmNoutlineChangedCallback

XmCR_COLLAPSED
XmCR_EXPANDED

XmNselectionCallback

XmCR_SINGLE_SELECT
XmCR_BROWSE_SELECT
XmCR_MULTIPLE_SELECT
XmCR_EXTENDED_SELECT

XmNconvertCallback
Listofcallbackscalledwhenarequestismadetoconvertaselection.
XmNdefaultActionCallback
ListofcallbackscalledwhenanitemisdoubleclickedorKActivateispressed.
XmNdestinationCallback
ListofcallbackscalledwhentheContaineristhedestinationofatransfer.
XmNoutlineChangedCallback
ListofcallbackscalledwhenachangeismadetotheXmNoutlineStatevalueofanitem.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page701

XmNselectionCallback
Listofcallbackscalledwhenanitemisselected.
CallbackStructure
EachcallbackontheXmNoutlineChangedCallbacklistispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Widgetitem/*containeritemassociatedwithevent*/
unsignedcharnew_outline_state/*therequestedstate*/
}XmContainerOutlineCallbackStruct

new_outline_statespecifiesanXmNoutlineStateforitem.Thevaluemaybechangedwithinthecallbacktoforceaparticularstate.
EachcallbackontheXmNselectionCallbackandXmNdefaultActionCallbacklistispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*pointstoeventthattriggeredcallback*/
WidgetListselected_items/*thelistofselecteditems*/
intselected_item_count/*thenumberofselecteditems*/
unsignedcharauto_selection_type/*typeofselectionevent*/
}XmContainerSelectCallbackStruct

selected_itemsisthearrayofcontaineritemsselectedbytheevent.Thenumberofsuchitemsisspecifiedbyselected_item_count.
auto_selection_typeindicatesthetypeofautomaticselectionevent.IfXmNautomaticSelectionisFalse,auto_selection_type
hasthevalueXmAUTO_UNSET.Otherwise,therangeofpossiblevaluesisgivenby:
XmAUTO_BEGIN/*eventisthebeginningofautomaticselection*/
XmAUTO_CANCEL/*currentselectioniscancelled*/
XmAUTO_CHANGE/*currentselectiondiffersfrominitialselection*/
XmAUTO_MOTION/*currentselectioniscausedbybuttondrag*/
XmAUTO_NO_CHANGE/*currentselectionsameastheinitialselection*/

ConvertcallbacksarefullydescribedwithinthesectionscoveringtheUniformTransferModel.SeeXmTransfer(1)formoredetails.Forquickreference,apointerto
thefollowingstructureispassedtocallbacksontheXmNconvertCallbacklist:
typedefstruct
{

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page702
intreason/*reasonthatthecallbackisinvoked*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Atomselection/*requestedconversionselection*/
Atomtarget/*theconversiontarget*/
XtPointersource_data/*selectionsourceinformation*/
XtPointerlocation_data/*informationaboutdatatobetransferred*/
intflags/*inputstatusoftheconversion*/
XtPointerparm/*parameterdataforthetarget*/
intparm_format/*formatofparameterdata*/
unsignedlongparm_length/*thenumberofelementsinparameterdata*/
Atomparm_type/*thetypeoftheparameterdata*/
intstatus/*outputstatusoftheconversion*/
XtPointervalue/*returnedconversiondata*/
Atomtype/*typeofconversiondatareturned*/
intformat/*formatoftheconversiondata*/
unsignedlonglength/*numberofelementsinconversiondata*/
}XmConvertCallbackStruct

DestinationcallbacksarefullydescribedwithinthesectionscoveringtheUniformTransferModel.Forquickreference,apointertothefollowingstructureispassedto
callbacksontheXmNdestinationCallbacklist:
typedefstruct
{
intreason/*reasonthatthecallbackisinvoked*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Atomselection/*requestedselectiontype,asanAtom*/
XtEnumoperation/*thetypeoftransferrequested*/
intflags/*whetherdestinationandsourcearesame*/
XtPointertransfer_id/*uniqueidentifierfortherequest*/
XtPointerdestination_data/*informationaboutthedestination*/
XtPointerlocation_data/*informationaboutthedata*/
Timetime/*timewhentransferoperationstarted*/
}XmDestinationCallbackStruct

InheritedResources
Containerinheritstheresourcesshownbelow.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinitialResources
Persistent

Core

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNnavigationType

XmManager

XmNborderColor

Core

XmNnumChildren

Composite

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page703

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNborderPixmap

Core

XmNpopupHandlerCallback

XmManager

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmManager

XmNsensitive

Core

XmNbottomShadowPixmap

XmManager

XmNshadowThickness

XmManager

XmNchildren

Composite

XmNstringDirection

XmManager

XmNcolormap

Core

XmNtopShadowColor

XmManager

XmNdepth

Core

XmNtopShadowPixmap

XmManager

XmNdestroyCallback

Core

XmNtranslations

Core

XmNforeground

XmManager

XmNtraversalOn

XmManager

XmNheight

Core

XmNunitType

XmManager

XmNhelpCallback

XmManager

XmNuserData

XmManager

XmNhighlightColor

XmManager

XmNwidth

Core

XmNhighlightPixmap

XmManager

XmNx

Core

XmNinitialFocus

XmManager

XmNy

Core

XmNinsertPosition

Composite

WidgetHierarchy
ThePushButtonGadgetchildrencreatedbyanoutlinestyleContainerareallnamedOutlineButton.
Translations
ThetranslationsforContainerincludethoseofXmManager.
Event

Action

BSelectPress

ContainerHandleBtn1Down(ContainerBeginSelect,Copy)

BTogglePress

ContainerHandleBtn1Down(ContainerBeginToggle,Copy)

MLinkBSelectPress

ContainerHandleBtn1Down(ContainerNoop,Link)

BExtendPress

ContainerHandleBtn1Down(ContainerBeginExtend,Move)

BExtendMotion

ContainerHandleBtn1Motion(ContainerButtonMotion)

BSelectRelease

ContainerHandleBtn1Up(ContainerEndSelect)

BToggleRelease

ContainerHandleBtn1Up(ContainerEndToggle)

BExtendRelease

ContainerHandleBtn1Up(ContainerEndExtend)

BTransferPress

ContainerHandleBtn2Down(ContainerStartTransfer,Copy)

MLinkBTransferPress

ContainerHandleBtn2Down(ContainerStartTransfer,Link)

MMoveBTransferPress

ContainerHandleBtn2Down(ContainerStartTransfer,Move)

BTransferMotion

ContainerHandleBtn2Motion(ContainerButtonMotion)

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page704

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Event

Action

BTransferRelease

ContainerHandleBtn2Up(ContainerEndTransfer)

MShiftKPrimaryCopy

ContainerPrimaryLink()

KPrimaryCopy

ContainerPrimaryCopy()

KPrimaryCut

ContainerPrimaryMove()

KCancel

ContainerCancel()

KExtend

ContainerExtend()

KSelect

ContainerSelect()

KSelectAll

ContainerSelectAll()

KDeselectAll

ContainerDeselectAll()

KAddMode

ContainerToggleMode()

KActivate

ContainerActivate()

MShiftKBeginData

ContainerExtendCursor(First)

MShiftKEndData

ContainerExtendCursor(Last)

KBeginData

ContainerMoveCursor(First)

KEndData

ContainerMoveCursor(Last)

MCtrlKLeft

ContainerExpandOrCollapse(Left)

MCtrlKRight

ContainerExpandOrCollapse(Right)

MShiftKUp

ContainerExtendCursor(Up)

MShiftKDown

ContainerExtendCursor(Down)

MShiftKLeft

ContainerExtendCursor(Left)

MShiftKRight

ContainerExtendCursor(Right)

KUp

ContainerMoveCursor(Up)

KDown

ContainerMoveCursor(Down)

KLeft

ContainerMoveCursor(Left)

KRight

ContainerMoveCursor(Right)

ActionRoutines
Containerdefinesthefollowingactionroutines:
ContainerActivate()
CallstheproceduresassociatedwiththeXmNdefaultActionCallbackresource.
ContainerBeginExtend()
TheactionhasnoeffectiftheXmNlayoutTypeisXmSPATIALoriftheXmNselectionPolicyiseitherXmSINGLE_SELECTor
XmBROWSE_SELECT.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page705

Otherwise,thelocationcursorissettotheobjectunderthepointer,andifnoobjectisthere,orifthereisnoanchor,theactionreturns.Anyitemsbetweenthe
anchorandthelocationcursorareselected.Finally,ifautomaticselectionisenabled,thelistofcallbacksspecifiedbytheXmNselectionCallback
resourceisinvoked.
ContainerBeginSelect()
Singleselection:iftheobjectunderthepointeristheanchoritem,theselectedstateoftheobjectisreversed.Otherwise,allitemsaredeselected,theobjectatthe
pointerismadetheanchoritem,andthelocationcursorissettoit.
Browseselection:iftheobjectunderthepointerisnottheanchoritem,allitemsaredeselected,theobjectismadetheanchoritemandselected,andthelocation
cursorissettoit.Ifautomaticselectionisenabled,thelistofcallbacksspecifiedbytheXmNselectionCallbackresourceisinvoked.
Multipleselection:setstheanchoritemtotheobjectunderthepointerandsetsthelocationcursortoit.Theselectedstateoftheitemisreversed.Iftheselection
techniqueisXmTOUCH_OVERandtheanchoritemisNULL,themarqueestartpointisinitialized.Ifautomaticselectionisenabled,thelistofcallbacksspecified
bytheXmNselectionCallbackresourceisinvoked.
Extendedselection:asformultipleselection,exceptinitiallyallitemsaredeselected.
ContainerBeginToggle()
TheactionhasnoeffectifXmNlayoutTypeisXmSPATIALorXmNselectionPolicyiseitherXmSINGLE_SELECTorXmBROWSE_SELECT.
MultipleorExtendedselection:theanchoritemissettotheobjectunderthepointer,andthelocationcursorissettoit.Theselectedstateoftheitemis
reversed.Ifautomaticselectionisenabled,thelistofcallbacksspecifiedbytheXmNselectionCallbackresourceisinvoked.Lastly,if
XmNselectionTechniqueisXmMARQUEE_EXTEND_STARTorXmMARQUEE_EXTEND_BOTH,themarqueerectangleisdrawnaroundtheitem.
ContainerButtonMotion()
TheactionhasnoeffectifXmNselectionPolicyisXmSINGLE_SELECT.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page706

Browseselection:iftheactionfollowsContainerBeginExtend()orContainerBeginToggle(),orifthepointerisoverthecurrentanchor
item,theroutinesimplyreturns.Otherwise,theselectedstateoftheanchoritemisreversed,theselectedstateofanyitemunderthepointerisalsoreversed,and
theanchoritemisresettopointtoit.
Multipleandextendedselection:ifapreviousactionhasinitiatedthemarquee,therectangleisredrawnaroundthestartpointandthecurrentpointerlocation.
Theselectedstateofallitemswithinthemarqueearesettothatoftheanchoritem.Fornonmarqueeselection,inaspatiallayouttheselectedstateoftheitem
underthepointerisreversed,andtheanchoritemisresettoit.Inanonspatiallayout,theselectedstateofallitemsbetweentheanchoritemandtheitemunder
thepointeraresettomatchtheselectedstateoftheanchoritem.
Inallcases,ifautomaticselectionisenabled,thelistofcallbacksspecifiedbytheXmNselectionCallbackresourceisinvoked.
ContainerCancel()
Theselectedstateofallitemsrevertstothepreselectionstate.Ifautomaticselectionisenabled,thelistofcallbacksspecifiedbytheXmNselectionCallback
resourceisinvoked.
ContainerDeselectAll()
Allitemsaredeselected,andthecallbacksontheXmNselectionCallbacklistareinvoked.
ContainerEndExtend()
TheactionhasnoeffectifXmNlayoutTypeisXmSPATIAL.
MultipleorExtendedselection:thecallbacksspecifiedbyXmNselectionCallbackareinvoked.
ContainerEndSelect()
Singleselection:simplyinvokesthecallbacksspecifiedbytheXmNselectionCallbackresource.
Browseselection:ifthepointerisnotoverthecurrentanchoritem,theselectedstateofthecurrentanchor,andtheselectedstateofanyitemunderthepointerare
reversed.CallbacksspecifiedbyXmNselectionCallbackareinvoked.
Multipleandextendedselection:similartotheContainerButtonMotion()action,exceptthattheauto_selection_typeelementwithin
XmN

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page707

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

selectionCallbackproceduresisXmAUTO_CHANGEorXmAUTO_NO_CHANGEratherthanXmAUTO_MOTION.
ContainerEndToggle()
TheactionhasnoeffectifXmNselectionPolicyisXmSINGLE_SELECTorXmBROWSE_SELECT.
Multipleorextendedselection:theproceduredirectlyinvokestheContainerEndSelect()action.
ContainerEndTransfer()
IfthecurrenttransferoperationisXmLINK,theContainerPrimaryLink()actioniscalled.IfthetransferoperationisXmMOVE,theprocedureinvokes
ContainerPrimaryMove().IftheoperationisXmCOPY,theContainerPrimaryCopy()actioniscalled.
ContainerExpandOrCollapse(type)
TheactionhasnoeffectiflayouttypeisXmSPATIAL().
Otherwise,theoutlinestateofthecontaineritemwhichhasthefocusischanged.Possiblevaluesfortype:
Collapse/*outlinestatesettoXmCOLLAPSED*/
Expand/*outlinestatesettoXmEXPANDED*/
Left/*dependsuponlayoutdirection*/
Right/*dependsuponlayoutdirection*/

IfXmNlayoutDirectionisXmLEFT_TO_RIGHT,LeftisinterpretedasXmCOLLAPSED,andRightasXmEXPANDED.Thisisreversedifthe
layoutdirectionisXmRIGHT_TO_LEFT.
ContainerExtend()
TheactionhasnoeffectiflayouttypeisXmSPATIAL(),orifXmNselectionPolicyisXmSINGLE_SELECTorXmBROWSE_SELECT.
Multipleselection:theselectedstateofallitemsbetweentheanchoritemandthelocationcursorissettothatoftheanchoritem.Thecallbacksspecifiedby
XmNselectionCallbackareinvoked.
Extendedselection:innormalmode,allitemsaredeselected,thenanyitemsbetweentheanchoritemandthelocationcursorareselected.Inaddmode,the
selectedstateofallitemsbetweentheanchoritemandthelocationcursorissettothatoftheanchoritem.Thecallbacksspecifiedby
XmNselectionCallbackareinvoked.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page708

ContainerExtendCursor(type)
TheactionhasnoeffectiflayouttypeisXmSPATIAL()orXmNselectionPolicyisXmSINGLE_SELECTorXmBROWSE_SELECT.
Thelocationcursorismoved.IftypeisLeft,Right,Up,Down,First,orLast,thecursorismovedoneiteminthespecifieddirectionif
possible(ortothefirst/lastitem).Thereafter,theContainerExtend()procedureisdirectlyinvoked.
ContainerHandleBtn1Down(string)
TheXmDisplayresourceXmNenableBtn1TransferconfigurestheintegrationofselectionandtransferoperationsonButton1.
IfXmNenableBtn1TransferisnotXmOFFandthepointerisoveranunselecteditem,theactionsContainerBeginSelect()and
ContainerEndSelect()areinvokedinordertoselecttheitem.If,thereafter,thereisnoselecteditem,themarqueestartpointisinitialized.Otherwise,
theactionbecomesadatatransferoperationandtheContainerStartTransfer()actionisinvoked.
IfXmNenableBtn1TransferisXmOFF,andifnodatatransferhasbeeninitialized,theactionspecifiedbystringisinvokedtoinitiateselection.
Possiblevaluesforstring:
ContainerBeginSelect,Copy
ContainerBeginToggle,Copy
ContainerNoop,Link
ContainerBeginExtend,Move

ContainerHandleBtn1Motion(string)
IftheXmDisplayXmNenableBtn1TransferresourceisnotXmOFF,andaselectionisinprogress,adragactionisinitiated.Otherwise,theactionas
specifiedbystringisinvoked,typicallyContainerButtonMotion.
ContainerHandleBtn1Up(string)
IfaButton1transferisinprogress,thetransferiscancelled.Otherwise,theactionasspecifiedbystringisinvoked.Possiblevaluesforstring:
ContainerEndSelect
ContainerEndToggle
ContainerEndExtend

ContainerHandleBtn2Down(string)
IftheXmDisplayXmNenableBtn1TransferresourceisXmBUTTON2_ADJUST,theactionContainerBeginExtendisdirectly

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page709

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

invoked.Otherwise,theactionasspecifiedbystringisinvoked.Possiblevaluesforstring:
ContainerStartTransfer,Copy
ContainerStartTransfer,Link
ContainerStartTransfer,Move

ContainerHandleBtn2Motion(string)
IftheXmDisplayXmNenableBtn1TransferresourceisnotXmBUTTON2_ADJUST,andaselectionisinprogress,adragactionisinitiated.Otherwise,the
actionasspecifiedbystringisinvoked,typicallyContainerButtonMotion.
ContainerHandleBtn2Up(string)
IftheXmDisplayXmNenableBtn1TransferresourceisXmBUTTON2_ADJUST,theactiondirectlyinvokestheContainerEndExtend()action.
Otherwise,theactionasspecifiedbystringisinvoked,typicallyContainerEndTransfer.
ContainerMoveCursor(string)
Movesthelocationcursortothecontaineriteminagivendirection,ifpossible.ValidvaluesoftypeareUp,Down,Left,Right,First,andLast.
Ifthenumberofselecteditemsisgreaterthan1,allitemsaredeselected.Theitematthelocationcursorisselected,andcallbacksassociatedwiththe
XmNselectionCallbackresourceareinvoked.
ContainerPrimaryCopy()
RequestsaprimaryselectioncopytotheContainer.AnyXmNdestinationCallbackproceduresareinvoked.Bydefault,theContainerperformsnodata
transfer:theprogrammermustprovideacallbackforthetask.
ContainerPrimaryLink()
RequestsaprimaryselectionlinktotheContainer.AnyXmNdestinationCallbackproceduresareinvoked.Bydefault,theContainerperformsnodata
transfer:theprogrammermustprovideacallbackforthetask.
ContainerPrimaryMove()
RequestsaprimaryselectioncopytotheContainer.AnyXmNdestinationCallbackproceduresareinvoked.Bydefault,theContainerperformsnodata
transfer:theprogrammermustprovideacallbackforthetask.Subsequently,theselectionowner's

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page710

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNconvertCallbackproceduresarenotifiedfortheprimaryselection,withthetargetDELETE.
ContainerSelect()
Singleorbrowseselection:deselectsanyselecteditemandselectstheitematthelocationcursor.
Multipleselection:reversestheselectedstateoftheitematthelocationcursorandmakesthistheanchorforanyfurtheroperations.
Extendedselection:innormalmode,deselectsallitemsandselectstheitematthelocationcursor.Inaddmode,reversestheselectedstateoftheitem,which
becomestheanchorforfurtheroperations.
Ineachcase,callbacksassociatedwiththeXmNselectionCallbackresourceareinvoked.
ContainerSelectAll()
Singleorbrowseselection:deselectsanyselecteditemandselectstheitematthelocationcursor.
Multipleorextendedselection:selectsallcontaineritems.
Inallcases,callbacksassociatedwiththeXmNselectionCallbackresourceareinvoked.
ContainerStartTransfer(type)
Theactionsavesthevalueoftheparametertypeforreferencebylatertransferoperations.InXmSPATIALlayout,aDragContextiscreated,andatransfer
operationisinitiated.Bydefault,unlessoverriddenbyacustomizedXmNconvertCallbackprocedure,ifthedropoccurswithintheContainer,anydragged
unselecteditemismovedtothepointerlocation,oriftheitemisselected,thenallselecteditemsarerelocatedtothepointer.Possiblevaluesfortypeare:Copy,
Link,andMove.
ContainerToggleMode()
Extendedselection:togglesbetweennormalandaddmode.
AdditionalBehavior
Containerhasthefollowingadditionalbehavior:
<DoubleClick>
CallstheXmNdefaultActionCallbackcallbacks.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page711

<FocusIn>
Ifthekeyboardfocuspolicyisexplicit,setsthefocusanddrawsthelocationcursor.
<FocusOut>
Ifthekeyboardfocuspolicyisexplicit,removesthefocusanderasesthelocationcursor.
SeeAlso
XmContainerCopy(1),XmContainerCopyLink(1),XmContainerCut(1),XmContainerGetItemChildren(1),
XmContainerPaste(1),XmContainerPasteLink(1),XmContainerRelayout(1),XmContainerReorder(1),
XmCreateObject(1),Composite(2),Constraint(2),Core(2),XmIconGadget(2),XmManager(2),XmTransfer
(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page712

XmDialogShell
MotifandXtWidgetClasses
Name
XmDialogShellwidgetclasstheShellparentfordialogboxes.
Synopsis
PublicHeader:

<Xm/DialogS.h>

ClassName:

XmDialogShell

ClassHierarchy:

Core Composite Shell WMShell VendorShell


TransientShell XmDialogShell

ClassPointer:

xmDialogShellWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmDialogShellWidgetClass,...)

Functions/Macros: XmCreateDialogShell(),XmIsDialogShell()

Description
DialogShellistheparentfordialogboxes.ADialogShellcannotbeiconifiedseparately,butonlywhenthemainapplicationshellisiconified.ThechildofaDialogShell
istypicallyasubclassofBulletinBoardandmuchofthefunctionalityofDialogShellisbasedonthisassumption.
Traits
DialogShellusestheXmQTdialogShellSavvytrait.
NewResources
DialogShelldoesnotdefineanynewresources.
InheritedResources
DialogShellinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.DialogShellsetsthedefaultvaluesof
XmNdeleteResponsetoXmUNMAPandXmNinputandXmNtransienttoTrue.ThedefaultvalueofXmNborderWidthisresetto0by
VendorShell.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page713
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNmaxAspectX

WMShell

XmNallowShellResize

Shell

XmNmaxAspectY

WMShell

XmNancestorSensitive

Core

XmNmaxHeight

WMShell

XmNaudibleWarning

VendorShell

XmNmaxWidth

WMShell

XmNbackground

Core

XmNminAspectX

WMShell

XmNbackgroundPixmap

Core

XmNminAspectY

WMShell

XmNbaseHeight

WMShell

XmNminHeight

WMShell

XmNbaseWidth

WMShell

XmNminWidth

WMShell

XmNborderColor

Core

XmNmwmDecorations

VendorShell

XmNborderPixmap

Core

XmNmwmFunctions

VendorShell

XmNborderWidth

Core

XmNmwmInputMode

VendorShell

XmNbuttonFontList

VendorShell

XmNmwmMenu

VendorShell

XmNbuttonRenderTable

VendorShell

XmNnumChildren

Composite

XmNchildren

Composite

XmNoverrideRedirect

Shell

XmNcolormap

Core

XmNpopdownCallback

Shell

XmNcreatePopupChildProc

Shell

XmNpopupCallback

Shell

XmNdefaultFontList

VendorShell

XmNpreeditType

VendorShell

XmNdeleteResponse

VendorShell

XmNsaveUnder

Shell

XmNdepth

Core

XmNscreen

Core

XmNdestroyCallback

Core

XmNsensitive

Core

XmNgeometry

Shell

XmNshellUnitType

VendorShell

XmNheight

Core

XmNtextFontList

VendorShell

XmNheightInc

WMShell

XmNtextRenderTable

VendorShell

XmNiconMask

WMShell

XmNtitle

WMShell

XmNiconPixmap

WMShell

XmNtitleEncoding

WMShell

XmNiconWindow

WMShell

XmNtransient

WMShell

XmNiconX

WMShell

XmNtransientFor

TransientShell

XmNiconY

WMShell

XmNtranslations

Core

XmNinitialResources
Persistent

Core

XmNunitType

VendorShell

XmNinitialState

WMShell

XmNuseAsyncGeometry

VendorShell

XmNinput

WMShell

XmNvisual

Shell

XmNinputMethod

VendorShell

XmNwaitForWm

WMShell

XmNinputPolicy

VendorShell

XmNwidth

Core

XmNinsertPosition

Composite

XmNwidthInc

WMShell

XmNkeyboardFocusPolicy

VendorShell

XmNwindowGroup

WMShell

XmNlabelFontList

VendorShell

XmNwinGravity

WMShell

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page714

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNlabelRenderTable

VendorShell

XmNwmTimeout

WMShell

XmNlayoutDirection

VendorShell

XmNx

Core

XmNmappedWhenManaged

Core

XmNy

Core

SeeAlso
XmCreateObject(1),Composite(2),Core(2),Shell(2),TransientShell(2),VendorShell(2),WMShell(2),
XmBulletinBoardDialog(2),XmErrorDialog(2),XmFileSelectionDialog(2),XmFormDialog(2),
XmInformationDialog(2),XmMessageDialog(2),XmPromptDialog(2),XmQuestionDialog(2),
XmSelectionDialog(2),XmTemplateDialog(2),XmWarningDialog(2),XmWorkingDialog(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page715

XmDisplay
MotifandXtWidgetClasses
Name
XmDisplaywidgetclassanobjecttostoredisplayspecificinformation.
Synopsis
PublicHeader:

<Xm/Display.h>

ClassName:

XmDisplay

ClassHierarchy:

Core Composite Shell WMShell VendorShell


TopLevelShell ApplicationShell XmDisplay

ClassPointer:

xmDisplayClass

widget=XtAppInitialize(...)
Instantiation:
Functions/Macros: XmGetXmDisplay(),XmIsDisplay()

Availability
Motif1.2andlater.
Description
TheDisplayobjectstoresdisplayspecificinformationforusebythetoolkit.AnapplicationhasaDisplayobjectforeachdisplayitaccesses.Whenanapplication
createsitsfirstshellonadisplay,typicallybycallingXtAppInitialize()orXtAppCreateShell(),aDisplayobjectiscreatedautomatically.Thereis
nowaytocreateaDisplayindependently.ThefunctionXmGetXmDisplay()canbeusedtogetthewidgetIDoftheDisplayobject.
TheXmNdragInitiatorProtocolStyleandXmNdragReceiverProtocolStyleresourcesspecifythedragprotocolforanapplicationthat
performsdraganddropoperations.ThetwoprotocolstylesareDynamicandPreregister.Underthedynamicprotocol,theinitiatorandreceiverpassmessagesback
andforthtohandledraganddropvisuals.UnderthePreregisterprotocol,theinitiatorhandlesdraganddropvisualsbyreadinginformationthatispreregisteredand
storedinproperties.Theactualprotocolthatisusedbyaspecificinitiatorandreceiverisbasedontherequestedprotocolstylesofthereceiverandinitiator:
DragInitiator

DragReceiverProtocolStyle

ProtocolStyle

Preregister

PreferPreregister

PreferDynamic

Dynamic

Preregister

PREREGISTER

PREREGISTER

PREREGISTER

DROP_ONLY

PreferPreregister PREREGISTER

PREREGISTER

PREREGISTER

DYNAMIC

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page716

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
DragInitiator

DragReceiverProtocolStyle

ProtocolStyle

Preregister

PreferPreregister

PreferDynamic

Dynamic

PreferReceiver

PREREGISTER

PREREGISTER

DYNAMIC

DYNAMIC

PreferDynamic

PREREGISTER

DYNAMIC

DYNAMIC

DYNAMIC

Dynamic

DROP_ONLY

DYNAMIC

DYNAMIC

DYNAMIC

NewResources
Displaydefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNdefault
ButtonEmphasis

XmCDefault
ButtonEmphasis

XtEnum

XmEXTERNAL
HIGHLIGHT

SG

XmNdefault
VirtualBindings

XmCDefault
VirtualBindings

String

dynamic

SG

XmNdragInitiator
ProtocolStyle

XmCDragInitiator
ProtocolStyle

unsigned
char

XmDRAG_PREFER_
RECEIVER

SG

XmNdragReceiver
ProtocolStyle

XmCDragReceiver
ProtocolStyle

unsigned
char

XmDRAG_PREFER_
PREREGISTER

SG

XmNenable
Btn1Transfer

XmCEnable
Btn1Transfer

XtEnum

XmOFF

CG

XmNenableButtonTab

XmCEnableButtonTab

Boolean

False

CG

XmNenableDragIcon

XmCEnableDragIcon

Boolean

False

CG

XmNenable
EtchedInMenu

XmCEnable
EtchedInMenu

Boolean

False

CG

XmNenableMulti
KeyBindings

XmCEnableMulti
KeyBindings

Boolean

False

CG

XmNenable
ThinThickness

XmCEnable
ThinThickness

Boolean

False

CG

XmNenable
ToggleColor

XmCEnable
ToggleColor

Boolean

False

CG

XmNenable
ToggleVisual

XmCEnable
ToggleVisual

Boolean

False

CG

XmNenable
UnselectableDrag

XmCEnable
UnselectableDrag

Boolean

True

CG

XmNenableWarp

XmCEnableWarp

XtEnum

True

CG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page717

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNmotifVersion

XmCMotifVersion

int

XmVersion

CSG

XmNuserData

XmCUserData

XtPointer

NULL

CSG

XmNdefaultButtonEmphasis
InMotif2.0andlater,specifiesthemannerinwhichbuttonwidgetsandgadgetsthathavetheXmNshowAsDefaultresourcesetaredisplayed.Abuttonthatis
thedefaulthasadoubleborder.IfXmNdefaultButtonEmphasisisXmINTERNAL_HIGHLIGHT,thelocationcursorisdrawnbetweenthedouble
border.Otherwise,withavalueofXmEXTERNAL_HIGHLIGHT,thelocationcursorisdrawnoutsideofthedoubleborder.Aninternalindicationuseslessspace
forthebutton.
XmNdefaultVirtualBindings
InMotif2.0andlater,specifiesthedefaultvirtualbindingsforthedisplay.
XmNdragInitiatorProtocolStyle
Theclient'sdraganddropprotocolrequirementsorpreferencewhenitistheinitiatorofadraganddropoperation.Possiblevaluesare:
XmDRAG_PREREGISTER/*canonlyusethepreregisterprotocol*/
XmDRAG_DYNAMIC/*canonlyusethedynamicprotocol*/
XmDRAG_NONE/*draganddropisdisabled*/
XmDRAG_DROP_ONLY/*onlysupportsdragging*/
XmDRAG_PREFER_DYNAMIC/*supportsbothbutprefersdynamic*/
XmDRAG_PREFER_PREREGISTER/*supportsbothbutpreferspreregister*/
XmDRAG_PREFER_RECEIVER/*supportsbothprefersreceiver'sprotocol*/

XmNdragReceiverProtocolStyle
Theclient'sdraganddropprotocolrequirementsorpreferencewhenitisthereceiver.Possiblevaluesare:
XmDRAG_PREREGISTER/*canonlyusethepreregisterprotocol*/
XmDRAG_DYNAMIC/*canonlyusethedynamicprotocol*/
XmDRAG_NONE/*draganddropisdisabled*/
XmDRAG_DROP_ONLY/*onlysupportsdropping*/
XmDRAG_PREFER_DYNAMIC/*supportsbothbutprefersdynamic*/
XmDRAG_PREFER_PREREGISTER/*supportsbothbutpreferspreregister*/

XmNenableBtn1Transfer
InMotif2.0andlater,configuresselectionandtransferactionsforButton1.TheContainer,Text,TextField,andListactionsareaffectedbythisresource.Possible
valuesare:
XmOFF/*selectionandtransferdisabledforbutton1*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page718
XmBUTTON2_TRANSFER/*selectiononbutton1,transferonbutton2*/
XmBUTTON2_ADJUST/*selectiononbutton1,adjustonbutton2*/

XmNenableButtonTab
InMotif2.0andlater,configurestheactionoftheTabkeywithrespecttokeyboardnavigation.IfTrue,KNextFieldandKPrevFieldbehaveslikean
Arrowkey,movingthefocusbetweenwidgetswithinaTabGroup,untiltheboundaryofaTabgroupisreached,atwhichpointasubsequentnavigationmovesthe
focusintothenextorpreviousTabgroup.IfFalse,KNextFieldandKPrevFieldmovethefocustothenextorprevioustabgrouprespectively.
XmNenableDragIcon
InMotif2.0andlater,asetofalternativeiconsrepresentingthedraganddropdefaultcursorsisavailable.AvalueofTruespecifiesthatthesearethedefault.
XmNenableEtchedInMenu
InMotif2.0andlater,specifiesthewayinwhichbuttonswithinmenusareshadowedwhenthewidgetisactivated.ThevalueFalseresultsinanetchedout
appearance,whileTruegivesanetchedinshadowing,whichisconsistentwiththeappearanceofactivatedbuttonsoutsideofamenusystem.Theresourceaffects
PushButton,ToggleButton,CascadeButtonwidgetsandgadgetcounterparts.
XmNenableMultiKeyBindings
InMotif2.1,mergesanadditionalsetoftranslationsintotheresourcedatabasethatarecompatiblewithCDEcanceltranslations.
XmNenableThinThickness
IntroducedinMotif1.2.5toprovideCDEstyleshadowingandhighlighting,usedoriginallyonlybytheScrollBar.InMotif2.1,thenumberofwidgetssensitivetothe
resourceisconsiderablyexpanded.IfTrue,thedefaultshadowthicknessis1,otherwisethedefaultis2.
XmNenableToggleColor
InMotif2.0andlater,specifieshowthedefaultvalueofatoggle'sXmNselectColorisdetermined.Truemeansthatthedefaultistakenfromthe
XmNhighlightColorvalueFalseusestheXmNbackground.XmNenableToggleColorisignoredifanexplicitXmNselectColoris
suppliedtothetogglewidgetorgadget.TheresourceonlytakeseffectiftheindicatortypeofthetoggleisXmONE_OF_MANYorXmONE_OF_MANY_ROUND.
XmNenableToggleVisual
InMotif2.0andlater,controlsthedefaultappearanceoftoggles.IfFalse,atogglewiththeindicatortypeofXmONE_OF_MANYisdrawnasadiamond,anda

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page719

togglewithindicatortypeXmN_OF_MANYisdrawnsquare.IfTrue,atogglewithinaradioboxhasthedefaultindicatortypeXmONE_OF_MANY_ROUND,
whichisrenderedasacircle.AtoggleoutsideofaradioboxhasthedefaultindicatortypeXmN_OF_MANY,whichisrenderedsquare,andacheckmarkis
displayedwhenXmNindicatorOnisTrue.
XmNenableUnselectableDrag
InMotif2.0andlater,specifieswhetheritispossibletoinitiateadragoperationfromLabel,LabelGadget,orScalewidgets.ThevalueTrueenablesdrag
operationsfromthewidgets.
XmNenableWarp
InMotif2.0andlater,specifiesiftheapplicationispermittedtowarpthepointerawayfromtheuser.ThevalueTrueenableswarping.
XmNmotifVersion
InMotif2.0andlater,specifiesthecurrentversionofMotif.
XmNuserData
InMotif2.0andlater,specifiesapointertodatathattheapplicationcanattachtotheXmDisplayobject.Theresourceisunusedinternally.
CallbackResources
InMotif2.0andlater,Displaydefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNdragStartCallback

XmCR_DRAG_START

XmNnoFontCallback

XmCR_NO_FONT

XmNnoRenditionCallback

XmCR_NO_RENDITION

XmNdragStartCallback
ListofcallbacksthatarecalledwhentheprocedureXmDragStart()isinvoked.
XmNnoFontCallback
ListofcallbacksthatarecalledwhenanXmRenditionobjectfailsinanattempttoloadafont.Thismayhappeniftheobjectiscreatedwithan
XmNloadModelofXmLOAD_IMMEDIATE,andthefontcannotbeloadedimmediately,oriftheXmNloadModelisXmLOAD_DEFERREDandalater
attemptismadetorenderacompoundstringusinganunloadablefont.Acallbackcanbesuppliedtorectifythesituationitcanfindorspecifyanalternativefontand
invokethefunctionXmRenditionUpdate()upontherenditionobject.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page720

XmNnoRenditionCallback
Listofcallbacksthatarecalledwhenanattemptismadetorenderusingarenditiontagwhichdoesnotmatchanyentrywithinagivenrendertable.Acallbackcanbe
suppliedtorectifytheproblemitcancreateanewrenditionwiththeproblematictagandaugmenttherendertable.
CallbackStructure
EachXmNnoFontCallbackorXmNnoRenditionCallbackprocedureispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*pointstoeventthattriggeredcallback*/
XmRenditionrendition/*therenditionwithamissingfont*/
char*font_name/*thefontwhichisnotloadable*/
XmRenderTablerender_table/*therendertablewithamissingrendition*/
XmStringtag/*thetagofthemissingrendition*/
}XmDisplayCallbackStruct

Therender_tableandtagelementsareonlyapplicabletocallbacksontheXmNnoRenditionCallbacklist.renditionandfont_nameare
validonlyforXmNnoFontCallbackcallbacks.
Inaddition,anXmNdragStartCallbackprocedureispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*pointstoeventstructurethattriggeredcallback*/
Widgetwidget/*theIDofthewidgetwherethedraginitiated*/
Booleandoit/*dotheaction(True)orundoit(False)*/
}XmDragStartCallbackStruct

InheritedResources
NoneoftheresourcesinheritedbyDisplaycanbesetbytheprogrammeroruser.
SeeAlso
XmGetXmDisplay(1),ApplicationShell(2),Composite(2),Core(2),Shell(2),TopLevelShell(2),
VendorShell(2),WMShell(2),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page721

XmDragContext
MotifandXtWidgetClasses
Name
XmDragContextwidgetclassanobjectusedtostoreinformationaboutadragtransaction.
Synopsis
PublicHeader:

<Xm/DragDrop.h>

ClassName:

XmDragContext

ClassPointer:

xmDragContextClass

ClassHierarchy:

Core

DragContext

widget=XmDragStart(...)
Instantiation:
Functions/Macros:

XmDragCancel(),XmDragStart()

Availability
Motif1.2andlater.
Description
TheDragContextobjectstoresinformationthatthetoolkitneedstoprocessadragtransaction.AnapplicationdoesnotexplicitlycreateaDragContextwidget,but
insteadinitiatesadraganddropoperationbycallingXmDragStart(),whichinitializesandreturnsaDragContextwidget.TheDragContextstoresinformation
aboutthetypesofdataandoperationsofthedragsource,thedragiconsthatareusedduringthedrag,andthecallbacksthatarecalledduringdifferentpartsofthe
drag.ThesecharacteristicscanbespecifiedasresourceswhentheDragContextiscreatedusingXmDragStart().
EachdragoperationhasauniqueDragContextthatisfreedbythetoolkitwhentheoperationiscomplete.Theinitiatingandreceivingclientsinadraganddrop
operationbothusetheDragContexttokeeptrackofthestateoftheoperation.Thedragovervisualeffectsthatareusedduringadragoperationdependonthedrag
protocolthatisbeingused.Underthepreregisterprotocol,eitheracursororapixmapcanbeused,sincetheserverisgrabbed.Underthedynamicprotocol,theX
cursorisused.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page722

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewResources
DragContextdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNblendModel

XmCBlendModel

unsigned
char

XmBLEND_ALL

CG

XmNclientData

XmCClientData

XtPointer

NULL

CSG

XmNconvertProc

XmCConvertProc

XtConvertNULL
Selection
IncrProc

CSG

XmNcursor
Background

XmCCursor
Background

Pixel

dynamic

CSG

XmNcursor
Foreground

XmCCursor
Foreground

Pixel

dynamic

CSG

XmNdrag
Operations

XmCDrag
Operations

unsigned
char

XmDROP_COPY|
XmDROP_MOVE

XmNexportTargets

XmCExport
Targets

Atom*

NULL

CSG

XmNincremental

XmCIncremental

Boolean

False

CSG

XmNinvalidCursor
Foreground

XmCCursor
Foreground

Pixel

dynamic

CSG

XmNnoneCursor
Foreground

XmCCursor
Foreground

Pixel

dynamic

CSG

XmNnumExport
Targets

XmCNumExport
Targets

Cardinal

CSG

XmNoperation
CursorIcon

XmCOperation
CursorIcon

Widget

dynamic

CSG

XmNsource
CursorIcon

XmCSource
CursorIcon

Widget

dynamic

CSG

XmNsource
PixmapIcon

XmCSource
PixmapIcon

Widget

dynamic

CSG

XmNstate
CursorIcon

XmCState
CursorIcon

Widget

dynamic

CSG

XmNvalidCursor
Foreground

XmCCursor
Foreground

Pixel

dynamic

CSG

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page723

XmNblendModel
ThecombinationofDragIconsthatareblendedtoproduceadragovervisual.Possiblevaluesare:
XmBLEND_ALL/*source,state,andoperation*/
XmBLEND_STATE_SOURCE/*sourceandstate*/
XmBLEND_JUST_SOURCE/*sourceonly*/
XmBLEND_NONE/*nodragovervisual*/

XmNclientData
TheclientdatathatispassedtotheXmNconvertProc.
XmNconvertProc
AprocedureoftypeXtConvertSelectionIncrProcthatconvertsthedatatotheformat(s)specifiedbythereceivingclient.Thewidgetargument
passedtothisprocedureistheDragContextwidgetandtheselectionatomis_MOTIF_DROP.IfXmNincrementalisFalse,theconversionprocedure
shouldprocesstheconversionatomicallyandignorethemax_length,client_data,andrequest_idarguments.Allocateanydatareturnedby
XmNconvertProcusingXtMalloc()anditisfreedautomaticallybythetoolkitafterthetransfer.
XmNcursorBackground
Thebackgroundcolorofthecursor.
XmNcursorForeground
Theforegroundcolorofthecursorwhenthestateiconisnotblended.ThedefaultvalueistheforegroundcolorofthewidgetpassedtoXmDragStart().
XmNdragOperations
Thevalidoperationsforthedrag.Thevalueisabitmaskthatisformedbycombiningoneormoreofthesepossiblevaluesare:
XmDROP_COPY/*copyoperationsarevalid*/
XmDROP_LINK/*linkoperationsarevalid*/
XmDROP_MOVE/*moveoperationsarevalid*/
XmDROP_NOOP/*nooperationsarevalid*/

ForTextandTextFieldwidgets,thedefaultvalueisXmDROP_COPY|XmDROP_MOVE.ForListwidgetsandLabelandsubclasses,thedefaultis
XmDROP_COPY.
XmNexportTargets
Thelistoftargetatomsthatthesourcedatacanbeconvertedto.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page724

XmNincremental
IfTrue,theinitiatorusestheXtincrementalselectiontransfermechanism.IfFalse(default),theinitiatorusesatomictransfer.
XmNinvalidCursorForeground
Theforegroundcolorofthecursorwhenthestateisinvalid.ThedefaultvalueisthevalueoftheXmNcursorForegroundresource.
XmNnoneCursorForeground
Theforegroundcolorofthecursorwhenthestateisnone.ThedefaultvalueisthevalueoftheXmNcursorForegroundresource.
XmNnumExportTargets
ThenumberofatomsintheXmNexportTargetslist.
XmNoperationCursorIcon
Thedragiconusedtoshowthetypeofdragoperationbeingperformed.IfthevalueisNULL,thedefaultScreeniconsareused.
XmNsourceCursorIcon
Thedragiconusedtorepresentthesourcedataunderthedynamicprotocol.IfthevalueisNULL,thedefaultScreeniconisused.
XmNsourcePixmapIcon
Thedragiconusedtorepresentthesourcedataunderthepreregisterprotocol.IfthevalueisNULL,XmNsourceCursorIconisused.
XmNstateCursorIcon
Thedragiconusedtoshowthestateofadropsite.IfthevalueisNULL,thedefaultScreeniconsareused.
XmNvalidCursorForeground
Theforegroundcolorofthecursorwhenthestateisvalid.ThedefaultvalueisthevalueoftheXmNcursorForegroundresource.
CallbackResources
DragContextdefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNdragDropFinishCallback

XmCR_DRAG_DROP_FINISH

XmNdragMotionCallback

XmCR_DRAG_MOTION

XmNdropFinishCallback

XmCR_DROP_FINISH

XmNdropSiteEnterCallback

XmCR_DROP_SITE_ENTER

XmNdropSiteLeaveCallback

XmCR_DROP_SITE_LEAVE

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page725

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Callback

ReasonConstant

XmNdropStartCallback

XmCR_DROP_START

XmNoperationChangedCallback

XmCR_OPERATION_CHANGED

XmNtopLevelEnterCallback

XmCR_TOP_LEVEL_ENTER

XmNtopLevelLeaveCallback

XmCR_TOP_LEVEL_LEAVE

XmNdragDropFinishCallback
Listofcallbacksthatarecalledwhentheentiretransactionisfinished.
XmNdragMotionCallback
Listofcallbacksthatarecalledwhenthepointermovesduringadrag.
XmNdropFinishCallback
Listofcallbacksthatarecalledwhenthedropisfinished.
XmNdropSiteEnterCallback
Listofcallbacksthatarecalledwhenthepointerentersadropsite.
XmNdropSiteLeaveCallback
Listofcallbacksthatarecalledwhenthepointerleavesadropsite.
XmNdropStartCallback
Listofcallbacksthatarecalledwhenadropisstarted.
XmNoperationChangedCallback
Listofcallbacksthatarecalledwhentheuserchangestheoperationduringadrag.
XmNtopLevelEnterCallback
Listofcallbacksthatarecalledwhenthepointerentersatoplevelwindoworrootwindow.
XmNtopLevelLeaveCallback
Listofcallbacksthatarecalledwhenthepointerleavesatoplevelwindowortherootwindow.
CallbackStructures
TheXmNdragDropFinishCallbackispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
TimetimeStamp/*timeatwhichoperationcompleted*/
}XmDragDropFinishCallbackStruct,*XmDragDropFinishCallback

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page726

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

TheXmNdragMotionCallbackispassedthefollowingstructure:
typedefstruct
{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timestampoflogicalevent*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
unsignedchardropSiteStatus/*valid,invalid,ornone*/
Positionx/*xcoordinateofpointer*/
Positiony/*ycoordinateofpointer*/
}XmDragMotionCallbackStruct,*XmDragMotionCallback

TheXmNdropFinishCallbackispassedthefollowingstructure:
typedefstruct
{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timeatwhichdropcompleted*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
unsignedchardropSiteStatus/*valid,invalid,ornone*/
unsignedchardropAction/*drop,cancel,help,orinterrupt*/
unsignedcharcompletionStatus/*successorfailure*/
}XmDropFinishCallbackStruct,*XmDropFinishCallback

TheXmNdropSiteEnterCallbackispassedthefollowingstructure:
typedefstruct
{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timeofcrossingevent*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
unsignedchardropSiteStatus/*valid,invalid,ornone*/
Positionx/*xcoordinateofpointer*/
Positiony/*ycoordinateofpointer*/
}XmDropSiteEnterCallbackStruct,*XmDropSiteEnterCallback

TheXmNdropSiteLeaveCallbackispassedthefollowingstructure:
typedefstruct
{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timeofcrossingevent*/
}XmDropSiteLeaveCallbackStruct,*XmDropSiteLeaveCallback

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page727

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

TheXmNdropStartCallbackispassedthefollowingstructure:
typedefstruct
{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timeatwhichdragcompleted*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
unsignedchardropSiteStatus/*valid,invalid,ornone*/
unsignedchardropAction/*drop,cancel,help,orinterrupt*/
Positionx/*xcoordinateofpointer*/
Positiony/*ycoordinateofpointer*/
}XmDropStartCallbackStruct,*XmDropStartCallback

TheXmNoperationChangedCallbackispassedthefollowingstructure:
typedefstruct
{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timestampoflogicalevent*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
unsignedchardropSiteStatus/*valid,invalid,ornone*/
}XmOperationChangedCallbackStruct,*XmOperationChangedCallback

TheXmNtopLevelEnterCallbackispassedthefollowingstructure:
typedefstruct
{
intreason/*reasoncallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timestampoflogicalevent*/
Screenscreen/*screenoftoplevelwindow*/
Windowwindow/*windowbeingentered*/
Positionx/*xcoordinateofpointer*/
Positiony/*ycoordinateofpointer*/
unsignedchardragProtocolStyle/*dragprotocolofinitiator*/
}XmTopLevelEnterCallbackStruct,*XmTopLevelEnterCallback

TheXmNtopLevelLeaveCallbackispassedthefollowingstructure:
typedefstruct
{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
Timetimestamp/*timestampoflogicalevent*/
Screenscreen/*screenoftoplevelwindow*/
Windowwindow/*windowbeingleft*/
}XmTopLevelLeaveCallbackStruct,*XmTopLevelLeaveCallback

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page728

Theoperationsfieldinthesestructuresspecifiesthesetofoperationssupportedforthedatabeingdragged.Thetoolkitinitializesthevaluebasedonthe
operationsfieldoftheXmDragProcCallbackStruct,theXmNdropSiteOperationsresourceoftheDropSite,the
XmNdragOperationsresourceoftheDragContextandtheoperationselectedbytheuser.Theoperationfieldinthesestructuresspecifiesthecurrent
operation.ThetoolkitinitializesthevaluebasedonthevalueoftheoperationfieldoftheXmDragProcCallbackStruct,operations,andthe
XmNdropSiteOperationsresourceoftheDropSite.
ThedropSiteStatusfieldinthesestructuresspecifieswhetherornotthedropsiteisvalid.Thetoolkitinitializesthevaluebasedonthe
XmNimportTargetsresourceoftheDropSiteandtheXmNexportTargetsresourceoftheDragContextandthelocationofthepointer.Thepossible
valuesareXmDROP_SITE_VALID,XmDROP_SITE_INVALID,andXmNO_DROP_SITE.
ThedropActionfieldinthesestructuresspecifiestheactionassociatedwiththedrop.ThepossiblevaluesareXmDROP,XmDROP_CANCEL,
XmDROP_INTERRUPT,andDROP_HELP.XmDROP_INTERRUPTisunsupportedandisinterpretedasXmDROP_CANCEL.
ThecompletionStatusfieldintheXmDropFinishCallbackStructspecifiesthestatusofthedroptransaction,whichdeterminesthedropvisual
effect.ThevalueofthisfieldcanbechangedbytheXmNdropFinishCallbackStruct.ThepossiblevaluesareXmSUCCESSandXmFAILURE.
InheritedResources
DragContextinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.DragContextsetsthedefaultvalueof
XmNborderWidthto0.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNheight

Core

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNscreen

Core

XmNborderColor

Core

XmNsensitive

Core

XmNborderPixmap

Core

XmNtranslations

Core

XmNborderWidth

Core

XmNwidth

Core

XmNcolormap

Core

XmNx

Core

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page729

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNdepth

Core

XmNy

Core

XmNdestroyCallback

Core

Translations
Event

Action

BDragMotion

DragMotion()

BDragRelease

FinishDrag()

KCancel

CancelDrag()

KHelp

HelpDrag()

ActionRoutines
DragContextdefinesthefollowingactionroutines:
CancelDrag()
CancelsthedragoperationandfreestheassociatedDragContext.
DragMotion()
Dragstheselecteddataasthepointerismoved.
FinishDrag()
Completesthedragoperationandinitiatesthedropoperation.
HelpDrag()
Startsaconditionaldropthatallowsthereceivingclienttoprovidehelpinformationtotheuser.Theusercancancelorcontinuethedropoperationinresponsetothis
information.
SeeAlso
XmDragCancel(1),XmDragStart(1),XmGetDragContext(1),Core(2),XmDisplay(2),XmDragIcon(2),
XmDropSite(2),XmDropTransfer(2),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page730

XmDragIcon
MotifandXtWidgetClasses
Name
XmDragIconwidgetclassanobjectusedtorepresentthedatainadraganddropoperation.
Synopsis
PublicHeader:

<Xm/DragDrop.h>

ClassName:

XmDragIcon

ClassPointer:

xmDragIconObjectClass

ClassHierarchy:

Object

DragIcon

widget=XmCreateDragIcon(...)
Instantiation:
Functions/Macros:

XmCreateDragIcon(),XmIsDragIconObjectClass()

Availability
Motif1.2andlater.
Description
ADragIconisanobjectthatrepresentsthesourcedatainadraganddroptransaction.Duringadragoperation,thecursorchangesintoavisualthatiscreatedby
combiningthevariousDragIconsspecifiedintheDragContextassociatedwiththeoperation.ADragIconiscreatedusingtheXmCreateDragIcon()function
orfromentriesintheresourcedatabase.
Adragovervisualcanhavebothastaticandadynamicpart.ThestaticpartofthevisualistheDragIconthatrepresentsthesourcedata.Thedynamicpartscanbe
DragIconsthatchangetoindicatethetypeofoperationthatisbeingperformedandwhetherthepointerisoveravalidoraninvaliddropsite.The
XmNblendModelresourceoftheDragContextforadraganddropoperationspecifieswhichiconsareblendedtoproducethedragovervisual.DragIcon
resourcesspecifytherelativepositionsoftheoperationandstateiconsiftheyareused.WhenaDragIconisnotspecified,thedefaultDragIconsfromtheappropriate
Screenobjectareused.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page731

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewResources
DragIcondefinesthefollowingresources:
Name

Class

Type

XmNattachment

XmCAttachment

unsignedchar XmATTACH_NORTH_WEST

Default

Access
CSG

XmNdepth

XmCDepth

int

CSG

XmNheight

XmCHeight

Dimension

CSG

XmNhotX

XmCHot

Position

CSG

XmNhotY

XmCHot

Position

CSG

XmNmask

XmCPixmap

Pixmap

XmUNSPECIFIED_PIXMAP

CSG

XmNoffsetX

XmCOffset

Position

CSG

XmNoffsetY

XmCOffset

Position

CSG

XmNpixmap

XmCPixmap

Pixmap

XmUNSPECIFIED_PIXMAP

CSG

XmNwidth

XmCWidth

Dimension

CSG

XmNattachment
Therelativelocationonthesourceiconwherethestateoroperationiconisattached.Possiblevaluesare:
XmATTACH_NORTH_WEST

XmATTACH_NORTH

XmATTACH_NORTH_EAST

XmATTACH_EAST

XmATTACH_SOUTH_EAST

XmATTACH_SOUTH

XmATTACH_SOUTH_WEST

XmATTACH_WEST

XmATTACH_CENTER

XmATTACH_HOT

XmNdepth
Thedepthofthepixmap.
XmNheight
Theheightofthepixmap.
XmNhotX
Thexcoordinateofthehotspotofthecursor.
XmNhotY
Theycoordinateofthehotspotofthecursor.
XmNmask
ThemaskfortheDragIconpixmap.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page732

XmNoffsetX
Thehorizontaloffsetinpixelsoftheoriginofthestateoroperationiconrelativetotheattachmentpointonthesourceicon.
XmNoffsetY
Theverticaloffsetinpixelsoftheoriginofthestateoroperationiconrelativetotheattachmentpointonthesourceicon.
XmNpixmap
ThepixmapfortheDragIcon.
XmNwidth
Thewidthofthepixmap.
InheritedResources
DragIconinheritsthefollowingresource:
Resource

InheritedFrom

XmNdestroyCallback

Object

SeeAlso
XmCreateObject(1),Object(2),XmDisplay(2),XmDragContext(2),XmDropSite(2),XmDropTransfer(2),
XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page733

XmDrawingArea
MotifandXtWidgetClasses
Name
XmDrawingAreawidgetclassasimplemanagerwidgetforinteractivedrawing.
Synopsis
PublicHeader:

<Xm/DrawingA.h>

ClassName:

XmDrawingArea

ClassHierarchy:

Core Composite
XmDrawingArea

ClassPointer:

xmDrawingAreaWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmDrawingAreaWidgetClass,...)

Constraint

XmManager

Functions/Macros: XmCreateDrawingArea(),XmIsDrawingArea()

Description
DrawingAreaprovidesablankcanvasforinteractivedrawing.Thewidgetdoesnotdoanydrawingofitsown.SinceDrawingAreaisasubclassofManager,itcan
providesimplegeometrymanagementofmultiplewidgetorgadgetchildren.Thewidgetdoesnotdefineanybehaviorexceptforinvokingcallbacksthatnotifyan
applicationwhenitreceivesinputevents,exposureevents,andresizeevents.
NewResources
DrawingAreadefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNmarginHeight

XmCMarginHeight

Dimension

10

CSG

XmNmarginWidth

XmCMarginWidth

Dimension

10

CSG

XmNresizePolicy

XmCResizePolicy

unsignedchar

XmRESIZE_ANY

CSG

XmNmarginHeight
ThespacingbetweenaDrawingArea'stoporbottomedgeandanychildwidget.
XmNmarginWidth
ThespacingbetweenaDrawingArea'srightorleftedgeandanychildwidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page734

XmNresizePolicy
HowDrawingAreawidgetsareresized.Possiblevaluesare:
XmRESIZE_NONE/*remainatfixedsize*/
XmRESIZE_GROW/*expandonly*/
XmRESIZE_ANY/*shrinkorexpand,asneeded*/

CallbackResources
DrawingAreadefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNconvertCallback

XmCR_OK

XmNdestinationCallback

XmCR_OK

XmNexposeCallback

XmCR_EXPOSE

XmNinputCallback

XmCR_INPUT

XmNresizeCallback

XmCR_RESIZE

XmNconvertCallback
InMotif2.0andlater,specifiesthelistofcallbackscalledwhenarequestismadetoconvertaselection.
XmNdestinationCallback
InMotif2.0andlater,specifiesthelistofcallbackscalledwhentheDrawingAreaisthedestinationofadatatransfer.
XmNexposeCallback
ListofcallbacksthatarecalledwhentheDrawingAreareceivesanexposureevent.
XmNinputCallback
ListofcallbacksthatarecalledwhentheDrawingAreareceivesakeyboardormouseevent.
XmNresizeCallback
ListofcallbacksthatarecalledwhentheDrawingAreareceivesaresizeevent.
CallbackStructure
Eachexpose,resize,andinputcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
/*forXmNresizeCallback,thisisNULL*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page735
Windowwindow/*thewidget'swindow*/
}XmDrawingAreaCallbackStruct

ConvertcallbacksarefullydescribedwithinthesectionscoveringtheUniformTransferModel.SeeXmTransfer(1)formoredetails.Forquickreference,apointerto
thefollowingstructureispassedtocallbacksontheXmNconvertCallbacklist:
typedefstruct
{
intreason/*reasonthatthecallbackisinvoked*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Atomselection/*requestedconversionselection*/
Atomtarget/*theconversiontarget*/
XtPointersource_data/*selectionsourceinformation*/
XtPointerlocation_data/*informationaboutdatatobetransferred*/
intflags/*inputstatusoftheconversion*/
XtPointerparm/*parameterdataforthetarget*/
intparm_format/*formatofparameterdata*/
unsignedlongparm_length/*numberofelementsinparameterdata*/
Atomparm_type/*thetypeoftheparameterdata*/
intstatus/*outputstatusoftheconversion*/
XtPointervalue/*returnedconversiondata*/
Atomtype/*typeofconversiondatareturned*/
intformat/*formatoftheconversiondata*/
unsignedlonglength/*numberofelementsinconversiondata*/
}XmConvertCallbackStruct

DestinationcallbacksarefullydescribedwithinthesectionscoveringtheUniformTransferModel.SeeXmTransfer(1)formoredetails.Forquickreference,apointer
tothefollowingstructureispassedtocallbacksontheXmNdestinationCallbacklist:
typedefstruct
{
intreason/*reasonthatthecallbackisinvoked*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Atomselection/*therequestedselectiontype,asanAtom*/
XtEnumoperation/*thetypeoftransferrequested*/
intflags/*whetherdestinationandsourcearesame*/
XtPointertransfer_id/*uniqueidentifierfortherequest*/
XtPointerdestination_data/*informationaboutthedestination*/
XtPointerlocation_data/*informationaboutthedata*/
Timetime/*thetimewhentransferoperationstarted*/
}XmDestinationCallbackStruct

InheritedResources
DrawingAreainheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Thedefaultvalueof
XmNborderWidthisresetto0byManager.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page736
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinsertPosition

Composite

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNnavigationType

XmManager

XmNborderColor

Core

XmNnumChildren

XmManager

XmNborderPixmap

Core

XmNpopupHandlerCallback

XmManager

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmManager

XmNsensitive

Core

XmNbottomShadowPixmap

XmManager

XmNshadowThickness

XmManager

XmNchildren

Composite

XmNstringDirection

XmManager

XmNcolormap

Core

XmNtopShadowColor

XmManager

XmNdepth

Core

XmNtopShadowPixmap

XmManager

XmNdestroyCallback

Core

XmNtranslations

Core

XmNheight

Core

XmNtraversalOn

XmManager

XmNhelpCallback

XmManager

XmNuserData

XmManager

XmNhighlightColor

XmManager

XmNwidth

Core

XmNhighlightPixmap

XmManager

XmNx

Core

XmNinitialFocus

XmManager

XmNy

Core

XmNinitialResources
Persistent

Core

Translations
ThetranslationsforDrawingAreaincludethoseofManager.Alloftheeventsintheinheritedtranslationsexcept<BtnMotion>,<EnterWindow>,
<LeaveWindow>,<FocusIn>,and<FocusOut>calltheDrawingAreaInput()actionbeforecallingtheManageractions.
DrawingAreahasthefollowingadditionaltranslations:
Event

Action

MAnyBAnyPress

DrawingAreaInput()

MAnyBAnyRelease

DrawingAreaInput()

MAnyKAnyPress

DrawingAreaInput()
ManagerGadgetKeyInput()

MAnyKAnyRelease

DrawingAreaInput()

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page737

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

ActionRoutines
DrawingAreadefinesthefollowingactionroutines:
DrawingAreaInput()
WhenawidgetchildofaDrawingAreareceivesakeyboardormouseevent,thisactionroutineinvokesthelistofcallbacksspecifiedbyXmNinputCallback.
ManagerGadgetKeyInput()
WhenagadgetchildofaDrawingAreareceivesakeyboardormouseevent,thisactionroutineprocessestheevent.
AdditionalBehavior
DrawingAreahasthefollowingadditionalbehavior:
<Expose>
InvokestheXmNexposeCallbackcallbacks.
<WidgetResize>
InvokestheXmNresizeCallbackcallbacks.
SeeAlso
XmCreateObject(1),Composite(2),Constraint(2),Core(2),XmManager(2),XmTransfer(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page738

XmDrawnButton
MotifandXtWidgetClasses
Name
XmDrawnButtonwidgetclassabuttonwidgetthatprovidesagraphicsarea.
Synopsis
PublicHeader:

<Xm/DrawnB.h>

ClassName:

XmDrawnButton

ClassHierarchy:

XmPrimitive XmLabel XmDrawnButton

ClassPointer:

xmDrawnButtonWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmDrawnButtonWidgetClass,...)

Functions/Macros:

XmCreateDrawnButton(),XmIsDrawnButton()

Description
DrawnButtonisanemptywidgetwindow,surroundedbyashadedborder.ThewidgetprovidesagraphicsareathatcanactlikeaPushButton.Thegraphicscanbe
dynamicallyupdatedbytheapplication.
Traits
DrawnButtonholdstheXmQTactivatabletrait,whichisinheritedbyanyderivedclasses,andusestheXmQTmenuSystemand
XmQTspecifyRenderTabletraits.
NewResources
DrawnButtondefinesthefollowingresources,allwithaccessCSG:
Name

Class

Type

Default

XmNmultiClick

XmCMultiClick

unsignedchar

dynamic

XmNpushButtonEnabled

XmCPushButtonEnabled

Boolean

False

XmNshadowType

XmCShadowType

unsignedchar

XmSHADOW_ETCHED_IN

XmNmultiClick
Aflagthatdetermineswhethersuccessivebuttonclicksareprocessedorignored.Possiblevaluesare:
XmMULTICLICK_DISCARD/*ignoresuccessivebuttonclicks*/
/*defaultwheninamenu*/
XmMULTICLICK_KEEP/*countsuccessivebuttonclicks*/
/*defaultwhennotinamenu*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page739

XmNpushButtonEnabled
IfFalse(default),theshadowdrawingdoesn'tappearthreedimensionalifTrue,theshadingprovidesapushedinorraisedappearanceasforthePushButton
widget.
XmNshadowType
Thestyleinwhichshadowsaredrawn.Possiblevaluesare:
XmSHADOW_IN/*widgetappearsinset*/
XmSHADOW_OUT/*widgetappearsoutset*/
XmSHADOW_ETCHED_IN/*doublelinewidgetappearsinset*/
XmSHADOW_ETCHED_OUT/*doublelinewidgetappearsraised*/

CallbackResources
DrawnButtondefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNactivateCallback

XmCR_ACTIVATE

XmNarmCallback

XmCR_ARM

XmNdisarmCallback

XmCR_DISARM

XmNexposeCallback

XmCR_EXPOSE

XmNresizeCallback

XmCR_RESIZE

XmNactivateCallback
ListofcallbacksthatarecalledwhenBSelectispressedandreleasedinsideofthewidget.
XmNarmCallback
ListofcallbacksthatarecalledwhenBSelectispressedwhilethepointerisinsidethewidget.
XmNdisarmCallback
ListofcallbacksthatarecalledwhenBSelectisreleasedafterithasbeenpressedinsideofthewidget.
XmNexposeCallback
Listofcallbacksthatarecalledwhenthewidgetreceivesanexposureevent.
XmNresizeCallback
Listofcallbacksthatarecalledwhenthewidgetreceivesaresizeevent.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page740

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
Windowwindow/*IDofwindowinwhichtheeventoccurred*/
intclick_count/*numberofmulticlicks*/
}XmDrawnButtonCallbackStruct

eventisNULLforXmNresizeCallbackandissometimesNULLforXmNactivateCallback.
click_countismeaningfulonlyforXmNactivateCallback.Furthermore,iftheXmNmultiClickresourcehasthevalue
XmMULTICLICK_KEEP,thenXmNactivateCallbackiscalledforeachclick,andthevalueofclick_countisthenumberofclicksthathave
occurredinthelastsequenceofmultipleclicks.IftheXmNmultiClickresourceissettoXmMULTICLICK_DISCARD,thenclick_countalwayshasa
valueof1.
InheritedResources
DrawnButtoninheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.DrawnButtonsetsdefaultvalueof
XmNlabelStringto"".ThedefaultvalueofXmNborderWidthisresetto0byPrimitive.InMotif2.0andearlier,thedefaultvalueof
XmNhighlightThicknessandXmNshadowThicknessareresetto2.InMotif2.1andlater,thedefaultvaluesdependupontheXmDisplay
XmNenableThinThicknessresource:ifTrue,thedefaultis1otherwise,itis2.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerator

XmLabel

XmNlabelType

XmLabel

XmNaccelerators

Core

XmNlayoutDirection

XmPrimitive

XmNacceleratorText

XmLabel

XmNmappedWhenManaged

Core

XmNalignment

XmLabel

XmNmarginBottom

XmLabel

XmNancestorSensitive

Core

XmNmarginHeight

XmLabel

XmNbackground

Core

XmNmarginLeft

XmLabel

XmNbackgroundPixmap

Core

XmNmarginRight

XmLabel

XmNborderColor

Core

XmNmarginTop

XmLabel

XmNborderPixmap

Core

XmNmarginWidth

XmLabel

XmNborderWidth

Core

XmNmnemonicCharSet

XmLabel

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page741

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

XmNbottomShadowColor

XmPrimitive XmNmnemonic

Resource

XmLabel

XmNbottomShadowPixmap

XmPrimitive XmNnavigationType

XmPrimitive

XmNcolormap

Core

XmPrimitive

XmNconvertCallback

XmPrimitive XmNrecomputeSize

XmLabel

XmNdepth

Core

XmNrenderTable

XmLabel

XmNdestroyCallback

Core

XmNscreen

Core

XmNfontList

XmLabel

XmNsensitive

Core

XmNforeground

XmPrimitive XmNshadowThickness

XmPrimitive

XmNheight

Core

XmLabel

XmNhelpCallback

XmPrimitive XmNtopShadowColor

XmPrimitive

XmNhighlightColor

XmPrimitive XmNtopShadowPixmap

XmPrimitive

XmNhighlightOnEnter

XmPrimitive XmNtranslations

Core

XmNhighlightPixmap

XmPrimitive XmNtraversalOn

XmPrimitive

XmNhighlightThickness

XmPrimitive XmNunitType

XmPrimitive

XmNinitialResources
Persistent

Core

XmNuserData

XmPrimitive

XmNlabelInsensitive
Pixmap

XmLabel

XmNwidth

Core

XmNlabelPixmap

XmLabel

XmNx

Core

XmNlabelString

XmLabel

XmNy

Core

XmNpopupHandler
Callback

XmNstringDirection

InheritedFrom

Translations
Event

Action

BSelectPress

Arm()

MCtrlBSelectPress

ButtonTakeFocus()

BSelectClick

Activate()
Disarm()

BSelectRelease

Activate()
Disarm()

BSelectPress2+

MultiArm()

BSelectRelease2+

MultiActivate()

KSelect

ArmAndActivate()

KHelp

Help()

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page742

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

ActionRoutines
DrawnButtondefinesthefollowingactionroutines:
Activate()
DisplaystheDrawnButtonasunselectedifXmNpushButtonEnabledisTrueordisplaystheshadowaccordingtoXmNshadowType.Invokesthelistof
callbacksspecifiedbyXmNactivateCallback.
Arm()
DisplaystheDrawnButtonasselectedifXmNpushButtonEnabledisTrueordisplaystheshadowaccordingtoXmNshadowType.Invokesthelistof
callbacksspecifiedbyXmNarmCallback.
ArmAndActivate()
DisplaystheDrawnButtonasselectedifXmNpushButtonEnabledisTrueordisplaystheshadowaccordingtoXmNshadowType.Invokesthelistof
callbacksspecifiedbyXmNarmCallback.Afterdoingthis,theactionroutinedisplaystheDrawnButtonasunselectedifXmNpushButtonEnabledis
TrueordisplaystheshadowaccordingtoXmNshadowTypeandinvokesthelistofcallbacksspecifiedbyXmNactivateCallbackand
XmNdisarmCallback.
ButtonTakeFocus()
InMotif2.0andlater,movesthecurrentkeyboardfocustotheDrawnButton,withoutactivatingthewidget.
Disarm()
DisplaystheDrawnButtonasunselectedandinvokesthelistofcallbacksspecifiedbyXmNdisarmCallback.
Help()
InvokesthelistofcallbacksspecifiedbyXmNhelpCallback.IftheDrawnButtondoesn'thaveanyhelpcallbacks,theHelp()routineinvokesthose
associatedwiththenearestancestorthathasthem.
MultiActivate()
Incrementstheclick_countmemberofXmDrawnButtonCallbackStruct,displaystheDrawnButtonasunselectedif
XmNpushButtonEnabledisTrueordisplaystheshadowaccordingtoXmNshadowType,andinvokesthelistofcallbacksspecifiedby
XmNactivateCallbackandXmNdisarmCallback.ThisactionroutinetakeseffectonlywhentheXmNmultiClickresourceissetto
XmMULTICLICK_KEEP.
MultiArm()
DisplaystheDrawnButtonasselectedifXmNpushButtonEnabledisTrueordisplaystheshadowaccordingtoXmNshadowType,andinvokesthelist

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page743

ofcallbacksspecifiedbyXmNarmCallback.ThisactionroutinetakeseffectonlywhentheXmNmultiClickresourceissetto
XmMULTICLICK_KEEP.
AdditionalBehavior
DrawnButtonhasthefollowingadditionalbehavior:
<EnterWindow>
DisplaystheDrawnButtonasselectedifXmNpushButtonEnabledisTrueandthepointerleavesandreentersthewindowwhileBSelectispressed.
<LeaveWindow>
DisplaystheDrawnButtonasunselectedifXmNpushButtonEnabledisTrueandthepointerleavesthewindowwhileBSelectispressed.
SeeAlso
XmCreateObject(1),Core(2),XmLabel(2),XmPrimitive(2),XmPushButton(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page744

XmDropSite
MotifandXtWidgetClasses
Name
XmDropSiteregistryanobjectthatdefinesthecharacteristicsofadropsite.
Synopsis
PublicHeader:

<Xm/DragDrop.h>

ClassHierarchy:

DropSitedoesnotinheritfromanywidgetclass.

Instantiation:

XmDropSiteRegister(...)

Functions/Macros:

XmDropSiteConfigureStackingOrder(),
XmDropSiteEndUpdate(),
XmDropSiteQueryStackingOrder(),
XmDropSiteRegister(),
XmDropSiteRetrieve(),
XmDropSiteStartUpdate(),
XmDropSiteUpdate(),
XmDropSiteUnregister()

Availability
Motif1.2andlater.
Description
ADropSiteisanobjectthatstoresdataaboutadropsitefordraganddropoperations.ADropSiteisassociatedwithaparticularwidgetorgadgetinanapplication.
AnapplicationregistersawidgetorgadgetasaDropSiteusingXmDropSiteRegister().TheDropSitestoresinformationabouttheshapeofthedropsite,
theanimationeffectsusedwhenthepointerentersthedropsite,thetypesofdatasupportedbythedropsite,andthecallbackthatisactivatedwhenadropoccurs.
ThesecharacteristicscanbespecifiedasresourceswhentheDropSiteiscreated.
ThefunctionsXmDropSiteUpdate()andXmDropSiteRetrieve()setandgetthedropsiteresourcesforawidgetthatisregisteredasaDropSite.
UsetheseroutinesinsteadofXtSetValues()andXtGetValues().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page745

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewResources
DropSitedefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNanimation
Mask

XmCAnimationMask

Pixmap

XmUNSPECIFIED_
PIXMAP

CSG

XmNanimation
Pixmap

XmCAnimationPixmap

Pixmap

XmUNSPECIFIED_
PIXMAP

CSG

XmNanimation
PixmapDepth

XmCAnimationPixmapDepth

int

CSG

XmNanimation
Style

XmCAnimationStyle

unsigned
char

XmDRAG_UNDER_
HIGHLIGHT

CSG

XmNdrop
Rectangles

XmCDropRectangles

XRectangle* dynamic

CSG

XmNdropSite
Activity

XmCDropSiteActivity

unsigned
char

XmDROP_SITE_
ACTIVE

CSG

XmNdropSite
Operations

XmCDropSiteOperations

unsigned
char

XmDROP_MOVE|
XmDROP_COPY

CSG

XmNdropSiteType

XmCDropSiteType

unsigned
char

XmDROP_SITE_
SIMPLE

CG

XmNimport
Targets

XmCImportTargets

Atom*

NULL

CSG

XmNnumDrop
Rectangles

XmCNumDropRectangles

Cardinal

CSG

XmNnumImport
Targets

XmCNumImportTargets

Cardinal

CSG

XmNanimationMask
ThemaskfortheXmNanimationPixmapwhentheanimationstyleisXmDRAG_UNDER_PIXMAP.
XmNanimationPixmap
ThepixmapusedfordragunderanimationwhentheanimationstyleisXmDRAG_UNDER_PIXMAP.
XmNanimationPixmapDepth
ThedepthofthepixmapspecifiedbyXmNanimationPixmap.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page746

XmNanimationStyle
Thestyleofdragunderanimationusedwhenthepointerentersavaliddropsiteduringadragoperation.Possiblevaluesare:
XmDRAG_UNDER_HIGHLIGHT/*dropsitehighlighted*/
XmDRAG_UNDER_SHADOW_OUT/*dropsiteshownwithoutsetshadow*/
XmDRAG_UNDER_SHADOW_IN/*dropsiteshownwithinsetshadow*/
XmDRAG_UNDER_PIXMAP/*dropsitedisplayspixmap*/
XmDRAG_UNDER_NONE/*noanimationeffectsunlessinXmNdragProc*/

XmNdropRectangles
Alistofrectanglesthatspecifytheshapeofthedropsite.WhenthevalueisNULL,thedropsiteistheentirewidget.
XmNdropSiteActivity
Specifiesthestateofthedropsite.Possiblevaluesare:
XmDROP_SITE_ACTIVE/*participatesindropoperations*/
XmDROP_SITE_INACTIVE/*doesnotparticipateindropoperations*/

XmNdropSiteOperations
Thevalidoperationsforadropsite.Thevalueisabitmaskthatisformedbycombiningoneormoreofthesepossiblevalues:
XmDROP_COPY/*copyoperationsarevalid*/
XmDROP_LINK/*linkoperationsarevalid*/
XmDROP_MOVE/*moveoperationsarevalid*/
XmDROP_NOOP/*nooperationsarevalid*/

XmNdropSiteType
Thetypeofthedropsite.Possiblevaluesare:
XmDROP_SITE_SIMPLE/*nochildrenareregisteredasdropsites*/
XmDROP_SITE_COMPOSITE/*haschildrenregisteredasdropsites*/

XmNimportTargets
Thelistoftargetatomsthatthedropsiteaccepts.
XmNnumDropRectangles
ThenumberofrectanglesintheXmNdropRectangleslist.
XmNnumImportTargets
ThenumberofatomsintheXmNimportTargetslist.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page747

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

CallbackResources
DropSitedefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNdragProc

XmCR_DROP_SITE_ENTER_MESSAGE
XmCR_DROP_SITE_LEAVE_MESSAGE
XmCR_DROP_SITE_MOTION_MESSAGE
XmCR_OPERATION_CHANGED_MESSAGE

XmNdropProc

XmCR_DROP_MESSAGE

XmNdragProc
Theprocedurethatiscalledwhenthedropsitereceivesacrossing,motion,oroperationchangedmessageunderthedynamicprotocol.Thereasonpassedtothe
proceduredependsonthetypeofmessagethatisreceived.
XmNdropProc
Theprocedurethatiscalledwhenadropoperationoccursonthedropsite.
CallbackStructures
TheXmNdragProcispassedthefollowingstructure:
typedefstruct
{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timestampoflogicalevent*/
WidgetdragContext/*DragContextassociatedwithoperation*/
Positionx/*xcoordinateofpointer*/
Positiony/*ycoordinateofpointer*/
unsignedchardropSiteStatus/*validorinvalid*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
Booleananimate/*toolkitorreceiverdoesanimation*/
}XmDragProcCallbackStruct,*XmDragProcCallback

TheXmNdragProccanchangethevalueofthedropSiteStatus,operation,andoperationsfieldsinthisstructure.Whenthedragprocedure
completes,thetoolkitusestheresultingvaluestoinitializethecorrespondingfieldsinthecallbackstructurepassedtotheinitiatingclient'scallbacks.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page748

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

TheXmNdropProcispassedthefollowingstructure:
typedefstruct
{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timestampoflogicalevent*/
WidgetdragContext/*DragContextassociatedwithoperation*/
Positionx/*xcoordinateofpointer*/
Positiony/*ycoordinateofpointer*/
unsignedchardropSiteStatus/*validorinvalid*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
unsignedchardropAction/*droporhelp*/
}XmDropProcCallbackStruct,*XmDropProcCallback

TheXmNdropProccanchangethevalueofthedropSiteStatus,operation,operations,anddropActionfieldsinthisstructure.When
thedropprocedurecompletes,thetoolkitusestheresultingvaluestoinitializethecorrespondingfieldsintheXmDropProcCallbackStructcallback
structurepassedtotheinitiatingclient'sdropstartcallbacks.
ThedropSiteStatusfieldinthesestructuresspecifieswhetherornotthedropsiteisvalid.Thetoolkitinitializesthevaluebasedonthe
XmNimportTargetsresourceoftheDropSiteandtheXmNexportTargetsresourceoftheDragContext.Thepossiblevaluesare
XmDROP_SITE_VALIDandXmDROP_SITE_INVALID.
Theoperationsfieldinthesestructurespecifiesthesetofoperationssupportedforthedatabeingdragged.Thetoolkitinitializesthevaluebasedonthe
XmNdragOperationsresourceoftheDragContextandtheoperationselectedbytheuser.Theoperationfieldinthesestructuresspecifiesthecurrent
operation.ThetoolkitinitializesthevaluebasedonthevalueofoperationsandtheXmNdropSiteOperationsresource.
TheanimatefieldintheXmDragProcCallbackStructspecifieswhetherthetoolkitorthereceivingclienthandlesthedragundereffectsforthedropsite.
IfthevalueisTrue,thetoolkithandlestheeffectsbasedontheXmNanimationStyleresource.Otherwisethereceiverisresponsibleforprovidingdragunder
effects.
ThedropActionfieldintheXmDropProcCallbackStructspecifiestheactionassociatedwiththedrop,whichiseitheranormaldroporahelpaction.
ThepossiblevaluesareXmDROPandXmDROP_HELP.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page749

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmDropSiteConfigureStackingOrder(1),XmDropSiteEndUpdate(1),XmDropSiteQueryStackingOrder(1),
XmDropSiteRegister(1),XmDropSiteRetrieve(1),XmDropSiteStartUpdate(1),XmDropSiteUnregister(1),
XmDropSiteUpdate(1),XmDisplay(2),XmDragContext(2),XmDragIcon(2),XmDropTransfer(2),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page750

XmDropTransfer
MotifandXtWidgetClasses
Name
XmDropTransferwidgetclassanobjectusedtostoreinformationaboutadroptransaction.
Synopsis
PublicHeader:

<Xm/DragDrop.h>

ClassName:

XmDropTransfer

ClassPointer:

xmDropTransferObjectClass

ClassHierarchy:

Object

DropTransfer

widget=XmDropTransferStart(...)
Instantiation:
Functions/Macros:

XmDropTransferAdd(),XmDropTransferStart()

Availability
Motif1.2andlater.
Description
TheDropTransferobjectstoresinformationthatthetoolkitneedstoprocessadroptransaction.AnapplicationdoesnotexplicitlycreateaDropTransferwidget,but
insteadinitiatesadatatransferbycallingXmDropTransferStart(),whichinitializesandreturnsaDropTransferwidget.IfXmDropTransferStart()
iscalledwithinanXmNdropProc,thedatatransferstartsafterthecallbackreturns.Ifnodataneedstobetransferredorthedroptransactionisafailure,an
applicationstillneedstocallXmDropTransferStart()withafailurestatus,sothatthetoolkitcancompletethedraganddropoperation.
TheXmNtransferProcresourcespecifiesaprocedureoftypeXtSelectionCallbackProcthathandlestransferringtherequestedselectiondata.This
procedureperformsinconjunctionwiththeunderlyingXtselectionmechanismsandiscalledforeachtypeofdatabeingtransferred.Targettypescanbeaddedaftera
transferhasstartedbycallingtheXmDropTransferAdd().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page751

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewResources
DropTransferdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNdropTransfers

XmCDropTransfers

XmDropTransfer
EntryRec*

NULL

CG

XmNincremental

XmCIncremental

Boolean

False

CSG

XmNnumDropTransfers

XmCNumDrop
Transfers

Cardinal

CSG

XmNtransferProc

XmCTransferProc

XtSelection
CallbackProc

NULL

CSG

XmNtransferStatus

XmCTransferStatus

unsignedchar

XmTRANSFER_
SUCCESS

CSG

XmNdropTransfers
PointertoanarrayofXmDropTransferEntryRecstructures,whichspecifiestherequestedtargetdatatypesforthesourcedata.A
XmDropTransferEntryRecisdefinedasfollows:
typedefstruct
{
XtPointerclient_data/*anyadditionalinformationnecessary*/
Atomtarget/*theselectiontargettype*/
}XmDropTransferEntryRec,*XmDropTransferEntry

Thedroptransferisdonewhenalloftheentrieshavebeenprocessed.
XmNincremental
IfTrue,thereceiverusestheXtincrementalselectiontransfermechanism.IfFalse(default),thereceiverusesatomictransfer.
XmNnumDropTransfers
ThenumberofentriesinXmNdropTransfers.Thetransferiscompleteifthevalueissetto0atanytime.
XmNtransferProc
AprocedureoftypeXtSelectionCallbackProcthatprovidestherequestedselectionvalues.Thewidgetargumentpassedtothisprocedureisthe
DropTransferwidgetandtheselectionatomis_MOTIF_DROP.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page752

XmNtransferStatus
Thecurrentstatusofthedroptransfer.Thereceivingclientupdatesthisvaluewhenthetransferendsandthevalueiscommunicatedtotheinitiator.Possiblevaluesare:
XmTRANSFER_SUCCESS
XmTRANSFER_FAILURE

InheritedResources
DropTransferinheritsthefollowingresource:
Resource

InheritedFrom

XmNdestroyCallback

Object

SeeAlso
XmDropTransferAdd(1),XmDropTransferStart(1),XmTargetsAreCompatible(1),Object(2),XmDisplay(2),
XmDragContext(2),XmDragIcon(2),XmDropTransfer(2),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page753

XmErrorDialog
MotifandXtWidgetClasses
Name
XmErrorDialoganunmanagedMessageBoxasachildofaDialogShell.
Synopsis
PublicHeader:

<Xm/MessageB.h>
widget=XmCreateErrorDialog(...)

Instantiation:
Functions/Macros:

XmCreateErrorDialog(),XmMessageBoxGetChild()

Description
AnErrorDialogisacompoundobjectcreatedbyacalltoXmCreateErrorDialog()thatanapplicationcanusetoinformtheuseraboutanytypeoferror.
AnErrorDialogconsistsofaDialogShellwithanunmanagedMessageBoxwidgetasitschild.TheMessageBoxresourceXmNdialogTypeissetto
XmDIALOG_ERROR.AnErrorDialogincludesfourcomponents:asymbol,amessage,threebuttons,andaseparatorbetweenthemessageandthebuttons.By
default,thesymbolisanoctagonwithadiagonalslash.InMotif1.2andlater,thedefaultbuttonlabelscanbelocalized.IntheClocale,andinMotif1.1,the
PushButtonsarelabeledOK,Cancel,andHelpbydefault.
DefaultResourceValues
AnErrorDialogsetsthefollowingdefaultvaluesforMessageBoxresources:
Name

Default

XmNdialogType

XmDIALOG_ERROR

XmNsymbolPixmap

xm_error

WidgetHierarchy
WhenanErrorDialogiscreatedwithaspecifiedname,theDialogShellisnamedname_popupandtheMessageBoxiscalledname.
SeeAlso
XmCreateObject(1),XmMessageBoxGetChild(1),XmDialogShell(2),XmMessageBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page754

XmFileSelectionBox
MotifandXtWidgetClasses
Name
XmFileSelectionBoxwidgetclassawidgetforselectingfiles.
Synopsis
PublicHeader:

<Xm/FileSB.h>

ClassName:

XmFileSelectionBox

ClassHierarchy:

Core Composite Constraint XmManager XmBulletinBoard


XmSelectionBox XmFileSelectionBox

ClassPointer:

xmFileSelectionBoxWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmFileSelectionBoxWidgetClass,...)

Functions/Macros: XmCreateFileSelectionBox(),
XmCreateFileSelectionDialog(),
XmFileSelectionBoxGetChild(),
XmFileSelectionDoSearch(),XmIsFileSelectionBox
()

Description
FileSelectionBoxisacompositewidgetthatisusedtotraverseadirectoryhierarchyandselectfiles.FileSelectionBoxprovidesadirectorymaskinputfield,a
scrollablelistofsubdirectories,ascrollablelistofComponents,aComponentinputfield,andagroupoffourPushButtons.Thenamesforthefiltertext,directorylist,
anddirectorylistlabelareText,DirList,andDirrespectively.TheothercomponentshavethesamenamesasthecomponentsinaSelectionBox.
InMotif1.2andlater,thebuttonlabelscanbelocalized.IntheClocale,andinMotif1.1,thePushButtonsarelabeledOK,Filter,Cancel,andHelpbydefault.
YoucancustomizeaFileSelectionBoxbyremovingexistingchildrenoraddingnewchildren.UseXmFileSelectionBoxGetChild()toretrievethewidget
IDofanexistingchildandthenunmanagethechild.WithMotif1.2andlater,multiplewidgetscanbeaddedaschildrenofaFileSelectionBox.Additionalchildrenare
addedinthesamewayasforaSelectionBox.InMotif1.1,onlyasinglewidgetcanbeaddedasachildofaFileSelectionBox.Thischildisplacedbelowthe
Componentinputfieldandactsasaworkarea.
InMotif2.0andlater,thesearchpatternandbasedirectorycanbedisplayedintwoseparatetextfields,dependingonthevalueoftheXmNpathModeresource.If
thevalueisXmPATH_MODE_FULL,thebehaviorisconsistentwiththatofMotif1.2,andthefiltertextfield(Text)containstheXmNdirMaskresource.Ifthe
valueisXmPATH_

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page755

MODE_RELATIVE,theXmNdirectoryresourceisdisplayedinanadditionaltextfieldthathasthenameDirText,withanaccompanyinglabelnamed
DirL,andthefiltertextfieldTextcontainstheXmNpatternresource.
Traits
FileSelectionBoxusestheXmQTactivatabletrait.
NewResources
FileSelectionBoxdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNdirectory

XmCDirectory

XmString

dynamic

CSG

XmNdirectoryValid

XmCDirectoryValid

Boolean

dynamic

SG

XmString
Table

dynamic

SG

dynamic

SG

XmNdirListItems

XmCDirList
Items

XmNdirListItemCount

XmCDirListItemCount int

XmNdirListLabelString

XmCDirList
LabelString

XmString

dynamic

CSG

XmNdirMask

XmCDirMask

XmString

dynamic

CSG

XmNdirSearchProc

XmCDirSearchProc

XmSearch
Proc

default
procedure

CSG

XmNdirSpec

XmCDirSpec

XmString

dynamic

CSG

XmNdirText
LabelString

XmCDirText
LabelString

XmString

NULL

SG

XmNfileFilterStyle

XmCFileFilterStyle

XtEnum

XmFILTER_NONE

SG

XmNfileListItems

XmCItems

XmString
Table

dynamic

SG

XmNfileListItemCount

XmCItemCount

int

dynamic

SG

XmNfileListLabelString

XmCFileList
LabelString

XmString

dynamic

CSG

XmNfileSearchProc

XmCFileSearchProc

XmSearchProc

default
procedure

CSG

XmNfileTypeMask

XmCFile
TypeMask

unsignedchar XmFILE_REGULAR

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page756

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNfilterLabelString

XmCFilter
LabelString

XmString

dynamic

CSG

XmNlistUpdated

XmCListUpdated

Boolean

dynamic

SG

XmNnoMatchString

XmCNoMatchString

XmString

"[]"

CSG

XmNpathMode

XmCPathMode

XtEnum

XmPATH_MODE_
FULL

CSG

XmNpattern

XmCPattern

XmString

dynamic

CSG

XmNqualifySearchDataProc XmCQualify
SearchDataProc

XmQualifyProc default
procedure

CSG

XmNdirectory
Thebasedirectorythat,incombinationwithXmNpattern,formsthedirectorymask(theXmNdirMaskresource).Thedirectorymaskdetermineswhichfiles
anddirectoriestodisplay.
XmNdirectoryValid
Aresourcethatcanbesetonlybythedirectorysearchprocedure(asspecifiedbytheXmNdirSearchProcresource).Ifthedirectorysearchprocedureis
unabletosearchthedirectorythatwaspassedtoit,itsetsXmNdirectoryValidtoFalse,andasaresult,thefilesearchprocedureisn'tcalled.
XmNdirListItems
Theitemsinthedirectorylist.Thisresourceissetonlybythedirectorysearchprocedure.AcalltoXtGetValues()returnstheactuallistitems(notacopy),so
don'thaveyourapplicationfreetheseitems.
XmNdirListItemCount
ThenumberofitemsinXmNdirListItems.Thisresourceissetonlybythedirectorysearchprocedure.
XmNdirListLabelString
Thestringthatlabelsthedirectorylist.InMotif1.2andlater,thedefaultvalueislocaledependent.IntheClocale,andinMotif1.1,thedefaultvalueis
"Directories".
XmNdirMask
Thedirectorymaskthatdetermineswhichfilesanddirectoriestodisplay.ThisvaluecombinesthevaluesoftheresourcesXmNdirectoryandXmNpattern.
XmNdirSearchProc
Theprocedurethatperformsdirectorysearches.Formostapplications,thedefaultprocedureworksjustfine.Thecalltothisprocedurecontainstwo

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page757

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

arguments:thewidgetIDoftheFileSelectionBoxandapointertoanXmFileSelectionBoxCallbackStruct.
XmNdirSpec
Thecompletespecificationofthefilepath.SynonymouswiththeXmNtextStringresourceinSelectionBox.Itistheinitialdirectoryandfilesearchthat
determinesthedefaultvalueforthisresource.
XmNdirTextLabelString
InMotif2.0andlater,specifiesthelabelforthedirectorytextfieldwhentheXmNpathModeresourceisXmPATH_MODE_RELATIVE.Thevalueisotherwise
ignored.
XmNfileFilterStyle
InMotif2.0andlater,controlsthebehaviorofthedefaultfileanddirectorysearchproceduresinthewayinwhichhiddenfilesaredisplayed.Ifenabled,anyfileor
directorybeginningwith'.'isfilteredout.Theexceptiontotheruleis'..'whichisnotfilteredoutinthedirectorysearchprocedure.Possiblevaluesare:
XmFILTER_NONE/*donotfilteroutanyfilesordirectories*/
XmFILTER_HIDDEN_FILES/*filteroutfilebeginningwith'.'*/

XmNfileListItems
Theitemsinthefilelist.SynonymouswiththeXmNlistItemsresourceinSelectionBox.Thisresourceissetonlybythefilesearchprocedure.Acallto
XtGetValues()returnstheactuallistitems(notacopy),sodon'thaveyourapplicationfreetheseitems.
XmNfileListItemCount
ThenumberofitemsinXmNfileListItems.SynonymouswiththeXmNlistItemCountresourceinSelectionBox.Thisresourceissetonlybythefile
searchprocedure.
XmNfileListLabelString
Thestringthatlabelsthefilelist.SynonymouswiththeXmNlistLabelStringresourceinSelectionBox.InMotif1.2andlater,thedefaultvalueislocale
dependent.IntheClocale,andinMotif1.1,thedefaultvalueis"Files".
XmNfileSearchProc
Theprocedurethatperformsfilesearches.Formostapplications,thedefaultprocedureworksjustfine.Thecalltothisprocedurecontainstwoarguments:thewidget
IDoftheFileSelectionBoxandapointertoanXmFileSelectionBoxCallbackStruct.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page758

XmNfileTypeMask
Determineswhetherthefilelistwilldisplayonlyregularfiles,onlydirectories,oranytypeoffile.PossiblevaluesareXmFILE_DIRECTORY,
XmFILE_REGULAR,andXmFILE_ANY_TYPE.
XmNfilterLabelString
Thestringthatlabelsthefieldinwhichthedirectorymaskistypedinbytheuser.InMotif1.2andlater,thedefaultvalueislocaledependent.IntheClocale,andin
Motif1.1,thedefaultvalueis"Filter".
XmNlistUpdated
Aresourcethatcanbesetonlybythedirectorysearchprocedureorbythefilesearchprocedure.ThisresourceissettoTrueifthedirectoryorfilelistwasupdated
byasearchprocedure.
XmNnoMatchString
AstringthatdisplaysinthefilelistwhentherearenoComponentstodisplay.
XmNpathMode
InMotif2.0andlater,specifiesthewayinwhichthefilterstringispresentedinthefileselectionbox.Thelayoutcaneithercontainasingletextfieldforthefilter,as
specifiedbytheXmNdirMaskresource,ortwoseparatetextfieldscontainingtheXmNpatternandXmNdirectoryresources.Possiblevaluesare:
XmPATH_MODE_FULL/*singletextfieldforXmNdirMask*/
XmPATH_MODE_RELATIVE/*twotextfieldsforXmNpattern/XmNdirectory*/

WhenXmNpathModeisXmPATH_MODE_RELATIVE,thetextfieldassociatedwiththeXmNpatternresourceislabeledusingthevalueofthe
XmNfilterLabelStringresource,andthetextfieldassociatedwiththeXmNdirectoryresourceislabeledfromthe
XmNdirTextLabelStringvalue.
XmNpattern
Thefilesearchpatternthat,incombinationwithXmNdirectory,formsthedirectorymask(theXmNdirMaskresource).Thedirectorymaskdetermineswhich
filesanddirectoriestodisplay.IftheXmNpatternresourcedefaultstoNULLorisempty,apatternformatchingallfileswillbeused.
XmNqualifySearchDataProc
Theprocedurethatgeneratesavaliddirectorymask,basedirectory,andsearchpatterntobeusedbyXmNdirSearchProcandXmNfileSearchProc
(thesearchproceduresfordirectoriesandfiles).Formostapplications,thedefaultprocedureworksjustfine.Thecalltothisprocedurecontainsthreearguments:the
widgetIDoftheFileSelectionBox,apointertoanXmFileSelectionBox

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page759

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

CallbackStructcontainingtheinputdata,andapointertoanXmFileSelectionBoxCallbackStructthatcontainstheoutputdata.
CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*reasonthatthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
XmStringvalue/*currentvalueofXmNdirSpecresource*/
intlength/*numberofbytesinvaluemember*/
XmStringmask/*currentvalueofXmNdirMaskresource*/
intmask_length/*numberofbytesinmaskmember*/
XmStringdir/*currentbasedirectory*/
intdir_length/*numberofbytesindirmember*/
XmStringpattern/*currentsearchpattern*/
intpattern_length/*numberofbytesinpatternmember*/
}XmFileSelectionBoxCallbackStruct

InheritedResources
FileSelectionBoxinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.FileSelectionBoxsetsthedefault
valuesofXmNautoUnmanagetoFalseandXmNdialogTypetoXmDIALOG_FILE_SELECTION.Italsosetsthedefaultvaluesof
XmNlistItemsandXmNlistItemCountdynamically.ThedefaultvalueofXmNborderWidthisresetto0byManager.BulletinBoardsetsthevalueof
XmNinitialFocustoXmNdefaultButtonandresetsthedefaultXmNshadowThicknessfrom0to1iftheFileSelectionBoxisachildofa
DialogShell.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNlistItemCount

XmSelectionBox

XmNallowOverlap

XmBulletinBoard

XmNlistItems

XmSelectionBox

XmNancestorSensitive

Core

XmNlistLabelString

XmSelectionBox

XmNapplyCallback

XmSelectionBox

XmNlistVisible
ItemCount

XmSelectionBox

XmNapplyLabelString

XmSelectionBox

XmNmapCallback

XmBulletinBoard

XmNautoUnmanage

XmBulletinBoard

XmNmappedWhenManaged

Core

XmNbackground

Core

XmNmarginHeight

XmBulletinBoard

XmNbackgroundPixmap

Core

XmNmarginWidth

XmBulletinBoard

XmNborderColor

Core

XmNminimizeButtons

XmSelectionBox

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page760

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNborderPixmap

Core

XmNmustMatch

XmSelectionBox

XmNborderWidth

Core

XmNnavigationType

XmManager

XmNbottomShadowColor

XmManager

XmNnoMatchCallback

XmSelectionBox

XmNbottomShadowPixmap

XmManager

XmNnoResize

XmBulletinBoard

XmNbuttonFontList

XmBulletinBoard XmNnumChildren

Composite

XmNbuttonRenderTable

XmBulletinBoard XmNokCallback

XmSelectionBox

XmNcancelButton

XmBulletinBoard XmNokLabelString

XmSelectionBox

XmNcancelCallback

XmSelectionBox

XmNpopupHandler
Callback

XmManager

XmNcancelLabelString

XmSelectionBox

XmNresizePolicy

XmBulletinBoard

XmNchildPlacement

XmSelectionBox

XmNscreen

Core

XmNchildren

Composite

XmNselection
LabelString

XmSelectionBox

XmNcolormap

Core

XmNsensitive

Core

XmNdefaultButton

XmBulletinBoard XmNshadowThickness

XmManager

XmNdefaultPosition

XmBulletinBoard XmNshadowType

XmBulletinBoard

XmNdepth

Core

XmNstringDirection

XmManager

XmNdestroyCallback

Core

XmNtextAccelerators

XmSelectionBox

XmNdialogStyle

XmBulletinBoard XmNtextColumns

XmSelectionBox

XmNdialogTitle

XmBulletinBoard XmNtextFontList

XmBulletinBoard

XmNdialogType

XmSelectionBox

XmBulletinBoard

XmNfocusCallback

XmBulletinBoard XmNtextString

XmSelectionBox

XmNforeground

XmManager

XmNtextTranslations

XmBulletinBoard

XmNheight

Core

XmNtopShadowColor

XmManager

XmNhelpCallback

XmManager

XmNtopShadowPixmap

XmManager

XmNhelpLabelString

XmSelectionBox

XmNtranslations

Core

XmNhighlightColor

XmManager

XmNtraversalOn

XmManager

XmNhighlightPixmap

XmManager

XmNunitType

XmManager

XmNinitialFocus

XmManager

XmNunmapCallback

XmBulletinBoard

XmNinitialResources
Persistent

Core

XmNuserData

XmManager

XmNinsertPosition

Composite

XmNwidth

Core

XmNlabelFontList

XmBulletinBoard XmNx

Core

XmNlabelRenderTable

XmBulletinBoard XmNy

Core

XmNlayoutDirection

XmManager

XmNtextRenderTable

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page761

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Translations
ThetranslationsforFileSelectionBoxareinheritedfromSelectionBox.
ActionRoutines
FileSelectionBoxdefinesthefollowingactionroutines:
SelectionBoxUpOrDown(flag)
Replacestheselectiontextorthefiltertext,dependingonwhichonehasthekeyboardfocus.Thatis,thisactionreplaceseither:thetextstringintheselectionareawith
anitemfromthefilelist,orthetextstringinthedirectorymask(filter)areawithanitemfromthedirectorylist.
Thevalueofflagdetermineswhichfilelistitemorwhichdirectorylistitemisselectedasthereplacementstring.Aflagvalueof0,1,2,or3selectsthe
previous,next,first,orlastitem,respectively,oftheappropriatelist.
SelectionBoxRestore()
Replacestheselectiontextorthefiltertext,dependingonwhichonehasthekeyboardfocus.Thatis,thisactionreplaceseither:thetextstringintheselectionareawith
thecurrentlyselectediteminthefilelist(clearingtheselectionareaifnolistitemisselected),orthetextstringinthefilterareawithanewdirectorymask(whichis
formedbycombiningthevaluesoftheXmNdirectoryandXmNpatternresources).
AdditionalBehavior
FileSelectionBoxhasthefollowingadditionalbehavior:
MAnyKCancel
IftheCancelbuttonissensitive,invokesitsXmNactivateCallbackcallbacks.IfthereisnoCancelbutton,theeventispassedtotheparentifitisamanager.
KActivate
IntheComponenttextinputarea,firstinvokestheXmNactivateCallbackcallbacksforthetextandtheninvokeseithertheXmNnoMatchCallbackor
theXmNokCallbackcallbacksbasedonthevalueofXmNmustMatch.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page762

Inthedirectorymasktextinputarea,firstinvokestheXmNactivateCallbackcallbacksforthetextandthenstartsadirectoryandfilesearchandinvokes
theXmNapplyCallbackcallbacks.
Inthedirectorylist,invokestheXmNdefaultActionCallbackcallback,beginsadirectoryandfilesearch,andinvokestheXmNapplyCallback
callbacks.
Inthefilelist,invokesXmNdefaultActionCallbackandXmNokCallbackcallbacks.
Whenneitheroftheseareasnoranybuttonhasthekeyboardfocus,itinvokesthecallbacksineitherXmNnoMatchCallbackorXmNokCallback
dependingonthevalueofXmNmustMatchandwhetherornottheselectiontextmatchesafileinthefilelist.
<DoubleClick>
Inthedirectoryorfilelist,hasthesamebehaviorasKActivate.
<SingleSelect>or<BrowseSelect>
Inthedirectorylist,composesadirectorymaskusingtheselecteddirectoryitemandthecurrentpattern.Inthefilelist,usestheselectedfileitemtoreplacethe
selectiontext.
BTransfer
InMotif1.2andlater,inthefileordirectorylist,startsadraganddropoperationusingtheselecteditemsinthelist.IfBTransferispressedoveranunselected
item,onlythatitemisusedinthedraganddropoperation.
<ApplyButtonActivated>
StartsadirectoryandfilesearchandinvokestheXmNapplyCallbackcallbacks.
<OKButtonActivated>
InvokeseithertheXmNnoMatchCallbackorXmNokCallbackcallbacksbasedonthevalueofXmNmustMatchandwhetherornottheselectiontext
matchesafileinthefilelist.
<CancelButtonActivated>
InvokestheXmNcancelCallbackcallbacks.
<HelpButtonActivated>
InvokestheXmNhelpCallbackcallbacks.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page763

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmCreateObject(1),XmFileSelectionBoxGetChild(1),XmFileSelectionDoSearch(1),Composite(2),
Constraint(2),Core(2),XmBulletinBoard(2),XmFileSelectionDialog(2),XmManager(2),XmSelectionBox
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page764

XmFileSelectionDialog
MotifandXtWidgetClasses
Name
XmFileSelectionDialoganunmanagedFileSelectionBoxasachildofaDialogShell.
Synopsis
PublicHeader:

<Xm/FileSB.h>
widget=XmCreateFileSelectionDialog(...)

Instantiation:
Functions/Macros:

XmCreateFileSelectionBox(),
XmFileSelectionBoxGetChild(),
XmCreateFileSelectionDialog(),
XmFileSelectionDoSearch(),XmIsFileSelectionBox
()

Description
FileSelectionDialogisacompoundobjectcreatedbyacalltoXmCreateFileSelectionDialog()thatanapplicationcanusetoallowausertoselecta
filefromadialogbox.AFileSelectionDialogconsistsofaDialogShellwithanunmanaged.FileSelectionBoxwidgetasitschild.TheSelectionBoxresource
XmNdialogTypeissettoXmDIALOG_FILE_SELECTION.
AFileSelectionDialogprovidesadirectorymaskinputfield,ascrollablelistofsubdirectories,ascrollablelistofComponents,aComponentinputfield,andagroupof
fourPushButtons.InMotif1.2andlater,thebuttonlabelscanbelocalized.IntheClocale,andinMotif1.1,thePushButtonsarelabeledOK,Filter,Cancel,and
Helpbydefault.
DefaultResourceValues
AFileSelectionDialogsetsthefollowingdefaultvaluesforitsresources:
Name

Default

XmNdialogType

XmDIALOG_FILE_SELECTION

WidgetHierarchy
WhenaFileSelectionDialogiscreatedwithaspecifiedname,theDialogShellisnamedname_popupandtheFileSelectionBoxiscalledname.
SeeAlso
XmCreateObject(1),XmFileSelectionBoxGetChild(1),XmFileSelectionDoSearch(1),XmFileSelectionBox
(2),XmDialogShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page765

XmForm
MotifandXtWidgetClasses
Name
XmFormwidgetclassacontainerwidgetthatconstrainsitschildren.
Synopsis
PublicHeader:

<Xm/Form.h>

ClassName:

XmForm

ClassHierarchy:

Core

ClassPointer:

Composite

Constraint

XmManager XmBulletinBoard XmForm

xmFormWidgetClass
widget=XtCreateWidget(name,xmFormWidgetClass,...)

Instantiation:
Functions/Macros:

XmCreateForm(),XmCreateFormDialog(),XmIsForm()

Description
FormisacontainerwidgetthatconstrainsitschildrensoastodefinetheirlayoutwhentheFormisresized.ConstraintsonthechildrenofaFormspecifythe
attachmentsforeachofthefoursidesofachild.Childrenmaybeattachedtoeachother,toedgesoftheForm,ortorelativepositionswithintheForm.
NewResources
Formdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNfractionBase

XmCMaxValue

int

100

CSG

XmNhorizontalSpacing

XmCSpacing

Dimension

CSG

XmNrubberPositioning

XmCRubberPositioning

Boolean

False

CSG

XmNverticalSpacing

XmCSpacing

Dimension

CSG

XmNfractionBase
Thedenominatorpartofthefractionthatdescribesachild'srelativepositionwithinaForm.Thenumeratorofthisfractionisoneofthefourpositionalconstraint
resources:XmNbottomPosition,XmNleftPosition,XmNrightPosition,orXmNtopPosition.Forexample,supposeyouusethe
defaultXmNfractionBaseof100.Then,ifyouspecifyXmNtopPositionas30,thetopofthechildwillremaininvariablyattachedtoalocationthatis
30/100(or30percent)fromthetopoftheForm.(Inotherwords,resizingthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page766

Form'sheightmightchangetheabsolutepositionofthechild'stop,butnotitspositionrelativetothetopoftheForm.)Similarly,avalueof50for
XmNleftPositionensuresthattheleftsideofthechildisattached50/100fromtheleftoftheForm(orinthiscase,halfwaybetweentheleftandrightside).
Notethatthesefractionsareimplementedonlywhenthechild'scorrespondingattachmentconstraintissettoXmATTACH_POSITION.(Theattachment
constraintsareXmNbottomAttachment,XmNleftAttachment,XmNrightAttachment,andXmNtopAttachment.)
XmNhorizontalSpacing
Theoffsetforrightandleftattachments.
XmNrubberPositioning
Definesthedefaultbehaviorofachild'stopandleftside,intheabsenceofothersettings.IfthisresourceisFalse(default),thechild'stopandleftsidesare
positionedusingabsolutevalues.IfTrue,thechild'stopandleftsidesarepositionedrelativetothesizeoftheForm.
XmNverticalSpacing
Theoffsetfortopandbottomattachments.
NewConstraintResources
Formdefinesthefollowingconstraintresourcesforitschildren:
Name

Class

Type

Default

Access

XmNbottomAttachment

XmCAttachment

unsignedchar

XmATTACH_NONE

CSG

XmNbottomOffset

XmCOffset

int

CSG

XmNbottomPosition

XmCAttachment

int

CSG

XmNbottomWidget

XmCWidget

Widget

NULL

CSG

XmNleftAttachment

XmCAttachment

unsignedchar

XmATTACH_NONE

CSG

XmNleftOffset

XmCOffset

int

CSG

XmNleftPosition

XmCAttachment

int

CSG

XmNleftWidget

XmCWidget

Widget

NULL

CSG

XmNresizable

XmCBoolean

Boolean

True

CSG

XmNrightAttachment

XmCAttachment

unsignedchar

XmATTACH_NONE

CSG

XmNrightOffset

XmCOffset

int

CSG

XmNrightPosition

XmCAttachment

int

CSG

XmNrightWidget

XmCWidget

Widget

NULL

CSG

XmNtopAttachment

XmCAttachment

unsignedchar

XmATTACH_NONE

CSG

XmNtopOffset

XmCOffset

int

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page767

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNtopPosition

XmCAttachment

int

CSG

XmNtopWidget

XmCWidget

Widget

NULL

CSG

XmNbottomAttachment
Themethodofattachmentforthechild'sbottomside.Eachofthefourattachmentresources(XmNtopAttachment,XmNbottomAttachment,
XmNleftAttachment,andXmNrightAttachment)hasthefollowingpossiblevalues.Thecommentsbelowrefertoacorrespondingedge(top,bottom,
left,orright)ofthechildwidgetwithintheForm.
XmATTACH_NONE/*remainsunattached*/
XmATTACH_FORM/*attachedtosameedgeofForm*/
XmATTACH_OPPOSITE_FORM/*attachedtootheredgeofForm*/
XmATTACH_WIDGET/*abutsanadjacentwidget*/
XmATTACH_OPPOSITE_WIDGET/*attachedtootheredgeofadjacentwidget*/
XmATTACH_POSITION/*relativetoadimensionofForm*/
XmATTACH_SELF/*relativetoitscurrentposition&toForm*/

XmNbottomOffset
Thedistancebetweenthechild'sbottomsideandtheobjectit'sattachedto.Offsetsareabsolute.Offsetsareoftypeintandmaynotberesolutionindependent.
XmNbottomPosition
UsedinconjunctionwithXmNfractionBasetocalculatethepositionofthebottomofachild,relativetothebottomoftheForm.Thisresourcehasnoeffect
unlessthechild'sXmNbottomAttachmentresourceissettoXmATTACH_POSITION.(SeeXmNfractionBasefordetails.)
XmNbottomWidget
Thenameofthewidgetorgadgetthatservesastheattachmentpointforthebottomofthechild.Tousethisresource,settheXmNbottomAttachment
resourcetoeitherXmATTACH_WIDGETorXmATTACH_OPPOSITE_WIDGET.
XmNleftAttachment
Themethodofattachmentforthechild'sleftside.
XmNleftOffset
Thedistancebetweenthechild'sleftsideandtheobjectit'sattachedto.Offsetsareabsolute.Offsetsareoftypeintandmaynotberesolutionindependent.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page768

XmNleftPosition
UsedinconjunctionwithXmNfractionBasetocalculatethepositionoftheleftsideofachild,relativetotheleftsideoftheForm.Thisresourcehasnoeffect
unlessthechild'sXmNleftAttachmentresourceissettoXmATTACH_POSITION.(SeeXmNfractionBasefordetails.)
XmNleftWidget
Thenameofthewidgetorgadgetthatservesastheattachmentpointfortheleftsideofthechild.Tousethisresource,settheXmNleftAttachmentresourceto
eitherXmATTACH_WIDGETorXmATTACH_OPPOSITE_WIDGET.
XmNresizable
IfTrue(default),achild'sresizerequestisacceptedbytheForm,providedthatthechildisn'tconstrainedbyitsattachments.Thatis,ifboththeleftandrightsidesof
achildareattached,orifboththetopandbottomareattached,theresizerequestfails,whereasifthechildhasonlyonehorizontaloroneverticalattachment,the
resizerequestisgranted.IfthisresourceisFalse,thechildisneverresized.
XmNrightAttachment
Themethodofattachmentforthechild'srightside.
XmNrightOffset
Thedistancebetweenthechild'srightsideandtheobjectit'sattachedto.Offsetsareabsolute.Offsetsareoftypeintandmaynotberesolutionindependent.
XmNrightPosition
UsedinconjunctionwithXmNfractionBasetocalculatethepositionoftherightsideofachild,relativetotherightsideoftheForm.Thisresourcehasnoeffect
unlessthechild'sXmNrightAttachmentresourceissettoXmATTACH_POSITION.(SeeXmNfractionBasefordetails.)
XmNrightWidget
Thenameofthewidgetorgadgetthatservesastheattachmentpointfortherightsideofthechild.Tousethisresource,settheXmNrightAttachment
resourcetoeitherXmATTACH_WIDGETorXmATTACH_OPPOSITE_WIDGET.
XmNtopAttachment
Themethodofattachmentforthechild'stopside.
XmNtopOffset
Thedistancebetweenthechild'stopsideandtheobjectit'sattachedto.Offsetsareabsolute.Offsetsareoftypeintandmaynotberesolutionindependent.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page769

XmNtopPosition
UsedinconjunctionwithXmNfractionBasetocalculatethepositionofthetopofachild,relativetothetopoftheForm.Thisresourcehasnoeffectunlessthe
child'sXmNtopAttachmentresourceissettoXmATTACH_POSITION.(SeeXmNfractionBasefordetails.)
XmNtopWidget
Thenameofthewidgetorgadgetthatservesastheattachmentpointforthetopofthechild.Tousethisresource,settheXmNtopAttachmentresourceto
eitherXmATTACH_WIDGETorXmATTACH_OPPOSITE_WIDGET.
InheritedResources
Forminheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Formsetsthedefaultvaluesof
XmNmarginWidthandXmNmarginHeightto0.ThedefaultvalueofXmNborderWidthisresetto0byManager.BulletinBoardsetsthevalueof
XmNinitialFocustoXmNdefaultButtonandresetsthedefaultXmNshadowThicknessfrom0to1iftheFormwidgetisachildofDialogShell.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNlabelFontList

XmBulletinBoard

XmNallowOverlap

XmBulletinBoard

XmNlabelRenderTable

XmBulletinBoard

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNautoUnmanage

XmBulletinBoard

XmNmapCallback

XmBulletinBoard

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNmarginHeight

XmBulletinBoard

XmNborderColor

Core

XmNmarginWidth

XmBulletinBoard

XmNborderPixmap

Core

XmNnavigationType

XmManager

XmNborderWidth

Core

XmNnoResize

XmBulletinBoard

XmNbottomShadowColor

XmManager

XmNnumChildren

Composite

XmNbottomShadowPixmap

XmManager

XmNpopupHandler
Callback

XmManager

XmNbuttonFontList

XmBulletinBoard

XmNresizePolicy

XmBulletinBoard

XmNbuttonRenderTable

XmBulletinBoard

XmNscreen

Core

XmNcancelButton

XmBulletinBoard

XmNsensitive

Core

XmNchildren

Composite

XmNshadowThickness

XmManager

XmNcolormap

Core

XmNshadowType

XmBulletinBoard

XmNdefaultButton

XmBulletinBoard

XmNstringDirection

XmManager

XmNdefaultPosition

XmBulletinBoard

XmNtextFontList

XmBulletinBoard

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page770

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNdepth

Core

XmNtextRenderTable

XmBulletinBoard

XmNdestroyCallback

Core

XmNtextTranslations

XmBulletinBoard

XmNdialogStyle

XmBulletinBoard

XmNtopShadowColor

XmManager

XmNdialogTitle

XmBulletinBoard

XmNtopShadowPixmap

XmManager

XmNfocusCallback

XmBulletinBoard

XmNtranslations

Core

XmNforeground

XmManager

XmNtraversalOn

XmManager

XmNheight

Core

XmNunitType

XmManager

XmNhelpCallback

XmManager

XmNunmapCallback

XmBulletinBoard

XmNhighlightColor

XmManager

XmNuserData

XmManager

XmNhighlightPixmap

XmManager

XmNwidth

Core

XmNinitialFocus

XmManager

XmNx

Core

XmNinitialResources
Persistent

Core

XmNy

Core

XmNinsertPosition

Composite

Translations
ThetranslationsforFormareinheritedfromXmBulletinBoard.
SeeAlso
XmCreateObject(1),Composite(2),Constraint(2),Core(2),XmBulletinBoard(2),XmFormDialog(2),
XmManager(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page771

XmFormDialog
MotifandXtWidgetClasses
Name
XmFormDialoganunmanagedFormasachildofaDialogShell.
Synopsis
PublicHeader:

<Xm/Form.h>
widget=XmCreateFormDialog(...)

Instantiation:
Functions/Macros:

XmCreateFormDialog()

Description
AFormDialogisacompoundobjectcreatedbyacalltoXmCreateFormDialog()thatisusefulforcreatingcustomdialogs.AFormDialogconsistsofa
DialogShellwithanunmanagedFormwidgetasitschild.TheFormDialogdoesnotcontainanylabels,buttons,orotherdialogcomponentsthesecomponentsare
addedbytheapplication.
WidgetHierarchy
WhenaFormDialogiscreatedwithaspecifiedname,theDialogShellisnamedname_popupandtheFormiscalledname.
SeeAlso
XmCreateObject(1),XmDialogShell(2),XmForm(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page772

XmFrame
MotifandXtWidgetClasses
Name
XmFramewidgetclassamanagerwidgetthatplacesaborderaroundasinglechild.
Synopsis
PublicHeader:

<Xm/Frame.h>

ClassName:

XmFrame

ClassHierarchy:

Core Composite

Constraint

XmManager XmFrame

ClassPointer:

xmFrameWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmFrameWidgetClass,...)

Functions/Macros:

XmCreateFrame(),XmIsFrame()

Description
FrameisasimplesubclassofManagerthatplacesathreedimensionalborderaroundasinglechild.FrameisusedtoprovidethetypicalMotifstyleappearancefor
widgetclassesthatdonothaveavisibleframe,suchasRowColumn.
AsofMotif1.2,aFramecanhavetwochildren:aworkareachildandatitlechild.Thewidgetusesconstraintresourcestoindicatethetypeofeachchildandto
specifythealignmentofthetitlechild.
NewResources
Framedefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNmarginWidth

XmCMarginWidth

Dimension

CSG

XmNmarginHeight

XmCMarginHeight

Dimension

CSG

XmNshadowType

XmCShadowType

unsignedchar

dynamic

CSG

XmNmarginHeight
ThespacingbetweenthetoporbottomofaFramewidget'schildandtheshadowoftheFramewidget.
XmNmarginWidth
ThespacingbetweentherightorleftsideofaFramewidget'schildandtheshadowoftheFramewidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page773

XmNshadowType
ThestyleinwhichFramewidgetsaredrawn.Possiblevaluesare:
XmSHADOW_IN/*widgetappearsinset*/
XmSHADOW_OUT/*widgetappearsoutset*/
XmSHADOW_ETCHED_IN/*doublelinewidgetappearsinset*/
XmSHADOW_ETCHED_OUT/*doublelinewidgetappearsraised*/

NewConstraintResources
AsofMotif1.2,Framedefinesthefollowingconstraintresourcesforitschildren:
Name

Class

Type

Default

Access

XmNchildType

XmCChildType

unsigned
char

XmFRAME_
WORKAREA_CHILD

CSG

XmNchildHorizontal
Alignment

XmCChildHorizontal
Alignment

unsigned
char

XmALIGNMENT_
BEGINNING

CSG

XmNchildHorizontal
Spacing

XmCChildHorizontal
Spacing

Dimension

dynamic

CSG

XmNchildVertical
Alignment

XmCChildVertical
Alignment

unsigned
char

XmALIGNMENT_CENTER

CSG

XmNframeChildType

XmCFrameChildType

unsigned
char

XmFRAME_
WORKAREA_CHILD

CSG

XmNchildType
Thetypeofthechild.Framesupportsonetitleandoneworkareachild.Possiblevaluesare:
XmFRAME_TITLE_CHILD/*childisthetitle*/
XmFRAME_WORKAREA_CHILD/*childistheworkarea*/
XmFRAME_GENERIC_CHILD/*childisignored*/

InMotif2.0andlater,theXmNchildTyperesourceisdeprecatedXmNframeChildTypeisthepreferredresource.
XmNchildHorizontalAlignment
Thealignment(lefttoright)foraFrame'stitle.Possiblevaluesare:
XmALIGNMENT_BEGINNING
XmALIGNMENT_END

XmALIGNMENT_CENTER

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page774

XmNchildHorizontalSpacing
TheminimumdistancebetweenthetitletextandtheFrameshadow.Thetitleisclippedtomaintainthisdistance.ThevalueofXmNmarginWidthisusedasthe
defaultvalue.
XmNchildVerticalAlignment
ThealignmentoftheFrame'stitlerelativetothetopshadowoftheFrame.Possiblevaluesare:
XmALIGNMENT_BASELINE_BOTTOM

XmALIGNMENT_BASELINE_TOP

XmALIGNMENT_WIDGET_TOP

XmALIGNMENT_CENTER

XmALIGNMENT_WIDGET_BOTTOM

XmNframeChildType
IntroducedinMotif2.0aspartofarationalizationinthenamingofconstraintresources.ThebehavioroftheXmNframeChildTyperesourceisidenticalinall
respectstotheXmNchildTyperesource,whichisnowdeprecated.
InheritedResources
Frameinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Framesetsthedefaultvalueof
XmNshadowThicknessto1iftheFrameisachildofaShelland2otherwise.ThedefaultvalueofXmNborderWidthisresetto0byManager.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinitialResources
Persistent

Core

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNnavigationType

XmManager

XmNborderColor

Core

XmNnumChildren

Composite

XmNborderPixmap

Core

XmNpopupHandlerCallback

XmManager

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmManager

XmNsensitive

Core

XmNbottomShadowPixmap

XmManager

XmNshadowThickness

XmManager

XmNchildren

Composite

XmNstringDirection

XmManager

XmNcolormap

Core

XmNtopShadowColor

XmManager

XmNdepth

Core

XmNtopShadowPixmap

XmManager

XmNdestroyCallback

Core

XmNtranslations

Core

XmNforeground

XmManager

XmNtraversalOn

XmManager

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page775

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNheight

Core

XmNunitType

XmManager

XmNhelpCallback

XmManager

XmNuserData

XmManager

XmNhighlightColor

XmManager

XmNwidth

Core

XmNhighlightPixmap

XmManager

XmNx

Core

XmNinitialFocus

XmManager

XmNy

Core

XmNinsertPosition

Composite

Translations
ThetranslationsforFrameareinheritedfromXmManager.
SeeAlso
XmCreateObject(1),Composite(2),Constraint(2),Core(2),XmManager(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page776

XmGadget
MotifandXtWidgetClasses
Name
XmGadgetwidgetclassthefundamentalclassforwindowlesswidgets.
Synopsis
PublicHeader:

<Xm/Xm.h>

ClassName:

XmGadget

ClassHierarchy:

Object

ClassPointer:

xmGadgetClass

Instantiation:

Gadgetisametaclassandisnotnormallyinstantiated.

Functions/Macros:

XmIsGadget()

RectObj XmGadget

Description
Gadgetisasupportingsuperclassforothergadgetclasses.Gadgettakescareofdrawingandhighlightingbordershadowsaswellasmanagingtraversal.
PriortoMotif2.0,agadgetisdrawnusingpixmapandcolorresourcestakenfromtheManagerparent.ChangingsucharesourceinaManager(forexample,
XmNforeground)alsoaffectsallgadgetchildren.Gadgetssharingthesameparentthereforealsosharethesamegeneralappearance.
InMotif2.0andlater,theGadgetclasssupportsindependentappearanceresources.Forexample,Gadgetssharingthesameparentcanhavedifferent
XmNforegroundvalues.WhereaparticularappearanceresourceisunspecifiedforaGadget,thedefaultvalueistakenfromtheManagerparent.
Traits
GadgetholdstheXmQTspecifyLayoutDirection,XmQTaccessColors,andXmQTspecifyUnitTypetraits,whichareinheritedbyany
derivedclasses,andusestheXmQTspecifyUnhighlighttrait,
NewResources
Gadgetdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNbackground

XmCBackground

Pixel

dynamic

CSG

XmNbackgroundPixmap

XmCPixmap

Pixmap

seebelow

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page777

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNbottomShadow
Color

XmCBottomShadow
Color

Pixel

dynamic

CSG

XmNbottomShadow
Pixmap

XmCBottomShadow
Pixmap

Pixmap

dynamic

CSG

XmNforeground

XmCForeground

Pixel

dynamic

CSG

XmNhighlightColor

XmCHighlightColor

Pixel

dynamic

CSG

XmNhighlightOnEnter

XmCHighlightOnEnter

Boolean

False

CSG

XmNhighlightPixmap

XmChighlightPixmap

Pixmap

dynamic

CSG

XmNhighlight
Thickness

XmCHighlight
Thickness

Dimension

dynamic

CSG

XmNlayoutDirection

XmCLayoutDirection

XmDirection

dynamic

CG

XmNnavigationType

XmCNavigationType

XmNavigatio
Type

XmNONE

CSG

XmNshadowThickness

XmCShadowThickness

Dimension

dynamic

CSG

XmNtopShadowColor

XmCTopShadowColor

Pixel

dynamic

CSG

XmNtopShadowPixmap

XmCTopShadowPixmap

Pixmap

dynamic

CSG

XmNtraversalOn

XmCTraversalOn

Boolean

True

CSG

XmNunitType

XmCUnitType

unsignedchar

dynamic

CSG

XmNuserData

XmCUserData

XtPointer

NULL

CSG

XmNbackground
InMotif2.0andlater,specifiesthebackgroundcolorfortheGadget.
XmNbackgroundPixmap
InMotif2.0andlater,specifiesthebackgroundpixmapfortilingtheGadget.ThedefaultisXmUNSPECIFIED_PIXMAP.
XmNbottomShadowColor
Specifiesthecolorusedindrawingthebordershadow'sbottomandrightsides.
XmNbottomShadowPixmap
InMotif2.0andlater,specifiesthepixmapfordrawingthebottomandrightsidesoftheGadgetbordershadow.
XmNforeground
InMotif2.0andlater,specifiestheforegroundcolorfortheGadget.
XmNhighlightColor
Specifiesthecolorusedindrawingthehighlightingrectangle.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page778

XmNhighlightOnEnter
Determineswhethertodrawagadget'shighlightingrectanglewheneverthecursormovesintothegadget.Thisresourceappliesonlywhentheshellhasafocuspolicy
ofXmPOINTER.IftheXmNhighlightOnEnterresourceisTrue,highlightingisdrawnifFalse(default),highlightingisnotdrawn.
XmNhighlightPixmap
InMotif2.0andlater,specifiesthepixmapusedfordrawingthehighlightingrectangle.
XmNhighlightThickness
Thethicknessofthehighlightingrectangle.InMotif2.0andearlier,thedefaultis2.InMotif2.1andlater,thedefaultdependsupontheXmDisplay,hwXmN
enableThinThicknessXmNenableThinThicknessresource:ifTrue,thedefaultis1otherwise,itis2.
XmNlayoutDirection
InMotif2.0andlater,specifiesthedirectioninwhichcomponents(forexample,strings)oftheGadgetarelaidout.Ifunspecified,thevalueisinheritedfromthe
Managerparent,orfromthenearestancestorwhichhastheXmQTspecifyLayoutDirectiontrait.PossiblevaluesareXmLEFT_TO_RIGHTand
XmRIGHT_TO_LEFT.
XmNnavigationType
Determinesthewayinwhichgadgetsaretobetraversedduringkeyboardnavigation.Possiblevaluesare:
XmNONE/*excludefromkeyboardnavigation(default*/
/*fornonshellparent)*/
XmTAB_GROUP/*includeinkeyboardnavigation(default*/
/*whenparentisashell)*/
XmSTICKY_TAB_GROUP/*includeinkeyboardnavigation,evenif*/
/*XmAddTabGroup()wascalled*/
XmEXCLUSIVE_TAB_GROUP/*applicationdefinesorderofnavigation*/

XmNshadowThickness
Thethicknessoftheshadowborder.InMotif2.0andearlier,thedefaultis2.InMotif2.1andlater,thedefaultdependsupontheXmDisplay
XmNenableThinThicknessresource:ifTrue,thedefaultis1otherwise2.
XmNtopShadowColor
Specifiesthecolorusedindrawingthebordershadow'stopandleftsides.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page779

XmNtopShadowPixmap
InMotif2.0andlater,specifiesthepixmapusedindrawingthebordershadow'stopandleftsides.
XmNtraversalOn
IfTrue(default),traversalofthisgadgetismadepossible.
XmNunitType
Themeasurementunitstouseinresourcesthatspecifyasizeorpositionforexample,anyresourcesofdatatypeDimension(whosenamesgenerallyincludeoneof
thewords''Margin"or"Thickness").ForagadgetwhoseparentisaXmManagersubclass,thedefaultvalueiscopiedfromthisparent(providedthevaluehasn'tbeen
explicitlysetbytheapplication)otherwise,thedefaultisXmPIXELS.Possiblevaluesare:
XmPIXELS

Xm100TH_POINTS

Xm100TH_MILLIMETERS

Xm100TH_FONT_UNITS

Xm1000TH_INCHES

XmINCHES(Motif2.0)

XmPOINTS(Motif2.0)

XmFONT_UNITS(Motif2.0)

XmNuserData
Apointertodatathattheapplicationcanattachtothegadget.Thisresourceisunusedinternally.
CallbackResources
Gadgetdefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNhelpCallback

XmCR_HELP

XmNhelpCallback
Listofcallbacksthatarecalledwhenhelpisrequested.
CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
}XmAnyCallbackStruct

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page780

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

InheritedResources
Gadgetinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Gadgetresetsthedefaultvalueof
XmNborderWidthfrom1to0.
Resource

InheritedFrom

Resource

InheritedFrom

XmNancestorSensitive

RectObj

XmNsensitive

RectObj

XmNborderWidth

RectObj

XmNwidth

RectObj

XmNdestroyCallback

Object

XmNx

RectObj

XmNheight

RectObj

XmNy

RectObj

Behavior
SinceGadgetscannothavetranslationsassociatedwiththem,aGadget'sbehavioriscontrolledbytheXmManagerwidgetthatcontainstheGadget.IfaGadgethas
thekeyboardfocus,theXmManagerhandlespassingeventstotheGadget.
SeeAlso
Object(2),RectObj(2),XmManager(2),XmScreen(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page781

XmGrabShell
MotifandXtWidgetClasses
Name
XmGrabShellwidgetclassapopupshellthatgrabsthekeyboardandpointerwhenmapped.
Synopsis
PublicHeader:

<Xm/GrabShell.h>

ClassName:

XmGrabShell

ClassHierarchy:

Core Composite

Shell

WMShell VendorShell

ClassPointer:

xmGrabShellWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmGrabShellWidgetClass,...)

Functions/Macros:

XmCreateGrabShell(),XmIsGrabShell()

XmGrabShell

Availability
Motif2.0andlater.
Description
GrabShellisashellwidgetthatgrabsthepointerandkeyboardwhenitismapped.Itspurposeistoprovideapopupthatimmediatelydirectsfocustoitschild.The
ComboBoxwidgetutilizesthisfeatureinimplementingitspopupList.AlthoughGrabShellisaninternalwidgetusedbytheComboBox,ithasapublicinterfaceandis
thereforeavailableforuse.
NewResources
GrabShelldefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNbottomShadowColor

XmCBottomShadow
Color

Pixel

dynamic

CSG

XmNbottomShadowPixmap

XmCBottomShadow
Pixmap

Pixmap

XmUNSPECIFIED_
PIXMAP

CSG

XmNgrabStyle

XmCGrabStype

int

GrabModeAsync

CSG

XmNownerEvents

XmCOwnerEvents

Boolean

False

CSG

XmNshadowThickness

XmCShadowThickness

Dimension

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page782

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNtopShadowColor

XmCTopShadowColor

Pixel

dynamic

CSG

XmNtopShadowPixmap

XmCTopShadowPixmap

Pixmap

dynamic

CSG

XmNbottomShadowColor
Thecolorusedindrawingthebordershadow'sbottomandrightsides,butonlyifXmNbottomShadowPixmapisNULL.
XmNbottomShadowPixmap
Thepixmapusedindrawingthebordershadow'sbottomandrightsides.
XmNgrabStyle
Controlsthefurtherprocessingofpointereventsoncethegrabhasbeeninitiated.PossiblevaluesareGrabModeSyncandGrabModeAsync.RefertoXlib
documentationonXGrabKeyboard()andXGrabPointer()formoreinformation.
XmNownerEvents
Specifieswhetherpointerorkeyboardeventsarereportednormallywithintheapplication,oronlytotheGrabShellwindow.RefertoXlibdocumentationon
XGrabKeyboard()andXGrabPointer()formoreinformation.
XmNshadowThickness
Thethicknessoftheshadowborder.
XmNtopShadowColor
Thecolorusedindrawingthebordershadow'stopandleftsides,butonlyifXmNtopShadowPixmapisNULL.
XmNtopShadowPixmap
Thepixmapusedindrawingthebordershadow'stopandleftsides.
InheritedResources
GrabShellinheritstheresourcesshownbelow.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNmaxAspectX

WMShell

XmNallowShellResize

Shell

XmNmaxAspectY

WMShell

XmNancestorSensitive

Core

XmNmaxHeight

WMShell

XmNaudibleWarning

VendorShell

XmNmaxWidth

WMShell

XmNbackground

Core

XmNminAspectX

WMShell

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page783

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNbackgroundPixmap

Core

XmNminAspectY

WMShell

XmNbaseHeight

WMShell

XmNminHeight

WMShell

XmNbaseWidth

WMShell

XmNminWidth

WMShell

XmNborderColor

Core

XmNmwmDecorations

VendorShell

XmNborderPixmap

Core

XmNmwmFunctions

VendorShell

XmNborderWidth

Core

XmNmwmInputMode

VendorShell

XmNbuttonFontList

VendorShell

XmNmwmMenu

VendorShell

XmNbuttonRenderTable

VendorShell

XmNnumChildren

Composite

XmNchildren

Composite

XmNoverrideRedirect

Shell

XmNcolormap

Core

XmNpopdownCallback

Shell

XmNcreatePopupChildProc

Shell

XmNpopupCallback

Shell

XmNdefaultFontList

VendorShell

XmNpreeditType

VendorShell

XmNdeleteResponse

VendorShell

XmNsaveUnder

Shell

XmNdepth

Core

XmNscreen

Core

XmNdestroyCallback

Core

XmNsensitive

Core

XmNgeometry

Shell

XmNshellUnitType

VendorShell

XmNheight

Core

XmNtextFontList

VendorShell

XmNheightInc

WMShell

XmNtextRenderTable

VendorShell

XmNiconMask

WMShell

XmNtitle

WMShell

XmNiconPixmap

WMShell

XmNtitleEncoding

WMShell

XmNiconWindow

WMShell

XmNtransient

WMShell

XmNiconX

WMShell

XmNtranslations

Core

XmNiconY

WMShell

XmNunitType

VendorShell

XmNinitialResources
Persistent

Core

XmNuseAsyncGeometry

VendorShell

XmNinitialState

WMShell

XmNvisual

Shell

XmNinput

WMShell

XmNwaitForWm

WMShell

XmNinputMethod

VendorShell

XmNwidth

Core

XmNinputPolicy

VendorShell

XmNwidthInc

WMShell

XmNinsertPosition

Composite

XmNwindowGroup

WMShell

XmNkeyboardFocusPolicy

VendorShell

XmNwinGravity

WMShell

XmNlabelFontList

VendorShell

XmNwmTimeout

WMShell

XmNlabelRenderTable

VendorShell

XmNx

Core

XmNlayoutDirection

VendorShell

XmNy

Core

XmNmappedWhenManaged

Core

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page784

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Translations
ThetranslationsforGrabShellincludethoseofWMShell.
Event

Action

BSelectPress

GrabShellBtnDown()

BSelectRelease

GrabShellBtnUp()

ActionRoutines
GrabShelldefinesthefollowingactionroutines:
GrabShellBtnDown()
IftheeventoccursoutsidethecoordinatesoftheGrabShell,thewidgetispoppedup.Otherwise,theeventisignored.
GrabShellBtnUp()
Iftheeventoccurswithinthetimespecifiedbythemulticlickintervalofthedisplay,theactionignorestheevent.Otherwise,theGrabShellispoppeddown.
GrabShellPopdown()
Grabsplaceduponthepointerandkeyboardarereleased,theGrabShellisunmapped,andthefocusisrevertedtothepreviousowner.
SeeAlso
XmCreateObject(1),Composite(2),Core(2),Shell(2),VendorShell(2),WMShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page785

XmIconGadget
MotifandXtWidgetClasses
Name
XmIconGadgetwidgetclassagadgetfordisplayingbothtextandapixmap
Synopsis
PublicHeader:

<Xm/IconG.h>

ClassName:

XmIconGadget

ClassHierarchy:

Object

ClassPointer:

RectObj XmGadget

XmIconGadget

xmIconCadgetClass
widget=XtCreateWidget(name,xmIconGadgetClass,...)

Instantiation:
Functions/Macros:

XmIsIconGadget()

Availability
Motif2.0andlater.
Description
IconGadgetisagadgetthatcandisplaybothtextualandpixmapinformationsimultaneously.Thetextualdatacanbeeithercenteredbelowthepixmaporplacedtothe
side,dependinguponthevalueoftheXmNviewTyperesource.ThevalueXmLARGE_ICONcentersthetextbelowthepixmap,whileXmSMALL_ICON
horizontallyalignsthepixmapandtextualinformation.
IconGadgetisintendedforusewiththeContainer,whichlaysoutIconGadgetchildreninvariousstyles,inordertorepresentapplicationobjectsofsomekind.In
additiontothetextuallabeling,anIconGadgetcanbeassociatedwithanarrayofdetailinformation,whichpresumablyrepresentsattributesoftheapplicationobject,
andwhichtheContainerparentcanlayoutrelativetotheIconGadget.
Traits
IconGadgetholdstheXmQTcontainerItem,XmQTcareParentVisual,XmQTpointIn,andXmQTaccessColorstraits,andusesthe
XmQTcontainerandXmQTspecifyRenderTabletraits.TheXmQTpointIntraitisundocumented.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page786

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewResources
IconGadgetdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNalignment

XmCAlignment

unsignedchar

XmALIGNMENT_CENTER

CSG

XmNdetail

XmCDetail

XmStringTable

NULL

CSG

XmNdetailCount

XmCDetailCount

Cardinal

CSG

XmNfontList

XmCFontList

XmFontList

NULL

CSG

XmNlabelString

XmCLabelString

XmString

dynamic

CSG

XmNlargeIconMask

XmCIconMask

Pixmap

XmUNSPECIFIED_PIXMAP

CSG

XmNlargeIconPixmap

XmCIconPixmap

Pixmap

XmUNSPECIFIED_PIXMAP

CSG

XmNmarginHeight

XmCMarginHeight

Dimension

CSG

XmNmarginWidth

XmCMarginWidth

Dimension

CSG

XmNrenderTable

XmCRenderTable

XmRenderTable

dynamic

CSG

XmNsmallIconMask

XmCIconMask

Pixmap

XmUNSPECIFIED_PIXMAP

CSG

XmNsmallIconPixmap

XmCIconMask

Pixmap

XmUNSPECIFIED_PIXMAP

CSG

XmNspacing

XmCSpacing

Dimension

CSG

XmNviewType

XmCViewType

unsignedchar

XmLARGE_ICON

CSG

XmNvisualEmphasis

XmCVisualEmphasis

unsignedchar

XmNOT_SELECTED

CSG

XmNalignment
InMotif2.1,specifiesthehorizontalalignmentofthetextualandpixmapdata.PossiblevaluesareXmALIGNMENT_BEGINNING,
XmALIGNMENT_CENTER,andXmALIGNMENT_END.
XmNdetail
Specifiesanarrayofcompoundstrings,representingthedetailinformationassociatedwiththeIconGadget.
XmNdetailCount
SpecifiesthenumberofcompoundstringsinXmNdetail.
XmNfontList
SpecifiesthefontlistassociatedwiththeIconGadget.InMotif2.0andlater,XmFontListisanobsoletedatatypeithasbeenreplacedbyXmRenderTable.
Theresourceismaintainedforforbackwardscompatibilitybutimplementedasarendertable.AnyspecifiedXmNrenderTableresourcetakespriority.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page787

XmNlabelString
ThecompoundstringrepresentingthetextualdataforlabelingtheIconGadget.Ifunspecified,thevalueisconstructedoutofthenameofthegadget.
XmNlargeIconMask
SpecifiestheiconmaskusedwhenXmNviewTypeisXmLARGE_ICON.
XmNlargeIconPixmap
SpecifiesthepixmapusedwhenXmNviewTypeisXmLARGE_ICON.
XmNmarginHeight
InMotif2.1,specifiestheverticaldistanceinpixelsbetweenthehighlightrectangleandtheIconGadgetcontents.
XmNmarginWidth
InMotif2.1,specifiesthehorizontaldistanceinpixelsbetweenthehighlightrectangleandtheIconGadgetcontents.
XmNrenderTable
SpecifiestheXmRenderTableusedfordisplayingtextualdataassociatedwiththeIconGadget.Ifunspecified,thevalueistakenfromthenearestancestorwhich
holdstheXmQTspecifyRenderTabletrait,usingtheXmLABEL_RENDER_TABLEvalueofanyancestorsofound.
XmNsmallIconMask
SpecifiestheiconmaskusedwhenXmNviewTypeisXmSMALL_ICON.
XmNsmallIconPixmap
SpecifiesthepixmapusedwhenXmNviewTypeisXmSMALL_ICON.
XmNspacing
InMotif2.1,specifiesthedistanceinpixelsbetweenthetextualandpixmapcomponentsoftheIconGadget.
XmNviewType
SpecifiestheIconGadgetlayoutstyle.IftheparentoftheIconGadgetisaContainer,theviewtypeisoverriddenbythevalueoftheXmNentryViewType
resourceoftheparentifthevalueisnotXmANY_ICON.IfXmNviewTypeisXmLARGE_ICON,thepixmapspecifiedbyXmNlargeIconPixmapis
displayedabovethetextuallabel,withthetextcentereduponthepixmap.IfXmNviewTypeisXmSMALL_ICON,thelabelisdisplayedeithertotheleftorthe
rightofthepixmap,dependingupontheXmNlayoutDirectionresource.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page788

XmNvisualEmphasis
SpecifieswhethertheIconGadgetisdisplayedinnormalorselectedstate.IfthevalueisXmSELECTED,thegadgetisrenderedusingtheXmNselectColor
resourceoftheContainerparent.XmNOT_SELECTEDdisplaysinnormalstate.
InheritedResources
IconGadgetinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.
Resource

InheritedFrom

Resource

InheritedFrom

XmNancestorSensitive

RectObj

XmNhighlightThickness

XmGadget

XmNbackground

XmGadget

XmNlayoutDirection

XmGadget

XmNbackgroundPixmap

XmGadget

XmNnavigationType

XmGadget

XmNbottomShadowColor

XmGadget

XmNsensitive

RectObj

XmNbottomShadowPixmap

XmGadget

XmNshadowThickness

XmGadget

XmNborderWidth

RectObj

XmNtopShadowColor

XmGadget

XmNdestroyCallback

Object

XmNtopShadowPixmap

XmGadget

XmNforeground

XmGadget

XmNtraversalOn

XmGadget

XmNheight

RectObj

XmNunitType

XmGadget

XmNhelpCallback

XmGadget

XmNuserData

XmGadget

XmNhighlightColor

XmGadget

XmNwidth

RectObj

XmNhighlightOnEnter

XmGadget

XmNx

RectObj

XmNhighlightPixmap

XmGadget

XmNy

RectObj

SeeAlso
Object(2),RectObj(2),XmGadget(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page789

XmInformationDialog
MotifandXtWidgetClasses
Name
XmInformationDialoganunmanagedMessageBoxasachildofaDialogShell.
Synopsis
PublicHeader:

<Xm/MessageB.h>
widget=XmCreateInformationDialog(...)

Instantiation:
Functions/Macros: XmCreateInformationDialog(),
XmMessageBoxGetChild()

Description
AnInformationDialogisacompoundobjectcreatedbyacalltoXmCreateInformationDialog()thatanapplicationcanusetoprovidetheuserwith
information.AnInformationDialogconsistsofaDialogShellwithanunmanagedMessageBoxwidgetasitschild.TheMessageBoxresourceXmNdialogTypeis
settoXmDIALOG_INFORMATION.AnInformationDialogincludesfourcomponents:asymbol,amessage,threebuttons,andaseparatorbetweenthemessage
andthebuttons.Bydefault,thesymbolisalowercasei.InMotif1.2andlater,thedefaultbuttonlabelscanbelocalized.IntheClocale,andinMotif1.1,the
PushButtonsarelabeledOK,Cancel,andHelpbydefault.
DefaultResourceValues
AnInformationDialogsetsthefollowingdefaultvaluesforMessageBoxresources:
Name

Default

XmNdialogType

XmDIALOG_INFORMATION

XmNsymbolPixmap

Xm_information

WidgetHierarchy
WhenanInformationDialogiscreatedwithaspecifiedname,theDialogShellisnamedname_popupandtheMessageBoxiscalledname.
SeeAlso
XmCreateObject(1),XmMessageBoxGetChild(1),XmDialogShell(2),XmMessageBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page790

XmLabel
MotifandXtWidgetClasses
Name
XmLabelwidgetclassasimplewidgetthatdisplaysanoneditablelabel.
Synopsis
PublicHeader:

<Xm/Label.h>

ClassName:

XmLabel

ClassHierarchy:

Core XmPrimitive XmLabel

ClassPointer:

xmLabelWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmLabelWidgetClass,...)

Functions/Macros:

XmCreateLabel(),XmIsLabel()

Description
Labelprovidesatextstringorapixmapforlabelingotherwidgetsinanapplication.Labelisalsoasuperclassforthevariousbuttonwidgets.Labeldoesnotaccept
anybuttonorkeyevents,butitdoesreceiveenterandleaveevents.
Traits
LabelholdstheXmQTmenuSavvy,XmQTtransfer,andXmQTaccessTextualtraits,whichareinheritedbyanyderivedclasses,andusesthe
XmQTmenuSystemandXmQTspecifyRenderTabletraits.
NewResources
Labeldefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNaccelerator

XmCAccelerator

String

NULL

CSG

XmNacceleratorText

XmCAcceleratorText

XmString

NULL

CSG

XmNalignment

XmCAlignment

unsigned
char

dynamic

CSG

XmNfontList

XmCFontList

XmFontList dynamic

CSG

XmNlabel
InsensitivePixmap

XmCLabel
InsensitivePixmap

Pixmap

XmUNSPECIFIED_
PIXMAP

CSG

XmNlabelPixmap

XmCLabelPixmap

Pixmap

XmUNSPECIFIED_
PIXMAP

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page791

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNlabelString

XmCXmString

XmString

dynamic

CSG

XmNlabelType

XmCLabelType

unsignedchar

XmSTRING

CSG

XmNmarginBottom

XmCMarginBottom

Dimension

CSG

XmNmarginHeight

XmCMarginHeight

Dimension

CSG

XmNmarginLeft

XmCMarginLeft

Dimension

CSG

XmNmarginRight

XmCMarginRight

Dimension

CSG

XmNmarginTop

XmCMarginTop

Dimension

CSG

XmNmarginWidth

XmCMarginWidth

Dimension

CSG

XmNmnemonic

XmCMnemonic

KeySym

NULL

CSG

XmNmnemonicCharSet

XmCMnemonicCharSet

String

XmFONTLIST_
DEFAULT_TAG

CSG

XmNrecomputeSize

XmCRecomputeSize

Boolean

True

CSG

XmNrenderTable

XmCRenderTable

XmRenderTable dynamic

CSG

XmNstringDirection

XmCStringDirection

XmString
Direction

dynamic

CSG

XmNaccelerator
Astringthatdescribesabuttonwidget'saccelerator(themodifiersandkeytouseasashortcutinselectingthebutton).Thestring'sformatislikethatofatranslation
butallowsonlyasinglekeypresseventtobespecified.
XmNacceleratorText
Thetextthatisdisplayedforanaccelerator.
XmNalignment
Thealignment(lefttoright)foralabel'stextorpixmap.PossiblevaluesareXmALIGNMENT_BEGINNING,XmALIGNMENT_CENTER,and
XmALIGNMENT_END.InMotif2.0andlater,theinterpretationofalignmentdependsuponthevalueofanyinheritedXmNlayoutDirectionresource.
XmNfontList
Thefontlistusedforthewidget'stext.InMotif2.0andlater,XmfontListisanobsoletedatatypetherenditiontableisthepreferredmethodofsetting
appearance.Althoughmaintainedforbackwardscompatibility,theresourceisimplementedthrougharendertable.AnyXmNrenderTableresourcetakes
precedence.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page792

XmNlabelInsensitivePixmap
Thepixmaplabelforaninsensitivebutton(whenXmNlabelTypeisXmPIXMAP).
XmNlabelPixmap
ThepixmapusedwhenXmNlabelTypeisXmPIXMAP.
XmNlabelString
ThecompoundstringusedwhenXmNlabelTypeisXmSTRING.IfthisresourceisNULL,theapplicationusesthewidget'sname(convertedtocompoundstring
format).
XmNlabelType
Thetypeoflabel(eitherstringorpixmap).Possiblevaluesare:
XmPIXMAP/*useXmNlabelPixmaporXmNlabelInsensitvePixmap*/
XmSTRING/*useXmNlabelString*/

XmNmarginTop,XmNmarginBottom,
XmNmarginLeft,XmNmarginRight
Theamountofspacebetweenonesideofthelabeltextandthenearestmargin.
XmNmarginHeight
XmNmarginWidth
Thespacingbetweenonesideofthelabelandthenearestedgeofashadow.
XmNmnemonic
Akeysymthatgivestheuseranotherwaytoselectabutton.Inthelabelstring,thefirstcharactermatchingthiskeysymwillbeunderlined.
XmNmnemonicCharSet
Thecharactersetforthelabel'smnemonic.
XmNrecomputeSize
IfTrue(default),theLabelwidgetchangesitssizesothatthestringorpixmapfitsexactly.
XmNrenderTable
InMotif2.0andlater,specifiestherendertablefortheLabel.IfNULL,thisisinheritedfromthenearestancestorthathastheXmQTspecifyRenderTable
trait,takingtheXmLABEL_RENDER_TABLEvaluefromtheancestor.TheBulletinBoard,VendorShell,andMenuShellwidgetsandderivedclassessetthistrait.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page793

XmNstringDirection
InMotif2.0andlater,XmNstringDirectionissupersededbytheinheritedXmNlayoutDirectionresource.Thedirectioninwhichtodrawthestring.
Possiblevaluesare:
XmSTRING_DIRECTION_L_TO_R

XmSTRING_DIRECTION_R_TO_L

XmDEFAULT_DIRECTION

CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*settoXmCR_HELP*/
XEvent*event/*pointstoeventthattriggeredcallback*/
}XmAnyCallbackStruct

InheritedResources
Labelinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Labelsetsthedefaultvaluesof
XmNhighlightThicknessandXmNshadowThicknessto0andXmNtraversalOntoFalse.ThedefaultvalueofXmNborderWidthis
resetto0byPrimitive.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNhighlightThickness

XmPrimitive

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNlayoutDirection

XmPrimitive

XmNbackgroundPixmap

Core

XmNmappedWhenManaged

Core

XmNborderColor

Core

XmNnavigationType

XmPrimitive

XmNborderPixmap

Core

XmNpopupHandlerCallback

XmPrimitive

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmPrimitive

XmNsensitive

Core

XmNbottomShadowPixmap

XmPrimitive

XmNshadowThickness

XmPrimitive

XmNcolormap

Core

XmNtopShadowColor

XmPrimitive

XmNconvertCallback

XmPrimitive

XmNtopShadowPixmap

XmPrimitive

XmNdepth

Core

XmNtranslations

Core

XmNdestroyCallback

Core

XmNtraversalOn

XmPrimitive

XmNforeground

XmPrimitive

XmNunitType

XmPrimitive

XmNheight

Core

XmNuserData

XmPrimitive

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page794

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNhelpCallback

XmPrimitive

XmNwidth

Core

XmNhighlightColor

XmPrimitive

XmNx

Core

XmNhighlightOnEnter

XmPrimitive

XmNy

Core

XmNhighlightPixmap

XmPrimitive

Translations
Event

Action

BTransferPress

ProcessDrag()

KHelp

Help()

ForsubclassesofLabel:
Event

Action

KLeft

MenuTraverseLeft()

KRight

MenuTraverseRight()

KUp

MenuTraverseUp()

KDown

MenuTraverseDown()

MAnyKCancel

MenuEscape()

ActionRoutines
Labeldefinesthefollowingactionroutines:
Help()
Unpostsmenus,restoreskeyboardfocus,andinvokesthecallbacksfromXmNhelpCallback,ifthereareany.
MenuEscape()
Unpoststhemenu,disarmstheassociatedCascadeButton,andrestoreskeyboardfocus.
MenuTraverseDown()
InaMenuBar,ifthecurrentmenuitemhasasubmenu,poststhesubmenu,disarmsthecurrentmenuitem,andarmsthefirstiteminthesubmenu.Inamenupane,
disarmsthecurrentmenuitemandarmstheitembelowit,wrappingaroundtothetopifnecessary.
MenuTraverseLeft()
InaMenuBar,disarmsthecurrentmenuitemandarmsthenextitemtotheleft,wrappingifnecessary.Inamenupane,disarmsthecurrentitemandarmstheitemto
theleftifthereissuchanitem.Otherwise,unpoststhe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page795

currentsubmenuand,ifthatsubmenuisattachedtoaMenuBaritem,traversestotheMenuBaritemtotheleft(wrappingifnecessary),poststhesubmenu,and
armsthefirstiteminthesubmenu.InaPopupMenuoratornoffmenupane,traversestothemenuitemtotheleft,wrappingtotherightifnecessary.
MenuTraverseRight()
InaMenuBar,disarmsthecurrentmenuitemandarmsthenextitemtotheright,wrappingifnecessary.Inamenupane,ifthecurrentitemisaCascadeButton,posts
theassociatedsubmenu.Otherwise,disarmsthecurrentitemandarmstheitemtotherightifthereissuchanitemorunpostsallsubmenus,traversestotheMenuBar
itemtotheright(wrappingifnecessary),poststhesubmenu,andarmsthefirstiteminthesubmenu.InaPopupMenuoratornoffmenupane,traversestothemenu
itemtotheright,wrappingtotheleftifnecessary.
MenuTraverseUp()
Inamenupane,disarmsthecurrentmenuitemandarmstheitemaboveit,wrappingaroundtothebottomifnecessary.
ProcessDrag()
InMotif1.2,initiatesadraganddropoperationusingthecontentsoftheLabel.InMotif2.0andlater,thisindirectlyinvokesanyproceduresspecifiedbythe
inheritedXmNconvertCallbackresource.
SeeAlso
XmCreateObject(1),Core(2),XmPrimitive(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page796

XmLabelGadget
MotifandXtWidgetClasses
Name
XmLabelGadgetwidgetclassasimplegadgetthatdisplaysanoneditablelabel.
Synopsis
PublicHeader:

<Xm/LabelG.h>

ClassName:

XmLabelGadget

ClassHierarchy:

Object

ClassPointer:

RectObj XmGadget

XmLabelGadget

xmLabelGadgetClass
widget=XtCreateWidget(name,xmLabelGadgetClass,...)

Instantiation:
Functions/Macros: XmCreateLabelGadget(),XmOptionLabelGadget(),
XmIsLabelGadget()

Description
LabelGadgetisthegadgetvariantofLabel.LabelGadget'snewresources,callbackresources,andcallbackstructurearethesameasthoseforLabel.
InMotif2.0andlater,theLabelGadgetcachedresourcesetisexpandedtoincludeXmNforeground,XmNbackground,XmNtopShadowColor,
XmNtopShadowPixmap,XmNbottomShadowColor,XmNbottomShadowPixmap,XmNhighlightColorand
XmNhighlightPixmapresources.LabelGadgetssharingthesameManagerparentcanthereforehaveindependentappearance.
Traits
LabelGadgetholdstheXmQTmenuSavvy,XmQTtransfer,XmQTaccessTextual,XmQTcareParentVisual,and
XmQTaccessColorstraits,whichareinheritedbyanyderivedclasses,andusesthetraitsXmQTmenuSystemandXmQTspecifyRenderTable.
InheritedResources
LabelGadgetinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.LabelGadgetsetsthedefaultvalues
ofXmNhighlightThicknessandXmNshadowThicknessto0(zero)andXmNtraversalOntoFalse.Thedefaultvalueof
XmNborderWidthisresetto0byGadget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page797
Resource

InheritedFrom

Resource

InheritedFrom

XmNancestorSensitive

RectObj

XmNhighlightThickness

XmGadget

XmNbackground

XmGadget

XmNlayoutDirection

XmGadget

XmNbackgroundPixmap

XmGadget

XmNnavigationType

XmGadget

XmNbottomShadowColor

XmGadget

XmNsensitive

RectObj

XmNbottomShadowPixmap

XmGadget

XmNshadowThickness

XmGadget

XmNborderWidth

RectObj

XmNtopShadowColor

XmGadget

XmNdestroyCallback

Object

XmNtopShadowPixmap

XmGadget

XmNforeground

XmGadget

XmNtraversalOn

XmGadget

XmNheight

RectObj

XmNunitType

XmGadget

XmNhelpCallback

XmGadget

XmNuserData

XmGadget

XmNhighlightColor

XmGadget

XmNwidth

RectObj

XmNhighlightOnEnter

XmGadget

XmNx

RectObj

XmNhighlightPixmap

XmGadget

XmNy

RectObj

Behavior
AsaGadgetsubclass,LabelGadgethasnotranslationsassociatedwithit.However,LabelGadgetbehaviorcorrespondstotheactionroutinesoftheLabelwidget.
SeetheLabelactionroutinesformoreinformation.
Behavior

EquivalentLabelActionRoutine

BTransferPress

ProcessDrag()

KHelp

Help()

KLeft

MenuTraverseLeft()

KRight

MenuTraverseRight()

KUp

MenuTraverseUp()

KDown

MenuTraverseDown()

MAnyKCancel

MenuEscape()

SeeAlso
XmCreateObject(1),XmOptionLabelGadget(1),Object(2),RectObj(2),XmGadget(2),XmLabel(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page798

XmList
MotifandXtWidgetClasses
Name
XmListwidgetclassawidgetthatallowsausertoselectfromalistofchoices.
Synopsis
PublicHeader:

<Xm/List.h>

ClassName:

XmList

ClassHierarchy:

Core

ClassPointer:

XmPrimitive XmList

xmListWidgetClass
widget=XtCreateWidget(name,xmListWidgetClass,...)

Instantiation:
Functions/Macros: XmCreateList(),XmCreateScrolledList(),XmList...routines,
XmIsList()

Description
Listprovidesalistofchoicesfromwhichausercanselectoneormoreitems,basedontheselectionpolicy.Listsupportsfourselectionpolicies:singleselect,browse
select,multipleselect,andextendedselect.
Insingleselectmode,onlyoneitemcanbeselectedatatimeabuttonpressonanitemselectsitanddeselectsthepreviouslyselecteditem.Inbrowseselectmode,
onlyoneitemcanbeselectedatatimeabuttonpressworksasinsingleselectmodeand,additionally,abuttondragmovestheselectionwiththepointer.Inmultiple
selectmode,anynumberofitemscanbeselectedatatimeabuttonpresstogglestheselectionstateofanitemanddoesnotchangetheselectionstateofanyother
items.Inextendedselectmode,anynumberofitemscanbeselectedatatimediscontiguousrangesofitemscanbeselectedbycombiningbuttonpressesandbutton
drags.
Selectionscanbemadebyusingeitherthepointerorthekeyboard.Keyboardselectionhastwomodes:normalmodeandaddmode.Innormalmode,keyboard
navigationoperationsaffecttheselectiontheitemwiththekeyboardfocusisalwaysselected.Inaddmode,keyboardnavigationoperationsaredistinctfromselection
operationstheitemwiththekeyboardfocuscanbedisjointfromtheselection.Browseselectoperatesinnormalmodesingleselectandmultipleselectoperateinadd
modeextendedselectcanbemadetooperateineithermode.Normalmodeusesasolidlocationcursorwhileaddmodeusesadashedlocationcursor.
InMotif1.2andlater,Listisasupporteddragsourcefordraganddropoperations.BTransferPressstartsadraganddropoperationusingtheselected
itemsinthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page799

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

List.IfBTransferispressedoveranunselecteditem,thatitemisdraggedinsteadoftheselecteditems.
Traits
ListholdstheXmQTtransfertrait,whichisinheritedbyanyderivedclasses,andusestheXmQTnavigator,XmQTscrollFrameand
XmQTspecifyRenderTabletraits.
NewResources
Listdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNautomaticSelection

XmCAutomaticSelection

XtEnum

XmNO_AUTO_
SELECT

CSG

XmNdoubleClick
Interval

XmCDoubleClickInterval

int

dynamic

CSG

XmNfontList

XmCFontList

XmFontList

dynamic

CSG

XmNhorizontalScrollBar

XmCHorizontalScrollBar

Widget

NULL

XmNitemCount

XmCItemCount

int

CSG

XmNitems

XmCItems

XmString
Table

NULL

CSG

XmNlistMarginHeight

XmCListMarginHeight

Dimension

CSG

XmNlistMarginWidth

XmCListMarginWidth

Dimension

CSG

XmNlistSizePolicy

XmCListSizePolicy

unsignedchar

XmVARIABLE

CG

XmNlistSpacing

XmCListSpacing

Dimension

CSG

XmNmatchBehaviour

XmCMatchBehavior

unsignedchar

XmQUICK_
NAVIGATE

CSG

XmNprimaryOwnership

XmCPrimaryOwnership

unsignedchar

XmOWN_NEVER

CSG

XmNrenderTable

XmCRenderTable

XmRender
Table

dynamic

CSG

XmNscrollBar
DisplayPolicy

XmCScrollBar
DisplayPolicy

unsignedchar

XmAS_NEEDED

CSG

XmNselectColor

XmCSelectColor

Pixel

dynamic

CSG

XmNselectedItemCount

XmCSelectedItemCount

int

CSG

XmNselectedItems

XmCSelectedItems

XmString
Table

NULL

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page800

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNselectedPosition
Count

XmCSelectedPosition
Count

int

CSG

XmNselectedPositions

XmCSelectedPositions

int*

NULL

CSG

XmNselectionMode

XmCSelectionMode

unsignedchar

XmNORMAL_
MODE

CSG

XmNselectionPolicy

XmCSelectionPolicy

unsignedchar

XmBROWSE_
SELECT

CSG

XmNstringDirection

XmCStringDirection

XmString
Direction

dynamic

CSG

XmNtopItemPosition

XmCTopItemPosition

int

CSG

XmNverticalScrollBar

XmCVerticalScrollBar

Widget

NULL

XmNvisibleItemCount

XmCVisibleItemCount

int

dynamic

CSG

XmNautomaticSelection
IfTrue(andthewidget'sXmNselectionPolicyiseitherXmBROWSE_SELECTorXmEXTENDED_SELECT),thisresourcecalls
XmNsingleSelectionCallbackwhenevertheusermovesintoanewitem.IfFalse,theusermustreleasethemousebuttonbeforeanyselection
callbacksarecalled.
InMotif2.0andlater,theresourcehaschangedtypefromaBooleantoanenumeration.Possiblevaluesoftheenumeratedtype:
XmAUTO_SELECT/*enablesautomaticselection*/
XmNO_AUTO_SELECT/*disablesautomaticselection*/

XmNdoubleClickInterval
Thetimespan(inmilliseconds)withinwhichtwobuttonclicksmustoccurtobeconsideredadoubleclickratherthantwosingleclicks.Bydefault,thisvalueisthe
multiclicktimeofthedisplay.
XmNfontList
Thefontlistusedforthewidget'sitems.InMotif2.0andlater,XmfontListisconsideredobsoletetherenditiontableisthepreferredmethodofsetting
appearance.AnyXmNrenderTablevaluetakesprecedence.
XmNhorizontalScrollBar
WhentheListispartofaScrolledList,specifiesthewidgetIDoftheScrollBarcreatedbytheListtoperformhorizontalscrolling.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page801

XmNitemCount
Thetotalnumberofitems.Thewidgetupdatesthisresourceeverytimealistitemisaddedorremoved.
XmNitems
Apointertoanarrayofcompoundstrings.Thecompoundstringsarethelistitemstodisplay.AcalltoXtGetValues()returnstheactuallistitems(notacopy),
sodon'thaveyourapplicationfreetheseitems.
XmNlistMarginHeight
XmNlistMarginWidth
TheheightorwidthofthemarginbetweentheborderoftheListandtheitemsinthelist.
XmNlistSizePolicy
Themethodforresizingthewidgetwhenalistitemexceedsthewidthoftheworkarea.Thisresizingpolicymustbesetatcreationtime.Possiblevaluesare:
XmVARIABLE/*growtofitdon'taddScrollBar*/
XmCONSTANT/*don'tgrowtofitaddScrollBar*/
XmRESIZE_IF_POSSIBLE/*groworshrinkaddScrollBariftoolarge*/

XmNlistSpacing
Thespacingbetweenitems.
XmNmatchBehavior
InMotif2.0andlater,specifieswhetherthewidgetnavigatestoitemswithintheListbymatchingkeyboardinputagainstthefirstcharacterofeachitem.Ifthevalueis
XmNONE,nomatchingisperformed.IfthevalueisXmQUICK_NAVIGATE,anycharacterstypedwhentheListhasthefocusarecomparedagainstthefirst
characterofeachitem.Ifamatchisfound,thematchedlistitemisautomaticallymadethecurrentitem.Subsequentlytypingthesamecharacterprogressescyclically
throughthelisttofindanyfurthermatchingitem.
XmNprimaryOwnership
Specifieshowthelistinteractswiththeprimaryselectionwhenauserselectsanitemfromthelist.Possiblevaluesare:
XmOWN_NEVER/*nevertakeownershipoftheselection*/
XmOWN_ALWAYS/*alwaystakeownershipoftheselection*/
XmOWN_MULTIPLE/*takeownershipifmorethanoneitem*/
/*selected*/
XmOWN_POSSIBLE_MULTIPLE/*takeownershipifselectionpolicy*/
/*ismultipleorextended*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page802

XmNrenderTable
InMotif2.0andlater,specifiestherendertableforthelist.Ifunspecified,thevalueoftheresourceisinheritedfromthenearestancestorwhichholdsthe
XmQTspecifyRenderTabletrait,usingtheXmTEXT_RENDER_TABLEvalueoftheancestorsofound.Thisresource,togetherwiththe
XmNvisibleItemsCountresource,isusedtocalculatetheList'sheight.
XmNscrollBarDisplayPolicy
DetermineswhentodisplayverticalscrollbarsinaScrolledListwidget.Possiblevaluesare:
XmSTATIC/*verticalScrollBaralwaysdisplays*/
XmAS_NEEDED/*addScrollBarwhenlististoolarge*/

XmNselectColor
InMotif2.0andlater,specifiesthecolorusedtodrawthebackgroundofselecteditems.InadditiontoallocatedPixelvalues,theconstant
XmDEFAULT_SELECT_COLORspecifiesacolorbetweentheXmNbackgroundandXmNbottomShadowColor,XmHIGHLIGHT_COLORmakes
theselectcolorthesameastheXmNhighlightColorvalue,andXmREVERSED_GROUND_COLORSmakestheXmNselectColorthesameasthe
XmNforeground,usingtheXmNbackgroundcolortorenderanytext.
XmNselectedItemCount
Thenumberofitemsinthelistofselecteditems.
XmNselectedItems
Apointertoanarrayofcompoundstrings.Thecompoundstringsrepresentthecurrentlyselectedlistitems.AcalltoXtGetValues()returnstheactuallistitems
(notacopy),sodon'thaveyourapplicationfreetheseitems.
XmNselectedPositionCount
InMotif2.0andlater,specifiesthenumberofpositionsinthelistofselectedpositions.
XmNselectedPositions
InMotif2.0andlater,specifiesapointertoanarrayofintegers,representingthecurrentlyselectedlistpositions.AcalltoXtGetValues()returnstheactuallist
positionarray,sodon'tfreethearrayinapplicationcode.ComparewithXmListGetSelectedPos(),whichreturnsacopyoftheselectedpositionarraythat
shouldbefreedafteruse.
XmNselectionMode
InMotif2.0andlater,specifiestheeffectthatkeyboardnavigationhasuponselection.IfthevalueisXmNORMAL_MODE,navigationoperationscanselectthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page803

itemunderthelocationcursor,deselectinganyotheritems.InXmADD_MODE,navigationoperationshavenoeffectonselection.ForXmNORMAL_MODE,the
selectionpolicymustbebrowseorextendedselection,andforXmADD_MODE,thepolicymustnotbebrowse.
XmNselectionPolicy
Determinestheeffectofaselectionaction.Possiblevaluesare:
XmSINGLE_SELECT

XmBROWSE_SELECT

XmMULTIPLE_SELECT

XmEXTENDED_SELECT

XmNstringDirection
Thedirectioninwhichtodrawthestring.Possiblevaluesare:
XmSTRING_DIRECTION_L_TO_R
XmDEFAULT_DIRECTION

XmSTRING_DIRECTION_R_TO_L

InMotif2.0andlater,theXmNstringDirectionresourceisobsolete,beingsubsumedintotheXmNlayoutDirectionresource.Ifthe
XmNlayoutDirectionisNULL,andtheXmNstringDirectionisXmDEFAULT_DIRECTION,thevalueistakenfromthenearestancestor
whichholdstheXmQTspecifyLayoutDirectiontrait.Manager,MenuShell,andVendorShellsupportthistrait.
XmNtopItemPosition
Thepositionofthefirstitemthatisvisibleinthelist.CallingtheXmListSetPos()routineisthesameassettingthisresource.Inbothcases,thefirstpositionis
specifiedas1andthelastpositionisspecifiedas0.
XmNverticalScrollBar
WhentheListispartofaScrolledList,specifiesthewidgetIDoftheScrollBarcreatedbytheListtoperformverticalscrolling.
XmNvisibleItemCount
Thenumberofitemstodisplayintheworkareaofthelist.Thisvalueaffectsthewidget'sheight.InMotif1.2andlater,thedefaultvalueofthisresourceisdynamic
andbasedontheheightoftheList,whileinMotif1.1,thedefaultvalueis1.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page804

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

CallbackResources
Listdefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmMbrowseSelectionCallback

XmCR_BROWSE_SELECT

XmNdefaultActionCallback

XmCR_DEFAULT_ACTION

XmNdestinationCallback

XmCR_OK

XmNextendedSelectionCallback

XmCR_EXTENDED_SELECT

XmNmultipleSelectionCallback

XmCR_MULTIPLE_SELECT

XmNsingleSelectionCallback

XmCR_SINGLE_SELECT

XmNbrowseSelectionCallback
Listofcallbacksthatarecalledwhenalistitemisselectedusingthebrowseselectionpolicy.
XmNdefaultActionCallback
ListofcallbacksthatarecalledwhenalistitemisdoubleclickedorKActivateispressed.
XmNdestinationCallback
ListofcallbacksthatarecalledwhentheLististhedestinationofatransferoperation.
XmNextendedSelectionCallback
Listofcallbacksthatarecalledwhenlistitemsareselectedusingtheextendedselectionpolicy.
XmNmultipleSelectionCallback
Listofcallbacksthatarecalledwhenalistitemisselectedusingthemultipleselectionpolicy.
XmNsingleSelectionCallback
Listofcallbacksthatarecalledwhenalistitemisselectedusingthesingleselectionpolicy.
CallbackStructure
Eachselectioncallbackfunctionispassedthefollowingstructurehowever,somestructuremembersmightbeunusedbecausetheyaren'tmeaningfulforparticular
callbackreasons:

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page805
typedefstruct
{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
XmStringitem/*itemmostrecentlyselectedat*/
/*thetimeeventoccurred*/
intitem_length/*numberofbytesinitemmember*/
intitem_position/*item'spositioninXmNitemsarray*/
XmString*selected_items/*listofitemsselectedattime*/
/*eventoccurred*/
intselected_item_count/*numberofitemsinselected_items*/
int*selected_item_positions/*arrayofintegersthatmark*/
/*selecteditems*/
charselection_type/*typeofthemostrecentselection*/
charauto_selection_type/*thetypeofautomaticselection*/
}XmListCallbackStruct

Thestructuremembersevent,item,item_length,anditem_positionarevalidforanyvalueofreason.Thestructuremembers
selected_items,selected_item_count,andselected_item_positionsarevalidwhenthereasonfieldhasavalueof
XmCR_MULTIPLE_SELECTorXmCR_EXTENDED_SELECT.Thestructurememberselection_typeisvalidonlywhenthereasonfieldis
XmCR_EXTENDED_SELECT.Thestructurememberauto_selection_typeisvalidonlywhentheresourceXmNautomaticSelectionis
XmAUTO_SELECTandhasthevalueXmAUTO_UNSETotherwise.
Forthestringspointedtobyitemandselected_items,aswellasfortheintegerspointedtobyselected_item_positions,storageisoverwritten
eachtimethecallbackisinvoked.Applicationsthatneedtosavethisdatashouldmaketheirowncopiesofit.
selected_item_positionsisanintegerarray.TheelementsofthearrayindicatethepositionsofeachselecteditemwithintheListwidget'sXmNitems
array.
selection_typespecifieswhatkindofextendedselectionwasmostrecentlymade.Oneofthreevaluesispossible:
XmINITIAL/*selectionwastheinitialselection*/
XmMODIFICATION/*selectionchangedanexistingselection*/
XmADDITION/*selectionaddednonadjacentitemstoexistingselection*/

auto_selection_typespecifiesatwhatpointwithintheselectiontheuseris.Possiblevaluesare:
XmAUTO_UNSET

XmAUTO_BEGIN

XmAUTO_MOTION

XmAUTO_CANCEL

XmAUTO_NO_CHANGE

XmAUTO_CHANGE

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page806

DestinationcallbacksarefullydescribedwithinthesectionscoveringtheUniformTransferModel.SeeXmTransfer(1)formoredetails.Forquickreference,apointer
tothefollowingstructureispassedtocallbacksontheXmNdestinationCallbacklist:
typedefstruct
{
intreason/*reasonthatthecallbackisinvoked*/
XEvent*event/*eventthattriggeredcallback*/
Atomselection/*requestedselectiontype,asanAtom*/
XtEnumoperation/*typeoftransferrequested*/
intflags/*whetherdestinationandsourcearesame*/
XtPointertransfer_id/*uniqueidentifierfortherequest*/
XtPointerdestination_data/*informationaboutthedestination*/
XtPointerlocation_data/*informationaboutthedata*/
Timetime/*timewhentransferoperationstarted*/
}XmDestinationCallbackStruct

InheritedResources
Listinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Listsetsthedefaultvalueof
XmNnavigationTypetoXmTAB_GROUP,andsetsthedefaultvalueofXmNlayoutDirection.XmDEFAULT_DIRECTION.Thedefaultvalueof
XmNborderWidthisresetto0byPrimitive.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNhighlightThickness

XmPrimitive

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNlayoutDirection

XmPrimitive

XmNbackgroundPixmap

Core

XmNmappedWhenManaged

Core

XmNborderColor

Core

XmNnavigationType

XmPrimitive

XmNborderPixmap

Core

XmNpopupHandlerCallback

XmPrimitive

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmPrimitive

XmNsensitive

Core

XmNbottomShadowPixmap

XmPrimitive

XmNshadowThickness

XmPrimitive

XmNcolormap

Core

XmNtopShadowColor

XmPrimitive

XmNconvertCallback

XmPrimitive

XmNtopShadowPixmap

XmPrimitive

XmNdepth

Core

XmNtranslations

Core

XmNdestroyCallback

Core

XmNtraversalOn

XmPrimitive

XmNforeground

XmPrimitive

XmNunitType

XmPrimitive

XmNheight

Core

XmNuserData

XmPrimitive

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page807

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNhelpCallback

XmPrimitive

XmNwidth

Core

XmNhighlightColor

XmPrimitive

XmNx

Core

XmNhighlightOnEnter

XmPrimitive

XmNy

Core

XmNhighlightPixmap

XmPrimitive

Translations
Event

Action

Event

Action

BSelectPress

ListBeginSelect()

KBeginLine

ListBeginLine()

BSelectMotion

ListButtonMotion()

KEndLine

ListEndLine()

BSelectRelease

ListEndSelect()

KBeginData

ListBeginData()

BExtendPress

ListBeginExtend()

MShift
KBeginData

ListBeginDataExtend()

BExtendMotion

ListButtonMotion()

KEndData

ListEndData()

BExtendRelease

ListEndExtend()

MShiftKEndData

ListEndDataExtend()

BTogglePress

ListBeginToggle()

KAddMode

ListAddMode()

BToggleMotion

ListButtonMotion()

KActivate

ListKbdActivate()

BToggleRelease

ListEndToggle()

KCopyPress

ListCopyToClipboard()

BTransferPress

ListProcessDrag()

KSelectPress

ListKbdBeginSelect()

KUp

ListPrevItem()

KSelectRelease

ListKbdEndSelect()

MShiftKUp

ListExtendPrevItem
()

KExtendPress

ListKbdBeginExtend()

KDown

ListNextItem()

KExtendRelease

ListKbdEndExtend()

MShiftKDown

ListExtendNextItem
()

MAnyKCancel

ListKbdCancel()

KLeft

ListLeftChar()

KSelectAll

ListKbdSelectAll()

MCtrlKLeft

ListLeftPage()

KDeselectAll

ListKbdDeSelectAll()

KRight

ListRightChar()

KHelp

PrimitiveHelp()

MCtrlKRight

ListRightPage()

KNextField

PrimitiveNextTabGroup()

KPageUp

ListPrevPage()

KPrevField

PrimitivePrevTabGroup()

KPageDown

ListNextPage()

KPageLeft

ListLeftPage()

KPageRight

ListRightPage()

KAny

ListQuickNavigate()

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page808

Inaddition,thetranslationsofListaremodifiedwhentheXmNenableBtn1Transfer()resourceoftheXmDisplayobjectisnotXmOFF.Thefollowing
translationsapplyunderthesecircumstances:
Event

Action

BSelectPress

ListProcessBtn1(ListBeginSelect)

BSelectMotion

ListProcessBtn1(ListButtonMotion)

BSelectRelease

ListProcessBtn1(ListEndSelect)

BExtendPress

ListProcessBtn1(ListBeginExtend)

BExtendRelease

ListProcessBtn1(ListEndExtend)

BTogglePress

ListProcessBtn1(ListBeginToggle)

BToggleRelease

ListProcessBtn1(ListEndToggle)

BTransferPress

ListProcessBtn2(ListBeginExtend)

BTransferMotion

ListProcessBtn2(ListButtonMotion)

BTransferRelease

ListProcessBtn2(ListEndExtend)

ActionRoutines
Listdefinestheactionroutinesbelow.Thecurrentselectionalwaysappearswithitsforegroundandbackgroundcolorsreversed.NotethatmanyListactionshave
differenteffectsdependingontheselectionpolicyandalsothatsomeactionsapplyonlyforaparticularselectionpolicy.
ListAddMode()
Turnsaddmodeonoroff.
ListBeginData()
Movesthecursortothefirstlistitem.Ifkeyboardselectionisinnormalmode,thisactionalsoselectsthefirstitemafterdeselectinganyearlierselectionandinvokes
thecallbacksspecifiedeitherbyXmNbrowseSelectionCallbackorbyXmNextendedSelectionCallback(asdictatedbytheselectionpolicy).
ListBeginDataExtend()
Multipleselection:movesthecursortothefirstlistitem.
Extendedselection:movesthecursortothefirstlistitem,cancelsanycurrentextendedselection,selects(ordeselects)allitemsfromthefirstitemtothecurrent
anchor,andinvokesthecallbacksspecifiedbyXmNextendedSelectionCallback.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page809

ListBeginExtend()
Extendedselection:cancelsanycurrentextendedselection,selects(ordeselects)allitemsfromthepointerlocationtothecurrentanchor,andinvokesthecallbacks
specifiedbyXmNextendedSelectionCallback(iftheXmNautomaticSelectionresourceisTrue).
ListBeginLine()
ScrollstheList'sviewingareahorizontallytoitsbeginning.
ListBeginSelect()
Singleselection:selectsordeselectstheitemunderthepointerafterdeselectinganypreviousselection.
Browseselection:selectstheitemunderthepointerafterdeselectinganypreviousselectionandinvokesthecallbacksspecifiedby
XmNbrowseSelectionCallbackiftheXmNautomaticSelectionresourceisTrue.
Multipleselection:selectsordeselectstheitemunderthepointer,leavingpreviousselectionsunaffected.
Extendedselection:selectstheitemunderthepointerafterdeselectinganypreviousselection,marksthisitemasthecurrentanchor,andinvokesthecallbacks
specifiedbyXmNextendedSelectionCallbackiftheXmNautomaticSelectionresourceisTrue.
ListBeginToggle()
Extendedselection:keepsthecurrentselectionbutshiftstheanchortotheitemunderthepointer.Thisitem'sselectionstateistoggled,andif
XmNautomaticSelectionisTrue,theextendedselectioncallbacksareinvoked.
ListButtonMotion()
Browseselection:selectstheitemunderthepointerafterdeselectinganypreviousselectionandinvokesthebrowseselectioncallbacksif
XmNautomaticSelectionisTrueandthepointermovedoveranewitem.
Extendedselection:cancelsanycurrentextendedselection,selects(ordeselects)allitemsfromthepointerlocationtothecurrentanchor,andinvokesthe
extendedselectioncallbacksifXmNautomaticSelectionisTrueandthepointermovedoveranewitem.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page810

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Inaddition,whenthepointermovesoutsideaScrolledListwidget,thelistscrollsinsyncwiththepointermotion.
ListCopyToClipboard()
InMotif1.2andlater,thisactioncopiestheselectedlistitemstotheclipboard.Theitemsarecopiedasasinglecompoundstring,withanewlinebetweeneachitem.
ListEndData()
Movesthecursortothelastlistitem.Ifkeyboardselectionisinnormalmode,thisactionalsoselectsthelastitemafterdeselectinganyearlierselectionandinvokes
theappropriatecallbacks(browseselectionorextendedselection).
ListEndDataExtend()
Multipleselection:movesthecursortothelastlistitem.
Extendedselection:movesthecursortothelastlistitem,cancelsanycurrentextendedselection,selects(ordeselects)allitemsfromthelastitemtothecurrent
anchor,andinvokestheextendedselectioncallbacks.
ListEndExtend()
Extendedselection:movesthecursortothelastitemwhoseselectionstatewasswitched,andinvokestheextendedselectioncallbacksif
XmNautomaticSelectionisFalse.
ListEndLine()
ScrollstheList'sviewingareahorizontallytoitsbeginning.
ListEndSelect()
Singleselectionormultipleselection:movesthecursortothelastitemwhoseselectionstatewasswitched,andinvokestheappropriateselectioncallbacks.
Browseselectionorextendedselection:sameasabove,exceptthattheappropriatecallbacksarecalledonlyifXmNautomaticSelectionisFalse.
ListEndToggle()
Extendedselection:movesthecursortothelastitemwhoseselectionstatewasswitched,andinvokestheextendedselectioncallbacksif
XmNautomaticSelectionisFalse.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page811

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

ListExtendNextItem()
ListExtendPrevItem()
Extendedselection:addsthenext/previousitemtoanextendedselectionandinvokestheextendedselectioncallbacks.
ListKbdActivate()
Invokesthedefaultactioncallbacks.
ListKbdBeginExtend()
Thisactionisthekeyboard'scomplementtothemouseactivatedListBeginExtend()action.
Extendedselection:cancelsanycurrentextendedselectionandselects(ordeselects)allitemsfromthecursortothecurrentanchor.
ListKbdBeginSelect()
Thisactionisthekeyboard'scomplementtothemouseactivatedListBeginSelect()action.
Singleselection:selectsordeselectstheitematthecursorafterdeselectinganypreviousselection.
Browseselection:selectstheitematthecursorafterdeselectinganypreviousselectionandinvokesthebrowseselectioncallbacksif
XmNautomaticSelectionisTrue.
Multipleselection:selectsordeselectstheitematthecursor,leavingpreviousselectionsunaffected.
Extendedselection:shiftstheanchortotheitematthecursor.Innormalmode,thisitemisselectedafteranypreviousselectionisdeselectedinaddmode,this
item'sstateistoggled,andthecurrentselectionremainsunaffected.ThisactioncallstheextendedselectioncallbacksifXmNautomaticSelectionis
True.
ListKbdCancel()
Extendedselection:cancelsanextendedselectionandrestorestheitemstotheirpreviousselectionstate.
ListKbdDeSelectAll()
Deselectsalllistitemsandcallstheappropriateselectioncallbacks.Thisactionappliestoallselectionmodesexceptbrowseselectionbecausethismoderequiresone
itemtoremainselectedatalltimes.InextendedselectionwithkeyboardNormalModeandanXmNkeyboardFocus

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page812

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

PolicyofXmEXPLICIT,theitematthecursorremainsselectedafterthisactionisapplied.
ListKbdEndExtend()
Extendedselection:callstheextendedselectioncallbacksifXmNautomaticSelectionisFalse.
ListKbdEndSelect()
Singleselectionormultipleselection:callstheappropriateselectioncallbacks.IfXmNautomaticSelectionisFalse,thisactionappliesunderanyofthe
fourselectionpolicies.
ListKbdSelectAll()
Singleselectionorbrowseselection:selectstheitematthecursorandcallstheappropriateselectioncallbacks.
Multipleselectionorextendedselection:selectsalllistitemsandcallstheappropriateselectioncallbacks.
ListLeftChar()
ListLeftPage()
Scrollsthelisteitheronecharacteroronepagetotheleft.
ListNextItem()
Movesthecursortothenextlistitemandhasthefollowingadditionaloperations:
Browseselection:selectsthisitem,deselectsanypreviouslyselecteditem(s),andcallsthebrowseselectioncallbacks.
Extendedselection:innormalmode,selectsthisitemandmovestheanchorthere,deselectsanypreviouslyselecteditem(s),andcallstheextendedselection
callbacks.Inaddmode,neithertheselectionnortheanchorisaffected.
ListNextPage()
MovesthecursorbyscrollingthelisttothelistitematthetopofthenextpageandhasthesameadditionaloperationsasListNextItem().
ListPrevItem()
SameasListNextItem(),goingbackoneiteminstead.
ListPrevPage()
SameasListNextPage(),goingbackonepageinstead.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page813

ListProcessDrag()
InMotif1.2andlater,thisactioninitiatesadraganddropoperationusingtheselecteditems,whereeachitemisseparatedbyanewline.IfBTransferispressed
overanunselecteditem,onlythatitemisusedinthedraganddropoperation.
ListProcessBtn1(string)
InMotif2.0andlater,theXmDisplayresourceXmNenableBtn1TransferconfigurestheintegrationofselectionandtransferoperationsonButton1.
IfXmNenableBtn1TransferisXmOFF,ifnodatatransferhasbeeninitialized,theactionspecifiedbystringisinvokedtoinitiateselection.Possible
valuesforstringare:
ListBeginExtend
ListButtonMotion

ListEndExtend

ListBeginSelect

ListEndSelect

ListBeginToggle

ListEndToggle

ListProcessBtn2(string)
InMotif2.0andlater,iftheXmDisplayresourceXmNenableBtn1TransferhasthevalueXmBUTTON2_TRANSFER,theactionsforextendingList
selectionareboundtoButton2,anddatatransferisinitiated.IftheresourcehasthevalueXmBUTTON2_ADJUST,theactionspecifiedbystringisinvokedto
extendselection.Possiblevaluesforstringare:
ListBeginExtend

ListEndExtend

ListButtonMotion

ListQuickNavigate()
InMotif2.0andlater,navigatestoanitemifXmNmatchBehaviorisXmQUICK_NAVIGATE.
ListRightChar()
ListRightPage()
Scrollsthelisteitheronecharacteroronepagetotheright.
ListScrollCursorVertically()
Makestheitemwiththekeyboardfocusvisible.
PrimitiveHelp()
Callsthehelpcallbacksforthiswidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page814

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

PrimitiveNextTabGroup()
PrimitivePrevTabGroup()
Movesthekeyboardfocustothebeginningofthenextorprevioustabgroup,wrappingaroundifnecessary.
AdditionalBehavior
Listhasthefollowingadditionalbehavior:
<DoubleClick>
CallstheXmNdefaultActionCallbackcallbacks.
<FocusIn>
Ifthekeyboardfocuspolicyisexplicit,setsthefocusanddrawsthelocationcursor.
<FocusOut>
Ifthekeyboardfocuspolicyisexplicit,removesthefocusanderasesthelocationcursor.
SeeAlso
XmCreateObject(1),XmListAddItem(1),XmListAddItemUnselected(1),XmListDeleteAllItems(1),
XmListDeleteItem(1),XmListDeleteItemsPos(1),XmListDeletePos(1),XmListDeletePositions(1),
XmListDeselectAllItems(1),XmListDeselectItem(1),XmListDeselectPos(1),XmListGetKbdItemPos(1),
XmListGetMatchPos(1),XmListGetSelectedPos(1),XmListItemExists(1),XmListItemPos(1),
XmListPosSelected(1),XmListPosToBounds(1),XmListReplaceItems(1),XmListReplaceItemsPos(1),
XmListReplaceItemsPosUnselected(1),XmListReplaceItemsUnselected(1),XmListReplacePositions(1),
XmListSelectItem(1),XmListSelectPos(1),XmListSetAddMode(1),XmListSetBottomItem(1),
XmListSetBottomPos(1),XmListSetHorizPos(1),XmListSetItem(1),XmListSetKbdItemPos(1),XmListSetPos
(1),XmListUpdateSelectedList(1),XmListYToPos(1),Core(2),XmDisplay(2).XmPrimitive(2),
XmTransfer(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page815

XmMainWindow
MotifandXtWidgetClasses
Name
XmMainWindowwidgetclassthestandardlayoutwidgetforanapplication'sprimarywindow.
Synopsis
PublicHeader:

<Xm/MainW.h>

ClassName:

XmMainWindow

ClassHierarchy:

Core Composite Constraint XmManager


XmScrolledWindow XmMainWindow

ClassPointer:

xmMainWindowWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmMainWindowWidgetClass,...)

Functions/Macros: XmCreateMainWindow(),XmMainWindowSep1(),
XmMainWindowSep2(),XmMainWindowSep3(),
XmMainWindowSetAreas(),XmIsMainWindow()

Description
MainWindowprovidesthestandardappearancefortheprimarywindowofanapplication.MainWindowsupportsfivestandardareas:aMenuBar,acommand
window,aworkregion,amessagewindow,andtwoScrollBars(onehorizontalandonevertical).Anapplicationcanuseasmanyorasfewoftheseareasas
necessarytheyarealloptional.AMainWindowcanalsodisplaythreeSeparatorwidgetsfordividingoneareafromanother.
EachoftheMainWindowregionsisassociatedwithaMainWindowresourceXmMainWindowSetAreas()setstheassociatedresources.Ifanapplication
doesnotcallXmMainWindowSetAreas(),thewidgetmaystillsetsomeofthestandardregions.WhenaMenuBarchildisaddedtoaMainWindow,if
XmNmenuBarhasnotbeenset,itissettotheMenuBarchild.WhenaCommandchildisaddedtoaMainWindow,ifXmNcommandhasnotbeenset,itissetto
theCommandchild.IfScrollBarsareaddedaschildren,theXmNhorizontalScrollBarandXmNverticalScrollBarresourcesmaybesetifthey
havenotalreadybeenspecified.AnychildthatisnotoneofthesetypesisusedfortheXmNworkWindow.Ifyouwanttobecertainaboutwhichwidgetsareused
forthedifferentregions,itiswisetocallXmMainWindowSetAreas()explicitly.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page816

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Traits
MainWindowusestheXmQTmenuSystemtrait.
NewResources
MainWindowdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNcommandWindow

XmCCommandWindow

Widget

NULL

CSG

XmNcommand
WindowLocation

XmCCommand
WindowLocation

unsigned XmCOMMAND_
char
ABOVE_WORKSPACE

CG

XmNmainWindow
MarginHeight

XmCMainWindow
MarginHeight

Dimension 0

CSG

XmNmainWindow
MarginWidth

XmCMainWindow
MarginWidth

Dimension 0

CSG

XmNmenuBar

XmCMenuBar

Widget

NULL

CSG

XmNmessageWindow

XmCMessageWindow

Widget

NULL

CSG

XmNshowSeparator

XmCShowSeparator

Boolean

False

CSG

XmNcommandWindow
ThewidgetIDofthecommandwindowchild.
XmNcommandWindowLocation
Oneoftwopositionsforthecommandwindow.Possiblevaluesare:
XmCOMMAND_ABOVE_WORKSPACE/*defaultappearsbelowmenubar*/
XmCOMMAND_BELOW_WORKSPACE/*appearsbetweenworkandmessagewindows*/

XmNmainWindowMarginHeight
ThemarginonthetopandbottomoftheMainWindowwidget.ThisresourceoverridesthecorrespondingmarginresourceintheScrolledWindowwidget.
XmNmainWindowMarginWidth
ThemarginontherightandleftoftheMainWindowwidget.ThisresourceoverridesthecorrespondingmarginresourceintheScrolledWindowwidget.
XmNmenuBar
ThewidgetIDofthemenubarchild.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page817

XmNmessageWindow
ThewidgetIDofthemessagewindowchild.
XmNshowSeparator
IfTrue,separatorsaredisplayedbetweencomponentsoftheMainWindowwidget.IfFalse(default),separatorsarenotdisplayed.
InheritedResources
MainWindowinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Thedefaultvalueof
XmNborderWidthisresetto0byXmManager.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNnavigationType

XmManager

XmNancestorSensitive

Core

XmNnumChildren

Composite

XmNautoDragModel

XmScrolled
Window

XmNpopupHandler
Callback

XmManager

XmNbackground

Core

XmNscreen

Core

XmNbackgroundPixmap

Core

XmNscrollBarDisplay
Policy

XmScrolled
Window

XmNborderColor

Core

XmNscrollBarPlacement

XmScrolled
Window

XmNborderPixmap

Core

XmNscrolledWindow
MarginHeight

XmScrolled
Window

XmNborderWidth

Core

XmNscrolledWindow
MarginWidth

XmScrolled
Window

XmNbottomShadowColor

XmManager

XmNscrollingPolicy

XmScrolled
Window

XmNbottomShadowPixmap XmManager

XmNsensitive

Core

XmNchildren

Composite

XmNshadowThickness

XmManager

XmNclipWindow

XmScrolled
Window

XmNspacing

XmScrolled
Window

XmNcolormap

Core

XmNstringDirection

XmManager

XmNdepth

Core

XmNtopShadowColor

XmManager

XmNdestroyCallback

Core

XmNtopShadowPixmap

XmManager

XmNforeground

XmManager

XmNtranslations

Core

XmNheight

Core

XmNtraversalOn

XmManager

XmNhelpCallback

XmManager

XmNtraverseObscured
Callback

XmScrolled
Window

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page818

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNhighlightColor

XmManager

XmNunitType

XmManager

XmNhighlightPixmap

XmManager

XmNuserData

XmManager

XmNhorizontal
ScrollBar

XmScrolled
Window

XmNvertical
ScrollBar

XmScrolled
Window

XmNinitialFocus

XmManager

XmNvisualPolicy

XmScrolled
Window

XmNinitialResources
Persistent

Core

XmNwidth

Core

XmNinsertPosition

Composite

XmNworkWindow

XmScrolled
Window

XmNlayoutDirection

XmManager

XmNx

Core

XmNmappedWhenManaged

Core

XmNy

Core

Translations
ThetranslationsforMainWindowareinheritedfromScrolledWindow.
SeeAlso
XmCreateObject(1),XmMainWindowSep(1),XmMainWindowSetAreas(1),Composite(2),Constraint(2),Core
(2),XmManager(2),XmScrolledWindow(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page819

XmManager
MotifandXtWidgetClasses
Name
XmManagerwidgetclassthefundamentalclassforMotifwidgetsthatmanagechildren.
Synopsis
PublicHeader:

<Xm/Xm.h>

ClassName:

XmManager

ClassHierarchy:

Core

ClassPointer:

xmManagerWidgetClass

Instantiation:

Managerisametaclassandisnotnormallyinstantiated.

Functions/Macros:

XmIsManager()

Composite

Constraint

XmManager

Description
ManagerisasuperclassforMotifwidgetclassesthatcontainchildren.Managersupportsgeometrymanagementbyprovidingresourcesforvisualshadowsand
highlightsandforkeyboardtraversalmechanisms.
Thedefaultvaluesofthecolorresourcesfortheforeground,background,topandbottomshadows,andhighlightingaresetdynamically.Ifnocolorsarespecified,
theyaregeneratedautomatically.Onamonochromesystem,blackandwhitecolorsareselected.Onacolorsystem,fourcolorsareselectedthatprovidethe
appropriateshadingforthe3Dvisuals.Whenthebackgroundcolorisspecified,theshadowcolorsareselectedtoprovidetheappropriate3Dappearanceand
foregroundandhighlightcolorsareselectedtoprovidethenecessarycontrast.ThecolorsaregeneratedwhenthewidgetiscreatedusingXtSetValues()to
changethebackgrounddoesnotchangetheothercolors.WithMotif1.2,useXmChangeColor()tochangetheassociatedcolorswhenthebackgroundcoloris
changed.
InMotif2.0andlater,thewayinwhichpopupmenusarepostedforparticularwidgetsisrationalizedbyincludingwithinManagerandPrimitivepopuphandler
callbackresources.Whenapopupmenuiscreated,aneventhandlermaybeautomaticallyinstalledupontheparentManagertocatchpostingevents.Onceinreceipt
ofthepostingevent,theManager'sXmNpopupHandlerCallbacklistisinvokedinordertodeterminewhichofthevariouspopupmenusavailableiscurrently
required.WhetherthehandlersareautomaticallyinstalleddependsuponthevalueoftheXmNpopupEnabledresourceofthemenusconcerned.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page820

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Traits
ManagerholdstheXmNspecifyLayoutDirection,XmNspecifyUnitType,andXmNaccessColorstraits,whichareinheritedbyanyderived
classes.
NewResources
Managerdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNbottomShadow
Color

XmCBottomShadow
Color

Pixel

dynamic

CSG

XmNbottomShadow
Pixmap

XmCBottomShadow
Pixmap

Pixmap

XmUNSPECIFIED_
PIXMAP

CSG

XmNforeground

XmCForeground

Pixel

dynamic

CSG

XmNhighlightColor

XmCHighlightColor

Pixel

dynamic

CSG

XmNhighlightPixmap

XmCHighlightPixmap

Pixmap

dynamic

CSG

XmNinitialFocus

XmCInitialFocus

Widget

NULL

CSG

XmNlayoutDirection

XmCLayoutDirection

XmDirection

dynamic

CSG

XmNnavigationType

XmCNavigationType

XmNavigation
Type

XmTAB_GROUP

CSG

XmNshadowThickness

XmCShadowThickness

Dimension

CSG

XmNstringDirection

XmCStringDirection

XmString
Direction

dynamic

CG

XmNtopShadowColor

XmCTopShadowColor

Pixel

dynamic

CSG

XmNtopShadowPixmap

XmCTopShadowPixmap

Pixmap

dynamic

CSG

XmNtraversalOn

XmCTraversalOn

Boolean

True

CSG

XmNunitType

XmCUnitType

unsignedchar

dynamic

CSG

XmNuserData

XmCUserData

XtPointer

NULL

CSG

XmNbottomShadowColor
Thecolorusedindrawingthebordershadow'sbottomandrightsides,butonlyifXmNbottomShadowPixmapisNULL.
XmNbottomShadowPixmap
Thepixmapusedindrawingthebordershadow'sbottomandrightsides.
XmNforeground
TheforegroundcolorusedbyManagerwidgets.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page821

XmNhighlightColor
Thecolorusedindrawingthehighlightingrectangle,butonlyifXmNhighlightPixmapisXmUNSPECIFIED_PIXMAP.
XmNhighlightPixmap
Thepixmapusedindrawingthehighlightingrectangle.
XmNinitialFocus
InMotif1.2andlater,thewidgetIDofthewidgetthatreceivesthekeyboardfocuswhenthemanagerisachildofashellandtheshellreceivesthekeyboardfocus
forthefirsttime.
XmNlayoutDirection
InMotif2.0andlater,specifiesthedirectioninwhichcomponentsoftheManagerarelaidout.Ifunspecified,thevalueisinheritedfromthenearestancestorholding
theXmQTspecifyLayoutDirectiontrait.Manager,MenuShell,andVendorShellholdthistrait.Possiblevaluesare:
XmLEFT_TO_RIGHT

XmRIGHT_TO_LEFT

XmBOTTOM_TO_TOP

XmTOP_TO_BOTTOM

XmBOTTOM_TO_TOP_LEFT_TO_RIGHT

XmBOTTOM_TO_TOP_RIGHT_TO_LEFT

XmTOP_TO_BOTTOM_LEFT_TO_RIGHT

XmTOP_TO_BOTTOM_RIGHT_TO_LEFT

XmLEFT_TO_RIGHT_BOTTOM_TO_TOP

XmRIGHT_TO_LEFT_BOTTOM_TO_TOP

XmLEFT_TO_RIGHT_TOP_TO_BOTTOM

XmRIGHT_TO_LEFT_TOP_TO_BOTTOM

XmNnavigationType
DeterminesthewayinwhichaManagerwidgetistraversedduringkeyboardnavigation.Possiblevaluesare:
XmNONE/*excludefromkeyboardnavigation*/
XmTAB_GROUP/*includeinkeyboardnavigation*/
XmSTICKY_TAB_GROUP/*includeinkeyboardnavigation,*/
/*evenifXmAddTabGroup()wascalled*/
XmEXCLUSIVE_TAB_GROUP/*applicationdefinesorderofnavigation*/

XmNshadowThickness
Thethicknessoftheshadowborder.Thisresourceisdynamicallysetto1inatoplevelwindowand0otherwise.
XmNstringDirection
Thedirectioninwhichtodrawthestring.Possiblevaluesare:
XmSTRING_DIRECTION_L_TO_R
XmSTRING_DIRECTION_DEFAULT

XmSTRING_DIRECTION_R_TO_L

InMotif2.0andlater,theXmNstringDirectionresourceisobsolete,andissubsumedintotheXmNlayoutDirectionresource.Ifthe
XmNlayoutDirectionisNULL,andtheXmNstringDirectionis

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page822

XmSTRING_DIRECTION_DEFAULT,thevaluewillbetakenfromthenearestancestorwhichholdstheXmQTspecifyLayoutDirectiontrait.
Manageritself,MenuShell,andVendorShellholdthistrait.
XmNtopShadowColor
Thecolorusedindrawingthebordershadow'stopandleftsides.(UsedonlyifXmNtopShadowPixmapisNULL.)
XmNtopShadowPixmap
Thepixmapusedindrawingthebordershadow'stopandleftsides.
XmNtraversalOn
IfTrue(default),traversalofthiswidgetismadepossible.
XmNunitType
Themeasurementunitstouseinresourcesthatspecifyasizeorpositionforexample,anyresourcesoftypeDimension(whosenamesgenerallyincludeoneofthe
wordsMargin,Height,Width,Thickness,orSpacing),aswellastheoffsetresourcesdefinedbyForm.Forawidgetwhoseparentisamanager,thedefaultvalueis
copiedfromthisparent(providedthevaluehasn'tbeenexplicitlysetbytheapplication)otherwise,thedefaultisXmPIXELS.Possiblevaluesare:
XmPIXELS

Xm100TH_POINTS

Xm100TH_MILLIMETERS

Xm100TH_FONT_UNITS

Xm1000TH_INCHES

XmINCHES(Motif2.0)

XmPOINTS(Motif2.0)

XmFONT_UNITS(Motif2.0)

XmNuserData
Apointertodatathattheapplicationcanattachtothewidget.Thisresourceisunusedinternally.
CallbackResources
Managerdefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNhelpCallback

XmCR_HELP

XmNpopupHandlerCallback

XmCR_POST

XmCR_REPOST

XmNhelpCallback
Listofcallbacksthatarecalledwhenhelpisrequested.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page823

XmNpopupHandlerCallback
InMotif2.0andlater,thelistofcallbacksinvokedinordertodeterminewhichpopupmenutodisplay.
CallbackStructure
Withtheexceptionofapopuphandlercallback,eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*settoXmCR_HELP*/
XEvent*event/*eventstructurethattriggeredcallback*/
}XmAnyCallbackStruct

Apopuphandlercallbackispassedapointertothefollowingstructure:
typedefstruct
{
intreason/*thereasonthecallbackisinvoked*/
XEvent*event/*eventstructurethattriggeredcallback*/
WidgetmenuToPost/*themenutopost*/
BooleanpostIt/*whethertocontinueposting*/
Widgettarget/*themanagerdescendantissuingrequest*/
}XmPopupHandlerCallbackStruct

reasoniseitherXmPOSTorXmREPOST.XmPOSTisthenormalmenupostrequest.XmREPOSTiscalledwhenthemenuisunpostedbecauseofeventreplay.
menuToPostisthesuggestedmenutobeposted.Youcanaltertheelementifadifferentmenuisrequired.
postItisaflagthatindicateswhetherthepostingoperationistocontinueoncethecallbackhasfinished.ThedefaultvalueisTrueifreasonisXmPOST
otherwiseFalse.
targetisthewidgetorgadgetthattheManagerbelievesbestdescribesthesourceofthepostingevent.Thealgorithmperformsarecursivedescent,matchingthe
receivedeventagainstthelocationofmanagedchildren.
InheritedResources
Managerinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Managerresetsthedefaultvalueof
XmNborderWidthfrom1to0.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page824
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNheight

Core

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNinsertPosition

Composite

XmNbackgroundPixmap

Core

XmNmappedWhenManaged

Core

XmNborderColor

Core

XmNnumChildren

Composite

XmNborderPixmap

Core

XmNscreen

Core

XmNborderWidth

Core

XmNsensitive

Core

XmNchildren

Composite

XmNtranslations

Core

XmNcolormap

Core

XmNWidth

Core

XmNdepth

Core

XmNx

Core

XmNdestroyCallback

Core

XmNy

Core

Translations
ForManagerwidgetsthathavegadgetchildren:
Event

Action

BAny

ManagerGadgetButtonMotion()

BSelectPress

ManagerGadgetArm()

BSelectClick

ManagerGadgetActivate()

BSelectRelease

ManagerGadgetActivate()

BSelectPress2+

ManagerGadgetMultiArm()

BSelectRelease2+

ManagerGadgetMultiActivate()

BTransferPress

ManagerGadgetDrag()

KActivate

ManagerParentActivate()(1.2)

KCancel

ManagerParentCancel()

KPrevField

ManagerGadgetPrevTabGroup()

KNextField

ManagerGadgetNextTabGroup()

KUp

ManagerGadgetTraverseUp()

KDown

ManagerGadgetTraverseDown()

KLeft

ManagerGadgetTraverseLeft()

KRight

ManagerGadgetTraverseRight()

KSelect

ManagerGadgetSelect()

KBeginLine

ManagerGadgetTraverseHome()

KHelp

ManagerGadgetHelp(),ManagerGadgetSelect()(1.1)

KAny

ManagerGadgetKeyInput()

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page825

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

ActionRoutines
TheactionroutinesforaManagerwidgetaffectthegadgetchildthathasthekeyboardfocus.Thedescriptionsbelowrefertothegadgetthathasthefocus.
ManagerGadgetActivate()
Activatesthegadget.
ManagerGadgetArm()
Armsthegadget.
ManagerGadgetButtonMotion()
Triggersthemousemotioneventthatthegadgetreceived.
ManagerGadgetDrag()
InMotif1.2andlater,initiatesadraganddropoperationusingthecontentsofagadget'slabel.
ManagerGadgetHelp()
Invokesthelistofcallbacksspecifiedbythegadget'sXmNhelpCallbackresource.Ifthegadgetdoesn'thaveanyhelpcallbacks,the
ManagerGadgetHelp()routineinvokesthoseassociatedwiththenearestancestorthathasthem.
ManagerGadgetKeyInput()
Triggersthekeyboardeventthatthegadgetreceived.
ManagerGadgetMultiActivate()
Processesamultipleclickofthemouse.
ManagerGadgetMultiArm()
Processesamultiplepressofthemousebutton.
ManagerGadgetNextTabGroup()
ManagerGadgetPrevTabGroup()
Traversestothebeginningofthenext/previoustabgroup,wrappingifnecessary.
ManagerGadgetSelect()
Armsandactivatesthegadget.
ManagerGadgetTraverseDown()
ManagerGadgetTraverseUp()
Withinthesametabgroup,descends/ascendstotheitembelow/abovethegadget,wrappingifnecessary.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page826

ManagerGadgetTraverseHome()
Changesthefocustothefirstiteminthetabgroup.
ManagerGadgetTraverseLeft()
ManagerGadgetTraverseRight()
Withinthesametabgroup,traversestotheitemontheleft/rightofthegadget,wrappingifnecessary.
ManagerGadgetTraverseNext()
ManagerGadgetTraversePrev()
Withinthesametabgroup,traversestothenext/previousitem,wrappingifnecessary.
ManagerParentActivate()
InMotif1.2andlater,passestheKActivateeventtotheparentifitisamanager.
ManagerParentCancel()
InMotif1.2andlater,passestheKCanceleventtotheparentifitisamanager.
AdditionalBehavior
Managerhasthefollowingadditionalbehavior:
<FocusIn>
Iftheeventoccursinagadget,highlightsthegadgetandgivesitthefocusundertheexplicitkeyboardfocuspolicy.
<FocusOut>
Iftheeventoccursinagadget,unhighlightsthegadgetandremovesthefocusundertheexplicitkeyboardfocuspolicy.
SeeAlso
Composite(2),Constraint(2),Core(2),XmGadget(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page827

XmMenuBar
MotifandXtWidgetClasses
Name
XmMenuBaratypeofRowColumnwidgetusedasamenubar.
Synopsis
PublicHeader:

<Xm/RowColumn.h>

ClassName:

XmRowColumn

ClassHierarchy:

Core

ClassPointer:

Composite

Constraint

XmManager XmRowColumn

xmRowColumnWidgetClass
widget=XmCreateMenuBar(...)

Instantiation:
Functions/Macros: XmCreateMenuBar(),XmCreateSimpleMenuBar(),
XmVaCreateSimpleMenuBar(),XmIsRowColumn()

Description
AMenuBarisaninstanceofaRowColumnwidgetthatisnormallyusedforconstructingapulldownmenusystem.AnapplicationtypicallyplacesaMenuBaracross
thetopofthemainapplicationwindow.CascadeButtonsareaddedtotheMenuBarandpulldownmenusareassociatedwitheachoftheCascadeButtons.
MenuBarisaRowColumnwidgetwhoseXmNrowColumnTyperesourceissettoXmMENU_BAR.TheXmNentryClassresourceissetto
XmCascadeButtonWidgetClassandXmNisHomogeneousissettoTrue,sothatonlyCascadeButtonscanbeaddedtothewidget.The
XmNmenuAcceleratorresourceissettoKMenuBarandXmNmenuPostissettoBSelectPress.TheXmNmenuHelpWidgetresourcecan
besettospecifytheCascadeButtonfortheHelpmenu.TheXmNorientationresourceissettoXmHORIZONTAL.
AMenuBarcanbecreatedusingXmCreateMenuBar().Inthiscase,theMenuBardoesnotautomaticallycontainanyCascadeButtonstheyareaddedbythe
application.
AMenuBarcanalsobecreatedbyXmCreateSimpleMenuBar(),whichautomaticallycreatestheMenuBarwiththespecifiedCascadeButtonGadgetsas
children.ThisroutineusestheRowColumnresourcesassociatedwiththecreationofsimplemenus.ForaMenuBar,theonlytypeallowedintheXmNbuttonType
resourceisXmCASCADEBUTTON.ThenameofeachCascadeButtonGadgetisbutton_n,wherenisthenumberofthebutton,rangingfrom0to1lessthanthe
numberofbuttonsintheMenuBar.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page828

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

DefaultResourceValues
AMenuBarsetsthefollowingdefaultvaluesforRowColumnresources:
Name

Default

XmNentryClass

xmCascadeButtonWidgetClass

XmNisHomogeneous

True

XmNmenuAccelerator

KMenuBar

XmNmenuPost

BSelectPress

XmNorientation

XmHORIZONTAL

XmNrowColumnType

XmMENU_BAR

SeeAlso
XmCreateObject(1),XmVaCreateSimpleMenuBar(1),XmCascadeButton(2),XmRowColumn(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page829

XmMenuShell
MotifandXtWidgetClasses
Name
XmMenuShellwidgetclassashellwidgetmeanttocontainpopupandpulldownmenupanes.
Synopsis
PublicHeader:

<Xm/MenuShell.h>

ClassName:

XmMenuShell

ClassHierarchy:

Core

ClassPointer:

Composite

Shell

OverrideShell XmMenuShell

xmMenuShellWidgetClass
widget=XtCreateWidget(name,xmMenuShellWidgetClass,...)

Instantiation:
Functions/Macros: XmCreateMenuShell(),XmCreatePopupMenu(),XmCreatePulldownMenu
(),XmIsMenuShell()

Description
MenuShellisasubclassofOverrideShellthatismeanttocontainonlypopuporpulldownmenupanes.MostapplicationwritersdonotneedtocreateMenuShell
widgetsexplicitlybecausetheyarecreatedautomaticallybytheconvenienceroutinesXmCreatePopupMenu()andXmCreatePulldownMenu().
IfyoudonotusetheconveniencefunctionsandcreateyourownMenuShellwidgets,thetypeofmenusystembeingbuiltdeterminestheparenttospecifyforthe
MenuShell.Foratoplevelpopupmenu,specifythewidgetfromwhichitwillpopup.Forapulldownmenupanefromthemenubar,specifythemenubar.Fora
pulldownmenupanefromanotherpulldownmenuorapopupmenu,specifythemenupanefromwhichitispulleddown.Forpulldownmenuinanoptionmenu,
specifytheoptionmenu'sparent.
Traits
MenuShellholdstheXmQTspecifyLayoutDirectionandXmQTspecifyRenderTabletraits,whichareinheritedbyanyderivedclasses,anduses
theXmQTmenuSystemandXmQTspecifyRenderTabletraits.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page830

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewResources
MenuShelldefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNbuttonFontList

XmCButtonFontList

XmFontList

dynamic

CSG

XmNbuttonRenderTable

XmCButtonRenderTable

XmRenderTable

dynamic

CSG

XmNdefaultFontList

XmCDefaultFontList

XmFontList

dynamic

CG

XmNlabelFontList

XmCLabelFontList

XmFontList

dynamic

CSG

XmNlabelRenderTable

XmCLabelRenderTable

XmRenderTable

dynamic

CSG

XmNlayoutDirection

XmCLayoutDirection

XmDirection

dynamic

CSG

XmNbuttonFontList
ThefontlistusedforthebuttonchildrenoftheMenuShellwidget.InMotif2.0andlater,XmfontListisconsideredobsoletetherenditiontableisthepreferred
methodofsettingappearance.AnyXmNbuttonRenderTablevaluetakesprecedence.
XmNbuttonRenderTable
SpecifiestherendertableusedforbuttonchildrenoftheMenuShellwidget.IfthevalueisNULL,thisisinheritedfromthenearestancestorwiththe
XmQTspecifyRenderTabletrait,takingtheXmBUTTON_RENDER_TABLEvaluefromtheancestorsofound.TheBulletinBoard,
VendorShell,andMenuShellwidgetsandderivedclassessetthistrait.
XmNdefaultFontList
ThedefaultfontlistforthechildrenoftheMenuShellwidget.ThisresourceisobsoleteasofMotif1.2.
XmNlabelFontList
ThefontlistusedforthelabelchildrenoftheMenuShellwidget.InMotif2.0andlater,XmFontListisconsideredobsoletetherenditiontableisthepreferred
methodofsettingappearance.AnyXmNlabelRenderTablevaluetakesprecedence.
XmNlabelRenderTable
SpecifiestherendertableusedforlabelchildrenoftheMenuShellwidget.IfthevalueisNULL,thisisinheritedfromthenearestancestorwiththe
XmQTspecifyRenderTabletrait,takingtheXmLABEL_RENDER_TABLEvaluefromtheancestorsofound.TheBulletinBoard,
VendorShell,andMenuShellwidgetsandderivedclassessetthistrait.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page831

XmNlayoutDirection
InMotif2.0andlater,specifiesthedefaultdirectioninwhichdescendantsoftheMenuShellarelaidout:
XmLEFT_TO_RIGHT

XmRIGHT_TO_LEFT

XmBOTTOM_TO_TOP

XmTOP_TO_BOTTOM

XmBOTTOM_TO_TOP_LEFT_TO_RIGHT

XmBOTTOM_TO_TOP_RIGHT_TO_LEFT

XmTOP_TO_BOTTOM_LEFT_TO_RIGHT

XmTOP_TO_BOTTOM_RIGHT_TO_LEFT

XmLEFT_TO_RIGHT_BOTTOM_TO_TOP

XmRIGHT_TO_LEFT_BOTTOM_TO_TOP

XmLEFT_TO_RIGHT_TOP_TO_BOTTOM

XmRIGHT_TO_LEFT_TOP_TO_BOTTOM

InheritedResources
MenuShellinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.MenuShellsetsthedefaultvalueof
XmNallowShellResizetoTrueandXmNborderWidthto0.ThedefaultvaluesofXmNoverrideRedirectandXmNsaveUnderaresetto
TruebyOverrideShell.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinitialResources
Persistent

Core

XmNallowShellResize

Shell

XmNinsertPosition

Composite

XmNancestorSensitive

Core

XmNmappedWhenManaged

Core

XmNbackground

Core

XmNnumChildren

Composite

XmNbackgroundPixmap

Core

XmNoverrideRedirect

Shell

XmNborderColor

Core

XmNpopdownCallback

Shell

XmNborderPixmap

Core

XmNpopupCallback

Shell

XmNborderWidth

Core

XmNsaveUnder

Shell

XmNchildren

Composite

XmNscreen

Core

XmNcolormap

Core

XmNsensitive

Core

XmNcreatePopupChildProc

Shell

XmNtranslations

Core

XmNdepth

Core

XmNvisual

Shell

XmNdestroyCallback

Core

XmNwidth

Core

XmNgeometry

Shell

XmNx

Core

XmNheight

Core

XmNy

Core

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page832

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Translations
Event

Action

BSelectPress

ClearTraversal()

BSelectRelease

MenuShellPopdownDone()

ActionRoutines
MenuShelldefinesthefollowingactionroutines:
ClearTraversal()
Shutsoffkeyboardtraversalwithinthismenu,turnsonmousetraversal,andunpostsanysubmenusthatthismenuposted.
MenuShellPopdownDone()
Unpoststhemenutreeandrestoresthepreviousfocus.
MenuShellPopdownOne()
LikeMenuShellPopdownDone()exceptthatitunpostsonlyonelevelofthemenutree.Inatoplevelpulldownmenupaneattachedtoamenubar,thisaction
routinedisarmsthecascadebuttonandthemenubar.
SeeAlso
XmCreateObject(1),Composite(2),Core(2),OverrideShell(2),Shell(2),XmRowColumn(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page833

XmMessageBox
MotifandXtWidgetClasses
Name
XmMessageBoxwidgetclassacompositewidgetusedforcreatingmessagedialogs.
Synopsis
PublicHeader:

<Xm/MessageB.h>

ClassName:

XmMessageBox

ClassHierarchy:

Core Composite Constraint XmManager


XmBulletinBoard XmMessageBox

ClassPointer:

xmMessageBoxWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmMessageBoxWidgetClass,...)

Functions/Macros: XmCreateErrorDialog(),
XmCreateInformationDialog(),
XmCreateMessageBox(),
XmCreateMessageDialog(),
XmCreateQuestionDialog(),
XmCreateTemplateDialog(),
XmCreateWarningDialog(),
XmCreateWorkingDialog(),XmIsMessageBox
(),XmMessageBoxGetChild()

Description
MessageBoxiscompositewidgetthatisusedforcreatingsimplemessagedialogboxes,whichnormallypresenttransientmessages.AMessageBoxusuallycontainsa
messagesymbol,amessage,threePushButtons,andaseparatorbetweenthemessageandthebuttons.Thenamesofthesymbolandtheseparatorgadgetsare
SymbolandSeparator.InMotif1.2andlater,thedefaultsymbolsandbuttonlabelscanbelocalized.TheXmNdialogTyperesourcecontrolsthetypeof
messagesymbolthatisdisplayed.IntheClocale,andinMotif1.1,thePushButtonsarelabeledOK,Cancel,andHelpbydefault.
YoucancustomizeaMessageBoxbyremovingexistingchildrenoraddingnewchildren.UseXmMessageBoxGetChild()toretrievethewidgetIDofan
existingchildandthenunmanagethechild.WithMotif1.2andlater,multiplewidgetscanbeaddedaschildrenofaMessageBox.Ifamenubarisadded,itisplaced
atthetopofthewindow.AnybuttonsareplacedaftertheOKbutton.Anyadditionalchildrenareplacedbelowthemessage.InMotif1.1,onlyasinglewidgetcan
beaddedasachildofaMessageBox.Thischildisplacedbelowthemessageandactsasaworkarea.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page834

InMotif1.2andlater,aXmNdialogTypeofXmDIALOG_TEMPLATEcreateaTemplateDialogwhichcontainsnothingbutaseparatorbydefault.Specifying
callback,labelstring,orpixmapsymbolresourcescausestheappropriatechildrenoftheMessageBoxtobecreated.
Traits
MessageBoxusestheXmQTactivatabletrait.
NewResources
MessageBoxdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNcancelLabelString

XmCCancelLabelString

XmString

dynamic

CSG

XmNdefaultButtonType

XmCDefaultButtonType

unsigned
char

XmDIALOG_OK_
BUTTON

CSG

XmNdialogType

XmCDialogType

unsigned
char

XmDIALOG_
MESSAGE

CSG

XmNhelpLabelString

XmCHelpLabelString

XmString

dynamic

CSG

XmNmessageAlignment

XmCAlignment

unsigned
char

XmALIGNMENT_
BEGINNING

CSG

XmNmessageString

XmCMessageString

XmString

""

CSG

XmNminimizeButtons

XmCMinimizeButtons

Boolean

False

CSG

XmNokLabelString

XmCOkLabelString

XmString

dynamic

CSG

XmNsymbolPixmap

XmCPixmap

Pixmap

dynamic

CSG

XmNcancelLabelString
ThestringthatlabelstheCancelbutton.InMotif1.2andlater,thedefaultvalueislocaledependent.IntheClocale,andinMotif1.1,thedefaultvalueis
"Cancel".
XmNdefaultButtonType
SpecifieswhichPushButtonprovidesthedefaultaction.Possiblevaluesare:
XmDIALOG_CANCEL_BUTTON
XmDIALOG_HELP_BUTTON

XmDIALOG_OK_BUTTON

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page835

XmNdialogType
ThetypeofMessageBoxdialog,whichalsoindicatesthemessagesymbolthatdisplaysbydefault.Possiblevaluesare:
XmDIALOG_ERROR

XmDIALOG_TEMPLATE(Motif1.2)

XmDIALOG_INFORMATION

XmDIALOG_WARNING

XmDIALOG_MESSAGE

XmDIALOG_WORKING

XmDIALOG_QUESTION

XmNhelpLabelString
ThestringthatlabelstheHelpbutton.InMotif1.2andlater,thedefaultvalueislocaledependent.IntheClocale,andinMotif1.1,thedefaultvalueis"Help".
XmNmessageAlignment
Thetypeofalignmentforthemessagelabel.Possiblevaluesare:
XmALIGNMENT_BEGINNING

XmALIGNMENT_CENTER

XmALIGNMENT_END

XmNmessageString
Thestringtouseasthemessagelabel.
XmNminimizeButtons
IfFalse(default),allbuttonsarestandardizedtobeaswideasthewidestbuttonandashighasthehighestbutton.IfTrue,buttonskeeptheirpreferredsize.
XmNokLabelString
ThestringthatlabelstheOKbutton.InMotif1.2andlater,thedefaultvalueislocaledependent.IntheClocale,andinMotif1.1,thedefaultvalueis"OK".
XmNsymbolPixmap
Thepixmaplabeltouseasthemessagesymbol.
CallbackResources
MessageBoxdefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNcancelCallback

XmCR_CANCEL

XmNokCallback

XmCR_OK

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page836

XmNcancelCallback
ListofcallbacksthatarecalledwhentheuserselectstheCancelbutton.
XmNokCallback
ListofcallbacksthatarecalledwhentheuserselectstheOKbutton.
CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
}XmAnyCallbackStruct

InheritedResources
MessageBoxinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Thedefaultvalueof
XmNborderWidthisresetto0byXmManager.BulletinBoardsetsthevalueofXmNinitialFocustoXmNdefaultButtonandresetsthedefault
XmNshadowThicknessfrom0to1iftheMessageBoxisachildofaDialogShell.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinsertPosition

Composite

XmNallowOverlap

XmBulletinBoard

XmNlabelFontList

XmBulletinBoard

XmNancestorSensitive

Core

XmNlabelRenderTable

XmBulletinBoard

XmNautoUnmanage

XmBulletinBoard

XmNlayoutDirection

XmManager

XmNbackground

Core

XmNmapCallback

XmBulletinBoard

XmNbackgroundPixmap

Core

XmNmappedWhenManaged

Core

XmNborderColor

Core

XmNmarginHeight

XmBulletinBoard

XmNborderPixmap

Core

XmNmarginWidth

XmBulletinBoard

XmNborderWidth

Core

XmNnavigationType

XmManager

XmNbottomShadowColor

XmManager

XmNnoResize

XmBulletinBoard

XmNbottomShadowPixmap

XmManager

XmNnumChildren

Composite

XmNbuttonFontList

XmBulletinBoard

XmNresizePolicy

XmBulletinBoard

XmNbuttonRenderTable

XmBulletinBoard

XmNscreen

Core

XmNcancelButton

XmBulletinBoard

XmNsensitive

Core

XmNchildren

Composite

XmNshadowThickness

XmManager

XmNcolormap

Core

XmNshadowType

XmBulletinBoard

XmNdefaultButton

XmBulletinBoard

XmNstringDirection

XmManager

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page837

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNdefaultPosition

XmBulletinBoard

XmNtextFontList

XmBulletinBoard

XmNdepth

Core

XmNtextRenderTable

XmBulletinBoard

XmNdestroyCallback

Core

XmNtextTranslations

XmBulletinBoard

XmNdialogStyle

XmBulletinBoard

XmNtopShadowColor

XmManager

XmNdialogTitle

XmBulletinBoard

XmNtopShadowPixmap

XmManager

XmNfocusCallback

XmBulletinBoard

XmNtranslations

Core

XmNforeground

XmManager

XmNtraversalOn

XmManager

XmNheight

Core

XmNunitType

XmManager

XmNhelpCallback

XmManager

XmNunmapCallback

XmBulletinBoard

XmNhighlightColor

XmManager

XmNuserData

XmManager

XmNhighlightPixmap

XmManager

XmNwidth

Core

XmNinitialFocus

XmManager

XmNx

Core

XmNinitialResources
Persistent

Core

XmNy

Core

Translations
ThetranslationsforMessageBoxincludethosefromXmManager.
AdditionalBehavior
MessageBoxhasthefollowingadditionalbehavior:
MAnyKCancel
ForasensitiveCancelbutton,invokesthecallbacksinXmNactivateCallback.
KActivate
Forthebuttonthathaskeyboardfocus,orthedefaultbutton,invokesthecallbacksinXmNactivateCallback.
<OKButtonActivated>
InvokesthecallbacksforXmNokCallback.
<CancelButtonActivated>
InvokesthecallbacksforXmNcancelCallback.
<HelpButtonActivated>
InvokesthecallbacksforXmNhelpCallback.
<FocusIn>
InvokesthecallbacksforXmNfocusCallback.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page838

<Map>
InvokesthecallbacksforXmNmapCallbackiftheparentisaDialogShell.
<Unmap>
InvokesthecallbacksforXmNunmapCallbackiftheparentisaDialogShell.
SeeAlso
XmCreateObject(1),XmMessageBoxGetChild(1),Composite(2),Constraint(2),Core(2),XmBulletinBoard
(2),XmErrorDialog(2),XmInformationDialog(2),XmManager(2),XmQuestionDialog(2),XmTemplateDialog
(2),XmWarningDialog(2),XmWorkingDialog(2),

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page839

XmMessageDialog
MotifandXtWidgetClasses
Name
XmMessageDialoganunmanagedMessageBoxasachildofDialogShell.
Synopsis
PublicHeader:

<Xm/MessageB.h>
widget=XmCreateMessageDialog(...)

Instantiation:
Functions/Macros:

XmCreateMessageDialog(),XmMessageBoxGetChild()

Description
AMessageDialogisacompoundobjectcreatedbyacalltoXmCreateMessageDialog()thatanapplicationcanusetopresentamessagetotheuser.A
MessageDialogconsistsofaDialogShellwithanunmanagedMessageBoxwidgetasitschild.TheMessageBoxresourceXmNdialogTypeissetto
XmDIALOG_MESSAGE.AMessageDialogincludesfourcomponents:asymbol,amessage,threebuttons,andaseparatorbetweenthemessageandthebuttons.
Bydefault,thereisnosymbol.InMotif1.2andlater,thedefaultbuttonlabelscanbelocalized.IntheClocale,andinMotif1.1,thePushButtonsarelabeledOK,
Cancel,andHelpbydefault.
DefaultResourceValues
AMessageDialogsetsthefollowingdefaultvaluesforMessageBoxresources:
Name

Default

XmNdialogType

XmDIALOG_MESSAGE

WidgetHierarchy
WhenaMessageDialogiscreatedwithaspecifiedname,theDialogShellisnamedname_popupandtheMessageBoxiscalledname.
SeeAlso
XmCreateObject(1),XmMessageBoxGetChild(1),XmDialogShell(2),XmMessageBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page840

XmNotebook
MotifandXtWidgetClasses
Name
XmNotebookwidgetclassaconstraintwidgetthatlaysoutitschildrenlikepagesinabook.
Synopsis
PublicHeader:

<Xm/Notebook.h>

ClassName:

XmNotebook

ClassHierarchy:

Core Composite

ClassPointer:

Constraint

XmManager XmNotebook

xmNotebookWidgetClass
widget=XtCreateWidget(name,xmNotebookWidgetClass,...)

Instantiation:
Functions/Macros:

XmNotebookGetPageInfo(),XmCreateNotebook(),XmIsNotebook()

Availability
Motif2.0andlater.
Description
Notebookisaconstraintwidgetthatorganizesitschildrenintologicalpages.Itlaysitselfoutsothatthestackoflogicalpageslookslikethepagesofanopen
notebook.TheNotebookhasvisualstosimulatebookbindingandoverlapping(back)pageedges.Onlyonepageisvisibleatanytime.
TheNotebookcanbedividedinsectionsandsubsectionsbycreatingtabsthataredisplayedalongtheedgeoftheNotebookpages.Amajortabdividesthe
Notebookintosectionswithineachsectiontheremaybefurtherminortabs.Atabisassociatedwithapage,sothatactivatingatabcausestherelevantpagetobe
displayedwithintheNotebook.TheNotebookautomaticallycreatesatabscroller,consistingofasetoffourArrowButtonGadgetstheseareusedformoving
backwardsandforwardsbetweenthemajorandminortabswhenitisnotpossibletodisplayallthetabs.
Astatusareacanbeassociatedwithapageandusedforprovidingadditionalinformation,typicallythepagenumber.
Inadditiontoassociatingtabswithpages,apagescrollercanalsobecreatedformovingbetweenpagesoftheNotebook.Thiscanbeanypreferredmethodof
navigatingbetweenthepages.If,however,thereisnopagescrollerassociatedwiththe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page841

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Notebookwhenitisrealized,theNotebookcreatesadefaultpagescroller,consistingofaSpinBox.ANotebookonlyrequiresonepagescroller.
AfullyprogrammedNotebook,therefore,consistsofpages,tabs,statusareas,apagescroller,andatabscroller.Theprogrammerdoesnotcreatethetabscroller,
andonlyoptionallyprovidesanalternativepagescroller.Tabsandstatusareasarealsooptional.
AnapplicationaddsapagetotheNotebookbycreatingachildwiththeconstraintresourceXmNnotebookChildTypesettoXmPAGE.Anywidgetderived
fromRectObjmayformapageoftheNotebook.ThedefaultbehaviorwhenXmNnotebookChildTypeisunspecified(XmNONE)isthatthechildformsa
page,withthefollowingexceptions:achildwiththeXmQTactivatabletrait(ArrowButton,DrawnButton,PushButton,andderivedclasses)issetupasataba
childwiththeXmQTaccessTextualtrait(Label,Text,TextField,andderivedclasses)becomesastatusareaachildwiththeXmQTnavigatortrait
(ScrollBar,SpinBox,andderivatives)ismadeintoapagescroller.
PagesareorderedbysettingtheconstraintresourceXmNpageNumberappropriatelyforeachchildoftypeXmPAGE.Atabisattachedtoapagebyaddingan
appropriatewidgettotheNotebookwithXmNnotebookChildTypesettoeitherXmMAJOR_TABorXmMINOR_TAB,andwiththeXmNpageNumber
constraintresourcesettothatoftherelevantpage.Similarly,astatusareacanbeattachedtoapagebyaddingthechildwithXmNnotebookChildTypesetto
XmSTATUS_AREA,andagainappropriatelysettingXmNpageNumbertotherelevantpage.
TheresourcesXmNcurrentPageNumber,XmNfirstPageNumber,andXmNlastPageNumbercontroltherangeofpagesthatmaybedisplayed.
IfachildhasaXmNpageNumberconstraintvaluethatfallsoutsideoftheboundssetbyXmNfirstPageNumberandXmNlastPageNumber,eitherthe
boundsmustbealteredtoencompassthepageconstraintorthepagenumberitselfmustbealtered,beforetheNotebookwilldisplaythechild.The
XmNlastPageNumberresourceisdynamicallymaintainedasthehighestXmNpageNumbersupplied,unlesstheapplicationitselfchangesthevalueof
XmNlastPageNumber.Oncesetbytheapplication,theXmNlastPageNumberresourceisnolongermaintainedbytheNotebook,evenifhigher
XmNpageNumbervaluesareset.
WhenachildpageismanagedandnoXmNpageNumberhasbeenexplicitlyassigned,theNotebookautomaticallyassignsanumber.Theassignednumberisthe
smallestunusednumberwhichisnotlessthaneithertheXmNfirstPageNumberorthepreviousautomaticallyallocatednumber.Thismayexceed
XmNlastPageNumber.IfXmNfirstPageNumberexceedsXmNlastPageNumber,thebehavioroftheNotebookisundefined.Thedefaultvalueof
theconstraintXmNpageNumberis

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page842

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmUNSPECIFIED_PAGE_NUMBER,whichcausestheNotebooktoautomaticallyassignanumber.
PagesmaybeassignedduplicateXmNpageNumbervalues,inwhichcasetheNotebookdisplaysthemostrecentlymanagedchild.Theremaybegapsinthe
assignedpagenumberingscheme,inwhichcasetheNotebookdisplaysablankbackground,unlesstheapplicationdynamicallyprovidesfeedbackintothe
backgroundwhileprocessingaXmNpageChangedCallback.ItispossibletocreateatabforanemptyslotbyassigninganXmNpageNumberconstraintto
atabchild,forwhichthereisnocorrespondingXmPAGEchild.
TheConstraintSetValuesmethodoftheNotebooksortschildrenintoascendinglogicalpagenumberorder.Logicalpagenumbersmaybeassignedinany
order,providedthattheprogrammerdoesnotrelyanywhereupontheparticularorderinwhichchildrenareadded.
Traits
NotebookholdstheXmQTscrollFrame,XmQTtraversalControl,andXmQTspecifyUnhighlighttraits,whichareinheritedbyanyderived
classes,andusestheXmQTscrollFrame,XmQTactivatable,XmQTnavigator,XmQTjoinSide,andXmQTaccessTextualtraits.
NewResources
Notebookdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNbackPageBackground

XmCBackPage
Background

Pixel

dynamic

CSG

XmNbackPageForeground

XmCBackPage
Foreground

Pixel

dynamic

CSG

XmNbackPageNumber

XmCBackPageNumber

Cardinal

CSG

XmNbackPagePlacement

XmCBackPagePlacement unsignedchar

XmBOTTOM_RIGHT

CSG

XmNbackPageSize

XmCBackPageSize

Dimension

CSG

XmNbindingPixmap

XmCBindingPixmap

Pixmap

XmUNSPECIFIED_
PIXMAP

CSG

XmNbindingType

XmCBindingType

unsignedchar

XmSPIRAL

CSG

XmNbindingWidth

XmCBindingWidth

Dimension

25

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page843

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNcurrentPageNumber

XmCCurrentPageNumber

int

XmUNSPECIFIED_
PAGE_NUMBER

CSG

XmNfirstPageNumber

XmCFirstPageNumber

int

CSG

XmNframeBackground

XmCFrameBackground

Pixel

dynamic

CSG

XmNframeShadowThickness

XmCShadowThickness

Dimension

dynamic

CSG

XmNinnerMarginWidth

XmCInnerMarginWidth

Dimension

CSG

XmNinnerMarginHeight

XmCInnerMarginHeight

Dimension

CSG

XmNlastPageNumber

XmCLastPageNumber

int

XmUNSPECIFIED_
PAGE_NUMBER

CSG

XmNmajorTabSpacing

XmCMajorTabSpacing

Dimension

CSG

XmNminorTabSpacing

XmCMinorTabSpacing

Dimension

CSG

XmNorientation

XmCOrientation

unsignedchar

XmHORIZONTAL

CSG

XmNbackPageBackground
Specifiesthebackgroundcolorfordrawingtheback(overlapped)pages.
XmNbackPageForeground
Specifiestheforegroundcolorfordrawingtheback(overlapped)pages.
XmNbackPageNumber
Specifiesthenumberoflinestodrawtorepresenttheback(overlapped)pages.Theminimumvalueis1themaximumishalftheXmNbackPageSizevalue.
XmNbackPagePlacement
Specifieswheretodrawtheback(overlapped)pages.ThedefaultdependsupontheXmNlayoutDirectionoftheNotebookparentwidget,andthe
NotebookXmNorientation.Possiblevaluesare:
XmBOTTOM_RIGHT/*linesdrawntobottomandright*/
XmBOTTOM_LEFT/*linesdrawntobottomandleft*/
XmTOP_RIGHT/*linesdrawntotopandright*/
XmTOP_LEFT/*linesdrawntotopandleft*/

XmNbackPageSize
Specifiesthethickness,inpixels,ofthebackpagerendering.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page844

XmNbindingPixmap
Specifiesthepixmapfordrawingthebinding.ThevalueisonlyusediftheXmNbindingTypeisXmPIXMAPorXmPIXMAP_OVERLAP_ONLY.
XmNbindingType
Specifiesthetypeofbinding.Possiblevaluesare:
XmNONE

XmSOLID

XmSPIRAL

XmPIXMAP

XmPIXMAP_OVERLAP_ONLY

AvalueofXmNONEdisplaysnobinding.
ThevalueXmSOLIDdrawsasolidbindingusingtheforegroundcolorofthewidget.Thebindingiscontainedwithintheareaofaframecontainingthepagesof
theNotebookandcurtailedbythevalueofXmNbindingWidth.
ThevalueXmSPIRALdrawsaspiralbindingusingtheforegroundcolorofthewidget.Thebindingiscontainedwithintheareaofaframecontainingthepagesof
theNotebookandcurtailedbybythevalueofXmNbindingWidth,andbyanareaoutsidetheframeofthepages,alsoboundedbythevalueof
XmNbindingWidth.
ThevalueXmPIXMAPdrawsabindingusingthevalueofXmNbindingPixmapasatileorstipple,dependinguponthedepthofthesuppliedpixmap.A
pixmapofdepth1isusedasastipplepixmapsofotherdepthsaretiled.TheforegroundcoloroftheNotebookisusedwhenstippling.Thesizeofthebinding
drawnisthelargerofXmNbindingWidthandthewidthofthepixmap.
ThevalueXmPIXMAP_OVERLAP_ONLYissimilartoXmPIXMAP,exceptthatthesizeofthebindingisboundedonlybythevalueof
XmNbindingWidth,andnotthewidthofthepixmap.
XmNbindingWidth
Specifiesthewidth,inpixels,oftheNotebookbindingarea.
XmNcurrentPageNumber
Specifiesthepagenumberofthecurrentlyvisiblepage.InitiallysettothevalueofXmNfirstPageNumber,theXmNcurrentPageNumberisconstrained
tobenotbelessthantheXmNfirstPageNumberandnottoexceedtheXmNlastPageNumber.
XmNfirstPageNumber
SpecifiesthepagenumberofthefirstlogicalpagethatmaybedisplayedintheNotebook.AnychildwithanXmNpageNumberinexcessofthisvaluecannotbe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page845

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

displayeduntilsuchtimeaseithertheXmNfirstPageNumber,ortheXmNpageNumberofthegivenchilditself,issuitablyaltered.
XmNframeBackground
SpecifiesthebackgroundcolorfortheNotebookframe.
XmNframeShadowThickness
SpecifiestheshadowthicknessaroundtheNotebookframe.InMotif2.0thedefaultis2.InMotif2.1andlater,thedefaultdependsupontheXmDisplay
XmNenableThinThicknessresource:ifTrue,thedefaultis1otherwise,itis2.
XmNinnerMarginHeight
Specifiesthemarginonthetopandbottomsidesofpage,statusarea,andpagescrollerchildren.
XmNinnerMarginWidth
Specifiesthemarginontheleftandrightsidesofpage,statusarea,andpagescrollerchildren.
XmNlastPageNumber
SpecifiesthepagenumberofthelastlogicalpagethatmaybedisplayedintheNotebook.AnychildwithanXmNpageNumberinexcessofthisvaluecannotbe
displayeduntilsuchtimeaseithertheXmNlastPageNumber,ortheXmNpageNumberofthegivenchilditself,issuitablyaltered.The
XmNlastPageNumberisautomaticallysetbytheNotebookaspagesareadded,unlesstheprogrammerdirectlychangesthevalue:oncemodified,the
Notebooknolongermaintainsthelastpagereference,andtheprogrammermustcontinuetosetthevalueasrequired.
XmNmajorTabSpacing
Specifiesthespacingbetweenmajortabs.IfXmNframeShadowThicknessexceedsthevalueofthespacing,theshadowthicknessisused.
XmNminorTabSpacing
Specifiesthespacingbetweenminortabs.IfXmNframeShadowThicknessexceedsthevalueofthespacing,theshadowthicknessisused.
XmNorientation
SpecifiestheorientationoftheNotebook.Possiblevaluesare:
XmHORIZONTAL/*bindingonleftorrightside*/
XmVERTICAL/*bindingontoporbottomside*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page846

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewConstraintResources
Notebookdefinesthefollowingconstraintresourcesforitschildren:
Name

Class

Type

Default

Access

XmNnotebookChildType

XmCNotebookChildType

unsigned
char

XmNONE

CSG

XmNpageNumber

XmCPageNumber

int

XmUNSPECIFIED_
PAGE_NUMBER

CSG

XmNresizable

XmCResizable

Boolean

True

CSG

XmNnotebookChildType
SpecifiesthechildtypeoftheNotebook.Possiblevaluesare:
XmPAGE/*thechildisapage*/
XmMAJOR_TAB/*thechildisamajortab*/
XmMINOR_TAB/*thechildisaminorpage*/
XmSTATUS_AREA/*thechildisastatusarea*/
XmPAGE_SCROLLER/*thechildisapagescroller*/

XmNpageNumber
SpecifiesalogicalpagenumberassociatedwithachildoftheNotebook.Ifunspecified,theNotebookassignsthenextunallocatednumberwhenthechildismanaged.
TheassignednumberiscalculatedtobenotlessthantheXmNfirstPageNumber.
XmNresizable
SpecifieswhetheranychildresizerequestisprocessedbytheNotebook.
CallbackResources
Notebookdefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNpageChangedCallback

XmCR_NONE

XmCR_PAGE_SCROLLER_INCREMENT

XmCR_PAGE_SCROLLER_DECREMENT

XmCR_MAJOR_TAB

XmCR_MINOR_TAB

XmNpageChangedCallback
Listofcallbackscalledwhenthecurrentlogicalpagenumberisinitializedorchanged.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page847

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*pointstoeventstructure*/
/*thattriggeredcallback*/
intpage_number/*currentpagenumber*/
Widgetpage_widget/*widgetassociatedwithcurrentpagenumber*/
intprev_page_number/*previouscurrentlogicalpagenumber*/
Widgetprev_page_widget/*widgetassociatedwithprevious*/
/*currentlogicalpagenumber*/
}XmNotebookCallbackStruct

Thestructurememberspage_number,page_widget,prev_page_number,prev_page_widgetarevalidforanyvalueofreason.
reasonspecifiesthecauseofcallbackinvocation.AtNotebookinitialization,thepagechangedcallbacklistiscalledinordertosetupthefirstcurrentpage,andthe
reasonstructurememberinthisinstancehasthevalueXmCR_NONE.Thereafter,ifatabchildisactivated,thereasonmemberhasthevalue
XmCR_MAJOR_TABorXmCR_MINOR_TAB,dependingupontheXmNnotebookChildTyperesourceoftheselectedtab.Ifthepagescrollerisactivated,
thereasonfieldiseitherXmCR_PAGE_SCROLLER_INCREMENTorXmCR_PAGE_SCROLLER_DECREMENT,dependinguponthescrolleraction.The
reasonmemberisalsoXmCR_NONEiftheXmNcurrentPageNumberresourceischangedthroughXtSetValues.
page_numberspecifiesthenewlogicalpagenumber.
page_widgetspecifiesthewidgetwhichhasthenewlogicalpagenumber.ThisisNULLifnopagewidgetwithanXmNpageNumbervalueequalto
page_numberisfound.
prev_page_numberspecifiesthecurrentlogicalpagenumber.AtNotebookinitialization,thevalueisXmUNSPECIFIED_PAGE_NUMBER.
prev_page_widgetspecifiesthecurrentlydisplayedpagechildoftheNotebook.ThisisNULLatNotebookinitialization,andwherethereisnopagewidget
withanXmNpageNumbervalueequaltoprev_page_number.
InheritedResources
Notebookinheritstheresourcesshownbelow.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page848
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinsertPosition

Composite

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNnavigationType

XmManager

XmNborderColor

Core

XmNnumChildren

XmManager

XmNborderPixmap

Core

XmNpopupHandlerCallback

XmManager

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmManager

XmNsensitive

Core

XmNbottomShadowPixmap

XmManager

XmNshadowThickness

XmManager

XmNchildren

Composite

XmNstringDirection

XmManager

XmNcolormap

Core

XmNtopShadowColor

XmManager

XmNdepth

Core

XmNtopShadowPixmap

XmManager

XmNdestroyCallback

Core

XmNtranslations

Core

XmNheight

Core

XmNtraversalOn

XmManager

XmNhelpCallback

XmManager

XmNuserData

XmManager

XmNhighlightColor

XmManager

XmNwidth

Core

XmNhighlightPixmap

XmManager

XmNx

Core

XmNinitialFocus

XmManager

XmNy

Core

XmNinitialResources
Persistent

Core

Translations
ThetranslationsforNotebookincludethoseofXmManager.Inaddition,NotebookplacesthefollowingacceleratorsuponXmTABchildren:
Event

Action

KBeginLine

TraverseTab(Home)

KEndLine

TraverseTab(End)

KLeft

TraverseTab(Previous)

KRight

TraverseTab(Next)

KUp

TraverseTab(Previous)

KDown

TraverseTab(Next)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page849

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

ActionRoutines
Notebookdefinesthefollowingactionroutines:
TraverseTab(type)
AgenericactiontomovethefocusbetweenmajorandminortabsintheNotebook.TheactiontypemaybeoneofHome,End,Previous,orNext.
SeeAlso
XmNotebookGetPageInfo(1),XmCreateObject(1),Composite(2),Constraint(2),Core(2),RectObj(2),
XmManager(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page850

XmOptionMenu
MotifandXtWidgetClasses
Name
XmOptionMenuatypeofRowColumnwidgetusedasanoptionmenu.
Synopsis
PublicHeader:

<Xm/RowColumn.h>

ClassName:

XmRowColumn

ClassHierarchy:

Core

ClassPointer:

Composite

Constraint

XmManager XmRowColumn

xmRowColumnWidgetClass
widget=XmCreateOptionMenu(...)

Instantiation:
Functions/Macros: XmCreateOptionMenu(),XmCreateSimpleOptionMenu(),
XmVaCreateSimpleOptionMenu(),XmIsRowColumn(),
XmOptionButtonGadget(),XmOptionLabelGadget()

Description
AnOptionMenuisaninstanceofaRowColumnwidgetthatisusedasamenuthatallowsausertoselectoneofseveralchoices.AnOptionMenuconsistsofalabel,
aselectionarea,andpulldownmenupane.WhenyoucreateanOptionMenu,youmustsupplythepulldownmenupaneviatheXmNsubMenuIdresource.The
menupanemustalreadyexistanditmustbeachildofoftheOptionMenu'sparent.Thelabel(aLabelGadget)andtheselectionarea(aCascadeButtonGadget)are
createdbytheOptionMenu.YoucanspecifythelabelstringwiththeXmNlabelStringresource.
OptionMenuisaRowColumnwidgetwhoseXmNrowColumnTyperesourceissettoXmMENU_OPTION.TheXmNorientationresourcedefaultsto
XmHORIZONTAL,whichmeansthatthelabelisdisplayedtotheleftoftheselectionarea.IftheresourceissettoXmVERTICAL,thelabelisplacedabovethe
selectionarea.Theselectionareapoststhemenupane,aswellasdisplaysthelabelofthecurrentselection.TheXmNmenuPostresourceissettoBSelect
Press.TheXmNmenuHistoryresourcecanbeusedtospecifywhichiteminthepulldownmenuisthecurrentchoice.TheXmNmnemonicand
XmNmnemonicCharSetresourcescanbesettospecifyamnemonicfortheOptionMenu.
AnOptionMenucanbecreatedusingXmCreateOptionMenu().Inthiscase,theOptionMenudoesnotautomaticallycreateitssubmenuitmustbeaddedby
theapplication.
AnOptionMenucanalsobecreatedbyXmCreateSimpleOptionMenu(),whichautomaticallycreatestheOptionMenuanditssubmenuwiththespecified
children.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page851

ThisroutineusestheRowColumnresourcesassociatedwiththecreationofsimplemenus.ForanOptionMenu,theonlytypesallowedintheXmNbuttonType
resourceareXmCASCADEBUTTON,XmPUSHBUTTON,XmSEPARATOR,andXmDOUBLE_SEPARATOR.Thenameofeachbuttonisbutton_n,
wherenisthenumberofthebutton,rangingfrom0to1lessthanthenumberofbuttonsinthesubmenu.Thenameofeachseparatorisseparator_n,wherenis
thenumberoftheseparator,rangingfrom0to1lessthanthenumberofseparatorsinthesubmenu.
DefaultResourceValues
AnOptionMenusetsthefollowingdefaultvaluesforRowColumnresources:
Name

Default

XmNmenuPost

BSelectPress

XmNorientation

XmHORIZONTAL

XmNrowColumnType

XmMENU_OPTION

WidgetHierarchy
WhenanOptionMenuiscreated,theLabelGadgetisnamedOptionLabelandtheCascadeButtonGadgetisnamedOptionButton.
SeeAlso
XmCreateObject(1),XmOptionButtonGadget(1),XmOptionLabelGadget(1),XmVaCreateSimpleOptionMenu(1),
XmCascadeButtonGadget(2),XmLabelGadget(2),XmRowColumn(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page852

XmPanedWindow
MotifandXtWidgetClasses
Name
XmPanedWindowwidgetclassaconstraintwidgetthattilesitschildren.
Synopsis
PublicHeader:

<Xm/PanedW.h>

ClassName:

XmPanedWindow

ClassHierarchy:

Core

Composite

Constraint

XmManager XmPanedWindow

ClassPointer:

xmPanedWindowWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmPanedWindowWidgetClass,...)

Functions/Macros:

XmCreatePanedWindow(),XmIsPanedWindow()

Description
PanedWindowisaconstraintwidgetthattilesitschildren.InMotif1.1,thechildrenarelaidoutverticallyfromtoptobottom,intheorderthattheyareaddedtothe
PanedWindow.InMotif1.2,thepositionofeachchildiscontrolledbytheXmNpositionIndexresource.APanedWindowisaswideasitswidestchildandall
childrenaremadethatwidth.Userscanadjusttheheightofapaneusingasashthatappearsbelowthecorrespondingpane.
InMotif2.0andlater,thePanedWindowmaybeorientedeitherverticallyorhorizontally.WhentheXmNorientationresourceissettoXmHORIZONTAL,
thePanedWindowisastallasitstallestchild,andallchildrenaremadethatheight.Thesashinthisorientationisusedtocontrolthewidthofthepane.
NewResources
PanedWindowdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNmarginHeight

XmCMarginHeight

Dimension

CSG

XmNmarginWidth

XmCMarginWidth

Dimension

CSG

XmNorientation

XmCOrientation

unsignedchar

XmVERTICAL

CSG

XmNrefigureMode

XmCBoolean

Boolean

True

CSG

XmNsashHeight

XmCSashHeight

Dimension

10

CSG

XmNsashIndent

XmCSashIndent

Position

10

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page853

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNsashShadow
Thickness

XmCShadowThickness

Dimension

dynamic

CSG

XmNsashWidth

XmCSashWidth

Dimension

10

CSG

XmNseparatorOn

XmCSeparatorOn

Boolean

True

CSG

XmNspacing

XmCSpacing

Dimension

CSG

XmNmarginHeight
ThespacingbetweenaPanedWindowwidget'stoporbottomedgeandanychildwidget.
XmNmarginWidth
ThespacingbetweenaPanedWindowwidget'srightorleftedgeandanychildwidget.
XmNorientation
InMotif2.0andlater,theorientationofthePanedWindow.PossiblevaluesareXmHORIZONTALandXmVERTICAL.
XmNrefigureMode
IfTrue(default),childrenareresettotheirappropriatepositionsfollowingachangeinthePanedWindowwidget.
XmNsashHeight
XmNsashWidth
Theheightandwidthofthesash.
XmNsashIndent
IfthePanedWindoworientationisXmVERTICAL,theresourcespecifiesthehorizontalpositionofthesashalongeachpane.Positivevaluesspecifytheindentfrom
theleftedgenegativevalues,fromtherightedge(assumingthedefaultvaluesofXmNstringDirectionandXmNlayoutDirection).Similarly,inan
XmHORIZONTALPanedWindow,itspecifiestheverticalpositionofthesash,positivevaluesbeingcalculatedfromthetopedge,negativevaluesfromthebottom.If
thevalueistoolarge,thesashisplacedflushwiththeedgeofthePanedWindow.
XmNsashShadowThickness
Thethicknessofshadowsdrawnoneachsash.InMotif2.0andearlier,thedefaultis2.InMotif2.1andlater,thedefaultdependsupontheXmDisplay

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page854

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNenableThinThicknessresource:ifTrue,thedefaultis1otherwise,itis2.
XmNseparatorOn
IfTrue,thewidgetplacesaSeparatororSeparatorGadgetbetweeneachpane.
XmNspacing
Thedistancebetweeneachchildpane.
NewConstraintResources
PanedWindowdefinesthefollowingconstraintresourcesforitschildren:
Name

Class

Type

Default

Access

XmNallowResize

XmCBoolean

Boolean

False

CSG

XmNpaneMaximum

XmCPaneMaximum

Dimension

1000

CSG

XmNpaneMinimum

XmCPaneMinimum

Dimension

CSG

XmNpositionIndex

XmCPositionIndex

short

XmLAST_POSITION

CSG

XmNskipAdjust

XmCBoolean

Boolean

False

CSG

XmNallowResize
IfFalse(default),thePanedWindowwidgetalwaysrefusesresizerequestsfromitschildren.IfTrue,thePanedWindowwidgettriestograntrequeststochangea
child'sheight.
XmNpaneMaximum
XmNpaneMinimum
Thevaluesofapane'smaximumandminimumdimensionsforresizing.Youcanpreventasashfrombeingdrawnbysettingthesevaluestobeequal.
XmNpositionIndex
InMotif1.2andlater,thepositionofthewidgetinthePanedWindow'slistofchildren,notincludingsashes.Avalueof0indicatesthebeginningofthelist,while
XmLAST_POSITIONplacesthechildattheendofthelist.
XmNskipAdjust
IfFalse(default),thePanedWindowwidgetautomaticallyresizesthispanechild.IfTrue,resizingisnotautomatic,andthePanedWindowmaychoosetoskipthe
adjustmentofthispane.
InheritedResources
PanedWindowinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.PanedWindowsetsthedefault
valueof

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page855

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNshadowThicknessto2.ThedefaultvalueofXmNborderWidthisresetto0byManager.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinitialResources
Persistent

Core

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNnavigationType

XmManager

XmNborderColor

Core

XmNnumChildren

Composite

XmNborderPixmap

Core

XmNpopupHandler
Callback

XmManager

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmManager

XmNsensitive

Core

XmNbottomShadowPixmap

XmManager

XmNshadowThickness

XmManager

XmNchildren

Composite

XmNstringDirection

XmManager

XmNcolormap

Core

XmNtopShadowColor

XmManager

XmNdepth

Core

XmNtopShadowPixmap

XmManager

XmNdestroyCallback

Core

XmNtranslations

Core

XmNforeground

XmManager

XmNtraversalOn

XmManager

XmNheight

Core

XmNunitType

XmManager

XmNhelpCallback

XmManager

XmNuserData

XmManager

XmNhighlightColor

XmManager

XmNwidth

Core

XmNhighlightPixmap

XmManager

XmNx

Core

XmNinitialFocus

XmManagerP

XmNy

Core

XmNinsertPosition

Composite

WidgetHierarchy
ThesashchildrenofaPanedWindowarecreatedusingaprivatewidgetclasscalledXmSash,derivedfromXmPrimitive.EachinstanceofasashhasthenameSash.
Theappearanceofthesashcanbeconfiguredusingthesenamesinexternalresourcefiles.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page856

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Translations
ThetranslationsforPanedWindowareinheritedfromManager.AdditionaltranslationsaredefinedforsasheswithinaPanedWindowwidget:
Event

Action

BSelectPress

SashAction(Start)

BSelectMotion

SashAction(Move)

BSelectRelease

SashAction(Commit)

BTransferPress

SashAction(Start)

BTransferMotion

SashAction(Move)

BTransferRelease

SashAction(Commit)

KHelp

Help()

KUp

SashAction(Key,DefaultIncr,Up)

MCtrlKUp

SashAction(Key,LargeIncr,Up)

KDown

SashAction(Key,DefaultIncr,Down)

MCtrlKDown

SashAction(Key,LargeIncr,Down)

KLeft

SashAction(Key,DefaultIncr,Left)

MCtrlKLeft

SashAction(Key,LargeIncr,Left)

KRight

SashAction(Key,DefaultIncr,Right)

MCtrlKRight

SashAction(Key,LargeIncr,Right)

KNextField

NextTabGroup()

KPrevField

PrevTabGroup()

ActionRoutines
PanedWindowdefinesthefollowingactionroutines:
Help()
InvokesthelistofcallbacksspecifiedbyXmNhelpCallback.IfthePanedWindowdoesn'thaveanyhelpcallbacks,theHelp()routineinvokesthose
associatedwiththenearestancestorthathasthem.
NextTabGroup()
Traversestothenexttabgroup.Normallyatabgroupconsistsofapaneanditssash.
PrevTabGroup()
Traversestotheprevioustabgroup.Normallyatabgroupconsistsofapaneanditssash.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page857

SashAction(action)
Controlstheinteractiveplacementofthesashusingthemouse.actioncanhaveoneofthreevalues:
Start

Beginstheplacementoperation.

Move

Causesthesashtomoveasthemousemoves.

Commit

Endstheplacementoperation.

SashAction(Key,increment,direction)
Controlstheplacementofthesashwhenitismovedusingthekeyboard.incrementiseitherDefaultIncr,whichmovesthesash'spositionbyonelineor
LargeIncr,whichmovesthesash'spositionbyoneviewingregion.directioniseitherUp,Down,Left,orRight.
AdditionalBehavior
PanedWindowhasthefollowingadditionalbehavior:
<FocusIn>
Highlightsthesashandgivesitkeyboardfocus.
<FocusOut>
Unhighlightsthesashandremovesitskeyboardfocus.
SeeAlso
XmCreateObject(1),Composite(2),Constraint(2),Core(2),XmManager(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page858

XmParseMapping
MotifDataTypes
Name
XmParseMappingdatatypeanopaquetypethatrepresentsanentryinaparsetable.
Synopsis
PublicHeader:

<Xm/Xm.h>

Functions/Macros: XmParseMappingCreate(),XmParseMappingFree(),
XmParseMappingGetValues(),
XmParseMappingSetValues(),

Availability
Motif2.0andlater.
Description
XmParseMappingisanopaquedatatypethatrepresentsanentryinaparsetable,whichisusedfortabledrivenparsingofstringsandcompoundstrings.A
parsemappingconsistsofamatchpatternandeitherasubstitutionpatternorparseprocedure,whichcanbeusedbystringmanipulationfunctionsinordertocompare
againstandsubsequentlytransformtext.
XmParseTableissimplyanarrayofparsemappings.XmParseMappingCreate()createsaparsemapping,forsubsequentuseinaparsetable,usinga
resourcestyleparameterlist.TheparsetablecanbepassedtoXmStringParseText(),forexample,inordertofilterormodifyaninputstring.Intheparse
process,apointerisinitializedtotheheadofsomeinputtext.Theparsetableisinspectedfromtoptobottom,comparingthematchpatternofeachparsemapping
entrywiththevalueattheinputpointer.Whereacorrespondenceisfound,theparsemappingisusedtosupplytransformedoutputatthatpointintheparsingprocess.
Theinputpointerissubsequentlyadvanced,andtheprocessisreiterated.
TheimplementationofXmParseMappingisthatofapseudowidgetalthoughnotarealwidget,theobjecthasresourcesandaresourcestyleinterfaceforsetting
andfetchingvaluesofthemapping,principallythematchpattern,substitutionpattern,andparseprocedure.Resourcesoftheobjectaresetandfetchedthroughthe
proceduresXmParseMappingGetValues()andXmParseMappingSetValues()respectively.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page859

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewResources
XmParseMappingdefinesthefollowingresources:
Name

Type

Default

Access

XmNclientData

XtPointer

NULL

CSG

XmNincludeStatus

XmIncludeStatus

XmInsert

CSG

XmNinvokeParseProc

XmParseProc

NULL

CSG

XmNpattern

XtPointer

NULL

CSG

XmNpatternType

XmTextType

XmCHARSET_TEXT

CSG

XmNsubstitute

XmString

NULL

CSG

XmNclientData
SpecifiesapplicationdatapassedtotheparseprocedureassociatedwiththeXmNinvokeParseProcresource.
XmNincludeStatus
Specifiesthewayinwhichtheresultofthemappingisconstructed.Possiblevaluesare:
XmINSERT/*concatenateXmNsubstitutevaluetooutput*/
/*parsingiscontinued*/
XmINVOKE/*resultdeterminedbyXmNinvokeParseProc*/
XmTERMINATE/*concatenateXmNsubstitutevaluetooutput*/
/*parsingisterminated*/

XmNinvokeParseProc
Specifiesaprocedurefordeterminingtheresultofthemapping.TheprocedureisonlyusedifXmNincludeStatusisXmINVOKE.AnXmParseProc
routineplacestheresultofthemappingintotheaddressspecifiedbyitsstr_includeparameter,andreturnseitherXmINSERTorXmTERMINATE,
dependinguponwhetherparsingistocontinue.AfulldescriptionoftheformatofanXmParseProcisgivenbelow.
XmNpattern
Specifiesapatterntobematchedagainsttheinputbeingparsed.Thepatternisamaximumofonecharacter.
XmNpatternType
ThetypeofthevaluespecifiedasvaluefortheresourceXmNpattern.Possiblevaluesare:
XmMULTIBYTE_TEXT
XmCHARSET_TEXT

XmWIDECHAR_TEXT

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page860

XmNsubstitute
Specifiesacompoundstringtobeaddedtotheresultoftheparseprocess.
Procedures
TheXmParseProchasthefollowingformat:
typedefXmIncludeStatus(*XmParseProc)(XtPointer*,XtPointer,XmTextType,
XmStringTag,XmParseMapping,
int,XmString*,XtPointer)
XtPointer*in_out/*textbeingparsed*/
XtPointertext_end/*pointertoendofthetext*/
XmTextTypetype/*typeoftext*/
XmStringTaglocale_tag/*typetobeusedfortheresult*/
XmParseMappingentry/*parsemappingtriggeringcallback*/
intpattern_length/*numberofbytesininputtext*/
XmString*str_include/*returnedresultoftheparse*/
XtPointercall_data/*applicationdata*/

in_outinitiallypointstothecurrentlocationwithinthetextbeingparsed.Thepointercanbechangedinordertoresetthelocationfromwhichtocontinueparsing
afterthecallbackfinishes.
text_endpointstotheendofthein_outstring.Aparseprocedurecansetthevalueoftheelementtoindicatewheretheparseistocontinuefromafterthe
mappinghasbeenappliedtotheinput.
typeisthetypeofthetextin_out,andthetypeofthelocale_tagtobeusedincreatingthereturncompoundstring.typeisoneof
XmCHARSET_TEXT,XmMULTIBYTE_TEXT,orXmWIDECHAR_TEXT.
locale_tagspecifiesthetagtobeusedincreatingtheresult.IfNULL,thetagcreateddependsuponthevalueoftype.IftypeisXmCHARSET_TEXT,a
charsetstringtagiscreatedfromthevalueXmSTRING_DEFAULT_CHARSET.Otherwise,alocalestringtagiscreatedfromthevalue
_MOTIF_DEFAULT_LOCALE.
entrypointstotheXmParseMappingobjectthattriggeredthecallback.
pattern_lengthisthenumberofbytesintheinputtextremainingattheaddressspecifiedbyin_out.
str_includeisanaddresswheretheparseproceduresuppliesacompoundstringthatistobeinsertedintotheresultoftheparseprocess.
call_dataisapointertoapplicationdatapassedthroughbythestringparsingfunctionswhichinvokethecallback.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page861

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmParseMappingCreate(1),XmParseMappingFree(1),XmParseMappingGetValues(1),XmParseMappingSetValues
(1),XmParseTableFree(1),XmStringParseText(1),XmStringUnparse(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page862

XmPopupMenu
MotifandXtWidgetClasses
Name
XmPopupMenuatypeofRowColumnwidgetusedasapopupmenupane.
Synopsis
PublicHeader:

<Xm/RowColumn.h>
widget=XmCreatePopupMenu(...)

Instantiation:
Functions/Macros:

XmCreatePopupMenu(),XmCreateSimplePopupMenu(),
XmMenuPosition(),XmVaCreateSimplePopupMenu()

Description
APopupMenuisthefirstmenupaneinapopupmenusystem.Allothermenupanesinthemenusystemarepulldownpanes.APopupMenucancontainLabels,
Separators,PushButtons,ToggleButtons,CascadeButtons,orthecorrespondingGadgetequivalents.
APopupMenuisaRowColumnwidgetwhoseXmNrowColumnTyperesourceissettoXmMENU_POPUP.TheXmNmenuAcceleratorresourceissetto
KMenuandXmNmenuPostissettoBMenuPress.TheXmNpopupEnabledresourcecontrolswhetherornotkeyboardacceleratorsandmnemonicsare
enabledforaPopupMenu.APopupMenuneedstobethechildofaMenuShellwidgettofunctionproperly.UseXmMenuPosition()toplaceaPopupMenu.
APopupMenucanbecreatedusingXmCreatePopupMenu().Inthiscase,thePopupMenudoesnotautomaticallycontainanycomponentstheyareaddedby
theapplication.ThePopupMenucreatedbythisroutineisacompoundobjectconsistingofaMenuShellwidgetandaRowColumnchild.
APopupMenucanalsobecreatedbyXmCreateSimplePopupMenu(),whichautomaticallycreatesthePopupMenuwiththespecifiedchildrenandmakesit
thechildofaMenuShell.ThisroutineusestheRowColumnresourcesassociatedwiththecreationofsimplemenus.ForaPopupMenu,anytypeisallowedinthe
XmNbuttonTyperesource.Thenameofeachbuttonisbutton_n,wherenisthenumberofthebutton,rangingfrom0to1lessthanthenumberofbuttonsin
themenu.Thenameofeachseparatorisseparator_n,wherenisthenumberoftheseparator,rangingfrom0to1lessthanthenumberofseparatorsinthe
menu.Thenameofeachtitleislabel_n,wherenisthenumberofthetitle,rangingfrom0to1lessthanthenumberoftitlesinthemenu.
InMotif2.0andlater,thesupportforautomaticpopupmenusisextended.TheManagerandPrimitveclassescontainXmNpopupHandlerCallback
resources,and

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page863

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

theRowColumninstallseventhandlersthatsimplifythepostingandchoiceofapopupmenutodisplay.
DefaultResourceValues
APopupMenusetsthefollowingdefaultvaluesforRowColumnresources:
Name

Default

XmNmenuAccelerator

KMenu

XmNmenuPost

BMenuPress

XmNpopupEnabled

XmPOPUP_KEYBOARD

XmNrowColumnType

XmMENU_POPUP

WidgetHierarchy
WhenaPopupMenuiscreatedwithaspecifiedname,theMenuShellisnamedpopup_nameandtheRowColumniscalledname.
SeeAlso
XmCreateObject(1),XmMenuPosition(1),XmVaCreateSimplePopupMenu(1),XmMenuShell(2),XmRowColumn(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page864

XmPrimitive
MotifandXtWidgetClasses
Name
XmPrimitivewidgetclassthefundamentalclassforsimpleMotifwidgets.
Synopsis
PublicHeader:

<Xm/Xm.h>

ClassName:

XmPrimitive

ClassHierarchy:

Core

ClassPointer:

xmPrimitiveWidgetClass

Instantiation:

Primitiveisametaclassandisnotnormallyinstantiated.

Functions/Macros:

XmIsPrimitive()

XmPrimitive

Description
PrimitiveisasupportingsuperclassthatprovidesMotifspecificresourcesforborderdrawing,highlighting,andkeyboardtraversalmechanisms.Primitivesupports
widgetsubclassesthathandleelementarygraphicelementssuchasbuttons,labels,andseparators.
Thedefaultvaluesofthecolorresourcesfortheforeground,background,topandbottomshadows,andhighlightingaresetdynamically.Ifnocolorsarespecified,
theyaregeneratedautomatically.Onamonochromesystem,blackandwhitecolorsareselected.Onacolorsystem,fourcolorsareselectedthatprovidethe
appropriateshadingforthe3Dvisuals.Whenthebackgroundcolorisspecified,theshadowcolorsareselectedtoprovidetheappropriate3Dappearanceand
foregroundandhighlightcolorsareselectedtoprovidethenecessarycontrast.ThecolorsaregeneratedwhenthewidgetiscreatedusingXtSetValues()to
changethebackgrounddoesnotchangetheothercolors.WithMotif1.2andlater,useXmChangeColor()tochangetheassociatedcolorswhenthe
backgroundcolorischanged.
Traits
PrimitiveholdstheXmQTspecifyLayoutDirection,XmQTcareParentVisual,XmQTaccessColors,andXmQTspecifyUnitType
traits,whichareinheritedbyanyderivedclass.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page865

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewResources
Primitivedefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNbottomShadowColor

XmCBottomShadowColor

Pixel

dynamic

CSG

XmNbottomShadowPixmap

XmCBottomShadowPixmap

Pixmap

XmUNSPECIFIED_
PIXMAP

CSG

XmNforeground

XmCForeground

Pixel

dynamic

CSG

XmNhighlightColor

XmCHighlightColor

Pixel

dynamic

CSG

XmNhighlightOnEnter

XmCHighlightOnEnter

Boolean

False

CSG

XmNhighlightPixmap

XmCHighlightPixmap

Pixmap

dynamic

CSG

XmNhighlightThickness

XmCHighlightThickness

Dimension

dynamic

CSG

XmNlayoutDirection

XmCLayoutDirection

XmDirection

dynamic

CSG

XmNnavigationType

XmCNavigationType

XmNavigation
Type

XmNONE

CSG

XmNshadowThickness

XmCShadowThickness

Dimension

dynamic

CSG

XmNtopShadowColor

XmCTopShadowColor

Pixel

dynamic

CSG

XmNtopShadowPixmap

XmCTopShadowPixmap

Pixmap

dynamic

CSG

XmNtraversalOn

XmCTraversalOn

Boolean

True

CSG

XmNunitType

XmCUnitType

unsignedchar

dynamic

CSG

XmNuserData

XmCUserData

XtPointer

NULL

CSG

XmNbottomShadowColor
Thecolorusedindrawingthebordershadow'sbottomandrightsides.(UsedonlyifXmNbottomShadowPixmapisNULL.)
XmNbottomShadowPixmap
Thepixmapusedindrawingthebordershadow'sbottomandrightsides.
XmNforeground
TheforegroundcolorusedbyPrimitivewidgets.
XmNhighlightColor
Thecolorusedindrawingthehighlightingrectangle.(UsedonlyifXmNhighlightPixmapisXmUNSPECIFIED_PIXMAP.)
XmNhighlightOnEnter
Determineswhethertodrawthewidget'shighlightingrectanglewheneverthecursormovesintothewidget.Thisresourceappliesonlywhentheshellhasafocuspolicy
ofXmPOINTER.IftheXmNhighlightOnEnterresourceisTrue,highlightingisdrawnifFalse(default),highlightingisnotdrawn.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page866

XmNhighlightPixmap
Thepixmapusedindrawingthehighlightingrectangle.
XmNhighlightThickness
Thethicknessofthehighlightingrectangle.InMotif2.0andearlier,thedefaultis2.InMotif2.1andlater,thedefaultdependsupontheXmDisplay
XmNenableThinThicknessresource:ifTrue,thedefaultis1otherwise,itis2.
XmNlayoutDirection
InMotif2.0andlater,specifiesthedirectioninwhichcomponentsofthewidgetarelaidout.Ifunspecified,thevalueisinheritedfromthenearestancestorholdingthe
XmQTspecifyLayoutDirectiontrait.Manager,MenuShell,andVendorShellholdthistrait.Possiblevaluesare:
XmLEFT_TO_RIGHT

XmRIGHT_TO_LEFT

XmBOTTOM_TO_TOP

XmTOP_TO_BOTTOM

XmBOTTOM_TO_TOP_LEFT_TO_RIGHT

XmBOTTOM_TO_TOP_RIGHT_TO_LEFT

XmTOP_TO_BOTTOM_LEFT_TO_RIGHT

XmTOP_TO_BOTTOM_RIGHT_TO_LEFT

XmLEFT_TO_RIGHT_BOTTOM_TO_TOP

XmRIGHT_TO_LEFT_BOTTOM_TO_TOP

XmLEFT_TO_RIGHT_TOP_TO_BOTTOM

XmRIGHT_TO_LEFT_TOP_TO_BOTTOM

XmNnavigationType
DeterminesthewayinwhichaPrimitivewidgetistraversedduringkeyboardnavigation.Possiblevaluesare:
XmNONE/*excludefromkeyboardnavigation*/
XmTAB_GROUP/*includeinkeyboardnavigation*/
XmSTICKY_TAB_GROUP/*includeinkeyboardnavigation,*/
/*evenifXmAddTabGroup()wascalled*/
XmEXCLUSIVE_TAB_GROUP/*applicationdefinesorderofnavigation*/

XmNshadowThickness
Thethicknessoftheshadowborder.InMotif2.0andearlier,thedefaultis2.InMotif2.1andlater,thedefaultdependsupontheXmDisplay
XmNenableThinThicknessresource:ifTrue,thedefaultis1otherwise,itis2.
XmNtopShadowColor
Thecolorusedindrawingthebordershadow'stopandleftsides.(UsedonlyifXmNtopShadowPixmapisNULL.)
XmNtopShadowPixmap
Thepixmapusedindrawingthebordershadow'stopandleftsides.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page867

XmNtraversalOn
IfTrue(default),traversalofthiswidgetismadepossible.
XmNunitType
Themeasurementunitstouseinresourcesthatspecifyasizeorpositionforexample,anyresourcesofdatatypeDimension(whosenamesgenerallyincludeoneof
thewordsMargin,Thickness,orSpacing).Forawidgetwhoseparentisamanager,thedefaultvalueiscopiedfromthisparent(providedthevaluehasn'tbeen
explicitlysetbytheapplication)otherwise,thedefaultisXmPIXELS.Possiblevaluesare:
XmPIXELS

Xm100TH_POINTS

Xm100TH_MILLIMETERS

Xm100TH_FONT_UNITS

Xm100TH_INCHES

XmINCHES(Motif2.0)

XmPOINTS(Motif2.0)

XmFONT_UNITS(Motif2.0)

XmNuserData
Apointertodatathattheapplicationcanattachtothewidget.Thisresourceisunusedinternally.
CallbackResources
Primitivedefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNconvertCallback

XmCR_OK

XmNhelpCallback

XmCR_HELP

XmNpopupHandlerCallback

XmCR_POST

XmCR_REPOST

XmNconvertCallback
Listofcallbacksthatarecalledwhenthewidgetisrequestedtoconvertaselection.
XmNhelpCallback
Listofcallbacksthatarecalledwhenhelpisrequested.
XmNpopupHandlerCallback
Listofcallbacksthatarecalledinordertodetermineapopupmenutobeautomaticallyposted.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page868

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

CallbackStructure
Ahelpcallbackispassedapointertothefollowingstructure:
typedefstruct
{
intreason/*settoXmCR_HELP*/
XEvent*event/*eventthattriggeredcallback*/
}XmAnyCallbackStruct

Apopuphandlercallbackispassedapointertothefollowingstructure:
typedefstruct
{
intreason/*thereasonthecallbackisinvoked*/
XEvent*event/*eventthattriggeredcallback*/
WidgetmenuToPost/*themenutopost*/
BooleanpostIt/*whethertocontinueposting*/
Widgettarget/*managerdescendantissuingtherequest*/
}XmPopupHandlerCallbackStruct

reasoniseitherXmPOSTorXmREPOST.XmPOSTisthenormalmenupostrequest.XmREPOSTiscalledwhenthemenuisunpostedbecauseofeventreplay.
menuToPostisthesuggestedmenutobeposted.Altertheelementifadifferentmenuisrequired.
postItisaflagindicatingwhetherthepostingoperationistocontinueoncethecallbackhasfinished.ThedefaultvalueisTrueifreasonisXmPOST,otherwise
False.
targetisthewidgetorgadgetwhichtheManagerbelievesbestdescribesthesourceofthepostingevent.Thealgorithmperformsarecursivedescent,matchingthe
receivedeventagainstthelocationofmanagedchildren.
ConvertcallbacksarefullydescribedwithinthesectionscoveringtheUniformTransferModel.SeeXmTransfer(1)formoredetails.Forquickreference,apointerto
thefollowingstructureispassedtocallbacksontheXmNconvertCallbacklist:
typedefstruct
{
intreason/*reasonthatthecallbackisinvoked*/
XEvent*event/*eventthattriggeredcallback*/
Atomselection/*requestedconversionselection*/
Atomtarget/*theconversiontarget*/
XtPointersource_data/*selectionsourceinformation*/
XtPointerlocation_data/*informationaboutdatatobetransferred*/
intflags/*inputstatusoftheconversion*/
XtPointerparm/*parameterdataforthetarget*/
intparm_format/*formatofparameterdata*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page869
unsignedlongparm_length/*numberofelementsinparameterdata*/
Atomparm_type/*thetypeoftheparameterdata*/
intstatus/*outputstatusoftheconversion*/
XtPointervalue/*returnedconversiondata*/
Atomtype/*typeofconversiondatareturned*/
intformat/*formatoftheconversiondata*/
unsignedlonglength/*numberofelementsinconversiondata*/
}XmConvertCallbackStruct

InheritedResources
Primitiveinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Primitiveresetsthedefaultvalueof
XmNborderWidthfrom1to0.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNheight

Core

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNscreen

Core

XmNborderColor

Core

XmNsensitive

Core

XmNborderPixmap

Core

XmNtranslations

Core

XmNborderWidth

Core

XmNwidth

Core

XmNcolormap

Core

XmNx

Core

XmNdepth

Core

XmNy

Core

XmNdestroyCallback

Core

Translations
Event

Action

Event

Action

KUp

PrimitiveTraverseUp()

KNextField

PrimitiveNextTabGroup()

KDown

PrimitiveTraverseDown()

KPrevField

PrimitivePrevTabGroup()

KLeft

PrimitiveTraverseLeft()

KActivate

PrimitiveParentActivate()

KRight

PrimitiveTraverseRight()

KCancel

PrimitiveParentCancel()

KBeginLine

PrimitiveTraverseHome()

KHelp

PrimitiveHelp()

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page870

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

ActionRoutines
Primitivedefinesthefollowingactionroutines:
PrimitiveHelp()
InvokesthelistofcallbacksspecifiedbythePrimitivewidget'sXmNhelpCallbackresource.IfthePrimitivewidgetdoesn'thaveanyhelpcallbacks,thisaction
routineinvokesthoseassociatedwiththenearestancestorthathasthem.
PrimitiveNextTabGroup()
PrimitivePrevTabGroup()
Traversestothefirstiteminthenext/previoustabgroup,wrappingifnecessary.
PrimitiveParentActivate()
InMotif1.2andlater,passestheKActivateeventtotheparentifitisamanager.
PrimitiveParentCancel()
InMotif1.2andlater,passestheKCanceleventtotheparentifitisamanager.
PrimitiveTraverseDown()
PrimitiveTraverseUp()
Withinthesametabgroup,descends/ascendstotheitembelow/abovethewidget,wrappingifnecessary.
PrimitiveTraverseHome()
Changesthefocustothefirstiteminthetabgroup.
PrimitiveTraverseLeft()
PrimitiveTraverseRight()
Withinthesametabgroup,traversestotheitemontheleft/rightofthewidget,wrappingifnecessary.
PrimitiveTraverseNext()
PrimitiveTraversePrev()
Withinthesametabgroup,traversestothenext/previousitem,wrappingifnecessary.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page871

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

AdditionalBehavior
Primitivehasthefollowingadditionalbehavior:
<FocusIn>
Highlightsthewidgetandgivesitthefocusundertheexplicitkeyboardfocuspolicy.
<FocusOut>
Unhighlightsthewidgetandremovesthefocusundertheexplicitkeyboardfocuspolicy.
SeeAlso
XmTransfer(1),Core(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page872

XmPrintShell
MotifandXtWidgetClasses
Name
XmPrintShellwidgetclassaShellthatinterfaceswiththeXpprintingfacilities.
Synopsis
PublicHeaders:

<Xm/Print.h>

ClassName:

XmPrintShell

ClassHierarchy:

Core Composite Shell WMShell VendorShell


TopLevelShell ApplicationShell XmPrintShell

ClassPointer:

xmPrintShellWidgetClass

widget=XmPrintSetup(...)
Instantiation:
or
widget=XtCreatePopupShell(name,
xmPrintShellWidgetClass,...)
Functions/Macros:

XmPrintSetup(),XmPrintToFile(),
XmPrintPopupPDM(),XmRedisplayWidget(),
XmIsPrintShell()

Availability
Motif2.1andlater.
Description
PrintShellisaShellwidgetthatinterfaceswiththeX11R6XPrint(Xp)extensionsinordertoprintoutawidgethierarchy.TheXPrintingArchitecturereusesthecode
thatrendersthecontentsandvisualsofawidgetonthevideoscreeninordertoprintthewidgethierarchy.Thetechniqueinvolvescreatinginstancesofrequisite
widgetswithintheXPrintServerbyaddingthehierarchybelowaPrintShellandconfiguringthewidgetswithsuitableresourcestheexposemethodsofthewidgets
performtheprinting.ThePrintShellitselfiscreatedthroughXmPrintSetup(),whichreturnsanXmPrintShellwidgetafterestablishingaconnectiontoanXPrint
Server.ThePrintShellprovidesresourcesforconfiguringanXPrintconnectionandforspecifyingprinterattributes.Inaddition,callbackresourcesareavailablefor
handlinganypagination.IfnoXPrintconnectioncanbeestablished,PrintShellbehaveslikeanApplicationShell,fromwhichitisderived.
ThePrintmodelallowsforeithersynchronousorasynchronousprinting.XmRedisplayWidget()providessynchronousprintingbyforcingawidgettoprint
itselfdirectly.Asynchronousprintingisperformedthroughwidgetexposureasaresult

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page873

ofeventsgeneratedbytheXPrintServeranddispatchedtothePrintShell.TheprogrammercallsXpStartJob()toinitializetheprintingprocessthe
XmNstartJobCallback,XmNpageSetupCallback,andXmNendJobCallbackresourcesofthePrintShellspecifycallbackstoprovide
asynchronousnotificationatcriticalpointsintheprintingtask.
Whetherprintingsynchronouslyorasynchronously,anapplicationcreatesawidgethierarchyonthePrintShellsuitablefortherequiredoutput.Whatismeantby
suitableinthiscontextisapplicationandwidgetspecific.Typically,aTextwidgetiscreatedunderthePrintShell,andresourcesaresettocontainthedatatoprint.It
maybeappropriatetoturnoffhighlightingorblinkingcursorsintheTextandsetthebackgroundwhite.Thisdependsuponwhethertheintentionistoprintoutjustthe
contentofthewidgetorascreenshotwhichinvolvesthewidgetvisuals.
Asarelatedtopic,theprocedureXmPrintSetupPDM()requeststhataprintdialogmanager(PDM)isstarted.ThestatusoftheconnectiontothePDMis
monitoredbyspecifyingaprocedurefortheXmNpdmNotificationCallbackresourceofthePrintShell.Lastly,anadditionalprintinginterfaceisavailable
throughthefunctionXmPrintToFile()itfetchesthedataonthePrintServer,andsendsthistoafile.
NewResources
PrintShelldefinesthefollowingresources:
Name

Class

Type

XmNdefaultPixmap
Resolution

XmCDefaultPixmap
Resolution

unsignedshort 100

Default

Access
CSG

XmNmaxX

XmCMaxX

Dimension

dynamic

XmNmaxY

XmCMaxY

Dimension

dynamic

XmNminX

XmCMinX

Dimension

dynamic

XmNminY

XmCMinY

Dimension

dynamic

XmNdefaultPixmapResolution
Indicatestheresolutionindotsperinchusedforscalingimagefilesreadbydescendantsofthewidget.Ingeneral,theresourceisnotusedwhenreadingtilepixmaps
(XmNbackgroundPixmap,XmNbottomShadowPixmap,orsimilar).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page874

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNmaxX
XmNmaxY
XmNminX
XmNminY
Specifytheimageareaofthepageinthecurrentprintcontext.ThePrintShellmaintainsthevaluestoreflectchangeinresolutionorotherattributes.
CallbackResources
PrintShelldefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNendJobCallback

XmCR_END_JOB

XmNpageSetupCallback

XmCR_PAGE_SETUP

XmNpdmNotificationCallback

XmCR_PDM_NONE

XmCR_PDM_UP

XmCR_PDM_START_ERROR

XmCR_PDM_START_VXAUTH

XmCR_PDM_START_PXAUTH

XmCR_PDM_OK

XmCR_PDM_CANCEL

XmCR_PDM_EXIT_ERROR

XmNstartJobCallback

XmCR_START_JOB

XmNendJobCallback
Specifiesthelistofcallbackscalledtocontroltheendofrendering.
XmNpageSetupCallback
Specifiesthelistofcallbackscalledtocontrolpagelayout.
XmNpdmNotificationCallback
SpecifiesthelistofcallbackscalledinnotificationofthePrintDialogManager(PDM)status.
XmNstartJobCallback
Specifiesthelistofcallbackscalledtocontrolthestartofrendering.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page875

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

CallbackStructure
Eachcallbackispassedapointertothefollowingstructure:
typedefstruct
{
intreason/*reasonthatthecallbackisinvoked*/
XEvent*event/*eventstructurethattriggeredcallback*/
XPContextcontext/*XPrintContext*/
Booleanlast_page/*whetherthisisthelastpage*/
XtPointerdetail/*PDMselection*/
}XmPrintShellCallbackStruct

reasonspecifiesthecauseofthecallbackinvocation.ThevalueisXmCR_START_JOBforanycallbackontheXmNstartJobCallbacklist,
XmCR_END_JOBforXmNendJobCallbackprocedures,andXmCR_PAGE_SETUPforXmNpageSetupCallbackroutines.Whena
XmNpdmNotificationCallbackprocedureisinvoked,reasonindicatesthestatusofthePDMconnection.Possiblevaluesare:
XmCR_PDM_CANCEL/*PDMexitedwithCANCELstatus*/
XmCR_PDM_EXIT_ERROR/*PDMexitedwithERRORstatus*/
XmCR_PDM_NONE/*NoPDMavailableonthedisplay*/
XmCR_PDM_OK/*PDMexitedwithOKstatus*/
XmCR_PDM_START_ERROR/*PDMcannotstart*/
XmCR_PDM_START_VXAUTH/*PDMcannotconnecttovideodisplay*/
XmCR_PDM_START_PXAUTH/*PDMcannotconnecttoprintdisplay*/
XmCR_PDM_UP/*PDMisrunning*/

contextisanopaquehandlerepresentingtheconnectiontothePrintServer.
last_pageisonlyofrelevancewithinanXmNpageSetupCallbackprocedure,anditisaflagwherebytheapplicationindicatesthatthisisthelastpageof
theprintingtask.ThevalueisinitiallysettoFalsebythetoolkit,andtheapplicationcallbackshouldsetthevalueTrueasrequired.Thereafter,the
XmNpageSetupCallbackproceduresareinvokedoncemorewiththevalueinitiallyTrue,bywayofreturnnotification,andsubsequentlythe
XmNendJobCallbackproceduresarecalled.
detailisonlyusedbyXmNpdmNotificationCallbackprocedures,anditcontainsanAtomrepresentingtheselectionusedinconnectingtothePDM.
ThereasonelementisXmPDM_NONEwhendetailisset.
InheritedResources
PrintShellinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Thedefaultvalueof
XmNborderWidthisresetto0byVendorShell.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page876
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNlabelRenderTable

VendorShell

XmNallowShellResize

Shell

XmNlayoutDirection

VendorShell

XmNancestorSensitive

Core

XmNmappedWhenManaged

Core

XmNargc

ApplicationShell

XmNmaxAspectX

WMShell

XmNargv

ApplicationShell

XmNmaxAspectY

WMShell

XmNaudibleWarning

VendorShell

XmNmaxHeight

WMShell

XmNbackground

Core

XmNmaxWidth

WMShell

XmNbackgroundPixmap

Core

XmNminAspectX

WMShell

XmNbaseHeight

WMShell

XmNminAspectY

WMShell

XmNbaseWidth

WMShell

XmNminHeight

WMShell

XmNborderColor

Core

XmNminWidth

WMShell

XmNborderPixmap

Core

XmNmwmDecorations

VendorShell

XmNborderWidth

Core

XmNmwmFunctions

VendorShell

XmNbuttonFontList

VendorShell

XmNmwmInputMode

VendorShell

XmNbuttonRenderTable

VendorShell

XmNmwmMenu

VendorShell

XmNchildren

Composite

XmNnumChildren

Composite

XmNcolormap

Core

XmNoverrideRedirect

Shell

XmNcreatePopupChild
Proc

Shell

XmNpopdownCallback

Shell

XmNdefaultFontList

VendorShell

XmNpopupCallback

Shell

XmNdeleteResponse

VendorShell

XmNpreeditType

VendorShell

XmNdepth

Core

XmNsaveUnder

Shell

XmNdestroyCallback

Core

XmNscreen

Core

XmNgeometry

Shell

XmNsensitive

Core

XmNheight

Core

XmNshellUnitType

VendorShell

XmNheightInc

WMShell

XmNtextFontList

VendorShell

XmNiconic

TopLevelShell

XmNtextRenderTable

VendorShell

XmNiconMask

WMShell

XmNtitle

WMShell

XmNiconName

TopLevelShell

XmNtitleEncoding

WMShell

XmNiconNameEncoding

TopLevelShell

XmNtransient

WMShell

XmNiconPixmap

WMShell

XmNtranslations

Core

XmNiconWindow

WMShell

XmNunitType

VendorShell

XmNiconX

WMShell

XmNuseAsyncGeometry

VendorShell

XmNiconY

WMShell

XmNvisual

Shell

XmNinitialResources
Persistent

Core

XmNwaitForWm

WMShell

XmNinitialState

WMShell

XmNwidth

Core

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page877

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNinput

WMShell

XmNwidthInc

WMShell

XmNinputMethod

VendorShell

XmNwindowGroup

WMShell

XmNinputPolicy

VendorShell

XmNwinGravity

WMShell

XmNinsertPosition

Composite

XmNwmTimeout

WMShell

XmNkeyboardFocusPolicy

VendorShell

XmNx

Core

XmNlabelFontList

VendorShell

XmNY

Core

SeeAlso
XmGetScaledPixmap(1),XmPrintPopupPDM(1),XmPrintToFile(1),XmPrintSetup(1),XmRedisplayWidget(1),
ApplicationShell(2),Composite(2),Core(2),Shell(2),TopLevelShell(2),VendorShell(2),WMShell(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page878

XmPromptDialog
MotifandXtWidgetClasses
Name
XmPromptDialoganunmanagedSelectionBoxasachildofaDialogShell.
Synopsis
PublicHeader:

<Xm/SelectioB.h>
widget=XmCreatePromptDialog(...)

Instantiation:
Functions/Macros:

XmCreatePromptDialog(),XmSelectionBoxGetChild(),
XmIsSelectionBox()

Description
PromptDialogisacompoundobjectcreatedbyacalltoXmCreatePromptDialog()thatanapplicationcanusetoprompttheuserfortextualinput.A
PromptDialogconsistsofaDialogShellwithanunmanagedSelectionBoxwidgetasitschild.TheSelectionBoxresourceXmNdialogTypeissetto
XmDIALOG_PROMPT.
APromptDialogcontainsamessage,aregionfortextinput,andthreemanagedbuttons.Afourthbuttoniscreatedbutnotmanagedyoucanmanageitexplicitlyif
necessary.InMotif1.2andlater,thedefaultbuttonlabelscanbelocalized.IntheClocale,andinMotif1.1,thePushButtonsarelabeledOK,Apply,Cancel,and
Helpbydefault.TheApplybuttonistheunmanagedbutton.
DefaultResourceValues
APromptDialogsetsthefollowingdefaultvaluesforSelectionBoxresources:
Name

Default

XmNdialogType

XmDIALOG_PROMPT

XmNlistLabelString

NULL

XmNlistVisibleItemCount

WidgetHierarchy
WhenaPromptDialogiscreatedwithaspecifiedname,theDialogShellisnamedname_popupandtheSelectionBoxiscalledname.
SeeAlso
XmCreateObject(1),XmSelectionBoxGetChild(1),XmDialogShell(2),XmSelectionBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page879

XmPulldownMenu
MotifandXtWidgetClasses
Name
XmPulldownMenuatypeofRowColumnusedasapulldownmenupane.
Synopsis
PublicHeader:

<Xm/RowColumn.h>
widget=XmCreatePulldownMenu(...)

Instantiation:
Functions/Macros:

XmCreatePulldownMenu(),
XmCreateSimplePulldownMenu(),
XmVaCreateSimplePulldownMenu()

Description
APulldownMenuisamenupaneforalltypesofpulldownmenusystems,includingmenusoffofamenubar,cascadingsubmenus,andthemenuassociatedwithan
optionmenu.APulldownMenuisassociatedwithaCascadeButton.APulldownMenucancontainSeparators,PushButtons,ToggleButtons,andCascadeButtons.
APulldownMenuisaRowColumnwidgetwhoseXmNrowColumnTyperesourceissettoXmMENU_PULLDOWN.APulldownMenuneedstobethechildofa
MenuShellwidgettofunctionproperly.
APulldownMenucanbecreatedusingXmCreatePulldownMenu().Inthiscase,thePulldownMenudoesnotautomaticallycontainanycomponentstheyare
addedbytheapplication.ThePulldownMenucreatedbythisroutineisacompoundobjectconsistingofaMenuShellwidgetandaRowColumnchild.
APulldownMenucanalsobecreatedbyXmCreateSimplePulldownMenu(),whichautomaticallycreatesthePulldownMenuwiththespecifiedchildren
andmakesitthechildofaMenuShell.ThisroutineusestheRowColumnresourcesassociatedwiththecreationofsimplemenus.ForaPulldownMenu,anytypeis
allowedintheXmNbuttonTyperesource.Thenameofeachbuttonisbutton_n,wherenisthenumberofthebutton,rangingfrom0to1lessthanthe
numberofbuttonsinthemenu.Thenameofeachseparatorisseparator_n,wherenisthenumberoftheseparator,rangingfrom0to1lessthanthenumberof
separatorsinthemenu.Thenameofeachtitleislabel_n,wherenisthenumberofthetitle,rangingfrom0to1lessthanthenumberoftitlesinthemenu.
DefaultResourceValues
APulldownMenusetsthefollowingdefaultvaluesforRowColumnresources:

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page880
Name

Default

XmNrowColumnType

XmMENU_POPUP

WidgetHierarchy
WhenaPulldownMenuiscreatedwithaspecifiedname,theMenuShellisnamedpopup_nameandtheRowColumniscalledname.
SeeAlso
XmCreateObject(1),XmVaCreateSimplePulldownMenu(1),XmCascadeButton(2),XmMenuShell(2),XmRowColumn
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page881

XmPushButton
MotifandXtWidgetClasses
Name
XmPushButtonwidgetclassawidgetthatstartsanoperationwhenitispressed.
Synopsis
PublicHeader:

<Xm/PushB.h>

ClassName:

XmPushButton

ClassHierarchy:

Core

XmPrimitive XmLabel XmPushButton

ClassPointer:

xmPushButtonWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmPushButtonWidgetClass,...)

Functions/Macros:

XmCreatePushButton(),XmIsPushButton()

Description
APushButtonisawidgetwhich,whenpressedbytheuser,issuesalogicaleventtotheapplication.APushButtondisplaysatextorpixmaplabel.Itinvokesan
applicationcallbackwhenitisclickedonwiththemouse.TheshadingofthePushButtonchangestomakeitappeareitherpressedinwhenselectedorraisedwhen
unselected.
Traits
PushButtonholdstheXmQTactivatable,XmQTtakesDefault,XmQTcareParentVisualandXmQTmenuSavvytraits,whichareinherited
byanyderivedclasses,andusestheXmQTmenuSystemandXmQTspecifyRenderTabletraits.
NewResources
PushButtondefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNarmColor

XmCArmColor

Pixel

dynamic

CSG

XmNarmPixmap

XmCArmPixmap

Pixmap

XmUNSPECIFIED_
PIXMAP

CSG

XmNdefaultButton
ShadowThickness

XmCDefaultButton
ShadowThickness

Dimension

dynamic

CSG

XmNfillOnArm

XmCFillOnArm

Boolean

True

CSG

XmNmultiClick

XmCMultiClick

unsigned
char

dynamic

CSG

XmNshowAsDefault

XmCShowAsDefault

Dimension

CSG

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page882

XmNarmColor
Thecolorwithwhichthearmedbuttonisfilled.Foracolordisplay,thedefaultcolorisashadebetweenthebottomshadowcolorandthebackgroundcolor.Fora
monochromedisplay,thedefaultistheforegroundcolor,andlabeltextisswitchedtothebackgroundcolor.ThisresourceisineffectonlywhenXmNfillOnArmis
settoTrue.
XmNarmPixmap
Thepixmapthatidentifiesthebuttonwhenitisarmed(andwhenitsXmNlabelTypeisXmPIXMAP).ForaPushButtoninamenu,thisresourceisdisabled.
XmNdefaultButtonShadowThickness
ThewidthoftheshadowusedtoindicateadefaultPushButton.
XmNfillOnArm
IfTrue(default),thePushButtonwidgetfillsthebutton(whenarmed)withthecolorspecifiedbyXmNarmColor.IfFalse,thePushButtonwidgetonly
switchesthetopandbottomshadowcolors.ForaPushButtoninamenu,thisresourceisdisabled(andassumedtobeFalse).
XmNmultiClick
Aflagthatdetermineswhethersuccessivebuttonclicksareprocessedorignored.Possiblevaluesare:
XmMULTICLICK_DISCARD/*ignoresuccessivebuttonclicks*/
/*defaultvalueinamenusystem*/
XmMULTICLICK_KEEP/*countsuccessivebuttonclicks*/
/*defaultvaluewhennotinamenu*/

XmNshowAsDefault
IndicatesthedefaultPushButtonbydisplayingashadow.(Inamenu,thisresourceisdisabled.)Ifthewidthoftheshadowisalreadyspecifiedthroughtheresource
XmNdefaultButtonShadowThickness,XmNshowAsDefaultbehaveslikeaBoolean:thatis,withavalueof0,noshadowisdisplayedwitha
valuegreaterthan0,ashadowisdisplayed.Ifthewidthoftheshadowhasnotbeenspecifiedthroughtheresource
XmNdefaultButtonShadowThickness(i.e.,ithasavalueof0),XmNshowAsDefaultperformsdoubleduty.Inotherwords,avaluegreaterthan0
saystohighlightthePushButtonasthedefaultbuttonandtousethisvalueasthethicknessoftheshadow.
CallbackResources
PushButtondefinesthefollowingcallbackresources:

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page883
Callback

ReasonConstant

XmNactivateCallback

XmCR_ACTIVATE

XmNarmCallback

XmCR_ARM

XmNdisarmCallback

XmCR_DISARM

XmNactivateCallback
ListofcallbacksthatarecalledwhenBSelectispressedandreleasedinsidethewidget.
XmNarmCallback
ListofcallbacksthatarecalledwhenBSelectispressedwhilethepointerisinsidethewidget.
XmNdisarmCallback
ListofcallbacksthatarecalledwhenBSelectisreleasedafterithasbeenpressedinsidethewidget.
CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
intclick_count/*numberofmulticlicks*/
}XmPushButtonCallbackStruct

click_countismeaningfulonlyforXmNactivateCallback.Furthermore,iftheXmNmultiClickresourceissettoXmMULTICLICK_KEEP,
thenXmNactivateCallbackiscalledforeachclick,andthevalueofclick_countisthenumberofclicksthathaveoccurredinthelastsequenceof
multipleclicks.IftheXmNmultiClickresourceissettoXmMULTICLICK_DISCARD,thenclick_countalwayshasavalueof1.
InheritedResources
PushButtoninheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.PushButtonsetsthedefaultvaluesof
XmNmarginBottom,XmNmarginLeft,XmNmarginRight,andXmNmarginTopdynamicallybasedonthevalueofXmNshowAsDefault.
IfXmNarmPixmapisspecifiedbutXmNlabelPixmapisnot,thedefaultvalueofXmNlabelPixmapissettothevalueofXmNarmPixmap.Thedefault
valueofXmNborderWidthisresetto0byPrimitive.InMotif2.0andearlier,thedefaultvaluesof

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page884

XmNhighlightThicknessandXmNshadowThicknessareresetto2.InMotif2.1,thedefaultvaluesdependupontheXmDisplay
XmNenableThinThicknessresource:ifTruethedefaultis1otherwise,itis2.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerator

XmLabel

XmNlabelType

XmLabel

XmNaccelerators

Core

XmNlayoutDirection

XmPrimitive

XmNacceleratorText

XmLabel

XmNmappedWhenManaged

Core

XmNalignment

XmLabel

XmNmarginBottom

XmLabel

XmNancestorSensitive

Core

XmNmarginHeight

XmLabel

XmNbackground

Core

XmNmarginLeft

XmLabel

XmNbackgroundPixmap

Core

XmNmarginRight

XmLabel

XmNborderColor

Core

XmNmarginTop

XmLabel

XmNborderPixmap

Core

XmNmarginWidth

XmLabel

XmNborderWidth

Core

XmNmnemonicCharSet

XmLabel

XmNbottomShadowColor

XmPrimitive XmNmnemonic

XmLabel

XmNbottomShadowPixmap

XmPrimitive XmNnavigationType

XmPrimitive

XmNcolormap

Core

XmPrimitive

XmNconvertCallback

XmPrimitive XmNrecomputeSize

XmLabel

XmNdepth

Core

XmNrenderTable

XmLabel

XmNdestroyCallback

Core

XmNscreen

Core

XmNfontList

XmLabel

XmNsensitive

Core

XmNforeground

XmPrimitive XmNshadowThickness

XmPrimitive

XmNheight

Core

XmLabel

XmNhelpCallback

XmPrimitive XmNtopShadowColor

XmPrimitive

XmNhighlightColor

XmPrimitive XmNtopShadowPixmap

XmPrimitive

XmNhighlightOnEnter

XmPrimitive XmNtranslations

Core

XmNhighlightPixmap

XmPrimitive XmNtraversalOn

XmPrimitive

XmNhighlightThickness

XmPrimitive XmNunitType

XmPrimitive

XmNinitialResources
Persistent

Core

XmNuserData

XmPrimitive

XmNlabelInsensitive
Pixmap

XmLabel

XmNwidth

Core

XmNlabelPixmap

XmLabel

XmNx

Core

XmNlabelString

XmLabel

XmNy

Core

XmNpopupHandler
Callback

XmNstringDirection

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page885

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Translations
ForPushButtonsoutsideamenusystem:
Event

Action

MCtrlBSelectPress

ButtonTakeFocus()

BSelectPress

Arm()

BSelectClick

Activate()

Disarm()

BSelectRelease

Activate()

Disarm()

BSelectPress2+

MultiArm()

BSelectRelease2+

MultiActivate()

Disarm()

BTransferPress

ProcessDrag()

KSelect

ArmAndActivate()

KHelp

Help()

ForPushButtonsinamenusystem:
Event

Action

MCtrlBSelectPress

MenuButtonTakeFocus()

BSelectPress

BtnDown()

BMenuPress

BtnDown()

BMenuRelease

BtnUp()

KActivate

ArmAndActivate()

KSelect

ArmAndActivate()

MAnyKCancel

MenuShellPopdownOne()(1.2)

MAnyKCancel

MenuEscape()(2.0)

ActionRoutines
PushButtondefinesthefollowingactionroutines:
Activate()
DisplaysthePushButtonasunarmed,andinvokesthelistofcallbacksspecifiedbyXmNactivateCallback.Thebutton'sappearancemay

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page886

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

dependonthevaluesoftheresourcesXmNfillOnArmandXmNlabelPixmap.
Arm()
DisplaysthePushButtonasarmed,andinvokesthelistofcallbacksspecifiedbyXmNarmCallback.Thebutton'sappearancemaydependonthevaluesofthe
resourcesXmNarmColorandXmNarmPixmap.
ArmAndActivate()
WhenthePushButtonisinamenu,thisactionunpoststhemenuhierarchyandinvokesthecallbacksspecifiedbytheresourcesXmNarmCallback,
XmNactivateCallback,andfinally,XmNdisarmCallback.
WhenthePushButtonisnotinamenu,thisactiondisplaysthePushButtonasarmed(asdeterminedbythevaluesoftheresourcesXmNarmColorand
XmNarmPixmapand(assumingthebuttonisnotyetarmed)invokesthelistofcallbacksspecifiedbyXmNarmCallback.Afterthisoccurs,theaction
displaysthePushButtonasunarmedandinvokesthecallbacksspecifiedinXmNactivateCallbackandXmNdisarmCallback.
BtnDown()
UnpostsanymenusthatwerepostedbytheparentmenuofthePushButton,changesfromkeyboardtraversaltomousetraversal,displaysthePushButtonasarmed,
and(assumingthebuttonisnotyetarmed)invokesthecallbacksspecifiedbyXmNarmCallback.
BtnUp()
Unpoststhemenuhierarchy,activatesthePushButton,andinvokesfirstthecallbacksspecifiedbyXmNactivateCallbackandthenthosespecifiedby
XmNdisarmCallback.
ButtonTakeFocus()
InMotif2.0andlater,movesthecurrentkeyboardfocustothePushButton,withoutactivatingthewidget.
Disarm()
InvokesthecallbacksspecifiedbyXmNdisarmCallback.
Help()
Unpoststhemenuhierarchy,restoresthepreviouskeyboardfocus,andinvokesthecallbacksspecifiedbytheXmNhelpCallbackresource.
MenuButtonTakeFocus()
InMotif2.0andlater,movesthecurrentkeyboardfocustothePushButton,withoutactivatingthewidget.
MenuShellPopdownOne()
InMotif1.2andearlier,unpoststhecurrentmenuand(unlessthemenuisapulldownsubmenu)restoreskeyboardfocustothetabgrouporwidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page887

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

thatpreviouslyhadit.Inatoplevelpulldownmenupaneattachedtoamenubar,thisactionroutinealsodisarmsthecascadebuttonandthemenubar.
MenuEscape()
InMotif2.0andlater,invokestheMenuShellPopdownOnemethodoftheMenuShellclass,whichunpoststhecurrentmenu,restoreskeyboardfocus,and
ungrabsthepointerwherenecessary.Anycontainingmenurowcolumnisdisarmed.
MultiActivate()
Incrementstheclick_countmemberoftheXmPushButtonCallbackStruct,displaysthePushButtonasunarmed(asdeterminedbytheresources
XmNfillOnArmandXmNlabelPixmap),andinvokesfirstthecallbacksspecifiedbyXmNactivateCallbackandthenthosespecifiedby
XmNdisarmCallback.ThisactionroutinetakeseffectonlywhentheXmNmultiClickresourceissettoXmMULTICLICK_KEEP.
MultiArm()
DisplaysthePushButtonasarmed(asdeterminedbytheresourcesXmNarmColorandXmNarmPixmap)andinvokesthelistofcallbacksspecifiedby
XmNarmCallback.ThisactionroutinetakeseffectonlywhentheXmNmultiClickresourceissettoXmMULTICLICK_KEEP.
ProcessDrag()
InMotif1.2andlater,initiatesadraganddropoperationusingthelabelofthePushButton.
AdditionalBehavior
PushButtonhasthefollowingadditionalbehavior:
<EnterWindow>
DisplaysthePushButtonasarmed.
<LeaveWindow>
DisplaysthePushButtonasunarmed.
SeeAlso
XmCreateObject(1),Core(2),XmLabel(2),XmPrimitive(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page888

XmPushButtonGadget
MotifandXtWidgetClasses
Name
XmPushButtonGadgetwidgetclassagadgetthatstartsanoperationwhenitispressed.
Synopsis
PublicHeader:

<Xm/PushBG.h>

ClassName:

XmPushButtonGadget

ClassHierarchy:

Object

RectObj XmGadget

XmLabelGadget XmPushButtonGadget

ClassPointer:

xmPushButtonGadgetClass

Instantiation:

widget=XtCreateWidget(name,
xmPushButtonGadgetClass,...)

Functions/Macros:

XmCreatePushButtonGadget(),
XmIsPushButtonGadget()

Description
PushButtonGadgetisthegadgetvariantofPushButton.PushButtonGadget'snewresources,callbackresources,andcallbackstructurearethesameasthosefor
PushButton.
Traits
PushButtonGadgetholdstheXmQTactivatable,XmQTmenuSavvy,andXmQTtakesDefaulttraits,whichareinheritedbyanyderivedclasses,and
usestheXmQTmenuSystemandXmQTspecifyRenderTabletraits.
InheritedResources
PushButtonGadgetinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.PushButtonGadgetsetsthe
defaultvaluesofXmNmarginBottom,XmNmarginLeft,XmNmarginRight,andXmNmarginTopdynamicallybasedonthevalueof
XmNshowAsDefault.IfXmNarmPixmapisspecifiedbutXmNlabelPixmapisnot,thedefaultvalueofXmNlabelPixmapissettothevalueof
XmNarmPixmap.ThedefaultvalueofXmNborderWidthisresetto0byGadget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page889
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerator

XmLabelGadget

XmNmarginBottom

XmLabelGadget

XmNacceleratorText

XmLabelGadget

XmNmarginHeight

XmLabelGadget

XmNalignment

XmLabelGadget

XmNmarginLeft

XmLabelGadget

XmNancestorSensitive

RectObj

XmNmarginRight

XmLabelGadget

XmNbackground

XmGadget

XmNmarginTop

XmLabelGadget

XmNbackgroundPixmap

XmGadget

XmNmarginWidth

XmLabelGadget

XmNborderWidth

RectObj

XmNmnemonic

XmLabelGadget

XmNbottomShadowColor

XmGadget

XmNmnemonicCharSet

XmLabelGadget

XmNbottomShadowPixmap

XmGadget

XmNnavigationType

XmGadget

XmNdestroyCallback

Object

XmNrecomputeSize

XmLabelGadget

XmNfontList

XmLabelGadget

XmNrenderTable

XmLabelGadget

XmNforeground

XmGadget

XmNsensitive

RectObj

XmNheight

RectObj

XmNshadowThickness

XmGadget

XmNhelpCallback

XmGadget

XmNstringDirection

XmLabelGadget

XmNhighlightColor

XmGadget

XmNtopShadowColor

XmGadget

XmNhighlightOnEnter

XmGadget

XmNtopShadowPixmap

XmGadget

XmNhighlightPixmap

XmGadget

XmNtraversalOn

XmGadget

XmNhighlightThickness

XmGadget

XmNunitType

XmGadget

XmNlabelInsensitivePixmap

XmLabelGadget

XmNuserData

XmGadget

XmNlabelPixmap

XmLabelGadget

XmNwidth

RectObj

XmNlabelString

XmLabelGadget

XmNx

RectObj

XmNlabelType

XmLabelGadget

XmNy

RectObj

XmNlayoutDirection

XmGadget

Behavior
Asagadgetsubclass,PushButtonGadgethasnotranslationsassociatedwithit.However,PushButtonGadgetbehaviorcorrespondstotheactionroutinesofthe
PushButtonwidget.SeethePushButtonactionroutinesformoreinformation.
Behavior

EquivalentPushButtonActionRoutine

BTransferPress

ProcessDrag()

BSelectPress

Arm()

BtnDown()inamenu

BSelectClick

Activate(),Disarm()

BtnUp()inamenu

BSelectRelease

Activate(),Disarm()

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page890

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Behavior

EquivalentPushButtonActionRoutine

BtnUp()inamenu

BSelectPress2+

MultiArm()

BSelectRelease
2+

MultiActivate(),Disarm()

BTransferPress

ProcessDrag()

KSelect

ArmAndActivate()

KActivate

ArmAndActivate()inamenu

KHelp

Help()

MAnyKCancel

MenuShellPopdownOne()(1.2)

MenuEscape()(2.0)

MCtrlBSelectPress

ButtonTakeFocus()

MenuButtonTakeFocus()inamenu

PushButtonGadgethasadditionalbehaviorassociatedwith<Enter>and<Leave>,whichdrawtheshadowinthearmedorunarmedstate,respectively.
SeeAlso
XmCreateObject(1),Object(2),RectObj(2),XmGadget(2),XmLabelGadget(2),XmPushButton(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page891

XmQuestionDialog
MotifandXtWidgetClasses
Name
XmQuestionDialoganunmanagedMessageBoxasachildofaDialogShell.
Synopsis
<Xm/MessageB.h>

PublicHeader:

widget=XmCreateQuestionDialog(...)
Instantiation:
Functions/Macros:

XmCreateQuestionDialog(),XmMessageBoxGetChild()

Description
AQuestionDialogisacompoundobjectcreatedbyacalltoXmCreateQuestionDialog()thatanapplicationcanusetoasktheuseraquestion.A
QuestionDialogconsistsofaDialogShellwithaMessageBoxwidgetasitschild.TheMessageBoxresourceXmNdialogTypeissetto
XmDIALOG_QUESTION.
AQuestionDialogincludesfourcomponents:asymbol,amessage,threebuttons,andaseparatorbetweenthemessageandthebuttons.Bydefault,thesymbolisa
questionmark.InMotif1.2andlater,thedefaultbuttonlabelscanbelocalized.IntheClocale,andinMotif1.1,thePushButtonsarelabeledOK,Cancel,andHelp
bydefault.
DefaultResourceValues
AQuestionDialogsetsthefollowingdefaultvaluesforMessageBoxresources:
Name

Default

XmNdialogType

XmDIALOG_QUESTION

XmNsymbolPixmap

xm_question

WidgetHierarchy
WhenaQuestionDialogiscreatedwithaspecifiedname,theDialogShellisnamedname_popupandtheMessageBoxiscalledname.
SeeAlso
XmCreateObject(1),XmMessageBoxGetChild(1),XmDialogShell(2),XmMessageBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page892

XmRadioBox
MotifandXtWidgetClasses
Name
XmRadioBoxaRowColumnthatcontainsToggleButtons.
Synopsis
PublicHeader:

<Xm/RowColumn.h>

ClassName:

XmRowColumn

ClassHierarchy:

Core

ClassPointer:

Composite

Constraint

XmManager XmRowColumn

xmRowColumnWidgetClass
widget=XmCreateRadioBox(...)

Instantiation:
Functions/Macros:

XmCreateRadioBox(),XmCreateSimpleRadioBox(),
XmVaCreateSimpleRadioBox(),XmIsRowColumn()

Description
ARadioBoxisaninstanceofaRowColumnwidgetthatcontainsToggleButtonGadgets,onlyoneofwhichcanbeselectedatagiventime.WhenaRadioBoxis
createdwithXmCreateRadioBox(),itdoesnotautomaticallycontainToggleButtonGadgetchildrentheyareaddedbytheapplicationdeveloper.ARadioBoxcan
alsobecreatedbyacalltoXmCreateSimpleRadioBox(),whichautomaticallycreatesthespecifiedToggleButtonGadgetwidgetsaschildren.
ARadioBoxisaRowColumnwidgetwithitsXmNrowColumnTyperesourcesettoXmWORK_AREA,XmNpackingsettoXmPACK_COLUMN,and
XmNradioAlwaysOnesettoTrue,whichmeansthatonebuttonisalwaysselected.TheXmNradioBehaviorresourceissettoTrue.The
XmNmenuHistoryresourceindicatesthelastToggleButtonGadgetthatwasselected.TheXmNisHomogenousresourceissettoTrueand
XmNentryClassissettoToggleButtonGadget,toensurethatonlyToggleButtonGadgetsareaddedaschildren.RadioBoxsetsXmNvisibleWhenOffto
TrueandXmNindicatorTypetoXmONE_OF_MANYforallofitsToggleButtonGadgetchildren.
ARadioBoxcanbecreatedbymakingaRowColumnwiththeseresourcevalues.Whenitiscreatedinthisway,aRadioBoxdoesnotautomaticallycontain
ToggleButtonGadgetchildrentheyareaddedbytheapplication.
ARadioBoxcanalsobecreatedbyacalltoXmCreateSimpleRadioBox()orXmVaCreateSimpleRadioBox().Theseroutinesautomatically
createtheRadioBoxwithToggleButtonGadgetsaschildren.TheroutinesusetheRowColumnresourcesassociatedwiththecreationofsimplemenus.Fora
RadioBox,theonlytypeallowedin

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page893

theXmNbuttonTyperesourceisXmRADIOBUTTON.ThenameofeachToggleButtonGadgetisbutton_n,wherenisthenumberofthebutton,ranging
from0to1lessthanthenumberofbuttonsintheRadioBox.
DefaultResourceValues
ARadioBoxsetsthefollowingdefaultvaluesforitsresources:
Name

Default

XmNentryClass

xmToggleButtonWidgetClass

XmNisHomogeneous

True

XmNnavigationType

XmTAB_GROUP

XmNradioAlwaysOne

True

XmNradioBehavior

True

XmNrowColumnType

XmWORK_AREA

XmNtraversalOn

True

SeeAlso
XmCreateObject(1),XmVaCreateSimpleRadioBox(1),XmRowColumn(2),XmToggleButtonGadget(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page894

XmRendition
MotifDataTypes
Name
XmRenditiondatatypeanopaquetypethatrepresentsanentryinarendertable.
Synopsis
PublicHeader:

<Xm/Xm.h>

Functions/Macros:

XmRenditionCreate(),XmRenditionFree(),
XmRenditionRetrieve(),XmRenditionUpdate()

Availability
Motif2.0andlater.
Description
XmRenditionisanopaquedatatypeusedforrenderingXmStrings.Arenditionconsistsoftwoparts:anXmStringTagthatismatchedagainsttagelements
withinacompoundstringtoberendered,andrenderingdata,suchascolor,font,andlinestyle.
TheimplementationofXmRenditionisthroughapseudowidget:althoughnotatruewidget,theobjecthasresourcesandaresourcestyleinterfaceforsettingand
fetchingvaluesoftherendition.TheobjectiscreatedbyXmRenditionCreate(),resourcesarefetchedusingXmRenditionRetrieve()andset
throughXmRenditionUpdate(),andfinallydeallocatedbyXmRenditionFree().Typically,arenditionformsanentrywithinarendertable.Arendition
ismergedintoanexistingrendertableorusedasthebasisforanewtable,throughthefunctionXmRenderTableAddRenditions().Compoundstringsare
renderedbysuccessivelymatchingtagswithinthecompoundstringwithtagsassociatedwithentriesinarendertable.Wherethereisanequivalence,thatrenditionis
usedtodisplaythecorrespondingcomponentofthecompoundstring.
ResourceswithinarenditionmayhavethevalueXmAS_IS,eitherexplicitlyassignedorasanimplicitdefault.WheretheresourceisXmAS_IS,thevalueistaken
fromthepreviousrenditionusedtorenderthecompoundstring.IfthepreviousrenditionalsohasthevalueXmAS_IS,therenditionbeforethepreviousoneis
inspected,andsoon.Adefaultvalueisprovidedifnopreviousrenditionssupplyaresourcevalue.
Renditions,andtherendertablestowhichtheybelong,aresharableacrosswidgets,andarereferencecounted.Inthegeneralcase,awidgetinheritsarendertable
fromthenearestancestorthatholdstheXmQTspecifyRenderTabletrait,ifitsownrendertableisunspecified.Itisimportanttodeallocatearenditionthrough
XmRenditionFree(),ratherthandirectlyinvokingXtFree(),inordertomaintain

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page895

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

thereferencecount.
NewResources
XmRenditiondefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNfont

XmCFont

XtPointer

XmAS_IS

CSG

XmNfontName

XmCFontName

String

XmAS_IS

CSG

XmNfontType

XmCFontType

XmFontType

XmAS_IS

CSG

XmNloadModel

XmCLoadModel

unsigned
char

XmAS_IS

CSG

XmNrendition
Background

XmCRendition
Background

Pixel

XmUNSPECIFIED
_PIXEL

CSG

XmNrendition
Foreground

XmCRendition
Foreground

Pixel

XmUNSPECIFIED
_PIXEL

CSG

XmNstrikethru
Type

XmCStrikethru
Type

unsigned
char

XmAS_IS

CSG

XmNtabList

XmCTabList

XmTabList

XmAS_IS

CSG

XmNtag

XmCTag

XmStringTag

""

XmNunderline
Type

XmCUnderline
Type

unsigned
char

XmAS_IS

CSG

XmNfont
Specifiesthefontfortherendition.Ifspecified,XmNloadModelisforcedtoXmLOAD_IMMEDIATE.Otherwise,therenditionautomaticallysetsthevalueofthe
resourcewhenthefontassociatedwithXmNfontNameisloaded,eitherbecausetherenditionisusedtorenderacompoundstringorasasideeffectofa
XmRenditionUpdate()call.
XmNfontName
Specifieseitherthenameofafont,oracommaseparatedlistoffontnames(afontset).EachnameisassumedtobeinstandardXLogicalFontDescription(XLFD)
format.IfbothXmNfontNameandXmNfontarespecifiedforarendition,theXmNfontresourcetakesprecedence.
XmNfontType
Specifieswhetherthefontassociatedwiththerenditionisafontorafontset.PossiblevaluesareXmFONT_IS_FONTandXmFONT_IS_FONTSET.
XmNloadModel
SpecifieswhetherthefontorfontsetindicatedbytheXmNfontNameresourceisloadedwhentherenditioniscreatedorwhenfirstrequired.Possiblevaluesare:

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page896
XmLOAD_IMMEDIATE/*loadonrenditioncreate*/
XmLOAD_DEFERRED/*loadwhenfontisrequired*/

XmNrenditionBackground
Specifiesthebackgroundcolorfortherendition.
XmNrenditionForeground
Specifiestheforegroundcolorfortherendition.
XmNstrikethruType
Specifiesalinetypeforstrikingthroughatextsegment.Possiblevaluesare:
XmDOUBLE_DASHED_LINE

XmDOUBLE_LINE

XmSINGLE_DASHED_LINE

XmSINGLE_LINE

XmNO_LINE

XmNtabList
Specifiesthetablistthatindicateshowcompoundstringsthatcontaintabcomponentsarelaidoutincolumns.
XmNtag
SpecifiesatagusedinmatchingagainstXmStringTagcomponentswithincompoundstringsoragainstotherrenditions.Thevalueistakenfromthetag
parameteroftheXmRenditionCreate()procedurethatcreatestherenditionobject.ThevalueNULLisnotvalid,althoughtheemptystring""is.
XmNunderlineType
Specifiesalinetypeforunderliningatextsegment.Possiblevaluesare:
XmDOUBLE_DASHED_LINE

XmDOUBLE_LINE

XmSINGLE_DASHED_LINE

XmSINGLE_LINE

XmNO_LINE

SeeAlso
XmRenditionCreate(1),XmRenditionFree(1),XmRenditionRetrieve(1),XmRenditionUpdate(1),
XmRenderTableAddRenditions(1),XmRenderTableCopy(1),XmRenderTableFree(1),
XmRenderTableGetRendition(1),XmRenderTableGetRenditions(1),XmRenderTableGetTags(1),
XmRenderTableRemoveRenditions(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page897

XmRowColumn
MotifandXtWidgetClasses
Name
XmRowColumnwidgetclassamanagerwidgetthatarrangesitschildreninrowsandcolumns.
Synopsis
PublicHeader:

<Xm/RowColumn.h>

ClassName:

XmRowColumn

ClassHierarchy:

Core Composite

ClassPointer:

Constraint

XmManager XmRowColumn

xmRowColumnWidgetClass
widget=XtCreateWidget(name,xmRowColumnWidgetClass,...)

Instantiation:
Functions/Macros:

XmCreateMenuBar(),XmCreateOptionMenu(),
XmCreatePopupMenu(),XmCreatePulldownMenu(),
XmCreateRadioBox(),XmCreateRowColumn(),
XmCreateSimpleCheckBox(),
XmCreateSimpleMenuBar(),
XmCreateSimpleOptionMenu(),
XmCreateSimplePopupMenu(),
XmCreateSimplePulldownMenu(),
XmCreateSimpleRadioBox(),XmCreateWorkArea(),
XmIsRowColumn(),XmVaCreateSimpleCheckBox(),
XmVaCreateSimpleMenuBar(),
XmVaCreateSimpleOptionMenu(),
XmVaCreateSimplePopupMenu(),
XmVaCreateSimplePulldownMenu(),
XmVaCreateSimpleRadioBox()

Description
RowColumnprovidesanareainwhichchildrenbelongingtoanywidgettypearedisplayedinrowsandcolumns.RowColumnisageneralpurposemanagerwidget
classthatcanbeconfiguredintomanylayouts,suchasaMenuBar,PopupMenu,PulldownMenu,OptionMenu,CheckBox,orRadioBox.ManyofRowColumn's
resourcespertainonlytoaspecificlayouttype.
InMotif1.2andlater,aRowColumnthatisconfiguredasaPopupMenuoraPulldownMenusupportstearoffmenus.Whenamenuistornoff,itremainsonthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page898

screenafteraselectionismadesothatadditionalselectionscanbemade.Amenupanethatcanbetornoffcontainsatearoffbuttonatthetopofthemenu.Atear
offbuttonisabuttonthathasaSeparatorlikeappearance.ThenameofatearoffbuttoninamenupaneisTearOffControl.Anapplicationcansetthe
followingresourcesforatearoffbutton:XmNbackground,XmNbackgroundPixmap,XmNbottomShadowColor,XmNforeground,
XmNheight,XmNmargin,XmNseparatorType,XmNshadowThickness,andXmNtopShadowColor.
InMotif2.0andlater,themechanismswherebypulldownmenusareselectedandpostedhavebeenrationalized.TheManagerandPrimitiveclassessupport
XmNpopupHandlerCallbackresourcesthatcanbeusedtochooseapopupmenutodisplayinagivencontext.Inaddition,theRowColumnprovides
automaticpostingofpopupsthroughextensionstotheXmNpopupEnabledresource.
Traits
RowColumnholdstheXmQTmenuSystemtrait,whichisinheritedbyanyderivedclass,andusestheXmQTmenuSystemandXmQTmenuSavvytraits.
NewResources
RowColumndefinesthefollowingresources,whichareallCSGaccess,exceptforXmNlabelString(C)andXmNrowColumnType(CG):
Name

Class

Type

Default

XmNadjustLast

XmCAdjustLast

Boolean

True

XmNadjustMargin

XmCAdjustMargin

Boolean

True

XmNentryAlignment

XmCAlignment

unsigned
char

XmALIGNMENT_
BEGINNING

XmNentryBorder

XmCEntryBorder

Dimension

XmNentryClass

XmCEntryClass

WidgetClass

dynamic

XmNentryVertical
Alignment

XmCVerticalAlignment

unsigned
char

XmALIGNMENT_
CENTER

XmNisAligned

XmCIsAligned

Boolean

True

XmNisHomogeneous

XmCIsHomogeneous

Boolean

dynamic

XmNlabelString

XmCXmString

XmString

NULL

XmNmarginHeight

XmCMarginHeight

Dimension

dynamic

XmNmarginWidth

XmCMarginWidth

Dimension

dynamic

XmNmenuAccelerator

XmCAccelerators

String

dynamic

XmNmenuHelpWidget

XmCMenuWidget

Widget

NULL

XmNmenuHistory

XmCMenuWidget

Widget

NULL

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page899

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

XmNmenuPost

XmCMenuPost

String

NULL

XmNmnemonic

XmCMnemonic

KeySym

NULL

XmNmnemonicCharSet

XmCMnemonicCharSet

String

XmFONTLIST_
DEFAULT_TAG

XmNnumColumns

XmCNumColumns

short

XmNorientation

XmCOrientation

unsignedchar

dynamic

XmNpacking

XmCPacking

unsignedchar

dynamic

XmNpopupEnabled

XmCPopupEnabled

XtEnum

XmPOPUP_KEYBOARD

XmNradioAlwaysOne

XmCRadioAlwaysOne

Boolean

True

XmNradioBehavior

XmCRadioBehavior

Boolean

False

XmNresizeHeight

XmCResizeHeight

Boolean

True

XmNresizeWidth

XmCResizeWidth

Boolean

True

XmNrowColumnType

XmCRowColumnType

unsignedchar

XmWORK_AREA

XmNspacing

XmCSpacing

Dimension

dynamic

XmNsubMenuId

XmCMenuWidget

Widget

NULL

XmNtearOffModel

XmCTearOffModel

unsignedchar

XmTEAR_OFF_
DISABLED

XmNtearOffTitle

XmCTearOffTitle

XmString

NULL

XmNwhichButton

XmCWhichButton

unsignedint

dynamic

XmNadjustLast
IfTrue(default),thelastrow(orcolumn)intheRowColumnwidgetisexpandedsoastobeflushwiththeedge.
XmNadjustMargin
IfTrue(default),textineachrow(orcolumn)willalignwithothertextinitsrow(orcolumn).Thisisdonebyforcingthemarginresources(definedbytheLabel
widget)tohavethesamevalue.Forexample,inahorizontallyorientedRowColumnwidget,allitemswillhavethesamevalueforXmNmarginTopand
XmNmarginBottominaverticallyorientedRowColumnwidget,allitemswillhavethesamevalueforXmNmarginLeftandXmNmarginRight.
XmNentryAlignment
WhenXmNisAlignedisTrue,thisresourcetellsRowColumnchildrenhowtoalign.ThechildrenmustbesubclassesofXmLabelorXmLabelGadget.If

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page900

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNrowColumnTypeisXmMENU_OPTION,theresourceisforcedtoXmALIGNMENT_CENTERandcannotbechanged.Possiblevaluesare:
XmALIGNMENT_BEGINNING
XmALIGNMENT_CENTER
XmALIGNMENT_END

XmNentryBorder
TheborderwidthofaRowColumnwidget'schildren.
XmNentryClass
Thewidget(orgadget)classtowhichchildrenmustbelongwhenbeingaddedtoaRowColumnwidget.Thisresourceisusedonlywhenthe
XmNisHomogeneousresourceissettoTrue.XmNentryClassensuresthataMenuBarwillhaveonlycascadebuttonchildrenandthataRadioBoxwill
haveonlytogglebuttonchildren(orgadgetvariantsofeachclass).XmNentryClasscanhaveoneoftwodefaultvalues.ForaMenuBar,thedefaultvalueis
xmCascadeButtonWidgetClass.ForaRadioBox,thedefaultvalueisxmToggleButtonGadgetClass.Possiblevaluesare:
xmToggleButtonGadgetClass/*XmWORK_AREAwithXmNradioBehaviorTrue*/
xmCascadeButtonWidgetClass/*XmMENU_BAR*/

XmNentryVerticalAlignment
InMotif1.2andlater,specifieshowchildrenthataresubclassesofLabel,Text,andTextFieldarealignedvertically.Theresourcehasnoeffectif
XmNorientationisXmVERTICALorXmNpackingisXmPACK_TIGHT.Possiblevaluesare:
XmALIGNMENT_BASELINE_BOTTOM
XmALIGNMENT_BASELINE_TOP
XmALIGNMENT_CONTENTS_BOTTOM
XmALIGNMENT_CENTER
XmALIGNMENT_CONTENTS_TOP

XmNisAligned
IfTrue,enablethealignmentspecifiedintheXmNentryAlignmentresource.AlignmentisignoredinalabelwhoseparentisapopuporpulldownMenuPane
(forexample,inanOptionMenu).
XmNisHomogeneous
IfTrue,enforcetheconditionthatallRowColumnchildrenbelongtothesameclass(theclassspecifiedbytheXmNentryClassresource).Whencreatinga

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page901

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

RadioBoxoraMenuBar,thedefaultvalueofthisresourceisTrueotherwise,it'sFalse.
XmNlabelString
Alabelusedonlyinoptionmenus.Atextstringdisplaysnexttotheselectionarea.Bydefault,thereisnolabel.
XmNmarginHeight
XmNmarginWidth
ThespacingbetweenanedgeoftheRowColumnwidgetanditsnearestchild.Inpopupandpulldownmenus,thedefaultis0inothertypesofRowColumnwidgets,
thedefaultis3pixels.
XmNmenuAccelerator
Apointertoastringthatspecifiesanaccelerator(keyboardshortcut)foruseonlyinRowColumnwidgetsoftypeXmMENU_POPUPorXmMENU_BAR.Inapopup
menu,typingtheacceleratorpoststhemenuinamenubar,typingtheacceleratorhighlightsthefirstitemandenablestraversalinthemenubar.Thestring'sformatis
likethatofatranslationbutallowsonlyasinglekeypresseventtobespecified.ThedefaultvalueofthisresourceisKMenu(forpopupmenus)andKMenuBar(for
menubars).
XmNmenuHelpWidget
ThewidgetIDoftheCascadeButtonwidgetthatservesastheHelpbutton.ThisresourceismeaningfulonlyinRowColumnwidgetsoftypeXmMENU_BAR.
XmNmenuHistory
ThewidgetIDofthemostrecentlyactivatedmenuentry.SincethemostrecentlyactivatedmenuentryisalsothechoicethatdisplaysinanOptionMenu,thisresource
isusefulforindicatingthecurrentselectioninaRowColumnwidgetoftypeXmMENU_OPTION.InaRowColumnwidgetwhoseXmNradioBehavior
resourceissettoTrue,theXmNmenuHistoryresourceindicatesthelasttogglebuttontochangefromunselectedtoselected.
XmNmenuPost
Thestringthatdescribestheeventforpostingamenu.ThevaluespecifiesanXeventusingtranslationtablesyntax.Thedefaultvaluedependsonthetypeof
RowColumnwidget:forXmMENU_POPUP,thedefaultis<Btn3Down>forXmMENU_OPTION,XmMENU_BAR,andXmWORK_AREA,thedefaultis
<Btn1Down>forXmMENU_PULLDOWN,thisresourceisn'tmeaningful.
XmNmnemonic
Thekeysymofthekeytopress(incombinationwiththeMAltmodifier)inordertopostthepulldownmenuassociatedwithanoptionmenu.Thisresource

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page902

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

ismeaningfulonlyinoptionmenus.Inthelabelstring,thefirstcharactermatchingthiskeysymwillbeunderlined.
XmNmnemonicCharSet
Thecharactersetfortheoptionmenu'smnemonic.Thedefaultvaluedependsonthecurrentlanguageenvironment.
XmNnumColums
Thenumberofcolumns(inaverticallyorientedRowColumnwidget)orthenumberofrows(inahorizontallyorientedRowColumnwidget).Thisresourceis
meaningfulonlywhentheXmNpackingresourceissettoXmPACK_COLUMN.
XmNorientation
ThedirectionforlayingouttherowsandcolumnsofchildrenofaRowColumnwidget.ForallRowColumnwidgetsexceptaMenuBar,thedefaultvalueis
XmVERTICAL.Possiblevaluesare:
XmVERTICAL/*toptobottomcreation*/
XmHORIZONTAL/*lefttorightcreation*/

XmNpacking
ThemethodofspacingtheitemsplacedwithinaRowColumnwidget.ThedefaultvalueisXmPACK_COLUMNforaRadioBox,andXmPACK_TIGHTforother
typesofRowColumnwidget.Possiblevaluesare:
XmPACK_TIGHT/*giveeachboxminimumsizing*/
XmPACK_COLUMN/*padboxestoalignifneeded*/
XmPACK_NONE/*widgetaccommodatesplacement*/

XmNpopupEnabled
IfTrue(default),keyboardshortcutsareineffectforpopupmenus.SetthisresourcetoFalseifyouwanttodisableacceleratorsandmnemonicsinpopup
menus.
InMotif2.0andlater,theresourcehaschangedtypefromBooleantoXtEnum,inordertosupporttherangeofvaluesrequiredfortheenhancedautomaticpopup
mechanisms.ThevalueXmPOPUP_DISABLEDisequivalenttothebehaviordescribedaboveforFalse,andXmPOPUP_KEYBOARDisequivalentto
True.Inaddition,XmPOPUP_AUTOMATICaddseventhandlersforautomaticmenupopupandenablesthekeyboardforthemenu.
XmPOPUP_AUTOMATIC_RECURSIVEissimilar,exceptthatthesearchforapopupmenuinagivencontextisnotrestrictedtoimmediatechildren,andthe
mostspecificpopuptodisplaymaybefoundintheparentofatargetwidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page903

ThenewenumerationerroneouslyhasthegenericrepresentationtypeXmREnumratherthanaputativeXmRPopupEnabled,andanenumerationforthe
valueshasnotbeeninstalledwithinthestandardrepresentationtypes.Hence,asofMotif2.0,thetypecannotbeproperlyspecifiedinaresourcefile.This
problempersistsinMotif2.1.20.
XmNradioAlwaysOne
ThisresourceiseffectiveonlywhentheXmNradioBehaviorresourceisTrue.XmNradioAlwaysOne,whensettoTrue(default),ensuresthatone
ofthetogglebuttonsisalwaysselected.Oncethisbuttonisselected,clickingonitwillnotdeselectititcanbedeselectedonlybyselectinganothertogglebutton.If
XmNradioAlwaysOneisFalse,aselectedtogglebuttoncanbedeselectedbyclickingonitorbyselectinganotherbutton.
XmNradioBehavior
IfTrue,theRowColumnwidgetactslikeaRadioBoxbysettingtwooftheresourcesforitstogglebuttonchildren.Namely,theXmNindicatorTyperesource
defaultstoXmONE_OF_MANY,andtheXmNvisibleWhenOffresourcedefaultstoTrue.ThedefaultvalueoftheXmNradioBehaviorresourceis
False,unlesstheRowColumnwidgetwascreatedwiththeXmCreateRadioBox()routine.
XmNresizeHeight
XmNresizeWidth
IfTrue(default),thewidgetrequestsanewheightorwidthwhennecessary.IfFalse,noresizerequestsaremade.
XmNrowColumnType
ThetypeofRowColumnwidgettocreate.Youcan'tchangethisresourceafterit'sset.ConvenienceroutinescreateaRowColumnwidgetoftheappropriatetype.
Possiblevaluesare:
XmWORK_AREA

XmMENU_POPUP

XmMENU_BAR

XmMENU_PULLDOWN

XmMENU_OPTION

XmNspacing
ThehorizontalandverticalspacingbetweenchildrenintheRowColumnwidget.ForRowColumnwidgetsoftypeXmOPTION_MENUorXmWORK_AREA,the
defaultvalueis3pixelsforotherRowColumntypes,thedefaultis0.
XmNsubMenuId
ThewidgetIDforthepulldownmenupanetobeassociatedwithanOptionMenu.ThisresourceismeaningfulonlyinRowColumnwidgetsoftype
XmMENU_OPTION.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page904

XmNtearOffModel
InMotif1.2andlater,specifieswhethertearoffbehaviorisenabledforaRowColumnwithXmNrowColumnTypesettoXmMENU_PULLDOWNor
XmMENU_POPUP.InMotif1.2,thisresourcecannotbesetfromaresourcefileunlessaconverterisinstalledbycallingthefunction,hwXmRepTypeInstall
TearOffModelConverterXmRepTypeInstallTearOffModelConverter().Possiblevaluesare:
XmTEAR_OFF_DISABLED
XmTEAR_OFF_ENABLED

InMotif2.0andlater,theconverterisautomaticallyinstalled,andXmRepTypeInstallTearOffModelConverter()isobsolete.
XmNtearOffTitle
InMotif2.0andlater,specifiesthetitleoftheTearOffshell.
XmNwhichButton
ThisresourcehasbeensupersededbytheXmNmenuPostresourcebutisretainedforcompatibilitywitholderreleasesofMotif.
NewConstraintResources
RowColumndefinesthefollowingconstraintresourcesforitschildren:
Name

Class

Type

Default

Access

XmNpositionIndex

XmCPositionIndex

short

XmLAST_POSITION

CSG

XmNpositionIndex
InMotif1.2andlater,specifiesthepositionofthewidgetintheRowColumn'slistofchildren.Avalueof0indicatesthebeginningofthelist,while
XmLAST_POSITIONplacesthechildattheendofthelist.
SimpleMenuCreationResources
Thefollowingresourcesareusedwiththesimplemenucreationroutines:
Name

Class

Type

Default

Access

XmNbuttonAccelerators

XmCButtonAccelerators

StringTable

NULL

XmNbuttonAccelerator
Text

XmCButtonAccelerator
Text

XmStringTable

NULL

XmNbuttonCount

XmCButtonCount

int

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page905

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNbuttonMnemonic
CharSets

XmCButtonMnemonic
CharSets

XmStringCharSetTable

NULL

XmNbuttonMnemonics

XmCButtonMnemonics

XmKeySymTable

NULL

XmNbuttons

XmCButtons

XmStringTable

NULL

XmNbuttonSet

XmCButtonSet

int

XmNbuttonType

XmCButtonType

XmButtonTypeTable

NULL

XmNoptionLabel

XmCOptionLabel

XmString

NULL

XmNoptionMnemonic

XmCOptionMnemonic

KeySym

NULL

XmNpostFromButton

XmCPostFromButton

int

XmNsimpleCallback

XmCCallback

XtCallbackProc

NULL

XmNbuttonAccelerators
Alistofaccelerators,containingoneitemforeachcreatedtitle,separator,andbutton.
XmNbuttonAcceleratorText
Alistofcompoundstringsthatrepresenttheacceleratorsforthecreatedbuttons.Thelistcontainsoneitemforeachcreatedtitle,separator,andbutton.
XmNbuttonCount
Thenumberoftitles,separators,andmenubuttonstocreate.
XmNbuttonMnemonicCharSets
Alistofcharactersetstousefordisplayingbuttonmnemonics.Thelistcontainsanitemforeachcreatedtitle,separator,andbutton.
XmNbuttonMnemonics
Alistofmnemonicsassociatedwiththebuttonscreated.Thelistcontainsoneitemforeachcreatedtitle,separator,andbutton.
XmNbuttons
Alistofcompoundstringsthatwillserveaslabelsforthecreatedbuttons.Thelistcontainsoneitemforeachcreatedtitle,separator,andbutton.
XmNbuttonSet
ThenumericpositionofthebuttontobeinitiallysetwithinaRadioBoxorwithinanOptionMenu'spulldownsubmenu.Thefirstbuttonisspecifiedas0.
XmNbuttonType
Alistofbuttontypesforthecreatedbuttons.Thelistcontainsoneitemforeachcreatedtitle,separator,andbutton.Ifthisresourceisnotset,thebuttonscreatedwill
beCascadeButtonGadgetsinaMenuBarandPushButtonGadgetsinother

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page906

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

typesofRowColumnwidget.TheXmNbuttonTyperesourceisanenumeratedtypewhosepossiblevaluesare:
XmPUSHBUTTON

XmCASCADEBUTTON

XmDOUBLE_SEPARATOR

XmCHECKBUTTON

XmRADIOBUTTON

XmSEPARATOR

XmTITLE

XmNoptionLabel
Acompoundstringwithwhichtolabeltheleftsideofanoptionmenu.
XmNoptionMnemonic
Thekeysymofthekeytopress(incombinationwiththeMAltmodifier)inordertopostthepulldownmenuassociatedwithanoptionmenu.
XmNpostFromButton
Thenumericpositionofthecascadebutton(intheparent)fromwhichthepulldownsubmenuisattachedandsubsequentlyposted.Thefirstbuttonisspecifiedas0.
XmNsimpleCallback
Listofcallbacksthatarecalledwhenabuttonispressedorwhenitsvaluechanges.ForPushButtonsandCascadeButtons,thecallbacksareaddedtothe
XmNactivateCallbackandforToggleButtonstheyareaddedtotheXmNvalueChangedCallback.
CallbackResources
RowColumndefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNentryCallback

XmCR_ACTIVATE

XmNmapCallback

XmCR_MAP

XmNtearOffMenuActivateCallback

XmCR_TEAR_OFF_ACTIVATE

XmNtearOffMenuDeactivateCallback

XmCR_TEAR_OFF_DEACTIVATE

XmNunmapCallback

XmCR_UNMAP

XmNentryCallback
Listofcallbacksthatarecalledwhenanybuttonispressedorwhenitsvaluechanges.Whenthisresourceisspecified,theXmNactivateCallbackand
XmNvalueChangedCallbackcallbacksforallPushButtons,ToggleButtons,

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page907

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

DrawnButtons,andCascadeButtonsaredisabledandinsteadcallthiscallback.ThisresourcemustbespecifiedwhentheRowColumniscreated.
XmNmapCallback
ListofcallbacksthatarecalledwhenthewindowassociatedwithaRowColumnisgoingtobemapped.
XmNtearOffMenuActivateCallback
Listofcallbacksthatarecalledwhenatearoffmenupaneisgoingtobetornoff.
XmNtearOffMenuDeactivateCallback
Listofcallbacksthatarecalledwhenatornoffmenupaneisgoingtobedeactivated.
XmNunmapCallback
ListofcallbacksthatarecalledwhenthewindowassociatedwithaRowColumnisgoingtobeunmapped.
CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
Widgetwidget/*IDofactivatedRowColumnitem*/
char*data/*valueofapplication'sclientdata*/
char*callbackstruct/*createdwhenitemisactivated*/
}XmRowColumnCallbackStruct

Thestructurememberswidget,data,andcallbackstructaremeaningfulonlywhenthecallbackreasonisXmCR_ACTIVATEotherwise,these
structuremembersaresettoNULL.
callbackstructpointstoastructurethatiscreatedbytheactivationcallbackoftheRowColumnitem.
InheritedResources
RowColumninheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.InMotif2.0andearlier,RowColumn
setsthedefaultvalueofXmNshadowThicknessto2ifXmNrowColumnTypeisXmMENU_BAR,XmMENU_POPUP,orXmMENU_PULLDOWNthe
resourceisundefinedwhenXmNrowColumnTypeisXmMENU_OPTIONorXmWORK_AREA.InMotif2.1andlater,thedefaultvaluedependsuponthe
XmDisplayXmNenableThinThicknessresource:ifTruethedefaultis1otherwise,itis2.ThedefaultvalueofXmNnavigationTypeis

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page908

settoXmTAB_GROUPforaworkareaandXmNONEforanoptionmenutheresourceisundefinedfortheotherrowcolumntypes.Thedefaultvalueof
XmNtraversalOnissettoTrueforaworkareaoranoptionmenutheresourceisundefinedfortheotherrowcolumntypes.Thedefaultvalueof
XmNborderWidthisresetto0byXmManager.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinsertPosition

Composite

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNnavigationType

XmManager

XmNborderColor

Core

XmNnumChildren

Composite

XmNborderPixmap

Core

XmNpopupHandler
Callback

XmManager

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmManager

XmNsensitive

Core

XmNbottomShadowPixmap

XmManager

XmNshadowThickness

XmManager

XmNchildren

Composite

XmNstringDirection

XmManager

XmNcolormap

Core

XmNtopShadowColor

XmManager

XmNdepth

Core

XmNtopShadowPixmap

XmManager

XmNdestroyCallback

Core

XmNtranslations

Core

XmNforeground

XmManager

XmNtraversalOn

XmManager

XmNheight

Core

XmNunitType

XmManager

XmNhelpCallback

XmManager

XmNuserData

XmManager

XmNhighlightColor

XmManager

XmNwidth

Core

XmNhighlightPixmap

XmManager

XmNx

Core

XmNinitialFocus

XmManager

XmNx

Core

XmNinitialResources
Persistent

Core

Translations
ThevalueoftheXmNrowColumnTyperesourcedeterminestheavailabletranslations.
WhenXmNrowColumnTypeisXmWORK_AREA,RowColumn'stranslationsareinheritedfromXmManager.
WhenXmNrowColumnTypeisXmMENU_OPTION,RowColumn'stranslationsarethetraversal,KActivate,andKCanceltranslationsinheritedfrom
XmManager,aswellasthefollowing:

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page909
Event

Action

BSelectPress

MenuBtnDown()

BSelectRelease

MenuBtnUp()

KSelect

ManagerGadgetSelect()

KHelp

Help()

WhenXmNrowColumnTypeisXmMENU_BAR,XmMENU_PULLDOWN,orXmMENU_POPUP,RowColumnhasthefollowingtranslations(inPopupMenu
systems,BMenuperformstheBSelectactionsaswell):
Event

Action

BSelectPress

MenuBtnDown()

BSelectRelease

MenuBtnUp()

KActivate

ManagerGadgetSelect()

KSelect

ManagerGadgetSelect()

MAnyKCancel

MenuGadgetEscape()

KHelp

Help()

KLeft

MenuGadgetTraverseLeft()

KRight

MenuGadgetTraverseRight()

KUp

MenuGadgetTraverseUp()

KDown

MenuGadgetTraverseDown()

ActionRoutines
RowColumndefinesthefollowingactionroutines:
Help()
InvokesanycallbacksspecifiedbytheXmNhelpCallbackresource.
ManagerGadgetSelect()
Armsandactivatesthegadgetchild(inamenu)thathasfocus.ForaCascadeButtonGadget,itssubmenuispostedforothergadgetchildren,themenuhierarchyis
unposted.
MenuBtnDown()
Inagadgetchild(inamenu),unpostsanymenusthatwerepostedbythegadget'sparentmenu,turnsmousetraversalon,andarmsthegadget.Ifthechildisa
CascadeButtonGadget,itssubmenuisposted.
MenuBtnUp()
Inagadgetchild(inamenu),unpoststhemenuhierarchyandactivatesthegadget.IfthechildisaCascadeButtonGadget,thisactionpoststhesubmenuandturnson
keyboardtraversalinthesubmenu.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page910

MenuGadgetEscape()
Unpoststhecurrentmenuand(unlessthemenuisapulldownsubmenu)restoreskeyboardfocustothetabgrouporwidgetthatpreviouslyhadit(assuminganexplicit
focuspolicy).Inatoplevelpulldownmenupaneattachedtoamenubar,thisactionroutinealsodisarmsthecascadebuttonandthemenubar.
MenuGadgetTraverseDown()
WhenthecurrentmenuitemhasasubmenuandisinaMenuBar,disarmsthecurrentmenuitem,poststhesubmenu,andarmsthefirstiteminit.Whenthecurrent
menuitemisinamenupane,disarmsthecurrentmenuitemandarmstheitembelowit,wrappingaroundtothetopifnecessary.
MenuGadgetTraverseLeft()
IfthecurrentmenuitemisinaMenuBar,disarmsthecurrentitemandarmstheMenuBaritemtotheleft,wrappingaroundtotherightifnecessary.Whenthecurrent
itemisinamenupane,iftheitemisnotattheleftedgeofthepane,disarmsthecurrentmenuitemandarmstheitemtoitsleft.Iftheitemisattheleftedgeofa
submenuattachedtotheMenuBar,unpoststhesubmenu,traversestotheMenuBaritemtotheleft,andpostsitssubmenu,wrappingifnecessary.
MenuGadgetTraverseRight()
IfthecurrentmenuitemisinaMenuBar,disarmsthecurrentitemandarmstheMenuBaritemtotheright,wrappingaroundtotheleftifnecessary.Whenthecurrent
itemisinamenupane,iftheitemisaCascadeButton,poststheassociatedsubmenu.Ifthecurrentitemisnotattherightedgeofthepane,disarmsthecurrentitem
andarmstheitemtotheright,wrappingifnecessary.Otherwise,unpostsallsubmenus,traversestotheMenuBaritemtotheright,andpostsitssubmenu,wrappingif
necessary.
MenuGadgetTraverseUp()
Disarmsthecurrentmenuitemandarmstheitemaboveit,wrappingaroundtothebottomifnecessary.
AdditionalBehavior
RowColumnhasadditionalmenubehavior:
KMenuBar
Inamenubarorinanymenupanecascadedfromit,unpoststhemenutreeand(underanexplicitfocuspolicy)returnskeyboardfocustothetabgroupthathadit
beforeenteringthemenutree.Inothernonpopupmenu

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page911

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

panes,turnsonkeyboardtraversalandsetsthefocustothefirstmenubaritem.
KMenu
Popsupthemenuassociatedwiththecomponentwiththekeyboardfocusandturnsonkeyboardtraversal.Inapopupmenusystem,unpoststhemenutreeand
(underanexplicitfocuspolicy)returnskeyboardfocustothetabgroupthathaditbeforeenteringthemenutree.
SeeAlso
XmCreateObject(1),XmGetMenuCursor(1),XmGetPostedFromWidget(1),XmGetTearOffControl(1),
XmMenuPosition(1),XmOptionButtonGadget(1),XmOptionLabelGadget(1),
XmRepTypeInstallTearOffModelConverter(1),XmSetMenuCursor(1),XmVaCreateSimpleCheckBox(1),
XmVaCreateSimpleMenuBar(1),XmVaCreateSimpleOptionMenu(1),XmVaCreateSimplePopupMenu(1),
XmVaCreateSimplePulldownMenu(1),XmVaCreateSimpleRadioBox(1),Composite(2),Constraint(2),Core(2),
XmCascadeButton(2),XmCheckBox(2),XmManager(2),XmMenuBar(2),XmOptionMenu(2),XmPopupMenu(2),
XmPulldownMenu(2),XmRadioBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page912

XmScale
MotifandXtWidgetClasses
Name
XmScalewidgetclassamanagerwidgetthatallowsselectionfromarangeofvalues.
Synopsis
PublicHeader:

<Xm/Scale.h>

ClassName:

XmScale

ClassHierarchy:

Core

ClassPointer:

Composite

Constraint

XmManager XmScale

xmScaleWidgetClass
widget=XtCreateWidget(name,xmScaleWidgetClass,...)

Instantiation:
Functions/Macros:

XmCreateScale(),XmIsScale(),XmScaleGetValue(),
XmScaleSetTicks(),XmScaleSetValue()

Description
AScaledisplaysavaluefromarangeofvaluesandallowsausertoadjustthevalue.AScaleconsistsofanarrow,rectangulartroughthatcontainsaslider.The
slider'spositionmarksthecurrentvaluewithintherangeofvalues.Scaleisamanagerwidgetthatorientsitschildrenalongitsaxis.Thesechildren,typicallylabels,can
beusedastickmarks.
IftheScaleisaninputoutputtype,ausercanchangethevaluebymovingtheslider.AnoutputonlyScaledisplaysavaluebutdoesnotallowtheusertomodifyit.In
Motif2.0andlater,theXmNeditableresourcecontrolstheinputoutputtypeoftheScaleinMotif1.2andearlier,theprogrammercallsXtSetSensitive
()orchangestheinheritedXmNsensitiveresourcetosettheeditablestate.
InMotif2.0andlater,theScalesupportstickmarksdirectlythroughtheXmScaleSetTicks()routine.
Traits
ScaleholdstheXmQTtransfertrait,whichisinheritedbyanyderivedclasses,andusestheXmQTspecifyRenderTabletrait.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page913

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewResources
Scaledefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNdecimalPoints

XmCDecimalPoints

short

CSG

XmNeditable

XmCEditable

Boolean

dynamic

CSG

XmNfontList

XmCFontList

XmFontList

dynamic

CSG

XmNhighlightOnEnter

XmCHighlightOnEnter

Boolean

False

CSG

XmNhighlightThickness

XmCHighlight
Thickness

Dimension

dynamic

CSG

XmNmaximum

XmCMaximum

int

100

CSG

XmNminimum

XmCMinimum

int

CSG

XmNorientation

XmCOrientation

unsignedchar

XmVERTICAL

CSG

XmNprocessingDirection

XmCProcessing
Direction

unsignedchar

dynamic

CSG

XmNrenderTable

XmCRenderTable

XmRenderTable

dynamic

CSG

XmNscaleHeight

XmCScaleHeight

Dimension

CSG

XmNscaleMultiple

XmCScaleMultiple

int

dynamic

CSG

XmNshowWidth

XmCScaleWidth

Dimension

CSG

XmNshowArrows

XmCShowArrows

XtEnum

XmNONE

CSG

XmNshowValue

XmCShowValue

XtEnum

XmNONE

CSG

XmNsliderMark

XmCSliderMark

XtEnum

dynamic

CSG

XmNsliderSize

XmCSliderSize

int

dynamic

CSG

XmNsliderVisual

XmCSliderVisual

XtEnum

dynamic

CSG

XmNslidingMode

XmCSlidingMode

XtEnum

XmSLIDER

CSG

XmNtitleString

XmCTitleString

XmString

NULL

CSG

XmNvalue

XmCValue

int

dynamic

CSG

XmNdecimalPoints
Apositiveintegerthatdetermineshowtheslider'svaluewillbedisplayed.Thedecimalpointintheslider'svaluegetsshiftedtotheright,andthisresourcespecifiesthe
numberofdecimalplacestoshift.Forexample,iftheslider'svalueis5678,thensettingtheXmdecimalPointsresourceto2causesthewidgettodisplaythe
valueas56.78.
XmNeditable
InMotif2.0andlater,specifieswhethertheScalerespondstouserinput.ThedefaultdependsuponthevalueoftheXmNslidingModeresource.Ifthevalue

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page914

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

isXmSLIDER,thedefaultisTrueforthevalueXmTHERMOMETERthedefaultisFalse.
XmNfontList
Thefontlistusedbythewidgetforthetitle.InMotif2.0andlater,XmFontListisobsoleteitisreplacedbyXmRenderTable.Maintainedforbackwards
compatibility,anyspecifiedrendertabletakesprecedenceoverthefontlist.
XmNhighlightOnEnter
Determineswhethertodrawthewidget'shighlightingrectanglewheneverthecursormovesintothewidget.Thisresourceappliesonlywhentheshellhasafocuspolicy
ofXmPOINTER.IftheXmNhighlightOnEnterresourceisTrue,highlightingisdrawnifFalse(default),highlightingisnotdrawn.
XmNhighlightThickness
Thethicknessofthehighlightingrectangle.InMotif2.0andearlier,thedefaultis2.InMotif2.1andlater,thedefaultdependsupontheXmDisplay
XmNenableThinThicknessresource:ifTrue,thedefaultis1otherwise,itis2.
XmNmaximum
XmNminimum
Themaximum/minimumvalueoftheslider.
XmNorientation
Thedirectioninwhichthescaleisdisplayed.Possiblevaluesare:
XmVERTICAL/*toptobottomcreation*/
XmHORIZONTAL/*lefttorightcreation*/

XmNprocessingDirection
Determinesthepositionatwhichtodisplaytheslider'smaximumandminimumvalues,withrespecttotheslider.Possiblevaluesare:
XmMAX_ON_TOP/*scaleincreasestowardtop*/
XmMAX_ON_BOTTOM/*scaleincreasestowardbottom*/
XmMAX_ON_LEFT/*scaleincreasestowardleft*/
XmMAX_ON_RIGHT/*scaleincreasestowardright*/

ForverticallyorientedScalewidgets,thedefaultvalueisXmMAX_ON_TOP.ForhorizontallyorientedScalewidgets,thedefaultvalueisusually
XmMAX_ON_RIGHT(dependingonthevalueoftheXmNstringDirectionresource).InMotif2.0andlater,theXmNstringDirectionresource
isobsoleteandthedefaultdependsupontheXmNlayoutDirectionvalue.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page915

XmNrenderTable
InMotif2.0andlater,specifiestheXmRenderTabletouseforboththetitletextstringandthelabeldisplayingthecurrentScalevalue.IfNULL,thevalueis
foundfromthenearestancestorthatholdstheXmQTspecifyRenderTabletrait,usingtheXmLABEL_RENDER_TABLEvalueoftheancestor.
XmNscaleHeight
XmNscaleWidth
Theheightorwidthofthesliderarea.
XmNscaleMultiple
Thedistancetomovethesliderwhentheusermovesitbyamultipleincrement.Thedefaultvalueiscalculatedas(XmNmaximumXmNminimum)/10.
XmNshowArrows
InMotif2.0andlater,specifieswhetherandhowarrowsaredisplayedoneachendoftheScale.Possiblevaluesare:
XmEACH_SIDE/*arrowatbothends*/
XmMAX_SIDE/*arrowatmaximumend*/
XmMIN_SIDE/*arrowatminimumend*/
XmNONE/*arrowatneitherend*/

XmNshowValue
InMotif1.2andearlier,aBooleanvaluethatspecifieswhetherthecurrentscalevalueisdisplayedonanadjacentlabel.IfTrue,theScaledisplaysthevaluebeside
theslider.IfFalse,thevaluelabelisn'tdisplayed.InMotif2.0andlater,thetypeoftheresourcechangestoanenumeration.XmNONEisequivalenttoFalse,
anddoesnotdisplayavalue.XmNEAR_BORDERplacesthevalueadjacenttotheborderoftheScale,andXmNEAR_SLIDERplacesthevalueattheslider.
XmNsliderMark
InMotif2.0andlater,specifiestheappearanceoftheslider.ThedefaultdependsuponthevalueoftheXmNslidingModeresource.Iftheslidingmodeis
XmSLIDER,thedefaultisXmETCHED_LINE.WithamodeofXmTHERMOMETER,thedefaultisXmNONEifthescaleiseditable,otherwise
XmROUND_MARK.Possiblevaluesare:
XmETCHED_LINE/*drawnasanetchedline*/
XmNONE/*drawnasaforegroundrectangle*/
XmROUND_MARK/*drawnasashadowedcircle*/
XmTHUMB_MARK/*threeetchedlinesinforegroundedrectangle*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page916

XmNsliderSize
InMotif2.0andlater,anundocumentedresourcethatrepresentsthesizeofthesliderinpixels.
XmNsliderVisual
InMotif2.0andlater,specifiesthecoloroftheslidervisual.ThedefaultisXmTROUGH_COLORwhentheslidingmodelisXmTHERMOMETER,otherwise
XmSHADOWED_BACKGROUND.Possiblevaluesare:
XmBACKGROUND_COLOR/*visualinbackgroundcolor*/
XmFOREGROUND_COLOR/*visualinforegroundcolor*/
XmSHADOWED_BACKGROUND/*visualinbackground,withshadow*/
XmTROUGH_COLOR/*visualintroughcolor*/

XmNslidingMode
InMotif2.0andlater,specifiesthewayinwhichtheslidermoves.Possiblevaluesare:
XmSLIDER/*slidermovesfreelybetweeneachend*/
XmTHERMOMETER/*slideranchoredtooneend*/

XmNtitleString
ThetextstringthatappearsasthetitleintheScalewidget.
XmNvalue
Thecurrentpositionoftheslideralongthescale.ThisresourcemusthaveavaluebetweenthevaluesofXmNminimumandXmNmaximum.
CallbackResources
Scaledefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNconvertCallback

XmCR_OK

XmNdragCallback

XmCR_DRAG

XmNvalueChangedCallback

XmCR_VALUE_CHANGED

XmNconvertCallback
InMotif2.0andlater,specifiesalistofcallbackscalledwhenthesliderisrequestedtoconvertaselectionaspartofadatatransferoperation.
XmNdragCallback
Listofcallbacksthatarecalledwhenthesliderisbeingdragged.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page917

XmNvalueChangedCallback
Listofcallbacksthatarecalledwhenthepositionofthesliderhaschanged.
CallbackStructure
ConvertcallbacksarefullydescribedwithinthesectionscoveringtheUniformTransferModel.SeeXmTransfer(1)formoredetails.Forquickreference,apointerto
thefollowingstructureispassedtocallbacksontheXmNconvertCallbacklist:
typedefstruct
{
intreason/*thereasonthatthecallbackisinvoked*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Atomselection/*selectionforwhichconversionisrequested*/
Atomtarget/*theconversiontarget*/
XtPointersource_data/*selectionsourceinformation*/
XtPointerlocation_data/*informationaboutdatatobetransferred*/
intflags/*inputstatusoftheconversion*/
XtPointerparm/*parameterdataforthetarget*/
intparm_format/*formatofparameterdata*/
unsignedlongparm_length/*numberofelementsinparameterdata*/
Atomparm_type/*thetypeoftheparameterdata*/
intstatus/*outputstatusoftheconversion*/
XtPointervalue/*returnedconversiondata*/
Atomtype/*typeofconversiondatareturned*/
intformat/*formatoftheconversiondata*/
unsignedlonglength/*numberofelementsintheconversiondata*/
}XmConvertCallbackStruct

Eachdragandvaluechangedcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
intvalue/*newvalueoftheslider*/
}XmScaleCallbackStruct

InheritedResources
Scaleinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.InMotif2.0andearlier,thedefaultvalueof
XmNshadowThicknessisresetto2.InMotif2.1,thedefaultvaluedependsupontheXmDisplayXmNenableThinThicknessresource:ifTruethe
defaultis1otherwise,itis2.ThedefaultvalueofXmNborderWidthisresetto0byXmManager.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page918
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinsertPosition

Composite

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNnavigationType

XmManager

XmNborderColor

Core

XmNnumChildren

Composite

XmNborderPixmap

Core

XmNpopupHandler
Callback

XmManager

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmManager

XmNsensitive

Core

XmNbottomShadowPixmap

XmManager

XmNshadowThickness

XmManager

XmNchildren

Composite

XmNstringDirection

XmManager

XmNcolormap

Core

XmNtopShadowColor

XmManager

XmNdepth

Core

XmNtopShadowPixmap

XmManager

XmNdestroyCallback

Core

XmNtranslations

Core

XmNforeground

XmManager

XmNtraversalOn

XmManager

XmNheight

Core

XmNunitType

XmManager

XmNhelpCallback

XmManager

XmNuserData

XmManager

XmNhighlightColor

XmManager

XmNwidth

Core

XmNhighlightPixmap

XmManager

XmNx

Core

XmNinitialFocus

XmManager

XmNy

Core

XmNinitialResources
Persistent

Core

Translations
Scaledoesnotdefineanynewtranslations.
Behavior
Scalehasthefollowingbehavior:
BSelectPressorBTransferPress
InthetroughbetweenthesliderandanendoftheScale,movesthesliderbyonemultipleincrementinthedirectionoftheendoftheScale.Callsthe
XmNvalueChangedCallbackcallbacks.WhetherthevalueoftheScaleis

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page919

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

incrementedordecrementeddependsonthevalueofXmNprocessingDirection.Intheslider,startsinteractivedraggingoftheslider.
BSelectMotionorBTransferMotion
Ifthebuttonpressoccurredwithintheslider,theslidertracksthepointerandcallstheXmNdragCallbackcallbacks.
BSelectReleaseorBTransferRelease
Ifthebuttonpressoccurswithinthesliderandthepositionofthesliderhaschanged,theXmNvalueChangedCallbackcallbacksareinvoked.
MCtrlBSelectPress
InthetroughbetweenthesliderandanendoftheScale,movestheslidertothatendoftheScaleandcallstheXmNvalueChangedCallbackcallbacks.
WhetherthevalueoftheScaleisincrementedordecrementeddependsonthevalueoftheXmNprocessingDirectionresource.
KUp
KDown
InaverticalScale,movesthesliderupordownoneincrementandcallstheXmNvalueChangedCallbackcallbacks.WhetherthevalueoftheScaleis
incrementedordecrementeddependsonthevalueoftheXmNprocessingDirectionresource.
KLeft
KRight
InahorizontalScale,movesthesliderleftorrightoneincrementandcallstheXmNvalueChangedCallbackcallbacks.WhetherthevalueoftheScaleis
incrementedordecrementeddependsonthevalueoftheXmNprocessingDirectionresource.
MCtrlKUporKPageUp
MCtrlKDownorKPageDown
InaverticalScale,movesthesliderupordownonemultipleincrementandcallstheXmNvalueChangedCallbackcallbacks.WhetherthevalueoftheScale
isincrementedordecrementeddependsonthevalueoftheXmNprocessingDirectionresource.
MCtrlKLeftorKPageLeft
MCtrlKRightorKPageRight
InahorizontalScale,movesthesliderleftorrightonemultipleincrementandcallstheXmNvalueChangedCallbackcallbacks.Whetherthevalueofthe
ScaleisincrementedordecrementeddependsonthevalueoftheXmNprocessingDirectionresource.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page920

KBeginLineorKBeginData
MovestheslidertotheScale'sminimumvalueandcallstheXmNvalueChangedCallbackcallbacks.
KEndLineorKEndData
MovestheslidertotheScale'smaximumvalueandcallstheXmNvalueChangedCallbackcallbacks.
KNextField
KPrevField
Movesthekeyboardfocustothefirstiteminthenextorprevioustabgroup,wrappingifnecessary.
KHelp
InvokesthelistofcallbacksspecifiedbyXmNhelpCallback.IftheScaledoesnothaveanyhelpcallbacks,invokesthoseassociatedwiththenearestancestor
thathasthem.
SeeAlso
XmCreateObject(1),XmScaleGetValue(1),XmScaleSetValue(1),XmScaleSetTicks(1),XmTransfer(1),
Composite(2),Constraint(2),Core(2),XmManager(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page921

XmScreen
MotifandXtWidgetClasses
Name
XmScreenwidgetclassanobjectusedtostorescreenspecificinformation.
Synopsis
PublicHeader:

<Xm/Screen.h>

ClassName:

XmScreen

ClassPointer:

xmScreenClass

ClassHierarchy:

Core

Instantiation:

widget=XtAppInitialize
(...)

XmScreen

Functions/Macros:

XmGetXmScreen(),XmIsScreen()

Availability
Motif1.2andlater.
Description
TheScreenobjectstoresscreenspecificinformationforusebythetoolkit.AnapplicationhasaScreenobjectforeachscreenthatitaccesses.Whenanapplication
createsitsfirstshellonascreen,typicallybycallingXtAppInitialize()orXtAppCreateShell(),aScreenobjectiscreatedautomatically.Thereis
nowaytocreateaScreenindependently.ThefunctionXmGetXmScreen()canbeusedtogetthewidgetIDoftheScreenobject.
NewResources
Screendefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNbitmapConversion
Model

XmCBitmapConversion
Model

XtEnum

XmMATCH_DEPTH

CSG

XmNcolorAllocation
Proc

XmCColorAllocation
Proc

XmAllocColorProc

NULL

CSG

XmNcolorCalculation
Proc

XmCColorCalculation
Proc

XmScreenColorProc

NULL

CSG

XmNdarkThreshold

XmCDarkThreshold

int

dynamic

XmNdefaultCopy
CursorIcon

XmCDefaultCopy
CursorIcon

Widget

NULL

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page922

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNdefaultInvalid
CursorIcon

XmCDefaultInvalid
CursorIcon

Widget

NULL

CSG

XmNdefaultLink
CursorIcon

XmCDefaultLink
CursorIcon

Widget

NULL

CSG

XmNdefaultMove
CursorIcon

XmCDefaultMove
CursorIcon

Widget

NULL

CSG

XmNdefaultNone
CursorIcon

XmCDefaultNone
CursorIcon

Widget

NULL

CSG

XmNdefaultSource
CursorIcon

XmCDefaultSource
CursorIcon

Widget

NULL

CSG

XmNdefaultValid
CursorIcon

XmCDefaultValid
CursorIcon

Widget

NULL

CSG

XmNfont

XmCFont

XFontStruct*

NULL

CSG

XmNforeground
Threshold

XmCForeground
Threshold

int

dynamic

XmNhorizontalFontUnit

XmCHorizontalFontUnit

int

dynamic

CSG

XmNinsensitive
StippleBitmap

XmCInsensitive
StippleBitmap

Pixmap

50_foreground

XmNlightThreshold

XmCLightThreshold

int

dynamic

XmNmenuCursor

XmCCursor

String

arrow

XmNmoveOpaque

XmCMoveOpaque

Boolean

False

CSG

XmNunpostBehavior

XmCUnpostBehavior

unsignedchar

XmUNPOST_
AND_REPLAY

CSG

XmNuseColorObject

XmCUseColorObject

Boolean

False

XmNuserData

XmCUserData

XtPointer

NULL

CSG

XmNverticalFontUnit

XmCVerticalFontUnit

int

dynamic

CSG

XmNbitmapConversionModel
InMotif2.0andlater,specifiesthewayinwhichXpmandXbmfilesareconvertedtoapixmap.IfthevalueisXmMATCH_DEPTH,thepixmaphasthesamedepth
asthewidgettowhichitisassociated.IfthevalueisXmMATCH_DYNAMIC,Xbmfilesareconvertedtoapixmapofdepth1.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page923

XmNcolorAllocationProc
InMotif2.0andlater,specifiesanXmAllocColorProcprocedureusedforallocatingcolorontheparticularscreenassociatedwiththeXmScreenobject.Ifthis
isNULL,thedefaultprocedureXAllocColorisused.
XmNcolorCalculationProc
InMotif2.0andlater,specifiesanXmScreenColorProcprocedureforcalculatingthedefaultforeground,background,topshadow,bottomshadow,select
colorsontheparticularscreenassociatedwiththeXmScreenobject.IfthisisNULL,coloriscalculatedusingadefaultscreenindependentprocedure.Thedefault
procedurecanbechangedbyXmSetColorCalculation().
XmNdarkThreshold
Thelevelofperceivedbrightness(between0and100)thatistreatedasa''dark"backgroundcolorwhencomputingdefaultshadowandselectcolors.
XmNdefaultCopyCursorIcon
TheDragIconusedduringacopyoperation.WhenthevalueisNULL,adefaultsystemiconisused.
XmNdefaultInvalidCursorIcon
TheDragIconusedwhenthepointerisoveraninvaliddropsite.WhenthevalueisNULL,adefaultsystemiconisused.
XmNdefaultLinkCursorIcon
TheDragIconusedduringalinkoperation.WhenthevalueisNULL,adefaultsystemiconisused.
XmNdefaultMoveCursorIcon
TheDragIconusedduringamoveoperation.WhenthevalueisNULL,adefaultsystemiconisused.
XmNdefaultNoneCursorIcon
TheDragIconusedwhenthepointerisnotoveradropsite.WhenthevalueisNULL,adefaultsystemiconisused.
XmNdefaultSourceCursorIcon
ThebitmapusedasacursorwhenanXmNsourceCursorIconisnotprovidedbytheDragContext.WhenthevalueisNULL,adefaultsystemiconisused.
XmNdefaultValidCursorIcon
TheDragIconusedwhenthepointerisoveravaliddropsite.WhenthevalueisNULL,adefaultsystemiconisused.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page924

XmNfont
ThefontusedincomputingvaluesforXmNhorizontalFontUnitandXmNverticalFontUnit.
XmNforegroundThreshold
Thelevelofperceivedbrightness(between0and100)thatdistinguishesbetweena"dark"and"light"backgroundwhencomputingthedefaultforegroundandhighlight
colors.
XmNhorizontalFontUnit
ThehorizontalcomponentofthefontunitsthatareusedtoconvertgeometryvalueswhenXmNshellUnitTypeorXmNunitTypeissetto
Xm100TH_FONT_UNITS.Ifavalueisnotspecified,thedefaultiscomputedfromtheXmNfontresource.
XmNinsensitiveStippleBitmap
InMotif2.0andlater,specifiesadefaultstipplefordrawingwidgetsininsensitivestate.MostlyusedwithinthegraphicscontextsofGadgets.
XmNlightThreshold
Thelevelofperceivedbrightness(between0and100)thatistreatedasa"light"backgroundcolorwhencomputingdefaultshadowandselectcolors.
XmNmenuCursor
Thecursorthatisusedwhentheapplicationpostsamenu.PossiblevaluesincludeallofthecursorsintheXcursorfont.
XmNmoveOpaque
IfFalse(default),anoperationthatmovesawindowdisplaysanoutlineofthewindowduringtheoperation.IfTrue,amoveoperationdisplaysarepresentation
ofthewindow.
XmNunpostBehavior
Thebehaviorofapostedmenuwhenthepointerbuttonispressedoutsideofthemenu.Possiblevaluesare:
XmUNPOST_AND_REPLAY/*unpoststhemenuhierarchyandreplaysevent*/
XmUNPOST/*unpoststhemenuhierarchy*/

XmNuseColorObject
InMotif2.0andlater,specifieswhethercolorsareshareablebetweenwidgets,andwhetheranalterationtoacolordynamicallychangesallwidgetsthatreferencethe
color.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page925

XmNuserData
InMotif2.0andlater,specifiesapointertodatathattheapplicationcanattachtothestructurerepresentingthescreen.Theresourceisunusedinternally.
XmNverticalFontUnit
TheverticalcomponentofthefontunitsthatareusedtoconvertgeometryvalueswhenXmNshellUnitTypeorXmNunitTypeissetto
Xm100TH_FONT_UNITSorXm_FONT_UNITS.Ifavalueisnotspecified,thedefaultiscomputedfromtheXmNfontresource.
Procedures
TheXmScreenColorProchasthefollowingsyntax:
typedefvoid(*XmScreenColorProc)(Screen*,
XColor*,XColor*,XColor*,XColor*,XColor*)
Screen*screen/*thescreen*/
XColor*bg_color/*specifiesthebackgroundcolor*/
XColor*fg_color/*returnstheforegroundcolor*/
XColor*sel_color/*returnstheselectcolor*/
XColor*ts_color/*returnsthetopshadowcolor*/
XColor*bs_color/*returnsthebottomshadowcolor*/

AnXmScreenColorProctakessixarguments.Thefirstargumentisapointertothescreen.Thesecondargument,bg_color,isapointertoanXColor
structurethatspecifiesthebackgroundcolor.Thered,green,blue,andpixelfieldsinthestructurecontainvalidvalues.Therestoftheargumentsare
pointerstoXColorstructuresforthecolorsthataretobecalculated.Theprocedurefillsinthered,green,andbluefieldsinthesestructures.
TheXmAllocColorProchasthefollowingsyntax:
typedefvoid(*XmAllocColorProc)(Display*,Colormap,XColor*)
Display*display/*connectiontoXserver*/
Colormapcolormap/*acolormapinwhichtoallocatecolor*/
XColor*bs_color/*specifiesandreturnsallocatedcolor*/

AnXmAllocColorProctakesthreearguments.ThefirstargumentisapointertotheDisplayconnection.ThesecondargumentistheColormapwherethecolor
istobeallocated.ThethirdargumentisapointertoanXColorstructureforthecolorthatistobeallocated.Theprogrammerfillsinthered,green,and
bluefieldsinthestructuretotherequiredvalues,andtheprocedurereturnstheactuallyallocatedvaluesintothesamefields.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page926

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

InheritedResources
NoneoftheresourcesinheritedbyScreenareapplicable.
SeeAlso
XmGetXmScreen(1),XmSetColorCalculation(1),Core(2),XmDisplay(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page927

XmScrollBar
MotifandXtWidgetClasses
Name
XmScrollBarwidgetclassawidgettocontrolthescrollingoftheviewingareainanotherwidget.
Synopsis
PublicHeader:

<Xm/ScrollBar.h>

ClassName:

XmScrollBar

ClassHierarchy:

Core

ClassPointer:

XmPrimitive XmScrollBar

xmScrollBarWidgetClass
widget=XtCreateWidget(name,xmScrollBarWidgetClass,...)

Instantiation:
Functions/Macros: XmCreateScrollBar(),XmIsScrollBar(),XmScrollBarGetValues(),
XmScrollBarSetValues()

Description
AScrollBarallowsuserstorepositiondatathatistoolargetofitintheviewingwindow.AlthoughaScrollBarcanbeusedasastandalonewidget,itisnormallyused
inaScrolledWindow.AScrollBarconsistsofarectangularstrip,calledthescrollregionortrough,andtwoarrowsplacedoneitherendofthescrollregion.Within
thescrollregionisasmaller,movablerectanglecalledtheslider.Toscrollthedata,userscanclickononeofthearrows,clickinthescrollregion,ordragtheslider.
TheapplicationtypicallysetstheXmNsliderSizeresourcesuchthatthesizeofthesliderrelativetothesizeofthescrollregioncorrespondstothepercentageof
totaldatathatiscurrentlydisplayed.
Traits
ScrollBarholdstheXmQTnavigatortrait,whichisinheritedbyanyderivedclasses.
NewResources
ScrollBardefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNeditable

XmCEditable

Boolean

dynamic

CSG

XmNincrement

XmCIncrement

int

CSG

XmNinitialDelay

XmCInitialDelay

int

250

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page928

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNmaximum

XmCMaximum

int

dynamic

CSG

XmNminimum

XmCMinimum

int

CSG

XmNorientation

XmCOrientation

unsigned
char

XmVERTICAL

CSG

XmNpageIncrement

XmCPageIncrement

int

10

XmNprocessing
Direction

XmCProcessing
Direction

unsigned
char

dynamic

CSG

XmNrepeatDelay

XmCRepeatDelay

int

50

CSG

XmNshowArrows

XmCShowArrows

XtEnum

XmEACH_SIDE

CSG

XmNsliderMark

XmCSliderMark

XtEnum

dynamic

CSG

XmNsliderSize

XmCSliderSize

int

dynamic

CSG

XmNsliderVisual

XmCSliderVisual

XtEnum

XmSHADOWED_
BACKGROUND

CSG

XmNslidingMode

XmCSlidingMode

XtEnum

XmSLIDER

CSG

XmNsnapBackMultiple

XmCSnapBackMultiple

unsigned
short

65535

CSG

XmNtroughColor

XmCTroughColor

Pixel

dynamic

CSG

XmNvalue

XmCValue

int

dynamic

CSG

XmNeditable
InMotif2.0andlater,specifieswhethertheScrollBarrespondstouserinput.ThedefaultdependsuponthevalueoftheXmNslidingModeresource.Ifthevalue
isXmSLIDER,thedefaultisTrueforthevalueXmTHERMOMETERthedefaultisFalse.
XmNincrement
Theamountthevaluechangesduetotheuser'smovingtheslideroneincrement.
XmNinitialDelay
Thenumberofmillisecondsabuttonmustremainpressedbeforetriggeringcontinuousslidermovement.
XmNmaximum
XmNminimum
Themaximum/minimumvalueoftheslider.
XmNorientation
Thedirectioninwhichthesliderisdisplayed.Possiblevaluesare:
XmVERTICAL/*toptobottomcreation*/
XmHORIZONTAL/*lefttorightcreation*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page929

XmNpageIncrement
Theamountthevaluechangesduetotheuser'smovingtheslideronepageincrement.
XmNprocessingDirection
Determinesthepositionatwhichtodisplaytheslider'smaximumandminimumvalues,withrespecttotheslider.Possiblevaluesare:
XmMAX_ON_TOP/*sliderincreasestowardtop*/
XmMAX_ON_BOTTOM/*sliderincreasestowardbottom*/
XmMAX_ON_LEFT/*sliderincreasestowardleft*/
XmMAX_ON_RIGHT/*sliderincreasestowardright*/

ForverticallyorientedScrollBarwidgets,thedefaultvalueisXmMAX_ON_TOP.ForhorizontallyorientedScrollBarwidgets,thedefaultvalueisusually
XmMAX_ON_RIGHT(dependingonthevalueoftheXmNstringDirectionresource).
XmNrepeatDelay
Thenumberofmillisecondsabuttonmustremainpressedbeforecontinuingfurtherslidermotions,oncetheXmNinitialDelaytimehasbeentriggered.
XmNshowArrows
InMotif1.2andearlier,aBooleanvaluewhichindicateswhetherarrowsaredisplayed.IfTrue,arrowsaredisplayedifFalse,theyarenot.InMotif2.0and
later,theresourceisrepresentedbyanenumeratedtype:ifXmEACH_SIDE,arrowsaredisplayedateachendoftheScrollBar,XmMAX_SIDEdisplaysonearrow
attheendwherethemaximumvalueisdisplayed,XmMIN_SIDEdisplaysonearrowattheminimumvalueend,andXmNONEdoesnotdisplayanyarrows.
XmNsliderMark
InMotif2.0andlater,specifiestheappearanceoftheslider.ThedefaultdependsuponthevalueoftheXmNslidingModeresource.Iftheslidingmodeis
XmSLIDER,thedefaultisXmETCHED_LINE.WithamodeofXmTHERMOMETER,thedefaultisXmNONEifthescaleiseditable,otherwise
XmROUND_MARK.Possiblevaluesare:
XmETCHED_LINE/*drawnasanetchedline*/
XmNONE/*drawnasaforegroundrectangle*/
XmROUND_MARK/*drawnasashadowedcircle*/
XmTHUMB_MARK/*threeetchedlinesinforegroundedrectangle*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page930

XmNsliderSize
Theslider'slength.Thelengthrangesfrom1tothevalueofXmNmaximumXmNminimum.Bydefault,thevalueiscomputedtobe:(XmNmaximum
XmNminimum)/10.
XmNsliderVisual
InMotif2.0andlater,specifiesthecoloroftheslidervisual.ThedefaultisXmTROUGH_COLORwhentheslidingmodelisXmTHERMOMETER,otherwise
XmSHADOWED_BACKGROUND.Possiblevaluesare:
XmBACKGROUND_COLOR/*visualinbackgroundcolor*/
XmFOREGROUND_COLOR/*visualinforegroundcolor*/
XmSHADOWED_BACKGROUND/*visualinbackground,withshadow*/
XmTROUGH_COLOR/*visualintroughcolor*/

XmNslidingMode
InMotif2.0andlater,specifiesthewayinwhichtheslidermoves.Possiblevaluesare:
XmSLIDER/*slidermovesfreelybetweeneachend*/
XmTHERMOMETER/*slideranchoredtooneend*/

XmNsnapBackMultiple
InMotif2.0andlater,specifiesadistance,which,ifexceeded,causestheScrollBartosnapbacktoitsoriginalsettings.Theresourcecomesintoeffectwhentheuser
dragsthemouseoutsidetheboundsoftheScrollBar.TheresourceismeasuredintermsofmultiplesoftheScrollBarwidth.Forexample,thevalue0(zero)causes
theslidertosnapbackassoonasthepointermovesoutsidetheScrollBar,thevalue1snapsbackatoneScrollbarwidth,etc.Thedefaultisverylarge,inorderto
disablesnapbackevenifthesizeofthescreenisabnormal.
XmNtroughColor
Thecoloroftheslider'strough.
XmNvalue
Theslider'sposition.ThepositionrangesfromthevalueofXmNminimumtothevalueof(XmNmaximumXmNsliderSize).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page931

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

CallbackResources
ScrollBardefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNdecrementCallback

XmCR_DECREMENT

XmNdragCallback

XmCR_DRAG

XmNincrementCallback

XmCR_INCREMENT

XmNpageDecrementCallback

XmCR_PAGE_DECREMENT

XmNpageIncrementCallback

XmCR_PAGE_INCREMENT

XmNtoBottomCallback

XmCR_TO_BOTTOM

XmNtoTopCallback

XmCR_TO_TOP

XmNvalueChangedCallback

XmCR_VALUE_CHANGED

XmNdecrementCallback
ListofcallbacksthatarecalledwhenthevalueoftheScrollBardecreasesbyoneincrement.
XmNdragCallback
Listofcallbacksthatarecalledforeachchangeinpositionwhenthesliderisbeingdragged.
XmNincrementCallback
ListofcallbacksthatarecalledwhenthevalueoftheScrollBarincreasesbyoneincrement.
XmNpageDecrementCallback
ListofcallbacksthatarecalledwhenthevalueoftheScrollBardecreasesbyonepageincrement.
XmNpageIncrementCallback
ListofcallbacksthatarecalledwhenthevalueoftheScrollBarincreasesbyonepageincrement.
XmNtoBottomCallback
ListofcallbacksthatarecalledwhenthesliderismovedtothemaximumvalueoftheScrollBar.
XmNtoTopCallback
ListofcallbacksthatarecalledwhenthesliderismovedtotheminimumvalueoftheScrollBar.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page932

XmNvalueChangedCallback
Listofcallbacksthatarecalledattheendofasliderdragoperation.ThesecallbacksarealsocalledinplaceofeachoftheotherScrollBarcallbacksthatreportsa
valuechangewhenthecallbackresourceisNULL.
CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
intvalue/*valueoftheslider'snewlocation*/
intpixel/*coordinatewhereselectionoccurred*/
}XmScrollBarCallbackStruct

pixelismeaningfulonlywhenthecallbackreasonisXmCR_TO_TOPorXmCR_TO_BOTTOM.Thepixelmemberspecifiesthelocationatwhichthemouse
buttonselectionoccurred,givingthexcoordinateinthecaseofahorizontalScrollBarandtheycoordinateinthecaseofaverticalScrollBar.
InheritedResources
ScrollBarinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.XmNnavigationTypeto
XmSTICKY_TAB_GROUP,andXmNtraversalOntoFalse.ThedefaultvalueofXmNborderWidthisresetto0byManager.
PriortoMotif2.0,thedefaultvalueofXmNhighlightThicknessisresettozerobytheScrollBar.InMotif2.0,thedefaultisresetto2iftheScrollBar's
parentisaScrolledWindow,zerootherwise.InMotif2.1,iftheXmNenableThinThicknessresourceofXmDisplayisTrue,thedefaultis1ifthe
ScrollBar'sparentisaScrolledWindow,zerootherwise.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNhighlightThickness

XmPrimitive

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNlayoutDirection

XmPrimitive

XmNbackgroundPixmap

Core

XmNmappedWhenManaged

Core

XmNborderColor

Core

XmNnavigationType

XmPrimitive

XmNborderPixmap

Core

XmNpopupHandlerCallback

XmPrimitive

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page933

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmPrimitive

XmNsensitive

Core

XmNbottomShadowPixmap

XmPrimitive

XmNshadowThickness

XmPrimitive

XmNcolormap

Core

XmNtopShadowColor

XmPrimitive

XmNconvertCallback

XmPrimitive

XmNtopShadowPixmap

XmPrimitive

XmNdepth

Core

XmNtranslations

Core

XmNdestroyCallback

Core

XmNtraversalOn

XmPrimitive

XmNforeground

XmPrimitive

XmNunitType

XmPrimitive

XmNheight

Core

XmNuserData

XmPrimitive

XmNhelpCallback

XmPrimitive

XmNwidth

Core

XmNhighlightColor

XmPrimitive

XmNx

Core

XmNhighlightOnEnter

XmPrimitive

XmNy

Core

XmNhighlightPixmap

XmPrimitive

Translations
ThetranslationsforScrollBarincludethosefromPrimitive,plusthefollowing:
Event

Action

BSelectPress

Select()

BSelectRelease

Release()

BSelectPressMoved

Moved()

BTransferPress

Select()

BTransferRelease

Release()

BTransferPressMoved

Moved()

MCtrlBSelectPress

TopOrBottom()

MCtrlBSelectRelease

Release()

KUp

IncrementUpOrLeft(0)

MCtrlKUp

PageUpOrLeft(0)

KDown

IncrementDownOrRight(0)

MCtrlKDown

PageDownOrRight(0)

KLeft

IncrementUpOrLeft(1)

MCtrlKLeft

PageUpOrLeft(1)

KRight

IncrementDownOrRight(1)

MCtrlKRight

PageDownOrRight(1)

KPageUp

PageUpOrLeft(0)

KPageDown

PageDownOrRight(0)

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page934

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Event

Action

KPageLeft

PageUpOrLeft(1)

KPageRight

PageDownOrRight(1)

KBeginLine

TopOrBottom()

KEndLine

TopOrBottom()

KBeginData

TopOrBottom()

KEndData

TopOrBottom()

KNextField

PrimitiveNextTabGroup()

KPrevField

PrimitivePrevTabGroup()

KActivate

PrimitiveParentActivate()

KCancel

CancelDrag()

KHelp

PrimitiveHelp()

ActionRoutines
ScrollBardefinesthefollowingactionroutines:
CancelDrag()
InMotif1.2andlater,cancelsthescrollingoperationandreturnstheslidertoitspreviouslocationiftheeventhappenedduringadrag.Otherwise,passestheeventto
theparentifitisamanager.
IncrementDownOrRight(flag):
Movesthesliderbyoneincrementdownwardifflagis0totherightifflagis1.DependingonthevalueoftheXmNprocessingDirectionresource,
theslider'smovementinvokesthelistofcallbacksspecifiedbyeithertheXmNincrementCallbackortheXmNdecrementCallbackresource(or
XmNvalueChangedCallbackiftheappropriatecallbackresourceisNULL).
IncrementUpOrLeft(flag):
SameasIncrementDownOrRightexceptthattheslidermovesupwardifflagis0andtotheleftifflagis1.
Moved()
Thisactionapplieswhenthemousebuttonispressedintheslider.Whenthisisdone,movingthepointermovestheslideralongwithitandalsoinvokesthecallbacks
specifiedbyXmNdragCallback.
PageDownOrRight(flag):
Movesthesliderbyonepageincrementdownwardifflagis0totherightifflagis1.DependingonthevalueoftheXmNprocessingDirection
resource,theslider'smovementinvokesthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page935

callbackslistedineitherXmNpageIncrementCallbackorXmNpageDecrementCallback(orXmNvalueChangedCallbackifthe
appropriatecallbackresourceisNULL).
PageUpOrLeft(flag):
SameasIncrementDownOrRightexceptthattheslidermovesupwardifflagis0andtotheleftifflagis1.
PrimitiveHelp()
InvokesthelistofcallbacksspecifiedbyXmNhelpCallback.IftheScrollBardoesn'thaveanyhelpcallbacks,theHelp()routineinvokesthoseassociated
withthenearestancestorthathasthem.
PrimitiveNextTabGroup()
PrimitivePrevTabGroup()
Traversestothefirstiteminthenext/previoustabgroup,wrappingifnecessary.
PrimitiveParentActivate()
InMotif1.2andlater,passestheeventtotheparentifitisamanager.
Release()
IftheMoved()actionchangestheslider'sposition,thentheRelease()actioninvokesthecallbacksspecifiedbyXmNvalueChangedCallback.
Select()
Theresultsofthisactiondependonthelocationinwhichitsapplied:Withinanarrow,thisactionisthesameasIncrementDownOrRight()or
IncrementUpOrLeft()incrementingordecrementingaccordingtothevalueoftheXmNprocessingDirectionresource,andinvokingthe
appropriateincrementordecrementcallback.Withinthescrollingareathatliesbetweenanarrowandtheslider,thisactionworkslikethepageincrementaction
routinesmovingbyonepageincrementaccordingtothevalueoftheXmNprocessingDirectionresource,andinvokingtheappropriatepageincrementor
pagedecrementcallback.Withineitheroftheselocations,keepingthebuttonpressedrepeatstheincrementalmovementoftheslider.Thisbehavioristriggeredwhen
thedurationofthebuttonpressexceedsthevalueoftheXmNinitialDelayresourcetheslidermovementthenrepeatswithatimeintervalspecifiedbythe
XmNrepeatDelayresource.Withintheslider,thisactionbeginssliderdragging,whichissubsequentlyaffectedbytheactionsMoved()andRelease().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page936

TopOrBottom()
MovestheslidertoitsminimumvalueandinvokesthecallbacksspecifiedbyXmNtoTopCallback,ormovestheslidertoitsmaximumvalueandinvokesthe
callbacksspecifiedbyXmNtoBottomCallback.Thedirectionoftheslider'smovementdependsonthevalueoftheXmNprocessingDirection
resource.Thisactioncanbeappliedusingeitherkeyboardormouseevents.
SeeAlso
XmCreateObject(1),XmScrollBarGetValues(1),Core(2),XmPrimitive(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page937

XmScrolledList
MotifandXtWidgetClasses
Name
XmScrolledListaListasachildofaScrolledWindow.
Synopsis
PublicHeader:

<Xm/List.h>
widget=XmCreateScrolledList(...)

Instantiation:
Functions/Macros:

XmCreateScrolledList(),XmCreateScrolledWindow()

Description
AScrolledListisacompoundobjectcreatedbyacalltoXmCreateScrolledList()thatprovidesscrollbarsforalistthatisnotvisibleallatonce.A
ScrolledListconsistsofaScrolledWindowwidgetwithaListwidgetasitschild.
AScrolledListautomaticallycreatesthenecessaryscrollbars.TheScrolledWindowresourceXmNscrollingPolicyissetto
XmAPPLICATION_DEFINEDandXmNvisualPolicyissettoXmVARIABLE.TheScrolledWindowresourceXmNscrollBarDisplayPolicy
issettoXmSTATIC,butnoinitialvalueissetfortheListXmNscrollBarDisplayPolicyresource.
DefaultResourceValues
AScrolledListsetsthefollowingdefaultvaluesforScrolledWindowresources:
Name

Default

XmNscrollBarDisplayPolicy

XmSTATIC

XmNscrollingPolicy

XmAPPLICATION_DEFINED

XmNvisualPolicy

XmVARIABLE

WidgetHierarchy
WhenaScrolledListiscreatedwithaspecifiedname,theScrolledWindowisnamednameSWandtheListiscalledname.Thehorizontalandverticalscrollbars
arenamedHorScrollBarandVertScrollBar,respectively.
SeeAlso
XmCreateObject(1),XmList(2),XmScrolledWindow(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page938

XmScrolledText
MotifandXtWidgetClasses
Name
XmScrolledTextaTextwidgetasachildofaScrolledWindow.
Synopsis
PublicHeader:

<Xm/Text.h>
widget=XmCreateScrolledText(...)

Instantiation:
Functions/Macros:

XmCreateScrolledText(),XmCreateScrolledWindow()

Description
ScrolledTextisacompoundobjectcreatedbyacalltoXmCreateScrolledText()thatprovidesscrollbarsfortextthatisnotvisibleallatonce.A
ScrolledTextobjectconsistsofaScrolledWindowwidgetwithamultilineTextwidgetasitschild.
ScrolledTextautomaticallycreatesthenecessaryscrollbars.TheScrolledWindowresourceXmNscrollingPolicyissetto
XmAPPLICATION_DEFINED,XmNvisualPolicyissettoXmVARIABLEandXmNscrollBarDisplayPolicyissettoXmSTATIC.
DefaultResourceValues
ScrolledTextsetsthefollowingdefaultvaluesforScrolledWindowresources:
Name

Default

XmNscrollBarDisplayPolicy

XmSTATIC

XmNscrollingPolicy

XmAPPLICATION_DEFINED

XmNvisualPolicy

XmVARIABLE

WidgetHierarchy
WhenaScrolledTextobjectiscreatedwithaspecifiedname,theScrolledWindowisnamednameSWandtheTextwidgetiscalledname.Thehorizontaland
verticalscrollbarsarenamedHorScrollBarandVertScrollBarrespectively.
SeeAlso
XmCreateObject(1),XmScrolledWindow(2),XmText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page939

XmScrolledWindow
MotifandXtWidgetClasses
Name
XmScrolledWindowwidgetclassamanagerwidgetthatprovidesscrollbarsforthedatadisplay.
Synopsis
PublicHeader:

<Xm/ScrolledW.h>

ClassName:

XmScrolledWindow

ClassHierarchy:

Core

Composite

Constraint

XmManager XmScrolledWindow

ClassPointer:

xmScrolledWindowWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmScrolledWindowWidgetClass,...)

Functions/Macros: XmCreateScrolledList(),XmCreateScrolledText(),
XmCreateScrolledWindow(),XmIsScrolledWindow(),
XmScrollVisible(),XmScrolledWindowSetAreas()

Description
ScrolledWindowprovidesascrollableviewofdatathatmaynotbevisibleallatonce.ScrollBarsallowausertoscrollthevisiblepartofthewindowthroughthe
largerdisplay.AScrolledWindowwidgetcanbecreatedsothatitscrollsautomaticallywithoutapplicationinterventionorsothatanapplicationprovidessupportfor
allscrollingoperations.Whenscrollingishandledautomatically,ScrolledWindowcreatesthescrollbars,whicharenamedHorScrollBarand
VertScrollBar.
EachoftheScrolledWindowregionsisassociatedwithaScrolledWindowresourceXmScrolledWindowSetAreas()setstheassociatedresources.Ifan
applicationdoesnotcallXmScrolledWindowSetAreas(),thewidgetmaystillsetsomeofthestandardregions.IfScrollBarsareaddedaschildren,the
XmNhorizontalScrollBarandXmNverticalScrollBarresourcesmaybesetiftheyhavenotalreadybeenspecified.Anychildthatisnota
ScrollBarisusedfortheXmNworkWindow.Ifyouwanttobecertainaboutwhichwidgetsareusedforthedifferentregions,itiswisetocall
XmScrolledWindowSetAreas()explicitly.
Traits
ScrolledWindowholdstheXmQTscrollFrametrait,whichisinheritedbyanyderivedclasses,andusestheXmQTnavigatortrait.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page940

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewResources
ScrolledWindowdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNautoDragModel

XmCAutoDragModel

XtEnum

XmAUTO_DRAG_
ENABLED

XmNclipWindow

XmCClipWindow

Widget

dynamic

XmNhorizontal
ScrollBar

XmCHorizontal
ScrollBar

Widget

dynamic

CSG

XmNscrollBar
DisplayPolicy

XmCScrollBar
DisplayPolicy

unsigned
char

dynamic

CSG

XmNscrollBar
Placement

XmCScrollBar
Placement

unsigned
char

XmBOTTOM_RIGHT

CSG

XmNscrolledWindow
MarginHeight

XmCScrolledWindow
MarginHeight

Dimension

CSG

XmNscrolledWindow
MarginWidth

XmCScrolledWindow
MarginWidth

Dimension

CSG

XmNscrollingPolicy

XmCScrollingPolicy

unsigned
char

XmAPPLICATION_
DEFINED

CG

XmNspacing

XmCSpacing

Dimension

CSG

XmNverticalScroll
Bar

XmCVerticalScroll
Bar

Widget

dynamic

CSG

XmNvisualPolicy

XmCVisualPolicy

unsigned
char

dynamic

XmNworkWindow

XmCWorkWindow

Widget

NULL

CSG

XmNautoDragModel
InMotif2.0andlater,specifiedwhetherautomaticdragisenabled.PossiblevaluesareXmAUTO_DRAG_ENABLEDandXmAUTO_DRAG_DISABLED.
XmNclipWindow
ThewidgetIDoftheclippingarea.TheclippingwindowexistsonlywhentheXmNvisualPolicyresourceissettoXmCONSTANT.TheXmNclipWindow
resourcecannotbesettoanewvalue.
XmNhorizontalScrollBar
ThewidgetIDofthehorizontalScrollBar.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page941

XmNscrollBarDisplayPolicy
ControlstheplacementofScrollBars,dependingonthevalueoftheXmNscrollingPolicyresource.Possiblevaluesare:
XmSTATIC/*verticalScrollBaralwaysdisplays*/
XmAS_NEEDED/*addScrollBarwhenviewisclipped*/

IfXmNscrollingPolicyissettoXmAUTOMATIC,thenXmNscrollBarDisplayPolicydefaultstoavalueofXmAS_NEEDED,and
ScrollBarsaredisplayedonlywhentheworkspacecannotfitwithinthecliparea.IfXmNscrollingPolicyissettoXmAPPLICATION_DEFINED,
thenXmNscrollBarDisplayPolicydefaultsto(andmustremainwith)avalueofXmSTATIC.ThismeansthatScrollBarswillalwaysbedisplayed.
XmNscrollBarPlacement
ThepositionsoftheScrollBarsrelativetotheworkwindow.ThedefaultvalueofthisresourcedependsonthevalueoftheXmNstringDirectionresource.
Possiblevaluesare:
XmTOP_LEFT/*verticalScrollBaronlefthorizontalontop*/
XmBOTTOM_LEFT/*verticalScrollBaronlefthorizontalonbottom*/
XmTOP_RIGHT/*verticalScrollBaronrighthorizontalontop*/
XmBOTTOM_RIGHT/*verticalScrollBaronrighthorizontalonbottom*/

XmNscrolledWindowMarginHeight
ThespacingatthetopandbottomoftheScrolledWindow.
XmNscrolledWindowMarginWidth
ThespacingattherightandleftsidesoftheScrolledWindow.
XmNscrollingPolicy
Determineshowautomaticscrollingoccurs.Possiblevaluesare:
XmAUTOMATIC/*ScrolledWindowhandlesscrolling*/
XmAPPLICATION_DEFINED/*applicationhandlesscrolling*/

XmNspacing
ThedistancebetweeneachScrollBarandtheworkwindow.
XmNverticalScrollBar
ThewidgetIDoftheverticalScrollBar.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page942

XmNvisualPolicy
ThevisuallayoutpolicyoftheScrolledWindow.InMotif2.0andlater,theresourceisobsolete,andtheinternalwidgetinitializationfunctionsensurethatthepolicyis
consistent.Possiblevaluesare:
XmCONSTANT/*viewingareaisclippedifneeded*/
/*defaultwhenXmNscrollingPolicyisXmAUTOMATIC*/
XmVARIABLE/*layoutgrowsorshrinksdefaultotherwise*/

XmNworkWindow
ThewidgetIDoftheviewingarea.
NewConstraintResources
InMotif2.0andlater,ScrolledWindowdefinesthefollowingconstraintresourceforitschildren:
Name

Class

Type

XmNscrolledWindow
ChildType

XmCScrolledWindow
ChildType

unsignedchar dynamic

Default

Access
CG

XmNscrolledWindowChildType
SpecifiesthelogicaltypeofchildoftheScrolledWindow.Possiblevaluesare:
XmHOR_SCROLLBAR/*horizontalScrollBar*/
XmVERT_SCROLLBAR/*verticalScrollBar*/
XmSCROLL_HOR/*horizontalScrollBarhorizontalscrollingonly*/
XmSCROLL_VERT/*verticalScrollBarverticalscrollingonly*/
XmWORK_AREA/*workareachild*/
XmCLIP_WINDOW/*XmClipWindow*/
XmNO_SCROLL/*nochildscrolling*/

ThevaluesXmSCROLL_HOR,XmSCROLL_VERT,andXmNO_SCROLLareonlyvalidifthescrollingpolicyisXmAUTOMATIC.
CallbackResources
ScrolledWindowdefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNtraverseObscuredCallback

XmCR_OBSCURED_TRAVERSAL

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page943

XmNtraverseObscuredCallback
Listofcallbacksthatarecalledwhenthekeyboardfocusismovedtoawidgetorgadgetthatisobscuredfromview.
CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
Widgettraversal_destination/*widgetorgadgettotraverseto*/
XmTraversalDirectiondirection/*directionoftraversal*/
}XmTraverseObscuredCallbackStruct

InheritedResources
ScrolledWindowinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.ScrolledWindowsetsthedefault
valueofXmNshadowThicknessdynamically.ThedefaultvalueofXmNborderWidthisresetto0byXmManager.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinitialResources
Persistent

Core

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNnavigationType

XmManager

XmNborderColor

Core

XmNnumChildren

Composite

XmNborderPixmap

Core

XmNpopupHandlerCallback

XmManager

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmManager

XmNsensitive

Core

XmNbottomShadowPixmap

XmManager

XmNshadowThickness

XmManager

XmNchildren

Composite

XmNstringDirection

XmManager

XmNcolormap

Core

XmNtopShadowColor

XmManager

XmNdepth

Core

XmNtopShadowPixmap

XmManager

XmNdestroyCallback

Core

XmNtranslations

Core

XmNforeground

XmManager

XmNtraversalOn

XmManager

XmNheight

Core

XmNunitType

XmManager

XmNhelpCallback

XmManager

XmNuserData

XmManager

XmNhighlightColor

XmManager

XmNwidth

Core

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page944

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNhighlightPixmap

XmManager

XmNx

Core

XmNinitialFocus

XmManager

XmNy

Core

XmNinsertPosition

Composite

WidgetHierarchy
WhentheScrolledWindowhasanXmNvisualPolicyofXmCONSTANT(theXmNscrollingPolicyisXmAUTOMATIC)theScrolledWindowcreates
anadditionalclipwidgetwhichisusedastheparentofanyaddedworkwindow:theadditionalwidgetactsasthelogicalviewport,andtheXmNclipWindow
resourceissettotheIDofthis.
BeforeMotif2.0,theclipwidgethasthenameScrolledWindowClipWindow.InMotif2.0andlater,thenameischangedtoClipWindow:any
resources,andXtNameToWidget()orsimilarcodewhichreliesuponthenameshouldbechangedaccordingly.
Translations
ThetranslationsforScrolledWindowincludethosefromManager.
AdditionalBehavior
ScrolledWindowhasthefollowingadditionalbehaviorwhentheXmNscrollingPolicyresourceisXmAUTOMATIC:
Event

Scrollswindow...

KPageUp

upbythesizeoftheviewingwindow

KPageDown

downbythesizeoftheviewingwindow

KPageLeft

leftbythesizeoftheviewingwindow

KPageRight

rightbythesizeoftheviewingwindow

KBeginLine

horizontallytoScrollBar'sminimumvalue

KEndLine

horizontallytoScrollBar'smaximumvalue

KBeginData

verticallytoScrollBar'sminimumvalue

KEndData

verticallytoScrollBar'smaximumvalue

SeeAlso
XmCreateObject(1),XmScrollVisible(1),XmScrolledWindowSetAreas(1),Composite(2),Constraint(2),
Core(2),XmManager(2),XmScrollBar(2),XmScrolledList(2),XmScrolledText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page945

XmSelectionBox
MotifandXtWidgetClasses
Name
XmSelectionBoxwidgetclassawidgetforselectingoneofalistofalternatives.
Synopsis
PublicHeader:

<Xm/SelectioB.h>

ClassName:

XmSelectionBox

ClassHierarchy:

Core Composite
XmSelectionBox

ClassPointer:

XmSelectionBoxWidgetClass

Instantiation:

widget=XtCreateWidget(name,
XmSelectionBoxWidgetClass,...)

Constraint

XmManager XmBulletinBoard

Functions/Macros: XmCreateSelectionBox(),
XmCreateSelectionDialog(),
XmCreatePromptDialog(),XmXmIsSelectionBox(),
XmSelectionBoxGetChild()

Description
SelectionBoxisacompositewidgetthatdisplaysascrollablelistofalternativesfromwhichtheusercanchooseitems.ASelectionBoxcontainsatextfieldinwhichthe
usercanenteraselection,thescrollablelistofselections,labelsforthetextfieldandthescrollablelist,aseparator,andagroupofthreeorfourbuttons.Thenamesof
thesecomponentsintheSelectionBoxareItems,ItemsList,Selection,Text,andSeparator,respectively.
InMotif1.2andlater,thedefaultbuttonlabelscanbelocalized.IntheClocale,andinMotif1.1,thePushButtonsarelabeledOK,Apply,Cancel,andHelpby
default.TheApplybuttoniscreatedbutnotalwaysmanaged.IftheparentoftheSelectionBoxisaDialogShellthebuttonismanaged,otherwiseitisnot.
YoucancustomizeaSelectionBoxbyremovingexistingchildrenoraddingnewchildren.UseXmSelectionBoxGetChild()toretrievethewidgetIDofan
existingchildandthenunmanagethechild.InMotif1.2andlater,multiplewidgetscanbeaddedaschildrenofaSelectionBox.Thefirstchildisconsideredawork
areaandisplacedbasedonthevalueoftheXmNchildPlacementresource.Ifamenubarisadded,itisplacedatthetopofthewindow.Anybuttonsare
placedaftertheOKbutton.Anyadditionalchildrenareplacedbelowthemessage.InMotif1.1,onlyasinglewidgetcanbeaddedasachildofaSelectionBox.This
childisplacedbelowtheselectiontextandactsasaworkarea.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page946

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Traits
SelectionBoxusestheXmQTactivatableandXmQTaccessTextualtraits.
NewResources
SelectionBoxdefinesthefollowingresources,whichareallCSGaccess,exceptforXmNdialogType(CGaccess)andXmNselectionLabelString(C
access):
Name

Class

Type

Default

XmNapplyLabelString

XmCApplyLabelString

XmString

dynamic

XmNcancelLabelString

XmCCancelLabelString

XmString

dynamic

XmNchildPlacement

XmCChildPlacement

unsignedchar

XmPLACE_
ABOVE_
SELECTION

XmNdialogType

XmCDialogType

unsignedchar

dynamic

XmNhelpLabelString

XmCHelpLabelString

XmString

dynamic

XmNlistItemCount

XmCItemCount

int

XmNlistItems

XmCItems

XmStringTable

NULL

XmNlistLabelString

XmCListLabelString

XmString

dynamic

XmNlistVisibleItemCount

XmCVisibleItemCount

int

dynamic

XmNminimizeButtons

XmCMinimizeButtons

Boolean

False

XmNmustMatch

XmCMustMatch

Boolean

False

XmNokLabelString

XmCOkLabelString

XmString

dynamic

XmNselectionLabelString

XmCSelectionLabelString

XmString

dynamic

XmNtextAccelerators

XmCTextAccelerators

XtAccelerators

default

XmNtextColumns

XmCColumns

short

dynamic

XmNtextString

XmCTextString

XmString

dynamic

XmNapplyLabelString
ThestringthatlabelstheApplybutton.InMotif1.2andlater,thedefaultvalueislocaledependent.IntheClocale,andinMotif1.1,thedefaultvalueis"Apply".
XmNcancelLabelString
ThestringthatlabelstheCancelbutton.InMotif1.2andlater,thedefaultvalueislocaledependent.IntheClocale,andinMotif1.1,thedefaultvalueis
"Cancel".

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page947

XmNchildPlacement
InMotif1.2andlater,determinestheplacementoftheworkareachild.Possiblevaluesare:
XmPLACE_ABOVE_SELECTION/*abovethetextarea*/
XmPLACE_BELOW_SELECTION/*belowthetextarea*/
XmPLACE_TOP/*abovethelistarea*/

XmNdialogType
DetermineswhichchildrenoftheSelectionBoxwidgetareinitiallycreatedandmanaged.Possiblevaluesare:
XmDIALOG_WORK_AREA/*default,whenparentisn'taDialogShell*/
XmDIALOG_PROMPT/*allchildrenexceptlistandlabel*/
XmDIALOG_SELECTION/*default,whenparentisaDialogShell*/
XmDIALOG_COMMAND/*onlylist,selectionlabelandtextfield*/
XmDIALOG_FILE_SELECTION/*allstandardchildren*/

NotethatinMotif1.1,CommandandFileSelectionBoxareseparatewidgetclasses,andtheycannolongerbecreatedbysettingXmNdialogType.
XmNhelpLabelString
ThestringthatlabelstheHelpbutton.InMotif1.2andlater,thedefaultvalueislocaledependent.IntheClocale,andinMotif1.1,thedefaultvalueis"Help".
XmNlistItems
TheitemsintheSelectionBoxlist.AcalltoXtGetValues()returnstheactuallistitems(notacopy),sodon'thaveyourapplicationfreetheseitems.
XmNlistItemCount
ThenumberofitemsintheSelectionBoxlist.
XmNlistLabelString
ThestringthatlabelstheSelectionBoxlist.ThedefaultstringisNULLwhentheXmNdialogTyperesourceissettoXmDIALOG_PROMPTotherwise,inMotif
1.2andlater,thedefaultvalueislocaledependent.IntheClocale,andinMotif1.1,thedefaultvalueis"Items".
XmNlistVisibleItemCount
ThenumberofitemsthatappearintheSelectionBoxlist.Thedefaultvaluedependsontheheightofthelist.Thisresourcehasavalueof0whenthe
XmNdialogTyperesourceissettoXmDIALOG_PROMPT,andotherwisehasadefaultof8.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page948

XmNminimizeButtons
IfFalse(default),allbuttonsarestandardizedtobeaswideasthewidestandashighasthehighestbutton.IfTrue,buttonskeeptheirpreferredsize.
XmNmustMatch
IfTrue,theselectionthatausertypesinthetexteditfieldmustmatchanexistingentryintheSelectionBoxlist.IfFalse(default),thetypedselectiondoesn'tneed
tomatchalistentry.(WhentheuseractivatestheOkbutton,thewidgetcallsoneoftwolistsofcallbacks:ifthisresourceisTruebuttheselectionsdon'tmatch,then
theSelectionBoxwidgetcallsthecallbacksspecifiedbytheXmNnoMatchCallbackresourceifthisresourceisFalseoriftheselectionsdomatch,thenthe
widgetcallsthecallbacksspecifiedbytheXmNokCallbackresource.)
XmNokLabelString
ThelabelfortheOkbutton.InMotif1.2andlater,thedefaultvalueislocaledependent.IntheClocaleandMotif1.1,thedefaultvalueis"OK".
XmNselectionLabelString
Thelabelforthetexteditfield.InMotif1.2andlater,thedefaultvalueislocaledependent.IntheClocaleandMotif1.1,thedefaultvalueis"Selection".
XmNtextAccelerators
ThetranslationstoaddtotheSelectionBox'sTextwidgetchild.Thedefaultbindingsallowtheupanddownkeystobeusedinselectinglistitems.Thisresourceis
meaningfulonlywhentheSelectionBoxwidgetisusingthedefaultvaluesintheXmNacceleratorsresource.
XmNtextColumns
ThenumberofcolumnsintheTextwidget.
XmNtextString
Thetextstringthatappearsinthetexteditselectionfield.
CallbackResources
SelectionBoxdefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNapplyCallback

XmCR_APPLY

XmNcancelCallback

XmCR_CANCEL

XmNnoMatchCallback

XmCR_NO_MATCH

XmNokCallback

XmCR_OK

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page949

XmNapplyCallback
ListofcallbacksthatarecalledwhentheApplybuttonisactivated.
XmNcancelCallback
ListofcallbacksthatarecalledwhentheCancelbuttonisactivated.
XmNnoMatchCallback
Listofcallbacksthatarecalledwhentheusertypesaselectioninthetextareathatdoesnotmatchaniteminthelist.
XmNokCallback
ListofcallbacksthatarecalledwhentheOKbuttonisactivated.IfXmNmustMatchisTrueandtheselectiontextdoesnotmatchaniteminthelist,the
XmNnoMatchCallbackcallbacksarecalledinstead.
CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
XmStringvalue/*selectionstringthatwaseitherchosen*/
/*fromtheSelectionBoxlistortypedin*/
intlength/*numberofbytesofvalue*/
}XmSelectionBoxCallbackStruct

InheritedResources
SelectionBoxinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Thedefaultvalueof
XmNborderWidthisresetto0byXmManager.BulletinBoardsetsthevaluesofXmNinitialFocustothetextentryarea,XmNdefaultButtontothe
Cancelbutton,andresetsthedefaultXmNshadowThicknessfrom0to1iftheSelectionBoxisachildofaDialogShell.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNlabelFontList

XmBulletinBoard

XmNallowOverlap

XmBulletinBoard

XmNlabelRenderTable

XmBulletinBoard

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNautoUnmanage

XmBulletinBoard

XmNmapCallback

XmBulletinBoard

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNmarginHeight

XmBulletinBoard

XmNborderColor

Core

XmNmarginWidth

XmBulletinBoard

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page950

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resources

InheritedFrom

Resource

InheritedFrom

XmNborderPixmap

Core

XmNavigationType

XmManager

XmNborderWidth

Core

XmNnoResize

XmBulletinBoard

XmNbottomShadowColor

XmManager

XmNnumChildren

Composite

XmNbottomShadowPixmap

XmManager

XmNpopupHandler
Callback

XmManager

XmNbuttonFontList

XmBulletinBoard

XmNresizePolicy

XmBulletinBoard

XmNbuttonRenderTable

XmBulletinBoard

XmNscreen

Core

XmNcancelButton

XmBulletinBoard

XmNsensitive

Core

XmNchildren

Composite

XmNshadowThickness

XmManager

XmNcolormap

Core

XmNshadowType

XmBulletinBoard

XmNdefaultButton

XmBulletinBoard

XmNstringDirection

XmManager

XmNdefaultPosition

XmBulletinBoard

XmNtextFontList

XmBulletinBoard

XmNdepth

Core

XmNtextRenderTable

XmBulletinBoard

XmNdestroyCallback

Core

XmNtextTranslations

XmBulletinBoard

XmNdialogStyle

XmBulletinBoard

XmNtopShadowColor

XmManager

XmNdialogTitle

XmBulletinBoard

XmNtopShadowPixmap

XmManager

XmNfocusCallback

XmBulletinBoard

XmNtranslations

Core

XmNforeground

XmManager

XmNtraversalOn

XmManager

XmNheight

Core

XmNunitType

XmManager

XmNhelpCallback

XmManager

XmNunmapCallback

XmBulletinBoard

XmNhighlightColor

XmManager

XmNuserData

XmManager

XmNhighlightPixmap

XmManager

XmNwidth

Core

XmNinitialFocus

XmManager

XmNx

Core

XmNinitialResources
Persistent

Core

XmNy

Core

XmNinsertPosition

Composite

Translations
ThetranslationsforSelectionBoxareinheritedfromBulletinBoard.
ActionRoutines
SelectionBoxdefinesthefollowingactionroutines:
SelectionBoxUpOrDown(flag):
Thisactionapplieswhenthelocationcursoriswithintheitemlist.Thisactionselectsalistitemfromoneoffourpossiblepositionsandusesthisitemtoreplacethe
selectiontext.Aflagvalueof0,1,2,or3selectsthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page951

previous,next,first,orlastitem,respectively.ThesefouractionroutinesarerespectivelyboundtoKUp,KDown,KBeginData,andKEndData,which
representfourofthedefaultacceleratorsintheXmNtextAcceleratorsresource.
SelectionBoxRestore()
LikeSelectionBoxUpOrDownexceptthatthisactionreplacestheselectiontextwiththecurrentlistitem.Thisactionclearstheselectiontextifnolistitemis
currentlyselected.ThisactionroutineisboundtoKRestore,adefaultacceleratorforXmNtextAccelerators.
AdditionalBehavior
SelectionBoxhasthefollowingadditionalbehavior:
MAnyKCancel
ForasensitiveCancelbutton,invokestheXmNactivateCallbackcallbacks.
KActivate
Forthebuttonthathaskeyboardfocus(orelsethedefaultbutton),invokesthecallbacksinXmNactivateCallback.InaListorTextwidget,thiseventcalls
theassociatedListorTextactionbeforetheassociatedSelectionBoxaction.
<OkButtonActivated>
InvokestheXmNokCallbackcallbackortheXmNnoMatchCallbackifXmNmustMatchisTrueandthetextdoesnotmatchaniteminthelist.
<ApplyButtonActivated>
InvokestheXmNapplyCallbackcallbacks.
<CancelButtonActivated>
InvokestheXmNcancelCallbackcallbacks.
<HelpButtonActivated>
InvokestheXmNhelpCallbackcallbacks.
<MapWindow>
InvokesthecallbacksforXmNmapCallbackiftheparentisaDialogShell.
<UnmapWindow>
InvokesthecallbacksforXmNunmapCallbackiftheparentisaDialogShell.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page952

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmCreateObject(1),XmSelectionBoxGetChild(1),Composite(2),Constraint(2),Core(2),XmBulletinBoard
(2),XmManager(2),XmPromptDialog(2),XmSelectionDialog(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page953

XmSelectionDialog
MotifandXtWidgetClasses
Name
XmSelectionDialoganunmanagedSelectionBoxasachildofaDialogShell.
Synopsis
PublicHeader:

<Xm/SelectioB.h>
widget=XmCreateSelectionDialog(...)

Instantiation:
Functions/Macros: XmCreateSelectionBox(),
XmCreateSelectionDialog(),
XmSelectionBoxGetChild()

Description
ASelectionDialogisacompoundobjectcreatedbyacalltoXmCreateSelectionDialog()thatanapplicationcanusetoallowausertomakeaselection
fromadialogbox.ASelectionDialogconsistsofaDialogShellwithanunmanagedSelectionBoxwidgetasitschild.TheSelectionBoxresourceXmNdialogType
issettoXmDIALOG_SELECTION.
ASelectionDialogdisplaysascrollablelistofalternativesfromwhichtheusercanchooseitems.ASelectionDialogalsocontainsatextfieldinwhichtheusercanedit
aselection,labelsforthetextfieldandforthescrollablelist,andfourbuttons.InMotif1.2andlater,thedefaultbuttonlabelscanbelocalized.IntheClocale,andin
Motif1.1,thePushButtonsarelabeledOK,Apply,Cancel,andHelpbydefault.
DefaultResourceValues
ASelectionDialogsetsthefollowingdefaultvaluesforSelectionBoxresources:
Name

Default

XmNdialogType

XmDIALOG_SELECTION

WidgetHierarchy
WhenaSelectionDialogiscreatedwithaspecifiedname,theDialogShellisnamedname_popupandtheSelectionBoxiscalledname.
SeeAlso
XmCreateObject(1),XmSelectionBoxGetChild(1),XmDialogShell(2),XmSelectionBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page954

XmSeparator
MotifandXtWidgetClasses
Name
XmSeparatorwidgetclassawidgetthatdrawsalinetoseparateotherwidgetsvisually.
Synopsis
PublicHeader:

<Xm/Separator.h>

ClassName:

XmSeparator

ClassHierarchy:

Core

ClassPointer:

XmPrimitive XmSeparator

xmSeparatorWidgetClass
widget=XtCreateWidget(name,xmSeparatorWidgetClass,...)

Instantiation:
Functions/Macros:

XmCreateSeparator(),XmIsSeparator()

Description
ASeparatorisawidgetthatdrawsahorizontalorverticallinebetweencomponentsinanapplication.SeverallinestylesareavailablefortheSeparator.Apixmap
separatorcanalsobemadebyspecifyingapixmapfortheCoreresourceXmNbackgroundPixmapandthensettingXmNseparatorTypeto
XmNO_LINE.
Traits
SeparatorholdstheXmQTmenuSavvytrait,whichisinheritedbyanyderivedclasses.
NewResources
Separatordefinesthefollowingresources,allwithCSGaccess:
Name

Class

Type

Default

XmNmargin

XmCMargin

Dimension

XmNorientation

XmCOrientation

unsignedchar

XmHORIZONTAL

XmNseparatorType

XmCSeparatorType

unsignedchar

XmSHADOW_ETCHED_IN

XmNmargin
ThespacingoneitherendoftheSeparator.ThiswouldbetheleftandrightmarginsforahorizontallydrawnSeparatorandthetopandbottommarginsforavertically
drawnSeparator.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page955

XmNorientation
ThedirectioninwhichtodisplaytheSeparator.Possiblevaluesare:
XmVERTICAL/*toptobottomcreation*/
XmHORIZONTAL/*lefttorightcreation*/

XmNseparatorType
ThelinestyleinwhichtodrawtheSeparator.Possiblevaluesare:
XmNO_LINE
XmSINGLE_LINE
XmDOUBLE_LINE

XmSINGLE_DASHED_LINE

XmSHADOW_ETCHED_IN

XmDOUBLE_DASHED_LINE

XmSHADOW_ETCHED_OUT

InheritedResources
Separatorinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Separatorsetsthedefaultvaluesof
XmNhighlightThicknessto0XmNtraversalOntoFalse.ThedefaultvalueofXmNborderWidthisresetto0byPrimitive.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNhighlightThickness

XmPrimitive

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNlayoutDirection

XmPrimitive

XmNbackgroundPixmap

Core

XmNmappedWhenManaged

Core

XmNborderColor

Core

XmNnavigationType

XmPrimitive

XmNborderPixmap

Core

XmNpopupHandler
Callback

XmPrimitive

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmPrimitive

XmNsensitive

Core

XmNbottomShadowPixmap

XmPrimitive

XmNshadowThickness

XmPrimitive

XmNcolormap

Core

XmNtopShadowColor

XmPrimitive

XmNconvertCallback

XmPrimitive

XmNtopShadowPixmap

XmPrimitive

XmNdepth

Core

XmNtranslations

Core

XmNdestroyCallback

Core

XmNtraversalOn

XmPrimitive

XmNforeground

XmPrimitive

XmNunitType

XmPrimitive

XmNheight

Core

XmNuserData

XmPrimitive

XmNhelpCallback

XmPrimitive

XmNwidth

Core

XmNhighlightColor

XmPrimitive

XmNx

Core

XmNhighlightOnEnter

XmPrimitive

XmNy

Core

XmNhighlightPixmap

XmPrimitive

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page956

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

SeeAlso
XmCreateObject(1),Core(2),XmPrimitive(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page957

XmSeparatorGadget
MotifandXtWidgetClasses
Name
XmSeparatorGadgetwidgetclassagadgetthatdrawsalinetoseparateotherwidgetsvisually.
Synopsis
PublicHeader:

<Xm/SeparatoG.h>

ClassName:

XmSeparatorGadget

ClassHierarchy:

Object

ClassPointer:

RectObj XmGadget

XmSeparatorGadget

xmSeparatorGadgetClass
widget=XtCreateWidget(name,xmSeparatorGadgetClass,...)

Instantiation:
Functions/Macros:

XmCreateSeparatorGadget(),XmIsSeparatorGadget()

Description
SeparatorGadgetisthegadgetvariantofSeparator.SeparatorGadget'snewresourcesarethesameasthoseforSeparator.
Traits
SeparatorGadgetholdstheXmQTcareParentVisual,XmQTaccessColors,andXmQTmenuSavvytraits,whichareinheritedbyanyderivedclass.
InheritedResources
SeparatorGadgetinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.SeparatorGadgetsetsthedefault
valuesofXmNhighlightThicknessto0andXmNtraversalOntoFalse.ThedefaultvalueofXmNborderWidthisresetto0byGadget.
Resource

InheritedFrom

Resource

InheritedFrom

XmNancestorSensitive

RectObj

XmNhighlightThickness

XmGadget

XmNbackground

XmGadget

XmNlayoutDirection

XmGadget

XmNbackgroundPixmap

XmGadget

XmNnavigationType

XmGadget

XmNbottomShadowColor

XmGadget

XmNsensitive

RectObj

XmNbottomShadowPixmap

XmGadget

XmNshadowThickness

XmGadget

XmNborderWidth

RectObj

XmNtopShadowColor

XmGadget

XmNdestroyCallback

Object

XmNtopShadowPixmap

XmGadget

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page958

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNforeground

XmGadget

XmNtraversalOn

XmGadget

XmNheight

RectObj

XmNunitType

XmGadget

XmNhelpCallback

XmGadget

XmNuserData

XmGadget

XmNhighlightColor

XmGadget

XmNwidth

RectObj

XmNhighlightOnEnter

XmGadget

XmNx

RectObj

XmNhighlightPixmap

XmGadget

XmNy

RectObj

SeeAlso
XmCreateObject(1),Object(2),RectObj(2),XmGadget(2),XmSeparator(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page959

XmSimpleSpinBox
MotifandXtWidgetClasses
Name
XmSimpleSpinBoxwidgetclassawidgetforcyclingthroughasetofchoices.
Synopsis
PublicHeader:

<Xm/SSpinB.h>

ClassName:

XmSimpleSpinBox

ClassHierarchy:

Core Composite
XmSimpleSpinBox

ClassPointer:

xmSimpleSpinBoxWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmSimpleSpinBoxWidgetClass,...)

Functions/Macros:

Constraint

XmManager XmSpinBox

XmSimpleSpinBoxAddItem(),XmSimpleSpinBoxDeletePos
(),XmSimpleSpinBoxSetItem(),XmCreateSimpleSpinBox
()

Availability
Motif2.1andlater.
Description
AsubclassofSpinBoxthatallowstheusertoincrementordecrementthevalueinaTextFieldorcyclethroughasetofvalues.TheTextFieldiscreatedinternallyby
thewidget.TheSimpleSpinBoxcannotbesubclassed.
NewResources
SimpleSpinBoxdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNarrowSensitivity

XmCArrowSensitivity

unsignedchar

XmARROWS_
SENSITIVE

CSG

XmNcolumns

XmCColumns

short

20

CSG

XmNdecimalPoints

XmCDecimalPoints

short

CSG

XmNeditable

XmCEditable

Boolean

True

CSG

XmNincrementValue

XmCIncrementValue

int

CSG

XmNmaximumValue

XmCMaximumValue

int

10

CSG

XmNminimumValue

XmCMinimumValue

int

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page960

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNnumValues

XmCNumValues

int

CSG

XmNposition

XmCPosition

int

CSG

XmNpositionType

XmCPositionType

unsignedchar

XmPOSITION_
VALUE

CG

XmNspinBoxChildType

XmCSpinBoxChildType

unsignedchar

XmSTRING

CSG

XmNtextField

XmCTextField

Widget

dynamic

XmNvalues

XmCValues

XmStringTable

NULL

CSG

XmNwrap

XmCWrap

Boolean

True

CSG

XmNarrowSensitivity
SpecifiesthesensitivityofthearrowswithintheSimpleSpinBox.Possiblevaluesare:
XmARROWS_SENSITIVE/*botharrowssensitive*/
XmARROWS_DECREMENT_SENSITIVE/*incrementarrowbuttoninsensitive*/
XmARROWS_INCREMENT_SENSITIVE/*decrementarrowbuttoninsensitive*/
XmARROWS_INSENSITIVE/*botharrowsinsensitive*/

XmNcolumns
SpecifiesthenumberofcolumnsintheTextField.
XmNdecimalPoints
ApositiveintegerthatdetermineshowtheTextField'svaluewillbedisplayed.ThedecimalpointintheTextField'svaluegetsshiftedtotheright,andthisresource
specifiesthenumberofdecimalplacestoshift.Forexample,iftheTextField'svalueis5678,thensettingtheXmdecimalPointsresourceto2causesthewidget
todisplaythevalueas56.78.TheresourcehasnoeffectifXmNspinBoxChildTypeisnotXmNUMERIC.
XmNeditable
SpecifieswhethertheTextFieldacceptsuserinput.
XmNincrementValue
SpecifiestheamounttoincrementtheXmNpositionresource.TheresourcehasnoeffectifXmNspinBoxChildTypeisnotXmNUMERIC.
XmNmaximumValue
XmNminimumValue
Specifiesthelargest/smallestvalue.TheseresourceshavenoeffectifXmNspinBoxChildTypeisnotXmNUMERIC.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page961

XmNnumValues
SpecifiesthenumberofitemsinthelistdeterminedbytheXmNvaluesresource.TheresourcehasnoeffectifXmNspinBoxChildTypeisnotXmSTRING.
XmNposition
DependsuponthevalueoftheXmNpositionTypeandXmNspinBoxChildTyperesources,andisusedtocalculatethecurrentvalueofthe
SimpleSpinBox.IfXmNspinBoxChildTypeisXmSTRING,thepositionresourceisusedsimplyasanindexintotheXmNvaluesarray.If
XmNspinBoxChildTypeisXmNUMERICandXmNpositionTypeisXmPOSITION_VALUE,thepositionresourceisuseddirectlyfortheactualvalue
todisplay.ThepositionvalueisboundedbyXmNminimumValueandXmNmaximumValue.WhenXmNpositionTypeisXmPOSITION_INDEX,
thepositionisinterpretedasanindexintoasetofvalues,boundedbytheXmNminimumValueandXmNmaximumValueresource.Anumberisintheset
dependingupontheXmNincrementValueresource:positionzerocorrespondstothevalueXmNminimumValuepositionnisthevaluegivenby:
XmNminimumValue+(n*XmNincrementValue)
XmNpositionType
SpecifieshowtheXmNpositionresourceistobeinterpreted.Possiblevaluesare:
XmPOSITION_INDEX/*positionisanindexintoanarray*/
XmPOSITION_VALUE/*positionisadirectvalue*/

XmNspinBoxChildType
Specifiesthetypeofdatatobedisplayed.Possiblevaluesare:
XmNUMERIC/*valueisdefinedbymaximum,minimum,incrementresources*/
XmSTRING/*valueisdefinedbythevaluesarray*/

XmNtextField
SpecifiesthetextfieldcreatedbytheSimpleSpinBoxtodisplaythecurrentvalue.
XmNvalues
SpecifiesthearrayofcompoundstringsformingthevalidsetofitemsfortheSimpleSpinBox.TheresourceonlyhaseffectifXmNspinBoxChildTypeis
XmSTRING.
XmNwrap
SpecifieswhethertheSpinBoxwrapsaroundthesetofvalues.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page962

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

InheritedResources
SimpleSpinBoxinheritstheresourcesshownbelow.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.SimpleSpinBoxresetsthe
defaultvalueofXmNshadowThicknessto1.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinsertPosition

Composite

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNarrowLayout

XmSpinBox

XmNmappedWhenManaged

Core

XmNarrowOrientation

XmSpinBox

XmNmarginHeight

XmSpinBox

XmNarrowSize

XmSpinBox

XmNmarginWidth

XmSpinBox

XmNbackground

Core

XmNmodifyVerifyCallback

XmSpinBox

XmNbackgroundPixmap

Core

XmNnavigationType

XmManager

XmNborderColor

Core

XmNnumChildren

Composite

XmNborderPixmap

Core

XmNpopupHandler
Callback

XmManager

XmNborderWidth

Core

XmNrepeatDelay

XmSpinBox

XmNbottomShadowColor

XmManager

XmNscreen

Core

XmNbottomShadowPixmap

XmManager

XmNsensitive

Core

XmNchildren

Composite

XmNshadowThickness

XmManager

XmNcolormap

Core

XmNspacing

XmSpinBox

XmNdefaultArrow
Sensitivity

XmSpinBox

XmNstringDirection

XmManager

XmNdepth

Core

XmNtopShadowColor

XmManager

XmNdestroyCallback

Core

XmNtopShadowPixmap

XmManager

XmNdetailShadowThickness

XmSpinBox

XmNtranslations

Core

XmNforeground

XmManager

XmNtraversalOn

XmManager

XmNheight

Core

XmNunitType

XmManager

XmNhelpCallback

XmManager

XmNuserData

XmManager

XmNhighlightColor

XmManager

XmNvalueChangedCallback

XmSpinBox

XmNhighlightPixmap

XmManager

XmNwidth

Core

XmNinitialDelay

XmSpinBox

XmNx

Core

XmNinitialFocus

XmManager

XmNy

Core

XmNinitialResources
Persistent

Core

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page963

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

WidgetHierarchy
WhenaSimpleSpinBoxiscreatedwithaspecifiedname,theautomaticallycreatedTextFieldchildisnamedname_TF.
Translations
ThetranslationsforSimpleSpinBoxarethoseofSpinBox.
SeeAlso
XmSimpleSpinBoxAddItem(1),XmSimpleSpinBoxDeletePos(1),XmSimpleSpinBoxSetItem(1),
XmCreateSimpleSpinBox(1),Composite(2),Constraint(2),Core(2),XmManager(2),XmSpinBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page964

XmSpinBox
MotifandXtWidgetClasses
Name
XmSpinBoxwidgetclassacompositewidgetthatcontrolscyclingthroughasetofchoices.
Synopsis
PublicHeader:

<Xm/SpinB.h>

ClassName:

XmSpinBox

ClassHierarchy:

Core Composite

ClassPointer:

Constraint

XmManager XmSpinBox

xmSpinBoxWidgetClass
widget=XtCreateWidget(name,xmSpinBoxWidgetClass,...)

Instantiation:
Functions/Macros:

XmSpinBoxValidatePosition(),XmCreateSpinBox()

Availability
Motif2.0andlater.
Description
SpinBoxisamanagerthatallowstheusertocyclethroughsetsofchoices.Attheminimum,thewidgetcontainsasingleTextorTextField,whichisassociatedwitha
groupofvalues.ApairofArrowButtonsareprovidedthat,whenpressed,insertthenextorpreviousgroupitemintotheText.SpinBoxcancontrolmultiple
traversablechildren,eachpossessingtheirownsetofvalues.TheArrowButtonscyclethevaluesofthechildwiththecurrentfocus.
ThevaluesassociatedwithanytextualchildoftheSpinBoxarespecifiedthroughconstraintresources.Logically,atextualchildisconsideredtobeeithernumericor
stringbased,asspecifiedbytheXmNspinBoxChildTyperesource.IfXmNUMERIC,asetofconstraintscontrolthecurrentvalueandplaceanupperand
lowerboundupontherangethroughwhichthevaluemayrotate.IfXmSTRING,anarrayofcompoundstringsisspecifiedforthechild,andtheArrowButtonscycle
throughthesetofvaluesbyincrementingordecrementinganindexintothearray.
ThelocationoftheArrowButtonsrelativetothetextualchildreniscontrolledthroughtheXmNarrowLayoutresource,althoughthisisaffectedbyanyspecified
XmNlayoutDirection.ThearrowsautomaticallycreatedbytheSpinBoxaredrawntheyarenotrealwidgets.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page965

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Traits
SpinBoxholdstheXmQTnavigatortrait,whichisinheritedbyanyderivedclasses,andusestheXmQTaccessTextualtrait.
NewResources
SpinBoxdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNarrowLayout

XmCArrowLayout

unsigned
char

XmARROWS_END

CSG

XmNarrow
Orientation

XmCArrowOrientation unsigned
char

XmARROWS_
VERTICAL

CSG

XmNarrowSize

XmCArrowSize

Dimension

16

CSG

XmNdefaultArrow
Sensitivity

XmCDefaultArrow
Sensitivity

unsigned
char

XmARROWS_
SENSITIVE

CSG

XmNdetailShadow
Thickness

XmCDetailShadow
Thickness

Dimension

dynamic

CSG

XmNinitialDelay

XmCInitialDelay

unsigned
int

250

CSG

XmNmarginWidth

XmCMarginWidth

Dimension

CSG

XmNmarginHeight

XmCMarginHeight

Dimension

CSG

XmNrepeatDelay

XmCRepeatDelay

unsigned
int

200

CSG

XmNspacing

XmCSpacing

Dimension

CSG

XmNarrowLayout
Specifiesthelocationofthedrawnarrowsrelativetothetextualchildren.Possiblevaluesare:
XmARROWS_BEGINNING/*botharrowsplacedverticallybeforetext*/
XmARROWS_END/*botharrowsplacedverticallyaftertext*/
XmARROWS_FLAT_BEGINNING/*botharrowsplacedhorizontallybeforetext*/
XmARROWS_FLAT_END/*botharrowsplacedhorizontallyaftertext*/
XmARROWS_SPLIT/*onearrowplacedateachend*/

TheinterpretationofbeginningandenddependsupontheXmNlayoutDirectionresourceinheritedfromXmManager.Thisalsoaffectswhetheritisthe
incrementordecrementarrowwhichistotheleftorright.IfthelayoutdirectionisXmLEFT_TO_RIGHT,thedecrementarrowistotheleft,andboth
XmARROWS_BEGINNINGandXmARROWS_FLAT_BEGINNINGplacearrowsontheleftofthetext.IfthedirectionisXmRIGHT_TO_LEFT,the

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page966

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

incrementarrowistotheleft,andbothXmARROWS_ENDandXmARROWS_FLAT_ENDplacearrowsontheleftofthetext.
XmNarrowOrientation
InMotif2.1,specifieswhetherarrowspointverticallyorhorizontally.IftheorientationisXmARROWS_VERTICAL,thedecrementarrowpointsdownwards,and
theincrementarrowpointsupwards.IforientationisXmARROWS_HORIZONTAL,thedecrementarrowpointstotheleft,andtheincrementarrowpointstothe
right.ThisisreversediftheXmNlayoutDirectionisXmRIGHT_TO_LEFT.
NotethatthisisnotthesameastheXmNarrowLayoutresource,whichpositionsthecomponentsoftheSpinBoxrelativetoeachother,whereas
XmNarrowOrientationrotatesanarrowwithinitsgivenposition.
XmNarrowSize
Specifiesthewidth(andheight)ofthedrawnarrows,measuredinpixels.
XmNdefaultArrowSensitivity
Specifiesthedefaultsensitivityofthedrawnarrowstouserinput.TheresourceisoverriddenbytheXmNarrowSensitivityconstraintresourceofthetextual
childwhichhasthefocus.Possiblevaluesare:
XmARROWS_DECREMENT_SENSITIVE/*onlythedecrementarrowacceptsinput*/
XmARROWS_INCREMENT_SENSITIVE/*onlytheincrementarrowacceptsinput*/
XmARROWS_INSENSITIVE/*botharrowsareinsensitive*/
XmARROWS_SENSITIVE/*botharrowsaresensitive*/

XmNdetailShadowThickness
Specifiesthethicknessoftheshadowusedfordrawingthearrowshapes.Valuesof0,1,or2areimplemented.InMotif2.0,thedefaultvalueis2.InMotif2.1,the
defaultvaluedependsupontheXmDisplayXmNenableThinThicknessresource:ifTruethedefaultis1otherwise,itis2.
XmNinitialDelay
Specifiesthetimeintervalinmilliseconds(afterpressingthemouse)thatistoelapsebeforetheSpinBoxtriggersautomaticspinning.Ifthevalueiszero,thevalue
defaultstothatspecifiedbytheXmNrepeatDelayresource.
XmNmarginWidth
SpecifiesthespacebetweentheleftedgeoftheSpinBoxandtheleftmostchild,andthespacebetweentherightedgeoftheSpinBoxandtherightmostchild.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page967

XmNmarginHeight
SpecifiesthespacebetweenthetopedgeoftheSpinBoxandthetopmostchild,andthespacebetweenthebottomedgeoftheSpinBoxandthebottomchild.
XmNrepeatDelay
Specifiesthetimeintervalinmilliseconds(whenholdingdownthemouse)whichistoelapsebeforetheSpinBoxtriggersautomaticspinning:withthemouseheld
down,theSpinBoxrepeatedlyspinsuntilsuchtimeasthemouseisreleased.Ifthevalueiszero,automaticspinningisdisabled.
XmNspacing
SpecifiesthehorizontalandverticalspacingbetweenitemsintheSpinBox.
NewConstraintResources
SpinBoxdefinesthefollowingconstraintresourcesforitschildren:
Name

Class

Type

Default

Access

XmNarrowSensitivity

XmCArrowSensitivity

unsignedchar

XmARROWS_
DEFAULT_
SENSITIVITY

CSG

XmNdecimalPoints

XmCDecimalPoints

short

CSG

XmNincrementValue

XmCIncrementValue

int

CSG

XmNmaximumValue

XmCMaximumValue

int

10

CSG

XmNminimumValue

XmCMinimumValue

int

CSG

XmNnumValues

XmCNumValues

int

CSG

XmNposition

XmCPosition

int

CSG

XmNpositionType

XmCPositionType

unsignedchar

XmPOSITION_
VALUE

CSG

XmNspinBoxChildType

XmCSpinBoxChildType

unsignedchar

XmSTRING

CSG

XmNvalues

XmCValues

XmString
Table

NULL

CSG

XmNwrap

XmCWrap

Boolean

True

CSG

XmNarrowSensitivity
Specifiesthesensitivityofthearrowbuttons.Possiblevaluesare:
XmARROWS_DEFAULT_SENSITIVITY/*inheritXmNdefaultArrowSensitivity*/
XmARROWS_DECREMENT_SENSITIVE/*onlydecrementarrowacceptsinput*/
XmARROWS_INCREMENT_SENSITIVE/*onlyincrementarrowacceptsinput*/
XmARROWS_INSENSITIVE/*botharrowsareinsensitive*/
XmARROWS_SENSITIVE/*botharrowsaresensitive*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page968

XmNdecimalPoints
Specifiesthenumberofdecimalplacesusedwhendisplayingnumericvalues.Thevalueiszeropaddedwherenecessary.
XmNincrementValue
SpecifiestheamounttoincrementordecrementthenumericvalueintheSpinBoxtextwhentheincrementordecrementarrowispressed.Theresourceisonlyused
whentheSpinBoxtypeisXmNUMERIC.
XmNmaximumValue
XmNminimumValue
Specifiesthegreatest/smallestvalueallowedinanXmNUMERICSpinBox.
XmNnumValues
SpecifiesthenumberofvaluesintheXmNvaluesarray.TheresourceisonlyusedwhentheSpinBoxtypeisXmSTRING.
XmNposition
TheinterpretationofthisresourcedependsuponthevalueoftheXmNpositionTypeandXmNspinBoxChildTyperesources.When
XmNpositionTypeisXmPOSITION_INDEX,thepositionisinterpretedasanindexintoanarrayofvalues.IfXmNspinBoxChildTypeis
XmSTRING,thesearedefinedbytheXmNvaluesresource.IfthechildtypeisXmNUMERIC,thearrayofvaluesisasetofnumbersboundedbythe
XmNminimumValueandXmNmaximumValueresource.AnumberisinthesetdependingupontheXmNincrementValueresource:positionzero
correspondstothevalueXmNminimumValuepositionnisthevaluegivenbyXmNminimumValue+(n*XmNincrementValue).
WhentheXmNpositionTypeisXmPOSITION_VALUEandtheXmNspinBoxChildTypeisXmNUMERIC,thepositionistheactualvalueto
display,andisboundedbyXmNminimumValueandXmNmaximumValue.IfXmNspinBoxChildTypeisXmSTRING,positionremainsanindex
intotheXmNvaluesresourcearray.
XmNpositionType
SpecifieshowtheXmNpositionresourceistobeinterpreted.Possiblevaluesare:
XmPOSITION_INDEX/*positionisanindexintoanarray*/
XmPOSITION_VALUE/*positionisadirectvalue*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page969

XmNspinBoxChildType
Specifiesthetypeofdatatobedisplayed.Possiblevaluesare:
XmNUMERIC/*choicesdefinedbymaximum,minimum,incrementvalues*/
XmSTRING/*choicesdefinedbythevaluesarray*/

XmNvalues
SpecifiesthearrayofcompoundstringsformingthesetofitemsfortheSimpleSpinBox.TheresourceonlyhaseffectifXmNspinBoxChildTypeis
XmSTRING.
XmNwrap
SpecifieswhethertheSpinBoxwrapsaroundthesetofvalues.Ifthecurrentpositionisatthemaximumvalue,theincrementarrowispressed,andXmNwrapis
True,therequestedpositionbecomestheminimumvalue.Similarlyifthecurrentpositionisattheminimum,andthedecrementarrowispressedwithwrapenabled,
therequestedpositionisatthemaximum.IfwrapisFalseinthegivencircumstances,thebellisrungandtheselectionisunchanged.
CallbackResources
SpinBoxdefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNmodifyVerifyCallback

XmCR_SPIN_FIRST

XmCR_SPIN_LAST

XmCR_SPIN_NEXT

XmCR_SPIN_PRIOR

XmNvalueChangedCallback

XmCR_OK

XmCR_SPIN_FIRST

XmCR_SPIN_LAST

XmCR_SPIN_NEXT

XmCR_SPIN_PRIOR

XmNmodifyVerifyCallback
ListofcallbackscalledbeforetheSpinBoxpositionischanged.
XmNvalueChangedCallback
ListofcallbackscalledaftertheSpinBoxpositionischanged.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page970

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Widgetwidget/*thetextualchildaffectedbycallback*/
Booleandoit/*whethertoperformthechanges*/
intposition/*specifiestheindexofthenextvalue*/
XmStringvalue/*specifiesthenextvalue*/
Booleancrossed_boundary/*whethertheSpinBoxhaswrapped*/
}XmSpinBoxCallbackStruct

reasonindicateswhythecallbackisinvoked.IfreasonisXmCR_SPIN_FIRST,theSpinBoxpositioniseitherXmNminimum,ortheindexofthefirstitem
intheXmNvaluesarray,dependinguponwhethertheSpinBoxtypeisXmNUMERICorXmSTRING,respectively.IfreasonisXmCR_SPIN_LAST,the
positioniseitherXmNmaximum,ortheindexofthelastitemintheXmNvaluesarray.IfreasonisXmCR_SPIN_NEXT,theincrementarrowisarmed.If
reasonisXmCR_SPIN_PRIOR,thedecrementarrowisarmed.IfreasonisXmCR_OK,anarrowisdisarmed.
widgetistheIDofthetextualcomponentaffectedbythecallback.Thisisthetextthathasthecurrentfocus.
doitisaflagindicatingwhethertheactionistobeperformed.ThedefaultvalueisTrue,althoughaprogrammermaysetthevalueFalseforwhateverreasonto
preventtheitemassociatedwithpositionandvaluebeingdisplayedatthecurrentinstant.doitisonlyrelevanttoXmNmodifyVerifyCallback
callbacks.
positionisequivalenttotheXmNpositionresource,andspecifiesthenextpositiontodisplay.AnXmNmodifyVerifyCallbackproceduremay
alterthevalueinordertoforcetheSpinBoxtodisplayaparticularitem.
valuespecifiesthenewitemtobedisplayedinwidget.valueisatemporarycompoundstringwhichisfreedaftercallbackproceduresarefinished.The
programmershouldcopyvalueifthisisrequiredoutsideofthecallbackprocedures.
crossing_boundaryspecifieswhethertheSpinBoxhascrossedtheupperorlowerboundasspecifiedbyXmNminimumandXmNmaximum,orthefirst
andlastcompoundstringintheXmNvaluesarray.
InheritedResources
SpinBoxinheritstheresourcesshownbelow.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page971
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNinitialResources
Persistent

Core

XmNancestorSensitive

Core

XmNlayoutDirection

XmManager

XmNbackground

Core

XmNmappedWhenManaged

Core

XmNbackgroundPixmap

Core

XmNnavigationType

XmManager

XmNborderColor

Core

XmNnumChildren

Composite

XmNborderPixmap

Core

XmNpopupHandler
Callback

XmManager

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmManager

XmNsensitive

Core

XmNbottomShadowPixmap

XmManager

XmNshadowThickness

XmManager

XmNchildren

Composite

XmNstringDirection

XmManager

XmNcolormap

Core

XmNtopShadowColor

XmManager

XmNdepth

Core

XmNtopShadowPixmap

XmManager

XmNdestroyCallback

Core

XmNtranslations

Core

XmNforeground

XmManager

XmNtraversalOn

XmManager

XmNheight

Core

XmNunitType

XmManager

XmNhelpCallback

XmManager

XmNuserData

XmManager

XmNhighlightColor

XmManager

XmNwidth

Core

XmNhighlightPixmap

XmManager

XmNx

Core

XmNinitialFocus

XmManager

XmNy

Core

XmNinsertPosition

Composite

Translations
ThetranslationsforSpinBoxincludethoseofXmManager.
Event

Action

BSelectPress

SpinBArm()

BSelectRelease

SpinBDisarm()

<EnterWindow>

SpinBEnter()

<LeaveWindow>

SpinBLeave()

KUp

SpinBPrior()

KDown

SpinBNext()

KLeft

SpinBLeft()

KRight

SpinBRight()

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page972

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Event

Action

KBeginData

SpinBFirst()

KEndData

SpinBLast()

ActionRoutines
SpinBoxdefinesthefollowingactionroutines:
SpinBArm()
Drawsthearrowshapeunderthepointerinarmedform.IftheXmNinitialDelayresourceisspecified,atimerisinitializedtothevalueoftheinitialdelay
period.Ifthemouseisnotreleasedbeforethetimerexpires,theSpinBoxstartsautomaticallyselectingsuccessiveitemsintheSpinBox.
XmNmodifyVerifyCallbackproceduresarecalledwiththepositionelementadjustedtotheselectedvalue,dependinguponthetypeofarrow,and
subsequentlyXmNvalueChangedCallbackproceduresarecalledifthedoitelementoftheXmSpinBoxCallbackStructisstillTrueafterthe
modifyverifycallbacksarefinished.ThepositionelementofthestructureisusedtodeterminethevaluethatisinsertedintothetextualchildoftheSpinBoxthat
hasthefocus.
SpinBDisarm()
Drawsthearrowshapeindisarmedform.IfanyperiodspecifiedbytheXmNrepeatDelayorXmNinitialDelayperiodshavenotexpired,
XmNmodifyVerifyCallbackproceduresarecalledwiththepositionelementadjustedtotherequiredvalue,andsubsequently
XmNvalueChangedCallbackproceduresarecalledifthedoitelementoftheXmSpinBoxCallbackStructisstillTrue.Theitemasreflectedby
thefinalvalueofthepositionelementofthestructureisinsertedintothecurrenttraversabletext.
SpinBEnter()
IfthecontainingshellhasafocuspolicyofXmPOINTER,drawsthehighlightborderaroundthechildtraversabletextwidgetthathasthefocus.
SpinBFirst()
XmNmodifyVerifyCallbackproceduresareinvokedwiththepositionelementoftheXmSpinBoxCallbackStructsettozero.Thereafter,if
thedoitelementisstillTrue,anyXmNvalueChangedCallbackproceduresareinvoked.Theitemasreflectedbythefinalvalueoftheposition
elementofthestructureisinsertedintothecurrenttraversabletext.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page973

SpinBLast()
XmNmodifyVerifyCallbackproceduresareinvokedwiththepositionelementoftheXmSpinBoxCallbackStructsettothelastposition.
Thereafter,ifthedoitelementisstillTrue,anyXmNvalueChangedCallbackproceduresareinvoked.Theitemasreflectedbythefinalvalueofthe
positionelementofthestructureisinsertedintothecurrenttraversabletext.
SpinBLeave()
IfthecontainingshellhasafocuspolicyofXmPOINTER,erasesthehighlightborderaroundthechildtraversabletextwidgetthathasthefocus.
SpinBLeft()
IftheXmNlayoutDirectionisXmLEFT_TO_RIGHT,invokestheSpinBPrior()actionotherwise,itinvokesSpinBNext().
SpinBNext()
Drawstheincrementarrowinarmedform,andinvokesanyXmNmodifyVerifyCallbackprocedures,withthepositionelementofthe
XmSpinBoxCallbackStructsuitablyincremented,takingintoaccountpossiblewrapping.Thereafter,ifthedoitelementisstillTrue,any
XmNvalueChangedCallbackproceduresareinvoked.Theitemasreflectedbythefinalvalueofthepositionelementofthestructureisinsertedintothe
currenttraversabletext.
SpinBPrior()
Drawsthedecrementarrowinarmedform,andinvokesanyXmNmodifyVerifyCallbackprocedures,withthepositionelementofthe
XmSpinBoxCallbackStructsuitablydecremented,takingintoaccountpossiblewrapping.Thereafter,ifthedoitelementisstillTrue,any
XmNvalueChangedCallbackproceduresareinvoked.Theitemasreflectedbythefinalvalueofthepositionelementofthestructureisinsertedintothe
currenttraversabletext.
SpinBRight()
IftheXmNlayoutDirectionisXmLEFT_TO_RIGHT,invokestheSpinBNext()actionotherwise,itinvokesSpinBPrior().
SeeAlso
XmSpinBoxValidatePosition(1),XmCreateObject(1),Composite(2),Constraint(2),Core(2),XmManager
(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page974

XmTemplateDialog
MotifandXtWidgetClasses
Name
XmTemplateDialoganunmanagedMessageBoxasachildofDialogShell.
Synopsis
<Xm/MessageB.h>

PublicHeader:

widget=XmCreateTemplateDialog(...)
Instantiation:
Functions/Macros:

XmCreateTemplateDialog(),XmMessageBoxGetChild()

Description
ATemplateDialogisacompoundobjectcreatedbyacalltoXmCreateTemplateDialog()thatanapplicationcanusetopresentacustomizedmessageto
theuser.ATemplateDialogconsistsofaDialogShellwithanunmanagedMessageBoxwidgetasitschild.TheMessageBoxresourceXmNdialogTypeissetto
XmDIALOG_TEMPLATE.Bydefault,aTemplateDialogincludesonlyaseparator.Anapplicationcancreateacustomizeddialogbyaddingchildrentothe
TemplateDialog.TocreatethestandardcomponentsassociatedwithaMessageBoxanapplicationneedsonlyspecifythelabelstringandcallbackresourcesforthe
desiredbuttons,andtheTemplateDialogautomaticallycreatestherelevantbutton.SettingeithertheXmNmessageStringorXmNsymbolPixmapresource
createsamessageorasymbolLabel.
DefaultResourceValues
ATemplateDialogsetsthefollowingdefaultvaluesforMessageBoxresources:
Name

Default

XmNdialogType

XmDIALOG_TEMPLATE

WidgetHierarchy
WhenaTemplateDialogiscreatedwithaspecifiedname,theDialogShellisnamedname_popupandtheMessageBoxiscalledname.
SeeAlso
XmCreateObject(1),XmMessageBoxGetChild(1),XmDialogShell(2),XmMessageBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page975

XmText
MotifandXtWidgetClasses
Name
XmTextwidgetclasstexteditingwidget.
Synopsis
PublicHeader:

<Xm/Text.h>

ClassName:

XmText

ClassHierarchy:

Core

ClassPointer:

XmPrimitive XmText

xmTextWidgetClass
widget=XtCreateWidget(name,xmTextWidgetClass,...)

Instantiation:
Functions/Macros:

XmCreateScrolledText(),XmCreateText(),XmIsText(),XmText...routines

Description
ATextwidgetprovidesatexteditorthatallowstexttobeinserted,modified,deleted,andselected.Textprovidesbothsinglelineandmultilinetextediting
capabilities.
Traits
TextholdstheXmQTaccessTextualandXmQTtransfertraits,whichareinheritedinanyderivedclasses,andusestheXmQTaccessTextual,
XmQTspecifyRenderTable,XmQTnavigatorandXmQTscrollFrametraits.
NewResources
Textdefinesthefollowingresources:
Name

Class

Type

Default

Access

XmNautoShowCursor
Position

XmCAutoShowCursor
Position

Boolean

True

CSG

XmNcursorPosition

XmCCursorPosition

XmTextPosition

CSG

XmNeditable

XmCEditable

Boolean

True

CSG

XmNeditMode

XmCEditMode

int

Seebelow

CSG

XmNmarginHeight

XmCMarginHeight

Dimension

CSG

XmNmarginWidth

XmCMarginWidth

Dimension

CSG

XmNmaxLength

XmCMaxLength

int

largestinteger CSG

XmNsource

XmCSource

XmTextSource

defaultsource

CSG

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page976

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

Access

XmNtotalLines

XmCTotalLines

int

CG

XmNtopCharacter

XmCTextPosition

XmTextPosition

CSG

XmNvalue

XmCValue

String

""

CSG

XmNvalueWcs

XmCValueWcs

wchar_t*

(wchar_t*)""

CSG

XmNverifyBell

XmCVerifyBell

Boolean

dynamic

CSG

XmNautoShowCursorPosition
IfTrue(default),thevisibleportionoftheTextwidgetalwayscontainstheinsertcursor.TheTextwidgetscrollsitscontents,ifnecessary,toensurethatthecursor
remainsvisible.
XmNcursorPosition
Thelocationatwhichtoplacethecurrentinsertcursor.Valuesforthisresourcearerelativetothebeginningofthetextthefirstcharacterpositionisdefinedas0.
XmNeditable
IfTrue(default),theuserisallowedtoeditthetextstringifFalse,theuserisnotallowedtodoso.
XmNeditMode
Determineswhichgroupofkeyboardbindingstouse.Possiblevaluesare:
XmMULTI_LINE_EDIT/*keybindingsformultilineedits*/
XmSINGLE_LINE_EDIT/*keybindingsforsinglelineedits(default)*/

XmNmarginHeight
XmNmarginWidth
Thespacingbetweentheedgesofthewidgetandthetext.(Topandbottomedgesarespecifiedheightleftandrightarespecifiedbywidth.)
XmNmaxLength
Themaximumlengthofthetextstringthatausercanenterfromthekeyboard.ThisresourcedoesnotaffectstringsthatareenteredviatheXmNvalueresourceor
theXmTextSetString()routine.
XmNsource
AsourcethattheTextwidgetusesfordisplayingtext,therebyallowingTextwidgetstosharethesametextsource.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page977

XmNtotalLines
InMotif2.1,specifiesthenumberoflineswithintheTextwidgetbuffer.Thevaluetakesintoaccountwordwrapping.
XmNtopCharacter
Thelocationofthetexttodisplayatthetopofthewindow.Valuesforthisresourcearerelativetothebeginningofthetext,withthefirstcharacterpositiondefinedas
0.
XmNvalue
ThestringvaluetodisplayintheTextwidget,expressedasachar*.IfXmNvalueandXmNvalueWcsarebothdefined,XmNvalueWcstakes
precedence.UseXtSetValues()tocopystringvaluestotheinternalbufferanduseXtGetValues()toreturnthevalueoftheinternalbuffer.
XmNvalueWcs
InMotif1.2andlater,thestringvaluetodisplayintheTextwidget,expressedasawchar_t*.IfXmNvalueandXmNvalueWcsarebothdefined,
XmNvalueWcstakesprecedence.UseXtSetValues()tocopystringvaluestotheinternalbufferanduseXtGetValues()toreturnthevalueofthe
internalbuffer.Thisresourcecannotbesetinaresourcefile.
XmNverifyBell
IfTrue,abellsoundswhenaverificationproducesnoaction.ThedefaultvaluedependsupontheXmNaudibleWarningresourceofanyVendorShell
ancestor.
TextInputResources
Name

Class

Type

Default

Access

XmNpendingDelete

XmCPendingDelete

Boolean

True

CSG

XmNselectionArray

XmCSelectionArray

XtPointer

defaultarray CSG

XmNselectionArrayCount

XmCSelectionArrayCount

int

CSG

XmNselectThreshold

XmCSelectThreshold

int

CSG

XmNpendingDelete
IfTrue(default),theTextwidget'spendingdeletemodeison,meaningthatselectedtextisdeletedassoonasthenexttextinsertionoccurs.
XmNselectionArray
Thearrayofpossibleactionscausedbymultiplemouseclicks.UILdoesnotdefinethesevaluesfortheTextwidget.Possiblevaluesare:
XmSELECT_POSITION/*singleclickresetpositionofinsertcursor*/
XmSELECT_WORD/*doubleclickselectaword*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page978
XmSELECT_LINE/*tripleclickselectaline*/
XmSELECT_ALL/*quadrupleclickselectalltext*/

XmNselectionArrayCount
ThenumberofitemsinthearrayspecifiedbyXmNselectionArray.
XmNselectThreshold
Thenumberofpixelstheinsertioncursormustbedraggedduringselectioninordertoselectthenextcharacter.
TextOutputResources
Name

Class

Type

Default

Access

XmNblinkRate

XmCBlinkRate

int

500

CSG

XmNcolumns

XmCColumns

short

dynamic

CSG

XmNcursorPositionVisible

XmCCursorPositionVisible

Boolean

dynamic

CSG

XmNfontList

XmCFontList

XmFontList

dynamic

CSG

XmNrenderTable

XmCRenderTable

XmRenderTable

dynamic

CSG

XmNresizeHeight

XmCResizeHeight

Boolean

False

CSG

XmNresizeWidth

XmCResizeWidth

Boolean

False

CSG

XmNrows

XmCRows

short

dynamic

CSG

XmNwordWrap

XmCWordWrap

Boolean

False

CSG

XmNblinkRate
Thetimeinmillisecondsthatthecursorspendseitherbeingvisibleorinvisible.Avalueof0preventsthecursorfromblinking.
XmNcolumns
Thenumberofcharacterspacesthatshouldfithorizontallyinthetextwindow.TheXmNwidthresourcedeterminesthedefaultvalueofXmNcolumns,butifno
widthhasbeenset,thedefaultis20.SeealsoXmNrows.
XmNcursorPositionVisible
IfTrue,thetextcursorwillbevisible.InMotif2.1,ifthetextwidgethasanXmPrintShellasancestor,thedefaultisFalse.OtherwisethedefaultisTrue.
XmNfontList
Thefontlistusedforthewidget'stext.InMotif2.0andlater,XmFontListisobsoleteitissubsumedintoXmRenderTable.Ifbotharendertableandfontlist
arespecified,therendertabletakesprecedence.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page979

XmNrenderTable
InMotif2.0andlater,specifiestherendertablefortheText.Ifunspecified,thevalueoftheresourceisinheritedfromthenearestancestorthatholdsthe
XmQTspecifyRenderTabletrait,usingtheXmTEXT_RENDER_TABLEvalueoftheancestorsofound.
XmNresizeHeight
IfFalse(default),theTextwidgetdoesnotexpandverticallytofitallofthetext(inotherwords,thewidgetneedstohavescrollbarssothattherestofthetextcan
bescrolledintoview).IfTrue,theTextwidgetalwaysbeginsitsdisplaywiththetextatthebeginningofthesource.ThisresourcehasnoeffectinaScrolledText
widgetwhoseXmNscrollVerticalresourceissettoTrue.
XmNresizeWidth
IfFalse(default),theTextwidgetdoesnotexpandhorizontallytofititstext.IfTrue,thewidgettriestochangeitswidth.Thisresourcehasnoeffectwhenthe
XmNwordWrapresourceissettoTrue.
XmNrows
Thenumberofcharacterspacesthatshouldfitverticallyinthetextwindow.TheXmNheightresourcedeterminesthedefaultvalueofXmNrows,butifnoheight
hasbeenset,thedefaultis1.ThisresourceismeaningfulonlywhenXmNeditModeisXmMULTI_LINE_EDIT.SeealsoXmNcolumns.
XmNwordWrap
IfFalse(default),doesnotbreaklinesautomaticallybetweenwords(inwhichcasetextcandisappearbeyondthewindow'sedge).IfTrue,breakslinesat
spaces,tabs,ornewlines.ThisresourceismeaningfulonlywhenXmNeditModeisXmMULTI_LINE_EDIT.
ScrolledTextResources
Name

Class

Type

Default

Access

XmNscrollHorizontal

XmCScroll

Boolean

True

CG

XmNscrollLeftSide

XmCScrollSide

Boolean

dynamic

CG

XmNscrollTopSide

XmCScrollSide

Boolean

False

CG

XmNscrollVertical

XmCScroll

Boolean

True

CG

XmNscrollHorizontal
IfTrue,theTextwidgetaddsahorizontalScrollBar.ThedefaultisTruehowever,thevaluechangestoFalseifthewidgetisinaScrolledWindowwhose

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page980

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNscrollingPolicyresourceissettoXmAUTOMATIC.ThisresourceismeaningfulonlywhenXmNeditModeisXmMULTI_LINE_EDIT.
XmNscrollLeftSide
IfTrue,theverticalScrollBarisplacedtotheleftofthescrolledtextwindow.ThedefaultvaluedependsonhowtheXmNstringDirectionresourceisset.
ThisresourceismeaningfulonlywhenXmNeditModeisXmMULTI_LINE_EDITandwhenXmNscrollVerticalisTrue.
XmNscrollTopSide
IfTrue,thehorizontalScrollBarisplacedabovethescrolledtextwindow,ratherthanbelowbydefault.
XmNscrollVertical
IfTrue,theTextwidgetaddsaverticalScrollBar.ThedefaultisTruehowever,thevaluechangestoFalseifthewidgetisinaScrolledWindowwhose
XmNscrollingPolicyresourceissettoXmAUTOMATIC.
CallbackResources
Textdefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNactivateCallback

XmCR_ACTIVATE

XmNdestinationCallback

XmCR_OK

XmNfocusCallback

XmCR_FOCUS

XmNgainPrimaryCallback

XmCR_GAIN_PRIMARY

XmNlosePrimaryCallback

XmCR_LOSE_PRIMARY

XmNlosingFocusCallback

XmCR_LOSING_FOCUS

XmNmodifyVerifyCallback

XmCR_MODIFYING_TEXT_VALUE

XmNmodifyVerifyCallbackWcs

XmCR_MODIFYING_TEXT_VALUE

XmNmotionVerifyCallback

XmCR_MOVING_INSERT_CURSOR

XmNvalueChangedCallback

XmCR_VALUE_CHANGED

XmNactivateCallback
ListofcallbacksthatarecalledwhentheusercausestheTextwidgettobeactivated.
XmNdestinationCallback
InMotif2.0andlater,listofcallbacksthatarecalledwhentheTextisthedestinationofatransferoperation.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page981

XmNfocusCallback
ListofcallbacksthatarecalledwhentheTextwidgetreceivestheinputfocus.
XmNgainPrimaryCallback
ListofcallbacksthatarecalledwhentheTextwidgetgainsownershipoftheprimaryselection.
XmNlosePrimaryCallback
ListofcallbacksthatarecalledwhentheTextwidgetlosesownershipoftheprimaryselection.
XmNlosingFocusCallback
ListofcallbacksthatarecalledwhentheTextwidgetlosestheinputfocus.
XmNmodifyVerifyCallback
ListofcallbacksthatarecalledbeforethevalueoftheTextwidgetischanged.IftherearecallbacksforbothXmNmodifyVerifyCallbackand
XmNmodifyVerifyCallbackWcs,theXmNmodifyVerifyCallbackcallbacksarecalledfirst.
XmNmodifyVerifyCallbackWcs
InMotif1.2andlater,listofcallbacksthatarecalledbeforethevalueoftheTextwidgetischanged.Iftherearecallbacksforboth
XmNmodifyVerifyCallbackandXmNmodifyVerifyCallbackWcs,theXmNmodifyVerifyCallbackcallbacksarecalledfirst.
XmNmotionVerifyCallback
ListofcallbacksthatarecalledbeforetheinsertioncursorismovedintheTextwidget.
XmNvalueChangedCallback
ListofcallbacksthatarecalledafterthevalueoftheTextwidgetischanged.
CallbackStructure
DestinationcallbacksarefullydescribedwithinthesectionscoveringtheUniformTransferModel.SeeXmTransfer(1)formoredetails.Forquickreference,apointer
tothefollowingstructureispassedtocallbacksontheXmNdestinationCallbacklist:
typedefstruct
{
intreason/*thereasonthatthecallbackisinvoked*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Atomselection/*therequestedselectiontype,asanAtom*/
XtEnumoperation/*thetypeoftransferrequested*/
intflags/*whetherdestinationandsourcearesame*/
XtPointertransfer_id/*uniqueidentifierfortherequest*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page982
XtPointerdestination_data/*informationaboutthedestination*/
XtPointerlocation_data/*informationaboutthedata*/
Timetime/*timewhenthetransferoperationstarted*/
}XmDestinationCallbackStruct

Withtheexceptionoftheabovedestinationcallback,eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
}XmAnyCallbackStruct

Inaddition,thecallbackresourcesXmNlosingFocusCallback,XmNmodifyVerifyCallback,andXmNmotionVerifyCallback
referencethefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Booleandoit/*dotheaction(True)orundoit(False)*/
longcurrInsert/*theinsertcursor'scurrentposition*/
longnewInsert/*desirednewpositionofinsertcursor*/
longstartPos/*startoftexttochange*/
longendPos/*endoftexttochange*/
XmTextBlocktext/*describesthetexttoinsert*/
}XmTextVerifyCallbackStruct,*XmTextVerifyPtr

start_posspecifiesthelocationatwhichtostartmodifyingtext.start_posisunusedifthecallbackresourceisXmNmotionVerifyCallback,andis
thesameasthecurrent_insertmemberifthecallbackresourceisXmNlosingFocusCallback.
end_posspecifiesthelocationatwhichtostopmodifyingtext(however,ifnotextwasmodified,end_poshasthesamevalueasstart_pos).end_posis
unusedifthecallbackresourceisXmNmotionVerifyCallback,andisthesameasthecurrent_insertmemberifthecallbackresourceis
XmNlosingFocusCallback.
textpointstothestructurebelow,whichspecifiesinformationaboutthetexttobeinserted:
typedefstruct
{
char*ptr/*pointertothetexttoinsert*/
intlength/*lengthofthistext*/
XmTextFormatformat/*textformat(e.g.,FMT8BIT,FMT16BIT)*/
}XmTextBlockRec,*XmTextBlock

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page983

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

ThecallbackresourceXmNmodifyVerifyCallbackWcsreferencesthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*structurethattriggeredcallback*/
Booleandoit/*dotheaction(True)orundoit(False)*/
longcurrent_insert/*theinsertcursor'scurrentposition*/
longnew_insert/*desirednewpositionofinsertcursor*/
longstart_pos/*startoftexttochange*/
longend_pos/*endoftexttochange*/
XmTextBlockWcstext/*describesthetexttoinsert*/
}XmTextVerifyCallbackStructWcs,*XmTextVerifyPtrWcs

AllofthefieldsinthisstructurearethesameasthefieldsintheXmTextVerifyCallbackStructexcepttext,whichpointstothestructurebelowand
specifiesinformationaboutthetexttobeinserted:
typedefstruct
{
wchar_t*wcsptr/*pointertothetexttoinsert*/
intlength/*lengthofthistext*/
}XmTextBlockRecWcs,*XmTextBlockWcs

InheritedResources
Textinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.Textsetsthedefaultvalueof
XmNnavigationTypetoXmTAB_GROUP.ThedefaultvalueofXmNborderWidthisresetto0byPrimitive.
Resource

Inherited.From

Resource

InheritedFrom

XmNaccelerators

Core

XmNhighlightThickness

XmPrimitive

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNlayoutDirection

XmPrimitive

XmNbackgroundPixmap

Core

XmNmappedWhenManaged

Core

XmNborderColor

Core

XmNnavigationType

XmPrimitive

XmNborderPixmap

Core

XmNpopupHandlerCallback

XmPrimitive

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmPrimitive

XmNsensitive

Core

XmNbottomShadowPixmap

XmPrimitive

XmNshadowThickness

XmPrimitive

XmNcolormap

Core

XmNtopShadowColor

XmPrimitive

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page984

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNconvertCallback

XmPrimitive

XmNtopShadowPixmap

XmPrimitive

XmNdepth

Core

XmNtranslations

Core

XmNdestroyCallback

Core

XmNtraversalOn

XmPrimitive

XmNforeground

XmPrimitive

XmNunitType

XmPrimitive

XmNheight

Core

XmNuserData

XmPrimitive

XmNhelpCallback

XmPrimitive

XmNwidth

Core

XmNhighlightColor

XmPrimitive

XmNx

Core

XmNhighlightOnEnter

XmPrimitive

XmNy

Core

XmNhighlightPixmap

XmPrimitive

Translations
ThetranslationsforTextincludethosefromPrimitive,aswellasthefollowing.(Notethatsomeoftheassociatedactionsarereversedforalanguageenvironmentin
whichtextisnotreadfromlefttoright.)
Event

Action

BSelectPress

grabfocus()

BSelectMotion

extendadjust()

BSelectRelease

extendend()

BExtendPress

extendstart()

BExtendMotion

extendadjust()

BExtendRelease

extendend()

BTogglePress

movedestination()

BTransferPress

processbdrag()(1.2)

secondarystart()(1.1)

BTransferMotion

secondaryadjust()

BTransferRelease

copyto()

MCtrlBTransferPress

processbdrag()(1.2)

secondarystart()(1.1)

MCtrlBTransferMotion

secondaryadjust()

MCtrlBTransferRelease

copyto()

MAltBTransferPress

processbdrag()(1.2)

secondarystart()(1.1)

MAltBTransferMotion

secondaryadjust()

MAltBTransferRelease

copyto()

MShiftBTransferPress

processbdrag()

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page985

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Event

Action

MShiftBTransferMotion

secondaryadjust()

MShiftBTransferRelease

moveto()

MAltMCtrlBTransferRelease

copyto()

MAltMShiftBTransferRelease

moveto()

KUp

processup()

MShiftKUp

processshiftup()

MCtrlKUp

backwardparagraph()

MShiftMCtrlKUp

backwardparagraph(extend)

KDown

processdown()

MShiftKDown

processshiftdown()

MCtrlKDown

forwardparagraph()

MShiftMCtrlKDown

forwardparagraph(extend)

KLeft

backwardcharacter()

MShiftKLeft

keyselect(left)

MCtrlKLeft

backwardword()

MShiftMCtrlKLeft

backwardword(extend)

KRight

forwardcharacter()

MShiftKRight

keyselect(right)

MCtrlKRight

forwardword()

MShiftMCtrlKRight

forwardword(extend)

KPageUp

previouspage()

MShiftKPageUp

previouspage(extend)

KPageDown

nextpage()

MShiftKPageDown

nextpage(extend)

KPageLeft

pageleft()

KPageRight

pageright()

KBeginLine

beginningofline()

MShiftKBeginLine

beginningoffile(extend)

KEndLine

endofline()

MShiftKEndLine

endofline(extend)

KBeginData

beginningoffile()

MShiftKBeginData

beginningoffile(extend)

KEndData

endoffile()

MShiftKEndData

endoffile(extend)

KTab

processtab()

KNextField

nexttabgroup()

KPrevField

prevtabgroup()

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page986

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Event

Action

KEnter

processreturn()

KActivate

activate()

KDelete

deletenextcharacter()

KBackSpace

deletepreviouscharacter()

KAddMode

toggleaddmode()

KSpace

selfinsert()

MShiftKSpace

selfinsert()

KSelect

setanchor()

KExtend

keyselect()

MAnyKCancel

processcancel()

KClear

clearselection()

KSelectAll

selectall()

KDeselectAll

deselectall()

KCut

cutclipboard()

KCopy

copyclipboard()

KPaste

pasteclipboard()

KPrimaryCut

cutprimary()

KPrimaryCopy

copyprimary()

KPrimaryPaste

copyprimary()

KQuickCut

quickcutset()(1.1)

KQuickCopy

quickcopyset()(1.1)

KQuickPaste

quickcopyset()(1.1)

KQuickExtend

doquickaction()(1.1)

KHelp

Help()

KAny

selfinsert()

ActionRoutines
Textdefinestheactionroutinesbelow.Foractionsthatinvolvemovementsuchasnext,previous,start,end,back,forward,etc.,theactual
cursormovementdependsonwhetherthelayoutdirectionislefttorightorrighttoleft.Inaddition,someactionsacceptanoptionalargument,extend.When
appliedwithnoargument,theseactionsmovethecursorwhenappliedwiththeextendargument,theseactionsmovethecursorbutalsoextendthetextselection.
Inalldescriptions,thetermcursorreferstotheinsertioncursor.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page987

activate()
InvokesthecallbacksspecifiedbyXmNactivateCallback.
backwardcharacter()
Movesthecursorbackonecharacter.
backwardparagraph(extend)
Movesthecursorbacktothefirstnonblankcharacterthatfollowsablankline(orbacktothestartofthetextifthereisnopreviousblankline).Ifthecursorisalready
locatedatanonblankcharacter(i.e.,ifit'salreadyatthebeginningoftheparagraph),thecursormovestothestartofthepreviousparagraph.(Multilineeditmode
only.)
backwardword(extend)
Movesthecursorbacktothefirstnonblankcharacterthatfollowsablankcharacter(orbacktothestartofthelineifthereisnopreviousblankcharacter).Ifthe
cursorisalreadylocatedatanonblankcharacter(i.e.,ifit'salreadyatthebeginningofaword),thecursormovestothestartofthepreviousword.
beep()
Makestheterminalbeep.
beginningoffile(extend)
Movesthecursortothestartofthetext.
beginningofline(extend)
Movesthecursortothestartoftheline.
clearselection()
Replaceseachcharacter(exceptanewline)withaspace,effectivelyclearingthecurrentselection.
copyclipboard()
Copiesthecurrenttextselectionintotheclipboard.
copyprimary()
Insertsacopyoftheprimaryselectionatthecursorlocation.
copyto()
Insertsacopyofthesecondaryselectionatthecursorlocation,or,ifthereisnosecondaryselection,insertsacopyoftheprimaryselectionatthepointerlocation.
cutclipboard()
Deletesthecurrentselectionandmovesittotheclipboard.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page988

cutprimary()
Deletestheprimaryselectionandinsertsitatthecursor.
deletenextcharacter()
deletepreviouscharacter()
IfthecursorisinsidetheselectionandXmNpendingDeleteisTrue,deletestheselection.Otherwise,deletesthecharacterfollowing/precedingthecursor.
deletenextword()
deletepreviousword()
IfthecursorisinsidetheselectionandXmNpendingDeleteisTrue,deletestheselection.Otherwise,deletesfromthecharacterfollowing/precedingthecursor
tothenext/previousspace,tab,orendofline.
deleteselection()
Deletesthecurrentselection.
deletetoendofline()
Deletesforwardfromthecharacterafterthecursoruptoandincludingtheendoftheline.
deletetostartofline()
Deletesbackfromthecharacterbeforethecursoruptoandincludingthebeginningoftheline.
deselectall()
Deselectsthecurrentselection.
doquickaction()
Endsasecondaryselectionanddoestheactionthatwasstartedbyeitheroftheactionsquickcopysetorquickcutset.
endoffile(extend)
Movesthecursortotheendofthetext.
endofline(extend)
Movesthecursortotheendoftheline.
extendadjust()
Selectstextthatisbetweentheanchorandthepointerlocation,whiledeselectingtextthatisoutsidethisarea.Asaresultofthisaction,whenthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page989

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

pointermovespastlinesoftext,theselinesareselectedandthecurrentlineisselecteduptothepositionofthepointer.
extendend()
Movesthecursortothepointerlocationandendstheselectionperformedbyextendadjust.
extendstart()
Adjuststheanchorinpreparationforselectingtextviatheextendadjustaction.
forwardcharacter()
Movesthecursorforwardonecharacter.
forwardparagraph(extend)
Movesthecursorforwardtothefirstnonblankcharacterthatfollowsablankline.Ifthecursorisalreadylocatedatanonblankcharacter(i.e.,ifit'salreadyatthe
beginningoftheparagraph),thecursormovestothestartofthenextparagraph.(Multilineeditmodeonly.)
forwardword(extend)
Movesthecursorforwardtothefirstblankcharacterthatfollowsanonblankcharacter(orforwardtotheendofthelineifthereisnoblankcharactertomoveto).If
thecursorisalreadylocatedatablankcharacter(i.e.,ifit'salreadyattheendofaword),thecursormovestotheendofthenextword.
grabfocus()
ProcessesmulticlicksasdefinedintheXmNselectionArrayresource.Bydefault,oneclickresetsthecursortothepointerlocation,twoclicksselectaword,
threeclicksselectaline,andfourclicksselectallofthetext.
Help()
InvokesthelistofcallbacksspecifiedbyXmNhelpCallback.IftheTextwidgetdoesn'thaveanyhelpcallbacks,thisactionroutineinvokesthoseassociated
withthenearestancestorthathasthem.
insertstring(text)
Insertstextatthecursor,orreplacesthecurrentselectionwithtext(whenXmNpendingDeleteisTrue).
keyselect(direction)
Extendstheselectionandmovesthecursoronecharactertotheright(whendirectionisright),onecharactertotheleft(directionis

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page990

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

left).Ifnodirectionisspecified,theselectionisextended,althoughtheinsertioncursorisnotmoved.
killnextcharacter()
killnextword()
killpreviouscharacter()
killpreviousword()
Thesefouractionsaresimilartotheirdeleteactioncounterparts,butthekillactionshavetheaddedfeatureofstoringthedeletedtextinthecutbuffer.
killselection()
Deletesthecurrentselectionandstoresthistextinthecutbuffer.
killtoendofline()
Deletesforwardfromthecharacterafterthecursoruptoandincludingtheendofthelinestoresthistextinthecutbuffer.
killtostartofline()
Deletesbackfromthecharacterbeforethecursoruptoandincludingthebeginningofthelinestoresthistextinthecutbuffer.
movedestination()
Movesthecursortothepointerlocation,leavingexistingselectionsunaffected.
moveto()
Deletesthesecondaryselectionandinsertsitatthecursor,or,ifthereisnosecondaryselection,deletestheprimaryselectionandinsertsitatthepointerlocation.
newline()
IfthecursorisinsidetheselectionandXmNpendingDeleteisTrue,deletestheselectionandinsertsanewlineatthecursor.Otherwise,onlyinsertsanewline
atthecursor.
newlineandbackup()
IfthecursorisinsidetheselectionandXmNpendingDeleteisTrue,deletestheselection,insertsanewlineatthecursorandmovesthecursortotheendofthe
previousline.Otherwise,onlyinsertsanewlineandthenmovesthecursortotheendofthepreviousline.
newlineandindent()
IfthecursorisinsidetheselectionandXmNpendingDeleteisTrue,deletestheselection,insertsanewlineatthecursor,andaddsblanks(asneeded)sothat
thecursoralignswiththefirstnonblankcharacterinthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page991

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

previousline.Otherwise,onlyinsertsanewlineandaddsblanks(asneeded)sothatthecursoralignswiththefirstnonblankcharacterinthepreviousline.
nextline()
Placesthecursoronthenextline.
nextpage(extend)
Movesthecursoronepageforward.
nexttabgroup()
Traversestothenexttabgroup.
pageleft()
pageright()
Scrollsthevisibleareaonepagetotheleftorright.
pasteclipboard()
Pastestextfromtheclipboardtothepositionbeforethecursor.
prevtabgroup()
Traversestotheprevioustabgroup.
previousline()
Placesthecursoronthepreviousline.
previouspage(extend)
Movesthecursoronepagebackward.
processbdrag()
InMotif1.2andlater,copiesthecurrentselectiontotheinsertioncursoriftextisselected,thelocationcursorisoutsideoftheselection,andnomotionisdetected.
Performsasecondaryselectionandcopiestheselectiontothepositionwheretextwaslasteditedifthecursorisoutsideoftheselectionandmotionisdetected.
Otherwise,initiatesadraganddropoperationusingthecurrentselection.
processcancel()
Cancelstheextendadjust()orsecondaryadjust()actionsthatarecurrentlybeingapplied,restoringtheselectiontoitspreviousstate.
processdown()
processup()
IfXmNnavigationTypeisXmNONE,descends/ascendstotheadjacentwidgetinthetabgroup(singlelineeditmodeonly).Movesthecursoroneline
down/up(multilineeditmodeonly).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page992

processhome()
Movesthecursortothestartoftheline.(Similartobeginningofline.)
processreturn()
InvokestheXmNactivateCallbackcallbacks(insinglelineediting)orinsertsanewline(inmultilineediting).
processshiftdown()
processshiftup()
Movesthecursoronelinedownorup(inmultilineeditingonly).
processtab()
Traversestothenexttabgroup(insinglelineediting)orinsertsatab(inmultilineediting).
quickcopyset()
Marksthistextlocationasthestartofthesecondaryselectiontouseinquickcopying.
quickcutset()
Marksthistextlocationasthestartofthesecondaryselectiontouseinquickcutting.
redrawdisplay()
Redrawsthetextintheviewingwindow.
scrollonelinedown()
scrollonelineup()
Scrollsthetextregiononelinedownorup.
secondaryadjust()
Extendsthesecondaryselectiontothelocationofthepointer.
secondarynotify()
Insertsacopyofthesecondaryselectionatthedestinationcursor.
secondarystart()
Marksthistextlocationasthestartofasecondaryselection.
selectadjust()
ExtendstheselectionviathemultiplemouseclicksdefinedbytheXmNselectionArrayresource.
selectall()
Selectsalltext.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page993

selectend()
Endstheselectionmadeusingtheselectadjust()action.
selectstart()
Beginsatextselection.
selfinsert()
Thebasicmethodofinsertingtext.Typingatthekeyboardinsertsnewtextand(ifXmNpendingDeleteisTrue)replacesselectedtextthatthecursorisin.
setanchor()
Changestheanchorpointusedwhenmakingextendedselectionschangesthedestinationcursorusedforsecondaryselections.
setinsertionpoint()
Setsthepositionofthecursor.
setselectionhint()
Setstheselection'stextsourceandtheselection'slocation.
toggleaddmode()
TurnsAddModeeitheronoroff.
toggleoverstrike()
Changesthetextinsertionmode.WhenacharacteristypedintoaTextwidget,bydefaultitisinsertedatthelocationoftheinsertioncursor.Inoverstrikemode,an
insertedcharacterreplacesthecurrentcharacterthatimmediatelyfollowstheinsertioncursor.Whentheinsertioncursorisattheendofalineinoverstrikemode,
insertedcharactersareappendedtotheline.
traversehome()
traversenext()
traverseprev()
Traversewithinthetabgrouptothefirstwidget,thenextwidget,andthepreviouswidget,respectively.
unkill()
Restoresthemostrecentlydeletedtexttothecursor'slocation.
AdditionalBehavior
Texthasthefollowingadditionalbehavior:
<FocusIn>
Drawsasolidinsertioncursorandmakesitblink.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page994

<FocusOut>
DrawsastippledIbeaminsertioncursor,unlessthewidgetisthedestinationofadatatransfer.
SeeAlso
XmCreateObject(1),XmTextClearSelection(1),XmTextCopy(1),XmTextCopyLink(1),XmTextCut(1),
XmTextDisableRedisplay(1),XmTextEnableRedisplay(1),XmTextFindString(1),XmTextFindStringWcs(1),
XmTextGetBaseline(1),XmTextGetCenterline(1),XmTextGetCursorPosition(1),XmTextGetEditable(1),
XmTextGetInsertionPosition(1),XmTextGetLastPosition(1),XmTextGetMaxLength(1),XmTextGetSelection
(1),XmTextGetSelectionPosition(1),XmTextGetSelectionWcs(1),XmTextGetSource(1),XmTextGetString
(1),XmTextGetStringWcs(1),XmTextGetSubstring(1),XmTextGetSubstringWcs(1),XmTextGetTopCharacter
(1),XmTextInsert(1),XmTextInsertWcs(1),XmTextPaste(1),XmTextPasteLink(1),XmTextPosToXY(1),
XmTextRemove(1),XmTextReplace(1),XmTextReplaceWcs(1),XmTextScroll(1),XmTextSetAddMode(1),
XmTextSetCursorPosition(1),XmTextSetEditable(1),XmTextSetHighlight(1),XmTextSetInsertionPosition
(1),XmTextSetMaxLength(1),XmTextSetSelection(1),XmTextSetSource(1),XmTextSetString(1),
XmTextSetStringWcs(1),XmTextSetTopCharacter(1),XmTextShowPosition(1),XmTextXYToPos(1),
XmTransfer(1),Core(2),XmRendition(2),XmPrimitive(2),XmPrintShell(2),XmTextField(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page995

XmTextField
MotifandXtWidgetClasses
Name
XmTextFieldwidgetclassasinglelinetexteditingwidget.
Synopsis
PublicHeader:

<Xm/TextF.h>

ClassName:

XmTextField

ClassHierarchy:

Core XmPrimitive XmTextField

ClassPointer:

xmTextFieldWidgetClass
widget=XtCreateWidget(name,xmTextWidgetClass,...)

Instantiation:
Functions/Macros:

XmCreateTextField(),XmIsTextField(),XmTextField...routines

Description
ATextFieldwidgetprovidesasinglelinetexteditorthathasasubsetofthefunctionalityoftheTextwidget.
Traits
TextFieldholdstheXmQTaccessTextualandXmQTtransfertraits,whichareinheritedinanyderivedclasses,andusestheXmQTaccessTextual
andXmQTspecifyRenderTabletraits.
NewResources
TextFielddefinesthefollowingresources,allwithaccessCSG:
Name

Class

Type

Default

XmNblinkRate

XmCBlinkRate

int

500

XmNcolumns

XmCColumns

short

dynamic

XmNcursorPosition

XmCCursorPosition

XmTextPosition

XmNcursorPosition
Visible

XmCCursorPosition
Visible

Boolean

dynamic

XmNeditable

XmCEditable

Boolean

True

XmNfontList

XmCFontList

XmFontList

dynamic

XmNmarginHeight

XmCMarginHeight

Dimension

XmNmarginWidth

XmCMarginWidth

Dimension

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page996

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Name

Class

Type

Default

XmNmaxLength

XmCMaxLength

int

largestinteger

XmNpendingDelete

XmCPendingDelete

Boolean

True

XmNrenderTable

XmCRenderTable

XmRenderTable

dynamic

XmNresizeWidth

XmCResizeWidth

Boolean

False

XmNselectionArray

XmCSelectionArray

XtPointer

defaultarray

XmNselectionArrayCount

XmCSelectionArrayCount

int

XmNselectThreshold

XmCSelectThreshold

int

XmNvalue

XmCValue

String

""

XmNvalueWcs

XmCValueWcs

wchar_t*

(wchar_t*)""

XmNverifyBell

XmCVerifyBell

Boolean

dynamic

XmNblinkRate
Thetimeinmillisecondsthatthecursorspendseitherbeingvisibleorinvisible.Avalueof0preventsthecursorfromblinking.
XmNcolumns
Thenumberofcharacterspacesthatshouldfithorizontallyinthetextwindow.TheXmNwidthresourcedeterminesthedefaultvalueofXmNcolumns,butifno
widthhasbeenset,thedefaultis20.
XmNcursorPosition
Thelocationatwhichtoplacethecurrentinsertcursor.Valuesforthisresourcearerelativetothebeginningofthetext,withthefirstcharacterpositiondefinedas0.
XmNcursorPositionVisible
IfTrue,thetextcursorisvisible.InMotif2.1,ifthetextfieldhasanXmPrintShellasancestor,thedefaultisFalse.OtherwisethedefaultisTrue.
XmNeditable
IfTrue(default),theuserisallowedtoeditthetextstringifFalse,theuserisnotallowedtodoso.
XmNfontList
Thefontlistusedforthewidget'stext.InMotif2.0andlater,XmFontListisobsoleteitissubsumedintoXmRenderTable.Ifbotharendertableandfontlist
arespecified,therendertabletakesprecedence.
XmNmarginHeight
XmNmarginWidth
Thespacingbetweentheedgesofthewidgetandthetext.(Topandbottomedgesarespecifiedbyheightleftandrightarespecifiedbywidth.)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page997

XmNmaxLength
Themaximumlengthofthetextstringthatausercanenterfromthekeyboard.Thisresourcedoesn'taffectstringsthatareenteredviatheXmNvalueresourceor
theXmTextFieldSetString()routine.
XmNpendingDelete
IfTrue(default),theTextFieldwidget'spendingdeletemodeison,meaningthatselectedtextisdeletedassoonasthenexttextinsertionoccurs.
XmNrenderTable
InMotif2.0andlater,specifiestherendertablefortheTextField.Ifunspecified,thevalueoftheresourceisinheritedfromthenearestancestorthatholdsthe
XmQTspecifyRenderTabletrait,usingtheXmTEXT_RENDER_TABLEvalueoftheancestorsofound.
XmNresizeWidth
IfFalse(default),theTextFieldwidgetdoesnotexpandhorizontallytofititstext.IfTrue,thewidgettriestochangeitswidth.
XmNselectionArray
Thearrayofpossibleactionscausedbymultiplemouseclicks.UILdoesnotdefinethesevaluesfortheTextwidget.Possiblevaluesare:
XmSELECT_POSITION/*singleclickresetpositionofinsertcursor*/
XmSELECT_WORD/*doubleclickselectaword*/
XmSELECT_LINE/*tripleclickselectaline*/

XmNselectionArrayCount
ThenumberofitemsinthearrayspecifiedbyXmNselectionArray.
XmNselectThreshold
Thenumberofpixelstheinsertioncursormustbedraggedduringselectioninordertoselectthenextcharacter.
XmNvalue
ThestringvaluetodisplayintheTextFieldwidget,expressedasachar*.IfXmNvalueandXmNvalueWcsarebothdefined,XmNvalueWcstakes
precedence.UseXtSetValues()tocopystringvaluestotheinternalbufferanduseXtGetValues()toreturnthevalueoftheinternalbuffer.
XmNvalueWcs
InMotif1.2andlater,thestringvaluetodisplayintheTextFieldwidget,expressedasawchar_t*.IfXmNvalueandXmNvalueWcsarebothdefined,
XmNvalueWcstakesprecedence.UseXtSetValues()tocopystringvaluesto

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page998

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

theinternalbufferanduseXtGetValues()toreturnthevalueoftheinternalbuffer.Thisresourcecannotbesetinaresourcefile.
XmNverifyBell
IfTrue,abellsoundswhenaverificationproducesnoaction.
CallbackResources
TextFielddefinesthesamecallbackresourcesandreferencesthesamecallbackstructuresasasinglelineTextwidget.
InheritedResources
TextFieldinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.TextFieldsetsthedefaultvalueof
XmNnavigationTypetoXmTAB_GROUP.ThedefaultvalueofXmNborderWidthisresetto0byPrimitive.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerators

Core

XmNhightlightThickness

XmPrimitive

XmNancestorSensitive

Core

XmNinitialResources
Persistent

Core

XmNbackground

Core

XmNlayoutDirection

XmPrimitive

XmNbackgroundPixmap

Core

XmNmappedWhenManaged

Core

XmNborderColor

Core

XmNnavigationType

XmPrimitive

XmNborderPixmap

Core

XmNpopupHandlerCallback

XmPrimitive

XmNborderWidth

Core

XmNscreen

Core

XmNbottomShadowColor

XmPrimitive

XmNsensitive

Core

XmNbottomShadowPixmap

XmPrimitive

XmNshadowThickness

XmPrimitive

XmNcolormap

Core

XmNtopShadowColor

XmPrimitive

XmNconvertCallback

XmPrimitive

XmNtopShadowPixmap

XmPrimitive

XmNdepth

Core

XmNtranslations

Core

XmNdestroyCallback

Core

XmNtraversalOn

XmPrimitive

XmNforeground

XmPrimitive

XmNunitType

XmPrimitive

XmNheight

Core

XmNuserData

XmPrimitive

XmNhelpCallback

XmPrimitive

XmNwidth

Core

XmNhighlightColor

XmPrimitive

XmNx

Core

XmNhighlightOnEnter

XmPrimitive

XmNy

Core

XmNhighlightPixmap

XmPrimitive

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page999

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Translations
TextFieldhasthesametranslationasaTextwidgetwhoseXmNeditModeresourceissettoXmSINGLE_LINE_EDIT.
Actions
TextFielddefinesthesameactionroutinesasaTextwidgetwhoseXmNeditModeresourceissettoXmSINGLE_LINE_EDIT.
SeeAlso
XmCreateObject(1),XmTextClearSelection(1),XmTextCopy(1),XmTextCopyLink(1),XmTextCut(1),
XmTextGetBaseline(1),XmTextGetCenterline(1),XmTextGetCursorPosition(1),XmTextGetEditable(1),
XmTextGetInsertionPosition(1),XmTextGetLastPosition(1),XmTextGetMaxLength(1),XmTextGetSelection
(1),XmTextGetSelectionPosition(1),XmTextGetSelectionWcs(1),XmTextGetSource(1),XmTextGetString
(1),XmTextGetStringWcs(1),XmTextGetSubstring(1),XmTextGetSubstringWcs(1),XmTextInsert(1),
XmTextInsertWcs(1),XmTextPaste(1),XmTextPasteLink(1),XmTextPosToXY(1),XmTextRemove(1),
XmTextReplace(1),XmTextReplaceWcs(1),XmTextScroll(1),XmTextSetAddMode(1),
XmTextSetCursorPosition(1),XmTextSetEditable(1),XmTextSetHighlight(1),XmTextSetInsertionPosition
(1),XmTextSetMaxLength(1),XmTextSetSelection(1),XmTextSetSource(1),XmTextSetString(1),
XmTextSetStringWcs(1),XmTextSetTopCharacter(1),XmTextShowPosition(1),XmTextXYToPos(1),Core(2),
XmPrimitive(2),XmPrintShell(2),XmRendition(2),XmText(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1000

XmToggleButton
MotifandXtWidgetClasses
Name
XmToggleButtonwidgetclassabuttonwidgetthatmaintainsaBooleanstate.
Synopsis
PublicHeader:

<Xm/ToggleB.h>

ClassName:

XmToggleButton

ClassHierarchy:

Core

XmPrimitive XmLabel XmToggleButton

ClassPointer:

xmToggleButtonWidgetClass

Instantiation:

widget=XtCreateWidget(name,
xmToggleButtonWidgetClass,...)

Functions/Macros:

XmCreateToggleButton(),XmToggleButtonGetState
(),XmToggleButtonSetState(),XmIsToggleButton()

Description
AToggleButtonisabuttonthatiseithersetorunset.ToggleButtonsaretypicallyusedingroups,calledRadioBoxesandCheckBoxes,dependingonthebehaviorof
thebuttons.InaRadioBox,aToggleButtondisplaysoneofmanybehavior,whichmeansthatonlyonebuttoninthegroupcanbesetatatime.Whenabuttonis
selected,thepreviouslyselectedbuttonisunset.InaCheckBox,aToggleButtondisplaysnofmanybehavior,whichmeansthatanynumberofToggleButtonscanbe
setatonetime.ToggleButtonusesanindicatortoshowitsstatetheshapeoftheindicatorspecifiesthetypeofbehavior.Adiamondshaped(orsometimesround)
indicatorisusedforoneofmanyToggleButtonsandasquareshapedindicatorisusedfornofmanyToggleButtons.
InMotif2.0andlater,aToggleButtoncanhavethreepossiblestates:set,unset,andindeterminate,dependinguponthevalueoftheXmNtoggleModeresource.If
thevalueisXmTOGGLE_BOOLEAN,theToggleButtonhasthetwostates,setandunset.IfthevalueisXmTOGGLE_INDETERMINATE,theToggleButtonhas
threestates.
Traits
ToggleButtonusestheXmQTmenuSystemandXmQTspecifyRenderTabletraits.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1001

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

NewResources
ToggleButtondefinesthefollowingresources,allhavingaccessCSG:
Name

Class

Type

Default

XmNdetail
ShadowThickness

XmCShadowThickness

Dimension

dynamic

XmNfillOnSelect

XmCFillOnSelect

Boolean

dynamic

XmNindeterminate
InsensitivePixmap

XmCIndeterminate
InsensitivePixmap

Pixmap

XmUNSPECIFIED_
PIXMAP

XmNindeterminatePixmap

XmCIndeterminatePixmap

Pixmap

XmUNSPECIFIED_
PIXMAP

XmNindicatorOn

XmCIndicatorOn

unsigned
char

XmINDICATOR_FILL

XmNindicatorSize

XmCIndicatorSize

Dimension

dynamic

XmNindicatorType

XmCIndicatorType

unsigned
char

dynamic

XmNselectColor

XmCSelectColor

Pixel

dynamic

XmNselect
InsensitivePixmap

XmCSelect
InsensitivePixmap

Pixmap

XmUNSPECIFIED_
PIXMAP

XmNselectPixmap

XmCSelectPixmap

Pixmap

XmUNSPECIFIED_
PIXMAP

XmNset

XmCSet

unsigned
char

XmUNSET

XmNspacing

XmCSpacing

Dimension

XmNtoggleMode

XmCToggleMode

unsigned
char

XmTOGGLE_BOOLEAN

XmNunselectColor

XmCUnselectColor

Pixel

dynamic

XmNvisibleWhenOff

XmCVisibleWhenOff

Boolean

dynamic

XmNdetailShadowThickness
InMotif2.0andlater,specifiesthethicknessoftheshadowontheindicator.InMotif2.0thedefaultvalueis2.InMotif2.1andlater,thedefaultvaluedependsupon
theXmDisplayXmNenableThinThicknessresource:ifTruethedefaultis1otherwise,itis2.
XmNfillOnSelect
IfTrue,selectionofthisToggleButtonfillstheindicatorwiththecolorgivenbytheXmNselectColorresourceandswitchesthebutton'stopandbottom
shadowcolors.IftheToggleButtonisunselected,thetopandbottomshadowcolorsareswitched.InMotif2.0andlater,theindicatorisfilledwiththecolorgivenby
theXmNunselectColorresource.IftheToggleButtonisintheindeterminatestateasspecifiedbytheXmNsetresource,theindicatorishalffilledwiththe
XmNselectColorandhalfwiththeXmNunselectColorvalues.IffillonselectisFalse,onlythetopandbottomshadowcolorsareswitched.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1002

WhenXmNindicatorOnisXmINDICATOR_NONE,XmNfillOnSelectisTrue,andXmNsetisXmSET,thebackgroundoftheentirebutton
isfilledwiththeXmNselectColor.
InMotif1.2andearlier,thedefaultvalueissettothevalueofXmNindicatorOn.InMotif2.0andlater,thedefaultdependsuponboth
XmNindicatorOnandXmNindicatorTyperesources.
XmNindeterminateInsensitivePixmap
InMotif2.0andlater,specifiesthepixmaptouseifXmNsetisXmINDETERMINATEandtheToggleisinsensitive.Theresourcehasnoeffectiftheinherited
LabelresourceXmNlabelTypeisXmSTRING.
XmNindeterminatePixmap
InMotif2.0andlater,specifiesthepixmaptouseifXmNsetisXmINDETERMINATEandtheToggleissensitive.TheresourcehasnoeffectiftheinheritedLabel
resourceXmNlabelTypeisXmSTRING.
XmNindicatorOn
InMotif1.2andearlier,theresourceisaBooleanvalue.IfTrue(default),theindicatorisvisibleanditsshadowsareswitchedwhenthebuttonistoggled.If
False,theindicatorisinvisibleandnospaceissetasideforitinaddition,theshadowssurroundingthebuttonareswitchedwhenitistoggled.
InMotif2.0andlater,theresourceisanenumeratedtype,anditspecifiesthetypeofindicatorrequired.Possiblevaluesare:
XmINDICATOR_NONE/*noindicator*/
XmINDICATOR_FILL/*checkboxorbox*/
XmINDICATOR_BOX/*shadowedbox,inMotif2.1*/
XmINDICATOR_CHECK/*checkmark*/
XmINDICATOR_CHECK_BOX/*checkmarkenclosedinabox*/
XmINDICATOR_CROSS/*cross*/
XmINDICATOR_CROSS_BOX/*crossenclosedinabox*/

IfthevalueoftheXmDisplayobject'sXmNenableToggleVisualresourceisTrue,XmINDICATOR_FILLisequivalentto
XmINDICATOR_CHECK_BOX,otherwiseXmINDICATOR_BOX.
XmNindicatorSize
Thesizeoftheindicator.Thisvaluechangesifthesizeofthebutton'stextstringorpixmapchanges.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1003

XmNindicatorType
Determineswhethertheindicatorisdrawnasadiamond(signifyingaoneofmanyindicator)orasasquare(signifyingannofmanyindicator).Possiblevaluesare:
XmN_OF_MANY/*createsasquarebutton*/
XmONE_OF_MANY/*createseitherroundordiamondshapedbutton*/
XmONE_OF_MANY_ROUND/*createsaroundshapedbutton(2.0)*/
XmONE_OF_MANY_DIAMOND/*createsadiamondshapedbutton(2.1)*/

InMotif2.0,thevalueXmONE_OF_MANYisdiamondshaped.InMotif2.1,XmONE_OF_MANYproduceseitheradiamondoraroundshape,depending
uponthevalueoftheXmDisplayXmNenableToggleVisualresource.IfthisisTrue,theshapeisround.ThedefaultvalueisXmONE_OF_MANYfora
ToggleButtoninaRadioBoxwidget,andXmN_OF_MANYotherwise.ThisresourceonlysetstheindicatoritisRowColumn'sXmNradioBehavior
resourcethatactuallyenforcesradioButtonorcheckButtonbehavior.
XmNselectColor
Thecolorwithwhichtofilltheindicatorwhenthebuttonisselected.Onacolordisplay,thedefaultisavaluebetweenthebackgroundcolorandthebottomshadow
coloronamonochromedisplay,thedefaultistheforegroundcolor.InMotif2.0andlater,thefollowingPixelvaluesarepredefinedforspecialmeaning:
XmDEFAULT_SELECT_COLOR/*acolorbetweenthebackgroundandbottom*/
/*shadow*/
XmREVERSED_GROUND_COLORS/*selectisforeground,textdrawnin*/
/*background*/
XmHIGHLIGHT_COLOR/*selectcolorsameashighlightcolor*/

XmNselectInsensitivePixmap
ThepixmapusedforaninsensitiveToggleButtonwhenit'sselected.Anunselected,insensitiveToggleButtonusesthepixmapspecifiedbytheLabelresource
XmNlabelInsensitivePixmap.However,ifthisLabelresourcewasn'tspecified,itissettothevalueofXmNselectInsensitivePixmap.This
resourceismeaningfulonlywhentheLabelresourceXmNlabelTypeissettoXmPIXMAP.
XmNselectPixmap
Thepixmapusedfora(sensitive)ToggleButtonwhenit'sselected.AnunselectedToggleButtonusesthepixmapspecifiedbytheLabelresource
XmNlabelPixmap.ThisresourceismeaningfulonlywhentheLabelresourceXmNlabelTypeissettoXmPIXMAP.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1004

XmNset
Theselectionstateofthebutton.InMotif1.2andearlier,asimpleBooleanvalue.InMotif2.0andlater,aTogglecanbeinthreestates:on,off,andindeterminate,
andthisresourceischangedtoanenumeratedtype.Possiblevaluesare:
XmUNSET
XmSET
XmINDETERMINATE

IfXmNtoggleModeisXmTOGGLE_INDETERMINATE,theTogglecyclesbetweenXmSET,XmINDETERMINATE,XmUNSET,andthenbackto
XmSETwhenpressed.IftogglemodeisXmTOGGLE_BOOLEAN,thewidgetsimplycyclesbetweenXmSETandXmUNSET.
XmNspacing
ThedistancebetweentheToggleindicatoranditslabel.
XmNtoggleMode
InMotif2.0andlater,specifieswhethertheTogglehastwoorthreestates.Possiblevaluesare:
XmTOGGLE_BOOLEAN/*twostates*/
XmTOGGLE_INDETERMINATE/*threestates*/

XmNunselectColor
InMotif2.0andlater,specifiesacolorforfillingtheindicatorshape.TheresourcebehavessimilarlytoXmNselectColor,exceptthatitiseffectivewhen
XmNsetisXmUNSET.
XmNvisibleWhenOff
IfTrue,theToggleindicatorremainsvisiblewhenthebuttonisunselected.ThisisthedefaultbehaviorinaRadioBox.ThedefaultisFalseinamenu.
CallbackResources
ToggleButtondefinesthefollowingcallbackresources:
Callback

ReasonConstant

XmNarmCallback

XmCR_ARM

XmNdisarmCallback

XmCR_DISARM

XmNvalueChangedCallback

XmCR_VALUE_CHANGED

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1005

XmNarmCallback
ListofcallbacksthatarecalledwhenBSelectispressedwhilethepointerisinsidethewidget.
XmNdisarmCallback
ListofcallbacksthatarecalledwhenBSelectisreleasedafterithasbeenpressedinsidethewidget.
XmNvalueChangedCallback
ListofcallbacksthatarecalledwhenthevalueoftheToggleButtonischanged.
CallbackStructure
Eachcallbackfunctionispassedthefollowingstructure:
typedefstruct
{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*pointstoeventthattriggeredcallback*/
intset/*thestateofthebutton*/
}XmToggleButtonCallbackStruct

setindicatesthestateoftheToggle,andisoneofXmSET,XmUNSET,orXmINDETERMINATE.
InheritedResources
ToggleButtoninheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.ToggleButtonsetsthedefaultvalues
ofXmNmarginBottom,XmNmarginTop,XmNmarginWidth,andXmNshadowThicknessdynamically.Thedefaultvalueof
XmNborderWidthisresetto0byPrimitive.InMotif2.0andearlier,thedefaultvalueofXmNhighlightThicknessisresetto2.InMotif2.1andlater,
thedefaultvaluedependsupontheXmDisplayXmNenableThinThicknessresource:ifTruethedefaultis1otherwise,itis2.
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerator

XmLabel

XmNlabelType

XmLabel

XmNaccelerators

Core

XmNlayoutDirection

XmPrimitive

XmNacceleratorText

XmLabel

XmNmappedWhenManaged

Core

XmNalignment

XmLabel

XmNmarginBottom

XmLabel

XmNancestorSensitive

Core

XmNmarginHeight

XmLabel

XmNbackground

Core

XmNmarginLeft

XmLabel

XmNbackgroundPixmap

Core

XmNmarginRight

XmLabel

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1006

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Resource

InheritedFrom

Resource

InheritedFrom

XmNborderColor

Core

XmNmarginTop

XmLabel

XmNborderPixmap

Core

XmNmarginWidth

XmLabel

XmNborderWidth

Core

XmNmnemonicCharSet

XmLabel

XmNbottomShadowColor

XmPrimitive XmNmnemonic

XmLabel

XmNbottomShadowPixmap

XmPrimitive XmNnavigationType

XmPrimitive

XmNcolormap

Core

XmPrimitive

XmNconvertCallback

XmPrimitive XmNrecomputeSize

XmLabel

XmNdepth

Core

XmNrenderTable

XmLabel

XmNdestroyCallback

Core

XmNscreen

Core

XmNfontList

XmLabel

XmNsensitive

Core

XmNforeground

XmPrimitive XmNshadowThickness

XmPrimitive

XmNheight

Core

XmLabel

XmNhelpCallback

XmPrimitive XmNtopShadowColor

XmPrimitive

XmNhighlightColor

XmPrimitive XmNtopShadowPixmap

XmPrimitive

XmNhighlightOnEnter

XmPrimitive XmNtranslations

Core

XmNhighlightPixmap

XmPrimitive XmNtraversalOn

XmPrimitive

XmNhighlightThickness

XmPrimitive XmNunitType

XmPrimitive

XmNinitialResources
Persistent

Core

XmNuserData

XmPrimitive

XmNlabelInsensitive
Pixmap

XmLabel

XmNwidth

Core

XmNlabelPixmap

XmLabel

XmNx

Core

XmNlabelString

XmLabel

XmNy

Core

XmNpopupHandler
Callback

XmNstringDirection

Translations
ThetranslationsforToggleButtonincludethosefromPrimitive.Inaddition,ToggleButtonsthatarenotinamenusystemhavethefollowingtranslations:
Event

Action

BTransferPress

ProcessDrag()

BSelectPress

Arm()

MCtrlBSelectPress

ButtonTakeFocus()

BSelectRelease

Select()

Disarm()

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1007

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Event

Action

KHelp

Help()

KSelect

ArmAndActivate()

ForToggleButtonsthatareinamenusystem,translationsincludethemenutraversaltranslationsinheritedfromtheLabelwidget,aswellasthefollowing:
Event

Action

MCtrlBSelectPress

MenuButtonTakeFocus()

BSelectPress

BtnDown()

BSelectRelease

BtnUp()

KHelp

Help()

KActivate

ArmAndActivate()

KSelect

ArmAndActivate()

MAnyKCancel

MenuShellPopdownOne()

ActionRoutines
ToggleButtondefinesthefollowingactionroutines:
Arm()
Setsthebuttonifitwaspreviouslyunset,unsetsthebuttonifitwaspreviouslyset,andinvokesthecallbacksspecifiedbyXmNarmCallback.Settingthebutton
meansdisplayingitsothatitappearsselected.Theselectedstatecanbeshownby:highlightingtheindicatorsoitappearspressedinfillingintheindicator(usingthe
colorgivenbyXmNselectColor)highlightingthebuttonsoitappearspressedin(doneonlyiftheindicatorisn'tdisplayed)drawingthebuttonfaceusingthe
pixmapgivenbyXmNselectPixmap.
Theunselectedstatecanbeshownby:highlightingtheindicatorsoitappearsraisedfillingintheindicatorwiththebackgroundcolorhighlightingthebuttonsoit
appearsraised(doneonlyiftheindicatorisn'tdisplayed)drawingthebuttonfaceusingthepixmapgivenbyXmNlabelPixmap.
ArmAndActivate()
Setsthebuttonifitwaspreviouslyunset,unsetsthebuttonifitwaspreviouslyset,andinvokesthecallbacksspecifiedbyXmNarmCallback(ifthebuttonisn'tyet
armed),XmNvalueChangedCallback,andXmNdisarmCallback.Insideamenu,thisactionunpoststhemenu

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1008

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

hierarchy.Outsideamenu,thisactiondisplaysthebuttonasselectedorunselected,asdescribedforArm().
BtnDown()
UnpostsanymenusthatwerepostedbytheparentmenuoftheToggleButton,changesfromkeyboardtraversaltomousetraversal,drawsashadowtoshowthe
ToggleButtonasarmed,and(assumingthebuttonisnotyetarmed)invokesthecallbacksspecifiedbyXmNarmCallback.
BtnUp()
Unpoststhemenuhierarchy,changestheToggleButton'sstate,andinvokesfirstthecallbacksspecifiedbyXmNvalueChangedCallbackandthenthose
specifiedbyXmNdisarmCallback.
ButtonTakeFocus()
InMotif2.0andlater,movesthecurrentkeyboardfocustotheToggleButton,withoutactivatingthewidget.
Disarm()
InvokesthecallbacksspecifiedbyXmNdisarmCallback.
Help()
Unpoststhemenuhierarchy,restoresthepreviouskeyboardfocus,andinvokesthecallbacksspecifiedbytheXmNhelpCallbackresource.
MenuButtonTakeFocus()
InMotif2.0andlater,movesthecurrentkeyboardfocustotheToggleButton,withoutactivatingthewidget.
MenuShellPopdownOne()
Unpoststhecurrentmenuand(unlessthemenuisapulldownsubmenu)restoreskeyboardfocustothetabgrouporwidgetthatpreviouslyhadit.Inatoplevel
pulldownmenupaneattachedtoamenubar,thisactionroutinealsodisarmsthecascadebuttonandthemenubar.
ProcessDrag()
InMotif1.2andlater,initiatesadraganddropoperationusingthelabeloftheToggleButton.
Select()
SwitchesthestateoftheToggleButtonandinvokesthecallbacksspecifiedbyXmNvalueChangedCallback.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1009

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

AdditionalBehavior
ToggleButtonhasthefollowingadditionalbehavior:
<EnterWindow>
DisplaystheToggleButtonasarmed.
<LeaveWindow>
DisplaystheToggleButtonasunarmed.
SeeAlso
XmCreateObject(1),XmToggleButtonGetState(1),XmToggleButtonSetState(1),Core(2),XmPrimitive(2),
XmLabel(2),XmCheckBox(2),XmRadioBox(2),XmRowColumn(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1010

XmToggleButtonGadget
MotifandXtWidgetClasses
Name
XmToggleButtonGadgetwidgetclassabuttongadgetthatmaintainsaBooleanstate.
Synopsis
PublicHeader:

<Xm/ToggleBG.h>

ClassName:

XmToggleButtonGadget

ClassHierarchy:

Object RectObj XmGadget


XmToggleButtonGadget

ClassPointer:

xmToggleButtonGadgetClass

Instantiation:

widget=XtCreateWidget(name,
xmToggleButtonGadgetClass,...)

XmLabelGadget

Functions/Macros: XmCreateToggleButtonGadget(),
XmToggleButtonGadgetGetState(),
XmToggleButtonGadgetSetState(),
XmIsToggleButtonGadget()

Description
ToggleButtonGadgetisthegadgetvariantofToggleButton.ToggleButtonGadget'snewresources,callbackresources,andcallbackstructurearethesameasthosefor
ToggleButton.
Traits
ToggleButtonGadgetholdstheXmQTcareParentVisualtrait,whichisinheritedinanyderivedclasses,andclonestheXmQTmenuSavvytraitfromthe
LabelGadgetclass.Inaddition,thewidgetusestheXmQTmenuSystemandXmQTspecifyRenderTabletraits.
InheritedResources
ToggleButtonGadgetinheritsthefollowingresources.Theresourcesarelistedalphabetically,alongwiththesuperclassthatdefinesthem.ToggleButtonGadgetsetsthe
defaultvaluesofXmNmarginBotton,XmNmarginTop,XmNmarginWidth,andXmNshadowThicknessdynamically.Thedefaultvalueof
XmNborderWidthisresetto0byPrimitive.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1011
Resource

InheritedFrom

Resource

InheritedFrom

XmNaccelerator

XmLabelGadget

XmNmarginBottom

XmLabelGadget

XmNacceleratorText

XmLabelGadget

XmNmarginHeight

XmLabelGadget

XmNalignment

XmLabelGadget

XmNmarginLeft

XmLabelGadget

XmNancestorSensitive

RectObj

XmNmarginRight

XmLabelGadget

XmNbackground

XmGadget

XmNmarginTop

XmLabelGadget

XmNbackgroundPixmap

XmGadget

XmNmarginWidth

XmLabelGadget

XmNborderWidth

RectObj

XmNmnemonic

XmLabelGadget

XmNbottomShadowColor

XmGadget

XmNmnemonicCharSet

XmLabelGadget

XmNbottomShadowPixmap

XmGadget

XmNnavigationType

XmGadget

XmNdestroyCallback

Object

XmNrecomputeSize

XmLabelGadget

XmNfontList

XmLabelGadget

XmNrenderTable

XmLabelGadget

XmNforeground

XmGadget

XmNsensitive

RectObj

XmNheight

RectObj

XmNshadowThickness

XmGadget

XmNhelpCallback

XmGadget

XmNstringDirection

XmLabelGadget

XmNhighlightColor

XmGadget

XmNtopShadowColor

XmGadget

XmNhighlightOnEnter

XmGadget

XmNtopShadowPixmap

XmGadget

XmNhighlightPixmap

XmGadget

XmNtraversalOn

XmGadget

XmNhighlightThickness

XmGadget

XmNunitType

XmGadget

XmNlabelInsensitive
Pixmap

XmLabelGadget

XmNuserData

XmGadget

XmNlabelPixmap

XmLabelGadget

XmNwidth

RectObj

XmNlabelString

XmLabelGadget

XmNx

RectObj

XmNlabelType

XmLabelGadget

XmNy

RectObj

XmNlayoutDirection

XmGadget

Behavior
Asagadgetsubclass,ToggleButtonGadgethasnotranslationsassociatedwithit.However,ToggleButtonGadgetbehaviorcorrespondstotheactionroutinesofthe
ToggleButtonwidget.SeetheToggleButtonactionroutinesformoreinformation.
Behavior

EquivalentToggleButtonActionRoutine

BTransferPress

ProcessDrag()

BSelectPress

Arm()
BtnDown()inamenu

BSelectRelease

Select(),Disarm()
BtnUp()inamenu

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1012

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
Behavior

EquivalentToggleButtonActionRoutine

KActivateorKSelect

ArmAndActivate()

KHelp

Help()

MAnyKCancel

MenuShellPopdownOne()

MCtrlBSelectPress

ButtonTakeFocus()
MenuButtonTakeFocus()inamenu

ToggleButtonGadgethasadditionalbehaviorassociatedwith<Enter>and<Leave>,whichdrawtheshadowinthearmedorunarmedstate,respectively.
SeeAlso
XmCreateObject(1),XmToggleButtonGetState(1),XmToggleButtonSetState(1),Object(2),RectObj(2),
XmCheckBox(2),XmGadget(2),XmLabelGadget(2),XmRadioBox(2),XmRowColumn(2),XmToggleButton(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1013

XmWarningDialog
MotifandXtWidgetClasses
Name
XmWarningDialoganunmanagedMessageBoxasachildofaDialogShell.
Synopsis
PublicHeader:

<Xm/MessageB.h>
widget=XmCreateWarningDialog(...)

Instantiation:
Functions/Macros:

XmCreateWarningDialog(),XmMessageBoxGetChild()

Description
AWarningDialogisacompoundobjectcreatedbyacalltoXmCreateWarningDialog()thatanapplicationcanusetowarntheuseraboutapotentially
hazardousaction.AWarningDialogconsistsofaDialogShellwithanunmanagedMessageBoxwidgetasitschild.TheMessageBoxresourceXmNdialogTypeis
settoXmDIALOG_WARNING.
AWarningDialogincludesfourcomponents:asymbol,amessage,threebuttons,andaseparatorbetweenthemessageandthebuttons.Bydefault,thesymbolisan
exclamationpoint.InMotif1.2andlater,thedefaultbuttonlabelscanbelocalized.IntheClocale,andinMotif1.1,thePushButtonsarelabeledOK,Cancel,and
Helpbydefault.
DefaultResourceValues
AWarningDialogsetsthefollowingdefaultvaluesforMessageBoxresources:
Name

Default

XmNdialogType

XmDIALOG_WARNING

XmNsymbolPixmap

xm_warning

WidgetHierarchy
WhenaWarningDialogiscreatedwithaspecifiedname,theDialogShellisnamedname_popupandtheMessageBoxiscalledname.
SeeAlso
XmCreateObject(1),XmMessageBoxGetChild(1),XmDialogShell(2),XmMessageBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1014

XmWorkingDialog
MotifandXtWidgetClasses
Name
XmWorkingDialoganunmanagedMessageBoxasachildofaDialogShell.
Synopsis
PublicHeader:

<Xm/MessageB.h>
widget=XmCreateWorkingDialog(...)

Instantiation:
Functions/Macros:

XmCreateWorkingDialog(),XmMessageBoxGetChild()

Description
AWorkingDialogisacompoundobjectcreatedbyacalltoXmCreateWorkingDialog()thatanapplicationcanusetowarntheuseraboutapotentially
hazardousaction.AWorkingDialogconsistsofaDialogShellwithanunmanagedMessageBoxwidgetasitschild.TheMessageBoxresourceXmNdialogTypeis
settoXmDIALOG_WORKING.
AWorkingDialogincludesfourcomponents:asymbol,amessage,threebuttons,andaseparatorbetweenthemessageandthebuttons.Bydefault,thesymbolisan
hourglass.InMotif1.2andlater,thedefaultbuttonlabelscanbelocalized.IntheClocale,andinMotif1.1,thePushButtonsarelabeledOK,Cancel,andHelpby
default.
DefaultResourceValues
AWorkingDialogsetsthefollowingdefaultvaluesforMessageBoxresources:
Name

Default

XmNdialogType

XmDIALOG_WORKING

XmNsymbolPixmap

xm_working

WidgetHierarchy
WhenaWorkingDialogiscreatedwithaspecifiedname,theDialogShellisnamedname_popupandtheMessageBoxiscalledname.
SeeAlso
XmCreateObject(1),XmMessageBoxGetChild(1),XmDialogShell(2),XmMessageBox(2).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1015

PARTIII
MOTIFCLIENTS
ThissectiondescribestheMotifclients:mwm,uil,andxmbind.Thefirstreferencepage,Introduction,explainstheformatandcontentsofeachofthefollowingpages.

InThisSection:
Introduction
mwm
uil
xmbind

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1017

Introduction
MotifClients
ThispagedescribestheformatandcontentsofeachreferencepageinSection3,whichcoverstheMotifclients.
Name
Clientabriefdescriptionoftheclient.
Syntax
Thissectiondescribesthecommandlinesyntaxforinvokingtheclient.Anythinginboldtypeshouldbetypedexactlyasshown.Itemsinitalicsareparameters
thatshouldbereplacedbyactualvalueswhenyouenterthecommand.Anythingenclosedinbracketsisoptional.
Availability
ThissectiondescribestheavailabilityoftheclientacrossvariousversionsofMotif.Thesectionisomittediftheclienthasalwaysbeenpresent.
Description
Thissectionexplainstheoperationoftheclient.Insomecases,additionaldescriptivesectionsappearlateroninthereferencepage.
Options
Thissectionlistsavailablecommandlineoptions.
Environment
Ifpresent,thissectionlistsshellenvironmentvariablesusedbytheclient.ThissectiondoesnotlisttheDISPLAYandXENVIRONMENTvariables,whichareused
byallclients.Thesevariablesareusedasfollows:
DISPLAY
Togetthedefaultdisplayname(specifically,thehost,server/display,andscreen).TheDISPLAYvariabletypicallyhastheform:
hostname:server.screen

XENVIRONMENT
Togetthenameofaresourcefilecontaininghostspecificresources.Ifthisvariableisnotset,theresourcemanagerlooksforafilecalled.Xdefaultshostname
(wherehostnameisthenameofaparticularhost)intheuser'shomedirectory.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1018

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Example
Thissectionprovidesanexampleoftheuseoftheclient.
Bugs
Ifpresent,thissectionlistsanyproblemsthatcouldarisewhenusingtheclient.
SeeAlso
Thissectionrefersyoutorelatedfunctionsandwidgetclasses.Thenumbersinparenthesesfollowingeachreferencerefertothesectionsofthisbookinwhichtheyare
found.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1019

mwm
MotifWindowManager
Name
mwmtheMotifWindowManager.
Syntax
mwm[options]
Description
TheMotifWindowManager,mwm,providesallofthestandardwindowmanagementfunctions.Itallowsyoutomove,resize,iconify/deiconify,maximize,andclose
windowsandicons,focusinputtoawindoworicon,andrefreshthedisplay.mwmprovidesmuchofitsfunctionalityviaaframethat(bydefault)isplacedaround
everywindowonthedisplay.ThemwmframehasthethreedimensionalappearancecharacteristicoftheOSF/Motifgraphicaluserinterface.
Therestofthisreferencepagedescribeshowtocustomizemwm.Itdoesnotprovideinformationonusingmwm.Forinformationonusingthewindowmanager,see
VolumeThree,XWindowSystemUser'sGuide,MotifEdition.
Options
display[host]:server[.screen]
Specifiesthenameofthedisplayonwhichtorunmwm.hostisthehostnameofthephysicaldisplay,serverspecifiestheservernumber,andscreenspecifies
thescreennumber.Eitherorbothofthehostandscreenelementscanbeomitted.Ifhostisomitted,thelocaldisplayisassumed.Ifscreenisomitted,
screen0isassumed(andtheperiodisunnecessary).Thecolonand(display)serverarenecessaryinallcases.
multiscreen
Specifiesthatmwmshouldmanageallscreensonthedisplay.Thedefaultistomanageonlyscreen0.YoucanspecifyanalternatescreenbysettingtheDISPLAY
environmentvariableorusingthedisplayoption.YoucanalsospecifythatmwmmanageallscreensbyassigningavalueofTruetothemultiScreen
resourcevariable.
nameapp_name
Specifiesthenameunderwhichresourcesforthewindowmanagershouldbefound.
screensscreen_name[screen_name]...
Assignsresourcenamestothescreensmwmismanaging.(Bydefault,thescreennumberisusedasthescreen_name.)Ifmwmismanagingasingle

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1020

screen,onlythefirstnameinthelistisused.Ifmwmismanagingmultiplescreens,thenamesareassignedtothescreensinorder,startingwithscreen0.Ifthere
aremorescreensthannames,resourcesfortheremainingscreensareretrievedusingthefirstscreen_name.
xrmresourcestring
Specifiesaresourcenameandvaluetooverrideanydefaults.Thisoptionisveryusefulforsettingresourcesthatdonothaveexplicitcommandlinearguments.
WindowManagerComponents
Themwmwindowframecontainsvariouscomponentsthatperformdifferentfunctions.Thetitlebarstretchesacrossthetopofthewindowandcontainsthetitlearea
andtheminimize,maximize,andwindowmenubuttons.Thetitleareadisplaysthewindowtitleandcanbeusedtomovethewindow.Theminimizebuttoniconifiesthe
window,whilethemaximizebuttonenlargesthewindowtofilltheentirescreen.ThewindowmenubuttonpoststheWindowMenu.Theresizeborderhandles
surroundthewindowtheyareusedtoresizethewindowinaparticulardirection.Awindowcanalsohaveanoptionalmattedecorationbetweentheclientareaand
thewindowframe.Thematteisnotpartofthewindowframeandithasnofunctionality.Attimes,mwmusesdialogboxesorfeedbackwindowstocommunicatewith
theuser.
Aniconisasmallgraphicrepresentationofawindow.Whenawindowisiconifiedusingtheminimizebutton,itisreplacedonthescreenbyitsicon.Iconifying
windowsreducesclutteronthescreen.mwmprovidesaseparatewindow,calltheiconbox,thatcanholdicons.Usingtheiconboxkeepsiconsfromclutteringthe
screen.
Bydefault,mwmusesanexplicitkeyboardselectionpolicy,whichmeansthatonceawindowhasthekeyboardfocus,itkeepsituntilanotherwindowisexplicitly
giventhefocus.Windowscanoverlap,whichmeansthattheyarearrangedinaglobalstackingorderonthescreen.Awindowthatishigherinthestackingorder
obscureswindowsbelowitinthestackingorderiftheyoverlap.Eachapplicationhasitsownlocalstackingordertransientwindowsremainabovetheirparentsby
defaultinthelocalstackingorder.
Customization
LikeanyXapplication,mwmusesresourcestocontrolitsappearanceandbehavior.ThewindowmanagerbuildsitsresourcedatabasejustlikeanyotherXclient.
Mwmistheresourceclassnameformwm.Youcanplacemwmresourcesinyourregularresourcefile(.Xdefaults)inyourhomedirectoryoryoucancreateafile
calledMwm

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1021

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(alsoinyourhomedirectory)formwmresourcesonly.Ifyouplaceconflictingspecificationsinbothfiles,theresourcesin.Xdefaultstakeprecedence.
Thedefaultoperationofthemouse,thekeyboard,andmenusinmwmiscontrolledbyasystemwideresourcedescriptionfile,system.mwmrc.Thisfiledescribesthe
contentsoftheWindowMenuandRootMenu,aswellasthekeyandbuttoncombinationsthatmanagewindows.Tomodifythebehaviorofmwm,youcanedita
copyofthisfileinyourhomedirectory.Theversionofthefileinyourhomedirectoryshouldbecalled.mwmrc,unlessyouspecifyanalternatenameusingthe
configFileresource.
Anmwmresourcedescriptionfileisastandardtextfile.Itemsareseparatedbyblanks,tabs,andnewlines.Alinethatbeginswithanexclamationmark(!)ora
numbersign(#)istreatedasacomment.Ifalineendswithabackslash(\),thesubsequentlineisconsideredacontinuationofthatline.
ComponentAppearanceResources
mwmprovidessomeresourcesthatspecifytheappearanceofparticularwindowmanagercomponents,suchasthewindowframe,menus,andicons.Component
appearanceresourcescanbespecifiedforparticularwindowmanagercomponentsorallcomponents.Tospecifyaresourceforallcomponents,usethefollowing
syntax:
Mwm*resource_name:resource_value

Thewindowmanagercomponentshavethefollowingresourcenamesassociatedwiththem:
Component

Resourcename

Menu

menu

Icon

icon

Clientwindowframe

client

Feedback/dialogbox

feedback

Titlebar

title

Theseresourcenamescanbeusedtospecifyparticularwindowmanagercomponentsinaresourcespecification.Tospecifyaresourceforaspecificcomponent,use
thefollowingsyntax:
Mwm*[component_name]*resource_name:resource_value

Thetitlebarisadescendantoftheclientwindowframe,soyoucanusetitletospecifytheappearanceofthetitlebarseparatelyfromtherestofthewindow
frame.Youcanalsospecifyresourcesforindividualmenusbyusingmenu,followedbythenameofthemenu.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1022

Thefollowingcomponentappearanceresourcesapplytoallwindowmanagercomponents.Unlessadefaultvalueisspecified,thedefaultvariesbasedonsystem
specificssuchasthevisualtypeofthescreen:
background(classBackground)
Specifiesthebackgroundcolor.
backgroundPixmap(classBackgroundPixmap)
Specifiesthebackgroundpixmapofthemwmdecorationwhenthewindowdoesnothavetheinputfocus.
bottomShadowColor(classForeground)
Specifiesthecolortobeusedforthelowerandrightbevelsofthewindowmanagerdecoration.
bottomShadowPixmap(classBottomShadowPixmap)
Specifiesthepixmaptobeusedforthelowerandrightbevelsofthewindowmanagerdecoration.
fontList(classFontList)
Specifiesthefonttobeusedinthewindowmanagerdecoration.Thedefaultisfixed.
foreground(classForeground)
Specifiestheforegroundcolor.
saveUnder(classSaveUnder)
Specifieswhethersaveundersareusedformwmcomponents.ThedefaultvalueisFalse,whichmeansthatsaveundersarenotusedonanywindowmanager
frames.
topShadowColor(classBackground)
Specifiesthecolortobeusedfortheupperandleftbevelsofthewindowmanagerdecoration.
topShadowPixmap(classTopShadowPixmap)
Specifiesthepixmaptobeusedfortheupperandleftbevelsofthewindowmanagerdecoration.
Thefollowingcomponentappearanceresourcesapplytothewindowframeandicons.Unlessadefaultvalueisspecified,thedefaultvariesbasedonsystemspecifics
suchasthevisualtypeofthescreen:
activeBackground(classBackground)
Specifiesthebackgroundcolorofthemwmdecorationwhenthewindowhastheinputfocus.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1023

activeBackgroundPixmap(classActiveBackgroundPixmap)
Specifiesthebackgroundpixmapofthemwmdecorationwhenthewindowhastheinputfocus.
activeBottomShadowColor(classForeground)
Specifiesthebottomshadowcolorofthemwmdecorationwhenthewindowhastheinputfocus.
activeBottomShadowPixmap(classBottomShadowPixmap)
Specifiesthebottomshadowpixmapofthemwmdecorationwhenthewindowhastheinputfocus.
activeForeground(classForeground)
Specifiestheforegroundcolorofthemwmdecorationwhenthewindowhastheinputfocus.
activeTopShadowColor(classBackground)
Specifiesthetopshadowcolorofthemwmdecorationwhenthewindowhastheinputfocus.
activeTopShadowPixmap(classTopShadowPixmap)
SpecifiesthetopshadowPixmapofthemwmdecorationwhenthewindowhastheinputfocus.
GeneralAppearanceandBehaviorResources
mwmalsoprovidesresourcesthatcontroltheappearanceandbehaviorofthewindowmanagerasawhole.Theseresourcesspecifyfeaturessuchasthefocuspolicy,
interactivewindowplacement,andtheiconbox.Tospecifyageneralappearanceandbehaviorresource,usethefollowingsyntax:
Mwm*resource_name:resource_value

Thefollowinggeneralappearanceandbehaviorresourcescanbespecified:
autoKeyFocus(classAutoKeyFocus)
IfTrue(thedefault),whenthefocuswindowiswithdrawnfromwindowmanagementorisiconified,thefocusbouncesbacktothewindowthatpreviouslyhadthe
focus.ThisresourceisavailableonlywhenkeyboardFocusPolicyisexplicit.IfFalse,theinputfocusisnotsetautomatically.autoKeyFocus
andstartupKeyFocusshouldbothbeTruetoworkproperlywithtearoffmenus.
autoRaiseDelay(classAutoRaiseDelay)
Specifiestheamountoftime(inmilliseconds)thatmwmwaitsbeforeraisingawindowafteritreceivestheinputfocus.Thedefaultis500.Thisresourceis

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1024

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

availableonlywhenfocusAutoRaiseisTrueandthekeyboardFocusPolicyispointer.
bitmapDirectory(classBitmapDirectory)
Identifiesthedirectorytobesearchedforbitmapsreferencedbymwmresources(ifanabsolutepathnametothebitmapfileisnotgiven).Thedefault
is/usr/include/X11/bitmaps,whichisconsideredthestandardlocationonmanysystems.Note,however,thatthelocationofthebitmapdirectorymayvaryin
differentenvironments.Ifabitmapisnotfoundinthespecifieddirectory,XBMLANGPATHissearched.
clientAutoPlace(classClientAutoPlace)
Specifiesthelocationofawindowwhentheuserhasnotspecifiedalocation.IfTrue(thedefault),windowsarepositionedwiththeupperleftcornersoftheframes
offsethorizontallyandvertically,sothatnotwowindowscompletelyoverlap.IfFalse,thecurrentlyconfiguredpositionofthewindowisused.Ineithercase,mwm
attemptstoplacethewindowstotallyonscreen.
colormapFocusPolicy(classColormapFocusPolicy)
Specifiesthecolormapfocuspolicy.Takesthreepossiblevalues:keyboard,pointer,andexplicit.Ifkeyboard(thedefault)isspecified,theinput
focuswindowhasthecolormapfocus.Ifexplicitisspecified,acolormapselectionactionisdoneonaclientwindowtosetthecolormapfocustothatwindow.
Ifpointerisspecified,theclientwindowcontainingthepointerhasthecolormapfocus.
configFile(classConfigFile)
Specifiesthepathnameforthemwmstartupfile.Thedefaultstartupfileis.mwmrc.
mwmsearchesfortheconfigurationfileintheuser'shomedirectory.IftheconfigFileresourceisnotspecifiedorthefiledoesnotexist,mwmdefaultstoan
implementationspecificstandarddirectory(thedefaultis/usr/lib/X11/system.mwmrc).
IftheLANGenvironmentvariableisset,mwmlooksfortheconfigurationfileina$LANGsubdirectoryfirst.Forexample,iftheLANGenvironmentvariableis
settoFr(forFrench),mwmsearchesfortheconfigurationfileinthedirectory$HOME/Frbeforeitlooksin$HOME.Similarly,iftheconfigFileresourceis
notspecifiedorthefiledoesnotexist,mwmdefaultsto/usr/lib/X11/$LANG/system.mwmrcbeforeitreads/usr/lib/X11/system.mwmrc.
IftheconfigFilepathnamedoesnotbeginwith~/,mwmconsidersittoberelativetothecurrentworkingdirectory.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1025

deiconifyKeyFocus(classDeiconifyKeyFocus)
IfTrue(thedefault),awindowreceivestheinputfocuswhenitisnormalized(deiconified).ThisresourceappliesonlywhenthekeyboardFocusPolicyis
explicit.
doubleClickTime(classDoubleClickTime)
Specifiesthemaximumtime(inmilliseconds)betweenthetwoclicksofadoubleclick.Thedefaultisthedisplay'smulticlicktime.
enableWarp(classEnableWarp)
IfTrue(thedefault),causesmwmtowarpthepointertothecenteroftheselectedwindowduringresizeandmoveoperationsinvokedusingkeyboardaccelerators.
(Thecursorsymboldisappearsfromitscurrentlocationandreappearsatthecenterofthewindow.)IfFalse,mwmleavesthepointeratitsoriginalplaceonthe
screen,unlesstheuserexplicitlymovesit.
enforceKeyFocus(classEnforceKeyFocus)
IfTrue(thedefault),theinputfocusisalwaysexplicitlysettoselectedwindowsevenifthereisanindicationthattheyare"globallyactive"inputwindows.(An
exampleofagloballyactivewindowisascrollbarthatcanbeoperatedwithoutsettingthefocustothatclient.)Iftheresourceexplicitlysettogloballyactivewindows.
iconAutoPlace(classIconAutoPlace)
Specifieswhetherthewindowmanagerarrangesiconsinaparticularareaofthescreenorplaceseachiconwherethewindowwaswhenitwasiconified.IfTrue
(thedefault),iconsarearrangedinaparticularareaofthescreen,determinedbytheiconPlacementresource.IfFalse,aniconisplacedatthelocationof
thewindowwhenitisiconified.
iconClick(classIconClick)
IfTrue(thedefault),theWindowMenuisdisplayedwhenthepointerisclickedonanicon.
interactivePlacement(classInteractivePlacement)
IfTrue,specifiesthatnewwindowsaretobeplacedinteractivelyonthescreenusingthepointer.Whenaclientisrun,thepointershapechangestoanupperleft
cornercursormovethepointertothelocationyouwantthewindowtoappearandclickthefirstbuttonthewindowisdisplayedintheselectedlocation.IfFalse
(thedefault),windowsareplacedaccordingtotheinitialwindowconfigurationattributes.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1026

keyboardFocusPolicy(classKeyboardFocusPolicy)
Ifexplicitfocusisspecified(thedefault),placingthepointeronawindow(includingtheframe)oriconandpressingthefirstpointerbuttonfocuseskeyboard
inputontheclient.Ifpointerisspecified,thekeyboardinputfocusisdirectedtotheclientwindowonwhichthepointerrests(thepointercanalsorestonthe
frame).
lowerOnIconify(classLowerOnIconify)
IfTrue(thedefault),awindow'siconisplacedonthebottomofthestackwhenthewindowisiconified.IfFalse,theiconisplacedinthestackingorderatthe
sameplaceasitsassociatedwindow.
moveThreshold(classMoveThreshold)
Controlsthesensitivityofdraggingoperations,suchasthoseusedtomovewindowsandiconsonthedisplay.Takesavalueofthenumberofpixelsthatthepointing
deviceismovedwhileabuttonishelddownbeforethemoveoperationisinitiated.Thedefaultis4.Thisresourcehelpspreventawindoworiconfrommovingwhen
youclickordoubleclickandinadvertentlyjostlethepointerwhileabuttonisdown.
multiScreen(classMultiScreen)
IfFalse(thedefault),mwmmanagesonlyasinglescreen.IfTrue,mwmmanagesallscreensonthedisplay.
passButtons(classPassButtons)
Specifieswhetherbuttonpresseventsarepassedtoclientsaftertheeventsareusedtoinvokeawindowmanagerfunctionintheclientcontext.IfFalse(the
default),buttonpressesarenotpassedtotheclient.IfTrue,buttonpressesarepassedtotheclient.Thewindowmanagerfunctionisdoneineithercase.
passSelectButton(classPassSelectButton)
Specifieswhetherselectbuttonpresseventsarepassedtoclientsaftertheeventsareusedtoinvokeawindowmanagerfunctionintheclientcontext.IfTrue(the
default),buttonpressesarepassedtotheclientwindow.IfFalse,buttonpressesarenotpassedtotheclient.Thewindowmanagerfunctionisdoneineithercase.
positionIsFrame(classPositionIsFrame)
SpecifieshowmwmshouldinterpretwindowpositioninformationfromtheWM_NORMAL_HINTSpropertyandfromconfigurationrequests.IfTrue(the
default),theinformationisinterpretedasthepositionofthemwmclientwindowframe.IfFalse,itisinterpretedasbeingthepositionoftheclientareaofthe
window.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1027

positionOnScreen(classPositionOnScreen)
IfTrue(thedefault),specifiesthatwindowsshouldinitiallybeplaced(ifpossible)sothattheyarenotclippedbytheedgeofthescreen.Ifawindowislargerthan
thesizeofthescreen,atleasttheupperleftcornerofthewindowisplacedisonthescreen.IfFalse,windowsareplacedintherequestedpositioneveniftotally
offthescreen.
quitTimeout(classQuitTimeout)
Specifiestheamountoftime(inmilliseconds)thatmwmwaitsforaclienttoupdatetheWM_COMMANDpropertyaftermwmhassentthe
WM_SAVE_YOURSELFmessage.Thedefaultis1000.(Seethef.killfunctionforadditionalinformation.)
raiseKeyFocus(classRaiseKeyFocus)
IfTrue,specifiesthatawindowraisedbymeansofthef.normalize_and_raisefunctionalsoreceivestheinputfocus.Thisfunctionisavailableonlywhen
thekeyboardFocusPolicyisexplicit.ThedefaultisFalse.
screens(classScreens)
Assignsresourcenamestothescreensmwmismanaging.Ifmwmismanagingasinglescreen,onlythefirstnameinthelistisused.Ifmwmismanagingmultiple
screens,thenamesareassignedtothescreensinorder,startingwithscreen0.
showFeedback(classShowFeedback)
Specifieswhethermwmfeedbackwindowsandconfirmationdialogboxesaredisplayed.(Feedbackwindowsareusedtodisplay:windowcoordinatesduring
interactiveplacementandsubsequentmovesanddimensionsduringresizeoperations.Atypicalconfirmationdialogisthewindowdisplayedtoallowtheusertoallow
orcancelawindowmanagerrestartoperation.)
showFeedbackacceptsalistofoptions,eachofwhichcorrespondstothetypeoffeedbackgiveninaparticularcircumstance.Dependingonthesyntaxin
whichtheoptionsareentered,youcaneitherenableordisableafeedbackoption(asexplainedlater).
Thepossiblefeedbackoptionsare:all,whichspecifiesthatmwmshowalltypesoffeedback(thisisthedefault)behavior,whichspecifiesthatfeedbackis
displayedtoconfirmabehaviorswitchkill,whichspecifiesthatfeedbackisdisplayedonreceiptofaKILLsignalmove,whichspecifiesthatabox
containingthecoordinatesofawindoworiconisdisplayedduringamoveoperationplacement,whichspecifiesthataboxcontainingthepositionandsizeof
awindowisdisplayedduringinitial(interactive)placementquit,

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1028

whichspecifiesthatadialogboxisdisplayedsothattheusercanconfirm(orcancel)theproceduretoquitmwmresize,whichspecifiesthataboxcontaining
thewindowsizeisdisplayedduringaresizeoperationrestart,whichdisplaysadialogboxsothattheusercanconfirm(orcancel)anmwmrestart
procedurethenoneoptionspecifiesthatnofeedbackisshown.
Tolimitfeedbacktoparticularcases,youcanuseoneoftwosyntaxes:withthefirstsyntax,youdisablefeedbackinspecifiedcases(allotherdefaultfeedbackis
stillused)withthesecondsyntax,youenablefeedbackonlyinspecifiedcases.Yousupplythisresourcewithalistofoptionstobeenabledordisabled.Ifthefirst
itemisprecededbyaminussign,feedbackisdisabledforalloptionsinthelist.Ifthefirstitemisprecededbyaplussign(ornosignisused),feedbackisenabled
onlyforoptionsinthelist.
startupKeyFocus(classStartupKeyFocus)
IfTrue(thedefault),theinputfocusistransferredtoawindowwhenthewindowismapped(i.e.,initiallymanagedbythewindowmanager).Thisfunctionis
availableonlywhenkeyboardFocusPolicyisexplicit.startupKeyFocusandautoKeyFocusshouldbothbeTruetoworkproperlywith
tearoffmenus.
wMenuButtonClick(classWMenuButtonClick)
IfTrue(thedefault),apointerbuttonclickonthewindowmenubuttondisplaystheWindowMenuandleavesitdisplayed.
wMenuButtonClick2(classWMenuButtonClick2)
IfTrue,doubleclickingonthewindowmenubuttonremovestheclientwindow,whichmeansthatf.killisinvoked.
ScreenSpecificResources
Somemwmresourcescanbeappliedonaperscreenbasis.Tospecifyascreenspecificresource,usethefollowingsyntax:
Mwm*screen_number*resource_name:resource_value

Screenspecificspecificationstakeprecedenceoverspecificationsforallscreens.Screenspecificresourcescanbespecifiedforallscreensusingthefollowingsyntax:
Mwm*resource_name:resource_value

buttonBindings(classButtonBindings)
Identifiesthesetofbuttonbindingstobeusedforwindowmanagementfunctionsmustcorrespondtoasetofbuttonbindingsspecifiedinthemwm

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1029

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

startupfile.Buttonbindingsspecifiedinthestartupfilearemergedwithbuiltindefaultbindings.ThedefaultisDefaultButtonBindings.
cleanText(classCleanText)
Specifieswhethertextthatappearsinmwmtitleandfeedbackwindowsisdisplayedovertheexistingbackgroundpattern.IfTrue(thedefault),textisdrawnwitha
clear(nostipple)background.(Onlythestipplingintheareaimmediatelyaroundthetextiscleared.)Thisenhancesreadability,especiallyonmonochromesystems
whereabackgroundPixmapisspecified.IfFalse,textisdrawnontopoftheexistingbackground.
fadeNormalIcon(classFadeNormalIcon)
IfTrue,aniconisgreyedoutwhenithasbeennormalized.ThedefaultisFalse.
feedbackGeometry(classFeedbackGeometry)
Specifiesthepositionofthesmall,rectangularfeedbackboxthatdisplayscoordinateandsizeinformationduringmoveandresizeoperations.Bydefault,thefeedback
windowappearsinthecenterofthescreen.Thisresourcetakestheargument:
[=]xoffsetyoffset

Withtheexceptionoftheoptionalleadingequalsign,thisstringisidenticaltothesecondportionofthestandardgeometrystring.Notethat
feedbackGeometryallowsyoutospecifylocationonly.Thesizeofthefeedbackwindowisnotconfigurableusingthisresource.Availableasofmwm
version1.2andlater.
frameBorderWidth(classFrameBorderWidth)
Specifiesthewidthinpixelsofawindowframeborder,withoutresizehandles.(Theborderwidthincludesthethreedimensionalshadows.)Thedefaultisdetermined
accordingtoscreenspecifics.
frameStyle
InMotif2.0andlater,specifiestheframeappearanceofdecorationwindowsandborders:thevalueWmRECESSED(thedefault)makesthewindowappear
recessedintotheborder,thevalueWmSLABgivesaflatwindowandborder.
iconBoxGeometry(classIconBoxGeometry)
Specifiestheinitialpositionandsizeoftheiconbox.Takesasitsargumentthestandardgeometrystring:
widthxheightxoffyoff

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1030

wherewidthandheightaremeasuredinicons.Thedefaultgeometrystringis61+00,whichplacesaniconboxsixiconswidebyoneiconhighinthe
lowerleftcornerofthescreen.
Youcanomiteitherthedimensionsorthexandyoffsetsfromthegeometrystringandthedefaultsapply.Iftheoffsetsarenotprovided,theiconPlacement
resourceisusedtodeterminetheinitialplacement.
TheactualscreensizeoftheiconboxdependsontheiconImageMaximumandiconDecorationresources,whichspecifyiconsizeandpadding.The
defaultvalueforsizeis(6icon_width+padding)wideby(1icon_height+padding)high.
iconBoxName(classIconBoxName)
Specifiesthenameunderwhichiconboxresourcesaretobefound.Thedefaultisiconbox.
iconBoxSBDisplayPolicy(classIconBoxSBDisplayPolicy)
Specifieswhatscrollbarsaredisplayedintheiconbox.Theresourcehasthreepossiblevalues:all,vertical,andhorizontal.Ifallisspecified(the
default),bothverticalandhorizontalscrollbarsaredisplayedatalltimes.verticalspecifiesthatasingleverticalscrollbarisdisplayedandsetstheorientationof
theiconboxtohorizontal,regardlessoftheiconBoxGeometryspecification.horizontalspecifiesthatasinglehorizontalscrollbarisdisplayedintheicon
boxandsetstheorientationoftheiconboxtovertical,regardlessoftheiconBoxGeometryspecification.
iconBoxTitle(classIconBoxTitle)
Specifiesthenametobeusedinthetitleareaoftheiconbox.ThedefaultisIcons.
iconDecoration(classIconDecoration)
Specifieshowmuchicondecorationisused.Theresourcevaluetakesfourpossiblevalues(multiplevaluescanalsobesupplied):label,whichspecifiesthatonly
thelabelisdisplayedimage,whichspecifiesthatonlytheimageisdisplayedandactivelabel,whichspecifiesthatalabel(nottruncatedtothewidthofthe
icon)isusedwhentheiconhasthefocus.Thefourthstate,thedefaultstate,ismappedtoacombinationoftheotherthree,dependingoncircumstances.Thereisno
resourceconverterforthisdefaultstateitisachievedbyspecifyingnothing.
Thedefaultdecorationforiconsinaniconboxislabelimage,whichspecifiesthatboththelabelandimagepartsaredisplayed.Thedefaultdecorationfor
individualiconsonthescreenproperisactivelabellabelimage.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1031

iconImageMaximum(classIconImageMaximum)
Specifiesthemaximumsizeoftheiconimage.Takesavalueofwidthxheight(e.g.,8080).Themaximumsizesupportedis128128.Thedefaultis
5050.
iconImageMinimum(classIconImageMinimum)
Specifiestheminimumsizeoftheiconimage.Takesavalueofwidthxheight(e.g.,3648).Theminimumsizesupportedis1616(whichisalsothedefault).
iconPlacement(classIconPlacement)
Specifiesaniconplacementscheme.NotethatthisresourceisonlyusefulwhenuseIconBoxisFalse(thedefault).TheiconPlacementresourcetakesa
valueofthesyntax:
primary_layoutsecondary_layout[tight]

Therearefourpossiblelayoutpolicies.topspecifiesthaticonsareplacedfromthetopofthescreentothebottom,bottomspecifiesabottomtotop
arrangement,leftspecifiesthaticonsareplacedfromthelefttotheright,andrightspecifiesarighttoleftarrangement.Theoptionalargumenttight
specifiesthatthereisnospacebetweenicons.
Theprimary_layoutspecifieswhethericonsareplacedinaroworacolumnandthedirectionofplacement.Thesecondary_layoutspecifies
wheretoplacenewrowsorcolumns.Forexample,avalueoftoprightspecifiesthaticonsshouldbeplacedfromtoptobottomonthescreenandthat
columnsshouldbeaddedfromrighttoleftonthescreen.
Ahorizontal(vertical)layoutvalueshouldnotbeusedforboththeprimary_layoutandthesecondary_layout.Forexample,donotusetopfor
theprimary_layoutandbottomforthesecondary_layout.
Thedefaultplacementisleftbottom(i.e.,iconsareplacedlefttorightonthescreen,withthefirstrowonthebottomofthescreen,andnewrowsare
addedfromthebottomofthescreentothetopofthescreen).
iconPlacementMargin(classIconPlacementMargin)
Setsthedistancefromtheedgeofthescreenatwhichiconsareplaced.Thevalueshouldbegreaterthanorequalto0.Adefaultvalueisusedifaninvaliddistanceis
specified.Thedefaultvalueisequaltothespacebetweeniconsastheyareplacedonthescreen,whichisbasedonmaximizingthenumberoficonsineachrowand
column.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1032

keyBindings(classKeyBindings)
Identifiesthesetofkeybindingstobeusedforwindowmanagementfunctionsmustcorrespondtoasetofkeybindingsspecifiedinthemwmstartupfile.Notethat
keybindingsspecifiedinthestartupfilereplacethebuiltindefaultbindings.ThedefaultisDefaultKeyBindings.
limitResize(classLimitResize)
IfTrue(thedefault),theuserisnotallowedtoresizeawindowtogreaterthanthemaximumsize.
maximumMaximumSize(classMaximumMaximumSize)
Specifiesthemaximumsizeofaclientwindow(assetbytheuserorclient).Takesavalueofwidthxheight(e.g.,10241024)wherewidthandheight
areinpixels.Thedefaultistwicethescreenwidthandheight.
moveOpaque(classMoveOpaque)
IfFalse(thedefault),whenyoumoveawindoworicon,itsoutlineismovedbeforeitisredrawninthenewlocation.IfTrue,theactual(andthus,opaque)
windoworiconismoved.Availableasofmwmversion1.2andlater.
resizeBorderWidth(classResizeBorderWidth)
Specifiesthewidthinpixelsofawindowframeborder,withresizehandles.(Theborderwidthincludesthethreedimensionalshadows.)Thedefaultisdetermined
accordingtoscreenspecifics.
resizeCursors(classResizeCursors)
IfTrue(thedefault),theresizecursorsarealwaysdisplayedwhenthepointerisinthewindowresizeborder.
transientDecoration(classTransientDecoration)
Specifiestheamountofdecorationmwmputsontransientwindows.ThedecorationspecificationisexactlythesameasfortheclientDecoration
(clientspecific)resource.TransientwindowsareidentifiedbytheWM_TRANSIENT_FORproperty,whichisaddedbytheclienttoindicatearelativelytemporary
window.Thedefaultismenutitle,whichspecifiesthattransientwindowshaveresizebordersandatitlebarwithawindowmenubutton.Iftheclientapplication
alsospecifieswhichdecorationsthewindowmanagershouldprovide,mwmusesonlythosefeaturesthatboththeclientandthetransientDecoration
resourcespecify.
transientFunctions(classTransientFunctions)
Specifieswhichwindowmanagementfunctionsareapplicable(ornotapplicable)totransientwindows.Thefunctionspecificationisexactlythesameasforthe
clientFunctions(clientspecific)resource.Thedefaultisminimize

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1033

maximize.Iftheclientapplicationalsospecifieswhichwindowmanagementfunctionsshouldbeapplicable,mwmprovidesonlythosefunctionsthatboththe
clientandthetransientFunctionsresourcespecify.
useIconBox(classUseIconBox)
IfTrue,iconsareplacedinaniconbox.Bydefault,theindividualiconsareplacedontherootwindow.
ClientSpecificResources
Somemwmresourcescanbesettoapplytocertainclientapplicationsorclassesofapplications.Tospecifyaclientspecificresource,usethefollowingsyntax:
Mwm*client_name*resource_name:resource_value

Clientspecificspecificationstakeprecedenceoverspecificationsforallclients.Clientspecificresourcescanbespecifiedforallclientsusingthefollowingsyntax:
Mwm*resource_name:resource_value

Theclassnamedefaultscanbeusedtospecifyresourcesforclientsthathaveanunknownnameandclass.
Thefollowingclientspecificresourcescanbespecified:
clientDecoration(classClientDecoration)
Specifiestheamountofwindowframedecoration.Thedefaultframeiscomposedofseveralcomponentparts:thetitlebar,resizehandles,border,andtheminimize,
maximize,andwindowmenubuttons.YoucanlimittheframedecorationforaclientusingtheclientDecorationresource.
clientDecorationacceptsalistofoptions,eachofwhichcorrespondstoapartoftheclientframe.Theoptionsare:maximize,minimize,
menu,border,title,resize,all,whichencompassesalldecorationspreviouslylisted,andnone,whichspecifiesthatnodecorationsare
used.
Somedecorationsrequirethepresenceofothersifyouspecifysuchadecoration,anydecorationsrequiredwithitareusedautomatically.Specifically,ifanyof
thecommandbuttonsarespecified,atitlebarisalsousedifresizehandlesoratitlebarisspecified,aborderisalsoused.
Bydefault,aclientwindowhasalldecoration.Tospecifyonlycertainpartsofthedefaultframe,youcanuseoneoftwosyntaxes:withthefirstsyntax,you
disablecertainframefeatureswiththesecondsyntax,youenableonlycertainfeatures.YousupplyclientDecorationwithalistofoptionstobeenabled
ordisabled.Ifthefirstitemisprecededbyaminussign,thefeaturesinthelist

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1034

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

aredisabled.Ifthefirstitemisprecededbyaplussign(ornosignisused),onlythosefeatureslistedareenabled.
clientFunctions(classClientFunctions)
Specifieswhethercertainmwmfunctionscanbeinvokedonaclientwindow.Theonlyfunctionsthatcanbecontrolledarethosethatareexecutableusingthepointer
onthedefaultwindowframe.
clientFunctionsacceptsalistofoptions,eachofwhichcorrespondstoanmwmfunction.Theoptionsare:resize,move,minimize,
maximize,close,all,whichencompassesallofthepreviouslylistedfunctions,andnone,whichspecifiesthatnodefaultfunctionsareallowed.
Bydefault,aclientrecognizesallfunctions.Tolimitthefunctionsaclientrecognizes,youcanuseoneoftwosyntaxes:withthefirstsyntax,youdisallowcertain
functionswiththesecondsyntax,youallowonlycertainfunctions.YousupplyclientFunctionswithalistofoptions(correspondingtofunctions)tobe
allowedordisallowed.Ifthefirstitemisprecededbyaminussign,thefunctionsinthelistaredisallowed.Ifthefirstoptionisprecededbyaplussign(ornosignis
used),onlythosefunctionslistedareallowed.
Alessthanobviousrepercussionofdisallowingaparticularfunctionisthattheclientwindowframeisalsoalteredtopreventyourinvokingthatfunction.For
instance,ifyoudisallowthef.resizefunctionforaclient,theclient'sframedoesnotincluderesizeborders.Inaddition,theSizeitemontheWindowMenu,
whichinvokesthef.resizefunction,nolongerappearsonthemenu.
Iftheclientapplicationalsospecifieswhichwindowmanagementfunctionsshouldbeapplicable,mwmprovidesonlythosefunctionsthatboththeclientandthe
clientFunctionsresourcespecify.
focusAutoRaise(classFocusAutoRaise)
IfTrue,awindowisraisedwhenitreceivestheinputfocus.Otherwise,directingfocustoawindowdoesnotaffectthestackingorder.Thedefaultdependsonthe
valueassignedtothekeyboardFocusPolicyresource.IfthekeyboardFocusPolicyisexplicit,thedefaultforfocusAutoRaiseis
True.IfthekeyboardFocusPolicyispointer,thedefaultforfocusAutoRaiseisFalse.
iconImage(classIconImage)
Specifiesthepathnameofabitmapfiletobeusedasaniconimageforaclient.Thedefaultistodisplayaniconimagesuppliedbythewindowman

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1035

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

ager.IftheuseClientIconresourceissettoTrue,aniconimagesuppliedbytheclienttakesprecedenceoveraniconimagesuppliedbytheuser.
iconImageBackground(classBackground)
Specifiesthebackgroundcoloroftheiconimage.ThedefaultisthecolorspecifiedbyMwm*backgroundorMwm*icon*background.
iconImageBottomShadowColor(classForeground)
Specifiesthebottomshadowcoloroftheiconimage.ThedefaultisthecolorspecifiedbyMwm*icon*bottomShadowColor.
iconImageBottomShadowPixmap(classBottomShadowPixmap)
Specifiesthebottomshadowpixmapoftheiconimage.ThedefaultisthepixmapspecifiedbyMwm*icon*bottomShadowPixmap.
iconImageForeground(classForeground)
Specifiestheforegroundcoloroftheiconimage.Thedefaultvariesbasedontheiconbackground.
iconImageTopShadowColor(classBackground)
Specifiesthetopshadowcoloroftheiconimage.ThedefaultisthecolorspecifiedbyMwm*icon*topShadowColor.
iconImageTopShadowPixmap(classTopShadowPixmap)
SpecifiesthetopshadowPixmapoftheiconimage.ThedefaultisthepixmapspecifiedbyMwm*icon*topShadowPixmap.
matteBackground(classBackground)
Specifiesthebackgroundcolorofthematte.ThedefaultisthecolorspecifiedbyMwm*backgroundorMwm*client*background.Thisresourceisonly
relevantifmatteWidthispositive.
matteBottomShadowColor(classForeground)
Specifiesthebottomshadowcolorofthematte.ThedefaultisthecolorspecifiedbyMwm*bottomShadowColoror
Mwm*client*bottomShadowColor.ThisresourceisonlyrelevantifmatteWidthispositive.
matteBottomShadowPixmap(classBottomShadowPixmap)
Specifiesthebottomshadowpixmapofthematte.ThedefaultisthepixmapspecifiedbyMwm*bottomShadowPixmapor
Mwm*client*bottomShadowPixmap.ThisresourceisonlyrelevantifmatteWidthispositive.
matteForeground(classForeground)
Specifiestheforegroundcolorofthematte.ThedefaultisthecolorspecifiedbyMwm*foregroundorMwm*client*foreground.Thisresourceisonly
relevantifmatteWidthispositive.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1036

matteTopShadowColor(classBackground)
Specifiesthetopshadowcolorofthematte.ThedefaultisthecolorspecifiedbyMwm*topShadowColororMwm*client*topShadowColor.This
resourceisonlyrelevantifmatteWidthispositive.
matteTopShadowPixmap(classTopShadowPixmap)
Specifiesthetopshadowpixmapofthematte.ThedefaultisthepixmapspecifiedbyMwm*topShadowPixmaporMwm*client*topShadowPixmap.
ThisresourceisonlyrelevantifmatteWidthispositive.
matteWidth(classMatteWidth)
Specifiesthewidthofthematte.Thedefaultis0,whichmeansnomatteisused.
maximumClientSize(classMaximumClientSize)
Specifieshowawindowistobemaximized,eithertoaspecificsize(widthxheight),orasmuchaspossibleinacertaindirection(verticalor
horizontal).Ifthevalueisoftheformwidthxheight,thewidthandheightareinterpretedintheunitsusedbytheclient.Forexample,xtermmeasures
widthandheightinfontcharactersandlines.
IfmaximumClientSizeisnotspecified,andtheWM_NORMAL_HINTSpropertyisset,thedefaultisobtainedfromit.IfWM_NORMAL_HINTSis
notset,thedefaultisthesize(includingborders)thatfillsthescreen.mwmalsousesmaximumMaximumSizetoconstrainthevalueinthiscase.
useClientIcon(classUseClientIcon)
IfTrue,aniconimagesuppliedbytheclienttakesprecedenceoveraniconimagesuppliedbytheuser.ThedefaultisFalse.
usePPosition(classUsePPosition)
Specifieswhethermwmusesinitialcoordinatessuppliedbytheclientapplication.IfTrue,mwmalwaysusestheprogramspecifiedposition.IfFalse,mwmnever
usestheprogramspecifiedposition.Thedefaultisnonzero,whichmeansthatmwmusesanyprogramspecifiedpositionexcept0,0.Availableasofmwmversion
1.2andlater.
windowMenu(classWindowMenu)
SpecifiesanamefortheWindowMenu(whichmustbedefinedinthestartupfile).ThedefaultisDefaultWindowMenu.
Functions
mwmsupportsanumberoffunctionsthatcanbeboundtodifferentkeyandbuttoncombinationsandassignedtomenusinthemwmresourcedescriptionfile

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1037

(system.mwmrcor.mwmrc).Mostwindowmanagerfunctionscanbeusedinkeybindings,buttonbindings,andmenus.Thefunctiondescriptionsbelownoteany
exceptionstothispolicy.Mostwindowmanagerfunctionscanalsobespecifiedforthreecontexts:root,window,andicon.Therootcontextmeansthat
thefunctionisappliedtotherootwindow,windowmeansthatthefunctionisappliedtotheselectedclientwindow,andiconmeansthatthefunctionisappliedto
theselectedicon.Thefunctiondescriptionsbelownoteanyfunctionsthatcannotbeusedinallthreecontexts.
Whenafunctionisspecifiedwiththecontexticon|windowandyouinvokethefunctionfromtheiconbox,thefunctionappliestotheiconboxitself,rather
thantoanyoftheiconsitcontains.
Afunctionistreatedasf.nopifitisnotavalidfunctionname,ifitisspecifiedinappropriately,orifitisinvokedinaninvalidway.
mwmrecognizesthefollowingfunctions:
f.beep
Causesabeepfromthekeyboard.
f.circle_down[icon|window]
Causesthewindoworicononthetopofthestacktobeloweredtothebottomofthestack.Iftheiconargumentisspecified,thefunctionappliesonlytoicons.If
thewindowargumentisspecified,thefunctionappliesonlytowindows.
f.circle_up[icon|window]
Causesthewindoworicononthebottomofthestacktoberaisedtothetop.Iftheiconargumentisspecified,thefunctionappliesonlytoicons.Ifthewindow
argumentisspecified,thefunctionappliesonlytowindows.
f.exec[command]
![command]
ExecutescommandusingtheshellspecifiedbytheMWMSHELLenvironmentvariable.IfMWMSHELLisnotset,thecommandisexecutedusingtheshell
specifiedbytheSHELLenvironmentvariableotherwise,thecommandisexecutedusing/bin/sh.
f.focus_color
Setsthecolormapfocustoaclientwindow.Ifthisfunctionisinvokedintherootcontext,thedefaultcolormap(specifiedbyXforthescreenwheremwmis
running)isinstalledandthereisnospecificclientwindowcolormapfocus.Forthef.focus_colorfunctiontowork,thecolormapFocusPolicyshould
bespecifiedasexplicitotherwisethefunctionistreatedasf.nop.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1038

f.focus_key
Setstheinputfocustoawindoworicon.Forthef.focus_keyfunctiontowork,thekeyboardFocusPolicyshouldbespecifiedasexplicit.If
keyboardFocusPolicyisnotexplicitorifthefunctionisinvokedintherootcontext,itistreatedasf.nop.
f.kill
Terminatesaclient.ItsendstheWM_DELETE_WINDOWmessagetotheselectedwindowiftheclientapplicationhasrequesteditthroughthe
WM_PROTOCOLSproperty.Theapplicationissupposedtorespondtothemessagebyremovingtheindicatedwindow.IftheWM_SAVE_YOURSELFprotocol
issetupandtheWM_DELETE_WINDOWprotocolisnot,theclientissentamessagethatindicatesthattheclientneedstopreparetobeterminated.Iftheclient
doesnothavetheWM_DELETE_WINDOWorWM_SAVE_YOURSELFprotocolset,thef.killfunctioncausesaclient'sXconnectiontobeterminated.
f.lower[client|within|freeFamily]
Withoutarguments,lowersawindoworicontothebottomofthestack.Bydefault,thecontextinwhichthefunctionisinvokedindicatestothewindoworiconto
lower.Ifanapplicationwindowhasoneormoretransientwindows(e.g.,dialogboxes),thetransientwindowsareloweredwiththeparent(withintheglobalstack)
andremainontopofit.
Iftheclientargumentisspecified,thefunctionisinvokedonthenamedclient.clientmustbetheinstanceorclassnameofaprogram.
Thewithinargumentisusedtoloweratransientwindowwithintheapplication'slocalwindowhierarchyalltransientsremainabovetheparentwindowand
thatwindowremainsinthesamepositionintheglobalwindowstack.Inpractice,thisfunctionisonlyusefulwhentherearetwoormoretransientwindowsand
youwanttoshufflethem.
ThefreeFamilyargumentisusedtoloweratransientbelowitsparentintheapplication'slocalwindowhierarchy.Again,theparentisnotmovedinthe
globalwindowstack.However,ifyouusethisfunctionontheparent,theentirefamilystackisloweredwithintheglobalstack.
f.maximize
Causesawindowtoberedisplayedatitsmaximumsize.Thisfunctioncannotbeinvokedinthecontextrootoronawindowthatisalreadymaximized.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1039

f.menumenu_name
Associatesacascadingmenuwithamenuitemorassociatesamenuwithabuttonorkeybinding.Themenu_nameargumentspecifiesthemenu.
f.minimize
Causesawindowtobeminimized(i.e.,iconified).Whennoiconboxisbeingused,iconsareplacedonthebottomofthestack,whichisgenerallyinthelowerleft
cornerofthescreen.Ifaniconboxisbeingused,iconsareplacedinsidethebox.Thisfunctioncannotbeinvokedinthecontextrootoronaniconifiedwindow.
f.move
Allowsyoutomoveawindowinteractively,usingthepointer.
f.next_cmap
Installsthenextcolormapinthelistofcolormapsforthewindowwiththecolormapfocus.
f.next_key[icon|window|transient]
Withoutanyarguments,thisfunctionadvancestheinputfocustothenextwindoworiconinthestack.Youcanspecifyiconorwindowtomakethefunction
applyonlytoiconsorwindows,respectively.Generally,thefocusismovedtowindowsthatdonothaveanassociatedsecondarywindowthatisapplicationmodal.If
thetransientargumentisspecified,transientwindowsarealsotraversed.Otherwise,ifonlywindowisspecified,focusismovedtothelastwindowina
transientgrouptohavethefocus.Forthisfunctiontowork,keyboardFocusPolicymustbeexplicitotherwise,thefunctionistreatedasf.nop.
f.nop
Specifiesnooperation.
f.normalize
Causesaclientwindowtobedisplayedatitsnormalsize.Thisfunctioncannotbeinvokedinthecontextrootoronawindowthatisalreadyatitsnormalsize.
f.normalize_and_raise
Causestheclientwindowtobedisplayedatitsnormalsizeandraisedtothetopofthestack.Thisfunctioncannotbeinvokedinthecontextrootoronawindow
thatisalreadyatitsnormalsize.
f.pack_icons
Rearrangesiconsinanoptimalfashionbasedonthelayoutpolicybeingused,eitherontherootwindoworintheiconbox.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1040

f.pass_keys
Togglesprocessingofkeybindingsforwindowmanagerfunctions.Whenkeybindingprocessingisdisabled,allkeysarepassedtothewindowwiththekeyboard
inputfocusandnowindowmanagerfunctionsareinvoked.Ifthef.pass_keysfunctionissetuptobeinvokedwithakeybinding,thebindingcanbeusedto
togglekeybindingprocessing.
f.post_wmenu
DisplaystheWindowMenu.Ifakeyisusedtodisplaythemenuandawindowmenubuttonispresent,theupperleftcornerofthemenuisplacedatthelowerleft
cornerofthecommandbutton.Ifnowindowmenubuttonispresent,themenuisplacedintheupperleftcornerofthewindow.
f.prev_cmap
Thisfunctioninstallsthepreviouscolormapinthelistofcolormapsforthewindowwiththecolormapfocus.
f.prev_key[icon|window|transient]
Withoutanyarguments,thisfunctionmovestheinputfocustothepreviouswindoworiconinthestack.Youcanspecifyiconorwindowtomakethefunction
applyonlytoiconsorwindows,respectively.Generally,thefocusismovedtowindowsthatdonothaveanassociatedsecondarywindowthatisapplicationmodal.If
thetransientargumentisspecified,transientwindowsarealsotraversed.Otherwise,ifonlywindowisspecified,focusismovedtothelastwindowina
transientgrouptohavethefocus.Forthisfunctiontowork,keyboardFocusPolicymustbeexplicitotherwise,thefunctionistreatedasf.nop.
f.quit_mwm
Stopsthemwmwindowmanager.NotethatthisfunctiondoesnotstoptheXserver.Thisfunctioncannotbeinvokedfromanonrootmenu.
f.raise[client|within|freeFamily]
Withoutarguments,raisesawindoworicontothetopofthestack.Bydefault,thecontextinwhichthefunctionisinvokedindicatesthewindoworicontoraise.Ifan
applicationwindowhasoneormoretransientwindows(e.g.,dialogboxes),thetransientwindowsareraisedwiththeparent(withintheglobalstack)andremainon
topofit.
Iftheclientargumentisspecified,thefunctionisinvokedonthenamedclient.clientmustbetheinstanceorclassnameofaprogram.
Thewithinargumentisusedtoraiseatransientwindowwithintheapplication'slocalwindowhierarchyalltransientsremainabovetheparentwindow

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1041

andthatwindowremainsinthesamepositionintheglobalwindowstack.Inpractice,thisfunctionisonlyusefulwhentherearetwoormoretransientwindows
andyouwanttoshufflethem.
ThefreeFamilyargumentraisesatransienttothetopoftheapplication'slocalwindowhierarchy.Theparentwindowisalsoraisedtothetopoftheglobal
stack.
f.raise_lower[within|freeFamily]
Raisesaprimaryapplicationwindowtothetopofthestackorlowersawindowtothebottomofthestack,asappropriatetothecontext.
Thewithinargumentisintendedtoraiseatransientwindowwithintheapplication'slocalwindowhierarchy.Alltransientsremainabovetheparentwindowand
theparentwindowshouldalsoremaininthesamepositionintheglobalwindowstack.Ifthetransientisnotobscuredbyanotherwindowinthelocalstack,the
transientwindowisloweredwithinthefamily.
Theprecedingparagraphdescribeshowwithinshouldwork.However,wehavefoundthattheparentwindowdoesnotalwaysremaininthesamepositionin
theglobalwindowstack.
ThefreeFamilyargumentraisesatransienttothetopofthefamilystackandalsoraisestheparentwindowtothetopoftheglobalstack.Ifthetransientis
notobscuredbyanotherwindow,thisfunctionlowersthetransienttothebottomofthefamilystackandlowersthefamilyintheglobalstack.
f.refresh
Redrawsallwindows.
f.refresh_win
Redrawsasinglewindow.
f.resize
Allowsyoutoresizeawindowinteractively,usingthepointer.
f.restart
Restartsthemwmwindowmanager.Thefunctioncausesthecurrentmwmprocesstobestoppedandanewmwmprocesstobestarted.Itcannotbeinvokedfrom
anonrootmenu.
f.restore
Causestheclientwindowtobedisplayedatitsprevioussize.Ifinvokedonanicon,f.restorecausestheicontobeconvertedbacktoawindowatitsprevious
size.Thus,ifthewindowwasmaximized,itisrestoredtothisstate.Ifthewindowwaspreviouslyatitsnormalsize,itisrestoredtothisstate.Ifinvoked

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1042

onamaximizedwindow,thewindowisrestoredtoitsnormalsize.Thisfunctioncannotbeinvokedinthecontextrootoronawindowthatisalreadyatits
normalsize.
f.restore_and_raise
Causestheclientwindowtobedisplayedatitsprevioussizeandraisedtothetopofthestack.Thisfunctioncannotbeinvokedinthecontextrootoronawindow
thatisalreadyatitsnormalsize.
f.screen[next|prev|back|screen_number]
Causesthepointertobewarpedtoanotherscreen,whichisdeterminedbyoneoffourmutuallyexclusiveparameters.Thenextargumentmeansskiptothenext
managedscreen,prevmeansskipbacktothepreviousmanagedscreen,backmeansskiptothelastscreenvisited,andscreen_numberspecifiesa
particularscreen.Screensarenumberedbeginningat0.
f.send_msgmessage_number
Sendsamessageofthetype_MOTIF_WM_MESSAGEStoaclientthemessagetypeisindicatedbythemessage_numberargument.Themessageissent
onlyiftheclient's_MOTIF_WM_MESSAGESpropertyincludesmessage_number.Ifamenuitemissetuptoinvokef.send_msgandthe
message_numberisnotincludedintheclient's_MOTIF_WM_MESSAGESproperty,themenuitemlabelisgreyedout,whichindicatesthatitisnotavailable
forselection.
f.separator
Createsadividerlineinamenu.Anyassociatedlabelisignored.
f.set_behavior
Restartsmwm,togglingbetweenthedefaultbehaviorfortheparticularsystemandtheuser'scustomenvironment.Inanycase,adialogboxaskstheusertoconfirm
orcanceltheaction.Bydefaultthisfunctionisinvokedusingthefollowingkeysequence:ShiftCtrlMeta!.
f.title
Specifiesthetitleofamenu.Thetitlestringisseparatedfromthemenuitemsbyadoubledividerline.
EventSpecification
Inordertospecifybuttonbindings,keybindings,andmenuaccelerators,youneedtobeabletospecifyeventsinthemwmresourcedescriptionfile.Usethefollowing
syntaxtospecifybuttoneventsforbuttonbindings:
[modifier_key...]<button_event>

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1043

Theacceptablevaluesformodifier_keyare:Ctrl,Shift,Alt,Meta,Lock,Mod1,Mod2,Mod3,Mod4,andMod5.mwm
considersAltandMetatobeequivalent.Theacceptablevaluesforbutton_eventare:
Btn1Down

Btn2Down

Btn3Down

Btn4Down

Btn5Down

Btn1Up

Btn2Up

Btn3Up

Btn4Up

Btn5Up

Btn1Click

Btn2Click

Btn3Click

Btn4Click

Btn5Click

Btn1Click2

Btn2Click2

Btn3Click2

Btn4Click2

Btn5Click2

Usethefollowingsyntaxtospecifykeyeventsforkeybindingsandmenuaccelerators:
[modifier_key...]<Key>key_name

AnyX11keysymnameisanacceptablevalueforkey_name.
ButtonBindings
ThebuttonBindingsresourcespecifiesthenameofasetofbuttonbindingsthatcontrolmousebehaviorinmwm.Youcancreateyourownsetofbutton
bindingsoruseoneofthesetsdefinedinsystem.mwmrc.DefaultButtonBindings,ExplicitButtonBindings,or
PointerButtonBindings.Usethefollowingsyntaxtospecifyasetofbuttonbindings:
Buttonsbutton_set_name
{
button`context`function
button`context`function
...
button`context`function
}

Thecontextspecifieswherethepointermustbelocatedforthebuttonbindingtowork.Thecontextisalsousedforwindowmanagerfunctionsthatarecontext
sensitive.Thevalidcontextsforbuttonbindingsareroot,window,icon,title,border,frame,andapp.Thetitlecontextreferstothe
titleareaoftheframe.borderreferstotheframeexclusiveofthetitlebar.framereferstotheentireframe.Theappcontextreferstotheapplicationwindow
proper.Thewindowcontextincludestheapplicationwindowandtheframe.Acontextspecificationcanincludemultiplecontextsuseaverticalbar(|)toseparate
multiplecontextvalues.
KeyBindings
ThekeyBindingsresourcespecifiesthenameofasetofkeybindingsthatcontrolkeyboardbehaviorinmwm.Youcancreateyourownsetofkeybindingsor
usethe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1044

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

defaultkeybindings,DefaultKeyBindings,definedinsystem.mwmrc.Usethefollowingsyntaxtospecifyasetofkeybindings:
Keyskey_set_name
{
key`context`function
key`context`function
...
key`context`function
}

Thecontextspecifieswherethekeyboardfocusmustbeforthekeybindingtowork.Thecontextisalsousedforwindowmanagerfunctionsthatarecontext
sensitive.Thevalidcontextsforkeybindingsareroot,window,icon,title,border,frame,andapp.Thetitle,border,frame,
andappcontextsareallequivalenttowindow.Acontextspecificationcanincludemultiplecontextsuseaverticalbar(|)toseparatemultiplecontextvalues.
Menus
Thewindowmanagerfunctionsf.post_wmenuandf.menupostmenus.Thesefunctionsbothtakethenameofamenutopost.Youcancreateyourown
menusorusethedefaultmenusdefinedinsystem.mwmrc:DefaultRootMenuandDefaultWindowMenu.Usethefollowingsyntaxtospecifyamenu:
Menumenu_name
{
label`[mnemonic]`[accelerator]`function
label`[mnemonic]`[accelerator]`function
...
label`[mnemonic]`[accelerator]`function
}

Eachlineinamenuspecificationindicatesthelabelforthemenuitem,optionalkeyboardmnemonicsandaccelerators,andthewindowmanagerfunctionthatis
performed.labelcanbeastringorabitmapfile.Ifthestringcontainsmultiplewords,itmustbeenclosedinquotationmarks.Abitmapfilespecificationis
precededbyanatsign(@).Amnemonicisspecifiedas_character.Anacceleratorspecificationusesthekeyeventspecificationsyntax.
Thecontextofawindowmanagerfunctionthatisactivatedfromamenuisbasedonhowthemenuisposted.Ifitispostedfromabuttonbinding,thecontextofthe
menuisthecontextofthebuttonbinding.Ifitispostedfromakeybinding,thecontextofthemenuisbasedonthelocationofthekeyboardfocus.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1045

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Environment
mwmusesthefollowingenvironmentvariables:
HOME
Theuser'shomedirectory.
LANG
Thelanguagetobeusedforthemwmmessagecatalogandthemwmstartupfile.
XBMLANGPATH
Usedtosearchforbitmapfiles.
XFILESEARCHPATH
Usedtodeterminethelocationofsystemwideclassresourcefiles.IftheLANGvariableisset,the$LANGsubdirectoryisalsosearched.
XUSERFILESEARCHPATH,XAPPLRESDIR
Usedtodeterminethelocationofuserspecificclassresourcefiles.IftheLANGvariableisset,the$LANGsubdirectoryisalsosearched.
MWMSHELL,SHELL
MWMSHELLspecifiestheshelltousewhenexecutingacommandsuppliedasanargumenttothef.execfunction.IfMWMSHELLisnotset,SHELLisused.
Files
/usr/lib/X11/$LANG/system.mwmrc
/usr/lib/X11/system.mwmrc
/usr/lib/X11/appdefaults/Mwm
$HOME/Mwm
$HOME/$LANG/.mwmrc
$HOME/.mwmrc
$HOME/.motifbind
SeeAlso
XmIsMotifWMRunning(1),XmInstallImage(1),VendorShell(2),xmbind(3).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1046

Uil
UserInterfaceLanguage
Name
uiltheUserInterfaceLanguagecompiler.
Syntax
uil[options]file

Description
TheuilcommandinvokestheUserInterfaceLanguage(UIL)compiler.Ifthefiledoesnotcontainanyerrors,thecompilergeneratesaUserInterfaceDescription
(UID)filethatcontainsacompiledformoftheinputfile.UILisaspecificationlanguagethatcanbeusedtodescribetheinitialstateofauserinterfacethatusesthe
OSF/Motifwidgetset,aswellasotherwidgets.TheuserinterfaceforanapplicationiscreatedatruntimeusingtheMotifResourceManager(Mrm)librarythe
interfaceisbasedoncompiledinterfacedescriptionsstoredinoneormoreUIDfiles.
Options
Ipathname
Specifiesasearchpathforincludefiles.Bydefault,thecurrentdirectoryand/usr/includearesearched.Pathnamesmayberelativeorabsolute.Thepathsspecified
withthisoptionaresearchedinorderafterthecurrentdirectoryandbefore/usr/include.
m
Whenspecifiedwiththevoption,theUILcompilerincludesmachinecodeinthelistingfile.Themachinecodeprovidesbinaryandtextdescriptionsofthedatathat
isstoredintheUIDfile.Thisoptionisusefulfordeterminingexactlyhowthecompilerinterpretsaparticularstatementandhowmuchstorageisusedforthevariables,
declarations,andassignments.
oofile
SpecifiesthenameoftheUIDfiletooutput.ThedefaultComponentisa.uid.ThecustomarysuffixforUIDfilesis.uid.
s
SpecifiesthattheUILcompilersetthelocalebeforecompilinganyfiles.Settingthelocaledeterminesthebehavioroflocaledependentroutineslikecharacterstring
operations.Althoughsettingthelocaleisanimplementationdependentoperation,onANSICbasedsystems,thelocaleissetwiththecall:
setlocale(LC_ALL,"")

Seethesetlocale()manpageonyoursystemformoreinformation.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1047

vlfile
DirectstheUILcompilertoproducealistingofthecompilation.Thefileindicatesthenameoftheoutputfile.Ifthisoptionisnotspecified,thecompilerdoesnot
generatealisting.OnUnixsystems,aComponentof/dev/ttyusuallycausesthelistingtobeoutputontheterminalwhereuilwasinvoked.
w
Directsthecompilertosuppresswarningandinformationalmessagesandtoprintonlyerrormessages.Thedefaultbehavioristoprinterror,warningandinformational
messages.
wmdwfile
SpecifiesacompiledWidgetMetaLanguage(WML)descriptionfilethatisloadedinplaceofthedefaultWMLdescription.ThedefaultWMLdescriptionfile
containsadescriptionofalloftheMotifwidgets.ThisoptionisnormallyusedtodebugaWMLdescriptionfilewithoutrebuildingtheUILcompiler.
Environment
TheLANGenvironmentvariableaffectsthewaythattheUILcompilerparsesandgeneratescompoundstrings,fonts,fontsets,andfonttables(fontlists).Theexact
effectisdescribedbytheUILreferencepagesforthesetypes.
Example
%uilomyfile.uidv/dev/ttymyfile.uil
%uilI/project/include/uilomainui.uidmainui.uil

Bugs
IftheLANGenvironmentvariableissettoaninvalidvalueandthesoptionisspecified,theUILcompilercrashes.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1048

Xmbind
VirtualKeyBindings
Name
Xmbindconfigurevirtualkeybindings.
Syntax
xmbind[options][file]

Availability
Motif1.2andlater.
Description
ThexmbindcommandconfiguresthevirtualkeybindingsforMotifapplications.Sincethisactionisperformedbymwmonstartup,xmbindisonlyneededwhen
mwmisnotbeingusedorwhenauserwantstochangethebindingswithoutrestartingmwm.
Whenafileisspecified,itscontentsareusedforthevirtualbindings.Otherwise,xmbindusesthe.motifbindfileintheuser'shomedirectory.Asamplespecificationis
shownbelow:
osfBackSpace:

<Key>BackSpace

osfInsert:

<Key>InsertChar

osfDelete:

<Key>DeleteChar

Ifxmbindcannotfindthe.motifbindfile,itloadsthedefaultvirtualbindingsfortheserver.xmbindsearchesforavendorspecificsetofbindingslocatedusingthefile
xmbind.alias.Ifthisfileexistsintheuser'shomedirectory,itissearchedforapathnameassociatedwiththevendorstringorthevendorstringandvendorrelease.If
thesearchisunsuccessful,Motifcontinueslookingforxmbind.aliasinthedirectoryspecifiedbyXMBINDDIRorin/usr/lib/Xm/bindingsifthevariableisnotset.If
thisfileexists,itissearchedforapathnameasbefore.Ifeithersearchlocatesapathnameandthefileexists,thebindingsinthatfileareused.Anxmbind.aliasfile
containslinesofthefollowingform:
"vendor_string[vendor_release]"bindings_file

Ifxmbindstillhasnotlocatedanybindings,itloadsfixedfallbackdefaultbindings.
TheMotiftoolkitusesamechanismcalledvirtualbindingstomaponesetofkeysymstoanotherset.Thismappingpermitswidgetsandapplicationstouseonesetof
keysymsintranslationtablesapplicationsanduserscanthencustomizethekeysymsusedinthetranslationsbasedontheparticularkeyboardthatisbeingused.
Keysymsthatcanbeusedinthiswayarecalledosfkeysyms.Motifmaintainsamappingbetweentheosfkeysymsandtheactualkeysymsthatrepresentkeysona
particularkeyboard.Seethe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1049

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

IntroductiontoSection2,MotifandXtWidgetClassesformoreinformationaboutvirtualbindings.
Options
display[host]:server[.screen]
Specifiesthenameofthedisplayonwhichtorunxmbind.hostisthehostnameofthephysicaldisplay,serverspecifiestheservernumber,andscreen
specifiesthescreennumber.Eitherorbothofthehostandscreenelementscanbeomitted.Ifhostisomitted,thelocaldisplayisassumed.Ifscreenis
omitted,screen0isassumed(andtheperiodisunnecessary).Thecolonand(display)serverarenecessaryinallcases.
Environment
TheXMBINDDIRenvironmentvariableaffectsthewaythatxmbindsearchesforvendorspecificdefaultvirtualbindings.
SeeAlso
XmTranslateKey(1).

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1051

PARTIV
APPENDIXES
Thispartofthemanualcontainshandylistsoffunctions,aswellasusefulreferenceinformationondatatypes,events,andthelike.

InThisSection:
AppendixA,FunctionSummaries
AppendixB,DataTypes
AppendixC,TableofMotifResources
AppendixD,NewFeaturesinMotif2.1and2.0

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1053

APPENDIXA
FUNCTIONSUMMARIES
Thisquickreferenceisintendedtohelpyoufindandusetherightfunctionforaparticulartask.ItorganizestheSection1referencepagesintotwolists:
Listoffunctionsandmacrosbygroups
Alphabeticallistoffunctionsandmacros

A.1
GroupListingwithBriefDescriptions
Atoms
XmGetAtomName()

Getthestringrepresentationofanatom.

XmInternAtom()

Returnanatomforagivenpropertynamestring.

CascadeButton
XmCascadeButtonGadgetHighlight()

SetthehighlightstateofaCascadeButtonGadget.

XmCascadeButtonHighlight()

SetthehighlightstateofaCascadeButton.

Clipboard
XmClipboardBeginCopy()

Setupstorageforaclipboardcopyoperation.

XmClipboardCancelCopy()

Cancelacopyoperationtotheclipboard.

XmClipboardCopy()

Copyadataitemtotemporarystorageforlatercopyingto
theclipboard.

XmClipboardCopyByName()

Copyadataitempassedbyname.

XmClipboardEndCopy()

Endacopyoperationtotheclipboard.

XmClipboardEndRetrieve()

Endacopyoperationfromtheclipboard.

XmClipboardInquireCount()

Getthenumberofdataitemformatsavailableonthe
clipboard.

XmClipboardInquireFormat()

Getthespecifiedclipboarddataformatname.

XmClipboardInquireLength()

Getthelengthofthedataitemontheclipboard.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1054

XmClipboardInquirePendingItems()

GetalistofpendingdataID/privateIDpairs.

XmClipboardLock()

Locktheclipboard.

XmClipboardRegisterFormat()

Registeranewformatforclipboarddataitems.

XmClipboardRetrieve()

Retrieveadataitemfromtheclipboard.

XmClipboardStartCopy()

Setupstorageforaclipboardcopyoperation.

XmClipboardStartRetrieve()

Startaclipboardretrievaloperation.

XmClipboardUndoCopy()

Removethelastitemcopiedtotheclipboard.

XmClipboardUnlock()

Unlocktheclipboard.

XmClipboardWithdrawFormat()

Indicatethatanapplicationdoesnotwanttosupplyadata
itemanylonger.

Colors
XmChangeColor()

Updatethecolorsforawidget.

XmGetColorCalculation()

Gettheprocedurethatcalculatesdefaultcolors.

XmGetColors()

Gettheforeground,select,andshadowcolors.

XmSetColorCalculation()

Settheprocedurethatcalculatesdefaultcolors.

ComboBox
XmComboBoxAddItem()

AddacompoundstringtotheComboBoxlist.

XmComboBoxDeletePos()

DeleteanitematthespecifiedpositionfromaComboBox
list.

XmComboBoxSelectItem()

SelectanitemfromaComboBoxlist.

XmComboBoxSetItem()

SelectandmakevisibleanitemfromaComboBoxlist.

XmComboBoxUpdate()

UpdatetheComboBoxlistafterchangestocomponent
widgets.

Command
XmCommandAppendValue()

Appendacompoundstringtothecommand.

XmCommandError()

DisplayanerrormessageinaCommandwidget.

XmCommandGetChild()

GetthespecifiedchildofaCommandwidget.

XmCommandSetValue()

Replacethecommandstring.

CompoundStrings
XmCvtByteStreamToXmString()

Convertabytestreamtoacompoundstring.

XmCvtCTToXmString()

Convertcompoundtexttoacompoundstring.

XmCvtTextPropertyToXmStringTable
()

ConvertanXTextPropertytoaStringTable.

XmCvtXmStringTableToTextProperty
()

ConvertanXmStringTabletoanXTextProperty.

XmCvtXmStringToByteStream()

Convertacompoundstringtobytestreamformat.

XmCvtXmStringToCT()

Convertacompoundstringtocompoundtext.

XmMapSegmentEncoding()

Getthecompoundtextencodingformatforafontlist
elementtag.

XmRegisterSegmentEncoding()

Registeracompoundtextencodingformatforafontlist
elementtag.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1055

XmStringBaseline()

Getthebaselinespacingforacompoundstring.

XmStringByteCompare()

Comparetwocompoundstringsbytebybyte.

XmStringByteStreamLength()

Calculatesthelengthofabytestream.

XmStringCompare()

Comparetwocompoundstrings.

XmStringComponentCreate()

Createacompoundstringconsistingofasingle
component.

XmStringConcat()

Concatenatetwocompoundstrings.

XmStringConcatAndFree()

Concatenatetwocompoundstrings.

XmStringCopy()

Copyacompoundstring.

XmStringCreate()

Createacompoundstring.

XmStringCreateLocalized()

Createacompoundstringinthecurrentlocale.

XmStringCreateLtoR()

Createacompoundstring.

XmStringCreateSimple()

Createacompoundstringinthecurrentlanguage
environment.

XmStringDirectionCreate()

Createacompoundstringcontainingadirection
component.

XmStringDirectionToDirection()

Convertastringdirectiontoadirection.

XmStringDraw()

Drawacompoundstring.

XmStringDrawImage()

Drawacompoundstring.

XmStringDrawUnderline()

Drawacompoundstringwithanunderlinedsubstring.

XmStringEmpty()

Determinewhethertherearetextsegmentsinacompound
string.

XmStringExtent()

Getthesmallestrectanglethatcontainsacompoundstring.

XmStringFree()

Freethememoryusedbyacompoundstring.

XmStringFreeContext()

Freeastringcontext.

XmStringGenerate()

Generateacompoundstring.

XmStringGetLtoR()

Getatextsegmentfromacompoundstring.

XmStringGetNextComponent()

Retrievesinformationaboutthenextcompoundstring
component.

XmStringGetNextSegment()

Retrievesinformationaboutthenextcompoundstring
segment.

XmStringGetNextTriple()

Retrieveinformationaboutthenextcomponent.

XmStringHasSubstring()

Determinewhetheracompoundstringcontainsa
substring.

XmStringHeight()

Getthelineheightofacompoundstring.

XmStringInitContext()

Createastringcontext.

XmStringIsVoid()

Determinewhethertherearevalidsegmentsinacompound
string.

XmStringLength()

Getthelengthofacompoundstring.

XmStringLineCount()

Getthenumberoflinesinacompoundstring.

XmStringNConcat()

Concatenateaspecifiedportionofacompoundstringto
anothercompoundstring.

XmStringNCopy()

Copyaspecifiedportionofacompoundstring.

XmStringParseText()

Convertastringtoacompoundstring.

XmStringPeekNextComponent()

Returnsthetypeofthenextcompoundstringcomponent.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1056

XmStringPeekNextTriple()

Retrievethetypeofthenextcomponent.

XmStringPutRendition()

Addrenditioncomponentstoacompoundstring.

XmStringSegmentCreate()

Createacompoundstringsegment.

XmStringSeparatorCreate()

Createacompoundstringcontainingaseparator
component.

XmStringTableParseStringArray()

Convertanarrayofstringsintoacompoundstringtable.

XmStringTableProposeTablist()

Createatablistforacompoundstringtable.

XmStringTableToXmString()

Convertcompoundstringtabletocompoundstring.

XmStringTableUnparse()

Convertacompoundstringtabletoanarrayofstrings.

XmStringToXmStringTable()

Convertacompoundstringtoacompoundstringtable.

XmStringUnparse()

Convertacompoundstringintoastring.

XmStringWidth()

Getthewidthofthelongestlineoftextinacompound
string.

Container
XmContainerCopy()

CopytheContainerprimaryselectionontotheclipboard.

XmContainerCopyLink()

CopylinkstotheContainerprimaryselectionontothe
clipboard.

XmContainerCut()

CutstheContainerprimaryselectionontotheclipboard.

XmContainerGetItemChildren()

FindthechildrenofaContaineritem.

XmContainerPaste()

PastestheclipboardselectionintoaContainer.

XmContainerPasteLink()

CopieslinksfromtheclipboardselectionintoaContainer.

XmContainerRelayout()

ForcerelayoutofaContainerwidget.

XmContainerReorder()

ReorderchildrenofaContainer.

Cursors
XmGetMenuCursor()

Getthecurrentmenucursor.

XmSetMenuCursor()

Setthecurrentmenucursor.

Direction
XmDirectionMatch()

Comparetwodirections.

XmDirectionMatchPartial()

Partiallycomparetwodirections.

XmDirectionToStringDirection()

Convertadirectiontoastringdirection.

Display

XmGetXmDisplay()

GettheDisplayobjectforadisplay.

XmUpdateDisplay()

Updatethedisplay.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1057

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

DragandDrop
XmDragCancel()

Canceladragoperation.

XmDragStart()

Startadragoperation.

XmDropSiteConfigureStackingOrder
()

Changethestackingorderofadropsite.

XmDropSiteEndUpdate()

Endanupdateofmultipledropsites.

XmDropSiteQueryStackingOrder()

Getthestackingorderofadropsite.

XmDropSiteRegister()

Registeradropsite.

XmDropSiteRetrieve()

Gettheresourcevaluesforadropsite.

XmDropSiteStartUpdate()

Startanupdateofmultipledropsites.

XmDropSiteUnregister()

Removeadropsite.

XmDropSiteUpdate()

Changetheresourcevaluesforadropsite.

XmDropTransferAdd()

Adddroptransferentriestoadropoperation.

XmDropTransferStart()

Startadropoperation.

XmGetDragContext()

Getinformationaboutadraganddropoperation.

XmTargetsAreCompatible()

Determinewhetherornotthetargettypesofadragsource
andadropsitematch.

FileSelectionBox
XmFileSelectionBoxGetChild()

GetthespecifiedchildofaFileSelectionBoxwidget.

XmFileSelectionDoSearch()

Startadirectorysearch.

FontLists
XmFontListAdd()

Createanewfontlist.

XmFontListAppendEntry()

Appendafontentrytoafontlist.

XmFontListCopy()

Copyafontlist.

XmFontListCreate()

Createafontlist.

XmFontListCreate_r()

Createafontlistinathreadsafemanner.

XmFontListEntryCreate()

Createafontlistentry.

XmFontListEntryCreate_r()

Createafontlistentryinathreadsafemanner.

XmFontListEntryFree()

Freethememoryusedbyafontlistentry.

XmFontListEntryGetFont()

Getthefontinformationfromafontlistentry.

XmFontListEntryGetTag()

Getthetagofafontlistentry.

XmFontListEntryLoad()

Loadafontorcreateafontsetandthencreateafontlist
entry.

XmFontListFree()

Freethememoryusedbyafontlist.

XmFontListFreeFontContext()

Freeafontcontext.

XmFontListGetNextFont()

Retrieveinformationaboutthenextfontlistelement.

XmFontListInitFontContext()

Createafontcontext.

XmFontListNextEntry()

Retrievethenextfontlistentryinafontlist.

XmFontListRemoveEntry()

Removeafontlistentryfromafontlist.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1058

Fonts
XmSetFontUnit()

Setthefontunitvalues.

XmSetFontUnits()

Setthefontunitvalues.

KeyboardHandling
XmTranslateKey()

Convertakeycodetoakeysymusingthedefault
translator.

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

KeyboardTraversal
XmAddTabGroup()

Addawidgettoalistoftabgroups.

XmGetDestination()

Getthecurrentdestinationwidget.

XmGetFocusWidget()

Getthewidgetthathasthekeyboardfocus.

XmGetTabGroup()

Getthetabgroupforawidget.

XmGetVisibility()

Determinewhetherornotawidgetisvisible.

XmIsTraversable()

Determinewhetherornotawidgetcanreceivethe
keyboardfocus.

XmProcessTraversal()

Setthewidgetthathasthekeyboardfocus.

XmRemoveTabGroup()

Removeawidgetfromalistoftabgroups.

InputMethods
XmImCloseXIM()

Closeallinputcontexts.

XmImFreeXIC()

Freeaninputcontext.

XmImGetXIC()

Createaninputcontextforawidget.

XmImGetXIM()

Retrievetheinputmethodforawidget.

XmImMbLookupString()

Retrieveacomposedstringfromaninputmethod.

XmImMbResetIC()

Resetaninputcontext.

XmImRegister()

Registerawidgetwithaninputmanager.

XmImSetFocusValues()

Setthevaluesandfocusforaninputcontext.

XmImSetValues()

Setthevaluesforaninputcontext.

XmImSetXIC()

Registerawidgetwithanexistinginputcontext.

XmImUnregister()

Unregistertheinputcontextforawidget.

XmImUnsetFocus()

Unsetfocusforinputcontext.

XmImVaSetFocusValues()

Setthevaluesandfocusforaninputcontext.

XmImVaSetValues()

Setthevaluesforaninputcontext.

List
XmListAddItem()

Addanitemtoalist.

XmListAddItems()

Additemstoalist.

XmListAddItemUnselected()

Addanitemtoalist.

XmListAddItemsUnselected()

Additemstoalist.

XmListDeleteAllItems()

Deletealloftheitemsfromalist.

XmListDeleteItem()

Deleteanitemfromalist.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1059

XmListDeleteItems()

Deleteitemsfromalist.

XmListDeleteItemsPos()

Deleteitemsstartingataspecifiedpositionfromalist.

XmListDeletePos()

Deleteanitematthespecifiedpositionfromalist.

XmListDeletePositions()

Deleteitemsatthespecifiedpositionsfromalist.

XmListDeselectAllItems()

Deselectallitemsinalist.

XmListDeselectItem()

Deselectanitemfromalist.

XmListDeselectPos()

Deselectanitematthespecifiedpositionfromalist.

XmListGetKbdItemPos()

Getthepositionoftheiteminalistthathasthelocation
cursor.

XmListGetMatchPos()

Getalloccurencesofaniteminalist.

XmListItemExists()

Determineifaspecifieditemisinalist.

XmListItemPos()

Returnthepositionofaniteminalist.

XmListPosSelected()

Checkiftheitemataspecifiedpositionisselectedinalist.

XmListPosToBounds()

Returntheboundingboxofanitematthespecifiedposition
inalist.

XmListReplaceItems()

Replacespecifieditemsinalist.

XmListReplaceItemsPos()

Replacespecifieditemsinalist.

XmListReplaceItemsPosUnselected
()

Replacespecifieditemsinalist.

XmListReplaceItemsUnselected()

Replacespecifieditemsinalist.

XmListReplacePositions()

Replaceitemsatthespecifiedpositionsinalist.

XmListSelectedPos()

Getthepositionsoftheselecteditemsinalist.

XmListSelectItem()

Selectanitemfromalist.

XmListSelectPos()

Selectanitematthespecifiedpositionfromalist.

XmListSetAddMode()

Setaddmodeinalist.

XmListSetBottomItem()

Setthelastvisibleiteminalist.

XmListSetBottomPos()

Setthelastvisibleiteminalist.

XmListSetHorizPos()

Setthehorizontalpositionofalist.

XmListSetItem()

Setthefirstvisibleiteminalist.

XmListSetKbdItemPos()

Setthepositionofthelocationcursorinalist.

XmListSetPos()

Setsthefirstvisibleiteminalist.

XmListUpdateSelectedList()

Updatethelistofselecteditemsinalist.

XmListYToPos()

Getthepositionoftheitematthespecifiedycoordinatein
alist.

MainWindow
XmMainWindowSep1()

GetthewidgetIDofaMainWindowSeparator.

XmMainWindowSep2()

GetthewidgetIDofaMainWindowSeparator.

XmMainWindowSep3()

GetthewidgetIDofaMainWindowSeparator.

XmMainWindowSetAreas()

SpecifythechildrenforaMainWindow.

Menus
XmGetPostedFromWidget()

Getthewidgetthatpostedamenu.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1060

XmGetTearOffControl()

Getthetearoffcontrolforamenu.

XmMenuPosition()

Positionapopupmenu.

XmOptionButtonGadget()

GettheCascadeButtonGadgetinanoptionmenu.

XmOptionLabelGadget()

GettheLabelGadgetinanoptionmenu.

XmRemoveFromPostFromList()

Makeamenuinaccessiblefromawidget.

MessageBox

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmMessageBoxGetChild()

GetthespecifiedchildofaMessageBoxwidget.

Notebook
XmNotebookGetPageInfo()

ReturninformationaboutaNotebookpage.

ParseMapping
XmParseMappingCreate()

Createaparsemapping.

XmParseMappingFree()

Freethememoryusedbyaparsemapping.

XmParseMappingGetValues()

Fetchresourcesfromaparsemappingobject.

XmParseMappingSetValues()

Setsresourcesforaparsemappingobject.

XmParseTableFree()

Freethememoryusedbyaparsetable.

Pixmaps
XmDestroyPixmap()

Removeapixmapfromthepixmapcache.

XmGetPixmap()

Createandreturnapixmap.

XmGetPixmapByDepth()

Createandreturnapixmapofthespecifieddepth.

XmGetScaledPixmap()

Createandreturnascaledpixmap.

XmInstallImage()

Installanimageintheimagecache.

XmUninstallImage()

Removeanimagefromtheimagecache.

Print
XmPrintPopupPDM()

NotifythePrintDisplayManager.

XmPrintSetup()

CreateaPrintShellwidget.

XmPrintToFile()

SaveXPrintServerdatatofile.

XmRedisplayWidget()

Forcewidgetexposureforprinting.

Protocols
XmActivateProtocol()

Activateaprotocol.

XmActivateWMProtocol()

ActivatetheXA_WM_PROTOCOLSprotocol.

XmAddProtocolCallback()

Addclientcallbackstoaprotocol.

XmAddProtocols()

Addprotocolstotheprotocolmanager.

XmAddWMProtocolCallback()

AddclientcallbackstoaXA_WM_PROTOCOLS
protocol.

XmAddWMProtocols()

AddtheXA_WM_PROTOCOLSprotocolstothe
protocolmanager.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1061

XmDeactivateProtocol()

Deactivateaprotocol.

XmDeactivateWMProtocol()

DeactivatetheXA_WM_PROTOCOLSprotocol.

XmRemoveProtocolCallback()

Removeclientcallbackfromaprotocol.

XmRemoveProtocols()

Removeprotocolsfromtheprotocolmanager.

XmRemoveWMProtocolCallback()

RemoveclientcallbacksfromaXA_WM_PROTOCOLS
protocol.

XmRemoveWMProtocols()

RemovetheXA_WM_PROTOCOLSprotocolsfromthe
protocolmanager.

XmSetProtocolHooks()

Setprehooksandposthooksforaprotocol.

XmSetWMProtocolHooks()

Setprehooksandposthooksforthe
XA_WM_PROTOCOLSprotocol.

RenditionTables
XmRenderTableAddRenditions()

Addrenditionstoarendertable.

XmRenderTableCopy()

Copyarendertable.

XmRenderTableCvtFromProp()

Convertfromastringrepresentationintoarendertable.

XmRenderTableCvtToProp()

Convertarendertableintoastringrepresentation.

XmRenderTableFree()

Freethememoryusedbyarendertable.

XmRenderTableGetRendition()

Searcharendertableforamatchingrendition.

XmRenderTableGetRenditions()

Searcharendertableformatchingrenditions.

XmRenderTableGetTags()

Fetchthelistofrenditiontagsfromarendertable.

XmRenderTableRemoveRenditions()

Copyarendertable,excludingspecifiedrenditions.

XmRenditionCreate()

Createarenditionobject.

XmRenditionFree()

Freethememoryusedbyarendition.

XmRenditionRetrieve()

Fetchrenditionobjectresources.

XmRenditionUpdate()

Setrenditionobjectresources.

ResolutionIndependence
XmConvertUnits()

Convertavaluetoaspecifiedunittype.

ResourceConversion
XmConvertStringToUnits()

Convertastringtoaninteger,optionallytranslatingtheunits.

XmCvtStringToUnitType()

Convertastringtoaunittypevalue.

XmRepTypeAddReverse()

Installthereverseconverterforarepresentationtype.

XmRepTypeGetId()

GettheIDnumberofarepresentationtype.

XmRepTypeGetNameList()

Getthelistofvaluenamesforarepresentationtype.

XmRepTypeGetRecord()

Getinformationaboutarepresentationtype.

XmRepTypeGetRegistered()

Gettheregisteredrepresentationtypes.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1062

XmRepTypeInstallTearOffModelConverter()

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

InstalltheresourceconverterforXmNtearOffModel.

XmRepTypeRegister()

Registerarepresentationtyperesource.

XmRepTypeValidValue()

Determinethevalidityofanumericalvaluefora
representationtype.

Scale
XmScaleGetValue()

GettheslidervalueforaScalewidget.

XmScaleSetTicks()

SettickmarksforaScalewidget.

XmScaleSetValue()

SettheslidervalueforaScalewidget.

Screen
XmGetXmScreen()

GettheScreenobjectforascreen.

ScrollBar
XmScrollBarGetValues()

GetinformationaboutthecurrentstateofaScrollBar
widget.

XmScrollBarSetValues()

SetthecurrentstateofaScrollBarwidget.

ScrolledWindow
XmScrolledWindowsSetAreas()

Specifythechildrenforascrolledwindow.

XmScrollVisible()

MakeanobscuredchildofaScrolledWindowvisible.

SelectionBox
XmSelectionBoxGetChild()

GetthespecifiedchildofaSelectionBoxwidget.

SpinBox
XmSimpleSpinBoxAddItem()

AddanitemtoaSimpleSpinBox.

XmSimpleSpinBoxDeletePos()

Deleteanitematthespecifiedpositionfroma
SimpleSpinBox.

XmSimpleSpinBoxSetItem()

SetaniteminaSimpleSpinBox.

XmSpinBoxValidatePosition()

ValidatethecurrentvalueofaSpinBox.

TabLists
XmTabCreate()

Createatabstop.

XmTabFree()

FreethememoryusedbyanXmTabobject.

XmTabGetValues()

FetchthevalueofanXmTabobject.

XmTabListTabCopy()

CopyanXmTabListobject.

XmTabListFree()

Freethememoryusedbyatablist.

XmTabListGetTab()

Retrieveatabfromatablist.

XmTabListInsertTabs()

Inserttabsintoatablist.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1063

XmTabListRemoveTabs()

Copyatablist,excludingspecifiedtabs.

XmTabListReplacePositions()

Copyatablist,replacingtabsatspecifiedpositions.

XmTabListTabCount()

Countthenumberoftabsinatablist.

XmTabSetValue()

Setthevalueofatabstop.

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Text
XmTextClearSelection()

Cleartheprimaryselection.

XmTextCopy()

Copytheprimaryselectiontotheclipboard.

XmTextCopyLink()

Copytheprimaryselectiontotheclipboard.

XmTextCut()

Copytheprimaryselectiontotheclipboardandremovethe
selectedtext.

XmTextDisableRedisplay()

PreventvisualupdateofaTextwidget.

XmTextEnableRedisplay()

AllowvisualupdateofaTextwidget.

XmTextFieldClearSelection()

Cleartheprimaryselection.

XmTextFieldCopy()

Copytheprimaryselectiontotheclipboard.

XmTextFieldCopyLink()

Copytheprimaryselectiontotheclipboard.

XmTextFieldCut()

Copytheprimaryselectiontotheclipboardandremovethe
selectedtext.

XmTextFieldGetBaseline()

Getthepositionofthebaseline.

XmTextFieldGetCursorPosition()

Getthepositionoftheinsertioncursor.

XmTextFieldGetEditable()

Gettheeditpermissionstate.

XmTextFieldGetInsertionPosition
()

Getthepositionoftheinsertioncursor.

XmTextFieldGetLastPosition()

Getthepositionofthelastcharacteroftext.

XmTextFieldGetMaxLength()

Getthemaximumpossiblelengthofatextstring.

XmTextFieldGetSelection()

Getthevalueoftheprimaryselection.

XmTextFieldGetSelectionPosition
()

Getthepositionoftheprimaryselection.

XmTextFieldGetSelectionWcs()

Getthewidecharactervalueoftheprimaryselection.

XmTextFieldGetString()

Getthetextstring.

XmTextFieldGetStringWcs()

Getthewidecharactertextstring.

XmTextFieldGetSubstring()

Getacopyofpartofthetextstring.

XmTextFieldGetSubstringWcs()

Getacopyofpartofthewidecharactertextstring.

XmTextFieldInsert()

Insertastringintothetextstring.

XmTextFieldInsertWcs()

Insertawidecharacterstringintothetextstring.

XmTextFieldPaste()

Inserttheclipboardselection.

XmTextFieldPasteLink()

Inserttheclipboardselection.

XmTextFieldPosToXY()

Getthex,ypositionofacharacterposition.

XmTextFieldRemove()

Deletetheprimaryselection.

XmTextFieldReplace()

Replacepartofthetextstring.

XmTextFieldReplaceWcs()

Replacepartofthewidecharactertextstring.

XmTextFieldSetAddMode()

Settheaddmodestate.

XmTextFieldSetCursorPosition()

Setthepositionoftheinsertioncursor.

XmTextFieldSetEditable()

Settheeditpermissionstate.

XmTextFieldSetHighlight()

Highlighttext.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1064

XmTextFieldSetInsertionPosition
()

Setthepositionoftheinsertioncursor.

XmTextFieldSetMaxLength()

Setthemaximumpossiblelengthofatextstring.

XmTextFieldSetSelection()

Setthevalueoftheprimaryselection.

XmTextFieldSetString()

Setthetextstring.

XmTextFieldSetStringWcs()

Setthewidecharactertextstring.

XmTextFieldShowPosition()

Displaythetextataspecifiedposition.

XmTextFieldXYToPos()

Getthecharacterpositionforanx,yposition.

XmTextFindString()

Findthebeginningpositionofatextstring.

XmTextFindStringWcs()

Findthebeginningpositionofawidecharactertextstring.

XmTextGetBaseline()

Getthepositionofthebaseline.

XmTextGetCenterline()

Gettheheightofverticaltext.

XmTextGetCursorPosition()

Getthepositionoftheinsertioncursor.

XmTextGetEditable()

Gettheeditpermissionstate.

XmTextGetInsertionPosition()

Getthepositionoftheinsertioncursor.

XmTextGetLastPosition()

Getthepositionofthelastcharacteroftext.

XmTextGetMaxLength()

Getthemaximumpossiblelengthofatextstring.

XmTextGetSelection()

Getthevalueoftheprimaryselection.

XmTextGetSelectionPosition()

Getthepositionoftheprimaryselection.

XmTextGetSelectionWcs()

Getthewidecharactervalueoftheprimaryselection.

XmTextGetSource()

Getthetextsource.

XmTextGetString()

Getthetextstring.

XmTextGetStringWcs()

Getthewidecharactertextstring.

XmTextGetSubstring()

Getacopyofpartofthetextstring.

XmTextGetSubstringWcs()

Getacopyofpartofthewidecharactertextstring.

XmTextGetTopCharacter()

Getthepositionofthefirstcharacteroftextthatis
displayed.

XmTextInsert()

Insertastringintothetextstring.

XmTextInsertWcs()

Insertawidecharacterstringintothetextstring.

XmTextPaste()

Inserttheclipboardselection.

XmTextPasteLink()

Inserttheclipboardselection.

XmTextPosToXY()

Getthex,ypositionofacharacterposition.

XmTextRemove()

Deletetheprimaryselection.

XmTextReplace()

Replacepartofthetextstring.

XmTextReplaceWcs()

Replacepartofthewidecharactertextstring.

XmTextScroll()

Scrollthetext.

XmTextSetAddMode()

Settheaddmodestate.

XmTextSetCursorPosition()

Setthepositionoftheinsertioncursor.

XmTextSetEditable()

Settheeditpermissionstate.

XmTextSetHighlight()

Highlighttext.

XmTextSetInsertionPosition()

Setthepositionoftheinsertioncursor.

XmTextSetMaxLength()

Setthemaximumpossiblelengthofatextstring.

XmTextSetSelection()

Setthevalueoftheprimaryselection.

XmTextSetSource()

Setthetextsource.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1065

XmTextSetString()

Setthetextstring.

XmTextSetStringWcs()

Setthewidecharactertextstring.

XmTextSetTopCharacter()

Setthepositionofthefirstcharacteroftextthatis
displayed.

XmTextShowPosition()

Displaythetextataspecifiedposition.

XmTextXYToPos()

Getthecharacterpositionforanx,yposition.

ToggleButton
XmToggleButtonGadgetGetState()

GetthestateofaToggleButtonGadget.

XmToggleButtonGadgetSetState()

SetthestateofaToggleButtonGadget.

XmToggleButtonGadgetSetValue()

SetthevalueofaToggleButtonGadget.

XmToggleButtonGetState()

GetthestateofaToggleButton.

XmToggleButtonSetState()

SetthestateofaToggleButton.

XmToggleButtonSetValue()

SetthevalueofaToggleButton.

UniformTransferModel
XmTransferDone()

Completeadatatransferoperation.

XmTransferSendRequest()

Sendamultipletransferrequest.

XmTransferSetParameters()

Setparametersfornexttransfer.

XmTransferStartRequest()

Initiateamultipletransferrequest.

XmTransferValue()

Transferdatatoadestination.

WidgetClass
XmIsObject()

Determinewhetherawidgetisasubclassofaclass.

WidgetCreation
XmCreateObject()

Createaninstanceofaparticularwidgetclassorcompound
object.

XmVaCreateSimpleCheckBox()

CreateaCheckBoxcompoundobject.

XmVaCreateSimpleMenuBar()

CreateaMenuBarcompoundobject.

XmVaCreateSimpleOptionMenu()

CreateanOptionMenucompoundobject.

XmVaCreateSimplePopupMenu()

CreateaPopupMenucompoundobjectasthechildofa
MenuShell.

XmVaCreateSimplePulldownMenu()

CreateaPulldownMenucompoundobjectasthechildofa
MenuShell.

XmVaCreateSimpleRadioBox()

CreateaRadioBoxcompoundobject.

WidgetInternals
XmGetSecondaryResourceData()

Retrievesecondarywidgetresourcedata.

XmResolveAllPartOffset()

Ensureupwardcompatiblewidgetsandapplications.

XmResolvePartOffsets()

Ensureupwardcompatiblewidgetsandapplications.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1066

WidgetLayout
XmObjectAtPoint()

Determinethechildnearesttoapoint.

XmWidgetGetBaselines()

Getthepositionsofthebaselinesinawidget.

XmWidgetGetDisplayRect()

Getthedisplayrectangleforawidget.

WidgetSelection
XmTrackingEvent()

Allowformodalselectionofacomponent.

XmTrackingLocate()

Allowformodalselectionofacomponent.

WindowManager

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmIsMotifWMRunning()

CheckwhethertheMotifWindowManager(mwm)is
running.

A.2
AlphabeticalListing
XmActivateProtocol()

Activateaprotocol.

XmActivateWMProtocol()

ActivatetheXA_WM_PROTOCOLSprotocol.

XmAddProtocolCallback()

Addclientcallbackstoaprotocol.

XmAddProtocols()

Addprotocolstotheprotocolmanager.

XmAddTabGroup()

Addawidgettoalistoftabgroups.

XmAddToPostFromList()

Makeamenuaccessiblefromawidget.

XmAddWMProtocolCallback()

AddclientcallbackstoaXA_WM_PROTOCOLS
protocol.

XmAddWMProtocols()

AddtheXA_WM_PROTOCOLSprotocolstothe
protocolmanager.

XmCascadeButtonHighlight()

SetthehighlightstateofaCascadeButton.

XmCascadeButtonGadgetHighlight()

SetthehighlightstateofaCascadeButtonGadget.

XmChangeColor()

Updatethecolorsforawidget.

XmClipboardBeginCopy()

Setupstorageforaclipboardcopyoperation.

XmClipboardCancelCopy()

Cancelacopyoperationtotheclipboard.

XmClipboardCopy()

Copyadataitemtotemporarystorageforlatercopyingto
theclipboard.

XmClipboardCopyByName()

Copyadataitempassedbyname.

XmClipboardEndCopy()

Endacopyoperationtotheclipboard.

XmClipboardEndRetrieve()

Endacopyoperationfromtheclipboard.

XmClipboardInquireCount()

Getthenumberofdataitemformatsavailableonthe
clipboard.

XmClipboardInquireFormat()

Getthespecifiedclipboarddataformatname.

XmClipboardInquireLength()

Getthelengthofthedataitemontheclipboard.

XmClipboardInquirePendingItems()

GetalistofpendingdataID/privateIDpairs.

XmClipboardLock()

Locktheclipboard.

XmClipboardRegisterFormat()

Registeranewformatforclipboarddataitems.

XmClipboardRetrieve()

Retrieveadataitemfromtheclipboard.

XmClipboardStartCopy()

Setupstorageforaclipboardcopyoperation.

XmClipboardStartRetrieve()

Startaclipboardretrievaloperation.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1067

XmClipboardUndoCopy()

Removethelastitemcopiedtotheclipboard.

XmClipboardUnlock()

Unlocktheclipboard.

XmClipboardWithdrawFormat()

Indicatethatanapplicationdoesnotwanttosupplyadata
itemanylonger.

XmComboBoxAddItem()

AddacompoundstringtotheComboBoxlist.

XmComboBoxDeletePos()

DeleteanitematthespecifiedpositionfromaComboBox
list.

XmComboBoxSelectItem()

SelectanitemfromaComboBoxlist.

XmComboBoxSetItem()

SelectandmakevisibleanitemfromaComboBoxlist.

XmComboBoxUpdate()

UpdatetheComboBoxlistafterchangestocomponent
widgets.

XmCommandAppendValue()

Appendacompoundstringtothecommand.

XmCommandError()

DisplayanerrormessageinaCommandwidget.

XmCommandGetChild()

GetthespecifiedchildofaCommandwidget.

XmCommandSetValue()

Replacethecommandstring.

XmContainerCopy()

CopytheContainerprimaryselectionontotheclipboard.

XmContainerCopyLink()

CopylinkstotheContainerprimaryselectionontothe
clipboard.

XmContainerCut()

CutstheContainerprimaryselectionontotheclipboard.

XmContainerGetItemChildren()

FindthechildrenofaContaineritem.

XmContainerPaste()

PastestheclipboardselectionintoaContainer.

XmContainerPasteLink()

CopieslinksfromtheclipboardselectionintoaContainer.

XmContainerRelayout()

ForcerelayoutofaContainerwidget.

XmContainerReorder()

ReorderchildrenofaContainer.

XmConvertStringToUnits()

Convertastringtoaninteger,optionallytranslatingtheunits.

XmConvertUnits()

Convertavaluetoaspecifiedunittype.

XmCreateObject()

Createaninstanceofaparticularwidgetclassorcompound
object.

XmCvtByteStreamToXmString()

Convertabytestreamtoacompoundstring.

XmCvtCTToXmString()

Convertcompoundtexttoacompoundstring

XmCvtStringToUnitType()

Convertastringtoaunittypevalue.

XmCvtTextPropertyToXmStringTable
()

ConvertanXTextPropertytoaStringTable.

XmCvtXmStringTableToTextProperty
()

ConvertanXmStringTabletoanXTextProperty.

XmCvtXmStringToByteStream()

Convertacompoundstringtobytestreamformat.

XmCvtXmStringToCT()

Convertacompoundstringtocompoundtext.

XmDeactivateProtocol()

Deactivateaprotocol.

XmDeactivateWMProtocol()

DeactivatetheXA_WM_PROTOCOLSprotocol.

XmDestroyPixmap()

Removeapixmapfromthepixmapcache.

XmDirectionMatch()

Comparetwodirections.

XmDirectionMatchPartial()

Partiallycomparetwodirections.

XmDirectionToStringDirection()

Convertadirectiontoastringdirection.

XmDragCancel()

Canceladragoperation.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1068

XmDragStart()

Startadragoperation.

XmDropSiteConfigureStackingOrder
()

Changethestackingorderofadropsite.

XmDropSiteEndUpdate()

Endanupdateofmultipledropsites.

XmDropSiteQueryStackingOrder()

Getthestackingorderofadropsite.

XmDropSiteRegister()

Registeradropsite.

XmDropSiteRetrieve()

Gettheresourcevaluesforadropsite.

XmDropSiteStartUpdate()

Startanupdateofmultipledropsites.

XmDropSiteUnregister()

Removeadropsite.

XmDropSiteUpdate()

Changetheresourcevaluesforadropsite.

XmDropTransferAdd()

Adddroptransferentriestoadropoperation.

XmDropTransferStart()

Startadropoperation.

XmFileSelectionBoxGetChild()

GetthespecifiedchildofaFileSelectionBoxwidget.

XmFileSelectionDoSearch()

Startadirectorysearch.

XmFontListAdd()

Createanewfontlist.

XmFontListAppendEntry()

Appendafontentrytoafontlist.

XmFontListCopy()

Copyafontlist.

XmFontListCreate()

Createafontlist.

XmFontListCreate_r()

Createafontlistinathreadsafemanner.

XmFontListEntryCreate()

Createafontlistentry.

XmFontListEntryCreate_r()

Createafontlistentryinathreadsafemanner.

XmFontListEntryFree()

Freethememoryusedbyafontlistentry.

XmFontListEntryGetFont()

Getthefontinformationfromafontlistentry.

XmFontListEntryGetTag()

Getthetagofafontlistentry.

XmFontListEntryLoad()

Loadafontorcreateafontsetandthencreateafontlist
entry.

XmFontListFree()

Freethememoryusedbyafontlist.

XmFontListFreeFontContext()

Freeafontcontext.

XmFontListGetNextFont()

Retrieveinformationaboutthenextfontlistelement.

XmFontListInitFontContext()

Createafontcontext.

XmFontListNextEntry()

Retrievethenextfontlistentryinafontlist.

XmFontListRemoveEntry()

Removeafontlistentryfromafontlist.

XmGetAtomName()

Getthestringrepresentationofanatom.

XmGetColorCalculation()

Gettheprocedurethatcalculatesdefaultcolors.

XmGetColors()

Gettheforeground,select,andshadowcolors.

XmGetDestination()

Getthecurrentdestinationwidget.

XmGetDragContext()

Getinformationaboutadraganddropoperation.

XmGetFocusWidget()

Getthewidgetthathasthekeyboardfocus.

XmGetMenuCursor()

Getthecurrentmenucursor.

XmGetPixmap()

Createandreturnapixmap.

XmGetPixmapByDepth()

Createandreturnapixmapofthespecifieddepth.

XmGetPostedFromWidget()

Getthewidgetthatpostedamenu.

XmGetScaledPixmap()

Createandreturnascaledpixmap.

XmGetSecondaryResourceData()

Retrievesecondarywidgetresourcedata.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1069

XmGetTabGroup()

Getthetabgroupforawidget.

XmGetTearOffControl()

Getthetearoffcontrolforamenu.

XmGetVisibility()

Determinewhetherornotawidgetisvisible.

XmGetXmDisplay()

GettheDisplayobjectforadisplay.

XmGetXmScreen()

GettheScreenobjectforascreen.

XmImCloseXIM()

Closeallinputcontexts.

XmImFreeXIC()

Freeaninputcontext.

XmImGetXIC()

Createaninputcontextforawidget.

XmImGetXIM()

Retrievetheinputmethodforawidget.

XmImMbLookupString()

Retrieveacomposedstringfromaninputmethod.

XmImMbResetIC()

Resetaninputcontext.

XmImRegister()

Registerawidgetwithaninputmanager.

XmImSetFocusValues()

Setthevaluesandfocusforaninputcontext.

XmImSetValues()

Setthevaluesforaninputcontext.

XmImSetXIC()

Registerawidgetwithanexistinginputcontext.

XmImUnregister()

Unregistertheinputcontextforawidget.

XmImUnsetFocus()

Unsetfocusforinputcontext.

XmImVaSetFocusValues()

Setthevaluesandfocusforaninputcontext.

XmImVaSetValues()

Setthevaluesforaninputcontext.

XmInstallImage()

Installanimageintheimagecache.

XmInternAtom()

Returnanatomforagivenpropertynamestring.

XmIsMotifWMRunning()

CheckwhethertheMotifWindowManager(mwm)is
running.

XmIsObject()

Determinewhetherawidgetisasubclassofaclass.

XmIsTraversable()

Determinewhetherornotawidgetcanreceivethe
keyboardfocus.

XmListAddItem()

Addanitemtoalist.

XmListAddItems()

Additemstoalist.

XmListAddItemUnselected()

Addanitemtoalist.

XmListAddItemsUnselected()

Additemstoalist.

XmListDeleteAllItems()

Deletealloftheitemsfromalist.

XmListDeleteItem()

Deleteanitemfromalist.

XmListDeleteItems()

Deleteitemsfromalist.

XmListDeleteItemsPos()

Deleteitemsstartingataspecifiedpositionfromalist.

XmListDeletePos()

Deleteanitematthespecifiedpositionfromalist.

XmListDeletePositions()

Deleteitemsatthespecifiedpositionsfromalist.

XmListDeselectAllItems()

Deselectallitemsinalist.

XmListDeselectItem()

Deselectanitemfromalist.

XmListDeselectPos()

Deselectanitematthespecifiedpositionfromalist.

XmListGetKbdItemPos()

Getthepositionoftheiteminalistthathasthelocation
cursor.

XmListGetMatchPos()

Getalloccurencesofaniteminalist.

XmListItemExists()

Determineifaspecifieditemisinalist.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1070

XmListItemPos()

Returnthepositionofaniteminalist.

XmListPosSelected()

Checkiftheitemataspecifiedpositionisselectedinalist.

XmListPosToBounds()

Returntheboundingboxofanitematthespecifiedposition
inalist.

XmListReplaceItems()

Replacespecifieditemsinalist.

XmListReplaceItemsPos()

Replacespecifieditemsinalist.

XmListReplaceItemsPosUnselected
()

Replacespecifieditemsinalist.

XmListReplaceItemsUnselected()

Replacespecifieditemsinalist.

XmListReplacePositions()

Replaceitemsatthespecifiedpositionsinalist.

XmListSelectedPos()

Getthepositionsoftheselecteditemsinalist.

XmListSelectItem()

Selectanitemfromalist.

XmListSelectPos()

Selectanitematthespecifiedpositionfromalist.

XmListSetAddMode()

Setaddmodeinalist.

XmListSetBottomItem()

Setthelastvisibleiteminalist.

XmListSetBottomPos()

Setthelastvisibleiteminalist.

XmListSetHorizPos()

Setthehorizontalpositionofalist.

XmListSetItem()

Setthefirstvisibleiteminalist.

XmListSetKbdItemPos()

Setthepositionofthelocationcursorinalist.

XmListSetPos()

Setsthefirstvisibleiteminalist.

XmListUpdateSelectedList()

Updatethelistofselecteditemsinalist.

XmListYToPos()

Getthepositionoftheitematthespecifiedycoordinatein
alist.

XmMainWindowSep1()

GetthewidgetIDofaMainWindowSeparator.

XmMainWindowSep2()

GetthewidgetIDofaMainWindowSeparator.

XmMainWindowSep3()

GetthewidgetIDofaMainWindowSeparator.

XmMainWindowSetAreas()

SpecifythechildrenforaMainWindow.

XmMapSegmentEncoding()

Getthecompoundtextencodingformatforafontlist
elementtag.

XmMenuPosition()

Positionapopupmenu.

XmMessageBoxGetChild()

GetthespecifiedchildofaMessageBoxwidget.

XmNotebookGetPageInfo()

ReturninformationaboutaNotebookpage.

XmObjectAtPoint()

Determinethechildnearesttoapoint.

XmOptionButtonGadget()

GettheCascadeButtonGadgetinanoptionmenu.

XmOptionLabelGadget()

GettheLabelGadgetinanoptionmenu.

XmParseMappingCreate()

Createaparsemapping.

XmParseMappingFree()

Freethememoryusedbyaparsemapping.

XmParseMappingGetValues()

Fetchresourcesfromaparsemappingobject.

XmParseMappingSetValues()

Setsresourcesforaparsemappingobject.

XmParseTableFree()

Freethememoryusedbyaparsetable.

XmPrintPopupPDM()

NotifythePrintDisplayManager.

XmPrintSetup()

CreateaPrintShellwidget.

XmPrintToFile()

SaveXPrintServerdatatofile.

XmProcessTraversal()

Setthewidgetthathasthekeyboardfocus.

XmRedisplayWidget()

Forcewidgetexposureforprinting.

XmRegisterSegmentEncoding()

Registeracompoundtextencodingformatforafontlist
elementtag.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1071

XmRemoveFromPostFromList()

Makeamenuinaccessiblefromawidget.

XmRemoveProtocolCallback()

Removeclientcallbackfromaprotocol.

XmRemoveProtocols()

Removeprotocolsfromtheprotocolmanager.

XmRemoveTabGroup()

Removeawidgetfromalistoftabgroups.

XmRemoveWMProtocolCallback()

RemoveclientcallbacksfromaXA_WM_PROTOCOLS
protocol.

XmRemoveWMProtocols()

RemovetheXA_WM_PROTOCOLSprotocolsfromthe
protocolmanager.

XmRenderTableAddRenditions()

Addrenditionstoarendertable.

XmRenderTableCopy()

Copyarendertable.

XmRenderTableCvtFromProp()

Convertfromastringrepresentationintoarendertable.

XmRenderTableCvtToProp()

Convertarendertableintoastringrepresentation.

XmRenderTableFree()

Freethememoryusedbyarendertable.

XmRenderTableGetRendition()

Searcharendertableforamatchingrendition.

XmRenderTableGetRenditions()

Searcharendertableformatchingrenditions.

XmRenderTableGetTags()

Fetchthelistofrenditiontagsfromarendertable.

XmRenderTableRemoveRenditions()

Copyarendertable,excludingspecifiedrenditions.

XmRenditionCreate()

Createarenditionobject.

XmRenditionFree()

Freethememoryusedbyarendition.

XmRenditionRetrieve()

Fetchrenditionobjectresources.

XmRenditionUpdate()

Setrenditionobjectresources.

XmRepTypeAddReverse()

Installthereverseconverterforarepresentationtype.

XmRepTypeGetId()

GettheIDnumberofarepresentationtype.

XmRepTypeGetNameList()

Getthelistofvaluenamesforarepresentationtype.

XmRepTypeGetRecord()

Getinformationaboutarepresentationtype.

XmRepTypeGetRegistered()

Gettheregisteredrepresentationtypes.

XmRepTypeInstallTearOffModelConverter()

InstalltheresourceconverterforXmNtearOffModel.

XmRepTypeRegister()

Registerarepresentationtyperesource.

XmRepTypeValidValue()

Determinethevalidityofanumericalvaluefora
representationtype.

XmResolveAllPartOffset()

Ensureupwardcompatiblewidgetsandapplications.

XmResolvePartOffsets()

Ensureupwardcompatiblewidgetsandapplications.

XmScaleGetValue()

GettheslidervalueforaScalewidget.

XmScaleSetTicks()

SettickmarksforaScalewidget.

XmScaleSetValue()

SettheslidervalueforaScalewidget.

XmScrollBarGetValues()

GetinformationaboutthecurrentstateofaScrollBar
widget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1072

XmScrollBarSetValues()

SetthecurrentstateofaScrollBarwidget.

XmScrolledWindowsSetAreas()

Specifythechildrenforascrolledwindow.

XmScrollVisible()

MakeanobscuredchildofaScrolledWindowvisible.

XmSelectionBoxGetChild()

GetthespecifiedchildofaSelectionBoxwidget.

XmSetColorCalculation()

Settheprocedurethatcalculatesdefaultcolors.

XmSetFontUnit()

Setthefontunitvalues.

XmSetFontUnits()

Setthefontunitvalues.

XmSetMenuCursor()

Setthecurrentmenucursor.

XmSetProtocolHooks()

Setprehooksandposthooksforaprotocol.

XmSetWMProtocolHooks()

Setprehooksandposthooksforthe
XA_WM_PROTOCOLSprotocol.

XmSimpleSpinBoxAddItem()

AddanitemtoaSimpleSpinBox.

XmSimpleSpinBoxDeletePos()

Deleteanitematthespecifiedpositionfroma
SimpleSpinBox.

XmSimpleSpinBoxSetItem()

SetaniteminaSimpleSpinBox.

XmSpinBoxValidatePosition()

ValidatethecurrentvalueofaSpinBox.

XmStringBaseline()

Getthebaselinespacingforacompoundstring.

XmStringByteCompare()

Comparetwocompoundstringsbytebybyte.

XmStringByteStreamLength()

Calculatesthelengthofabytestream.

XmStringCompare()

Comparetwocompoundstrings.

XmStringComponentCreate()

Createacompoundstringconsistingofasingle
component.

XmStringConcat()

Concatenatetwocompoundstrings.

XmStringConcatAndFree()

Concatenatetwocompoundstrings.

XmStringCopy()

Copyacompoundstring.

XmStringCreate()

Createacompoundstring.

XmStringCreateLocalized()

Createacompoundstringinthecurrentlocale.

XmStringCreateLtoR()

Createacompoundstring.

XmStringCreateSimple()

Createacompoundstringinthecurrentlanguage
environment.

XmStringDirectionCreate()

Createacompoundstringcontainingadirection
component.

XmStringDirectionToDirection()

Convertastringdirectiontoadirection.

XmStringDraw()

Drawacompoundstring.

XmStringDrawImage()

Drawacompoundstring.

XmStringDrawUnderline()

Drawacompoundstringwithanunderlinedsubstring.

XmStringEmpty()

Determinewhethertherearetextsegmentsinacompound
string.

XmStringExtent()

Getthesmallestrectanglethatcontainsacompoundstring.

XmStringFree()

Freethememoryusedbyacompoundstring.

XmStringFreeContext()

Freeastringcontext.

XmStringGenerate()

Generateacompoundstring.

XmStringGetLtoR()

Getatextsegmentfromacompoundstring.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1073

XmStringGetNextComponent()

Retrievesinformationaboutthenextcompoundstring
component.

XmStringGetNextSegment()

Retrievesinformationaboutthenextcompoundstring
segment.

XmStringGetNextTriple()

Retrieveinformationaboutthenextcomponent.

XmStringHasSubstring()

Determinewhetheracompoundstringcontainsa
substring.

XmStringHeight()

Getthelineheightofacompoundstring.

XmStringInitContext()

Createastringcontext.

XmStringIsVoid()

Determinewhethertherearevalidsegmentsinacompound
string.

XmStringLength()

Getthelengthofacompoundstring.

XmStringLineCount()

Getthenumberoflinesinacompoundstring.

XmStringNConcat()

Concatenateaspecifiedportionofacompoundstringto
anothercompoundstring.

XmStringNCopy()

Copyaspecifiedportionofacompoundstring.

XmStringParseText()

Convertastringtoacompoundstring.

XmStringPeekNextComponent()

Returnsthetypeofthenextcompoundstringcomponent.

XmStringPeekNextTriple()

Retrievethetypeofthenextcomponent.

XmStringPutRendition()

Addrenditioncomponentstoacompoundstring.

XmStringSegmentCreate()

Createacompoundstringsegment.

XmStringSeparatorCreate()

Createacompoundstringcontainingaseparator
component.

XmStringTableParseStringArray()

Convertanarrayofstringsintoacompoundstringtable.

XmStringTableProposeTablist()

Createatablistforacompoundstringtable.

XmStringTableToXmString()

Convertcompoundstringtabletocompoundstring.

XmStringTableUnparse()

Convertacompoundstringtabletoanarrayofstrings.

XmStringToXmStringTable()

Convertacompoundstringtoacompoundstringtable.

XmStringUnparse()

Convertacompoundstringintoastring.

XmStringWidth()

Getthewidthofthelongestlineoftextinacompound
string.

XmTabCreate()

Createatabstop.

XmTabFree()

FreethememoryusedbyanXmTabobject.

XmTabGetValues()

FetchthevalueofanXmTabobject.

XmTabListTabCopy()

CopyanXmTabListobject.

XmTabListFree()

Freethememoryusedbyatablist.

XmTabListGetTab()

Retrieveatabfromatablist.

XmTabListInsertTabs()

Inserttabsintoatablist.

XmTabListRemoveTabs()

Copyatablist,excludingspecifiedtabs.

XmTabListReplacePositions()

Copyatablist,replacingtabsatspecifiedpositions.

XmTabListTabCount()

Countthenumberoftabsinatablist.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1074

XmTabSetValue()

Setthevalueofatabstop.

XmTargetsAreCompatible()

Determinewhetherornotthetargettypesofadragsource
andadropsitematch.

XmTextClearSelection()

Cleartheprimaryselection.

XmTextCopy()

Copytheprimaryselectiontotheclipboard.

XmTextCopyLink()

Copytheprimaryselectiontotheclipboard.

XmTextCut()

Copytheprimaryselectiontotheclipboardandremovethe
selectedtext.

XmTextDisableRedisplay()

PreventvisualupdateofaTextwidget.

XmTextEnableRedisplay()

AllowvisualupdateofaTextwidget.

XmTextFieldClearSelection()

Cleartheprimaryselection.

XmTextFieldCopy()

Copytheprimaryselectiontotheclipboard.

XmTextFieldCopyLink()

Copytheprimaryselectiontotheclipboard.

XmTextFieldCut()

Copytheprimaryselectiontotheclipboardandremovethe
selectedtext.

XmTextFieldGetBaseline()

Getthepositionofthebaseline.

XmTextFieldGetCursorPosition()

Getthepositionoftheinsertioncursor.

XmTextFieldGetEditable()

Gettheeditpermissionstate.

XmTextFieldGetInsertionPosition
()

Getthepositionoftheinsertioncursor.

XmTextFieldGetLastPosition()

Getthepositionofthelastcharacteroftext.

XmTextFieldGetMaxLength()

Getthemaximumpossiblelengthofatextstring.

XmTextFieldGetSelection()

Getthevalueoftheprimaryselection.

XmTextFieldGetSelectionPosition
()

Getthepositionoftheprimaryselection.

XmTextFieldGetSelectionWcs()

Getthewidecharactervalueoftheprimaryselection.

XmTextFieldGetString()

Getthetextstring.

XmTextFieldGetStringWcs()

Getthewidecharactertextstring.

XmTextFieldGetSubstring()

Getacopyofpartofthetextstring.

XmTextFieldGetSubstringWcs()

Getacopyofpartofthewidecharactertextstring.

XmTextFieldInsert()

Insertastringintothetextstring.

XmTextFieldInsertWcs()

Insertawidecharacterstringintothetextstring.

XmTextFieldPaste()

Inserttheclipboardselection.

XmTextFieldPasteLink()

Inserttheclipboardselection.

XmTextFieldPosToXY()

Getthex,ypositionofacharacterposition.

XmTextFieldRemove()

Deletetheprimaryselection.

XmTextFieldReplace()

Replacepartofthetextstring.

XmTextFieldReplaceWcs()

Replacepartofthewidecharactertextstring.

XmTextFieldSetAddMode()

Settheaddmodestate.

XmTextFieldSetCursorPosition()

Setthepositionoftheinsertioncursor.

XmTextFieldSetEditable()

Settheeditpermissionstate.

XmTextFieldSetHighlight()

Highlighttext.

XmTextFieldSetInsertionPosition
()

Setthepositionoftheinsertioncursor.

XmTextFieldSetMaxLength()

Setthemaximumpossiblelengthofatextstring.

XmTextFieldSetSelection()

Setthevalueoftheprimaryselection.

XmTextFieldSetString()

Setthetextstring.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1075

XmTextFieldSetStringWcs()

Setthewidecharactertextstring.

XmTextFieldShowPosition()

Displaythetextataspecifiedposition.

XmTextFieldXYToPos()

Getthecharacterpositionforanx,yposition.

XmTextFindString()

Findthebeginningpositionofatextstring.

XmTextFindStringWcs()

Findthebeginningpositionofawidecharactertextstring.

XmTextGetBaseline()

Getthepositionofthebaseline.

XmTextGetCenterline()

Gettheheightofverticaltext.

XmTextGetCursorPosition()

Getthepositionoftheinsertioncursor.

XmTextGetEditable()

Gettheeditpermissionstate.

XmTextGetInsertionPosition()

Getthepositionoftheinsertioncursor.

XmTextGetLastPosition()

Getthepositionofthelastcharacteroftext.

XmTextGetMaxLength()

Getthemaximumpossiblelengthofatextstring.

XmTextGetSelection()

Getthevalueoftheprimaryselection.

XmTextGetSelectionPosition()

Getthepositionoftheprimaryselection.

XmTextGetSelectionWcs()

Getthewidecharactervalueoftheprimaryselection.

XmTextGetSource()

Getthetextsource.

XmTextGetString()

Getthetextstring.

XmTextGetStringWcs()

Getthewidecharactertextstring.

XmTextGetSubstring()

Getacopyofpartofthetextstring.

XmTextGetSubstringWcs()

Getacopyofpartofthewidecharactertextstring.

XmTextGetTopCharacter()

Getthepositionofthefirstcharacteroftextthatis
displayed.

XmTextInsert()

Insertastringintothetextstring.

XmTextInsertWcs()

Insertawidecharacterstringintothetextstring.

XmTextPaste()

Inserttheclipboardselection.

XmTextPasteLink()

Inserttheclipboardselection.

XmTextPosToXY()

Getthex,ypositionofacharacterposition.

XmTextRemove()

Deletetheprimaryselection.

XmTextReplace()

Replacepartofthetextstring.

XmTextReplaceWcs()

Replacepartofthewidecharactertextstring.

XmTextScroll()

Scrollthetext.

XmTextSetAddMode()

Settheaddmodestate.

XmTextSetCursorPosition()

Setthepositionoftheinsertioncursor.

XmTextSetEditable()

Settheeditpermissionstate.

XmTextSetHighlight()

Highlighttext.

XmTextSetInsertionPosition()

Setthepositionoftheinsertioncursor.

XmTextSetMaxLength()

Setthemaximumpossiblelengthofatextstring.

XmTextSetSelection()

Setthevalueoftheprimaryselection.

XmTextSetSource()

Setthetextsource.

XmTextSetString()

Setthetextstring.

XmTextSetStringWcs()

Setthewidecharactertextstring.

XmTextSetTopCharacter()

Setthepositionofthefirstcharacteroftextthatis
displayed.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1076

XmTextShowPosition()

Displaythetextataspecifiedposition.

XmTextXYToPos()

Getthecharacterpositionforanx,yposition.

XmToggleButtonGetState()

GetthestateofaToggleButton.

XmToggleButtonSetState()

SetthestateofaToggleButton.

XmToggleButtonSetValue()

SetthevalueofaToggleButton.

XmToggleButtonGadgetGetState()

GetthestateofaToggleButtonGadget.

XmToggleButtonGadgetSetState()

SetthestateofaToggleButtonGadget.

XmToggleButtonGadgetSetValue()

SetthevalueofaToggleButtonGadget.

XmTrackingEvent()

Allowformodalselectionofacomponent.

XmTrackingLocate()

Allowformodalselectionofacomponent.

XmTransferDone()

Completeadatatransferoperation.

XmTransferSendRequest()

Sendamultipletransferrequest.

XmTransferSetParameters()

Setparametersfornexttransfer.

XmTransferStartRequest()

Initiateamultipletransferrequest.

XmTransferValue()

Transferdatatoadestination.

XmTranslateKey()

Convertakeycodetoakeysymusingthedefault
translator.

XmUninstallImage()

Removeanimagefromtheimagecache.

XmUpdateDisplay()

Updatethedisplay.

XmVaCreateSimpleCheckBox()

CreateaCheckBoxcompoundobject.

XmVaCreateSimpleMenuBar()

CreateaMenuBarcompoundobject.

XmVaCreateSimpleOptionMenu()

CreateanOptionMenucompoundobject.

XmVaCreateSimplePopupMenu()

CreateaPopupMenucompoundobjectasthechildofa
MenuShell.

XmVaCreateSimplePulldownMenu()

CreateaPulldownMenucompoundobjectasthechildofa
MenuShell.

XmVaCreateSimpleRadioBox()

CreateaRadioBoxcompoundobject.

XmWidgetGetBaselines()

Getthepositionsofthebaselinesinawidget.

XmWidgetGetDisplayRect()

Getthedisplayrectangleforawidget.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1077

APPENDIXB
DATATYPES
ThisappendixsummarizesthedatatypesusedasargumentsorreturnvaluesinMotiftoolkit.XtandXlibdatatypesusedbytheroutinesareincluded.Foreachdata
type,thedescriptionstatestheheaderfilethatdefinesthetype.Datatypes(whichincludesimpletypedefsaswellasstructuresandenums)arelistedalphabetically.
Definedsymbols(forexample,constantsusedtospecifythevalueofamaskorafieldinastructure)orotherdatatypesusedonlytosetstructuremembersarelisted
withthedatatypeinwhichtheyareused.
ArgList
AnArgListisusedforsettingresourcesincallstowidgetcreationroutines.Itisdefinedasfollowsin<X11/Intrinsic.h>:
typedefstruct{
Stringname
XtArgValvalue
}Arg,*ArgList

ThenamefieldistypicallyadefinedconstantoftheformXtNresourcenamefromeither<X11/Stringdefs.h>orawidgetpublicheaderfile.Itidentifiesthe
nameoftheargumenttobeset.ThevaluefieldisanXtArgVal,asystemdependenttypedefchosentobelargeenoughtoholdapointertoafunction.Itis
oftennotlargeenoughtoholdafloatordouble.
Atom
Tooptimizecommunicationwiththeserver,apropertyisreferencedbystringnameonlyonce,andsubsequentlybyauniqueintegerIDcalledanAtom.Predefined
atomsaredefinedin<X11/Xatom.h>usingdefinedsymbolsbeginningwithXA_otheratomscanbeobtainedfromtheserverbycallingtheXlibfunction
XInternAtom().TheMotiftoolkitsupportsanatomcachingmechanismwithXmInternAtom().AtomsareusedbytheMotifprotocolroutines.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1078

Boolean
Atypedeffrom<X11/Intrinsic.h>usedtoindicateTrue(1)orFalse(0).UseeitherthesymbolsTRUEorFALSE,definedin<X11/Intrinsic.h>orTrueor
False,definedin<X11/Xlib.h>.
Cardinal
Atypedeffrom<X11/Intrinsic.h>usedtospecifyanyunsignedintegervalue.
Colormap
AnXID(serverresourceID)from<X11/X.h>thatidentifiesaColormapresourcemaintainedbytheserver.XmGetColors()and
MrmFetchColorLiteral()useColormapvalues.
Cursor
Atypedefin<X11/X.h>foranXID(serverresourceID)thatidentifiesacursorresourcemaintainedbytheserver.ACursorisusedtosetthemenucursorin
Motif.XmTrackingEvent()andXmTrackingLocate()alsohaveaCursorparameter.
Dimension
Atypedeffrom<X11/Intrinsic.h>usedtospecifyanunsignedshortquantity,typicallyusedforwindowsizes.
Display
Astructuredefinedin<X11/Xlib.h>thatcontainsinformationaboutthedisplaytheprogramisrunningon.Displaystructurefieldsshouldnotbeaccesseddirectly
Xlibprovidesanumberofmacrostoreturnessentialvalues.InXt,apointertothecurrentDisplayisreturnedbyacalltoXtDisplay().TheMotifclipboard
routinesandstringdrawingroutines,amongothers,useDisplayparameters.ThisdatatypeshouldnotbeconfusedwiththeXmDisplaywidgetinMotif1.2and
later.
GC
Agraphicscontext,whichisdefinedin<X11/Xlib.h>.AGCisapointertoastructurethatcontainsacopyofthesettingsinaserverresource.Theserverresource,in
turn,containsinformationabouthowtointerpretagraphicsprimitive.ApointertoastructureofthistypeisreturnedbytheXlibcallXCreateGC()ortheXtcall
XtGetGC().TheMotifstringdrawingroutinesuseGCparameters.Themembersofthisstructureshouldnotbeaccesseddirectly.
KeyCode
Aserverdependentcodethatdescribesakeythathasbeenpressed.AKeyCodeisdefinedasanunsignedcharacterin<X11/X.h>.XmTranslateKey()
takesaKeyCodeargument.
KeySym
Aportablerepresentationofthesymbolonthecapofakey.TheMotiftoolkitusesbothvirtualkeysyms(osfkeysyms)andactualkeysyms.Thetoolkitmaps
osfkeysymstoactualkeysyms.IndividualKeySymsaresymbolsdefinedin<X11/keysymdef.h>.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1079

Thekeycodetokeysymlookuptablesaremaintainedbytheserver,andhenceaKeySymisactuallyanXID.XmVaCreateSimpleOptionMenuand
XmTranslateKey()takeKeySymarguments.
Modifiers
Anybitmaskthatdescribesmodifierkeys.TheModifierstypeanditsvaluesaredefinedasfollowsin<X11/Intrinsic.h>and<X11/X.h>:
typedefunsignedintModifiers
#defineShiftMask(1<<0)
#defineLockMask(1<<1)
#defineControlMask(1<<2)
#defineMod1Mask(1<<3)
#defineMod2Mask(1<<4)
#defineMod3Mask(1<<5)
#defineMod4Mask(1<<6)
#defineMod5Mask(1<<7)

XmTranslateKey()takesanargumentoftypeModifiers.
Pixel
Anunsignedlonginteger(definedin<X11/Intrinsic.h>)thatservesasalookupkeytoaColormap.IfthevisualtypeisPseudoColor,itisimplementedasan
indextoaColormapforDirectColor,theRGBvaluesaredirectlycodedintothePixelvalue.TheMotifpixmapandcolorroutinesusePixelvalues.
Pixmap
AnXID(serverresourceID)thatrepresentsatwodimensionalarrayofpixels,usedasanoffscreendrawable,thatis,adrawablewithaspecifiedwidth,height,and
depth(numberofplanes),butnoscreencoordinates.TheMotifpixmaproutinesusePixmapparameters.
Position
Atypedeffrom<X11/Intrinsic.h>usedtospecifyashortquantityusedforxandycoordinates.TheMotifstringdrawingroutines,amongothers,usePosition
values.
Screen
Astructurethatdescribesthecharacteristicsofascreen(oneormoreofwhichmakeupadisplay).Apointertoalistofthesestructuresisamemberofthe
Displaystructure.ApointertoastructureofthistypeisreturnedbyXtScreen()andXGetWindowAttributes().TheMotifpixmaproutines,
amongothers,aswellassomeoftheMrmfunctions,useScreenvalues.ThisdatatypeshouldnotbeconfusedwiththeScreenobjectinMotif1.2andlater.The
structureisshownhere:
typedefstruct{
XExtData*ext_data/*hookforextensiontohangdata*/
struct_XDisplay*display/*backpointertodisplay*/
/*structure*/
Windowroot/*rootwindowID*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1080
intwidth,height/*widthandheightofscreen*/
intmwidth,mheight/*widthandheightinmillimeters*/
intndepths/*numberofdepthspossible*/
Depth*depths/*listofallowabledepthson*/
/*screen*/
introot_depth/*bitsperpixel*/
Visual*root_visual/*rootvisual*/
GCdefault_gc/*GCfortherootrootvisual*/
Colormapcmap/*defaultColormap*/
unsignedlongwhite_pixel
unsignedlongblack_pixel/*whiteandblackpixelvalues*/
intmax_maps,min_maps/*maxandminColormaps*/
intbacking_store/*Never,WhenMapped,Always*/
Boolsave_unders
longroot_input_mask/*initialrootinputmask*/
}Screen

String
Atypedefforchar*.
StringTable
ApointertoalistofStrings.
Time
Atypedefforanunsignedlongvalue(definedin<X11/X.h>)thatcontainsatimevalueinmilliseconds.TheconstantCurrentTimeisinterpretedasthe
timeinmillisecondssincetheserverwasstarted.TheTimedatatypeisusedineventstructuresandasanargumenttosomeMotifclipboard,draganddrop,andtext
selectionroutines.
Visual
Astructurethatdefinesawayofusingcolorresourcesonaparticularscreen.
VoidProc
Theprototypefortheprocedurethatcopiesdatapassedbynametotheclipboard.XmClipboardBeginCopy()specifiesaprocedureofthistype.Itis
definedasfollowsin<Xm/CutPaste.h>:
typedefvoid(*VoidProc)(Widget,int*,int*,int*)
Widgetwidget
int*data_id
int*private_id
int*reason

AVoidProctakesfourarguments.Thefirstargument,widget,isthewidgetpassedtothecallbackroutine,whichisthesamewidgetaspassedto
XmClipboardBeginCopy().Thedata_idargumentistheIDofthedataitemthatisreturnedbyXmClipboardCopy()andprivate_idis
theprivatedatapassedtoXmClipboardCopy().ThereasonargumenttakesthevalueXmCR_CLIPBOARD_DATA_REQUEST,whichindicates
thatthedatamustbecopiedtotheclipboard,orXmCR_CLIPBOARD_DATA_DELETE,whichindicatesthattheclientcan

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1081

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

deletethedatafromtheclipboard.Althoughthelastthreeparametersarepointerstointegers,thevaluesarereadonlyandchangingthemhasnoeffect.
Widget
Astructurereturnedbycallstocreateawidget,suchasXtAppInitialize(),XtCreateWidget(),andXtCreateManagedWidget(),as
wellastheMotifwidgetcreationroutines.Themembersofthisstructureshouldnotbeaccesseddirectlyfromapplicationstheyshouldregarditasanopaquepointer.
TypeWidgetisactuallyapointertoawidgetinstancestructure.Widgetcodeaccessesinstancevariablesfromthisstructure.
WidgetClass
Apointertothewidgetclassstructure,usedtoidentifythewidgetclassinvariousroutinesthatcreatewidgetsorthatreturninformationaboutwidgets.Widgetclass
nameshavetheformnameWidgetClass,withtheexceptionofthewidgetprecursorclasses,ObjectandRectObj,whichhavetheclasspointers
objectClassandrectObjClass,respectively.
WidgetList
ApointertoalistofWidgets.
Window
Aresourcemaintainedbytheserver,andknownontheclientsideonlybyanintegerID.InXt,awidget'swindowcanbereturnedbytheXtWindow()macro.
Giventhewindow,thecorrespondingwidgetcanbereturnedbyXtWindowToWidget().Conversely,givenawidget,thewindowcanbededucedthrough
XtWindowOfObject().TheMotifclipboardandstringdrawingroutinesuseWindowvalues.
XEvent
Aunionofallthirtyeventstructures.Thefirstmemberisalwaysthetype,soitispossibletobranchonthetype,anddoeventspecificprocessingineachbranch.Both
XmDragStart()andXmTrackingEvent()takeXEventparameters.AnXButtonPressedEvent,whichisoneoftheeventstructuresinthe
union,isusedbyXmMenuPosition().
XFontSet
Specifiesallofthefontsneededtodisplaytextinaparticularlocale.TheMotiffontlistentryroutinescanuseXFontSetvalues.
XFontStruct
Specifiesmetricinformation(inpixels)foranentirefont.Thisstructure(definedin<X11/Xlib.h>)isfilledbymeansoftheXlibroutinesXLoadQueryFont()and
XQueryFont().XListFontsWithInfo()alsofillsit,butwithmetricinforma

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1082

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

tionfortheentirefontonly,notforeachcharacter.SomeoftheMotiffontlistroutinesuseXFontStructs.Thestructureisshownhere:
typedefstruct{
XExtData*ext_data/*hookforextensiontohangdata*/
Fontfid/*fontIDforthisfont*/
unsigneddirection/*directionthefontispainted*/
unsignedmin_char_or_byte2/*firstcharacter*/
unsignedmax_char_or_byte2/*lastcharacter*/
unsignedmin_byte1/*firstrowthatexists*/
unsignedmax_byte1/*lastrowthatexists*/
Boolall_chars_exist/*ifallcharactershavenonzero*/
/*size*/
unsigneddefault_char/*chartoprintforundefined*/
/*character*/
intn_properties/*howmanypropertiesthereare*/
XFontProp*properties/*pointertoarrayofadditional*/
/*properties*/
XCharStructmin_bounds/*minimumboundsoverallexistingchar*/
XCharStructmax_bounds/*maximumboundsoverallexistingchar*/
XCharStruct*per_char/*first_chartolast_charinformation*/
intascent/*logicalextentoflargestcharacter*/
/*abovebaseline*/
intdescent/*logicaldescentoflargestcharacter*/
/*belowbaseline*/
}XFontStruct

Thedirectionmemberisspecifiedbyoneofthefollowingconstantsfrom<X11/X.h>:
FontLeftToRight

FontRightToLeft

FontChange

XImage
Describesanareaofthescreen.Thisstructure(definedin<X11/Xlib.h>)isusedbyXmInstallImage()andXmUninstallImage():
typedefstruct_XImage{
intwidth,height/*sizeofimageinpixels*/
intxoffset/*numberofpixelsoffsetinX*/
/*direction*/
intformat/*XYBitmap,XYPixmap,ZPixmap*/
char*data/*pointertoimagedata*/
intbyte_order/*databyteorder:LSBFirst,*/
/*MSBFirst*/
intbitmap_unit/*quant.ofscanline8,16,32*/
intbitmap_bit_order/*LSBFirst,MSBFirst*/
intbitmap_pad/*8,16,32*/
intdepth/*depthofimage*/
intbytes_per_line/*acceleratortonextline*/
intbits_per_pixel/*bitsperpixel(ZPixmaponly)*/
unsignedlongred_mask/*bitsinzarrangement*/
unsignedlonggreen_mask
unsignedlongblue_mask
char*obdata/*hookforobjectroutinestohangon*/
structfuncs{/*imagemanipulationroutines*/
struct_XImage*(*create_image)(void)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1083
int(*destroy_image)(structXImage*)
unsignedlong(*get_pixel)(structXImage*,int,int)
int(*put_pixel)(structXImage*,int,int,
unsignedint,unsignedint)
struct_XImage*(*sub_image)(structXImage*,int,int,
unsignedint,unsignedint)
int(*add_pixel)(structXImage*,long)
}f
}XImage

Theformatmemberisspecifiedbyoneofthefollowingconstantsdefinedin<X11/X.h>:
XYBitmap/*depth1,XYFormat*/
XYPixmap/*pixmapviewedasstackofplanesdepth==drawabledepth*/
ZPixmap/*pixelsinscanlineorderdepth==drawabledepth*/

byte_orderandbitmap_bit_orderarespecifiedbyeitherLSBFirstorMSBFirst,whicharedefinedin<X11/X.h>.
XRectangle
Specifiesarectangle.Thisstructure(definedin<X11/Xlib.h>)isusedbytheMotifstringdrawingroutinesandXmGetDisplayRect():
typedefstruct{
shortx,y
unsignedshortwidth,height
}XRectangle

XmAllocColorProc
TheprototypefortheperscreencolorallocationprocedurewhichisspecifiedthroughtheXmScreenresourceXmNcolorAllocationProc.Itisdefinedas
followsin<Xm/Screen.h>:
typedefvoid(*XmAllocColorProc)(Display*,Colormap,XColor*)
Display*display/*connectiontotheXserver*/
Colormapcolormap/*Colormapinwhichtoallocatecolor*/
XColor*color/*colortoallocate*/

AnXmAllocColorProctakesthreearguments.ThefirstdisplayargumentistheconnectiontotheXserver.ThesecondargumentistheColormapin
whichtoallocatetherequiredcolor.Thethirdcolorargumentiswheretherequiredcolorisspecifiedandreturned.
XmAnyCallbackStruct
ThegenericMotifcallbackstructure.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
}XmAnyCallbackStruct

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1084

XmArrowButtonCallbackStruct
ThecallbackstructurepassedtoArrowButtoncallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
intclick_count/*numberofclicksinmulticlicksequence*/
}XmArrowButtonCallbackStruct

XmButtonType
Anenumeratedtypethatspecifiesthetypeofbuttonusedinasimplemenucreationroutine.Thevalidvaluesforthetypeare:
XmPUSHBUTTON

XmTOGGLEBUTTON

XmRADIOBUTTON

XmCHECKBUTTON

XmCASCADEBUTTON

XmTITLE

XmSEPARATOR

XmDOUBLE_SEPARATOR

XmButtonTypeTable
ApointertoalistofXmButtonTypevalues.
XmClipboardPendingList
AstructureusedincallstoXmClipboardInquirePendingItems()tospecifyadata_id/private_idpair.Itisdefinedasfollowsin
<Xm/CutPaste.h>:
typedefstruct{
longDataId
longPrivateId
}XmClipboardPendingRec,*XmClipboardPendingList

XmColorProc
TheprototypeforthecolorcalculationprocedureusedbyXmGetColorCalculation()andXmSetColorCalculation().Itisdefinedasfollows
in<Xm/Xm.h>:
typedefvoid(*XmColorProc)(XColor*,XColor*,XColor*,
XColor*,XColor*)
XColor*bg_color/*specifiesthebackgroundcolor*/
XColor*fg_color/*returnstheforegroundcolor*/
XColor*sel_color/*returnstheselectcolor*/
XColor*ts_color/*returnsthetopshadowcolor*/
XColor*bs_color/*returnsthebottomshadowcolor*/

AnXmColorProctakesfivearguments.Thefirstargument,bg_color,isapointertoanXColorstructurethatspecifiesthebackgroundcolor.The
red,green,blue,andpixelfieldsinthestructurecontainvalidvalues.TherestoftheargumentsarepointerstoXColorstructuresforthecolorsthat
aretobecalculated.Theprocedurefillsinthered,green,andbluefieldsinthesestructures.
XmComboBoxCallbackStruct
ThecallbackstructurepassedtoComboBoxcallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1085
typedefstruct
{
intreason/*reasonthatthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
XmStringitem_or_text/*theselecteditem*/
intitem_position/*theindexoftheiteminthelist*/
}XmComboBoxCallbackStruct

XmCommandCallbackStruct
ThecallbackstructurepassedtoCommandwidgetcallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*eventstructurethattriggeredcallback*/
XmStringvalue/*thestringcontainedinthecommandarea*/
intlength/*thesizeofthisstring*/
}XmCommandCallbackStruct

XmContainerOutlineCallbackStruct
ThecallbackstructurepassedtoContaineroutlinecallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct
{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
Widgetitem/*containeritemassociatedwithevent*/
unsignedcharnew_outline_state/*therequestedstate*/
}XmContainerOutlineCallbackStruct

XmContainerSelectCallbackStruct
ThecallbackstructurepassedtoContainerselectcallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct
{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
WidgetListselected_items/*thelistofselecteditems*/
intselected_item_count/*thenumberofselecteditems*/
unsignedcharauto_selection_type/*typeofselectionevent*/
}XmContainerSelectCallbackStruct

XmConvertCallbackStruct
ThecallbackstructurepassedtotheXmNconvertCallbackroutinesofwidgetswhentheyareaskedtoconvertaselection.Itisdefinedasfollowsin
<Xm/Transfer.h>:
typedefstruct{
intreason/*reasonthatcallbackisinvoked*/
XEvent*event/*eventthattriggeredcallback*/
Atomselection/*requestedconversionselection*/
Atomtarget/*theconversiontarget*/
XtPointersource_data/*selectionsourceinformation*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1086
XtPointerlocation_data/*informationondatatobe*/
/*transferred*/
intflags/*inputstatusoftheconversion*/
XtPointerparm/*parameterdataforthetarget*/
intparm_format/*formatofparameterdata*/
unsignedlongparm_length/*numberofelementsinparameter*/
/*data*/
Atomparm_type/*thetypeoftheparameterdata*/
intstatus/*outputstatusoftheconversion*/
XtPointervalue/*returnedconversiondata*/
Atomtype/*typeofconversiondatareturned*/
intformat/*formatoftheconversiondata*/
unsignedlonglength/*numberofelementsinconversion*/
/*data*/
}XmConvertCallbackStruct

XmCutPasteProc
Theprototypefortheprocedurethatcopiesdatapassedbynametotheclipboard.XmClipboardStartCopy()specifiesaprocedureofthistype.Itis
definedasfollowsin<Xm/CutPaste.h>:
typedefvoid(*XmCutPasteProc)(Widget,long*,long*,int*)
Widgetwidget
long*data_id
long*private_id
int*reason

AnXmCutPasteProctakesfourarguments.Thefirstargument,widget,isthewidgetpassedtothecallbackroutine,whichisthesamewidgetaspassed
toXmClipboardBeginCopy().Thedata_idargumentistheIDofthedataitemthatisreturnedbyXmClipboardCopy()andprivate_id
istheprivatedatapassedtoXmClipboardCopy().ThereasonargumenttakesthevalueXmCR_CLIPBOARD_DATA_REQUEST,whichindicates
thatthedatamustbecopiedtotheclipboard,orXmCR_CLIPBOARD_DATA_DELETE,whichindicatesthattheclientcandeletethedatafromtheclipboard.
Althoughthelastthreeparametersarepointers,thevaluesarereadonlyandchangingthemhasnoeffect.
XmDestinationCallbackStruct
ThecallbackstructurepassedtotheXmNdestinationCallbackroutinesofwidgetswhentheyarethedestinationofadatatransfer.Itisdefinedasfollows
in<Xm/Transfer.h>:
typedefstruct
{
intreason/*reasonthatcallbackisinvoked*/
XEvent*event/*eventthattriggeredcallback*/
Atomselection/*requestedselectiontype,asan*/
/*atom*/
XtEnumoperation/*thetypeoftransferrequested*/
intflags/*whetherdestinationandsourceare*/
/*same*/
XtPointertransfer_id/*uniqueidentifierfortherequest*/
XtPointerdestination_data/*informationaboutthedestination*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1087
XtPointerlocation_data/*informationaboutthedata*/
Timetime/*timewhentransferoperation*/
/*started*/
}XmDestinationCallbackStruct

XmDirection
Anenumeratedtypethatspecifiesadirection,usedeitherinlayingoutcomponentsofawidgetorinrenderingcompoundstrings.Thevalidvaluesforthetypeare:
XmRIGHT_TO_LEFT_TOP_TO_BOTTOM

XmLEFT_TO_RIGHT_TOP_TO_BOTTOM

XmRIGHT_TO_LEFT_BOTTOM_TO_TOP

XmLEFT_TO_RIGHT_BOTTOM_TO_TOP

XmRIGHT_TO_LEFT

XmLEFT_TO_RIGHT

XmTOP_TO_BOTTOM_RIGHT_TO_LEFT

XmBOTTOM_TO_TOP_RIGHT_TO_LEFT

XmTOP_TO_BOTTOM_LEFT_TO_RIGHT

XmBOTTOM_TO_TOP_LEFT_TO_RIGHT

XmTOP_TO_BOTTOM

XmBOTTOM_TO_TOP

XmDEFAULT_DIRECTION

XmDisplayCallbackStruct
ThecallbackstructurepassedtoDisplayXmNnoFontCallbackandXmNnoRenditionCallbackcallbackroutines.Itisdefinedasfollowsin
<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
XmRenditionrendition/*renditionwithamissingfont*/
char*font_name/*fontwhichisnotloadable*/
XmRenderTablerender_table/*rendertablewithmissingrendition*/
XmStringtag/*tagofthemissingrendition*/
}XmDisplayCallbackStruct

XmDragDropFininshCallbackStruct
ThecallbackstructurepassedtotheXmNdragDropFinishCallbackofaDragContextobject.Itisdefinedasfollowsin<Xm/DragC.h>:
typedefstruct{
intreason/*thereasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timeatwhichoperationcompleted*/
}XmDragDropFinishCallbackStruct,*XmDragDropFinishCallback

XmDragMotionCallbackStruct
ThecallbackstructurepassedtotheXmNdragMotionCallbackofaDragContextobject.Itisdefinedasfollowsin<Xm/DragC.h>:
typedefstruct{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timestampoflogicalevent*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
unsignedchardropSiteStatus/*valid,invalid,ornone*/
Positionx/*xcoordinateofpointer*/
Positiony/*ycoordinateofpointer*/
}XmDragMotionCallbackStruct,*XmDragMotionCallback

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1088

XmDragProcCallbackStruct
ThecallbackstructurepassedtotheXmNdragProcofadropsite.Itisdefinedasfollowsin<Xm/DropSMgr.h>:
typedefstruct{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timestampoflogicalevent*/
WidgetdragContext/*DragContextwidgetassociated*/
/*withoperation*/
Positionx/*xcoordinateofpointer*/
Positiony/*ycoordinateofpointer*/
unsignedchardropSiteStatus/*validorinvalid*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
Booleananimate/*toolkitorreceiverdoesanimation*/
}XmDragProcCallbackStruct,*XmDragProcCallback

XmDrawingAreaCallbackStruct
ThecallbackstructurepassedtoDrawingAreacallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
/*forXmNresizeCallback,thisisNULL*/
Windowwindow/*thewidget'swindow*/
}XmDrawingAreaCallbackStruct

XmDrawnButtonCallbackStruct
ThecallbackstructurepasedtoDrawnButtoncallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
Windowwindow/*IDofwindowinwhicheventoccurred*/
intclick_count/*numberofmulticlicks*/
}XmDrawnButtonCallbackStruct

XmDropFinishCallbackStruct
ThecallbackstructurepassedtotheXmNdropFinishCallbackofaDragContextobject.Itisdefinedasfollowsin<Xm/DragC.h>:
typedefstruct{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timeatwhichdropcompleted*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
unsignedchardropSiteStatus/*valid,invalid,ornone*/
unsignedchardropAction/*drop,cancel,help,or*/
/*interrupt*/
unsignedcharcompletionStatus/*successorfailure*/
}XmDropFinishCallbackStruct,*XmDropFinishCallback

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1089

XmDropProcCallbackStruct
ThecallbackstructurepassedtotheXmNdropProcofadropsite.Itisdefinedasfollowsin<Xm/DropSMgr.h>:
typedefstruct{
intreason/*reasoncallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timestampoflogicalevent*/
WidgetdragContext/*DragContextwidgetassociated*/
/*withoperation*/
Positionx/*xcoordinateofpointer*/
Positiony/*ycoordinateofpointer*/
unsignedchardropSiteStatus/*validorinvalid*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
unsignedchardropAction/*droporhelp*/
}XmDropProcCallbackStruct,*XmDropProcCallback

XmDropSiteEnterCallbackStruct
ThecallbackstructurepassedtotheXmNdropSiteEnterCallbackofaDragContextobject.Itisdefinedasfollowsin<Xm/DragC.h>:
typedefstruct{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timeofcrossingevent*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
unsignedchardropSiteStatus/*valid,invalid,ornone*/
Positionx/*xcoordinateofpointer*/
Positiony/*ycoordinateofpointer*/
}XmDropSiteEnterCallbackStruct,*XmDropSiteEnterCallback

XmDropSiteLeaveCallbackStruct
ThecallbackstructurepassedtotheXmNdropSiteLeaveCallbackofaDragContextobject.Itisdefinedasfollowsin<Xm/DragC.h>:
typedefstruct{
intreason/*reasoncallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timeofcrossingevent*/
}XmDropSiteLeaveCallbackStruct,*XmDropSiteLeaveCallback

XmDropStartCallbackStruct
ThecallbackstructurepassedtotheXmNdropStartCallbackofaDragContextobject.Itisdefinedasfollowsin<Xm/DragC.h>:
typedefstruct{
intreason/*reasoncallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timeatwhichdragcompleted*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
unsignedchardropSiteStatus/*valid,invalid,ornone*/
unsignedchardropAction/*drop,cancel,help,orinterrupt*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1090
Positionx/*xcoordinateofpointer*/
Positiony/*ycoordinateofpointer*/
Windowwindow/*internal:notdocumented*/
Atomicchandle/*internal:notdocumented*/
}XmDropStartCallbackStruct,*XmDropStartCallback

XmDropTransferEntryRec
AstructurethatspecifiesthetargetsofadropoperationforaDropTransferobject.Itisdefinedasfollowsin<Xm/DropTrans.h>:
typedefstruct{
XtPointerclient_data/*datapassedtothetransferproc*/
Atomtarget/*targetformatofthetransfer*/
}XmDropTransferEntryRec,*XmDropTransferEntry

XmDropTransferEntry
SeeXmDropTransferEntryRec.
XmFileSelectionBoxCallbackStruct
ThecallbackstructurepassedtoFileSelectionBoxcallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
XmStringvalue/*currentvalueofXmNdirSpecresource*/
intlength/*numberofbytesinvaluemember*/
XmStringmask/*currentvalueofXmNdirMaskresource*/
intmask_length/*numberofbytesinmaskmember*/
XmStringdir/*currentbasedirectory*/
intdir_length/*numberofbytesindirmember*/
XmStringpattern/*currentsearchpattern*/
intpattern_length/*numberofbytesinpatternmember*/
}XmFileSelectionBoxCallbackStruct

XmFontContext
Atypedefforafontlistcontextthatletsanapplicationaccessthefontlistentriesandfontlisttagsinafontlist.Thisdatatypeisanopaquestructurereturnedbyacall
toXmFontListInitFontContext(),andisusedinsubsequentcallstoXmFontListGetNextEntry(),XmFontListGetNextFont()
andXmFontListFreeFontContext().
XmFontList
Afontlistcontainsentriesthatdescribethefontsthatareinuse.InMotif1.1,eachentryassociatesafontandacharacterset.InMotif1.2,eachentryconsistsofa
XmFontListEntryandanassociatedtag,wheretheXmFontListEntryspecifiesafontorafontset.XmFontListisanopaquedatatypeusedincalls
tofontlistroutinesandstringmanipulationroutines.WhenaMotifcompoundstringisdisplayed,thefontlisttagisusedtomatchthestringwithafontorfontset,so
thatthecompoundstringisdisplayedappropriately.ThefontlisttagXmFONTLIST_DEFAULT_TAGcausescompoundstringstobedisplayedusingthefontfor
thecurrentlocale.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1091

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Tospecifyafontlistinaresourcefile,usethefollowingsyntax:
resource_spec:font_entry[,font_entry]...

Thevaluespecificationconsistsofatleastonefontlistentry,withmultipleentriesseparatedbycommas.Eachfont_entryspecifiesafontorafontsetandan
optionalfontlistentrytag.Usethefollowingsyntaxtospecifyasinglefont:
font_name[=font_list_entry_tag]

Tospecifytheoptionaltagforasinglefont,separatethefont_nameandthefont_list_entry_tagbyanequalsign(=).Usethefollowingsyntaxtospecifyafont
set:
font_name[font_name]...:[font_list_entry_tag]

Separatemultiplefont_nameswithsemicolonsandendthespecificationwithacolon,followedbytheoptionaltag.Afont_nameisanXLogicalFont
Description(XLFD)string.Ifafont_list_entry_tagisnotspecifiedforanentry,XmFONTLIST_DEFAULT_TAGisused.
InMotif2.0andlater,XmFontListisconsideredobsoleteitisreplacedbyXmRenderTable.TheXmFontListtypeismaintainedforbackwards
compatibilityandisimplementedthrougharendertable.
XmFontListEntry
InMotif1.2,afontlistentryisanelementofanXmFontListthatspecifiesafontorafontset.EachXmFontListEntryisassociatedwithafontlistentry
tag.XmFontListEntryisanopaquetype.
InMotif2.0andlater,XmFontListandXmFontListEntryareconsideredobsoletetheyarereplacedbytheXmRenderTableand
XmRenditiontypes,respectively.TheXmFontListandXmFontListEntrytypesaremaintainedforbackwardscompatibility,andareimplemented
directlythroughtherendertableandrenditionobject.
XmFontType
AnenumeratedtypethatspecifiesthetypeofentryinaXmFontListEntry.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefenum{
XmFONT_IS_FONT,/*specifiesafont*/
XmFONT_IS_FONTSET/*specifiesafontset*/
}XmFontType

XmHighlightMode
AnenumeratedtypethatdefinesthekindoftexthighlightingthatresultsfromcallstoXmTextSetHighlight()andXmTextFieldSetHighlight().
Itisdefinedasfollowsin<Xm/Xm.h>:
typedefenum{
XmHIGHLIGHT_NORMAL,/*nohighlighting*/
XmHIGHLIGHT_SELECTED,/*highlightinreversevideo*/
XmHIGHLIGHT_SECONDARY_SELECTED/*highlightbyunderlining*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1092
XmSEE_DETAIL/*unusedexceptbyabortive*/
/*Motif2.0CSTextwidget*/
}XmHighlightMode

XmICCEncodingStyle
Anenumeratedtypethatspecifiesthewayinwhichcompoundstringtablesareconvertedtoandfromatextproperty.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefenum{
XmSTYLE_STRING=XStringStyle,
XmSTYLE_COMPOUND_TEXT=XCompoundTextStyle,
XmSTYLE_TEXT=XTextStyle,
XmSTYLE_STANDARD_ICC_TEXT=XStdICCTextStyle,
XmSTYLE_LOCALE=32,
XmSTYLE_COMPOUND_STRING
}XmICCEncodingStyle

XmIncludeStatus
AtypedefforunsignedcharthatisusedtodefinethewayinwhichcompoundstringsareparsedwhenaParseMappingobjectisappliedtoaninputstream.
Variablesofthistypecanhavethefollowingvalues:
XmINSERT/*concatenateXmNsubstitutevaluetooutput*/
/*parsingiscontinued*/
XmINVOKE/*resultdeterminedbyXmNinvokeParseProc*/
XmTERMINATE/*concatenateXmNsubstitutevaluetooutput*/
/*parsingisterminated*/

XmKeySymTable
ApointertoalistofKeySyms.
XmListCallbackStruct
ThecallbackstructurepassedtoListwidgetcallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
XmStringitem/*itemmostrecentlyselectedatthe*/
/*timeeventoccurred*/
intitem_length/*numberofbytesinitemmember*/
intitem_position/*itempositioninXmNitemsarray*/
XmString*selected_items/*listofitemsselectedatthe*/
/*timeeventoccurred*/
intselected_item_count/*numberofitemsin*/
/*selected_items*/
int*selected_item_positions/*arraythatmarksselected*/
/*items*/
charselection_type/*typeofthemostrecentselection*/
charauto_selection_type/*2.0:automaticselectiontype*/
}XmListCallbackStruct

Thestructuremembersevent,item,item_length,anditem_positionarevalidforanyvalueofreason.Thestructuremembers
selected_items,selected_item_count,andselected_item_positionsarevalidwhenthe

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1093

reasonfieldhasavalueofXmCR_MULTIPLE_SELECTorXmCR_EXTENDED_SELECT.Thestructurememberselection_typeisvalidonly
whenthereasonfieldisXmCR_EXTENDED_SELECT.
Forthestringspointedtobyitemandselected_items,aswellasfortheintegerspointedtobyselected_item_positions,storageis
overwritteneachtimethecallbackisinvoked.Applicationsthatneedtosavethisdatashouldmaketheirowncopiesofit.
selected_item_positionsisanintegerarray.TheelementsofthearrayindicatethepositionsofeachselecteditemwithintheListwidget's
XmNitemsarray.
selection_typespecifieswhatkindofextendedselectionwasmostrecentlymade.Oneofthreevaluesispossible,definedin<Xm/List.h>:
XmINITIAL/*selectionwastheinitialselection*/
XmMODIFICATION/*selectionchangedanexistingselection*/
XmADDITION/*selectionaddednonadjacentitemsto*/
/*anexistingselection*/

auto_selection_typespecifiesatwhatpointwithintheselectiontheuseris.Possiblevalues,definedin<Xm/Xm.h>:
XmAUTO_UNSET

XmAUTO_BEGIN

XmAUTO_MOTION

XmAUTO_CANCEL

XmAUTO_NO_CHANGE

XmAUTO_CHANGE

XmMergeMode
Anenumeratedtypethatspecifiesthewayinwhichrenditionsaremergedintoarendertable.Thevalidvaluesforthetypeare:
XmSKIP
XmMERGE_OLD
XmDUPLICATE

XmMERGE_REPLACE
XmMERGE_NEW

XmDUPLICATEisaninternalvalueusedinmappingXmFontListandXmFontListEntrytypestotherendertabletypesofMotif2.0andlater.
XmNavigationType
Anenumeratedtypethatspecifiesthetypeofkeyboardnavigationassociatedwithawidget.Thevalidvaluesforthetypeare:
XmNONE

XmTAB_GROUP

XmSTICKY_TAB_GROUP

XmEXCLUSIVE_TAB_GROUP

XmNotebookCallbackStruct
ThecallbackstructurepassedtoNotebookselectioncallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*pointstoeventstructure*/
/*thattriggeredcallback*/
intpage_number/*currentlogicalpagenumber*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1094
Widgetpage_widget/*widgetassociatedwith*/
/*currentlogicalpagenumber*/
intprev_page_number/*previouslogicalpagenumber*/
Widgetprev_page_widget/*widgetassociatedwith*/
/*previouslogicalpagenumber*/
}XmNotebookCallbackStruct

XmNotebookPageInfo
SpecifiesastructurepassedtothefunctionXmNotebookGetPageInfo()inordertoretrieveinformationaboutaNotebookpage.Itisdefinedasfollowsin
<Xm/Notebook.h>:
typedefstruct{
intpage_number/*logicalpagenumber*/
Widgetpage_widget/*widgetIDofapagechild*/
Widgetstatus_area_widget/*widgetIDofastatusareachild*/
Widgetmajor_tab_widget/*widgetIDofamajortabchild*/
Widgetminor_tab_widget/*widgetIDofaminortabchild*/
}XmNotebookPageInfo

XmOffset
Alongintegerthatrepresentstheunitsusedincalculatingtheoffsetsintoawidget'sinstancedata.ThetypeisusedinternallytoMotif.SeealsoXmOffsetPtr.
XmOffsetModel
Anenumeratedtypethatspecifieswhethertabsarecalculatedatabsoluteoffsetsorrelativetotheprevioustab.Thevalidvaluesforthetypeare:
XmABSOLUTE

XmRELATIVE

XmOffsetPtr
ApointertoanXmOffsetvalue,whichisreturnedbyacallstoXmResolveAllPartOffsets()andXmResolvePartOffsets().
XmOperationChangedCallbackStruct
ThecallbackstructurepassedtotheXmNoperationChangedCallbackofaDragContextobject.Itisdefinedasfollowsin<Xm/DragC.h>:
typedefstruct{
intreason/*reasoncallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
TimetimeStamp/*timestampoflogicalevent*/
unsignedcharoperation/*currentoperation*/
unsignedcharoperations/*supportedoperations*/
unsignedchardropSiteStatus/*valid,invalid,ornone*/
}XmOperationChangedCallbackStruct,*XmOperationChangedCallback

XmParseMapping
Atypedefforaparsemappingobjectthatletsanapplicationcontrolthewayinwhichaninputstreamofbytesisconvertedintothecomponentsorsegmentswithina
compoundstring.ThisdatatypeisanopaquestructurereturnedbyacalltoXmParseMappingCreate()itisplacedintoanXmParseTableandusedin
subsequentcallstothestringmanipulationroutines:XmStringParseText(),

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1095

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmStringTableParseStringArray(),XmStringTableUnparse(),andXmStringUnparse().
XmParseModel
Anenumeratedtypewhichspecifieshownontextcomponentsofacompoundstringareunparsed.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefenum{
XmOUTPUT_ALL,XmOUTPUT_BETWEEN,
XmOUTPUT_BEGINNING,XmOUTPUT_END,
XmOUTPUT_BOTH
}XmParseModel

ThisdatatypeisusedincallstothecompoundstringroutinesXmStringTableUnparse()andXmStringUnparse().
XmParseProc
AprocedurewithinanXmParseMappingobjectforcontrollingthewayinwhichaninputstreamisparsedintoacompoundstring.Itisdefinedasfollowsin
<Xm/Xm.h>:
typedefXmIncludeStatus
(*XmParseProc)(XtPointer*in_out,
XtPointertext_end,
XmTextTypetype,
XmStringTaglocale_tag,
XmParseMappingentry,
intpattern_length,
XmString*str_include,
XtPointercall_data)

XmParseTable
Atypedefforanarrayofparsemappingobjects,usedforparsinganinputstreamintoacompoundstrings:
typedefXmParseMapping*XmParseTable

XmPushButtonCallbackStruct
ThecallbackstructurepassedtoPushButtoncallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
intclick_count/*numberofmulticlicks*/
}XmPushButtonCallbackStruct

XmPopupHandlerCallbackStruct
ThecallbackstructurepassedtoPopuphandlercallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*thereasonthecallbackisinvoked*/
XEvent*event/*eventthattriggeredcallback*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1096
WidgetmenuToPost/*themenutopost*/
BooleanpostIt/*whethertocontinueposting*/
Widgettarget/*managerdescendantissuingrequest*/
}XmPopupHandlerCallbackStruct

XmPrintShellCallbackStruct
ThecallbackstructurepassedtoPrintShellcallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatthecallbackisinvoked*/
XEvent*event/*eventthattriggeredthecallback*/
XPContextcontext/*XPrintContext*/
Booleanlast_page/*whetherthisisthelastpage*/
XtPointerdetail/*PDMselection*/
}XmPrintShellCallbackStruct

XmQualifyProc
Theprototypeforthequalificationprocedurethatproducesaqualifieddirectorymask,basedirectory,andsearchpatternforthedirectoryandfilesearchprocedures
inaFileSelectionBox.TheXmNqualifySearchDataProcresourcespecifiesaprocedureofthistype,whichisdefinedasfollowsin<Xm/FileSB.h>:
typedefvoid(*XmQualifyProc)(Widget,XtPointer,XtPointer)
Widgetwidget
XtPointerinput_data
XtPointeroutput_data

AnXmQualifyProctakesthreearguments.Thefirstargument,widget,istheFileSelectionBoxwidget.Theinput_dataargumentisapointertoan
XmFileSelectionBoxCallbackStructthatcontainsinputdatatobequalified.Theoutput_dataargumentisapointertoan
XmFileSelectionBoxCallbackStructthatistobefilledinbythequalificationprocedure.
XmRendition
Anopaquedatastructure,implementedasapseudowidget,thatencapsulatestheresourcesrequiredtorenderacompoundstring.Thisdatatypeisreturnedbyacall
toXmRenditionCreate()andisusedinsubsequentcallstothefollowingroutines:XmRenderTableAddRenditions(),XmRenditionFree
(),XmRenditionRetrieve(),andXmRenditionUpdate().
XmRenderTable
Anopaquedatastructure,representingalistofXmRenditionobjects,usedtorendercompoundstrings.TypicallyusedastheXmNrenderTableresourceof
awidget,thetypeususedincallstothefollowingroutines:XmRenderTableCopy(),XmRenderTableFree(),
XmRenderTableGetRendition(),XmRenderTableGetRenditions(),XmRenderTableGetTags(),and
XmRenderTableRemoveRenditions().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1097

XmRepTypeEntry
Apointertoarepresentationtypeentrystructurethatcontainsinformationaboutthevaluenamesandvaluesforanenumeratedtype.TheMotifrepresentationtype
managerroutinesusevaluesofthistype,whichisdefinedasfollowsin<Xm/RepType.h>:
typedefstruct{
Stringrep_type_name/*nameofrepresentationtype*/
String*value_names/*arrayofvaluenames*/
unsignedchar*values/*arrayofnumericvalues*/
unsignedcharnum_values/*numberofvalues*/
Booleanreverse_installed/*reverseconverterinstalled*/
/*flag*/
XmRepTypeIdrep_type_id/*representationtypeID*/
}XmRepTypeEntryRec,*XmRepTypeEntry,XmRepTypeListRec,*XmRepTypeList

XmRepTypeId
Anunsignedshortthatspecifiestheidentificationnumberofarepresentationtyperegisteredwiththerepresentationtypemanager.Therepresentationtypemanager
routinesusevaluesofthistype.
XmRepTypeList
SeeXmRepTypeEntry.
XmRowColumnCallbackStruct
ThecallbackstructurepassedtoRowColumncallbackroutines.Itisonlyusedbymapandunmapcallbacks,andisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
Widgetwidget/*IDofactivatedRowColumnitem*/
char*data/*valueofapplication'sclientdata*/
char*callbackstruct/*createdwhenitemisactivated*/
}XmRowColumnCallbackStruct

widget,data,andcallbackstructaresettoNULL.
XmScaleCallbackStruct
ThecallbackstructurepassedtoScalewidgetcallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
intvalue/*newvalueoftheslider*/
}XmScaleCallbackStruct

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1098

XmScreenColorProc
TheprototypefortheperscreencolorcalculationprocedurethatisspecifiedthroughtheXmScreenresourceXmNcolorCalculationProc.Itisdefinedas
followsin<Xm/Screen.h>:
typedefvoid(*XmScreenColorProc)(Screen*,
XColor*,XColor*,XColor*,XColor*,XColor*)
Screen*screen/*screenoftoplevelwindow*/
XColor*bg_color/*specifiesthebackgroundcolor*/
XColor*fg_color/*returnstheforegroundcolor*/
XColor*sel_color/*returnstheselectcolor*/
XColor*ts_color/*returnsthetopshadowcolor*/
XColor*bs_color/*returnsthebottomshadowcolor*/

AnXmScreenColorProctakessixarguments.Thefirstargumentisapointertoascreenobject.Thesecondargument,bg_color,isapointertoan
XColorstructurethatspecifiesthebackgroundcolor.Thered,green,blue,andpixelfieldsinthestructurecontainvalidvalues.Therestofthe
argumentsarepointerstoXColorstructuresforthecolorsthataretobecalculated.Theprocedurefillsinthered,green,andbluefieldsinthese
structures.
XmScrollBarCallbackStruct
ThecallbackstructurepassedtoScrollBarcallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
intvalue/*valueoftheslider'snewlocation*/
intpixel/*coordinatewhereselectionoccurred*/
}XmScrollBarCallbackStruct

XmSearchProc
TheprototypeforasearchprocedurethatsearchesthedirectoriesorfilesinaFileSelectionBox.TheXmNdirSearchProcandXmNfileSearchProc
resourcesspecifyproceduresofthistype,whichisdefinedasfollowsin<Xm/FileSB.h>:
typedefvoid(*XmSearchProc)(Widget,XtPointer)
Widgetwidget
XtPointersearch_data

AnXmSearchProctakestwoarguments.Thefirstargument,widget,istheFileSelectionBoxwidget.Thesearch_dataargumentisapointertoan
XmFileSelectionBoxCallbackStructthatcontainstheinformationforperformingasearch.
XmSecondaryResourceData
Astructurethatspecifiesinformationaboutsecondaryresourcesassociatedwithawidgetclass.XmGetSecondaryResourceData()returnsanarrayof
thesevalues.Thetypeisdefinedasfollowsin<Xm/Xm.h>:

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1099
typedefstruct{
XmResourceBaseProcbase_proc
XtPointerclient_data
Stringname
Stringres_class
XtResourceListresources
Cardinalnum_resources
}XmSecondaryResourceDataRec,*XmSecondaryResourceData

XmSelectionBoxCallbackStruct
ThecallbackstructurepassedtoSelectionBoxcallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
XmStringvalue/*selectionstringthatwaseitherchosen*/
/*fromtheSelectionBoxlistortypedin*/
intlength/*numberofbytesofvalue*/
}XmSelectionBoxCallbackStruct

XmSelectionCallbackStruct
Thecallbackstructurepassedtoroutinesthatareresponsiblefordatatransferfromtheprimaryselection.ThefunctionXmTransferValue()takesasitsthird
parameteraprocedurewhichisresponsibleforinsertingdataintothedestination.TheprocedurereceivesapointertoanXmSelectionCallbackStructas
callbackdatawheninvoked.Itisdefinedasfollowsin<Xm/Transfer.h>:
typedefstruct
{
intreason/*reasonthecallbackwasinvoked*/
XEvent*event/*eventwhichtriggeredcallback*/
Atomselection/*selectionthathasbeenconverted*/
Atomtarget/*targetforwhichconversionrequested*/
Atomtype/*typeoftheselectionvalue*/
XtPointertransfer_id/*uniqueidentifierfortransfer*/
/*operation*/
intflags/*unused:passconstant*/
/*XmSELECTION_DEFAULT*/
intremaining/*numberoftransfersremainingin*/
/*operation*/
XtPointervalue/*thedatatransferredinthisrequest*/
unsignedlonglength/*thenumberofelementsinthevalue*/
intformat/*sizeofeachelementinthevalue*/
}XmSelectionCallbackStruct

XmSpinBoxCallbackStruct
ThecallbackstructurepassedtoSpinBoxcallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*thereasonthatthecallbackwascalled*/
XEvent*event/*pointstoeventthattriggeredcallback*/
Widgetwidget/*thetextualchildaffectedbycallback*/
Booleandoit/*whethertoperformthechanges*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1100
intposition/*specifiestheindexofthenextvalue*/
XmStringvalue/*specifiesthenextvalue*/
Booleancrossed_boundary/*whethertheSpinBoxhaswrapped*/
}XmSpinBoxCallbackStruct

XmString
ThedatatypeforMotifcompoundstrings.InMotif1.2andlater,acompoundstringiscomposedofoneormoresegments,whereeachsegmentcancontainafont
listelementtag,astringdirection,andatextcomponent.ThefontlistelementtagXmFONTLIST_DEFAULT_TAGspecifiesatextsegmentencodedinthecurrent
locale.InMotif1.1,compoundstringsusecharactersetidentifiersratherthanfontlistelementtags.Thecharactersetidentifierforacompoundstringcanhavethe
valueXmSTRING_DEFAULT_CHARSET,whichtakesthecharactersetfromthecurrentlanguageenvironment,butthisvaluemayberemovedfromfuture
versionsofMotif.
XmStringCharSet
Atypedefforchar*thatisusedtodefinethecharactersetofacompoundstringinMotif1.1.Variablesofthistypecanhavethefollowingvalues,amongothers:
XmSTRING_ISO8859_1
XmSTRING_OS_CHARSET
XmSTRING_DEFAULT_CHARSET

XmSTRING_DEFAULT_CHARSETspecifiesthecharactersetfromthecurrentlanguageenvironment,butthisvaluemayberemovedfromfutureversionsof
Motif.
XmStringCharSetTable
ApointertoalistofXmStringCharSets.
XmStringComponentType
Anunsignedcharvaluethatspecifiesthetypeofcomponentinacompoundstringsegment.Valuesofthistypearereturnedbycallsto
XmStringGetNextComponent()andXmStringPeekNextComponent().Thevalidvaluesforthetypeare:
XmSTRING_COMPONENT_FONTLIST_ELEMENT_TAG/*fontlistelementtag*/
/*componentobsoletein*/
/*Motif2.0*/
XmSTRING_COMPONENT_CHARSET/*charactersetidentifiercomponent*/
/*obsoleteinMotif1.2*/
XmSTRING_COMPONENT_TEXT/*textcomponent*/
XmSTRING_COMPONENT_LOCALE_TEXT/*localeencodedtextcomponent*/
XmSTRING_COMPONENT_DIRECTION/*directioncomponent*/
XmSTRING_COMPONENT_SEPARATOR/*separatorcomponent*/
XmSTRING_COMPONENT_END/*lastcomponentinstring*/
XmSTRING_COMPONENT_UNKNOWN/*unknowncomponent*/
XmSTRING_COMPONENT_LOCALE/*thelocalespecifier*/
XmSTRING_COMPONENT_WIDECHAR_TEXT/*widechartextcomponent*/
XmSTRING_COMPONENT_LAYOUT_PUSH/*stackedlayoutdirection*/
XmSTRING_COMPONENT_LAYOUT_POP/*unstackedlayoutcomponent*/
XmSTRING_COMPONENT_RENDITION_BEGIN/*beginningofrendition*/

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1101
XmSTRING_COMPONENT_RENDITION_END/*endofrendition*/
XmSTRING_COMPONENT_TAG/*charset/fontlisttagcomponent*/
XmSTRING_COMPONENT_TAB/*tabcomponent*/

XmStringContext
Atypedefforastringcontextthatletsanapplicationaccessthecomponentsorsegmentswithinacompoundstring.Thisdatatypeisanopaquestructurereturnedby
acalltoXmStringInitContext(),andisusedinsubsequentcallstothefourotherstringcontextroutines:XmStringFreeContext(),
XmStringGetNextSegment(),XmStringGetNextComponent(),andXmStringPeekNextComponent().
XmStringDirection
Anunsignedcharusedfordeterminingthedirectioninwhichacompoundstringisdisplayed.Thetypeisusedincallsto
XmStringDirectionCreate()andXmStringSegmentCreate().Thevalidvaluesforthetypeare:
XmSTRING_DIRECTION_L_TO_R
XmSTRING_DIRECTION_DEFAULT

XmSTRING_DIRECTION_R_TO_L

XmStringTable
AnopaquetypedefforXmString*thatisusedforarraysofcompoundstrings.
XmStringTag
Atypedefforchar*thatisusedtospecifythetagthatidentifiescomponentsorsegmentswithinacompoundstring.Thisdatatypeisusedincallstothefollowing
compoundstringroutines:XmRenderTableCopy(),XmRenderTableGetRendition(),XmRenderTableGetRenditions(),
XmRenderTableGetTags(),XmRenderTableRemoveRenditions(),XmRenditionCreate(),XmRenditionRetrieve
(),XmStringGenerate(),XmStringParseText(),XmStringPutRendition(),XmStringTableParseStringArray
(),XmStringTableUnparse(),andXmStringUnparse().
XmTab
Specifiesatabstop,whichisusedtolayoutcompoundstringswithinacolumns.ThisdatatypeisanopaquestructurereturnedbyacalltoXmTabCreate()and
usedincallstothefollowingtabroutines:XmTabGetValues(),XmTabFree(),andXmTabListInsertTabs().
XmTabList
Specifiesalistoftabstops,whichareusedtolayoutcompoundstringswithinacolumns.Thisdatatypeisanopaquestructurereturnedbyacallto
XmTabListInsertTabs()andusedincallstothefollowingtabroutines:XmTabListReplacePositions(),XmTabListRemoveTabs
(),XmTabListGetTab(),XmTabListTabCount(),XmTabListCopy(),XmTabListFree(),andXmTabListInsertTabs
().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1102

XmTextBlockRec
AstructurethatspecifiesinformationaboutablockoftextinaTextorTextFieldwidget.ThetextfieldinanXmTextVerifyCallbackStructpointstoa
structureofthistype,whichisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
char*ptr/*pointertothetexttoinsert*/
intlength/*lengthofthistext*/
XmTextFormatformat/*textformat(e.g.,FMT8BIT,FMT16BIT)*/
}XmTextBlockRec,*XmTextBlock

XmTextBlockRecWcs
AstructurethatspecifiesinformationaboutablockoftextinwidecharacterformatinaTextorTextFieldwidget.Thetextfieldinan
XmTextVerifyCallbackStructWcspointstoastructureofthistype,whichisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
wchar_t*wcsptr/*pointertotexttoinsert*/
intlength/*lengthofthistext*/
}XmTextBlockRecWcs,*XmTextBlockWcs

XmTextDirection
AnenumeratedtypethatspecifiesthesearchdirectionincallstoXmTextFindString()andXmTextFindStringWcs().Itisdefinedasfollowsin
<Xm/Xm.h>:
typedefenum{
XmTEXT_FORWARD,/*searchforward*/
XmTEXT_BACKWARD/*searchbackward*/
}XmTextDirection

XmTextPosition
Alonginteger,usedbyTextandTextFieldroutinesfordeterminingthepositionofacharacterinsidethetextstring.
XmTextSource
Apointertoanopaquestructurethatspecifiesatextsource.ThetypeisusedincallstoXmTextGetSource()andXmTextSetSource().
XmTextType
Anenumeratedtypewhichspecifiesthetypeofdatacontainedwithinaninputstream.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefenum{
XmCHARSET_TEXT,XmMULTIBYTE_TEXT,
XmWIDECHAR_TEXT,XmNO_TEXT
}XmTextType

Thisdatatypeisusedincallstothefollowingcompoundstringroutines:XmParseMappingGetValues(),XmParseMappingSetValues(),
XmStringGenerate(),XmStringParseText(),XmStringTableParseStringArray(),XmStringTableUnparse(),
andXmStringUnparse().

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1103

XmTextVerifyCallbackStruct
ThecallbackstructurepassedtotheXmNlosingFocusCallback,XmNmodifyVerifyCallback,andXmNmotionVerifyCallback
callbackroutinesofTextandTextFieldwidgets.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
Booleandoit/*dotheaction(True)undoit(False)*/
longcurrInsert/*theinsertcursor'scurrentposition*/
longnewInsert/*desirednewpositionofinsertcursor*/
longstartPos/*startoftexttochange*/
longendPos/*endoftexttochange*/
XmTextBlocktext/*describesthetexttoinsert*/
}XmTextVerifyCallbackStruct,*XmTextVerifyPtr

start_posspecifiesthelocationatwhichtostartmodifyingtext.start_posisunusedifthecallbackresourceisXmNmotionVerifyCallback,
andisthesameasthecurrent_insertmemberifthecallbackresourceisXmNlosingFocusCallback.
end_posspecifiesthelocationatwhichtostopmodifyingtext(however,ifnotextwasmodified,end_poshasthesamevalueasstart_pos).
end_posisunusedifthecallbackresourceisXmNmotionVerifyCallback,andisthesameasthecurrent_insertmemberifthecallback
resourceisXmNlosingFocusCallback.
XmTextVerifyCallbackStructWcs
ThecallbackstructurepassedtotheXmNmodifyVerifyCallbackWcsofTextandTextFieldwidgets.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
Booleandoit/*dotheaction(True)undoit*/
/*(False)*/
longcurrInsert/*theinsertcursor'scurrent*/
/*position*/
longnewInsert/*desirednewpositionofinsert*/
/*cursor*/
longstartPos/*startoftexttochange*/
longendPos/*endoftexttochange*/
XmTextBlockWcstext/*describesthetexttoinsert*/
}XmTextVerifyCallbackStructWcs,*XmTextVerifyPtrWcs

AllofthefieldsinthisstructurearethesameasthefieldsintheXmTextVerifyCallbackStructexcepttext,whichpointstoa
XmTextBlockRecWcsstructure.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1104

XmToggleButtonCallbackStruct
ThecallbackstructurepassedtoToggleButtoncallbackroutines.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthatcallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
intset/*selectionstateofthetoggle*/
}XmToggleButtonCallbackStruct

XmToggleButtonState
AnenumeratedtypethatspecifiesthestateofaToggleButton.Thevalidvaluesforthetypeare:
XmUNSET

XmSET

XmINDETERMINATE

XmTopLevelEnterCallbackStruct
ThecallbackstructurepassedtotheXmNtopLevelEnterCallbackofaDragContextobject.Itisdefinedasfollowsin<Xm/DragC.h>:
typedefstruct{
intreason/*reasoncallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
Timetimestamp/*timestampoflogicalevent*/
Screenscreen/*screenoftoplevelwindow*/
Windowwindow/*windowbeingentered*/
Positionx/*xcoordinateofpointer*/
Positiony/*ycoordinateofpointer*/
unsignedchardragProtocolStyle/*dragprotocolofinitiator*/
AtomiccHandle/*internal:notdocumented*/
}XmTopLevelEnterCallbackStruct,*XmTopLevelEnterCallback

XmTopLevelLeaveCallbackStruct
ThecallbackstructurepassedtotheXmNtopLevelLeaveCallbackofaDragContextobject.Itisdefinedasfollowsin<Xm/DragC.h>:
typedefstruct{
intreason/*reasoncallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
Timetimestamp/*timestampoflogicalevent*/
Screenscreen/*screenoftoplevelwindow*/
Windowwindow/*windowbeingleft*/
}XmTopLevelLeaveCallbackStruct,*XmTopLevelLeaveCallback

XmTransferStatus
Anenumeratedtypethatspecifiesthestatusofadatatransferoperation.ThevalueispassedasaparametertoXmTransferDone()inordertoterminate
currentcurrentdatatransfer.Thevalidvaluesforthetypeare:
XmTRANSFER_DONE_SUCCEED

XmTRANSFER_DONE_CONTINUE

XmTRANSFER_DONE_FAIL

XmTRANSFER_DONE_DEFAULT

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1105

XmTraversalDirection
AnenumeratedtypethatspecifiesdirectionoftraversalinaXmTraverseObscuredCallbackStruct.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefenum{
XmTRAVERSE_CURRENT,XmTRAVERSE_NEXT,
XmTRAVERSE_PREV,XmTRAVERSE_HOME,
XmTRAVERSE_NEXT_TAB_GROUP,XmTRAVERSE_PREV_TAB_GROUP,
XmTRAVERSE_UP,XmTRAVERSE_DOWN,
XmTRAVERSE_LEFT,XmTRAVERSE_RIGHT,
XmTRAVERSE_GLOBALLY_FORWARD/*2.0*/,
XmTRAVERSE_GLOBALLY_BACKWARD/*2.0*/
}XmTraversalDirection

XmTraverseObscureCallbackStruct
ThecallbackstructurepassedtotheXmNtraverseObscuredCallbackofaScrolledWindowwidget.Itisdefinedasfollowsin<Xm/Xm.h>:
typedefstruct{
intreason/*reasonthecallbackwascalled*/
XEvent*event/*eventthattriggeredcallback*/
Widgettraversal_destination/*widgetorgadget*/
/*totraverseto*/
XmTraversalDirectiondirection/*directionoftraversal*/
}XmTraverseObscuredCallbackStruct

XmVisibility
Anenumeratedtypethatspecifiesthevisibilitystateofawidget.AvalueoftypeXmVisibilityisreturnedbyXmGetVisibility().Itisdefinedas
followsin<Xm/Xm.h>:
typedefenum{
XmVISIBILITY_UNOBSCURED,/*completelyvisible*/
XmVISIBILITY_PARTIALLY_OBSCURED,/*partiallyvisible*/
XmVISIBILITY_FULLY_OBSCURED/*notvisible*/
}XmVisibility

XrmValue
Astructuredefinedin<X11/Xresource.h>,usedinXtConvert()andotherresourceconversionroutines:
typedefstruct{
unsignedintsize
XPointeraddr
}XrmValue,*XrmValuePtr

XrmValuePtr
SeeXrmValue.
XtAccelerators
Apointertoanopaqueinternaltype,acompiledacceleratortable.ApointertoanXtAcceleratorsstructureisreturnedbyacallto
XtParseAcceleratorTable().Usually,thecompiledacceleratortableisproducedautomaticallybyresourceconversionofastringacceleratortable
storedinaresourcefile.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1106

XtCallbackList
Astructuredefinedasfollowsin<X11/Intrinsic.h>:
typedefstruct_XtCallbackRec{
XtCallbackProccallback
XtPointerclosure
}XtCallbackRec,*XtCallbackList

ApplicationswhichuseXtAddCallback()orXtRemoveCallback()donotneedtousetheXtCallbackListtype.Itcan,however,beused
tosetacallbackresourcebypassingthestructuretoXtCreateWidget()orXtSetValues().Anystructuresodefinedshouldbedeclaredstatic.In
mostdocumentation,theclosurememberisreferredtoasclient_data.
XtCallbackProc
Theprototypeforcallbackfunctions.Itisdefinedasfollowsin<X11/Intrinsic.h>:
typedefvoid(*XtCallbackProc)(Widget,XtPointer,XtPointer)
Widgetwidget
XtPointerclient_data
XtPointercall_data

XtConvertSelectionIncrProc
Theprototypeforanincrementalselectionconversionprocedure.TheXmNconvertProcforaDragContextobjectisofthistype,whichisdefinedasfollowsin
<X11/Intrinsic.h>:
typedefBoolean(*XtConvertSelectionIncrProc)(Widget,Atom*,Atom*,
Atom*,XtPointer*,unsignedlong*,int*,unsignedlong*,
XtPointer,XtRequestId*)
Widgetwidget
Atom*selection
Atom*target
Atom*type_return
XtPointer*value_return
unsignedlong*length_return
int*format_return
unsignedlong*max_length
XtPointerclient_data
XtRequestId*request_id

XtCreatePopupChildProc
Theprototypeforaprocedurethatpopsupthechildofashellwhentheshellispoppedup.TheXmNcreatePopupChildProcresourceofShellspecifiesa
procedureofthistype,whichisdefinedasfollowsin<X11/Intrinsic.h>:
typedefvoid(*XtCreatePopupChildProc)(Widget)
Widgetshell

XtKeyProc
Theprototypeforakeycodetokeysymtranslationprocedure.XmTranslateKey()isthedefaultXtKeyProcforMotifapplications.Theprototypeis
definedasfollowsin<X11/Intrinsic.h>:

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1107
typedefvoid(*XtKeyProc)(Display*,KeyCode,Modifiers,Modifiers*,
KeySym*)
Display*display
KeyCodekeycode
Modifiersmodifiers
Modifiers*modifiers_return
KeySym*keysym_return

XtOrderProc
Theprototypeforaprocedurethatallowscompositewidgetstoordertheirchildren.TheXmNinsertPositionresourceofCompositespecifiesaprocedureof
thistype,whichisdefinedasfollowsin<X11/Composite.h>:
typedefCardinal(*XtOrderProc)(Widget)
Widgetchild

XtPointer
Adatumlargeenoughtocontainthelargestofachar*,int*,functionpointer,structurepointer,orlongvalue.Apointertoanytypeorfunction,oralong,may
beconvertedtoanXtPointerandbackagainandtheresultwillcompareequallytotheoriginalvalue.InANSICenvironments,itisexpectedthat
XtPointerwillbedefinedasvoid*.
XtSelectionCallbackProc
Theprototypeforaselectioncallbackprocedure.TheXmNtransferProcforaDropTransferobjectisofthistype,andisdefinedasfollowsin
<X11/Intrinsic.h>:
typedefvoid(*XtSelectionCallbackProc)(Widget,XtPointer,Atom*,
Atom*,XtPointer,unsignedlong*,int*)
Widgetwidget
XtPointerclient_data
Atom*selection
Atom*type
XtPointervalue
unsignedlong*length
int*format

XtTranslations
Apointertoanopaqueinternaltype,acompiledtranslationtable.ApointertoanXtTranslationsstructureisreturnedbyacallto
XtParseTranslationTable().Usually,thecompiledtranslationtableisproducedautomaticallybyresourceconversionofastringtranslationtablestored
inaresourcefile.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1109

APPENDIXC
TABLEOFMOTIFRESOURCES
ThisappendixlistsalloftheresourcesforthewidgetclassesprovidedbytheMotiftoolkitandtheXToolkitIntrinsics.Thetableliststheappropriatedatatypefor
specifyingeachresourceinMotif.Thetablealsospecifiesthewidgetclassesthatdefineeachresource.Ifawidgetclasshasacorrespondinggadgetclass,thetable
listsonlythewidgetclassasdefiningresources,eventhoughtheresourcespertaintoboththewidgetandgadgetclasses.Formoreinformationoneachresource,see
theappropriatereferencepagesinSection2,MotifandXtWidgetClasses.
ResourceName

MotifType

DefinedinClass

XmNaccelerator

String

XmLabel

XmNacceleratorText

XmString

XmLabel

XmNaccelerators

XtAccelerators

Core

XmNactivateCallback

XtCallbackList

XmArrowButton,XmCascadeButton,
XmDrawnButton,XmPushButton,
XmText,XmTextField

XmNadjustLast

Boolean

XmRowColumn

XmNadjustMargin

Boolean

XmRowColumn

XmNalignment

unsignedchar

XmIconGadget,XmLabel,XmTab

XmNallowOverlap

Boolean

XmBulletinBoard

XmNallowResize

Boolean

XmPanedWindow

XmNallowShellResize

Boolean

Shell

XmNancestorSensitive

Boolean

Core,XmRectObj

XmNanimationMask

Pixmap

XmDropSite

XmNanimationPixmap

Pixmap

XmDropSite

XmNanimationPixmapDepth

int

XmDropSite

XmNanimationStyle

unsignedchar

XmDropSite

XmNapplyCallback

XtCallbackList

XmSelectionBox

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1110

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNapplyLabelString

XmString

XmSelectionBox

XmNargc

int

ApplicationShell

XmNargv

String*

ApplicationShell

XmNarmCallback

XtCallbackList

XmArrowButton,XmDrawnButton,
XmPushButton,XmToggleButton

XmNarmColor

Pixel

XmPushButton

XmNarmPixmap

Pixmap

XmPushButton

XmNarrowDirection

unsignedchar

XmArrowButton

XmNarrowLayout

unsignedchar

XmSpinBox

XmNarrowOrientation

unsignedchar

XmSpinBox

XmNarrowSensitivity

unsignedchar

XmSpinBox,XmSimpleSpinBox

XmNarrowSize

int

XmComboBox,XmSpinBox

XmNarrowSpacing

int

XmComboBox

XmNattachment

unsignedchar

XmDragIcon

XmNaudibleWarning

unsignedchar

VendorShell

XmNautoDragModel

XtEnum

XmScrolledWindow

XmNautoShowCursorPosition

Boolean

XmText

XmNautoUnmanage

Boolean

XmBulletinBoard

XmNautomaticSelection

unsignedchar

XmContainer,XmList

XmNbackPageBackground

Pixel

XmNotebook

XmNbackPageForeground

Pixel

XmNotebook

XmNbackPageNumber

int

XmNotebook

XmNbackPagePlacement

unsignedchar

XmNotebook

XmNbackPageSize

Dimension

XmNotebook

XmNbackground

Pixel

CoreXmGadget

XmNbackgroundPixmap

Pixmap

Core,XmGadget

XmNbaseHeight

int

WMShell

XmNbaseWidth

int

WMShell

XmNbindingPixmap

Pixmap

XmNotebook

XmNbindingType

unsignedchar

XmNotebook

XmNbindingWidth

int

XmNotebook

XmNbitmapConversionModel

XtEnum

XmScreen

XmNblendModel

unsignedchar

XmDragContext

XmNblinkRate

int

XmText,XmTextField

XmNborderColor

Pixel

Core

XmNborderPixmap

Pixmap

Core

XmNborderWidth

Dimension

Core,XmRectObj

XmNbottomAttachment

unsignedchar

XmForm

XmNbottomOffset

int

XmForm

XmNbottomPosition

int

XmForm

XmNbottomShadowColor

Pixel

XmGadget,XmManager,XmPrimitive

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1111

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNbottomShadowPixmap

Pixmap

XmGadget,XmManager,XmPrimitive

XmNbottomWidget

Widget

XmForm

XmNbrowseSelectionCallback

XtCallbackList

XmList

XmNbuttonAcceleratorText

XmStringTable

XmRowColumn

XmNbuttonAccelerators

StringTable

XmRowColumn

XmNbuttonCount

int

XmRowColumn

XmNbuttonFontList

XmFontList

VendorShell,XmBulletinBoard,
XmMenuShell

XmNbuttonRenderTable

XmRenderTable

VendorShell,XmBulletinBoard,
XmMenuShell

XmNbuttonMnemonicCharSets

XmStringCharSetTable

XmRowColumn

XmNbuttonMnemonics

XmKeySymTable

XmRowColumn

XmNbuttonSet

int

XmRowColumn

XmNbuttonType

XmButtonTypeTable

XmRowColumn

XmNbuttons

XmStringTable

XmRowColumn

XmNcancelButton

Widget

XmBulletinBoard

XmNcancelCallback

XtCallbackList

XmMessageBox,XmSelectionBox

XmNcancelLabelString

XmString

XmMessageBox,XmSelectionBox

XmNcascadePixmap

Pixmap

XmCascadeButton

XmNcascadingCallback

XtCallbackList

XmCascadeButton

XmNchildHorizontalAlignment

unsignedchar

XmFrame

XmNchildHorizontalSpacing

Dimension

XmFrame

XmNchildPlacement

unsignedchar

XmSelectionBox

XmNchildType

unsignedchar

XmFrame

XmNchildVerticalAlignment

unsignedchar

XmFrame

XmNchildren

WidgetList

Composite

XmNclientData

XtPointer

XmDragContext

XmNclipWindow

Widget

XmScrolledWindow

XmNcollapsedStatePixmap

Pixmap

XmContainer

XmNcolorAllocationProc

XmAllocColorProc

XmScreen

XmNcolorCalculationProc

XmScreenColorProc

XmScreen

XmNcolormap

Colormap

Core

XmNcolumns

short

XmComboBox,XmSimpleSpinBox,
XmText,XmTextField

XmNcomboBoxType

unsignedchar

XmComboBox

XmNcommand

XmString

XmCommand

XmNcommandChangedCallback

XtCallbackList

XmCommand

XmNcommandEnteredCallback

XtCallbackList

XmCommand

XmNcommandWindow

Widget

XmMainWindow

XmNcommandWindowLocation

unsignedchar

XmMainWindow

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1112

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNconvertCallback

XtCallbackList

XmContainer,XmDrawingArea,
XmPrimitive,XmScale

XmNconvertProc

XtConvertSelection
IncrProc

XmDragContext

XmNcreatePopupChildProc

XtCreatePopupChildProc

Shell

XmNcurrentPageNumber

int

XmNotebook

XmNcursorBackground

Pixel

XmDragContext

XmNcursorForeground

Pixel

XmDragContext

XmNcursorPosition

XmTextPosition

XmText,XmTextField

XmNcursorPositionVisible

Boolean

XmText,XmTextField

XmNdarkThreshold

int

XmScreen

XmNdecimal

String

XmTab

XmNdecimalPoints

short

XmScale,XmSimpleSpinBox,
XmSpinBox

XmNdecrementCallback

XtCallbackList

XmScrollBar

XmNdefaultActionCallback

XtCallbackList

XmContainer,XmList

XmNdefaultArrowSensitivity

unsignedchar

XmSpinBox

XmNdefaultButton

Widget

XmBulletinBoard

XmNdefaultButtonEmphasis

XtEnum

XmDisplay

XmNdefaultButtonShadowThickness

Dimension

XmPushButton

XmNdefaultButtonType

unsignedchar

XmMessageBox

XmNdefaultCopyCursorIcon

Widget

XmScreen

XmNdefaultFontList

XmFontList

VendorShell,XmMenuShell

XmNdefaultInvalidCursorIcon

Widget

XmScreen

XmNdefaultLinkCursorIcon

Widget

XmScreen

XmNdefaultMoveCursorIcon

Widget

XmScreen

XmNdefaultNoneCursorIcon

Widget

XmScreen

XmNdefaultPosition

Boolean

XmBulletinBoard

XmNdefaultSourceCursorIcon

Widget

XmScreen

XmNdefaultValidCursorIcon

Widget

XmScreen

XmNdefaultVirtualBindings

String

XmDisplay

XmNdeleteResponse

unsignedchar

VendorShell

XmNdepth

int

Core,XmDragIcon

XmNdestinationCallback

XtCallbackList

XmContainer,XmDrawingArea,XmList,
XmText,XmTextField

XmNdestroyCallback

XtCallbackList

Core,XmObject

XmNdetail

XmStringTable

XmIconGadget

XmNdetailColumnHeading

XmStringTable

XmContainer

XmNdetailColumnHeadingCount

Cardinal

XmContainer

XmNdetailCount

int

XmIconGadget

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1113

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNdetailOrder

Cardinal*_table

XmContainer

XmNdetailOrderCount

Cardinal

XmContainer

XmNdetailShadowThickness

int

XmArrowButton,XmSpinBox,
XmToggleButton

XmNdetailTabList

XmTabList

XmContainer

XmNdialogStyle

unsignedchar

XmBulletinBoard

XmNdialogTitle

XmString

XmBulletinBoard

XmNdialogType

unsignedchar

XmMessageBox,XmSelectionBox

XmNdirListItemCount

int

XmFileSelectionBox

XmNdirListItems

XmStringTable

XmFileSelectionBox

XmNdirListLabelString

XmString

XmFileSelectionBox

XmNdirMask

XmString

XmFileSelectionBox

XmNdirSearchProc

XmSearchProc

XmFileSelectionBox

XmNdirSpec

XmString

XmFileSelectionBox

XmNdirTextLabelString

XmString

XmFileSelectionBox

XmNdirectory

XmString

XmFileSelectionBox

XmNdirectoryValid

Boolean

XmFileSelectionBox

XmNdisarmCallback

XtCallbackList

XmArrowButton,XmDrawnButton,
XmPushButton,XmToggleButton

XmNdoubleClickInterval

int

XmList

XmNdragCallback

XtCallbackList

XmScale,XmScrollBar

XmNdragDropFinishCallback

XtCallbackList

XmDragContext

XmNdragInitiatorProtocolStyle

unsignedchar

XmDisplay

XmNdragMotionCallback

XtCallbackList

XmDragContext

XmNdragOperations

unsignedchar

XmDragContext

XmNdragProc

XtCallbackProc

XmDropSite

XmNdragReceiverProtocolStyle

unsignedchar

XmDisplay

XmNdragStartCallback

XtCallbackList

XmDisplay

XmNdropFinishCallback

XtCallbackList

XmDragContext

XmNdropProc

XtCallbackProc

XmDropSite

XmNdropRectangles

XRectangie*

XmDropSite

XmNdropSiteActivity

unsignedchar

XmDropSite

XmNdropSiteEnterCallback

XtCallbackList

XmDragContext

XmNdropSiteLeaveCallback

XtCallbackList

XmDragContext

XmNdropSiteOperations

unsignedchar

XmDropSite

XmNdropSiteType

unsignedchar

XmDropSite

XmNdropStartCallback

XtCallbackList

XmDragContext

XmNdropTransfers

XmDropTransferEntryRec* XmDropTransfer

XmNeditMode

int

XmText

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1114

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNeditable

Boolean

XmScale,XmScrollBar,
XmSimpleSpinBox,XmSpinBox,XmText,
XmTextField

XmNenableBtnlTransfer

XtEnum

XmDisplay

XmNenableButtonTab

Boolean

XmDisplay

XmNenableEtchedInMenu

Boolean

XmDisplay

XmNenableMultiKeyBindings

Boolean

XmDisplay

XmNenableThinThickness

Boolean

XmDisplay

XmNenableToggleColor

Boolean

XmDisplay

XmNenableToggleVisual

Boolean

XmDisplay

XmNenableUnselectableDrag

Boolean

XmDisplay

XmNenableWarp

XtEnum

XmDisplay

XmNentryAlignment

unsignedchar

XmRowColumn

XmNentryBorder

Dimension

XmRowColumn

XmNentryCallback

XtCallbackList

XmRowColumn

XmNentryClass

WidgetClass

XmRowColumn

XmNentryParent

Widget

XmContainer

XmNentryVerticalAlignment

unsignedchar

XmRowColumn

XmNentryViewType

unsignedchar

XmContainer

XmNexpandedStatePixmap

Pixmap

XmContainer

XmNexportTargets

Atom*

XmDragContext

XmNexposeCallback

XtCallbackList

XmDrawingArea,XmDrawnButton

XmNextendedSelectionCallback

XtCallbackList

XmList

XmNfileFilterStyle

XtEnum

XmFileSelectionBox

XmNfileListItemCount

int

XmFileSelectionBox

XmNfileListItems

XmStringTable

XmFileSelectionBox

XmNfileListLabelString

XmString

XmFileSelectionBox

XmNfileSearchProc

XmSearchProc

XmFileSelectionBox

XmNfileTypeMask

unsignedchar

XmFileSelectionBox

XmNfillOnArm

Boolean

XmPushButton

XmNfillOnSelect

Boolean

XmToggleButton

XmNfilterLabelString

XmString

XmFileSelectionBox

XmNfirstPageNumber

int

XmNotebook

XmNfocusCallback

XtCallbackList

XmBulletinBoard,XmText,XmTextField

XmNfont

XFontStruct*

XmScreen,XmRendition

XmNfontList

XmFontList

XmComboBox,XmContainer,
XmIconGadget,XmLabel,XmList,
XmScale,XmText,XmTextField

XmNfontName

String

XmRendition

XmNfontType

XmFontType

XmRendition

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1115

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNforeground

Pixel

XmManager,XmPrimitive

XmNforegroundThreshold

int

XmScreen

XmNfractionBase

int

XmForm

XmNframeBackground

Pixel

XmNotebook

XmNframeChildType

unsignedchar

XmFrame

XmNframeShadowThickness

Dimension

XmNotebook

XmNgainPrimaryCallback

XtCallbackList

XmText,XmTextField

XmNgeometry

String

Shell

XmNheight

Dimension

Core,XmDragIcon,XmRectObj

XmNheightInc

int

WMShell

XmNhelpCallback

XtCallbackList

XmGadget,XmManager,XmPrimitive

XmNhelpLabelString

XmString

XmMessageBox,XmSelectionBox

XmNhighlightColor

Pixel

XmGadget,XmManager,XmPrimitive

XmNhighlightOnEnter

Boolean

XmGadget,XmPrimitive,XmScale

XmNhighlightPixmap

Pixmap

XmGadget,XmManager,XmPrimitive

XmNhighlightThickness

Dimension

XmComboBox,XmGadget,XmPrimitive,
XmScale

XmNhistoryItemCount

int

XmCommand

XmNhistoryItems

XmStringTable

XmCommand

XmNhistoryMaxItems

int

XmCommand

XmNhistoryVisibleItemCount

int

XmCommand

XmNhorizontalFontUnit

int

XmScreen

XmNhorizontalScrollBar

Widget

XmList,XmScrolledWindow

XmNhorizontalSpacing

Dimension

XmForm

XmNhotX

Position

XmDragIcon

XmNhotY

Position

XmDragIcon

XmNiconMask

Pixmap

WMShell

XmNiconName

String

TopLevelShell

XmNiconNameEncoding

Atom

TopLevelShell

XmNiconPixmap

Pixmap

WMShell

XmNiconWindow

Window

WMShell

XmNiconX

int

WMShell

XmNiconY

int

WMShell

XmNiconic

Boolean

TopLevelShell

XmNimportTargets

Atom*

XmDropSite

XmNincrement

int

XmScrollBar

XmNincrementCallback

XtCallbackList

XmScrollBar

XmNincrementValue

int

XmSimpleSpinBox,XmSpinBox

XmNincremental

Boolean

XmDragContext,XmDropTransfer

XmNindeterminateInsensitivePixmap

Pixmap

XmToggleButton

XmNindeterminatePixmap

Pixmap

XmToggleButton

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1116

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNindicatorOn

Boolean

XmToggleButton

XmNindicatorSize

Dimension

XmToggleButton

XmNindicatorType

unsignedchar

XmToggleButton

XmNinitialDelay

int

XmScrollBar,XmSpinBox

XmNinitialFocus

Widget

XmManager

XmNinitialResourcesPersistent

Boolean

Core

XmNinitialState

int

WMShell

XmNinnerMarginHeight

Dimension

XmNotebook

XmNinnerMarginWidth

Dimension

XmNotebook

XmNinput

Boolean

WMShell

XmNinputCallback

XtCallbackList

XmDrawingArea

XmNinputMethod

String

VendorShell

XmNinputPolicy

XmInputPolicy

VendorShell

XmNinsensitiveStippleBitmap

Pixmap

XmScreen

XmNinsertPosition

XtOrderProc

Composite

XmNinvalidCursorForeground

Pixel

XmDragContext

XmNisAligned

Boolean

XmRowColumn

XmNisHomogeneous

Boolean

XmRowColumn

XmNitemCount

int

XmComboBox,XmList

XmNitems

XmStringTable

XmComboBox,XmList

XmNkeyboardFocusPolicy

unsignedchar

VendorShell

XmNlabelFontList

XmFontList

XmBulletinBoard,VendorShell,
XmMenuShell

XmNlabelInsensitivePixmap

Pixmap

XmLabel

XmNlabelPixmap

Pixmap

XmLabel

XmNlabelRenderTable

XmRenderTable

VendorShell,XmBulletinBoard,
XmMenuShell

XmNlabelString

XmString

XmIconGadget,XmLabel,
XmRowColumn

XmNlabelType

unsignedchar

XmLabel

XmNlargeCellHeight

Dimension

XmContainer

XmNlargeCellWidth

Dimension

XmContainer

XmNlargeIconMask

Pixmap

XmIconGadget

XmNlargeIconPixmap

Pixmap

XmIconGadget

XmNlargeIconX

float

XmContainer

XmNlargeIconY

float

XmContainer

XmNlargeIconY

Pixmap

XmIconGadget

XmNlastPageNumber

int

XmNotebook

XmNlayoutDirection

XmDirection

VendorShell,XmGadget,XmManager,
XmMenuShell,XmPrimitive

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1117

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNlayoutType

unsignedchar

XmContainer

XmNleftAttachment

unsignedchar

XmForm

XmNleftOffset

int

XmForm

XmNleftPosition

int

XmForm

XmNleftWidget

Widget

XmForm

XmNlightThreshold

int

XmScreen

XmNlist

Widget

XmComboBox

XmNlistItemCount

int

XmSelectionBox

XmNlistItems

XmStringTable

XmSelectionBox

XmNlistLabelString

XmString

XmSelectionBox

XmNlistMarginHeight

Dimension

XmList

XmNlistMarginWidth

Dimension

XmList

XmNlistSizePolicy

unsignedchar

XmList

XmNlistSpacing

Dimension

XmList

XmNlistUpdated

Boolean

XmFileSelectionBox

XmNlistVisibleItemCount

int

XmSelectionBox

XmNloadModel

unsignedchar

XmRendition

XmNlosePrimaryCallback

XtCallbackList

XmText,XmTextField

XmNlosingFocusCallback

XtCallbackList

XmText,XmTextField

XmNmainWindowMarginHeight

Dimension

XmMainWindow

XmNmainWindowMarginWidth

Dimension

XmMainWindow

XmNmajorTabSpacing

Dimension

XmNotebook

XmNmapCallback

XtCallbackList

XmBulletinBoard,XmRowColumn

XmNmappedWhenManaged

Boolean

Core

XmNmappingDelay

int

XmCascadeButton

XmNmargin

Dimension

XmSeparator

XmNmarginBottom

Dimension

XmLabel

XmNmarginHeight

Dimension

XmBulletinBoard,XmComboBox,
XmContainer,XmDrawingArea,
XmFrame,XmIconGadget,XmLabel,
XmPanedWindow,XmRowColumn,
XmSpinBox,XmText,XmTextField

XmNmarginLeft

Dimension

XmLabel

XmNmarginRight

Dimension

XmLabel

XmNmarginTop

Dimension

XmLabel

XmNmarginWidth

Dimension

XmBulletinBoard,XmComboBox,
XmContainer,XmDrawingArea,
XmFrame,XmIconGadget,XmLabel,
XmPanedWindow,XmRowColumn,
XmSpinBox,XmText,XmTextField

XmNmask

Pixmap

XmDragIcon

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1118

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNmatchBehavior

unsignedchar

XmComboBox,XmList

XmNmaxAspectX

int

WMShell

XmNmaxAspectY

int

WMShell

XmNmaxHeight

int

WMShell

XmNmaxLength

int

XmText,XmTextField

XmNmaxWidth

int

WMShell

XmNmaximum

int

XmScale,XmScrollBar

XmNmaximumValue

int

XmSimpleSpinBox,XmSpinBox

XmNmenuAccelerator

String

XmRowColumn

XmNmenuBar

Widget

XmMainWindow

XmNmenuCursor

String

XmScreen

XmNmenuHelpWidget

Widget

XmRowColumn

XmNmenuHistory

Widget

XmRowColumn

XmNmenuPost

String

XmRowColumn

XmNmessageAlignment

unsignedchar

XmMessageBox

XmNmessageString

XmString

XmMessageBox

XmNmessageWindow

Widget

XmMainWindow

XmNminAspectX

int

WMShell

XmNminAspectY

int

WMShell

XmNminHeight

int

WMShell

XmNminWidth

int

WMShell

XmNminimizeButtons

Boolean

XmMessageBox,XmSelectionBox

XmNminimum

int

XmScale,XmScrollBar

XmNminimumValue

int

XmSimpleSpinBox,XmSpinBox

XmNminorTabSpacing

Dimension

XmNotebook

XmNmnemonic

KeySym

XmLabel,XmRowColumn

XmNmnemonicCharSet

String

XmLabel,XmRowColumn

XmNmodifyVerifyCallback

XtCallbackList

XmText,XmTextField

XmNmodifyVerifyCallbackWcs

XtCallbackList

XmText,XmTextField

XmNmotifVersion

int

XmDisplay

XmNmotionVerifyCallback

XtCallbackList

XmText,XmTextField

XmNmoveOpaque

Boolean

XmScreen

XmNmultiClick

unsignedchar

XmArrowButton,XmDrawnButton,
XmPushButton

XmNmultipleSelectionCallback

XtCallbackList

XmList

XmNmustMatch

Boolean

XmSelectionBox

XmNmwmDecorations

int

VendorShell

XmNmwmFunctions

int

VendorShell

XmNmwmInputMode

int

VendorShell

XmNmwmMenu

String

VendorShell

XmNnavigationType

XmNavigationType

XmGadget,XmManager,XmPrimitive

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1119

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNnoFontCallback

XtCallbackList

XmDisplay

XmNnoMatchCallback

XtCallbackList

XmSelectionBox

XmNnoMatchString

XmString

XmFileSelectionBox

XmNnoRenditionCallback

XtCallbackList

XmDisplay

XmNnoResize

Boolean

XmBulletinBoard

XmNnoneCursorForeground

Pixel

XmDragContext

XmNnotebookChildType

unsignedchar

XmNotebook

XmNnumChildren

Cardinal

Composite

XmNnumColumns

short

XmRowColumn

XmNnumDropRectangles

Cardinal

XmDropSite

XmNnumDropTransfers

Cardinal

XmDropTransfer

XmNnumExportTargets

Cardinal

XmDragContext

XmNnumImportTargets

Cardinal

XmDropSite

XmNnumValues

int

XmSimpleSpinBox,XmSpinBox

XmNoffsetModel

XmOffsetModel

XmTab

XmNoffsetX

Position

XmDragIcon

XmNoffsetY

Position

XmDragIcon

XmNokCallback

XtCallbackList

XmMessageBox,XmSelectionBox

XmNokLabelString

XmString

XmMessageBox,XmSelectionBox

XmNoperationChangedCallback

XtCallbackList

XmDragContext

XmNoperationCursorIcon

Widget

XmDragContext

XmNoptionLabel

XmString

XmRowColumn

XmNoptionMnemonic

KeySym

XmRowColumn

XmNorientation

unsignedchar

XmNotebook,XmPanedWindow,
XmRowColumn,XmScale,XmScrollBar,
XmSeparator

XmNoutlineButtonPolicy

unsignedchar

XmContainer

XmNoutlineChangedCallback

XtCallbackList

XmContainer

XmNoutlineColumnWidth

Dimension

XmContainer

XmNoutlineIndentation

Dimension

XmContainer

XmNoutlineLineStyle

unsignedchar

XmContainer

XmNoutlineState

unsignedchar

XmContainer

XmNoverrideRedirect

Boolean

Shell

XmNpacking

unsignedchar

XmRowColumn

XmNPageChangedCallback

XtCallbackList

XmNotebook

XmNpageDecrementCallback

XtCallbackList

XmScrollBar

XmNpageIncrement

int

XmScrollBar

XmNpageIncrementCallback

XtCallbackList

XmScrollBar

XmNpageNumber

int

XmNotebook

XmNpaneMaximum

Dimension

XmPanedWindow

XmNpaneMinimum

Dimension

XmPanedWindow

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1120

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNpathMode

XtEnum

XmFileSelectionBox

XmNpattern

XmString

XmFileSelectionBox

XmNpendingDelete

Boolean

XmTextField

XmNpixmap

Pixmap

XmDragIcon

XmNpopdownCallback

XtCallbackList

Shell

XmNpopupCallback

XtCallbackList

Shell

XmNpopupEnabled

Boolean

XmRowColumn

XmNpopupHandlerCallback

XtCallbackList

XmManager,XmPrimitive

XmNposition

int

XmSimpleSpinBox,XmSpinBox

XmNpositionIndex

short

XmContainer,XmNotebook,
XmPanedWindow,XmRowColumn

XmNpositionMode

XtEnum

XmComboBox

XmNpositionType

unsignedchar

XmSimpleSpinBox,XmSpinBox

XmNpostFromButton

int

XmRowColumn

XmNpreeditType

String

VendorShell

XmNpirmaryOwnership

unsignedchar

XmContainer,XmList

XmNprocessingDirection

unsignedchar

XmScale,XmScrollBar

XmNpromptString

XmString

XmCommand

XmNpushButtonEnabled

Boolean

XmDrawnButton

XmNqualifySearchDataProc

XmQualifyProc

XmFileSelectionBox

XmNradioAlwaysOne

Boolean

XmRowColumn

XmNradioBehavior

Boolean

XmRowColumn

XmNrecomputeSize

Boolean

XmLabel

XmNrefigureMode

Boolean

XmPanedWindow

XmNrenderTable

XmRenderTable

XmComboBox,XmContainer,
XmIconGadget,XmLabel,XmList,
XmScale,XmText,XmTextField

XmNrenditionBackground

Pixel

XmRendition

XmNrenditionForeground

Pixel

XmRendition

XmNrepeatDelay

int

XmScrollBar,XmSpinBox

XmNresizable

Boolean

XmForm,XmNotebook

XmNresizeCallback

XtCallbackList

XmDrawingArea,XmDrawnButton

XmNresizeHeight

Boolean

XmRowColumn,XmText

XmNresizePolicy

unsignedchar

XmBulletinBoard,XmDrawingArea

XmNresizeWidth

Boolean

XmRowColumn,XmText,XmTextField

XmNrightAttachment

unsignedchar

XmForm

XmNrightOffset

int

XmForm

XmNrightPosition

int

XmForm

XmNrightWidget

Widget

XmForm

XmNrowColumnType

unsignedchar

XmRowColumn

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1121

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNrows

short

XmText

XmNrubberPositioning

Boolean

XmForm

XmNsashHeight

Dimension

XmPanedWindow

XmNsashIndent

Position

XmPanedWindow

XmNsashShadowThickness

Dimension

XmPanedWindow

XmNsashWidth

Dimension

XmPanedWindow

XmNsaveUnder

Boolean

Shell

XmNscaleHeight

Dimension

XmScale

XmNscaleMultiple

int

XmScale

XmNscaleWidth

Dimension

XmScale

XmNscreen

Screen*

Core

XmNscrollBarDisplayPolicy

unsignedchar

XmList,XmScrolledWindow

XmNscrollBarPlacement

unsignedchar

XmScrolledWindow

XmNscrollHorizontal

Boolean

XmText

XmNscrollLeftSide

Boolean

XmText

XmNscrollTopSide

Boolean

XmText

XmNscrollVertical

Boolean

XmText

XmNscrolledWindowChildType

Widget

XmScrolledWindow

XmNscrolledWindowMarginHeight

Dimension

XmScrolledWindow

XmNscrolledWindowMarginWidth

Dimension

XmScrolledWindow

XmNscrollingPolicy

unsignedchar

XmScrolledWindow

XmNselectColor

Pixel

XmContainer,XmList,XmToggleButton

XmNselectInsensitivePixmap

Pixmap

XmToggleButton

XmNselectPixmap

Pixmap

XmToggleButton

XmNselectThreshold

int

XmTextField

XmNselectedItem

XmString

XmComboBox

XmNselectedItemCount

int

XmList

XmNselectedItems

XmStringTable

XmList

XmNselectedObjectCount

int

XmContainer

XmNselectedObjects

WidgetList

XmContainer

XmNselectedPosition

int

XmComboBox

XmNselectedPositionCount

int

XmList

XmNselectedPositions

int*_table

XmList

XmNselectionArray

XtPointer

XmTextField

XmNselectionArrayCount

int

XmTextField

XmNselectionCallback

XtCallbackList

XmComboBox,XmContainer

XmNselectionLabelString

XmString

XmSelectionBox

XmNselectionMode

unsignedchar

XmList

XmNselectionPolicy

unsignedchar

XmContainer,XmList

XmNselectionTechnique

unsignedchar

XmContainer

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1122

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNsensitive

Boolean

Core,XmRectObj

XmNseparatorOn

Boolean

XmPanedWindow

XmNseparatorType

unsignedchar

XmSeparator

XmNset

unsignedchar

XmToggleButton

XmNshadowThickness

Dimension

XmGadget,XmManager,XmPrimitive

XmNshadowType

unsignedchar

XmBulletinBoard,XmDrawnButton,
XmFrame

XmNshellUnitType

unsignedchar

VendorShell

XmNshowArrows

Boolean

XmScale,XmScrollBar

XmNshowAsDefault

Dimension

XmPushButton

XmNshowSeparator

Boolean

XmMainWindow

XmNshowValue

Boolean

XmScale

XmNsimpleCallback

XtCallbackProc

XmRowColumn

XmNsingleSelectionCallback

XtCallbackList

XmList

XmNskipAdjust

Boolean

XmPanedWindow

XmNsliderMark

XtEnum

XmScale,XmScrollBar

XmNsliderSize

int

XmScrollBar

XmNsliderVisual

Visual*

XmScale,XmScrollBar

XmNslidingMode

XtEnum

XmScale,XmScrollBar

XmNsmallCellHeight

Dimension

XmContainer

XmNsmallCellWidth

Dimension

XmContainer

XmNsmallIconMask

Pixmap

XmIconGadget

XmNsmallIconPixmap

Pixmap

XmIconGadget

XmNsmallIconX

float

XmContainer

XmNsmallIconY

float

XmContainer

XmNsnapBackMultiple

unsignedshort

XmScrollBar

XmNsource

XmTextSource

XmText

XmNsourceCursorIcon

Widget

XmDragContext

XmNsourcePixmapIcon

Widget

XmDragContext

XmNspacing

Dimension

XmIconGadget,XmPanedWindow,
XmRowColumn,XmScrolledWindow,
XmSpinBox,XmToggleButton

XmNspatialIncludeModel

unsignedchar

XmContainer

XmNspatialResizeModel

unsignedchar

XmContainer

XmNspatialSnapModel

unsignedchar

XmContainer

XmNspatialStyle

unsignedchar

XmContainer

XmNspinBoxChildType

unsignedchar

XmSimpleSpinBox,XmSpinBox

XmNstateCursorIcon

Widget

XmDragContext

XmNstrikethruType

unsignedchar

XmRendition

XmNstringDirection

XmStringDirection

XmLabel,XmList,XmManager

XmNsubMenuId

Widget

XmCascadeButton,XmRowColumn

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1123

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNsymbolPixmap

Pixmap

XmMessageBox

XmNtabList

XmTabList

XmRendition

XmNtabValue

float

XmTab

XmNtag

XmStringTag

XmRendition

XmNtearOffMenuActivateCallback

XtCallbackList

XmRowColumn

XmNtearOffMenuDeactivateCallback

XtCallbackList

XmRowColumn

XmNtearOffModel

unsignedchar

XmRowColumn

XmNtearOffTitle

XmString

XmRowColumn

XmNtextAccelerators

XtAccelerators

XmSelectionBox

XmNtextColumns

short

XmSelectionBox

XmNtextField

Widget

XmComboBox,XmSimpleSpinBox,
XmSpinBox

XmNtextFontList

XmFontList

VendorShell,XmBulletinBoard

XmNtextRenderTable

XmRenderTable

VendorShell,XmBulletinBoard

XmNtextString

XmString

XmSelectionBox

XmNtextTranslations

XtTranslations

XmBulletinBoard

XmNtitle

String

WMShell

XmNtitleEncoding

Atom

WMShell

XmNtitleString

XmString

XmScale

XmNtoBottomCallback

XtCallbackList

XmScrollBar

XmNtoTopCallback

XtCallbackList

XmScrollBar

XmNtoggleMode

unsignedchar

XmToggleButton

XmNtopAttachment

unsignedchar

XmForm

XmNtopCharacter

XmTextPosition

XmText

XmNtopItemPosition

int

XmList

XmNtopLevelEnterCallback

XtCallbackList

XmDragContext

XmNtopLevelLeaveCallback

XtCallbackList

XmDragContext

XmNtopOffset

int

XmForm

XmNtopPosition

int

XmForm

XmNtopShadowColor

Pixel

XmGadget,XmManager,XmPrimitive

XmNtopShadowPixmap

Pixmap

XmGadget,XmManager,XmPrimitive

XmNtopWidget

Widget

XmForm

XmNtransferProc

XtSelectionCallbackProc

XmDropTransfer

XmNtransferStatus

unsignedchar

XmDropTransfer

XmNtransient

Boolean

WMShell

XmNtransientFor

Widget

TransientShell

XmNtranslations

XtTranslations

Core

XmNtraversalOn

Boolean

XmGadget,XmManager,XmPrimitive

XmNtraverseObscuredCallback

XtCallbackList

XmScrolledWindow

XmNtroughColor

Pixel

XmScrollBar

XmNunderlineType

unsignedchar

XmRendition

(tablecontinuedonnextpage)

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1124

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

(tablecontinuedfrompreviouspage)
ResourceName

MotifType

DefinedinClass

XmNunitType

unsignedchar

VendorShell,XmGadget,XmManager,
XmPrimitive,XmTab

XmNunmapCallback

XtCallbackList

XmBulletinBoard,XmRowColumn

XmNunpostBehavior

unsignedchar

XmScreen

XmNunselectColor

Pixel

XmToggleButton

XmNuseAsyncGeometry

Boolean

VendorShell

XmNuseColorObject

Boolean

XmScreen

XmNuserData

XtPointer

XmDisplay,XmGadget,XmManager,
XmPrimitive,XmScreen

XmNvalidCursorForeground

Pixel

XmDragContext

XmNvalue

String

XmText,XmTextField

XmNvalue

int

XmScale,XmScrollBar

XmNvalues

XmStringTable

XmSimpleSpinBox,XmSpinBox

XmNvalueChangedCallback

XtCallbackList

XmScale,XmScrollBar,XmText,
XmTextField,XmToggleButton

XmNvalueWcs

wchar_t*

XmText,XmTextField

XmNverifyBell

Boolean

XmText,XmTextField

XmNverticalFontUnit

int

XmScreen

XmNverticalScrollBar

Widget

XmList,XmScrolledWindow

XmNvericalSpacing

Dimension

XmForm

XmNviewType

unsignedchar

XmIconGadget

XmNvisibleItemCount

int

XmComboBox,XmList

XmNvisibleWhenOff

Boolean

XmToggleButton

XmNvisual

Visual*

Shell

XmNvisualEmphasis

unsignedchar

XmIconGadget

XmNvisualPolicy

unsignedchar

XmScrolledWindow

XmNwaitForWm

Boolean

WMShell

XmNwhichButton

unsignedint

XmRowColumn

XmNwidth

Dimension

Core,XmDragIcon,XmRectObj

XmNwidthInc

int

WMShell

XmNwinGravity

int

WMShell

XmNwindowGroup

Window

WMShell

XmNwinTimeout

int

WMShell

XmNwordWrap

Boolean

XmText

XmNworkWindow

Widget

XmScrolledWindow

XmNwrap

Boolean

XmSimpleSpinBox,XmSpinBox

XmNx

Position

Core,XmRectObj

XmNy

Position

Core,XmRectObj

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1125

APPENDIXD
NEWFEATURESINMOTIF2.1AND2.0
ThisappendixprovidesasummaryofthenewfeaturesinMotif2.1and2.0.ItliststhenewtoolkitfunctionsandwidgetclassesinMotif2.1and2.0,aswellasany
newresourcesaddedtoexistingwidgetclasses.Formoreinformationonthefunctionsandwidgets,seetheappropriatereferencepagesinSection1,Motif
FunctionsandMacros,andSection2,MotifandXtWidgetClasses.

D.1
NewToolkitFunctions
XmComboBoxAddItem()

AddsanitemtoaComboBox.

XmComboBoxDeletePos()

DeletesanitemfromaComboBox.

XmComboBoxSelectItem()

SelectsaniteminaComboBox.

XmComboBoxSetItem()

SelectsandmakesvisibleaniteminaComboBox.

XmComboBoxUpdate()

UpdatethestateofaComboBox.

XmContainerCopy()

CopyselectedContaineritemstotheclipboard.

XmContainerCopyLink()

CopylinkstoselectedContaineritemstotheclipboard.

XmContainerCut()

CutselectedContaineritemstotheclipboard.

XmContainerGetItemChildren()

RetrievethelogicalchildrenofaContaineritem.

XmContainerPaste()

CopyclipboarddataintoaContainer.

XmContainerPasteLink()

CopylinkstoclipboarddataintoaContainer.

XmContainerRelayout()

ForcetherelayoutofContaineritems.

XmContainerReorder()

SorttheitemswithinaContainer.

XmConvertStringToUnits()

Convertaunitspecificationexpressedasastringtoan
integralvalue.

XmCvtByteStreamToXmString()

Convertabytestreamrepresentationtoacompound
string.

XmCvtTextPropertyToXmStringTable
()

Convertatextpropertytoacompoundstringtable.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1126

XmCvtXmStringTableToTextProperty()

Convertacompoundstringtabletoatextproperty.

XmCvtXmStringToByteStream()

Convertacompoundstringtoabytestream
representation.

XmDirectionMatch()

ComparetwoXmDirectionquantities.

XmDirectionMatchPartial()

LooselycomparetwoXmDirectionquantities.

XmDirectionToStringDirection()

ConvertanXmDirectiontypetoaXmStringDirection
type.

XmFontListCreate_r()

CreateanXmFontListinathreadsafemanner.

XmFontListEntryCreate_r()

CreateanXmFontListEntryinathreadsafemanner.

XmGetScaledPixmap()

Readapixmapandscaleitforprinting.

XmImCloseXIM()

Closeallinputcontexts.

XmImFreeXIC()

Freeaninputcontext.

XmImGetXIC()

Createaninputcontextforawidget.

XmImMbResetIC()

Resetaninputcontext.

XmImSetXIC()

Registerawidgetwithanexistinginputcontext.

XmNotebookGetPageInfo()

RetrievedataaboutaNotebookpage.

XmObjectAtPoint()

Findthewidgetmostcloselyassociatedwithapoint.

XmParseMappingCreate()

Createaparsemappingobject.

XmParseMappingFree()

Freeaparsemappingobject.

XmParseMappingGetValues()

Retrievethevaluesofaparsemappingobject.

XmParseMappingSetValues()

Setthevaluesofaparsemappingobject.

XmParseTableFree()

Freeanarrayofparsemappingobjects.

XmPrintPopupPDM()

IssuearequesttothePrintDisplayManager.

XmPrintSetup()

InitializeaPrintShellandXPrintconnection.

XmPrintToFile()

PrintXPrintServerdatatofile.

XmRedisplayWidget()

Synchronouslyforceawidgettoexposeitself.

XmRenderTableAddRenditions()

Addrenditionobjectstoarendertable.

XmRenderTableCopy()

Copyarendertable.

XmRenderTableCvtFromProp()

Convertatextpropertyintoarendertable.

XmRenderTableCvtToProp()

Convertarendertabletoatextproperty.

XmRenderTableFree()

Freearendertable.

XmRenderTableGetRendition()

Findarenditionobjectinarendertable.

XmRenderTableGetRenditions()

Findagroupofrenditionobjectsinarendertable.

XmRenderTableGetTags()

Retrievealltherenditiontagsinarendertable.

XmRenderTableRemoveRenditions()

Removerenditionsfromarendertable.

XmRenditionCreate()

Createarenditionobject.

XmRenditionFree()

Freearenditionobject.

XmRenditionRetrieve()

Retrievethevaluesofarenditionobject.

XmRenditionUpdate()

Setthevaluesofarenditionobject.

XmScaleSetTicks()

PlacetickmarksalongtheedgeofaScale.

XmSimpleSpinBoxAddItem()

AddanitemtoaSimpleSpinBox.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1127

XmSimpleSpinBoxDeletePos()

DeleteanitemfromaSimpleSpinBox.

XmSimpleSpinBoxSetItem()

SelectaniteminaSimpleSpinBox.

XmSpinBoxValidatePosition()

ValidateapositioninaSpinBox.

XmStringByteStreamLength()

Returnthelengthofabytestreamrepresentationofa
compoundstring.

XmStringComponentCreate()

Createacomponentinacompoundstring.

XmStringConcatAndFree()

Concatenatetwocompoundstrings,andfreetheoriginals.

XmStringDirectionToDirection()

ConvertanXmStringDirectiontypeintoanXmDirection
type.

XmStringGenerate()

Generateanewcompoundstringusingthedefaultparse
table.

XmStringGetNextTriple()

Retrievethetype,length,andvalueofthenextcompound
stringcomponent.

XmStringIsVoid()

Checkifacompoundstringisemptyofcomponents.

XmStringParseText()

Convertastringintoacompoundstringusingaparse
table.

XmStringPeekNextTriple()

Lookaheadatthetypeofthenextcompoundstring
component.

XmStringPutRendition()

Addrenditioncomponentsaroundacompoundstring.

XmStringTableParseStringArray()

Convertanarrayofstringsintoanarrayofcompound
stringsusingaparsetable.

XmStringTableProposeTablist()

CalculateanXmTabListforacompoundstring.

XmStringTableToXmString()

Convertacompoundstringtableintoacompoundstring.

XmStringTableUnparse()

Convertanarrayofcompoundstringsintoanarrayof
stringsusingaparsetable.

XmStringToXmStringTable()

Convertastringintoanarrayofcompoundstrings.

XmStringUnparse()

Convertacompoundstringintoastringusingaparse
table.

XmTabCreate()

CreateanewXmTabobject.

XmTabFree()

FreeanXmTabobject.

XmTabGetValues()

RetrievethevaluesofanXmTabobject.

XmTabListCopy()

CopyanarrayofXmTabobjects.

XmTabListFree()

FreeanarrayofXmTabobjects.

XmTabListGetTab()

FindanXmTabobjectwithinanarray.

XmTabListInsertTabs()

AddXmTabobjectstoanarrayoftabs.

XmTabListRemoveTabs()

RemoveXmTabobjectsfromanarrayoftabs.

XmTabListReplacePositions()

ReplaceXmTabobjectswithinanarrayoftabs.

XmTabListTabCount()

ReturnthenumberofXmTabobjectsinanarrayoftabs.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1128

XmTabSetValue()

SetthevalueofanXmTabobject.

XmTextCopyLink()

Copyalinktotheprimaryselectionintotheclipboard.

XmTextGetCenterline()

Returnthecenterlineofaverticallyorientedtextstring.

XmTextPasteLink()

Copyalinkfromtheclipboardselectionattheinsertion
cursor.

XmToggleButtonSetValue()

SetthevalueofatristateToggleButton.

XmTransferDone()

Signaltheendofdatatransferoperations.

XmTransferSendRequest()

Transmitamultipledatatransferrequest.

XmTransferSetParameters()

Specifyparametersforthenextdatatransferrequest.

XmTransferStartRequest()

Initiateamultipledatatransferrequest.

XmTransferValue()

Issueadatatransferrequest.

D.2
ObsoleteToolkitFunctions
XmFontListAppendEntry()

SupersededbyXmRenderTableAddRenditions
().

XmFontListCopy()

SupersededbyXmRenderTableCopy().

XmFontListCreate()

SupersededbyXmRenditionCreate()and
XmRenderTableAddRenditions().

XmFontListEntryCreate()

SupersededbyXmRenditionCreate().

XmFontListEntryFree()

SupersededbyXmRenditionFree().

XmFontListEntryGetFont()

SupersededbyXmRenditionRetrieve().

XmFontListEntryGetTag()

SupersededbyXmRenditionRetrieve().

XmFontListEntryLoad()

SupersededbysettingtheXmNloadModelofa
renditionobject.

XmFontListFree()

SupersededbyXmRenderTableFree().

XmFontListGetNextFont()

SupersededbyXmRenditionRetrieve().

XmFontListNextEntry()

SupersededbyXmRenderTableGetRendition
().

XmFontListRemoveEntry()

Supersededby
XmRenderTableRemoveRenditions().

XmGetAtomName()

SupersededbyXGetAtomName().

XmInternAtom()

SupersededbyXInternAtom().

XmRepTypeInstallTearOffModelConverter()

Internallyinstalled.

XmMainWindowSep1()

SupersededbyXtNameToWidget().

XmMainWindowSep2()

SupersededbyXtNameToWidget().

XmMainWindowSep3()

SupersededbyXtNameToWidget().

XmMainWindowSetAreas()

SupersededbyXtSetValues()of
XmNhorizontalScrollBar,
XmNverticalScrollBar,XmNworkWindow,
XmNmenuBar,andXmNcommandWindow,
resources.

XmScrolledWindowSetAreas()

SupersededbyXtSetValues()of
XmNhorizontalScrollBar,
XmNverticalScrollBar,and

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1129

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNworkWindowresources.

XmStringCreateLtoR()

SupersededbyXmStringGenerate().

XmStringGetLtoR()

SupersededbyXmStringUnparse().

XmStringGetNextComponent()

SupersededbyXmStringGetNextTriple().

XmStringGetNextSegment()

SupersededbyXmStringGetNextTriple().

XmStringPeekNextComponent()

SupersededbyXmStringPeekNextTriple().

XmStringSegmentCreate()

SupersededbyXmStringComponentCreate()
andXmStringConcat().

D.3
NewWidgetClasses
XmComboBox

Awidgetwhichcombinestextinputwithlistselection.

XmContainer

Ageneralpurposemanagerforprovidinggrid,tree,orfree
formatlayoutofIconGadgetchildren.

XmGrabShell

Apopupshellwhichgrabsthekeyboardandpointer.

XmIconGadget

Agadgetwhichsupportslabelledpixmaps.

XmNotebook

Alayoutwidgetwhichdisplaysonechildatatime.

XmParseMapping

Anopaquetypethatrepresentsanentryinaparsetable.

XmPrintShell

AninterfacetotheX11R6XpXPrintutilities.

XmRendition

Anopaquetypethatrepresentsanentryinarendertable.

XmSimpleSpinBox

Awidgetwhichcyclesthroughasetofchoices.

XmSpinBox

Awidgetwhichcontrolscyclingthroughpossiblymultiplesetsof
choices.

D.4
NewResourcesinExistingWidgetClasses

VendorShell

XmNbuttonRenderTable
XmNinputPolicy
XmNlabelRenderTable
XmNlayoutDirection
XmNtextRenderTable
XmNunitType

XmArrowButton

XmNdetailShadowThickness

XmBulletinBoard

XmNbuttonRenderTable
XmNlabelRenderTable
XmNtextRenderTable

XmDrawingArea

XmNconvertCallback
XmNdestinationCallback

XmDisplay

XmNdefaultButtonEmphasis
XmNenableBtn1Transfer
XmNenableButtonTab
XmNenableDragIcon
XmNenableEtchedInMenu

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1130

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNenableMultiKeyBindings
XmNenableThinThickness
XmNenableToggleColor
XmNenableToggleVisual
XmNenableUnselectableDrag
XmNenableWarp
XmNmotifVersion
XmNuserData
XmNnoFontCallback
XmNnoRenditionCallback

XmFileSelectionBox

XmNdirTextLabelString
XmNfileFilterStyle
XmNpathMode

XmFrame

XmNframeChildType

XmGadget

XmNbackground
XmNbackgroundPixmap
XmNbottomShadowPixmap
XmNhighlightPixmap
XmNlayoutDirection
XmNtopShadowPixmap

XmLabel

XmNrenderTable

XmList

XmNhorizontalScrollBar
XmNmatchBehavior
XmNprimaryOwnership
XmNrenderTable
XmNselectColor
XmNselectPositionCount
XmNselectPositions
XmNselectionMode
XmNverticalScrollBar
XmNdestinationCallback

XmManager

XmNlayoutDirection
XmNpopupHandlerCallback

XmMenuShell

XmNbuttonRenderTable
XmNlabelRenderTable
XmNlayoutDirection

XmPanedWindow

XmNorientation
XmNlayoutDirection

XmPrimitive

XmNlayoutDirection
XmNconvertCallback
XmNpopupHandlerCallback

XmRowColumn

XmNtearOffTitle

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1131

XmScreen

XmNbitmapConversionModel
XmNcolorAllocationProc
XmNcolorCalculationProc
XmNinsensitiveStippleBitmap
XmNuseColorObject

XmScrollBar

XmNeditable
XmNsliderVisual
XmNslidingMode
XmNsnapBackMultiple

XmScrolledWindow

XmNautoDragModel
XmNscrolledWindowChildType

XmScale

XmNeditable
XmNrenderTable
XmNshowArrows
XmNsliderMark
XmNsliderSize
XmNsliderVisual
XmNslidingMode
XmNconvertCallback

XmText

XmNtotalLines
XmNdestinationCallback

XmTextField

XmNdestinationCallback

XmToggleButton

XmNdetailShadowThickness
XmNindeterminateInsensitivePixmap
XmNindeterminatePixmap
XmNtoggleMode
XmNunselectColor

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1133

INDEX
A
applications
ensureupwardcompatible,344345
ApplicationShell,613
ArgListdatatype,1077
ArrowButton,650
ArrowButtonGadget,655
Atomdatatype,1077
atoms
returnforgivenpropertynamestring,206

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

B
baseline
getpositionof,492
Booleandatatype,1078
BulletinBoard,657
BulletinBoardDialog,664
C
callbackstructures
XmPrintShellCallbackStruct,875
XmAnyCallbackStruct,661,666,779,793,823,836,868,982
XmArrowButtonCallbackStruct,652
XmComboBoxCallbackStruct,681
XmCommandCallbackStruct,688
XmContainerOutlineCallbackStruct,701
XmContainerSelectCallbackStruct,701
XmConvertCallbackStruct,562,701,735,868,917
XmDestinationCallbackStruct,564,702,735,806,981
XmDisplayCallbackStruct,720
XmDragDropFinishCallbackStruct,726
XmDragMotionCallbackStruct,726
XmDragProcCallbackStruct,747
XmDragStartCallbackStruct,720
XmDrawingAreaCallbackStruct,734
XmDrawnButtonCallbackStruct,740
XmDropFinishCallbackStruct,726
XmDropProcCallbackStruct,748
XmDropSiteEnterCallbackStruct,726
XmDropSiteLeaveCallbackStruct,726
XmDropStartCallbackStruct,727
XmFileSelectionBoxCallbackStruct,759
XmListCallbackStruct,805
XmNotebookCallbackStruct,847
XmOperationChangedEnterCallbackStruct,727
XmPopupHandlerCallbackStruct,823,868
XmPushButtonCallbackStruct,883
XmRowColumnCallbackStruct,907
XmScaleCallbackStruct,917
XmScrollBarCallbackStruct,932
XmSelectionBoxCallbackStruct,949
XmSpinBoxCallbackStruct,970
XmToggleButtonCallbackStruct,1005
XmTopLevelEnterCallbackStruct,727

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1134

callbackstructures
(cont'd)
XmTopLevelLeaveCallbackStruct,727
XmTraverseObscuredCallbackStruct,943
callbacks
addingtoprotocols,9,13
removefromXA_WM_PROTOCOLS,307
Cardinaldatatype,1078
CascadeButton,665
settinghighlightstateof,17
CascadeButtonGadget,670
inoptionmenus,278
centerline
getpositionof,493
CheckBox,673
compoundobject,583
clipboard
copyprimaryselectionto,483
copyingalinktotheprimaryselection,480
copyingprimaryselectionto,478
insertselection,518,520
removetext,483
color
andwidgets,18,161
calculatedefault,361
Colormapdatatype,1078
ComboBox,675
addingcompoundstringsto,53
deleteitemfrom,55
selectitem,56
setitem,57
update,58
Command
displayingerrormessagesin,60
gettingspecifiedchildof,61
replacingcommandstring,62
Commands
appendingcompoundstringsto,59
Composite,616
compoundobjects
CheckBox,583
MenuBar,585
OptionMenu,588
PopupMenu,591
PulldownMenu,594
RadioBox,597
compoundstring
addrenditionstoarendertable,309
compoundstrings,53,5559,8384,9192,301
copyarendertable,311
addrenditioncomponents,439
baselinespacing,375
compare,377,379
concatenate,382383,428
convertstringarraytocompoundstringtable,443
convertstringdirectiontodirection,393
convertstringtocompoundstring,432
converttabletocompoundstring,447

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

converttabletostringarray,449
converttocompoundstringtable,451
converttostring,453
converttostringdirection,101
copy,384
copyportionof,430
create,385,387,389,391
createacomponent,380
createsegment,440
createtablistfor,445
draw,394
freememoryused,403
generate,407
gettextsegmentfrom,409
getthelengthofabytestream,378
length,425
lineheight,420
next,411,414
nexttriple,416
numberoflinesin,426
retrieveinformationabout,437
returntypeofnextcomponent,435
separatorcomponents,442
smallestrectanglecontaining,401
substrings,419
textsegmentsin,400
validsegmentsin,424
widthoflongesttextline,456
withunderlinedsubstring,398
compoundtext,8384,9192
encodingformat,268,301
Constraint,618
Container,692
copyselection,63
cutselection,66
linkclipboardselection,71
linkselection,64
pasteclipboardselection,70
relayout,72

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1135

Container
(cont'd)
reorderchildren,73
validateposition,68
Core,620
cursor
getpositionof,494
Cursordatatype,1078
D
datatype,ParseMapping,858
datatype,Rendition,894
datatypes,10771107
dialogs
ErrorDialog,753
FileSelectionDialog,764
FormDialog,771
InformationDialog,789
MessageDialog,839
PromptDialog,878
QuestionDialog,891
TemplateDialog,974
WarningDialog,1013
WorkingDialog,1014
DialogShell,712
Dimensiondatatype,1078
direction
matchdirectioncomponent,97
partiallymatchdirectioncomponent,99
directorysearches,126
display,updating,582
Display,715
datatype,1078
displayrectangles
forwidgets,602
dragoperations
cancelling,102
starting,103
dragsource
targettypesmatchingDropSite,474
DragContext,721
DragIcon,730
DrawingArea,733
DrawnButton,738
dropoperations,119,121
DropSite,744
changingstackingorderof,107
multiple,109,116
registering,112
removing,117
resourcevaluesfor,115,118

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

stackingorder,110
targettypesmatchingdragsources,474
DropTransfer,750
E
enableWarp,716
errormessages
displayinginCommandwidget,60
ErrorDialog,753
F
FileSelectionBox,754
gettingspecifiedchildof,124
FileSelectionDialog,764
fontcontext
creating,152
freeing,149
fontlists
appendanentry,129
compoundtextencodingformat,301
copying,131
creating,127,133,135,146
elementtags,268
entriescreating,136,138
entriesgettingtagsof,144
entriesremoving,156
entriesretrievingnext,154
fontinformation,142
freeingmemory,140
freeingmemoryusedby,148
next,150
fonts
setunitvalues,363
unitvalues,364
Form,765
FormDialog,771
Frame,772
functions,listof,1053
G
Gadget,776
GCdatatype,1078
GrabShell,781

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1136

I
IconGadget,785
imagecache,removeimagefrom,581
images,installing,204
InformationDialog,789
inputmethods
closeinputcontexts,187
createinputcontext,189
freeinputcontext,188
introduction,185
registerawidget,195
registerwithanexistingcontext,199
resetaninputcontext,194
retrievecomposedstring,192
retrieveinputmethod,191
setvaluesandfocusfor,197,202
setvaluesfor,198,203
unregisterinputcontexts,200
unsetfocusfor,201
insertioncursor
getpositionof,494,496
setpositionof,532,537
K
keyboardfocus,296
keyboardtraversal,296
KeyCodedatatype,1078
keycodes
converttokeysym,579
KeySymdatatype,1078
keysyms
convertkeycodesto,579
L
Label,790
LabelGadget,796
inoptionmenus,279
List,798
additemto,214,216
checkifitemselected,235
deleteitemfrom,219221
determineifitemin,232
getalloccurrencesofitem,228
getpositionofitematycoordinate,262
getpositionoflocationcursor,227
getpositionsofitem,230
replaceitem,238,240,242,244,246
returnboundingboxofitem,236
returnpositionofitem,233
selectitem,248,250
setaddmode,252
setfirstvisibleitem,257,259

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

sethorizontalpositionof,256
setlastvisibleitem,253254
setpositionoflocationcursor,258
updatelistofitems,261
M
MainWindow,815
getwidgetIDofSeparator,263
specifychildrenfor,265
Manager,819
menucursor,365
MenuBar,827
compoundobjects,585
menus
popup,270
MenuShell,829
MessageBox,833
gettingchildof,272
MessageDialog,839
Modifiersdatatype,1079
MotifWindowManager,10191045(seealsomwm)
Motif:2.0newfeaturesin,11251131
Motif:2.1newfeaturesin,11251131
mwm,10191045
checkifrunning,208
componentappearanceresources,1021
customizing,1020
N
Notebook,840
getpageinformation,274
O
Object,624
OptionMenu,850
compoundobjects,588
OverrideShell,625
P
PanedWindow,852
parsemapping
createparsemapping,280
fetchresourcesfromaparsemapping,284
freeaparsetable,288

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1137

parsemapping
(cont'd)
freeingaparsemapping,283
setresourcesforparsemapping,286
ParseMapping,858
Pixeldatatype,1079
Pixmapdatatype,1079
pixmaps
removingfrompixmapcache,96
popup
menus,270
PopupMenu,862
compoundobject,591
Positiondatatype,1079
Primitive,864
print
popupthePrintDisplayManager,290
printsetup
createaPrintShell,292
printtofile
saveXPrintServerdata,294
PrintShell,872
PromptDialog,878
protocols
adding,7
addingclientcallbacksto,9,13
addingtotheprotocolmanager,10
deactivating,94
deactivatingXA_WM_PROTOCOLS,95
removeclientcallbackfrom,304
removefromprotocolmanager,305
setprehooksandposthooks,366
XA_WM_PROTOCOLS,8,15
PulldownMenu,879
compoundobject,594
PushButton,881
PushButtonGadget,888
Q
QuestionDialog,891
R
RadioBox,892
compoundobject,597
RectObj,627
redisplaywidget
forceexposureforprinting,299
rendertable
addrenditions,309
convertfromstringrepresentation,313
copy,311
fetchtagsfrom,321
converttostringrepresentation,314
createrendition,324
freememoryusedby,316
removerenditions,323
searchformatchingrendition,317
searchformatchingrenditions,318
Rendition,894
renditiontable

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

fetchresourcesfrom,327
freememoryusedby,326
setrenditionobjectresources,329
representationtypes
determinevalidityofnumericalvalue,342
getinformationabout,335
IDnumberof,332
listofvaluenamesfor,333
registerresource,340
registered,337
resourceconversion,331
resourceconverters
install,339
resources:listof,11091124
RowColumn,897
makingamenuaccessible,12
makingamenuinaccessible,303
S
Scale,912
getslidervalue,346
setscaletickmarks,347
setslidervalue,350
Screen,921
datatype,1079
ScrollBar,927
getcurrentstate,351
setstate,353
ScrolledList,937
ScrolledText,938
ScrolledWindow,939
makeobscuredchildvisible,355
specifychildrenfor,357
SelectionBox,945
gettingchildof,359
SelectionDialog,953
selections
clearing,476
getvalueofprimary,499
Separator,954

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1138

SeparatorGadget,957
Shell,629
SimpleSpinBox,959
addanitemto,370
deleteanitemfrom,371
setanitemin,372
SpinBox,964
validateposition,373
Stringdatatype,1080
stringcontext
create,421
free,405
stringtable,87,89
strings
convertingtounittypes,74,85
StringTabledatatype,1080
T
tabgroups
addingwidgetsto,11
removewidgetsfrom,306
tablists
createatabstop,457
copy,462
countnumberoftabsin,472
fetchvaluesfor,460
freememoryfor,459
freethememoryusedby,464
inserttabsinto,466
removetabsfrom,468
replacetabsatpositionsin,470
retrieveatabfrom,465
setvalueofatab,473
TemplateDialog,974
Text,975
allowvisualupdateof,487
clearprimaryselection,476
copyalinktotheprimaryselectiontoclipboard,480
copyprimaryselectiontoclipboard,478
copyprimaryselectiontoclipboardandremovetext,483
deleteprimaryselection,525
displayatspecifiedposition,549
findbeginningpositionoftextstring,488,490
getcopyofpartoftextstring,509,511
getcursorposition,494,496
geteditpermissionstate,495
getheightofverticaltext,493
getmaximumpossiblestringlength,498
getpositionofbaseline,492
getpositionoffirstcharacter,513
getpositionoflastcharacter,497
getpositionofprimaryselection,500
gettextsource,504
gettextstring,505
getvalueofprimaryselection,499,502

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

getwidecharactertextstring,507
getx,ycharacterposition,523,551
highlighttext,535
insertclipboardselection,518,520
insertstringintotextstring,514
insertwidecharacterstringintotextstring,516
preventvisualupdate,486
replacepartoftextstring,526
replacepartofwidecharactertextstring,528
scroll,530
setaddmodestate,531
setcursorposition,532,537
seteditpermissionstate,534
setmaximumstringlength,539
setpositionoffirstcharacter,548
settextsource,542
settextstring,544
setvalueofprimaryselection,540
setwidecharacterstring,546
textproperty,87,89
TextField,995
clearprimaryselection,476
copyalinktotheprimaryselectiontoclipboard,480
copyprimaryselectiontoclipboard,478
copyprimaryselectiontoclipboardandremovetext,483
deleteprimaryselection,525
getcopyofpartoftextstring,509,511
getcursorposition,494,496
geteditpermissionstate,495
getmaximumpossiblestringlength,498
getpositionofbaseline,492
getpositionofcenterline,493
getpositionoflastcharacter,497
getpositionofprimaryselection,500
gettextstring,505
getvalueofprimaryselection,499,502
getwidecharactertextstring,507
getx,ycharacterposition,523
highlighttext,535

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1139

TextField
(cont'd)
insertclipboardselection,518,520
insertstringintotextstring,514
insertwidecharacterstringintotextstring,516
replacepartoftextstring,526
replacepartofwidecharactertextstring,528
setaddmodestate,531
setcursorposition,532,537
seteditpermissionstate,534
setmaximumstringlength,539
settextstring,544
setwidecharacterstring,546
Timedatatype,1080
ToggleButton
getstateof,552
setstateof,553
setvalueof,555
ToggleButtonGadget,1010
ToggleButtons,1000
toolkitfunctions:listofnew,1125
toolkitfunctions:listofobsolete,1128
TopLevelShell,632
transfer
complete,576
completeatransferoperation,570
sendmultiplerequest,573
setparameterfor,574
transferdatatodestination,577
TransientShell,635
U
uil,10461047
UniformTransferModel
introduction,561
unittypes,74,76,85
UserInterfaceLanguage,10461047
V
value
convertingtounittypes,76
VendorShell,638
virtualkeybindings
xmbind,1048
Visualdatatype,1080
VoidProc,1080
W
WarningDialog,1013
Widgetdatatype,1081
widgetclass
ApplicationShell,613
ArrowButton,650
ArrowButtonGadget,655
BulletinBoard,657
CascadeButton,665
CascadeButtonGadget,670

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

ComboBox,675
Command,686
Composite,616
Constraint,618
Core,620
DialogShell,712
Display,715
DragContext,721
DragIcon,730
DrawingArea,733
DrawnButton,738
DropSite,744
DropTransfer,750
FileSelectionBox,754
Form,765
Frame,772
Gadget,776
GrabShell,781
IconGadget,785
Label,790
LabelGadget,796
List,798
MainWindow,815
Manager,819
MenuShell,829
MessageBox,833
Object,624
OverrideShell,625
PanedWindow,852
Primitive,864
PrintShell,872
PushButton,881
PushButtonGadget,888
RectObj,627
RowColumn,897
Scale,912
Screen,921
ScrollBar,927
ScrolledWindow,939
SelectionBox,945
Separator,954

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1140

widgetclass
(cont'd)
SeparatorGadget,957
Shell,629
SpinBox,964
Text,975
ToggleButton,1000
ToggleButtonGadget,1010
TopLevelShell,632
TransientShell,635
VendorShell,638
XmManager,819
widgetclass,WMShell,645
widgetclasses:new,1129
WidgetClassdatatype,1081
WidgetListdatatype,1081
widgets
andcolor,18,161
andkeyboardfocus,213
determiningwhethersubclassofaclass,209
ensureupwardcompatible,344345
getdisplayrectanglesfor,602
getpositionsofbaselines,600
selection,557,559
Windowdatatype,1081
WMShell,645
WorkingDialog,1014
X
XA_WM_PROTOCOLS
removing,308
removingclientcallbacksfrom,307
setprehooksandposthooks,368
XEventdatatype,1081
XFontSetdatatype,1081
XFontStructdatatype,1081
XImagedatatype,1082
XmActivateProtocol,7
XmActivateWMProtocol,8
XmAddProtocolCallback,9
XmAddProtocols,10
XmAddTabGroup,11
XmAddToPostFromList,12
XmAddWMProtocolCallback,13
XmAddWMProtocols,15
XmAllocColorProcdatatype,1083
XmAnyCallbackStruct,868,1083
XmArrowButton,650
XmArrowButtonCallbackStruct,652,1084
XmArrowButtonGadget,655
xmbind,1048
XmBulletinBoard,657
XmBulletinBoardDialog,664
XmButtonTypedatatype,1084
XmButtonTypeTabledatatype,1084
XmCascadeButton,665
XmCascadeButtonGadget,670
XmCascadeButtonGadgetHighlight,17
XmCascadeButtonHighlight,17

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmChangeColor,18
XmCheckBox,673
XmClipboardCancelCopy,21
XmClipboardCopy,22
XmClipboardCopyByName,25
XmClipboardEndCopy,27
XmClipboardEndRetrieve,29
XmClipboardInquireCount,31
XmClipboardInquireFormat,33
XmClipboardInquireLength,35
XmClipboardInquirePendingItems,37
XmClipboardLock,39
XmClipboardPendingListdatatype,1084
XmClipboardRegisterFormat,40
XmClipboardRetrieve,42
XmClipboardStartCopy,19,44
XmClipboardStartRetrieve,48
XmClipboardUndoCopy,50
XmClipboardUnlock,51
XmClipboardWithdrawFormat,52
XmColorProcdatatype,1084
XmComboBox,675,1129
XmComboBoxAddItem,53
XmComboBoxCallbackStruct,681,1084
XmComboBoxDeletePos,55
XmComboBoxSelectItem,56
XmComboBoxSetItem,57
XmComboBoxUpdate,58
XmCommand,686
XmCommandAppendValue,59
XmCommandCallbackStruct,688,1085
XmCommandError,60
XmCommandGetChild,61
XmCommandSetValue,62
XmContainer,692,1129
XmContainerCopy,63
XmContainerCopyLink,64
XmContainerCut,66
XmContainerGetItemChildren,68

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1141

XmContainerOutlineCallbackStruct,701
datatype,1085
XmContainerPaste,70
XmContainerPasteLink,71
XmContainerRelayout,72
XmContainerReorder,73
XmContainerSelectCallbackStructdatatype,1085
XmContainerSelectionCallbackStruct,701
XmConvertCallbackStruct,562,701,735,868,917,1085
UniformTransferModel,701,735,868,917
XmTransfer,701,735,868,917
XmConvertStringToUnits,74
XmConvertUnits,76
XmCreateArrowButton,78
XmCreateArrowButtonGadget,78
XmCreateBulletinBoard,78
XmCreateBulletinBoardDialog,78
XmCreateCascadeButton,78
XmCreateCascadeButtonGadget,78
XmCreateComboBox,78
XmCreateCommand,78
XmCreateCommandDialog,78
XmCreateContainer,78
XmCreateDialogShell,78
XmCreateDragIcon,78
XmCreateDrawingArea,78
XmCreateDrawnButton,78
XmCreateDropDownComboBox,78
XmCreateDropDownList,78
XmCreateErrorDialog,78
XmCreateFileSelectionBox,78
XmCreateFileSelectionDialog,78
XmCreateForm,78
XmCreateFormDialog,78
XmCreateFrame,78
XmCreateGrabShell,78
XmCreateIconGadget,78
XmCreateInformationDialog,78
XmCreateLabel,78
XmCreateLabelGadget,78
XmCreateList,78
XmCreateMainWindow,78
XmCreateMenuBar,78
XmCreateMenuShell,78
XmCreateMessageBox,78
XmCreateMessageDialog,78
XmCreateNotebook,78
XmCreateOptionMenu,78
XmCreatePanedWindow,78
XmCreatePopupMenu,78
XmCreatePromptDialog,78
XmCreatePulldownMenu,78
XmCreatePushButton,78
XmCreatePushButtonGadget,78
XmCreateQuestionDialog,78
XmCreateRadioBox,78
XmCreateRowColumn,78
XmCreateScale,78

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmCreateScrollBar,78
XmCreateScrolledList,78
XmCreateScrolledText,78
XmCreateScrolledWindow,78
XmCreateSelectionBox,78
XmCreateSelectionDialog,78
XmCreateSeparator,78
XmCreateSeparatorGadget,78
XmCreateSimpleCheckBox,78
XmCreateSimpleMenuBar,78
XmCreateSimpleOptionMenu,78
XmCreateSimplePopupMenu,78
XmCreateSimplePulldownMenu,78
XmCreateSimpleRadioBox,78
XmCreateSimpleSpinBox,78
XmCreateSpinBox,78
XmCreateTemplateDialog,78
XmCreateText,78
XmCreateTextField,78
XmCreateToggleButton,78
XmCreateToggleButtonGadget,78
XmCreateWarningDialog,78
XmCreateWorkArea,78
XmCreateWorkingDialog,78
XmCutPasteProc,1086
XmCvtByteStreamToXmString,83
XmCvtCTToXmString,84
XmCvtStringToUnitType,85
XmCvtTextPropertyToXmStringTable,87
XmCvtXmStringTableToTextProperty,89
XmCvtXmStringToByteStream,91
XmCvtXmStringToCT,92
XmDeactivateProtocol,94
XmDeactivateWMProtocol,95
XmDestinationCallbackStruct,564,702,735,806,981,1086
UniformTransferModel,702,735,981
XmTransfer,702,735,981
XmDestroyPixmap,96
XmDialogShell,712
XmDirection,1087

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1142

XmDirectionMatch,97
XmDirectionMatchPartial,99
XmDirectionToStringDirection,101
XmDisplay,715
XmDisplayCallbackStruct,720
datatype,1087
XmDragCancel,102
XmDragContext,721
XmDragDropFininshCallbackStruct,1087
XmDragDropFinishCallbackStruct,726
XmDragIcon,730
XmDragMotionCallbackStruct,726,1087
XmDragProcCallbackStruct,747,1088
XmDragStart,103
XmDragStartCallbackStruct,720
XmDrawingArea,733
XmDrawingAreaCallbackStruct,734,1088
XmDrawnButton,738
XmDrawnButtonCallbackStruct,740,1088
XmDropFinishCallbackStruct,726,1088
XmDropProcCallbackStruct,748,1089
XmDropSite,744
XmDropSiteConfigureStackingOrder,107
XmDropSiteEndUpdate,109
XmDropSiteEnterCallbackStruct,726,1089
XmDropSiteLeaveCallbackStruct,726,1089
XmDropSiteQueryStackingOrder,110
XmDropSiteRegister,112
XmDropSiteRetrieve,115
XmDropSiteStartUpdate,116
XmDropSiteUnregister,117
XmDropSiteUpdate,118
XmDropStartCallbackStruct,727,1089
XmDropTransfer,750
XmDropTransferAdd,119
XmDropTransferEntrydatatype,1090
XmDropTransferEntryRecdatatype,1090
XmDropTransferStart,121
XmErrorDialog,753
XmFileSelectionBox,754
XmFileSelectionBoxCallbackStruct,759
datatype,1090
XmFileSelectionBoxGetChild,124
XmFileSelectionDialog,764
XmFileSelectionDoSearch,126
XmFontContextdatatype,1090
XmFontListdatatype,1090
XmFontListAdd,127
XmFontListAppendEntry,129
XmFontListCopy,131
XmFontListCreate,133
XmFontListCreate_r,135
XmFontListEntrydatatype,1091
XmFontListEntryCreate,136
XmFontListEntryCreate_r,138
XmFontListEntryFree,140
XmFontListEntryGetFont,142
XmFontListEntryGetTag,144
XmFontListEntryLoad,146
XmFontListFree,148
XmFontListFreeFontContext,149
XmFontListGetNextFont,150

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmFontListInitFontContext,152
XmFontListNextEntry,154
XmFontListRemoveEntry,156
XmFontTypedatatype,1091
XmForm,765
XmFormDialog,771
XmFrame,772
XmGadget,776
XmGetAtomName,158
XmGetColorCalculation,159
XmGetColors,161
XmGetDestination,163
XmGetDragContext,164
XmGetFocusWidget,166
XmGetMenuCursor,167
XmGetPixmap,168
XmGetPixmapByDepth,170
XmGetPostedFromWidget,172
XmGetScaledPixmap,173
XmGetSecondaryResourceData,175
XmGetTabGroup,178
XmGetTearOffControl,179
XmGetVisibility,181
XmGetXmDisplay,183
XmGetXmScreen,184
XmGrabShell,781,1129
XmHighlightModedatatype,1091
XmICCEncodingStyledatatype,1092
XmIconGadget,785,1129
XmIm,185
XmImCloseXIM,187
XmImFreeXIC,188
XmImGetXIC,189,191
XmImMbLookupString,192
XmImMbResetIC,194
XmImRegister,195
XmImSetFocusValues,197
XmImSetValues,198
XmImSetXIC,199

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1143

XmImUnregister,200
XmImUnsetFocus,201
XmImVaSetFocusValues,202
XmImVaSetValues,203
XmIncludeStatusdatatype,1092
XmInformationDialog,789
XmInstallImage,204
XmInternAtom,206
XmIsArrowButton,209
XmIsArrowButtonGadget,209
XmIsBulletinBoard,209
XmIsCascadeButton,209
XmIsCascadeButtonGadget,209
XmIsComboBox,209
XmIsCommand,209
XmIsContainer,209
XmIsDialogShell,209
XmIsDisplay,209
XmIsDragContext,209
XmIsDragIconObjectClass,209
XmIsDrawingArea,209
XmIsDrawnButton,209
XmIsDropSiteManager,209
XmIsDropTransfer,209
XmIsFileSelectionBox,209
XmIsForm,209
XmIsFrame,209
XmIsGadget,209
XmIsGrabShell,209
XmIsIconGadget,209
XmIsLabel,209
XmIsLabelGadget,209
XmIsList,209
XmIsMainWindow,209
XmIsManager,209
XmIsMenuShell,209
XmIsMessageBox,209
XmIsMotifWMRunning,208
XmIsNotebook,209
XmIsPanedWindow,209
XmIsPrimitive,209
XmIsPrintShell,209
XmIsPushButton,209
XmIsPushButtonGadget,209
XmIsRowColumn,209
XmIsScale,209
XmIsScreen,209
XmIsScrollBar,209
XmIsScrolledWindow,209
XmIsSelectionBox,209
XmIsSeparator,209
XmIsSeparatorGadget,209
XmIsText,209
XmIsTextField,209
XmIsToggleButton,209
XmIsToggleButtonGadget,209
XmIsTraversable,213
XmIsVendorShell,209
XmKeySymTabledatatype,1092
XmLabel,790
XmLabelGadget,796
XmList,798

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmListAddItem,214
XmListAddItems,214
XmListAddItemsUnselected,216
XmListAddItemUnselected,216
XmListCallbackStruct,805
datatype,1092
XmListDeleteAllItems,219
XmListDeleteItem,220
XmListDeleteItems,220
XmListDeleteItemsPos,221
XmListDeletePos,222
XmListDeletePositions,223
XmListDeselectAllItems,224
XmListDeselectItem,225
XmListDeselectPos,226
XmListGetKbdItemPos,227
XmListGetMatchPos,228
XmListGetSelectedPos,230
XmListItemExists,232
XmListItemPos,233
XmListPosSelected,235
XmListPosToBounds,236
XmListReplaceItems,238
XmListReplaceItemsPos,240
XmListReplaceItemsPosUnselected,242
XmListReplaceItemsUnselected,244
XmListReplacePositions,246
XmListSelectItem,248
XmListSelectPos,250
XmListSetAddMode,252
XmListSetBottomItem,253
XmListSetBottomPos,254
XmListSetHorizPos,256
XmListSetItem,257
XmListSetKbdItemPos,258
XmListSetPos,259
XmListUpdateSelectedList,261
XmListYToPos,262
XmMainWindow,815
XmMainWindowSep1,263

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1144

XmMainWindowSep2,263
XmMainWindowSep3,263
XmMainWindowSetAreas,265
XmManager,819
childnearesttopoint,276
XmMapSegmentEncoding,268
XmMenuBar,827
XmMenuPosition,270
XmMenuShell,829
XmMergeModedatatype,1093
XmMessageBox,833
XmMessageBoxGetChild,272
XmMessageDialog,839
XmNaccelerator,790
XmNaccelerators,620
XmNacceleratorText,790
XmNactivateCallback,650
andArrowButton,651
andCascadeButton,666
andDrawnButton,739
andPushButton,883
andText,980
XmNadjustLast,898
XmNadjustMargin,898
XmNalignment,786,790
XmNallowOverlap,657
XmNallowResize,854
XmNallowShellResize,629
XmNancestorSensitive,620,627
XmNanimationMask,745
XmNanimationPixmap,745
XmNanimationPixmapDepth,745
XmNanimationStyle,745
XmNapplyCallback,948
XmNapplyLabelString,946
XmNargc,613
XmNargv,613
XmNarmCallback,650
andArrowButton,651
andDrawnButton,739
andPushButton,883
andToggleButton,1004
XmNarmColor,18,881
XmNarmPixmap,881
XmNarrowDirection,650
XmNarrowLayout,965
XmNarrowOrientation,965
XmNarrowSensitivity,959,967
XmNarrowSize,676,965
XmNarrowSpacing,676
XmNattachment,731
XmNaudibleWarning,638
XmNautoDragModel,940
XmNautomaticSelection,694,799
XmNautoShowCursorPosition,549,975
XmNautoUnmanage,657
XmNavigationTypedatatype,1093
XmNbackground,18,179,620,776

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNbackgroundPixmap,179,620,776
XmNbackPageBackground,842
XmNbackPageForeground,842
XmNbackPageNumber,842
XmNbackPagePlacement,842
XmNbackPageSize,842
XmNbaseHeight,645
XmNbaseWidth,645
XmNbindingPixmap,842
XmNbindingType,842
XmNbindingWidth,842
XmNbitmapConversionModel,921
XmNblendModel,722
XmNblinkRate,978,995
XmNborderColor,620
XmNborderPixmap,620
XmNborderWidth,620,627
XmNbottomAttachment,766
XmNbottomOffset,766
XmNbottomPosition,766
XmNbottomShadowColor,18,179,776,781,820,865
XmNbottomShadowPixmap,777,781,820,865
XmNbottomWidget,766
XmNbrowseSelectionCallback,804
XmNbuttonAccelerators,904
XmNbuttonAcceleratorText,904
XmNbuttonCount,904
XmNbuttonFontList,638,657,830
XmNbuttonMnemonicCharSets,904
XmNbuttonMnemonics,905
XmNbuttonRenderTable,638,657,830
XmNbuttons,905
XmNbuttonSet,905
XmNbuttonType,905
XmNcancelButton,657
XmNcancelCallback,835,948
XmNcancelLabelString,834,946
XmNcascadePixmap,665
XmNcascadingCallback,666
XmNchildHorizontalAlignment,773
XmNchildHorizontalSpacing,773
XmNchildPlacement,946

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1145

XmNchildren,616
XmNchildType,773
XmNchildVerticalAlignment,773
XmNclientData,722,859
XmNclipWindow,940
XmNcollapsedStatePixmap,694
XmNcolorAllocationProc,921
XmNcolorCalculationProc,921
XmNcolormap,620
XmNcolumns,676,959,978,995
XmNcomboBoxType,676
XmNcommand,59,62,266,686
XmNcommandChangedCallback,687
XmNcommandEnteredCallback,687
XmNcommandWindow,266,816
XmNcommandWindowLocation,816
XmNconvertCallback,566,694,700,865,913,916
andDrawingArea,734
XmNconvertProc,722
XmNcreatePopupChildProc,629
XmNcurrentPageNumber,842
XmNcursorBackground,722
XmNcursorForeground,722
XmNcursorPosition,494,496,532,537,549
andText,975
andTextField,995
XmNcursorPositionVisible,978,995
XmNdarkThreshold,921
XmNdecimalPoints,913,959,967
XmNdecrementCallback,931
XmNdefaultActionCallback,694,700,804
XmNdefaultArrowSensitivity,965
XmNdefaultButton,657
XmNdefaultButtonEmphasis,716
XmNdefaultButtonShadowThickness,881
XmNdefaultButtonType,834
XmNdefaultCopyCursorIcon,921
XmNdefaultFontList,638,830
XmNdefaultInvalidCursorIcon,921
XmNdefaultLinkCursorIcon,922
XmNdefaultMoveCursorIcon,922
XmNdefaultNoneCursorIcon,922
XmNdefaultPixmapResolution,873
XmNdefaultPosition,658
XmNdefaultSourceCursorIcon,922
XmNdefaultValidCursorIcon,922
XmNdefaultVirtualBindings,716
XmNdeleteResponse,638
XmNdepth,620,731
XmNdestinationCallback,566,694,700,804
andText,980
andDrawingArea,734
XmNdestroyCallback,620
andObject,624
XmNdetail,786
XmNdetailColumnHeading,694
XmNdetailColumnHeadingCount,694
XmNdetailCount,786

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNdetailOrder,694
XmNdetailOrderCount,694
XmNdetailShadowThickness,650,965,1001
XmNdetailTabList,694
XmNdialogStyle,658
XmNdialogTitle,658
XmNdialogType,834,946
XmNdirectory,755
XmNdirectoryValid,755
XmNdirListItemCount,755
XmNdirListItems,755
XmNdirListLabelString,755
XmNdirMask,755
XmNdirSearchProc,755
XmNdirSpec,755
XmNdirTextLabelString,755
XmNdisarmCallback,650,883
andArrowButton,651
andDrawnButton,739
andToggleButton,1004
XmNdoubleClickInterval,799
XmNdragCallback,913,916,931
XmNdragDropFinishCallback,724
XmNdragInitiatorProtocolStyle,716
XmNdragMotionCallback,724
XmNdragOperations,722
XmNdragProc,747
XmNdragReceiverProtocolStyle,716
XmNdragStartCallback,716,719
XmNdropFinishCallback,724
XmNdropProc,112,122,747
XmNdropRectangles,745
XmNdropSiteActivity,112,745
XmNdropSiteEnterCallback,724
XmNdropSiteLeaveCallback,724
XmNdropSiteOperations,745
XmNdropSiteType,745
XmNdropStartCallback,724
XmNdropTransfers,120,751

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1146

XmNeditable,495,534,913,927,959
andText,975
andTextField,995
XmNeditMode,548,975
XmNenableBtn1Transfer,716
XmNenableButtonTab,716
XmNenableDragIcon,716
XmNenableEtchedInMenu,716
XmNenableMultiKeyBindings,716
XmNenableThinThickness,716
XmNenableToggleColor,716
XmNenableToggleVisual,716
XmNenableUnselectableDrag,716
XmNendJobCallback,873874
XmNentryAlignment,898
XmNentryBorder,898
XmNentryCallback,898,906
XmNentryClass,898
XmNentryParent,699
XmNentryVerticalAlignment,898
XmNentryViewType,694
XmNexpandedStatePixmap,694
XmNexportTargets,722
XmNexposeCallback
andDrawingArea,734
andDrawnButton,739
XmNextendedSelectionCallback,804
XmNfileFilterStyle,755
XmNfileListItemCount,755
XmNfileListItems,755
XmNfileListLabelString,755
XmNfileSearchProc,755
XmNfileTypeMask,755
XmNfillOnArm,881
XmNfillOnSelect,1001
XmNfilterLabelString,755
XmNfirstPageNumber,843
XmNfocusCalback,297
XmNfocusCallback,661,980
XmNfont,363364,895,922
XmNfontList,676,694,786,790,799,913,978
andTextField,995
XmNfontName,895
XmNfontType,895
XmNforeground,18,179,777,820,865
XmNforegroundThreshold,922
XmNfractionBase,765
XmNframeBackground,843
XmNframeChildType,773
XmNframeShadowThickness,843
XmNgainPrimaryCallback,980
XmNgeometry,629
XmNgrabStyle,781
XmNheight,179,620,627,731
XmNheightInc,645
XmNhelpCallback,779,822,867
XmNhelpLabelString,834,946
XmNhighlightColor,18,777,820,865

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNhighlightOnEnter,777,865,913
XmNhighlightPixmap,777,820,865
XmNhighlightThickness,676,777,865,913
XmNhistoryItemCount,686
XmNhistoryItems,60,686
XmNhistoryMaxItems,686
XmNhistoryVisibleItemCount,686
XmNhorizontalFontUnit,77,363364,922
XmNhorizontalScrollBar,266,358,799,940
XmNhorizontalSpacing,765
XmNhotX,731
XmNhotY,731
XmNiconic,632
XmNiconMask,645
XmNiconName,632
XmNiconNameEncoding,632
XmNiconPixmap,645
XmNiconWindow,645
XmNiconX,645
XmNiconY,645
XmNimportTargets,745
XmNincludeStatus,859
XmNincrement,351,354,927
XmNincremental,722,751
XmNincrementCallback,931
XmNincrementValue,959,967
XmNindeterminateInsensitivePixmap,1001
XmNindeterminatePixmap,1001
XmNindicatorOn,1001
XmNindicatorSize,1001
XmNindicatorType,1001
XmNinitialDelay,927,965
XmNinitialFocus,820
XmNinitialResourcesPersistent,620
XmNinitialState,645
XmNinnerMarginHeight,843
XmNinnerMarginWidth,843
XmNinput,645
XmNinputCallback,734
XmNinputMethod,638
XmNinputPolicy,638

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1147

XmNinsensitiveStippleBitmap,922
XmNinsertPosition,616
XmNinvalidCursorForeground,722
XmNinvokeParseProc,859
XmNisAligned,898
XmNisHomogeneous,898
XmNitemCount,215,217,219223,240,243244,247,676,799
XmNitems,215,217,219223,228,232,238,240,243244,247,676,799
XmNkeyboardFocusPolicy,638
XmNlabelFontList,639,658,830
XmNlabelInsensitivePixmap,790
XmNlabelPixmap,790
XmNlabelRenderTable,639,658,830
XmNlabelString,786,790,898
andRowColumn,278279
XmNlabelType,791
XmNlargeCellHeight,694
XmNlargeCellWidth,694
XmNlargeIconMask,786
XmNlargeIconPixmap,786
XmNlastPageNumber,843
XmNlayoutDirection,639,777,830
andPrimitive,865
andManager,820
XmNlayoutType,694
XmNleftAttachment,766
XmNleftOffset,766
XmNleftPosition,766
XmNleftWidget,766
XmNlightThreshold,922
XmNlist,677
XmNlistItemCount,946
XmNlistItems,946
XmNlistLabelString,946
XmNlistMarginHeight,799
XmNlistMarginWidth,799
XmNlistSizePolicy,799
XmNlistSpacing,799
XmNlistUpdated,756
XmNlistVisibleItemCount,946
XmNloadModel,895
XmNlosePrimaryCallback,980
XmNlosingFocusCallback,980
XmNmainWindowMarginHeight,816
XmNmainWindowMarginWidth,816
XmNmajorTabSpacing,843
XmNmapCallback,661,906
XmNmappedWhenManaged,621
XmNmappingDelay,665
XmNmargin,179,954
XmNmarginBottom,791
XmNmarginHeight,677,694,786,965
andBulletinBoard,658
andDrawingArea,733
andFrame,772
andLabel,791
andPanedWindow,852
andRowColumn,898

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

andText,975
andTextField,995
XmNmarginLeft,791
XmNmarginRight,791
XmNmarginTop,791
XmNmarginWidth,677,694,786,965
andBulletinBoard,658
andDrawingArea,733
andFrame,772
andLabel,791
andPanedWindow,852
andRowColumn,898
andText,975
andTextField,995
XmNmask,731
XmNmatchBehavior,677
XmNmatchBehaviour,799
XmNmaxAspectX,645
XmNmaxAspectY,645
XmNmaxHeight,645
XmNmaximum,913,927
andScale,350
andScrollBar,353
XmNmaximumValue,959,967
XmNmaxLength,498,539
andText,975
andTextField,995
XmNmaxWidth,645
XmNmaxX,873
XmNmaxY,873
XmNmenuAccelerator,898
XmNmenuBar,266,816
XmNmenuCursor,167,365,922
XmNmenuHelpWidget,898
XmNmenuHistory,898
XmNmenuPost,898
XmNmessageAlignment,834
XmNmessageString,834
XmNmessageWindow,266,816
XmNminAspectX,646
XmNminAspectY,646
XmNminHeight,646

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1148

XmNminimizeButtons,834,946
XmNminimum,913,928
andScale,350
andScrollBar,353
XmNminimumValue,959,967
XmNminorTabSpacing,843
XmNminWidth,646
XmNminX,873
XmNminY,873
XmNmnemonic,791,899
XmNmnemonicCharSet,791,899
XmNmodifyVerifyCallback,483,514,516,518,521,525526,529,544,546,965,969
andText,980
XmNmodifyVerifyCallbackWcs,483,514,516,518,521,525526,529,544,546
andText,980
XmNmotifVersion,716
XmNmotionVerifyCallback,532,537,540,544,546
andText,980
XmNmoveOpaque,922
XmNmultiClick,650,738,881
XmNmultipleSelectionCallback,804
XmNmustMatch,946
XmNmwmDecorations,639
XmNmwmFunctions,639
XmNmwmInputMode,639
XmNmwmMenu,639
XmNnavigationType,11,306
andGadget,777
andManager,820
andPrimitive,865
XmNnoFontCallback,717,719
XmNnoMatchCallback,948
XmNnoMatchString,756
XmNnoneCursorForeground,722
XmNnoRenditionCallback,717,719
XmNnoResize,658
XmNnotebookChildType,846
XmNnumChildren,616
XmNnumColumns,899
XmNnumDropRectangles,745
XmNnumDropTransfers,751
XmNnumExportTargets,722
XmNnumImportTargets,745
XmNnumValues,959,967
XmNoffsetX,731
XmNoffsetY,731
XmNokCallback,835,948
XmNokLabelString,834,946
XmNoperationChangedCallback,725
XmNoperationCursorIcon,722
XmNoptionLabel,905
XmNoptionMnemonic,905
XmNorientation,843,852
andRowColumn,899
andScale,913
andScrollBar,928
andSeparator,954
XmNotebook,840,1129

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNotebookCallbackStruct,847
datatype,1093
XmNotebookGetPageInfo,274
XmNotebookPageInfo,1094
XmNoutlineButtonPolicy,694
XmNoutlineChangedCallback,694,700
XmNoutlineColumnWidth,694
XmNoutlineIndentation,694
XmNoutlineLineStyle,694
XmNoutlineState,699
XmNoverrideRedirect,629
XmNownerEvents,781
XmNpacking,899
XmNpageChangedCallback,843,845846
XmNpageDecrementCallback,931
XmNpageIncrement,351,354,928
XmNpageIncrementCallback,931
XmNpageNumber,846
XmNpageSetupCallback,873874
XmNpaneMaximum,854
XmNpaneMinimum,854
XmNpathMode,756
XmNpattern,756,859
XmNpatternType,859
XmNpdmNotificationCallback,873874
XmNpendingDelete,518,520,977,996
XmNpixmap,731
XmNpopdownCallback,629
XmNpopupCallback,629
XmNpopupEnabled,899
XmNpopupHandlerCallback,820,865
XmNposition,960,967
XmNpositionIndex,699,854,904
XmNpositionMode,677
XmNpositionType,960,967
XmNpostFromButton,905
XmNpreeditType,639
XmNprimaryOwnership,694,799
XmNprocessingDirection,913,928

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1149

XmNpromptString,686
XmNpushButtonEnabled,738
XmNqualifySearchDataProc,756
XmNradioAlwaysOne,899
XmNradioBehavior,553,899
XmNrecomputeSize,791
XmNrefigureMode,852
XmNrenderTable,677,694,786,791,799,978,996
andScale,913
XmNrenditionBackground,895
XmNrenditionForeground,895
XmNrepeatDelay,928,965
XmNresizable,766,846
XmNresizeCallback,734,739
XmNresizeHeight,899,978
XmNresizePolicy,658,733
XmNresizeWidth,899,978,996
XmNrightAttachment,766
XmNrightOffset,766
XmNrightPosition,766
XmNrightWidget,766
XmNrowColumnType,899
XmNrows,978
XmNrubberPositioning,765
XmNsashHeight,852
XmNsashIndent,852
XmNsashShadowThickness,852
XmNsashWidth,853
XmNsaveUnder,629
XmNscaleHeight,913
XmNscaleMultiple,913
XmNscaleWidth,913
XmNscreen,621
XmNscrollBarDisplayPolicy,799,940
XmNscrollBarPlacement,940
XmNscrolledWindowChildType,942
XmNscrolledWindowMarginHeight,940
XmNscrolledWindowMarginWidth,940
XmNscrollHorizontal,979
XmNscrollingPolicy,181,213,356,940
XmNscrollLeftSide,979
XmNscrollTopSide,979
XmNscrollVertical,979
XmNselectColor,18,694,799,1001
XmNselectedItem,677
XmNselectedItemCount,215,224226,249,251,799
XmNselectedItems,214215,224226,230,238,240,243244,247,249,251,799
XmNselectedObjectCount,694
XmNselectedObjects,694
XmNselectedPosition,677
XmNselectedPositionCount,799
XmNselectedPositions,800
XmNselectInsensitivePixmap,1001
XmNselectionArray,977,996
XmNselectionArrayCount,977,996
XmNselectionCallback,677,680,694,700
XmNselectionLabelString,946
XmNselectionMode,800

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmNselectionPolicy,694,800
XmNselectionTechnique,694
XmNselectPixmap,1001
XmNselectThreshold,977,996
XmNsensitive
andCore,621
RectObj,627
XmNseparatorOn,853
XmNseparatorType,179,954
XmNset,552,554,556,1001
XmNshadowThickness,179,777,781,820,865
XmNshadowType,738,772
andBulletinBoard,658
XmNshellUnitType,639
XmNshowArrows,913,928
XmNshowAsDefault,881
XmNshowSeparator,816
XmNshowValue,913
XmNsimpleCallback,905
XmNsingleSelectionCallback,804
XmNskipAdjust,854
XmNsliderMark,913,928
XmNsliderSize,351,353354,913,928
XmNsliderVisual,913,928
XmNslidingMode,913,928
XmNsmallCellHeight,694
XmNsmallCellWidth,694
XmNsmallIconMask,786
XmNsmallIconPixmap,786
XmNsnapBackMultiple,928
XmNsource,504,542,975
XmNsourceCursorIcon,722
XmNsourcePixmapIcon,722
XmNspacing,786,853,899,940,965,1001
XmNspatialIncludeModel,694
XmNspatialResizeModel,694
XmNspatialSnapModel,694
XmNspatialStyle,694
XmNspinBoxChildType,960,967

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1150

XmNstartJobCallback,873874
XmNstateCursorIcon,722
XmNstrikethruType,895
XmNstringDirection,800,820
andLabel,791
XmNsubMenuId,665,899
XmNsubstitute,859
XmNsymbolPixmap,834
XmNtabList,895
XmNtag,895
XmNtearOffMenuActivateCallback,906
XmNtearOffMenuDeactivateCallback,906
XmNtearOffModel,339,899
XmNtearOffTitle,899
XmNtextAccelerators,946
XmNtextColumns,946
XmNtextField,677,960
XmNtextFontList,639,658
XmNtextRenderTable,639,658
XmNtextString,946
XmNtextTranslations,658
XmNtitle,646
XmNtitleEncoding,646
XmNtitleString,913
XmNtoBottomCallback,931
XmNtoggleMode,1001
XmNtopAttachment,766
XmNtopCharacter,513,548,976
XmNtopItemPosition,257,259,800
XmNtopLevelEnterCallback,725
XmNtopLevelLeaveCallback,725
XmNtopOffset,766
XmNtopPosition,766
XmNtopShadowColor,18,179,777,781,820,865
XmNtopShadowPixmap,777,782,820,865
XmNtopWidget,767
XmNtotalLines,975
XmNtoTopCallback,931
XmNtransferProc,119,122,751
XmNtransferStatus,751
XmNtransient,646
XmNtransientFor,635
XmNtranslations,621
XmNtraversalOn,181,213,777,820,865
XmNtraverseObscuredCallback,181,213,940,942
XmNtroughColor,18,928
XmNunderlineType,895
XmNunitType,639,777,820,865
XmNunmapCallback,661,906
XmNunpostBehavior,922
XmNunselectColor,1001
XmNuseAsyncGeometry,639
XmNuseColorObject,922
XmNuserData,717,777,820,865,922
XmNvalidCursorForeground,722
XmNvalue
andScale,346
andScrollBar,351,354

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

andText,544
andTextField,544
andText/TextField,505,508,510,512
andScale,350
andScrollBar,928
andText/TextField,976,996
Scale,913
XmNvalueChangedCallback,913,965,969
andScale,916
andScrollBar,353,931
andText,980
andText/TextField,483,514,516,518,521,525526,529,544,546
andToggleButton,553,1004
XmNvalues,960,967
XmNvalueWcs,505,508,510,512
andText,547
andTextField,547
andText/TextField,976,996
XmNverifyBell,976,996
XmNverticalFontUnit,77,363364,922
XmNverticalScrollBar,266,358,800,940
XmNverticalSpacing,765
XmNviewType,786
XmNvisibleItemCount,677,800
XmNvisibleWhenOff,1001
XmNvisual,629
XmNvisualEmphasis,786
XmNvisualPolicy,940
XmNwaitForWm,646
XmNwhichButton,899
XmNwidth,621,627,731
XmNwidthInc,646
XmNwindowGroup,646
XmNwinGravity,646
XmNwmTimeout,646
XmNwordWrap,978
XmNworkWindow,266,358,940
XmNwrap,960,967
XmNx,621,627
XmNy,621,627
XmObjectAtPoint,276

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1151

XmOffsetdatatype,1094
XmOffsetModeldatatype,1094
XmOffsetPtrdatatype,1094
XmOperationChangedCallbackStruct,727
datatype,1094
XmOptionButtonGadget,278
XmOptionLabelGadget,279
XmOptionMenu,850
XmPanedWindow,852
XmParseMapping,858,1129
datatype,1094
XmParseMappingCreate,280
XmParseMappingFree,283
XmParseMappingGetValues,284
XmParseMappingSetValues,286
XmParseModeldatatype,1095
XmParseProcdatatype,1095
XmParseTabledatatype,1095
XmParseTableFree,288
XmPopupHandlerCallbackStruct,868
datatype,1095
XmPopupMenu,862
XmPrimitive,864
XmPrintPopupPDM,290,292
XmPrintShell,872,1129
XmPrintShellCallbackStruct,875
datatype,1096
XmPrintToFile,294
XmProcessTraversal,296
XmPromptDialog,878
XmPulldownMenu,879
XmPushButton,881
XmPushButtonCallbackStruct,883
datatype,1095
XmPushButtonGadget,888
XmQualifyProcdatatype,1096
XmQuestionDialog,891
XmRadioBox,892
XmRedisplayWidget,299
XmRegisterSegmentEncoding,301
XmRemoveFromPostFromList,303
XmRemoveProtocolCallback,304
XmRemoveProtocols,305
XmRemoveTabGroup,306
XmRemoveWMProtocolCallback,307
XmRemoveWMProtocols,308
XmRenderTabledatatype,1096
XmRenderTableAddRenditions,309
XmRenderTableCopy,311
XmRenderTableCvtFromProp,313
XmRenderTableCvtToProp,314
XmRenderTableFree,316
XmRenderTableGetRendition,317
XmRenderTableGetRenditions,318
XmRenderTableGetTags,321
XmRenderTableRemoveRenditions,323
XmRendition,894,1129
datatype,1096

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmRenditionCreate,324
XmRenditionFree,326
XmRenditionRetrieve,327
XmRenditionUpdate,329
XmRepTypeAddReverse,331
XmRepTypeEntrydatatype,1097
XmRepTypeGetId,332
XmRepTypeGetNameList,333
XmRepTypeGetRecord,335
XmRepTypeGetRegistered,337
XmRepTypeIddatatype,1097
XmRepTypeInstallTearOffModelConverter,339
XmRepTypeListdatatype,1097
XmRepTypeRegister,340
XmRepTypeValidValue,342
XmResolveAllPartOffsets,344
XmResolvePartOffsets,345
XmRowColumn,897
XmRowColumnCallbackStruct,907
datatype,1097
XmScale,912
XmScaleCallbackStruct,917
datatype,1097
XmScaleGetValue,346
XmScaleSetTicks,347
XmScaleSetValue,350
XmScreen,921
XmScreenColorProcdatatype,1098
XmScrollBar,927
XmScrollBarCallbackStruct,932
datatype,1098
XmScrollBarGetValues,351
XmScrollBarSetValues,353
XmScrolledList,937
XmScrolledText,938
XmScrolledWindow,939
XmScrolledWindowSetAreas,357
XmScrollVisible,355
XmSearchProcdatatype,1098
XmSecondaryResourceDatadatatype,1098
XmSelectionBox,945

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1152

XmSelectionBoxCallbackStruct,949
datatype,1099
XmSelectionBoxGetChild,359
XmSelectionCallbackStruct,1099
XmSelectionDialog,953
XmSeparator,954
XmSeparatorGadget,957
XmSetColorCalculation,361
XmSetFontUnit,363
XmSetFontUnits,364
XmSetMenuCursor,365
XmSetProtocolHooks,366
XmSetWMProtocolHooks,368
XmSimpleSpinBox,959,1129
XmSimpleSpinBoxAddItem,370
XmSimpleSpinBoxDeletePos,371
XmSimpleSpinBoxSetItem,372
XmSpinBox,964,1129
XmSpinBoxCallbackStruct,970
datatype,1099
XmSpinBoxValidatePosition,373
XmStringdatatype,1100
XmStringBaseline,375
XmStringByteCompare,377
XmStringByteStreamLength,378
XmStringCharSetdatatype,1100
XmStringCharSetTabledatatype,1100
XmStringCompare,379
XmStringComponentCreate,380
XmStringComponentTypedatatype,1100
XmStringConcat,382
XmStringConcatAndFree,383
XmStringContextdatatype,1101
XmStringCopy,384
XmStringCreate,385
XmStringCreateLocalized,387
XmStringCreateLtoR,389
XmStringCreateSimple,391
XmStringDirectiondatatype,1101
XmStringDirectionCreate,392
XmStringDirectionToDirection,393
XmStringDraw,394
XmStringDrawImage,396
XmStringDrawUnderline,398
XmStringEmpty,400
XmStringExtent,401
XmStringFree,403
XmStringFreeContext,405
XmStringGenerate,407
XmStringGetLtoR,409
XmStringGetNextComponent,411
XmStringGetNextSegment,414
XmStringGetNextTriple,416
XmStringHasSubstring,419
XmStringHeight,420
XmStringInitContext,421
XmStringIsVoid,424
XmStringLength,425
XmStringLineCount,426
XmStringNConcat,428
XmStringNCopy,430
XmStringParseText,432

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmStringPeekNextComponent,435
XmStringPeekNextTriple,437
XmStringPutRendition,439
XmStringSegmentCreate,440
XmStringSeparatorCreate,442
XmStringTabledatatype,1101
XmStringTableParseStringArray,443
XmStringTableProposeTablist,445
XmStringTableToXmString,447
XmStringTableUnparse,449
XmStringTagdatatype,1101
XmStringToXmStringTable,451
XmStringUnparse,453
XmStringWidth,456
XmTabdatatype,1101
XmTabCreate,457
XmTabFree,459
XmTabGetValues,460
XmTabListdatatype,1101
XmTabListFree,464
XmTabListGetTab,465
XmTabListInsertTabs,466
XmTabListRemoveTabs,468
XmTabListReplacePositions,470
XmTabListTabCopy,462
XmTabListTabCount,472
XmTabSetValue,473
XmTargetsAreCompatible,474
XmTemplateDialog,974
XmText,975
XmTextBlockRecdatatype,1102
XmTextBlockRecWcsdatatype,1102
XmTextClearSelection,476
XmTextCopy,478
XmTextCopyLink,480
XmTextCut,483
XmTextDirectiondatatype,1102
XmTextDisableRedisplay,486
XmTextEnableRedisplay,487
XmTextField,995

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1153

XmTextFieldClearSelection,476
XmTextFieldCopy,478
XmTextFieldCopyLink,480
XmTextFieldCut,483
XmTextFieldGetBaseline,492
XmTextFieldGetCursorPosition,494
XmTextFieldGetEditable,495
XmTextFieldGetInsertionPosition,496
XmTextFieldGetLastPosition,497
XmTextFieldGetMaxLength,498
XmTextFieldGetSelection,499
XmTextFieldGetSelectionPosition,500
XmTextFieldGetSelectionWcs,502
XmTextFieldGetString,505
XmTextFieldGetStringWcs,507
XmTextFieldGetSubstring,509
XmTextFieldGetSubstringWcs,511
XmTextFieldInsert,514
XmTextFieldInsertWcs,516
XmTextFieldPaste,518
XmTextFieldPasteLink,520
XmTextFieldPosToXY,523
XmTextFieldRemove,525
XmTextFieldReplace,526
XmTextFieldReplaceWcs,528
XmTextFieldSetAddMode,531
XmTextFieldSetCursorPosition,532
XmTextFieldSetEditable,534
XmTextFieldSetHighlight,535
XmTextFieldSetInsertionPosition,537
XmTextFieldSetMaxLength,539
XmTextFieldSetString,544
XmTextFieldSetStringWcs,546
XmTextFindString,488
XmTextFindStringWcs,490
XmTextGetBaseline,492
XmTextGetCenterline,493
XmTextGetCursorPosition,494
XmTextGetEditable,495
XmTextGetInsertionPosition,496
XmTextGetLastPosition,497
XmTextGetMaxLength,498
XmTextGetSelection,499
XmTextGetSelectionPosition,500
XmTextGetSelectionWcs,502
XmTextGetSource,504
XmTextGetString,505
XmTextGetStringWcs,507
XmTextGetSubstring,509
XmTextGetSubstringWcs,511
XmTextGetTopCharacter,513
XmTextInsert,514
XmTextInsertWcs,516
XmTextPaste,518
XmTextPasteLink,520
XmTextPositiondatatype,1102
XmTextPosToXY,523
XmTextRemove,525

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmTextReplace,526
XmTextReplaceWcs,528
XmTextScroll,530
XmTextSetAddMode,531
XmTextSetCursorPosition,532
XmTextSetEditable,534
XmTextSetHighlight,535
XmTextSetInsertionPosition,537
XmTextSetMaxLength,539
XmTextSetSelection,540
XmTextSetSource,542
XmTextSetString,544
XmTextSetStringWcs,546
XmTextSetTopCharacter,548
XmTextShowPosition,549
XmTextSourcedatatype,1102
XmTextTypedatatype,1102
XmTextVerifyCallbackStructdatatype,1103
XmTextVerifyCallbackStructWcsdatatype,1103
XmTextXYToPos,551
XmToggleButtonCallbackStruct,1005
datatype,1104
XmToggleButtonGadget,1010
XmToggleButtonGadgetGetState,552
XmToggleButtonGadgetSetState,553
XmToggleButtonGadgetSetValue,555
XmToggleButtonGetState,552
XmToggleButtons,1000
XmToggleButtonSetState,553
XmToggleButtonSetValue,555
XmToggleButtonStatedatatype,1104
XmTopLevelEnterCallbackStruct,727
datatype,1104
XmTopLevelLeaveCallbackStruct,727
datatype,1104
XmTrackingEvent,557
XmTrackingLocate,559
XmTransfer,561
XmTransferDone,570
XmTransferSendRequest,573
XmTransferSetParameters,574
XmTransferStartRequest,576

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1154

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

XmTransferStatusdatatype,1104
XmTransferValue,577
XmTranslateKey,579
XmTraversalDirectiondatatype,1105
XmTraverseObscureCallbackStructdatatype,1105
XmTraverseObscuredCallbackStruct,943
XmUninstallImage,581
XmUpdateDisplay,582
XmVaCreateSimpleCheckBox,583
XmVaCreateSimpleMenuBar,585
XmVaCreateSimpleOptionMenu,588
XmVaCreateSimplePopupMenu,591
XmVaCreateSimplePulldownMenu,594
XmVaCreateSimpleRadioBox,597
XmVisibilitydatatype,1105
XmWarningDialog,1013
XmWidgetGetBaselines,600
XmWidgetGetDisplayRect,602
XmWorkingDialog,1014
XRectangledatatype,1083
XrmValuedatatype,1105
XrmValuePtrdatatype,1105
XtAcceleratorsdatatype,1105
XtCallbackListdatatype,1106
XtCallbackProcdatatype,1106
XtConvertSelectionIncrProcdatatype,1106
XtCreatePopupChildProcdatatype,1106
XtKeyProcdatatype,1106
XtOrderProcdatatype,1107
XtPointerdatatype,1107
XtSelectionCallbackProcdatatype,1107
XtTranslationsdatatype,1107

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

Page1155

ABOUTTHEAUTHORS
AntonyFountainisaPrincipalEngineeratImperialSoftwareTechnology,wherehehasworkedonanumberofX/Motifproducts,includingXDesigner,aworld
leadingMotifGUIbuildertool.Asidefromdevelopment,hehaswrittenanddeliveredX/Motifwidget/graphicstrainingcoursesanddevelopedthefrontendsto
severalexternalproductsasaconsultant.HehasbeenworkingwithX/Motifforwellover10years.
AntonyhasanM.A.inEnglishLanguageandLiteraturefromEdinburgh,withsidelinesinAppliedMathematicsandComputerScience,andapostgraduateM.Sc.in
ComputerSciencefromHeriotWatt(Edinburgh).
PaulaFergusonisaneditorforO'ReillyshehaseditedbooksonJava,JavaScript,andanumberofwebrelatedtopics.Inherpastlife,shewasawriterfor
O'Reilly,specializinginX/Motifbooks.PaulahasaB.S.inComputerSciencefromtheMassachusettsInstituteofTechnology.ShelivesinBoulder,Colorado,where
shespendshersparetimehangingfromrocksandrunningtrailswithhertwotirelessLabradorretrievers.

COLOPHON
Ourlookistheresultofreadercomments,ourownexperimentation,andfeedbackfromdistributionchannels.Distinctivecoverscomplementourdistinctiveapproach
totechnicaltopics,breathingpersonalityandlifeintopotentiallydrysubjects.
DavidFutatowastheproductioneditorandthecopyeditorforMotifReferenceManual,SecondEdition.MaureenDempseyandSarahJaneShangrawprovided
qualitycontrolAnnaSnowandMaeveO'Mearaprovidedproductionassistance.EllieCutlerwrotetheindex,whichwasupdatedbyPaulaFerguson.
EdieFreedmandesignedthecoverofthisbook.KathleenWilsonproducedthecoverlayoutwithQuarkXPress3.32usingAdobe'sITCGaramondfont.
AliciaCechdesignedtheinteriorlayoutbasedonaseriesdesignbyEdieFreedman.LenMuellnerimplementedthedesignusingasetofgtroffmacrosoriginally
writtenbySteveTalbott.TheGNUgrofftextformatterversion1.11wasusedtogeneratePostScriptoutput,whichwasthendistilledtoPDFforfinalpress.Thetext
andheadingfontsareNewBaskervilleandFuturaCondensed.TheillustrationsthatappearinthebookwereproducedbyRobertRomanoandRhon

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

Page1156

Copyright 2000. O'Reilly Media. All rights reserved. May not be reproduced in any form without permission from the publisher, except fair uses permitted under U.S. or applicable copyright law.

PorterusingMacromediaFreeHand8andAdobePhotoshop5.ThiscolophonwaswrittenbyDavidFutato.
Wheneverpossible,ourbooksuseRepKover

,adurableandflexiblelayflatbinding.IfthepagecountexceedsRepKover'slimit,perfectbindingisused.

EBSCO Publishing : eBook Collection (EBSCOhost) - printed on 1/13/2017 4:35 AM via AKRON SUMMIT COUNTY PUBLIC LIBRARY
AN: 24658 ; Ferguson, Paula M., Heller, Dan.; Motif Reference Manual : For Motif 2.1
Account: akron

También podría gustarte