SgFinder(3X)SgFinder(3X)NAMESgFinder — The Finder widget class
SYNOPSIS
#include <Sgm/Finder.h>
VERSION
This page documents the version of Sgm that accompanies Motif 1.2.
DESCRIPTION
The Finder widget is designed to integrate a drop pocket, a textField,
a zoomBar, and a history menu. The zoomBar is a set of buttons above
the text field which allows sections of the text to be selected. The
history menu allows users to select items previously visited, or to
undo operations. The Finder widget should be used for accelerating
text selection of long objects such as file names.
Pressing on the history button brings up a pulldown menu of choices.
Selecting an item in the menu will set the text field to that item.
Whenever the text field is set, the zoomBar changes to reflect the text
sections in the text field.
Pressing a button on the zoomBar will set the text field to the portion
of the text preceding that button. The specific behavior is customiza‐
ble, but generally will cut-off the portion of the text after the
pressed zoomBar button. The history menu can always be used to go back
to the original text.
The Finder also includes a DropPocket for displaying icons representing
entries in the Finder's text field. These icons are sgi file icons.
File icons from fm, searchbook or similar applications can be dropped
on the DropPocket.
The Finder widget includes resources that allow initializing the his‐
tory list, setting the pixmap on the history button, and providing a
custom function for handling setting of the text after a zoomBar button
press. Other resources are described below. It is customizable for
various applications.
Classes
Finder inherits behavior and resources from Core, Composite, Constraint
and XmManager.
The class pointer is sgFinderWidgetClass.
The class name is SgFinder.
New Resources
The following table defines a set of widget resources used by the pro‐
grammer to specify data. The programmer can also set the resource val‐
ues for the inherited classes to set attributes for this widget. To
reference a resource by name or by class in a .Xdefaults file, remove
the SgN or SgC prefix and use the remaining letters. To specify one of
the defined values for a resource in a .Xdefaults file, remove the SgN
prefix and use the remaining letters (in either lowercase or uppercase,
but include any underscores between words). The codes in the access
column indicate if the given resource can be set at creation time (C),
set by using XtSetValues (S), retrieved by using XtGetValues (G), or is
not applicable (N/A).
SgFinder Resource Set
Name Class Type Default Access
─────────────────────────────────────────────────────────────────────────────────────────────────
XmNactivateCallback XmCCallback XtCallbackList NULL C
SgNhistoryPixmap XmCHistoryPixmap Pixmap XmUNSPECIFIED_PIXMAP CSG
SgNseparator SgCSeparator unsigned char '/' CSG
SgNsetTextSectionFunc SgCSetTextSectionFunc XtProc setTextSection CSG
SgNuseDropPocket SgCUseDropPocket Boolean True CG
SgNuseHistoryMenu SgCUseHistoryMenu Boolean True CG
XmNvalueChangedCallback XmCCallback XtCallbackList NULL C
This callback is called when a zoomBar button is pushed or when the
text field generates an activateCallback (i.e. a return in the text
field) or if the text field is set by SgFinderSetTextString. The type
of the structure whose address is passed to this callback is XmAnyCall‐
backStruct. The reason sent by the callback is XmCR_ACTIVATE. The
pixmap that is displayed on the history button. The character that is
used to separate sections of text. The default is '/'. This character
determines where the buttons on the zoomBar are. The sections of text
each generate one button, and are defined by the SgNseparator at the
end of each section. This resource is used to replace the default
behavior of zoomBar button pushes with a user-defined function. The
typedef for the function is in <Sg/Finder.h>. The function should have
return type void and take an SgFinderWidget and and int as arguments
which are passed to it when it is called. The SgNsetTextSectionFunc
function is called whenever a zoomBar button is pushed. It is sug‐
gested that SgFinderSetTextString be used in the SgNsetTextSectionFunc
to set the value of the text field after a push occurs. Determines
whether to create a SgDropPocketWidget child of the Finder. If SgNuse‐
DropPocket is True (the default), the widget appears to the left of the
text field. If it is set to false at creation time, no drop pocket is
created, and the functionality associated with the drop pocket is
unavailable. This resource can be used to bypass the costs of setting
up drag and drop and loading the fileicon libraries. If SgNuseHistory‐
Menu is True (the default), the widget appears to the right of the text
field. If it is set to false at creation time, no SgDynaMenu widget is
created and there will be no history mechanism for the finder. The
associated functions to manipulate the history menu, SgFinderAddHisto‐
ryItem SgFinderRemoveHistoryItem and SgFinderClearHistory will not do
anything, but can still be called safely. The value changed callback
specifies the list of callbacks that is called after text is deleted
from or inserted into the text field. The type of the structure whose
address is passed to this callback is XmAnyCallbackStruct. The reason
sent by the callback is XmCR_VALUE_CHANGED.
Inherited Resources
Finder inherits behavior and resources from Core, Composite, Con‐
straint, and XmManager.
XmManager Resource Set
Name Class Type Default Access
──────────────────────────────────────────────────────────────────────────────────────────────────
XmNbottomShadowColor XmCBottomShadowColor Pixel dynamic CSG
XmNbottomShadowPixmap XmCBottomShadowPixmap Pixmap XmUNSPECIFIED_PIXMAP CSG
XmNforeground XmCForeground Pixel dynamic CSG
XmNhelpCallback XmCCallback XtCallbackList NULL C
XmNhighlightColor XmCHighlightColor Pixel dynamic CSG
XmNhighlightPixmap XmCHighlightPixmap Pixmap dynamic CSG
XmNinitialFocus XmCInitialFocus Widget dynamic CSG
XmNnavigationType XmCNavigationType XmNavigationType XmTAB_GROUP CSG
XmNshadowThickness XmCShadowThickness Dimension dynamic CSG
XmNstringDirection XmCStringDirection XmStringDirection dynamic CG
XmNtopShadowColor XmCTopShadowColor Pixel dynamic CSG
XmNtopShadowPixmap XmCTopShadowPixmap Pixmap dynamic CSG
XmNtraversalOn XmCTraversalOn Boolean True CSG
XmNunitType XmCUnitType unsigned char dynamic CSG
XmNuserData XmCUserData XtPointer NULL CSG
Composite Resource Set
Name Class Type Default Access
───────────────────────────────────────────────────────────────────────
XmNchildren XmCReadOnly WidgetList NULL G
XmNinsertPosition XmCInsertPosition XtOrderProc NULL CSG
XmNnumChildren XmCReadOnly Cardinal 0 G
Core Resource Set
Name Class Type Default Access
───────────────────────────────────────────────────────────────────────────────────────────────────────────────
XmNaccelerators XmCAccelerators XtAccelerators dynamic N/A
XmNancestorSensitive XmCSensitive Boolean dynamic G
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 0 CSG
XmNcolormap XmCColormap Colormap dynamic CG
XmNdepth XmCDepth int dynamic CG
XmNdestroyCallback XmCCallback XtCallbackList NULL C
XmNheight XmCHeight Dimension dynamic CSG
XmNinitialResourcesPersistent XmCInitialResourcesPersistent Boolean True C
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 0 CSG
XmNy XmCPosition Position 0 CSG
RELATED INFORMATIONCore(3X), SgCreateFinder(3X), SgFinderAddHistoryItem(3X), SgFinder‐
ClearHistory(3X), SgFinderGetTextString(3X), SgFinderRemoveHisto‐
ryItem(3X), SgFinderSetTextString(3X), SgFinderGetChild(3X), SgDrop‐
Pocket(3X), XmTextField(3X), and XmManager(3X).
SgFinder(3X)