### IContainerColumn

  The IContainerColumn class provides the container with the ability to display a details view.

  When using the details view, you must create an IContainerColumn object for each column in the details view. Use IContainerControl::addColumn to add the column objects to the container.

  This class provides functions to add, delete, and hide columns in a container control. It also defines the characteristics of the column header (text or icon) and the position of the data in the column record.

  The data in the object and the data displayed in the column are connected. For a user to have a details view, derive a class from IContainerObject and extend it with the additional fields to display in the columns of the container. You must ensure the column object has the following information:

  - The exact offset of the data in the object
  - The type of the data in the object
  The column object must have the correct information because it handles the drawing of this data. If the column object does not have the correct information, the behavior of the column is undefined.

  The default implementation of a container column has the following:

  - A heading containing centered, read-only text
  - A horizontal separator under the heading
  - A vertical separator between columns
  - String data that is noneditable, left-justified, and centered vertically
  Note: You can add an IContainerColumn object to one container only.

  Note: ANSI C++ posits that the offsetof macro can only apply to data structures declared as struct and so cannot be used with classes as needed in the contruction of IContainerColumn objects. If you need to build your application using ANSI C++, please use the ICONTAINERCOLUMN_OFFSETOF macro defined in icnrcol.hpp.

#### AIX Considerations

  The container widget does not support a split bar in details view.

  The container widget automatically creates the leftmost column for details view. This column contains the icon and text of the corresponding IContainerObject. This column is initially sized to a zero width and is made nonzero if a column that is constructed with DataSource=isIcon or DataSource=isIconViewText is added If you attempt to add more columns to a container that represents the icon or text for an IContainerObject, the columns are ignored. However, if you add a column representing the text for an IContainerObject, the automatically created leftmost column uses the headingText set for that column.

  IContainerControl::ColumnCursor ignores the automatically created leftmost column.

#### Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) have the following restrictions for columns:

  - Vertical column separators are not supported.
  - Horizontal column separators are required.
  - Heading styles and alignment are defined by DataStyle.
  - Headings must be text and are read-only.
  - Split bar is not supported.
  - Only the first column may have an icon.
  - The first column is required. It must be the icon and text that is defined in the IContainerObject and displayed in the nondetails views. This column is initially sized to a zero width and is made nonzero if a column that is constructed with DataSource=isIcon or DataSource=isIconViewText is added. Regardless of where you attempt to add these columns, they will be at the beginning.
  - The required column is the only column that displays selection emphasis. If this column has a zero width, then no selection emphasis will be displayed.
  - The required column's heading is defined by the heading text of the column constructed with DataSource=isIconViewText if it is inserted.

### IContainerColumn - Member Functions and Data by Group

### Constructors & Destructor

You can construct and destruct objects of this class.

~IContainerColumn

      public:
      virtual ~IContainerColumn()

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

IContainerColumn

  Overload 1

      public:
      IContainerColumn( DataSource objectDataType,
                        const HeadingStyle& title = defaultHeadingStyle ( ),
                        const DataStyle& data = defaultDataStyle ( ) )

  Construct an IContainerColumn object by providing a type of data that is part of IContainerObject (as opposed to the user portion of the object) and, optionally, the styles to use for the heading and data.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) require that the first column be the icon text pair that is present in the other views. Because of this, regardless of where you attempt to insert a column constructed with this constructor, it will be placed at the beginning. If you insert more than one of the same type, then the second one will be invalid and not visible.

  Overload 2

      public:
      IContainerColumn(const IContainerColumn& column)

  Construct an IContainerColumn object by copying from an existing container column.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

  Overload 3

      public:
      IContainerColumn( unsigned long dataOffset,
                        const HeadingStyle& title = defaultHeadingStyle ( ),
                        const DataStyle& data = defaultDataStyle ( ) )

  Construct an IContainerColumn object by providing the offset, from the beginning of the IContainerObject data structure, of the object data to be displayed in the column and, optionally, the styles to use for the heading and data.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Data Retrieval

Use these members to retrieve data that is stored in an object referenced by this class.

dataAsDate

      public:
      IDate dataAsDate(const IContainerObject* object) const

  Returns the data referenced by this column in the specified object. The data is returned as an IDate. If the type of the data is not IContainerColumn::date, an IInvalidRequest exception is thrown. You can call IContainerColumn::isDate to determine if this function is valid for a column object.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

