wxWidgets: wxItemContainerImmutable Class Reference

| Version: 3.2.6

Public Member Functions | List of all members
wxItemContainerImmutable Class Referenceabstract
Class List by Category » Controls

`#include <wx/ctrlsub.h>`

Inheritance diagram for wxItemContainerImmutable:
[legend]

## Detailed Description

wxItemContainer defines an interface which is implemented by all controls which have string subitems each of which may be selected.

It is decomposed in wxItemContainerImmutable which omits all methods adding/removing items and is used by wxRadioBox and wxItemContainer itself.

Note that this is not a control, it's a mixin interface that classes have to derive from in addition to wxControl or wxWindow.

Examples: wxListBox, wxCheckListBox, wxChoice and wxComboBox (which implements an extended interface deriving from this one)

##

Library: wxCore
Category: Controls

See also
  wxControlWithItems, wxItemContainer

## Public Member Functions
| wxItemContainerImmutable ()
| Constructor. More...
virtual unsigned int | GetCount () const =0
| Returns the number of items in the control. More...
bool | IsEmpty () const
| Returns true if the control is empty or false if it has some items. More...
virtual wxString | GetString (unsigned int n) const =0
| Returns the label of the item with the given index. More...
wxArrayString | GetStrings () const
| Returns the array of the labels of all items in the control. More...
virtual void | SetString (unsigned int n, const wxString &string)=0
| Sets the label for the given item. More...
virtual int | FindString (const wxString &string, bool caseSensitive=false) const
| Finds an item whose label matches the given string. More...
Selection
virtual void | SetSelection (int n)=0
| Sets the selection to the given item n or removes the selection entirely if n == `wxNOT_FOUND`. More...
virtual int | GetSelection () const =0
| Returns the index of the selected item or `wxNOT_FOUND` if no item is selected. More...
bool | SetStringSelection (const wxString &string)
| Selects the item with the specified string in the control. More...
virtual wxString | GetStringSelection () const
| Returns the label of the selected item or an empty string if no item is selected. More...
void | Select (int n)
| This is the same as SetSelection() and exists only because it is slightly more natural for controls which support multiple selection. More...

## Constructor & Destructor Documentation

## ◆ wxItemContainerImmutable()

wxItemContainerImmutable::wxItemContainerImmutable | ( |  | ) |

Constructor.

## Member Function Documentation

## ◆ FindString()

virtual int wxItemContainerImmutable::FindString | ( | const wxString & | string,
|  | bool | caseSensitive = `false`
| ) |  | const
| virtual

Finds an item whose label matches the given string.

Parameters

  string | String to find.
  caseSensitive | Whether search is case sensitive (default is not).

Returns
  The zero-based position of the item, or wxNOT_FOUND if the string was not found.

Reimplemented in wxRadioBox, wxListBox, wxComboBox, and wxChoice.

## ◆ GetCount()

virtual unsigned int wxItemContainerImmutable::GetCount | ( |  | ) | const
| pure virtual

Returns the number of items in the control.

See also
  IsEmpty()

Implemented in wxRadioBox, wxListBox, wxComboBox, and wxChoice.

## ◆ GetSelection()

virtual int wxItemContainerImmutable::GetSelection | ( |  | ) | const
| pure virtual

Returns the index of the selected item or `wxNOT_FOUND` if no item is selected.

Returns
  The position of the current selection.

See also
  SetSelection(), GetStringSelection()

Implemented in wxRadioBox, wxListBox, wxComboBox, and wxChoice.

## ◆ GetString()

virtual wxString wxItemContainerImmutable::GetString | ( | unsigned int | n | ) | const
| pure virtual

Returns the label of the item with the given index.

The index must be valid, i.e. less than the value returned by GetCount(), otherwise an assert is triggered. Notably, this function can't be called if the control is empty.

Parameters

  n | The zero-based index.

Returns
  The label of the item.

Implemented in wxRadioBox, wxListBox, wxComboBox, and wxChoice.

## ◆ GetStrings()

wxArrayString wxItemContainerImmutable::GetStrings | ( |  | ) | const

Returns the array of the labels of all items in the control.

## ◆ GetStringSelection()

virtual wxString wxItemContainerImmutable::GetStringSelection | ( |  | ) | const
| virtual

Returns the label of the selected item or an empty string if no item is selected.

See also
  GetSelection()

Reimplemented in wxComboBox.

## ◆ IsEmpty()

bool wxItemContainerImmutable::IsEmpty | ( |  | ) | const

Returns true if the control is empty or false if it has some items.

See also
  GetCount()

## ◆ Select()

void wxItemContainerImmutable::Select | ( | int | n | ) |

This is the same as SetSelection() and exists only because it is slightly more natural for controls which support multiple selection.

## ◆ SetSelection()

virtual void wxItemContainerImmutable::SetSelection | ( | int | n | ) |
| pure virtual

Sets the selection to the given item n or removes the selection entirely if n == `wxNOT_FOUND`.

Note that this does not cause any command events to be emitted nor does it deselect any other items in the controls which support multiple selections.

Parameters

  n | The string position to select, starting from zero.

See also
  SetString(), SetStringSelection()

Implemented in wxRadioBox, wxListBox, wxComboBox, and wxChoice.

## ◆ SetString()

virtual void wxItemContainerImmutable::SetString | ( | unsigned int | n,
|  | const wxString & | string
| ) |  |
| pure virtual

Sets the label for the given item.

Parameters

  n | The zero-based item index.
  string | The label to set.

Implemented in wxChoice, wxComboBox, wxRadioBox, and wxListBox.

## ◆ SetStringSelection()

bool wxItemContainerImmutable::SetStringSelection | ( | const wxString & | string | ) |

Selects the item with the specified string in the control.

This method doesn't cause any command events to be emitted.

Notice that this method is case-insensitive, i.e. the string is compared with all the elements of the control case-insensitively and the first matching entry is selected, even if it doesn't have exactly the same case as this string and there is an exact match afterwards.

Parameters

  string | The string to select.

Returns
  true if the specified string has been selected, false if it wasn't found in the control.