1. added SetSelection() to wxItemContainer and removed its declarations

from derived classes
2. made wxItemContainer::Select() non virtual: it simply calls SetSelection()
3. renamed wxListBox::SetSelection(n, select) to DoSetSelection() for all
   ports and defined non virtual SetSelection() overloads in the base class
   to avoid virtual functions hiding


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2005-02-13 17:08:27 +00:00
parent 1aa3e471fe
commit c6179a847d
32 changed files with 132 additions and 119 deletions

View File

@@ -42,12 +42,6 @@ public:
// all generic methods are in wxControlWithItems
// single selection logic
virtual void SetSelection(int n) = 0;
// don't override this
virtual void Select(int n) { SetSelection(n); }
// set/get the number of columns in the control (as they're not supported on
// most platforms, they do nothing by default)
virtual void SetColumns(int WXUNUSED(n) = 1 ) { }

View File

@@ -88,7 +88,6 @@ public:
virtual wxString GetString(int) const;
virtual void SetString(int, const wxString&);
virtual int FindString(const wxString&) const;
virtual void Select(int) {}
virtual int GetSelection() const;
virtual int DoAppend(const wxString&);
virtual int DoInsert(const wxString&, int);

View File

@@ -82,12 +82,12 @@ protected:
public:
// pure virtuals from wxListBoxBase
virtual bool IsSelected(int n) const;
virtual void SetSelection(int n, bool select = TRUE);
virtual int GetSelections(wxArrayInt& aSelections) const;
protected:
virtual void DoInsertItems(const wxArrayString& items, int pos);
virtual void DoSetItems(const wxArrayString& items, void **clientData);
virtual void DoSetFirstItem(int n);
virtual void DoSetSelection(int n, bool select);
// pure virtuals from wxItemContainer
public:
@@ -100,7 +100,6 @@ public:
virtual void SetString(int n, const wxString& s);
virtual int FindString(const wxString& s) const;
// selection
virtual void Select(int n);
virtual int GetSelection() const;
protected:
virtual int DoAppend(const wxString& item);

View File

@@ -76,7 +76,7 @@ public:
// selection
// ---------
virtual void Select(int n) = 0;
virtual void SetSelection(int n) = 0;
virtual int GetSelection() const = 0;
// set selection to the specified string, return false if not found
@@ -85,6 +85,10 @@ public:
// return the selected string or empty string if none
wxString GetStringSelection() const;
// this is the same as SetSelection( for single-selection controls but
// reads better for multi-selection ones
void Select(int n) { SetSelection(n); }
// misc
// ----
@@ -172,6 +176,20 @@ private:
DECLARE_NO_COPY_CLASS(wxControlWithItems)
};
// ----------------------------------------------------------------------------
// inline functions
// ----------------------------------------------------------------------------
#if WXWIN_COMPATIBILITY_2_2
inline int wxItemContainer::Number() const
{
return GetCount();
}
#endif // WXWIN_COMPATIBILITY_2_2
#endif // wxUSE_CONTROLS
#endif // _WX_CTRLSUB_H_BASE_

View File

@@ -95,7 +95,6 @@ public:
int GetCount() const;
int Number() const { return GetCount(); }
void SetSelection( int n );
void Select( int n ) { return SetSelection( n ); }
void SetString(int n, const wxString &text);
wxString GetValue() const;

View File

@@ -81,7 +81,7 @@ public:
virtual int FindString(const wxString& s) const;
virtual bool IsSelected(int n) const;
virtual void SetSelection(int n, bool select = TRUE);
virtual void DoSetSelection(int n, bool select);
virtual int GetSelection() const;
virtual int GetSelections(wxArrayInt& aSelections) const;

View File

@@ -95,7 +95,6 @@ public:
int GetCount() const;
int Number() const { return GetCount(); }
void SetSelection( int n );
void Select( int n ) { return SetSelection( n ); }
void SetString(int n, const wxString &text);
wxString GetValue() const;

View File

@@ -81,7 +81,7 @@ public:
virtual int FindString(const wxString& s) const;
virtual bool IsSelected(int n) const;
virtual void SetSelection(int n, bool select = TRUE);
virtual void DoSetSelection(int n, bool select);
virtual int GetSelection() const;
virtual int GetSelections(wxArrayInt& aSelections) const;

View File