dataAsIcon

      public:
      IPointerHandle
        dataAsIcon( const IContainerObject* object ) const

  Returns the data referenced by this column in the specified object. The data is returned as an IPointerHandle. If the type of the data is not IContainerColumn::icon, an IInvalidRequest exception is thrown. You can call IContainerColumn::isIconHandle to determine if this function is valid for a column object.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

dataAsNumber

      public:
      unsigned long
        dataAsNumber( const IContainerObject* object ) const

  Returns the data referenced by this column in the specified object. The data is returned as an unsigned long integer. All data types can be returned as an unsigned long integer.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

dataAsString

      public:
      IString dataAsString(const IContainerObject* object) const

  Returns the data referenced by this column in the specified object. The data is returned as an IString. If the type of the data is not IContainerColumn::string, an IInvalidRequest exception is thrown. You can call IContainerColumn::isString to determine if this function is valid for a column object.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

dataAsTime

      public:
      ITime dataAsTime(const IContainerObject* object) const

  Returns the data referenced by this column in the specified object. The data is returned as an ITime. If the type of the data is not IContainerColumn::time, an IInvalidRequest exception is thrown. You can call IContainerColumn::isTime to determine if this function is valid for a column object.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Data Style

In addition to the IContainerColumn::Style types, the data in a column can also contain these data styles.

defaultDataStyle

      public:
      static Style defaultDataStyle()

  Returns the default data style. The default data style is classDefaultDataStyle unless you change it using setDefaultDataStyle.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

setDefaultDataStyle

      public:
      static void setDefaultDataStyle(const DataStyle& dataStyle)

  Sets the default data style for all subsequent column data.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

classDefaultDataStyle

      public:
      static const DataStyle classDefaultDataStyle

  Specifies the original default style for data in a column, which is string, alignVerticallyCentered, alignLeft, and readOnly.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

date

      public:
      static const DataStyle date

  Displays the data in date format with National Language Support enabled. The date format is a four-byte field divided in the following order:

  1. A single byte for the day
  2. A single byte for the month
  3. Two bytes for the year

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

OS/2 Considerations

  In the OS/2 operating system, this format is the same as the CDATE structure. For additional information, see Presentation Manager Programming Reference, Volume 3.

handleDrawItem

      public:
      static const DataStyle handleDrawItem

  When a details item must be drawn, this style causes an ICnrDrawItemEvent to be dispatched to ICnrDrawHandler::drawDetailsItem.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support owner drawing of container objects.

horizontalSeparator

      public:
      static const DataStyle horizontalSeparator

  Draws a horizontal separator beneath column headings.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) provide horizontal separators regardless of the setting of this style.

invisible

      public:
      static const DataStyle invisible

  Hides the data in the column.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support filtering of columns.

number

      public:
      static const DataStyle number

  Specifies the data is an unsigned long number.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

readOnly

      public:
      static const DataStyle readOnly

  Disables editing of the data in the column.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

time

      public:
      static const DataStyle time

  Displays the data in a time format with National Language Support enabled. The time format is a four-byte field divided in the following order:

  1. A single byte for the hours
  2. A single byte for the minutes
  3. A single byte for the seconds
  4. A final byte, which is reserved

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

OS/2 Considerations

  In the OS/2 operating system, this format is the same as the CTIME structure. For additional information, see Presentation Manager Programming Reference, Volume 3.

verticalSeparator

      public:
      static const DataStyle verticalSeparator

  Draws a vertical separator after the column.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support vertical separators for columns. This style is ignored.

### Heading Style

In addition to the IContainerColumn::Style types, the heading can also contain these styles.

defaultHeadingStyle

      public:
      static Style defaultHeadingStyle()

  Returns the default heading style. The default heading style is classDefaultHeadingStyle unless you have changed it using setDefaultHeadingStyle.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

setDefaultHeadingStyle

      public:
      static void
        setDefaultHeadingStyle( const HeadingStyle& headingStyle )

  Sets the default heading style for all subsequent column headings.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) column heading style is defined by the columns data style.

classDefaultHeadingStyle

      public:
      static const HeadingStyle
        classDefaultHeadingStyle

  Specifies the original default style for a heading, which is string, alignVerticallyCentered, alignLeft, and readOnlyHeading.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

