<HTML><HEAD><TITLE>Manpage of LessTif Internal Functions</TITLE>
</HEAD><BODY>
<H1>LessTif Internal Functions</H1>
Section: LessTif Manuals (3)<BR>Updated: April 1998<BR><A HREF="#index">Index</A>
<BR><A HREF="lesstif.html">Return to Main Contents</A>
<HR>

<A NAME="lbAB">&nbsp;</A>
<H2>NAME</H2>

LessTif Internal Functions
<A NAME="lbAC">&nbsp;</A>
<H2>DESCRIPTION</H2>

When the LessTif project began some discussion was undertaken
about the use of the previously undocumented
internal _Xm.. functions in Motif 1.2.
Apparently these functions have been transformed to Xme.. functions
in OSF/Motif&#174; 2.0 and are also documented.
As many people use these functions in their code
(especially widget writers) the implementation of the _Xm.. functions
is important to the LessTif project.
<P>

Below is a list of functions currently taken from the LessTif header files. 
<A NAME="lbAD">&nbsp;</A>
<H2>CONVENIENCE FUNCTIONS</H2>

<P>

<B>void _XmCalcLabelDimensions(Widget w);</B>

<P>

Sets the core width and height values to the values needed to display the current
label contents.  It takes into account the label type as well as all of the margin
resources.
<P>

<B>Boolean _XmGetInDragMode(Widget w);</B>

<P>

returns True, if the widget (e.g. push button,...)
resides in a menu and the user is currently dragging the
mouse with button 1 pressed over the menu items.
This way a widget can figure out, whether it must
redraw itself in the armed state if the widget gets a PrimitiveEnter action. 
<P>

<B>Boolean _XmIsEventUnique(XEvent *event);</B>

<P>

Unknown Function 
<P>

<B>Widget _XmGetRC_PopupPosted(Widget w);</B>

<P>

Returns the widget id of the parent of the menu that is currently posted by
any of the children of w.  In other words the id of the shell that is cascaded
from menu w.
<P>

<B>void _XmRecordEvent(XEvent *event); </B>

<P>

Unknown Function 
<P>

<B>void _XmSetInDragMode(Widget w, Boolean flag);</B>

<P>

this is used to enter or leave the dragging mode within the menu system. 
<P>

<B>XmFontListEntry _XmFontListEntryFromTag(XmFontList fontlist, char *tag);</B>

<P>

Unknown Function 
<P>

<B>Boolean _XmCreateVisibilityRect(Widget w, XRectangle *rectPtr);</B>

<P>

Unknown Function 
<P>

<B>Boolean _XmCvtStringToXmNavigation(Display *, XrmValue *, Cardinal *, XrmValue *, XrmValue *, XtPointer *);</B>

<P>

Unknown Function 
<P>

<B>Boolean _XmCvtStringToXmString(Display *, XrmValue *, Cardinal *, XrmValue *, XrmValue *, XtPointer *);</B>

<P>

Unknown Function 
<P>

<B>Boolean _XmFocusIsHere(Widget w);</B>

<P>

Unknown Function 
<P>

