Silicon Graphics Incorporated (SGI) Sgm widgets are included on the Palette when you run Builder Xcessory on an SGI platform. The following sections provide descriptions of each SGI widget in alphabetical order (refer to your SGI documentation for more detailed information):
The SgDial widget allows the user to specify or change a value in a given range. Users change the current value by direct manipulation of the dial (dragging or clicking on the appropriate tick mark that represents the desired value). The appearance and the behavior of the dial can be modified. For example, the angular range in degrees through which the dial is allowed to rotate and the color of the dial and tick marks can be changed.
The SgFinder widget allows users to find an application or file using drag and drop or by entering the application or file name. Combines a Drop Pocket with a text field and a Dyna Menu to hold recent entries.
The SgGraph widget allows you to display any group of widgets as a graph, with each widget representing a node. The graph can be disconnected, as well as contain cycles. Arcs used to connect the nodes are instances of an SgArc widget, developed specifically for use with the SgGraph widget. Can arrange all nodes either horizontally or vertically according to an internal layout algorithm, and supports an edit mode in which arcs and nodes may be interactively repositioned as well as created.
SgGrid is a container widget that has no input semantics of its own. Arranges its children in a two dimensional grid of arbitrary size. Each row and column of this grid may be separately designated as having a fixed size or as having some degree of stretchability. Each child may be resizable in either or both directions, or forced to a fixed size. If a child is a fixed size, and smaller than the cell that contains it, the child's position within the cell is determined by an XmNgravity resource.
· The resizability of each row and column must be set using convenience functions SgGridSetRowResize and SgGridSetColumnResize. The default is for all rows and columns to be resizable. All widgets are resized according to their relative natural size.
SgHorizontalPanedWindow is a composite widget that lays out children in a horizontally tiled format and allows the user to horizontally resize various portions of the application interface. The first child is inserted at the left side of the Horizontal Paned Window and each successive child is inserted to the right.
The Horizontal Paned Window grows to match the height of its tallest child and all other children are forced to this height. The width of the Horizontal Paned Window is equal to the sum of the widths of all its children, the spacing between them, and the size of the left and right margins.
Note: Although these widgets are not actual SGI Sgm widgets, they are included with the SGI Sgm widgets for your convenience.
The SgIconGadget widget displays a labeled pixmap. Does not accept any button or key input, and the help callback is the only callback defined. Receives enter and leave events. Can be displayed in colors other than that provided by its parent, a restriction that limits the usefulness of gadgets in many situation.
SgLEDButton is an SGI enhanced XmToggleButton that allows the user to set an on/off choice. The LED Button adds two new indicator types to those of the standard Motif Toggle Button: Xm3D_N_OF_MANY and Xm3D_ONE_OF_MANY. These types cause the indicator to be drawn like an LED with on/off state indicated by a "lit/unlit" color selection.
Exercise caution when using this manager. Adjustments are not made by the Rubber Board for any changes initiated by its children. Therefore, changes to a child's size due to localization, and so forth, are not taken into account when the Rubber Board recalculates child size and location when the Rubber Board itself is resized.
SgSpringBox is a container widget with no input semantics of its own. Arranges its children in a single row or column based on a set of spring constraints assigned to each child. Allows layouts similar to those supported by the XmForm widget, but usually easier to set up. Possible to create some layouts that cannot be achieved with the XmForm widget (for example, centering a column of widgets is very easy to do with the SgSpringBox widget, but nearly impossible using the XmForm).
· The resources XmNverticalSpring and XmNhorizontalSpring control the degree of "springiness" in each child. A value of zero means the child cannot be resized in that direction. For non-zero values, the values are compared to the values of other springs in the overall system to determine the proportional effects of any resizing. The default value of both resources is zero.
The SgThumbWheel widget allows users to specify or modify a value from within a range of values or from an infinite range. Users change the current value by clicking and dragging (spinning) the wheel. Can also include a home button that returns the thumbwheel to a default value. Thumbwheels can be oriented horizontally or vertically.