X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ef41d80cdfa98391d8530c4b142c9816e0519e68..a63d48fa138e9eaa3079172ace9a804ba5b0415e:/src/motif/checklst.cpp diff --git a/src/motif/checklst.cpp b/src/motif/checklst.cpp index fc1a76f69c..be02853203 100644 --- a/src/motif/checklst.cpp +++ b/src/motif/checklst.cpp @@ -13,13 +13,14 @@ // headers & declarations // ============================================================================ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "checklst.h" #endif #include "wx/defs.h" #include "wx/checklst.h" +#include "wx/arrstr.h" // ============================================================================ // implementation @@ -54,17 +55,7 @@ static void CopyStringsAddingPrefix(const wxArrayString& orig, copy.Clear(); for(size_t i = 0; i < orig.GetCount(); ++i ) - copy[i] = Prefix(FALSE) + orig[i]; -} - -static wxString* CopyStringsAddingPrefix(size_t n, const wxString choices[]) -{ - wxString* copy = new wxString[n]; - - for(size_t i = 0; i < n; ++i ) - copy[i].Add( Prefix(FALSE) + choices[i] ); - - return copy; + copy.Add( Prefix(FALSE) + orig[i] ); } // def ctor: use Create() to really create the control @@ -84,18 +75,42 @@ wxCheckListBox::wxCheckListBox(wxWindow *parent, wxWindowID id, style, val, name); } +wxCheckListBox::wxCheckListBox(wxWindow *parent, wxWindowID id, + const wxPoint& pos, const wxSize& size, + const wxArrayString& choices, + long style, const wxValidator& val, + const wxString& name) + : wxCheckListBoxBase() +{ + Create(parent, id, pos, size, choices, + style, val, name); +} + +bool wxCheckListBox::Create(wxWindow *parent, wxWindowID id, + const wxPoint& pos, + const wxSize& size, + int n, const wxString choices[], + long style, + const wxValidator& validator, + const wxString& name) +{ + // wxListBox::Create calls set, which adds the prefixes + bool retVal = wxListBox::Create(parent, id, pos, size, n, choices, + style, validator, name); + return retVal; +} + bool wxCheckListBox::Create(wxWindow *parent, wxWindowID id, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, - int n = 0, const wxString choices[] = NULL, - long style = 0, - const wxValidator& validator = wxDefaultValidator, + const wxPoint& pos, + const wxSize& size, + const wxArrayString& choices, + long style, + const wxValidator& validator, const wxString& name) { - wxString* chs = CopyStringsAddingPrefix(n, choices); - bool retVal = wxListBox::Create(parent, id, pos, size, n, chs, + // wxListBox::Create calls set, which adds the prefixes + bool retVal = wxListBox::Create(parent, id, pos, size, choices, style, validator, name); - delete[] chs; return retVal; }