<B>Boolean _XmFocusIsInShell(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>Boolean _XmGrabTheFocus(Widget w, XEvent *event);</B>

<P>

Unknown Function 
<P>

<B>Boolean _XmIsNavigable(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>Boolean _XmNavigSetValues(Widget current, Widget request, Widget new_wid, ArgList args, Cardinal *num_args);</B>

<P>

Unknown Function 
<P>

<B>Boolean _XmSearchColorCache(unsigned int which, XmColorData *values, XmColorData **ret);</B>

<P>

Unknown Function 
<P>

<B>Boolean _XmShellIsExclusive(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>Boolean _XmStringsAreEqual() </B>

<P>

Unknown Function 
<P>

<B>Pixel _XmAccessColorData(XmColorData *cd, unsigned char which);</B>

<P>

Unknown Function 
<P>

<B>Pixel _XmBlackPixel(Screen *screen, Colormap colormap, XColor blackcolor);</B>

<P>

Unknown Function 
<P>

<B>Pixel _XmWhitePixel(Screen *screen, Colormap colormap, XColor whitecolor);</B>

<P>

Unknown Function 
<P>

<B>Pixmap _XmGetPixmap();</B>

<P>

Unknown Function 
<P>

<B>String _XmGetDefaultBackgroundColorSpec(Screen *screen);</B>

<P>

Unknown Function 
<P>

<B>Time __XmGetDefaultTime(Widget w, XEvent *event);</B>

<P>

Unknown Function 
<P>

<B>Widget _XmFindNextTabGroup(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>Widget _XmFindPrevTabGroup(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>Widget _XmFindTopMostShell(Widget w);</B>

<P>

Unknown Function 
<P>

<B>Widget _XmGetActiveItem(Widget w);</B>

<P>

Unknown Function 
<P>

<B>Widget _XmGetFirstFocus(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>Widget _XmNavigate(Widget wid, XmTraversalDirection direction);</B>

<P>

Unknown Function 
<P>

<B>XmColorData *_XmAddToColorCache(XmColorData *new_rec);</B>

<P>

Unknown Function 
<P>

<B>XmColorData *_XmGetColors(Screen *screen, Colormap color_map, Pixel background);</B>

<P>

Unknown Function 
<P>

<B>XmColorData *_XmGetDefaultColors(Screen *screen, Colormap color_map);</B>

<P>

Unknown Function 
<P>

<B>XmFocusData _XmCreateFocusData();</B>

<P>

Unknown Function 
<P>

<B>XmFocusData _XmGetFocusData(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>XmFontList _XmGetDefaultFontList(Widget w, unsigned char fontListType);</B>

<P>

Unknown Function 
<P>

<B>XmGadget _XmInputForGadget(Widget cw, int x, int y);</B>

<P>

Unknown Function 
<P>

<B>XmGadget _XmInputInGadget(Widget cw, int x, int y);</B>

<P>

Unknown Function 
<P>

<B>char * _XmGetBGPixmapName();</B>

<P>

Unknown Function 
<P>

<B>char *_XmConvertCSToString(XmString cs);</B>

<P>

Unknown Function 
<P>

<B>int _XmEmptyRect(XRectangle *r);</B>

<P>

Unknown Function 
<P>

<B>int _XmIntersectRect(XRectangle *srcRectA, Widget widget, XRectangle *dstRect);</B>

<P>

Unknown Function 
<P>

<B>unsigned char _XmGetFocusPolicy(Widget w);</B>

<P>

Unknown Function 
<P>

<B>void _XmBackgroundColorDefault(Widget widget, int offset, XrmValue *value);</B>

<P>

Unknown Function 
<P>

<B>void _XmBottomShadowColorDefault(Widget widget, int offset, XrmValue *value);</B>

<P>

Unknown Function 
<P>

<B>void _XmCallFocusMoved(Widget old, Widget new_wid, XEvent *event);</B>

<P>

Unknown Function 
<P>

<B>void _XmClearBGPixmap();</B>

<P>

Unknown Function 
<P>

<B>void _XmClearFocusPath(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>void _XmClearRect(XRectangle *r);</B>

<P>

Unknown Function 
<P>

<B>void _XmConfigureObject(Widget g, Position x, Position y, Dimension width, Dimension height, Dimension border_width);</B>

<P>

_XmConfigureObject is a wrapper around
<B><A HREF="XtConfigureWidget.html">XtConfigureWidget</A></B>(3)

which insulates a widget writer from the burden of checking whether an object
is a widget or a gadget.
The way for a manager widget
(any subclass of XmManager;
they're supposed to do geometry management for their children)
to set the layout of a child is to use this function.
In the case of a widget, XtConfigureWidget is called.
For a gadget, the geometry fields are manipulated directly.
<P>

<B>void _XmDestroyFocusData(XmFocusData focusData);</B>

<P>

Unknown Function 
<P>

<B>void _XmDispatchGadgetInput(Widget g, XEvent *event, Mask mask);</B>

<P>

Unknown Function 
<P>

<B>void _XmFocusModelChanged(Widget wid, XtPointer client_data, XtPointer call_data);</B>

<P>

Unknown Function 
<P>

<B>void _XmForegroundColorDefault(Widget widget, int offset, XrmValue *value);</B>

<P>

Unknown Function 
<P>

<B>void _XmGetDefaultThresholdsForScreen(Widget widget, int offset, XrmValue *value);</B>

<P>

Unknown Function 
<P>

<B>void _XmHighlightColorDefault(Widget widget, int offset, XrmValue *value);</B>

<P>

Unknown Function 
<P>

<B>void _XmManagerHighlightPixmapDefault(Widget widget, int offset, XrmValue *value);</B>

<P>

Unknown Function 
<P>

<B>void _XmManagerTopShadowPixmapDefault(Widget widget, int offset, XrmValue *value);</B>

<P>

Unknown Function 
<P>

<B>void _XmMgrTraversal(Widget wid, XmTraversalDirection direction);</B>

<P>

Unknown Function 
<P>

<B>void _XmMoveObject(Widget g, Position x, Position y);</B>

<P>

Unknown Function 
<P>

<B>void _XmNavigChangeManaged(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>void _XmNavigDestroy(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>void _XmNavigInitialize(Widget request, Widget new_wid, ArgList args, Cardinal num_args);</B>

<P>

Unknown Function 
<P>

<B>void _XmNavigResize(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>void _XmPrimitiveEnter(Widget w, XEvent *event, String *params, Cardinal num_params);</B>

<P>

Unknown Function 
<P>

<B>void _XmPrimitiveHighlightPixmapDefault(Widget widget, int offset, XrmValue *value);</B>

<P>

Unknown Function 
<P>

<B>void _XmPrimitiveLeave(Widget w, XEvent *event, String *params, Cardinal num_params);</B>

<P>

Unknown Function 
<P>

<B>void _XmPrimitiveTopShadowPixmapDefault(Widget widget, int offset, XrmValue *value);</B>

<P>

Unknown Function 
<P>

<B>void _XmProcessTraversal(Widget w, XmTraversalDirection dir, Boolean check);</B>

<P>

Unknown Function 
<P>

<B>void _XmRedisplayGadgets(Widget w, XEvent *event, Region region);</B>

<P>

Unknown Function 
<P>

<B>void _XmRegisterConverters();</B>

<P>

Unknown Function 
<P>

<B>void _XmRegisterPixmapConverters();</B>

<P>

Unknown Function 
<P>

<B>void _XmResetTravGraph(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>void _XmResizeObject(Widget g, Dimension width, Dimension height, Dimension border_width);</B>

<P>

Unknown Function 
<P>

<B>void _XmSetActiveTabGroup(XmFocusData focusData, Widget tabGroup);</B>

<P>

Unknown Function 
<P>

<B>void _XmSetDefaultBackgroundColorSpec(Screen *screen, String new_color_spec);</B>

<P>

Unknown Function 
<P>

<B>void _XmSetInitialOfTabGroup(Widget tab_group, Widget init_focus);</B>

<P>

Unknown Function 
<P>

<B>void _XmSetRect(XRectangle *rect, Widget w);</B>

<P>

Unknown Function 
<P>

<B>void _XmTopShadowColorDefault(Widget widget, int offset, XrmValue *value);</B>

<P>

Unknown Function 
<P>

<B>void _XmValidateFocus(Widget wid);</B>

<P>

Unknown Function 
<P>

<B>void _XmWarning(Widget w, char *message);</B>

<P>

Unknown Function 
<P>

<B>void _XmWidgetFocusChange(Widget wid, XmFocusChange change);</B>

<P>

Unknown Function 
<P>

<B>void _XmCascadePixmapDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmClearBorder(Display *display, Window win, int x, int y, Dimension width, Dimension height, Dimension shadow_thickness)</B>

<P>

Unknown Function 
<P>

<B>void _XmDefaultButtonShadowThickness(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmDefaultMultiClick(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmDrawArrow(Display *display, Window win, GC bottomGC, GC topGC, GC fillGC, Position x, Position y, Dimension width, Dimension height, Dimension shadow_thickness, unsigned char direction);</B>

<P>

Unknown Function 
<P>

<B>void _XmDrawDiamond(Display *display, Window win, GC bottomGC, GC topGC, GC selectGC, Position x, Position y, Dimension width, Dimension height, Dimension shadowThickness, Dimension fill);</B>

<P>

Unknown Function 
<P>

<B>void _XmDrawSeparator(Display *display, Window win, GC top_gc, GC bottom_gc, separator_GC, Position wx, Position wy, Dimension wwidth, Dimension wheight, Dimension shadowThickness, Dimension margin, unsigned char orientation, unsigned char separator_type);</B>

<P>

Unknown Function 
<P>

<B>void _XmDrawShadowDisplay *display, Drawable d, GC top_gc, GC bottom_gc, Dimension shad_thick, Position x, Position y, Dimension width, Dimension height);</B>

<P>

Unknown Function 
<P>

<B>void _XmDrawShadows(Display *display, Window win, GC topShadowGC, GC bottomShadowGC, Position x, Position y, Dimension width, Dimension height, Dimension shadowThickness, unsigned int shadowType);</B>

<P>

Unknown Function 
<P>

<B>void _XmFontListGetDefaultFont(XmFontList fontlist, XFontStruct **font_struct);</B>

<P>

Unknown Function 
<P>

<B>void _XmFrameHorizSpaceDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmFrameShadowThicknessDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmFrameShadowTypeDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmInitializeWidgetSet();</B>

<P>

Unknown Function 
<P>

<B>void _XmRowColumnEntryClassDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmRowColumnIsHomogeneousDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmRowColumnMarginDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmRowColumnMenuAcceleratorDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmRowColumnPackingDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmRowColumnSpacingDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmScrollBarMaximumDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmScrollBarProcessingDirectionDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmScrollBarSliderSizeDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmScrollBarTroughColorDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmScrollBarValueDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmSelectColorDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmToggleButtonIndicatorTypeDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>void _XmVendorShellVirtualBindingsDefault(Widget w, int offset, XrmValue *val);</B>

<P>

Unknown Function 
<P>

<B>String _XmOSGetHomeDirName(void);</B>

<P>

Unknown Function 
<P>

<B>XmString _XmOSGetLocalizedString(char *reserved, </B>

<P>

Unknown Function 
<P>

<B>int _XmMicroSleep(long secs);</B>

<P>

Unknown Function 
<P>

<B>void _XmInternAtomAndName(Display *display, Atom atom, String name);</B>

<P>

Associates an atom name with an atom id (and vice versa)
without the need to query the X server first for the atom id.
This way any name to id mapping (as well as the id to name mapping)
can be set on a given display. 
<P>

<B>void _XmVirtualToActualKeysym(Display *Dsp, KeySym VirtualKeysym, KeySym *RealKeysymReturn, Modifiers *ModifierReturn);</B>

<P>

For the given virtual keysym (which must be one of the = osfXK_xxx keysyms)
returns the real keysym as
well as the modifiers which make up that particular virtual keysym.
If asked for an invalid virtual keysym,
_XmVirtualToActualKeysym returns NoSymbol for the real keysym. 
<P>

<B>int _XmVirtKeysLoadFallbackBindings(Display *Dsp, String *Bindings);</B>

<P>

Installs the default key bindings for a specific display. If th= ere are any vendor specific default bindings
available, then the appropiate one= will be installed instead of the fallback key bindings. Additionally, the
bindings installed are returned in Bindings. The caller is responsible for freeing the space occupied by this
key binding description string. The return code seems to be always zero. At least LessTif will always
retur= n a zero... 
<P>

<B>Boolean _XmVirtKeysLoadFileBindings(String filename, String *binding= );</B>

<P>

Reads in a file containing a description of the virtual key bindings. If succesful, returns True and the
description string. The caller= is responsible for freeing the memory lateron. 
<P>

<B>void _XmVirtKeysInitialize(Widget w);</B>

<P>

Sets up the virtual key bindings for a display. The widget specified must be a XmDisplay widget, otherwise
_XmVirtKeysInitialize will deny the attempt to set up the key bindings. The function first checks several
places in order to catch up key binding description. If all fails, it will install fallback key bindings. This
internal function is called during when initializing a XmDisplay widget. 
<P>

<B>void _XmVirtKeysDestroy(Widget w);</B>

<P>

Cleanup any leftovers from the virtual binding mechanism when destroying a XmDisplay widget. 
<P>

<B>void _XmVirtKeysHandler(Widget w, XtPointer Data, XEvent *Event, Boolean *ContDispatch);</B>

<P>

This handler is installed on every widget. It just records the current key press event in an widget instance
field private to a XmDisplay widget. 
<A NAME="lbAE">&nbsp;</A>
<H2>SEE ALSO</H2>

<P>

<HR>
<A NAME="index">&nbsp;</A><H2>Index</H2>
<DL>
<DT><A HREF="#lbAB">NAME</A><DD>
<DT><A HREF="#lbAC">DESCRIPTION</A><DD>
<DT><A HREF="#lbAD">CONVENIENCE FUNCTIONS</A><DD>
<DT><A HREF="#lbAE">SEE ALSO</A><DD>
</DL>
<HR>
This document was created by
<A HREF="http://www.debian.org/Packages/unstable/doc/man2html.html">man2html</A>,
using the manual pages.<BR>
Time: 22:45:30 GMT, January 14, 2000
</BODY>
</HTML>
