XMCOLUMN(3)

πŸ“¦
version 2.5.2 Β· 2 versions
, in alpine 3.24, arch rolling, centos-stream 9, epel 10, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable, opensuse-leap 16.0

🌸 NAME 🌸

XmColumn β€” the XmColumn widget class, bestie. That's the whole name section. Short, sweet, iconic.

(also, for the record, this is the page for XmColumn(library call) πŸ’–)

✨ SYNOPSIS ✨

#include <Xm/Column.h>

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so real talk: XmColumn takes all of its children and stacks them in a column, and every single child can have an optional label tagging along with it. πŸ’… The labels go in one column, the children go in another β€” two columns, side by side, like you and your bestie walking into a party. It's giving labeled data-entry fields, honestly. That's literally the vibe it was built for.

And if vertical isn't your moment? It can also display all the label-child pairs in a horizontal orientation instead. Versatile. Slay. πŸ”₯

This widget comes with a whole bunch of constraint resources so you can dictate the characteristics of the label β€” displaying text or a pixmap, alignment of the text, which font to use, all of that good stuff. It also offers several resources for setting defaults for children that specify no specific values of their own. So when a child is like "idk, you choose", XmColumn chooses. Main character energy. πŸ‘‘

πŸ‘‘ Classes πŸ‘‘

XmColumn inherits behavior and resources from Core, Composite, Constraint, XmManager, and XmBulletinBoard. Family tree, periodt.

  • The class pointer is xmColumnWidgetClass.
  • The class name is XmColumn.

πŸŽ€ New Resources πŸŽ€