readOnlyHeading

      public:
      static const HeadingStyle readOnlyHeading

  Disables editing the data in the heading.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support editing of column headings. This style is ignored.

### Object Attributes

These members implement the class.

columnInfo

      protected:
      _FIELDINFO* columnInfo() const

  Returns the address of the container's column record.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

container

      protected:
      IContainerControl* container() const

  Returns the container in which this column is located.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

dataAttributes

      protected:
      virtual unsigned long dataAttributes() const

  Returns the current data attributes in the container.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

invalidate

      protected:
      IContainerColumn& invalidate()

  If the column is in a container, the column is repainted.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

setColumnInfo

      protected:
      IContainerColumn& setColumnInfo(_FIELDINFO* fieldinfo)

  Stores the address of the container's column record.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

setContainer

      protected:
      IContainerColumn&
        setContainer( IContainerControl* container )

  Stores the specified container, which is the container this column is located in.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

setDataAttributes

      protected:
      virtual IContainerColumn&
        setDataAttributes( unsigned long dataAttributes )

  Sets the specified attributes into the data.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

setTitleAttributes

      protected:
      virtual IContainerColumn&
        setTitleAttributes( unsigned long titleAttributes )

  Sets the specified attributes into the title.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

titleAttributes

      protected:
      virtual unsigned long titleAttributes() const

  Returns the current title attributes in the container.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Object Information

Use these members to query and set the accessible attributes of this class.

disableDataUpdate

      public:
      virtual IContainerColumn& disableDataUpdate()

  Prevents editing of the column data.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

disableHeadingUpdate

      public:
      virtual IContainerColumn& disableHeadingUpdate()

  Prevents editing of the heading.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support editing of column headings.

displayWidth

      public:
      virtual unsigned long displayWidth()

  Returns the displayable width of the column data, in pixels.

  If you want the column object's width, use IContainerControl::detailObjectRectangle instead of IContainerColumn::displayWidth. This is because a container details view cell is like a rectangle inside of another rectangle as follows:

  - The inner rectangle is the data rectangle of the cell and does not contain the required column margin.

    This rectangle's width is either of the following:

    - The value set via IContainerColumn::setDisplayWidth
    - The value queried via IContainerColumn::displayWidth
  - The outer rectangle is the complete cell, including the margins that the container control requires.

    This is the value returned by IContainerControl::detailsObjectRectangle.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

OS/2 Considerations

  This function no longer permits you to use private container memory. This only affects users of the OS/2 2.0 operating system who have not installed the latest Corrective Service Diskette (CSD). If you have installed the OS/2 2.1 or OS/2 2.0 operating system with the latest CSD, you should not be affected.

enableDataUpdate

      public:
      virtual IContainerColumn&
        enableDataUpdate( bool enable = true )

  Permits an edit field to be opened in the column data. This is valid only if the style is string.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

enableHeadingUpdate

      public:
      virtual IContainerColumn&
        enableHeadingUpdate( bool enable = true )

  Permits an edit field to be opened on the heading. This is valid only if the style is string.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support editing of column headings.

hasHorizontalSeparator

      public:
      bool hasHorizontalSeparator() const

  If the column heading has a separator drawn under it, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) require a horizontal separator for columns.

hasVerticalSeparator

      public:
      bool hasVerticalSeparator() const

  If the column heading has a vertical separator drawn after the column, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support vertical separators for columns.

headingIcon

      public:
      virtual IPointerHandle headingIcon() const

  If the style is icon, the icon in the heading is returned. Otherwise an IPointerHandle with a value of 0 is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support icons for column headings. This function always returns false.

headingText

      public:
      virtual IString headingText() const

  If the style is string, the text in the heading is returned. Otherwise, an empty IString is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

helpId

      public:
      unsigned long helpId() const

  Retrieves the help panel ID. You set the help panel ID by calling the function IContainerColumn::setHelpId. If you have attached an ICnrHandler to the container, the handler displays this help panel when the user requests help while direct-editing the column data of the details view.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

hide

      public:
      virtual IContainerColumn& hide()

  Hides the column.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support filtering of columns.