@@ -65,12 +65,16 @@ public:
// multiple selection logic
virtual bool IsSelected(int n) const = 0;
virtual void SetSelection(int n, bool select = true) = 0;
virtual void Select(int n) { SetSelection(n, true); }
void Deselect(int n) { SetSelection(n, false); }
virtual void SetSelection(int n) { DoSetSelection(n, true); }
void SetSelection(int n, bool select) { DoSetSelection(n, select); }
void Deselect(int n) { DoSetSelection(n, false); }
void DeselectAll(int itemToLeaveSelected = -1);
virtual bool SetStringSelection(const wxString& s, bool select = true);
virtual bool SetStringSelection(const wxString& s, bool select);
virtual bool SetStringSelection(const wxString& s)
{
return SetStringSelection(s, true);
}
// works for single as well as multiple selection listboxes (unlike
// GetSelection which only works for listboxes with single selection)
@@ -119,6 +123,9 @@ protected:
virtual void DoSetFirstItem(int n) = 0;
virtual void DoSetSelection(int n, bool select) = 0;
DECLARE_NO_COPY_CLASS(wxListBoxBase)
};

View File

@@ -92,7 +92,6 @@ class WXDLLEXPORT wxComboBox : public wxControl, public wxComboBoxBase
virtual int GetSelection() const ;
virtual void SetSelection(int n);
virtual void Select(int n) { SetSelection(n) ; }
virtual int FindString(const wxString& s) const;
virtual wxString GetString(int n) const ;
virtual wxString GetStringSelection() const ;

View File

@@ -97,7 +97,7 @@ public:
virtual int FindString(const wxString& s) const;
virtual bool IsSelected(int n) const;
virtual void SetSelection(int n, bool select = TRUE);
virtual void DoSetSelection(int n, bool select);
virtual int GetSelection() const;
virtual int GetSelections(wxArrayInt& aSelections) const;

View File

@@ -87,7 +87,6 @@ class WXDLLEXPORT wxComboBox : public wxControl, public wxComboBoxBase
virtual int GetSelection() const ;
virtual void SetSelection(int n);
virtual void Select(int n) { SetSelection(n) ; }
virtual int FindString(const wxString& s) const;
virtual wxString GetString(int n) const ;
virtual wxString GetStringSelection() const ;

View File

@@ -97,7 +97,7 @@ public:
virtual int FindString(const wxString& s) const;
virtual bool IsSelected(int n) const;
virtual void SetSelection(int n, bool select = TRUE);
virtual void DoSetSelection(int n, bool select);
virtual int GetSelection() const;
virtual int GetSelections(wxArrayInt& aSelections) const;

View File

@@ -84,7 +84,7 @@ public:
virtual wxString GetString(int n) const;
// implementation of wxListBoxbase
virtual void SetSelection(int n, bool select = true);
virtual void DoSetSelection(int n, bool select);
virtual void DoInsertItems(const wxArrayString& items, int pos);
virtual void DoSetItems(const wxArrayString& items, void **clientData);
virtual void DoSetFirstItem(int n);

View File

@@ -91,7 +91,7 @@ public:
virtual int FindString(const wxString& s) const;
virtual bool IsSelected(int n) const;
virtual void SetSelection(int n, bool select = true);
virtual void DoSetSelection(int n, bool select);
virtual int GetSelection() const;
virtual int GetSelections(wxArrayInt& aSelections) const;

View File

@@ -114,8 +114,8 @@ public:
virtual int FindString(const wxString& rsString) const;
virtual bool IsSelected(int n) const;
virtual void SetSelection( int n
,bool bSelect = TRUE
virtual void DoSetSelection( int n
,bool bSelect
);
virtual int GetSelection(void) const;
virtual int GetSelections(wxArrayInt& raSelections) const;

View File

@@ -91,7 +91,7 @@ public:
virtual int FindString(const wxString& s) const;
virtual bool IsSelected(int n) const;
virtual void SetSelection(int n, bool select = TRUE);
virtual void DoSetSelection(int n, bool select);
virtual int GetSelection() const;
virtual int GetSelections(wxArrayInt& aSelections) const;

View File

@@ -301,9 +301,8 @@ public:
virtual wxString GetString(int n) const;
virtual void SetString(int n, const wxString& s);
virtual int FindString(const wxString& s) const;
virtual void Select(int n);
virtual void SetSelection(int n);
virtual int GetSelection() const;
void SetSelection(int n) { Select(n); }
wxCONTROL_ITEMCONTAINER_CLIENTDATAOBJECT_RECAST

View File

@@ -112,7 +112,7 @@ public:
virtual bool IsSelected(int n) const
{ return m_selections.Index(n) != wxNOT_FOUND; }
virtual void SetSelection(int n, bool select = true);
virtual void DoSetSelection(int n, bool select);
virtual int GetSelection() const;
virtual int GetSelections(wxArrayInt& aSelections) const;