The list below is the set of widget resources the programmer uses to specify data. You 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, drop the XmN or XmC prefix and use the remaining letters (lowercase or uppercase, doesn't matter, but keep any underscores between words).

The codes in the access column flag whether the given resource can be set at creation time (C), or is not applicable (N/A).

πŸ’… XmColumn Resource Set πŸ’…

  • XmNdefaultEntryLabelAlignment β€” Class: XmCAlignment Β· Type: unsigned char Β· Default: XmALIGNMENT_BEGINNING Β· Access: CSG
    • Specifies the default XmNentryLabelAlignment to use when a child specifies no significant value. Resources that specify Alignment have values of XmALIGNMENT_BEGINNING, XmALIGNMENT_CENTER, XmALIGNMENT_END, and XmALIGNMENT_UNSPECIFIED. Valid string values that can be used in a resources file are: alignment_unspecified, unspecified, alignment_beginning, beginning, alignment_center, center, alignment_end, end.
  • XmNdefaultEntryLabelFontList β€” Class: XmCFontList Β· Type: XmRFontList Β· Default: dynamic Β· Access: CGS
    • Specifies the default XmNentryLabelFontList to use when a child specifies no significant value. If unspecified, uses XmNlabelFontList resource of the XmBulletinBoard.
  • XmNdefaultEntryLabelRenderTable β€” Class: XmCRendertable Β· Type: XmRFontList Β· Default: dynamic Β· Access: CGS
    • ngl, the original page only lists this one in the table and never spells out a description for it. No invented tea here β€” that's all the info it gives. πŸ™ˆ
  • XmNdefaultFillStyle β€” Class: XmCFillStyle Β· Type: unsigned char Β· Default: XmFILL_RAGGED Β· Access: CGS
    • Specifies the default XmNfillStyle to use when a child specifies no significant value.
  • XmNdistribution β€” Class: XmCDistribution Β· Type: unsigned char Β· Default: XmDISTRIBUTE_TIGHT Β· Access: CGS
    • Specifies whether the spacing between each pair of rows should be increased equally (XmDISTRIBUTE_SPREAD) or remain constant (XmDISTRIBUTE_TIGHT) when the column is resized vertically to be larger than its natural size. This resource has no effect if any child has its XmNstretchable resource set to True. This resource is valid only when the orientation is vertical.
  • XmNitemSpacing β€” Class: XmCItemSpacing Β· Type: Dimension Β· Default: 2 Β· Access: CSG
    • Specifies the spacing between each pair of rows (in vertical orientation) or between pairs of labels and children (in horizontal orientation).
  • XmNlabelSpacing β€” Class: XmCLabelSpacing Β· Type: Dimentsion Β· Default: 10 Β· Access: CSG
    • Specifies the spacing between the column containing the labels and the column containing the XmColumn's children.
    • > πŸ’€ not me pointing out that the type is spelled Dimentsion in the original β€” copying it character for character because that's the rule, but girl, that typo is right there.
  • XmNorientation β€” Class: XmCOrientation Β· Type: unsigned char Β· Default: XmVERTICAL Β· Access: CSG
    • Specifies the layout direction of the XmColumn. When XmVERTICAL, the widgets and their associated labels are laid out in two vertical columns. When XmHORIZONTAL, the widgets and their associated labels are laid out in a single row.

The visual appearance of columns is affected by setting constraint resources on the children of the XmColumn. These resources are derived from those supported by XmLabel; see the manual page for XmLabel for valid values and usage. 🫢

πŸŽ€ XmColumn Constraint Resource Set πŸŽ€

okay bestie, this is the whole constraint resource table, and no I did not skip a single row, every one is right here πŸ’–

  • XmNentryLabelAlignment β€” class XmCAlignment, type unsigned char, default XmALIGNMENT_UNSPECIFIED, access CSG
  • XmNentryLabelFontList β€” class XmCFontList, type XmFontList, default dynamic, access CSG
  • XmNentryLabelRenderTable β€” class XmCRenderTable, type XmRenderTable, default dynamic, access CSG
  • XmNentryLabelPixmap β€” class XmCLabelPixmap, type Pixmap, default XmUNPECIFIED_PIXMAP, access CSG
  • XmNentryLabelString β€” class XmCLabelString, type XmString, default NULL, access CSG
  • XmNentryLabelType β€” class XmCLabelType, type unsigned char, default XmSTRING, access CSG
  • XmNfillStyle β€” class XmCFillStyle, type unsigned char, default XmFILL_UNSPECIFIED, access CSG
  • XmNshowEntryLabel β€” class XmCShowLabel, type Boolean, default True, access CSG
  • XmNstretchable β€” class XmCStretchable, type Boolean, default False, access CG

the "Access" column is literally just saying which of the three access modes (get / set / get-set) each one supports, iykyk ✨


🌸 the resources, explained 🌸

XmNentryLabelAlignment

Specifies justification of text within the child's associated label. Valid values are the same as those for XmNdefaultEntryLabelAlignment. 🫢

XmNentryLabelFontList

Specifies fontList used to render the text within the child's associated label. (and yes, the source really does spell it mNentryLabelFontList in this spot, we're keeping it 100% verbatim, no editing bestie πŸ’…)

XmNentryLabelPixmap

Specifies the pixmap used in the child's associated label. πŸ–ΌοΈ

XmNentryLabelString

Specifies the text used in the child's associated label. ✍️

XmNentryLabelType

Specifies whether to display a string (XmSTRING) or a pixmap (XmPIXMAP) in the child's associated label. it's giving "pick your fighter" πŸŽ€

XmNfillStyle

Specifies whether the child should be displayed at its natural size (XmFILL_RAGGED) or stretched to fill the entire width of the column it is displayed within (XmFILL_FLUSH). XmFILL_UNSPECIFIED uses the value of the XmColumn's XmNdefaultFillStyle. ✨

XmNshowEntryLabel

Specifies whether or not to display the child's associated label. πŸ‘€

XmNstretchable

Specifies whether the child should expand in size proportionately when the XmColumn is resized vertically to be larger than its natural size. πŸ“


the whole friend group, no cap:


⭐ VERSION ⭐

This manual page documents the XmColumn widget shipped in Motif version 2.2. periodt πŸ’œ


and that's the whole page bestie 🫢 this one lives in the library call section as XmColumn, documenting the Motif 2.2 widget β€” go forth and column responsibly πŸŒˆπŸ’–