hideSeparators

      public:
      virtual IContainerColumn&
        hideSeparators( const DataStyle& separatorStyles = horizontalSeparator | verticalSeparator )

  Removes one of the following:

  - The vertical separator after a column
  - The horizontal separator under the column heading
  - Both of the preceding separators
  By default, this function removes both separators.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Ignored

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support vertical separators for columns and require horizontal separators. This function is ignored.

horizontalDataAlignment

      public:
      HorizontalAlignment horizontalDataAlignment() const

  Returns the current horizontal alignment of the column data in a container details view. The returned value is an enumerator provided by HorizontalAlignment.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

horizontalHeadingAlignment

      public:
      HorizontalAlignment horizontalHeadingAlignment() const

  Returns the current horizontal alignment of the column heading data in a container details view. The returned value is an enumerator provided by HorizontalAlignment.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) column heading alignment is defined by the columns data alignment.

isDate

      public:
      bool isDate() const

  If the data in the column is a date, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

isHeadingIconHandle

      public:
      bool isHeadingIconHandle() const

  If the data in the column heading is an icon, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support icons for column headings.

isHeadingString

      public:
      bool isHeadingString() const

  If the data in the column heading is a character string, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

AIX Considerations

  The Motif container widget only supports strings for column headings. This function always returns true.

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) only support strings for column headings. This function always returns true.

isHeadingWriteable

      public:
      bool isHeadingWriteable() const

  If the data in the column heading can be edited, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support editing of column headings. This function always returns false.

isIconHandle

      public:
      bool isIconHandle() const

  If the data in the column is an icon, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

isNumber

      public:
      bool isNumber() const

  If the data in the column is a number, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

isString

      public:
      bool isString() const

  If the data in the column is a pointer to a character string or an IString, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

isTime

      public:
      bool isTime() const

  If the data in the column is a time, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

isVisible

      public:
      bool isVisible() const

  If the column is visible in the container, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support filtering of columns. All invalid columns inserted will be made not visible by default. This function will return false for these invalid columns.

isWriteable

      public:
      bool isWriteable() const

  If the user can edit the data in the column, true is returned.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

justifyData

      public:
      virtual IContainerColumn&
        justifyData( VerticalAlignment = centeredVertically,
                     HorizontalAlignment = centered )

  Sets the justification of the data to a horizontal and vertical alignment. Use the enumeration HorizontalAlignment to set the horizontal alignment to left, right, or centered. VerticalAlignment sets the vertical alignment to top, bottom, or centeredVertically.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

justifyHeading

      public:
      virtual IContainerColumn&
        justifyHeading( VerticalAlignment = centeredVertically,
                        HorizontalAlignment = centered )

  Sets the justification of the heading to a horizontal and vertical alignment. Use the enumeration HorizontalAlignment to set the horizontal alignment to left, right, or centered. VerticalAlignment sets the vertical alignment to top, bottom, or centeredVertically.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) column heading alignment is defined by the column's data alignment.

setDataOffset

      public:
      virtual IContainerColumn&
        setDataOffset( unsigned long dataOffset )

  Identifies where the data is located in a container object for this column.

  The data in the object and the data displayed in the column are connected. For a user to have a details view, you must derive a class from IContainerObject and extend it with the additional "fields" to display in the columns of the container. You must ensure the column object has the following information:

  - The exact offset of the data in the object
  - The type of the data in the object
  The column object must have the correct information because it handles the drawing of this data. If the column object does not have the correct information, the behavior of the column is undefined.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

setDisplayWidth

      public:
      virtual IContainerColumn&
        setDisplayWidth( unsigned long widthInPixels )

  Sets the displayable width of the column data, in pixels, after showing the details view.

  See IContainerColumn::displayWidth for more information.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

setHeadingIcon

  Sets the icon to use for the heading and changes the style to icon.

  Overload 1

      public:
      virtual IContainerColumn&
        setHeadingIcon( const IResourceId& iconId )

Supported Platforms

  Windows | OS/2 | AIX
  Ignored | Yes | Ignored

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support icons for column headings.

  Overload 2

      public:
      virtual IContainerColumn&
        setHeadingIcon( unsigned long iconId )

Supported Platforms

  Windows | OS/2 | AIX
  Ignored | Yes | Ignored

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support icons for column headings.

  Overload 3

      public:
      virtual IContainerColumn&
        setHeadingIcon( const IPointerHandle& iconHandle )

Supported Platforms

  Windows | OS/2 | AIX
  Ignored | Yes | Ignored

AIX Considerations

  The Motif container widget does not support icons for column headings.

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support icons for column headings.

setHeadingText

  Sets the text to use for the heading and changes the style to string.

  Overload 1

      public:
      virtual IContainerColumn&
        setHeadingText( const IResourceId& textId )

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

  Overload 2

      public:
      virtual IContainerColumn& setHeadingText(const char* text)

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

setHelpId

      public:
      virtual IContainerColumn& setHelpId(unsigned long helpId)

  Stores a help panel ID. You set the help panel ID by calling the function IContainerColumn::setHelpId. If you have attached an ICnrHandler to the container, the handler displays this help panel when the user requests help while direct-editing the column data of the details view.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

show

      public:
      virtual IContainerColumn& show(bool visible = true)

  Makes the column visible.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support filtering of columns.

showSeparators

      public:
      virtual IContainerColumn&
        showSeparators( const DataStyle& separatorStyles = horizontalSeparator | verticalSeparator )

  Adds any of the following:

  - The vertical separator after a column
  - The horizontal separator under the column heading
  - Both of the preceding separators
  By default, this function adds both separators.
  Note: This function removes any separators previously set. If the column currently has a horizontal separator and showSeparators(verticalSeparator) is used to add a vertical separator, the horizontal separator is removed.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Ignored

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) do not support vertical separators for columns and require horizontal separators.

verticalDataAlignment

      public:
      VerticalAlignment verticalDataAlignment() const

  Returns the current alignment of column data in a container details view. The returned value is an enumerator provided by VerticalAlignment.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Ignored

verticalHeadingAlignment

      public:
      VerticalAlignment verticalHeadingAlignment() const

  Returns the current alignment of column heading data in a container details view. The returned value is an enumerator provided by VerticalAlignment.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Ignored

Windows Considerations

  The native Windows containers (that is, containers constructed without the pmCompatible style) column heading alignment is defined by the columns data alignment.

### Styles

These style members are both heading styles and data styles. You can specify alignTop, alignBottom, and alignVerticallyCentered, and only one of alignLeft, alignRight, and alignCentered.

alignBottom

      public:
      static const Style alignBottom

  Aligns the data to the bottom of the cell.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

alignCentered

      public:
      static const Style alignCentered

  Centers the data horizontally in the cell.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

alignLeft

      public:
      static const Style alignLeft

  Aligns the data to the left of the cell.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

alignRight

      public:
      static const Style alignRight

  Aligns the data to the right of the cell.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

alignTop

      public:
      static const Style alignTop

  Aligns the data to the top of the cell.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

alignVerticallyCentered

      public:
      static const Style alignVerticallyCentered

  Centers the data vertically in the cell.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

icon

      public:
      static const Style icon

  Specifies that the data is an icon.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

string

      public:
      static const Style string

  Specifies that the data is a string.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### IContainerColumn - Enumerations

DataSource

      enum DataSource { isIcon,
                        isIconViewText }

  These enumerators specify whether the column data is the icon or the icon text stored in the object:

  isIcon
    Uses the icon from the icon view.
  isIconViewText
    Uses the text from the icon view.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

HorizontalAlignment

      enum HorizontalAlignment { left,
                                 right,
                                 centered }

  These enumerators specify the horizontal alignment of text in the column:

  left
    Left-justifies the text in the column.
  right
    Right-justifies the text in the column.
  centered
    Centers the text horizontally in the column.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

VerticalAlignment

      enum VerticalAlignment { top,
                               bottom,
                               centeredVertically }

  These enumerators specify the vertical alignment of text in the column:

  top
    Aligns the text at the top of the column.
  bottom
    Aligns the text at the bottom of the column.
  centeredVertically
    Centers the text vertically in the column.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### IContainerColumn - Type Definitions

HeadingStyle

      typedef unsigned long HeadingStyle

  A flag used to represent construction values for the column heading.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

Style

      typedef unsigned long Style

  A flag used to represent construction values for both the column heading and the column data.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

DataStyle

      typedef unsigned long DataStyle

  A flag used to represent construction values for the data in a column.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### IContainerColumn - Inherited Member Functions and Data

#### Inherited Public Functions

  - None

#### Inherited Public Data

  - None

#### Inherited Protected Functions

  - None

#### Inherited Protected Data

  - None