SEARCH
NEW RPMS
DIRECTORIES
ABOUT
FAQ
VARIOUS
BLOG

BotDetect - Real-Time Bot Detection API
 
 

MAN page from RedHat Other XITE-3.3-3.i386.rpm

Section: Free Widget Foundation (3)
Updated:
Index 

NAME

XfwfRows 

DESCRIPTION

The RowCol widget forces all its children into tightly packedrows. The children keep their preferred size, but the preferredposition is ignored.

 

Public variables

XfwfRows
NameClassTypeDefault
XtNalignTopXtCAlignTopBoolean True

XtNalignTop
The children are packed together on as many rows as are needed, butwithin the row they can either be aligned on the top or on the bottom.

        

Boolean alignTop = True

XtNframeType
The inherited resource frameType is given a default value ofXfwfSunken, instead of the inherited default XfwfRaised. The framewidth is set to a default of 2 pixels, instead of 0.

        


 frameType = XfwfSunken 

XtNframeWidth


 frameWidth = 2 

XfwfBoard
NameClassTypeDefault
XtNabs_xXtCAbs_xPosition 0
XtNrel_xXtCRel_xFloat "0.0"
XtNabs_yXtCAbs_yPosition 0
XtNrel_yXtCRel_yFloat "0.0"
XtNabs_widthXtCAbs_widthPosition 0
XtNrel_widthXtCRel_widthFloat "1.0"
XtNabs_heightXtCAbs_heightPosition 0
XtNrel_heightXtCRel_heightFloat "1.0"
XtNhunitXtCHunitFloat "1.0"
XtNvunitXtCVunitFloat "1.0"
XtNlocationXtCLocationString NULL

XfwfFrame
NameClassTypeDefault
XtNcursorXtCCursorCursor None
XtNframeTypeXtCFrameTypeFrameType XfwfRaised
XtNframeWidthXtCFrameWidthDimension 0
XtNouterOffsetXtCOuterOffsetDimension 0
XtNinnerOffsetXtCInnerOffsetDimension 0
XtNshadowSchemeXtCShadowSchemeShadowScheme XfwfAuto
XtNtopShadowColorXtCTopShadowColorPixel compute_topcolor
XtNbottomShadowColorXtCBottomShadowColorPixel compute_bottomcolor
XtNtopShadowStippleXtCTopShadowStippleBitmap NULL
XtNbottomShadowStippleXtCBottomShadowStippleBitmap NULL

XfwfCommon
NameClassTypeDefault
XtNtraversalOnXtCTraversalOnBoolean True
XtNhighlightThicknessXtCHighlightThicknessDimension 2
XtNhighlightColorXtCHighlightColorPixel XtDefaultForeground
XtNhighlightPixmapXtCHighlightPixmapPixmap None
XtNnextTopXtCNextTopCallbackNULL
XtNuserDataXtCUserDataPointerNULL

Composite
NameClassTypeDefault
XtNchildrenXtCChildrenWidgetList NULL
insertPositionXtCInsertPositionXTOrderProc NULL
numChildrenXtCNumChildrenCardinal 0

Core
NameClassTypeDefault
XtNxXtCXPosition 0
XtNyXtCYPosition 0
XtNwidthXtCWidthDimension 0
XtNheightXtCHeightDimension 0
borderWidthXtCBorderWidthDimension 0
XtNcolormapXtCColormapColormap NULL
XtNdepthXtCDepthInt 0
destroyCallbackXtCDestroyCallbackXTCallbackList NULL
XtNsensitiveXtCSensitiveBoolean True
XtNtmXtCTmXTTMRec NULL
ancestorSensitiveXtCAncestorSensitiveBoolean False
acceleratorsXtCAcceleratorsXTTranslations NULL
borderColorXtCBorderColorPixel 0
borderPixmapXtCBorderPixmapPixmap NULL
backgroundXtCBackgroundPixel 0
backgroundPixmapXtCBackgroundPixmapPixmap NULL
mappedWhenManagedXtCMappedWhenManagedBoolean True
XtNscreenXtCScreenScreen *NULL

 

Methods

If a child becomes managed or unmanaged, the RowCol widgetrecomputes the positions of all managed children. That is done by amethod layout.

change_managed($){    $layout($);}

The layout function is responsible for moving the children to theirpositions in the grid. It is called from change_managed,geometry_manager and resize.

layout($){    Position top, left, x, y;    Dimension width, height, w, maxht;    int i, j;    Widget child;    $compute_inside($, left, top, width, height);    y = top;    i = 0;    while (i < $num_children) {        child = $children[i];        w = $child$width;                       /* Accumulated width */        maxht = $child$height;                  /* Max. height in this row */        j = i + 1;        do {            if (j >= $num_children) break;            child = $children[j];            if (w + $child$width > width) break;            w += $child$width;            if ($child$height > maxht) maxht = $child$height;            j++;        } while (1);        for (x = left; i < j; i++) {            child = $children[i];            if ($alignTop)                XtMoveWidget(child, x, y);            else                XtMoveWidget(child, x, y + maxht - $child$height);            x += $child$width;        }        y += maxht;    }}

When a child wants to change its size or border width, it calls itsparent's geometry_manager method (through a call toXtMakeGeometryRequest or XtMakeResizeRequest.) The RowCol widgetalways grants size changes to its children. The size change is carriedout immediately and a new layout is computed. If a child requests achange of position, the request is denied. A request for a change instacking order is ignored.

XtGeometryResult  geometry_manager(Widget  child, XtWidgetGeometry * request, XtWidgetGeometry * reply){    Dimension newwd, newht, newbd;    if (request->request_mode  (CWX | CWY)) return XtGeometryNo;    if (request->request_mode  XtCWQueryOnly) return XtGeometryYes;    newwd = request->request_mode  CWWidth ? request->width : $child$width;    newht = request->request_mode  CWHeight ? request->height : $child$height;    newbd = request->request_mode  CWBorderWidth        ? request->border_width : $child$border_width;    if (newwd == $child$width  newht == $child$height         newbd == $child$border_width) return XtGeometryNo;    XtResizeWidget(child, newwd, newht, newbd);    $layout($);    return XtGeometryDone;}

The resize method is called when the widget is resized. If therows and columns resources are both zero, the children will haveto be be re-aligned. In this case, there is no sense in asking theparent for a new size, so layout is passed a value of False.

resize($){    $layout($);}

The RowCol widget needs to recompute the positions of the childrenwhen one of the resources changes. When the layout changes, the widgetalso needs to be redrawn, of course. The private variables are notdependent on the resources, so they don't need recomputing.

Boolean  set_values(Widget  old, Widget  request, $, ArgList  args, Cardinal * num_args){    Boolean need_layout = False;    Boolean need_redisplay = False;    if ($old$alignTop != $alignTop) {        need_layout = True;    }    if (need_layout) {        $layout($);        need_redisplay = True;    }    return need_redisplay;}


 

Index

NAME
DESCRIPTION
Public variables
Methods

This document was created byman2html,using the manual pages.
 
ICM Bot detect detector