XmIconBox(3X)
β¨ NAME β¨
XmIconBox β The IconBox widget class. bestie, this is the XmIconBox(3X) manual, and we're doing it in parts, so buckle up π
πΈ SYNOPSIS πΈ
#include <Xm/IconBox.h>
π¦ DESCRIPTION π¦
The Icon Box widget lays out its children on a grid, with each child forced to be the same size, and with the location of each child specified as an X and Y location on the grid.
The size of the Icon Box, its children, and the number of cells displayed are calculated as described below. The general idea is that all children are always shown and should be given their desired size whenever possible. The user may add or delete cells by resizing this window using the window manager widget.
The preferred size is calculated by using the maximum desired child height or width and making sure that these are no smaller than the minimum sizes. This size is multiplied by the number of cells along the axis and properly padded to come up with a preferred size. The number of cells is the maximum of the largest cellX or cellY value and the minimum number of horizontal or vertical cells.
If the Icon box is forced larger than its preferred size, more cells are added at the bottom-right of the widget while the children all remain at their preferred sizes.
If the Icon box is forced smaller than its preferred size, each cell is forced to be smaller in order to allow all children to fit within the Icon Box. All children will be forced to the same smaller size.
π Classes π
Icon Box inherits behavior, resources, and traits from Core, Composite, Constraint, and XmManager.
The class pointer is xmIconBoxWidgetClass.
The class name is XmIconBox.
π New Resources π
The following table defines a set of widget resources used by the programmer to specify data. The programmer can also set the resource values 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 XmN or XmC prefix and use the remaining letters. To specify one of the defined values for a resource in a .Xdefaults file, remove the Xm 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).
π XmIconBox Resource Set π
XmNhorizontalMarginβ classXmCMargin, typeDimension, default4, accessCSGXmNminimumHorizontalCellsβ classXmCDefaultCells, typeint, default8, accessCSGXmNminimumVerticalCellsβ classXmCDefaultCells, typeint, default4, accessCSGXmNminimumCellHeightβ classXmCMinimumCellSize, typeDimension, default10, accessCSGXmNminimumCellWidthβ classXmCMinimumCellSize, typeDimension, default20, accessCSGXmNverticalMarginβ classXmCMargin, typeDimension, default4, accessCSGXmNhorizontalMargin,XmNverticalMarginβ The amount of space between each cell and its neighbor or the edge of the Icon Box. spacing is self-care, fr fr β¨XmNminimumHorizontalCells,XmNminimumVerticalCellsβ The minimum number of cells to display in the horizontal and vertical directions. This number of cells will always be displayed. they're not going anywhere, bestieXmNminimumCellWidth,XmNminimumCellHeightβ The smallest size the cells are allowed to be in the direction specified. tiny but mighty, but not too tiny
π Constraint Resources π
β¨ XmIconBox Constraint Resource Set β¨
XmNcellXβ classXmCCellX, typeShort, defaultXmIconBoxAnyCell, accessCSGXmNcellYβ classXmCCellY, typeShort, defaultXmIconBoxAnyCell, accessCSGXmNcellX,XmNcellYβ The location of this cell in cell space. These coordinates may be any positive integer. They determine where this widget will be placed relative to its neighbors. Having two children at the same cell X and cell Y location will result in undefined behavior. To place a cell at any empty cell, set cell X and cell Y to the valueXmIconBoxAnyCell. do not put two kiddos in the same spot, that's chaos π
π Inherited Resources π
Icon Box inherits behavior and resources from the superclasses described in the following tables. For a complete description of each resource, refer to the reference page for that superclass.
β¨ XmManager Resource Set β¨
okay bestie, these are the XmManager resources that come with XmIconBox. every single one, no cap. π
XmNbottomShadowColorβ classXmCBottomShadowColor, typePixel, defaultdynamic, accessCSGXmNbottomShadowPixmapβ classXmCBottomShadowPixmap, typePixmap, defaultXmUNSPECIFIED_PIXMAP, accessCSGXmNforegroundβ classXmCForeground, typePixel, defaultdynamic, accessCSGXmNhelpCallbackβ classXmCCallback, typeXtCallbackList, defaultNULL, accessCXmNhighlightColorβ classXmCHighlightColor, typePixel, defaultdynamic, accessCSGXmNhighlightPixmapβ classXmCHighlightPixmap, typePixmap, defaultdynamic, accessCSGXmNinitialFocusβ classXmCInitialFocus, typeWidget, defaultdynamic, accessCSGXmNlayoutDirectionβ classXmCLayoutDirection, typeXmDirection, defaultdynamic, accessCGXmNnavigationTypeβ classXmCNavigationType, typeXmNavigationType, defaultXmTAB_GROUP, accessCSGXmNpopupHandlerCallbackβ classXmCCallback, typeXtCallbackList, defaultNULL, accessCXmNshadowThicknessβ classXmCShadowThickness, typeDimension, defaultdynamic, accessCSGXmNstringDirectionβ classXmCStringDirection, typeXmStringDirection, defaultdynamic, accessCGXmNtopShadowColorβ classXmCTopShadowColor, typePixel, defaultdynamic, accessCSGXmNtopShadowPixmapβ classXmCTopShadowPixmap, typePixmap, defaultdynamic, accessCSGXmNtraversalOnβ classXmCTraversalOn, typeBoolean, defaultTrue, accessCSGXmNunitTypeβ classXmCUnitType, typeunsigned char, defaultdynamic, accessCSGXmNuserDataβ classXmCUserData, typeXtPointer, defaultNULL, accessCSG
and that's the whole XmManager set, periodt. π
π Composite Resource Set π
next up, the Composite resources. these are lowkey iconic too. π¦
XmNchildrenβ classXmCReadOnly, typeWidgetList, defaultNULL, accessGXmNinsertPositionβ classXmCInsertPosition, typeXtOrderProc, defaultNULL, accessCSGXmNnumChildrenβ classXmCReadOnly, typeCardinal, default0, accessG
β¨ Core Resource Set β¨
okay so the original lays this out as a big table and we can't do tables in here, so bestie it's a list now β every single resource, class, type, default and access value is still right here, no cap π
XmNacceleratorsβ classXmCAccelerators, typeXtAccelerators, defaultdynamic, accessN/AXmNancestorSensitiveβ classXmCSensitive, typeBoolean, defaultdynamic, accessGXmNbackgroundβ classXmCBackground, typePixel, defaultdynamic, accessCSGXmNbackgroundPixmapβ classXmCPixmap, typePixmap, defaultXmUNSPECIFIED_PIXMAP, accessCSGXmNborderColorβ classXmCBorderColor, typePixel, defaultXtDefaultForeground, accessCSGXmNborderPixmapβ classXmCPixmap, typePixmap, defaultXmUNSPECIFIED_PIXMAP, accessCSGXmNborderWidthβ classXmCBorderWidth, typeDimension, default0, accessCSGXmNcolormapβ classXmCColormap, typeColormap, defaultdynamic, accessCGXmNdepthβ classXmCDepth, typeint, defaultdynamic, accessCGXmNdestroyCallbackβ classXmCCallback, typeXtCallbackList, defaultNULL, accessCXmNheightβ classXmCHeight, typeDimension, defaultdynamic, accessCSGXmNinitialResourcesPersistentβ classXmCInitialResourcesPersistent, typeBoolean, defaultTrue, accessCXmNmappedWhenManagedβ classXmCMappedWhenManaged, typeBoolean, defaultTrue, accessCSGXmNscreenβ classXmCScreen, typeScreen *, defaultdynamic, accessCGXmNsensitiveβ classXmCSensitive, typeBoolean, defaultTrue, accessCSGXmNtranslationsβ classXmCTranslations, typeXtTranslations, defaultdynamic, accessCSGXmNwidthβ classXmCWidth, typeDimension, defaultdynamic, accessCSGXmNxβ classXmCPosition, typePosition, default0, accessCSGXmNyβ classXmCPosition, typePosition, default0, accessCSG
that's the whole set, all nineteen of them, untouched π
π¦ Translations π¦
XmIconBox inherits translations from XmManager. that's it, that's the whole vibe β she's not doing her own translations, she's borrowing mom's π«Ά
π RELATED π
the little "go read these next" stack, and honestly the girls are all serving:
Composite(3)Constraint(3)Core(3)XmCreateIconBox(3)XmIconBoxIsCellEmpty(3)XmManager(3)XmVaCreateIconBox(3)XmVaCreateManagedIconBox(3)
π COPYRIGHT π
Copyright (c) 1992 by Integrated Computer Solutions, Inc.
periodt. intellectual property stays intellectual property, we don't touch it, we just respect it πΈ
and that's a wrap on the whole page, bestie!! the lil footer at the very bottom just says XmIconBox(3X) β that's the source/version tag for this manual page, no date on it, that's all she wrote πβ¨
π¦ where this page comes from
- alpine 3.24: motif-doc 2.5.2-r0 Β· LGPL-2.1-or-later
- arch rolling: openmotif 2.3.8-4 Β· LGPL-2.1-or-later
- centos-stream 9: motif-devel 2.3.4-32.el9 Β· LGPLv2+
- centos-stream 9: motif-devel 2.3.4-32.el9 Β· LGPLv2+
- epel 10: motif-devel 2.3.8-2.el10_2 Β· LicenseRef-Callaway-LGPLv2+
- fedora 43: motif-devel 2.3.8-1.fc43 Β· LicenseRef-Callaway-LGPLv2+
- fedora 43: motif-devel 2.3.8-1.fc43 Β· LicenseRef-Callaway-LGPLv2+
- fedora 43: motif-devel 2.3.8-2.fc43 Β· LicenseRef-Callaway-LGPLv2+
- fedora 43: motif-devel 2.3.8-2.fc43 Β· LicenseRef-Callaway-LGPLv2+
- fedora 44: motif-devel 2.3.8-3.fc44 Β· LicenseRef-Callaway-LGPLv2+
- fedora 44: motif-devel 2.3.8-3.fc44 Β· LicenseRef-Callaway-LGPLv2+
- nixos 26.05: motif 2.3.8
- nixpkgs unstable: motif 2.3.8
- opensuse-leap 16.0: motif-devel 2.3.8-bp160.1.1 Β· LGPL-2.1-or-later
- opensuse-leap 16.0: motif-devel 2.3.8-bp160.1.1 Β· LGPL-2.1-or-later
- opensuse-leap 16.0: motif-devel 2.3.8-bp160.1.1 Β· LGPL-2.1-or-later
- opensuse-leap 16.0: motif-devel 2.3.8-bp160.1.1 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms