### ICnrControlList

  The ICnrControlList class defines a collection of IContainerControl objects. The User Interface Class Library uses this class in the implementation of the class IContainerControl.

### ICnrControlList - Member Functions and Data by Group

### Constructors & Destructor

Use these functions to create an ICnrControlList object.

~ICnrControlList

      public:
      ~ICnrControlList()

Supported Platforms

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

ICnrControlList

  Overload 1

      public:
      ICnrControlList(const ICnrControlList&)

  Use this constructor to create an object of this class from a pre-existing ICnrControlList object.

Supported Platforms

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

  Overload 2

      public:
      ICnrControlList()

  Use this constructor to create an empty collection.

Supported Platforms

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

### Additions and Removal

Use these functions to add and remove IContainerControl objects from the ICnrControlList collection.

add

      public:
      bool add(IContainerControl * const& control)

  Adds the given IContainerControl object as the last element of the collection.

Supported Platforms

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

removeAll

  removes all elements from the collection.

  Overload 1

      public:
      unsigned long
        removeAll( bool ( * predicateFunction ) ( IContainerControl * const&,
                   void * ) , void* data = 0 )

  removes all elements from this collection for which the given function returns true. Additional arguments can be passed to the given predicate function using :xph.data.:exph.. This member function returns the number of elements removed.

  Note: If any elements were removed, all cursors of this collection become undefined.

Supported Platforms

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

  Overload 2

      public:
      unsigned long removeAll()

Supported Platforms

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

removeAt

      public:
      void removeAt(Cursor& cursor)

  Removes the element at the given cursor.

Supported Platforms

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

replaceAt

      public:
      void
        replaceAt( const Cursor& cursor,
                   IContainerControl * const& control )

  Replaces the element at the given cursor with the given IContainerControl object.

Supported Platforms

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

### Query

Use these functions to search for elements in the ICnrControlList collection.

elementAt

      public:
      IContainerControl* elementAt(const Cursor& cursor) const

  Returns the element pointed to by the given cursor.

Supported Platforms

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

isEmpty

      public:
      bool isEmpty() const

  return true if the collection contains no elements.

Supported Platforms

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

numberOfElements

      public:
      unsigned long numberOfElements() const

  Returns the number of elements in the collection.

Supported Platforms

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

### ICnrControlList - Inherited Member Functions and Data

#### Inherited Public Functions

  - None

#### Inherited Public Data

  - None

#### Inherited Protected Functions

  - None

#### Inherited Protected Data

  - None