DwtAttachedDB(3Dwt) DwtAttachedDB(3Dwt)
Name
DwtAttachedDB, DwtAttachedDBCreate, DwtAttachedDBPopupCreate - Creates an attached dialog box or a pop-up attached dialog box widget to
contain other information/request (dialog) subwidgets.
Syntax
Widget DwtAttachedDB(parent_widget, name, default_position,
x, y, title, style,
map_callback, help_callback)
Widget parent_widget;
char *name;
Boolean default_position;
Position x, y;
DwtCompString title;
unsigned char style;
DwtCallbackPtr map_callback, help_callback;
Widget DwtAttachedDBCreate (parent_widget, name,
override_arglist, override_argcount)
Widget parent_widget;
char *name;
ArgList override_arglist;
int override_argcount;
Widget DwtAttachedDBPopupCreate (parent_widget, name,
override_arglist,
override_argcount)
Widget parent_widget;
char *name;
ArgList override_arglist;
int override_argcount;
Arguments
parent_widget
Specifies the parent widget ID.
name Specifies the name of the created widget.
default_position
Specifies a boolean value that, when True, causes DwtNx and DwtNy to be ignored and forces the default widget position. The
default widget position is centered in the parent window. If False, the specified DwtNx and DwtNy attributes are used to posi-
tion the widget. This argument sets the DwtNdefaultPosition attribute associated with DwtDialogBoxCreate.
x Specifies the placement, in pixels, of the left side of the widget window relative to the inner upper left corner of the parent
window. This argument sets the DwtNx core widget attribute.
y Specifies, in pixels, the placement of the upper left corner of the widget window relative to the inner upper left corner of the
parent window. This argument sets the DwtNy core widget attribute.
title Specifies the compound-string label. The label is given to the window manager for the title bar if the DwtNstyle attribute asso-
ciated with DwtDialogBoxPopupCreate is DwtModal or DwtModeless. However, the label is used in the border if the DwtNstyle
attribute associated with DwtDialogBoxCreate is DwtWorkarea.
The attribute name associated with this argument is DwtNtitle.
style Specifies the style of the dialog box widget. You can pass DwtModal, DwtModeless, or DwtWorkarea. This argument sets the
DwtNstyle attribute associated with DwtDialogBoxCreate.
map_callback
Specifies the callback function or functions called when the window is about to be mapped. For this callback, the reason is
DwtCRMap. This argument is ignored if DwtNstyle is DwtWorkarea.
This argument sets the DwtNmapCallback attribute associated with DwtDialogBoxPopupCreate.
help_callback
Specifies the callback function or functions called when a help request is made. This argument sets the DwtNhelpCallback common
widget attribute.
override_arglist
Specifies the application override argument list.
override_argcount
Specifies the number of attributes in the application override argument list (override_arglist).
Description
The DwtAttachedDB and DwtAttachedDBCreate functions create an instance of an attached dialog box widget or an attached dialog box pop-up
widget and return its associated widget ID. The DwtAttachedDBPopupCreate function creates an instance of a pop-up attached dialog box wid-
get and returns its associated widget ID. The attached dialog box acts as a container only, and provides no input semantics over and above
the semantics of the widgets that it contains. It differs from the dialog box in its handling of child widgets. Constraints are placed on
each child widget at the time of creation. The default values for the constraint attributes are placed on the child unless you specify
values for the constraint attributes. You specify these values either in the override_arglist or by calling XtSetValues.
By using the constraint attributes, you can attach each of the four sides of a child widget (top, bottom, right side, and left side) to a
side of the parent attached dialog box, a side of another child widget, to a relative position within the attached dialog box, to itself,
or to nothing. The possible attachments for each of the four sides are described in the Constraint Attributes section. Specifying these
attachments allows you to maintain the position of child widgets within the attached dialog box as resizing occurs.
If only one attachment in a direction is specified with no width or height, the default width or height for the widget is used.
For all attachment types, you can optionally specify an offset in pixels or font units. The offset determines the amount of space between
the side of the child widget and the side or position you attach it to. By default, the child widgets are positioned in an attached dialog
box in terms of font units rather than pixel units. (That is, DwtNunits is DwtFontUnits.) The X font units are defined to be one-fourth
the width of whatever font is supplied for the common attribute DwtNfont. The Y font units are defined to be one-eighth the width of what-
ever font is supplied for DwtNfont.
The offsets given are automatically negated when dealing with right and bottom sides. For example, a displacement of 5 means that the side
stays 5 units to the right of its attachment if a left side, and 5 units to the left if a right side.
Displacements default to a value specified in the attached dialog box for attachments to the attached dialog box and the widget, and half
the value specified if attached to a position. Attaching to a point allows several widgets to grow proportionally; the space between them
should be the default displacement. There are separate horizontal and vertical defaults.
You can determine whether the attached dialog box will honor resize geometry requests from a given child widget by appropriately setting
the DwtNresize attribute for that child. If it does honor a request, the attached dialog box reconfigures all child widgets based on the
initial coordinate information. You can add child widgets after the attached dialog box widget has been realized. If there is extra room
in the attached dialog box, the new child widget will appear. If there is not enough room, the attached dialog box will ask the geometry
manager for permission to resize.
Inherited Attributes
-------------------------------------------------------------------------
Attribute Name Data Type Default
-------------------------------------------------------------------------
Core Attributes
DwtNx Position Determined by the geome-
try manager
DwtNy Position Determined by the geome-
try manager
DwtNwidth Dimension Widget-specific
DwtNheight Dimension Widget-specific
DwtNborderWidth Dimension One pixel
DwtNborder Pixel Default foreground color
DwtNborderPixmap Pixmap NULL
DwtNbackground Pixel Default background color
DwtNbackgroundPixmap Pixmap NULL
DwtNcolormap Colormap Default color map
DwtNsensitive Boolean True
DwtNancestorSensitive Boolean The bitwise AND of the
parent widget's DwtNsen-
sitive and DwtNances-
torSensitive attributes
DwtNaccelerators XtTranslations NULL
DwtNdepth int Depth of the parent win-
dow
DwtNtranslations XtTranslations NULL
DwtNmappedWhenManaged Boolean True
DwtNscreen Screen * The parent screen
DwtNdestroyCallback DwtCallbackPtr NULL
Constraint Attributes
DwtNadbTopAttachment DwtAttachmentType DwtAttachAdb if DwtNrub-
berPositioning is False
DwtAttachSelf if Dwt-
NrubberPositioning is
True
DwtNadbBottomAttachment DwtAttachmentType The default is DwtAt-
tachNone if DwtNrubber-
Positioning is False.
The default is DwtAt-
tachSelf if DwtNrubber-
Positioning is True.
DwtNadbLeftAttachment DwtAttachmentType The default is DwtAt-
tachAdb if DwtNrubberPo-
sitioning is False.
The default is DwtAt-
tachSelf if DwtNrubber-
Positioning is True.
DwtNadbRightAttachment DwtAttachmentType The default is DwtAt-
tachNone if DwtNrubber-
Positioning is False.
The default is DwtAt-
tachSelf if DwtNrubber-
Positioning is True.
DwtNadbTopWidget Widget NULL
DwtNadbBottomWidget Widget NULL
DwtNadbLeftWidget Widget NULL
DwtNadbRightWidget Widget NULL
DwtNadbTopPosition int Zero
DwtNadbBottomPosition int Zero
DwtNadbLeftPosition int Zero
DwtNadbRightPosition int Zero
DwtNadbTopOffset int The value specified with
DwtNdefaultVerticalOff-
set.
However, if Dwt-
NadbTopAttachment is
DwtAttachPosition or
DwtAttachSelf, the
default is one-half the
value specified with
DwtNdefaultVerticalOff-
set.
DwtNadbBottomOffset int The default is the value
specified with DwtNde-
faultVerticalOffset.
However, if DwtNadbBot-
tomAttachment is DwtAt-
tachPosition or DwtAt-
tachSelf, the default is
one-half the value spec-
ified with DwtNdefault-
VerticalOffset.
DwtNadbLeftOffset int The default is the value
specified with DwtNde-
faultHorizontalOffset.
However, if DwtNadbLeft-
Attachment is DwtAttach-
Position or DwtAttach-
Self, the default is
one-half the value of
DwtNdefaultHorizon-
talOffset.
DwtNadbRightOffset int The value specified with
DwtNdefaultHorizon-
talOffset.
However, if DwtNadbRigh-
tAttachment is DwtAt-
tachPosition or DwtAt-
tachSelf, the default is
one-half the value spec-
ified with DwtNdefault-
HorizontalOffset.
DwtNresizable Boolean True
Dialog Attributes
DwtNforeground Pixel Default foreground color
DwtNhighlight Pixel Default foreground color
DwtNhighlightPixmap Pixmap NULL
DwtNuserData Opaque * NULL
DwtNfont DwtFontList The default XUI Toolkit
font
DwtNhelpCallback DwtCallbackPtr NULL
DwtNdirectionRToL unsigned char DwtDirectionRightDown
DwtNunits unsigned char DwtFontUnits
DwtNstyle unsigned char For DwtDialogBoxCreate,
the default is Dwt-
Workarea.
For DwtDialogBoxPop-
upCreate, the default is
DwtModeless.
DwtNfocusCallback DwtCallbackPtr NULL
DwtNtextMergeTranslations XtTranslations NULL
DwtNmarginWidth Dimension For DwtDialogBoxCreate,
the default is One
pixel.
For DwtDialogBoxPop-
upCreate, the default is
3 pixels.
DwtNmarginHeight Dimension For DwtDialogBoxCreate,
the default is One
pixel.
For DwtDialogBoxPop-
upCreate, the default is
3 pixels.
DwtNdefaultPosition Boolean False
DwtNchildOverlap Boolean True
DwtNresize unsigned char DwtResizeGrowOnly
DwtNgrabKeySyms KeySym The default array con-
tains the Tab key sym-
bol.
DwtNgrabMergeTranslations XtTranslations The default syntax is:
"~Shift<KeyPress>0xff09:
DWTDIMOVEFOCUS-
NEXT()\n.br Shift<Key-
Press>0xff09: DWTDI-
MOVEFOCUSPREV()";
-------------------------------------------------------------------------
The following constraint attributes belong to any widget that is made a child of an attached dialog box widget. You cannot set these
attributes on the attached dialog box itself; you must set them on the child widget. Several of these constraint attributes take an enu-
merated data type. You should not change attachment attributes in an attached dialog box with XtSetValues, as this could result in an
infinite loop.
typedef enum _DwtAttachmentType {
DwtAttachNone,
DwtAttachAdb,
DwtAttachWidget,
DwtAttachPosition,
DwtAttachSelf,
DwtAttachOppWidget,
DwtAttachOppAdb,
} DwtAttachmentType;
DwtNadbTopAttachment
Specifies how the top side of the child widget is attached to its parent attached dialog box widget, another child widget, a
position, or itself.
The following describes the enumerated data type values as they apply to this attribute:
Value Meaning
DwtAttachNone Do not attach this side.
This type of attachment
may be overridden by the
defaults of other attach-
ments that affect this
side.
DwtAttachAdb Attach the top side of
the child widget to the
top side of its parent
attached dialog box.
DwtAttachOppAdb Attach the top side of
the child widget to the
bottom side of its parent
attached dialog box.
DwtAttachWidget Attach the top side of
the child widget to the
bottom side of another
child widget within the
parent attached dialog
box.
DwtAttachOppWidget Attach the top side of
the child widget to the
top side of another child
widget.
DwtAttachPosition Attach the top side of
the child widget to a
relative position inside
the parent attached dia-
log box. Specify the
relative position as a
fraction of the total
width or height of the
attached dialog box.
DwtAttachSelf Attach the top side of
the child widget to a
relative position corre-
sponding to the side's
initial position in the
attached dialog box.
DwtNadbBottomAttachment
Specifies how the bottom side of the widget is attached to the side of its parent attached dialog box widget, another child
widget, a position, or itself.
The following describes the enumerated data type values as they apply to this attribute:
Value Meaning
DwtAttachNone Do not attach this side.
This type of attachment
overrides any default
attachment that might
affect the side.
DwtAttachAdb Attach this side to the
bottom side of its parent
attached dialog box.
DwtAttachOppAdb Attach this side to the
top side of the parent
attached dialog box.
DwtAttachWidget Attach this side to the
top side of another child
widget within the parent
attached dialog box.
DwtAttachOppWidget Attach this side to the
bottom side of another
child widget.
DwtAttachPosition Attach this side to a
relative position inside
the parent attached dia-
log box. Specify the
relative position as a
fraction of the total
width or height of the
attached dialog box.
DwtAttachSelf Attach this to a relative
position corresponding to
the side's initial posi-
tion inside the parent
attached dialog box.
DwtNadbLeftAttachment
Specifies how the left side of the widget is attached to the side of its parent attached dialog box widget, another child
widget, a position, or itself.
The following describes the enumerated data type values as they apply to this attribute:
Value Meaning
DwtAttachNone Do not attach this side.
This type of attachment
overrides any default
attachment that might
affect the side.
DwtAttachAdb Attach this side to the
left side of its parent
attached dialog box.
DwtAttachOppAdb Attach this side to the
right side of the parent
attached dialog box.
DwtAttachWidget Attach this side to the
right side of another
child widget within the
parent attached dialog
box.
DwtAttachOppWidget Attach this side to the
left side of another
child widget.
DwtAttachPosition Attach this side to a
relative position inside
the parent attached dia-
log box. Specify the
relative position as a
fraction of the total
width or height of the
attached dialog box.
DwtAttachSelf Attach this side to a
relative position corre-
sponding to the side's
initial position in the
parent attached dialog
box.
DwtNadbRightAttachment
Specifies how the right side of the widget is attached to the side of its parent attached dialog box, another child widget,
a position, or itself.
The following describes the enumerated data type values as they apply to this attribute:
Value Meaning
DwtAttachNone Do not attach this side.
This type of attachment
overrides any default
attachment that might
affect the side.
DwtAttachAdb Attach this side to the
right side of its parent
attached dialog box.
DwtAttachOppAdb Attach this side to the
left side of the parent
attached dialog box.
DwtAttachWidget Attach this side to the
left side of another
child widget within the
parent attached dialog
box.
DwtAttachOppWidget Attach this side to the
right side of another
child widget.
DwtAttachPosition Attach this side to a
relative position inside
the parent attached dia-
log box. Specify the
relative position as a
fraction of the total
width or height of the
attached dialog box.
DwtAttachSelf Attach this side to a
relative position corre-
sponding to the side's
initial position in the
parent attached dialog
box.
DwtNadbTopWidget
Specifies the child widget that the top side is attached to if DwtNadbTopAttachment is DwtAttachWidget or DwtAttachOppWid-
get. Otherwise, this attribute is ignored.
DwtNadbBottomWidget
Specifies the widget that the bottom side is attached to if DwtNadbBottomAttachment is DwtAttachWidget or DwtAttachOppWid-
get. Otherwise, this attribute is ignored.
DwtNadbLeftWidget
Specifies the widget that the left side is attached to if DwtNadbLeftAttachment is DwtAttachWidget or DwtAttachOppWidget.
Otherwise, this attribute is ignored.
DwtNadbRightWidget
Specifies the widget that the right side is attached to if DwtNadbRightAttachment is DwtAttachWidget or DwtAttachOppWidget.
Otherwise, this attribute is ignored.
DwtNtopPosition
Specifies the numerator used with DwtNfractionBase to determine the relative positioning of the top side if DwtNadbTopAt-
tachment is DwtAttachPosition. Otherwise, this attribute is ignored.
DwtNadbBottomPosition
Specifies the numerator used with DwtNfractionBase to determine the relative positioning of the bottom side if DwtNadbBot-
tomAttachment is DwtAttachPosition. Otherwise, this attribute is ignored.
DwtNadbLeftPosition
Specifies the numerator used with DwtNfractionBase to determine the relative positioning of the left side if DwtNadbLeftAt-
tachment is DwtAttachPosition. Otherwise, this attribute is ignored.
DwtNadbRightPosition
Specifies the numerator used with the DwtNfractionBase to determine the relative positioning of the right side if DwtNad-
bRightAttachment is DwtAttachPosition. Otherwise, this attribute is ignored.
DwtNadbTopOffset
Specifies the offset of the top side from the position, widget, or attached dialog box.
DwtNadbBottomOffset
Specifies the offset of the bottom side from the position, widget, or attached dialog box.
DwtNadbLeftOffset
Specifies the offset of the left side from the position, widget, or attached dialog box.
DwtNadbRightOffset
Specifies the offset of the right side from the position, widget, or attached dialog box.
DwtNresizable Specifies a boolean value that, when True, indicates that the attached dialog box can change the size of the child widget.
If False, indicates that the attached dialog box cannot change the size of the child widget.
Widget-Specific Attributes
----------------------------------------------------------
Attribute Name Data Type Default
----------------------------------------------------------
DwtNdefaultHorizontalOffset int Zero
DwtNdefaultVerticalOffset int Zero
DwtNrubberPositioning Boolean False
DwtNfractionBase int 100
----------------------------------------------------------
DwtNdefaultHorizontalOffset
Specifies the default horizontal offset for right and left attachments. The offset determines the amount of space between
the left or right side of a child widget and the side or position to which it is attached.
DwtNdefaultVerticalOffset
Specifies the default vertical offset for the top and bottom attachments. The offset determines the amount of space between
the top or bottom side of a child widget and the side or position to which it is attached.
DwtNrubberPositioning
Specifies a boolean value that, when False, indicates that the child widget left and top sides default to being attached to
the left and top of the attached dialog box. If True, the child widget sides default to being attached to the left and top
of the attached dialog box.
DwtNfractionBase
Specifies the denominator used in specifying fractional positioning.
Return Values
These functions return the ID of the created widget.
Callback Information
The following structure is returned to your callback:
typedef struct {
int reason;
XEvent *event;
} DwtAnyCallbackStruct;
The reason member is set to a constant that represents the reason why this callback was invoked. For this callback, the reason member can
be set to:
DwtCRMap The attached dialog box
is about to be mapped.
DwtCRHelpRequested The user selected Help.
The event member is a pointer to the Xlib structure XEvent, which describes the event that generated this callback. This structure is a
union of the individual structures declared for each event type. For information on XEvent and event processing, see the Guide to the Xlib
Library: C Language Binding.
See Also
Guide to the XUI Toolkit: C Language Binding
Guide to the XUI Toolkit Intrinsics: C Language Binding
DwtAttachedDB(3Dwt)