Allow initializing wxScopedArray more conveniently.
Typical wxScopedArray initialization uses "new T[n]" expression, allow to omit most of it and specify just n, the number of elements to allocate. Use the new shorter form in the places where wxScopedArray(new ...) was used (which is in almost all of them) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
dd4291f962
commit
5cd81ca598
@ -9,6 +9,10 @@ Note: This file contains the list of changes since wxWidgets 3.x, please see
|
||||
3.1.0: (released 2014-xx-xx)
|
||||
----------------------------
|
||||
|
||||
All:
|
||||
|
||||
- Add wxScopedArray ctor taking the number of elements to allocate.
|
||||
|
||||
All (GUI):
|
||||
|
||||
- XRC handler for wxAuiToolBar added (Kinaou Hervé).
|
||||
|
@ -25,6 +25,7 @@ public:
|
||||
typedef T element_type;
|
||||
|
||||
wxEXPLICIT wxScopedArray(T * array = NULL) : m_array(array) { }
|
||||
wxEXPLICIT wxScopedArray(size_t count) : m_array(new T[count]) { }
|
||||
|
||||
~wxScopedArray() { delete [] m_array; }
|
||||
|
||||
|
@ -129,6 +129,16 @@ public:
|
||||
*/
|
||||
explicit wxScopedArray(T * array = NULL);
|
||||
|
||||
/**
|
||||
Constructor allocating a new array of the specified size.
|
||||
|
||||
@param count
|
||||
The number of elements to allocate.
|
||||
|
||||
@since 3.1.0
|
||||
*/
|
||||
explicit wxScopedArray(size_t count);
|
||||
|
||||
/// Destructor destroy the array.
|
||||
~wxScopedArray();
|
||||
|
||||
|
@ -1810,7 +1810,7 @@ wxDocTemplate *wxDocManager::SelectDocumentType(wxDocTemplate **templates,
|
||||
int noTemplates, bool sort)
|
||||
{
|
||||
wxArrayString strings;
|
||||
wxScopedArray<wxDocTemplate *> data(new wxDocTemplate *[noTemplates]);
|
||||
wxScopedArray<wxDocTemplate *> data(noTemplates);
|
||||
int i;
|
||||
int n = 0;
|
||||
|
||||
@ -1888,7 +1888,7 @@ wxDocTemplate *wxDocManager::SelectViewType(wxDocTemplate **templates,
|
||||
int noTemplates, bool sort)
|
||||
{
|
||||
wxArrayString strings;
|
||||
wxScopedArray<wxDocTemplate *> data(new wxDocTemplate *[noTemplates]);
|
||||
wxScopedArray<wxDocTemplate *> data(noTemplates);
|
||||
int i;
|
||||
int n = 0;
|
||||
|
||||
|
@ -138,7 +138,7 @@ wxString GetPreferredUILanguage(const wxArrayString& available)
|
||||
NULL,
|
||||
&bufferSize) )
|
||||
{
|
||||
wxScopedArray<WCHAR> langs(new WCHAR[bufferSize]);
|
||||
wxScopedArray<WCHAR> langs(bufferSize);
|
||||
if ( (*s_pfnGetUserPreferredUILanguages)(MUI_LANGUAGE_NAME,
|
||||
&numLangs,
|
||||
langs.get(),
|
||||
|
@ -626,7 +626,7 @@ bool wxClipboard::AddData( wxDataObject *data )
|
||||
|
||||
// get formats from wxDataObjects
|
||||
const size_t count = data->GetFormatCount();
|
||||
wxDataFormatArray formats(new wxDataFormat[count]);
|
||||
wxDataFormatArray formats(count);
|
||||
data->GetAllFormats(formats.get());
|
||||
|
||||
// always provide TIMESTAMP as a target, see comments in selection_handler
|
||||
@ -690,7 +690,7 @@ bool wxClipboard::GetData( wxDataObject& data )
|
||||
// get all supported formats from wxDataObjects: notice that we are setting
|
||||
// the object data, so we need them in "Set" direction
|
||||
const size_t count = data.GetFormatCount(wxDataObject::Set);
|
||||
wxDataFormatArray formats(new wxDataFormat[count]);
|
||||
wxDataFormatArray formats(count);
|
||||
data.GetAllFormats(formats.get(), wxDataObject::Set);
|
||||
|
||||
for ( size_t i = 0; i < count; i++ )
|
||||
|
@ -264,7 +264,7 @@ void wxClipboardCallback( Widget xwidget, long* data_id,
|
||||
|
||||
wxCharBuffer buffer(size);
|
||||
size_t count = dobj->GetFormatCount( wxDataObject::Get );
|
||||
wxDataFormatScopedArray dfarr( new wxDataFormat[count] );
|
||||
wxDataFormatScopedArray dfarr(count);
|
||||
dobj->GetAllFormats( dfarr.get(), wxDataObject::Get );
|
||||
|
||||
if( !dobj->GetDataHere( dfarr[*priv], buffer.data() ) )
|
||||
@ -300,7 +300,7 @@ bool wxClipboard::AddData( wxDataObject *data )
|
||||
return false;
|
||||
|
||||
size_t count = data->GetFormatCount( wxDataObject::Get );
|
||||
wxDataFormatScopedArray dfarr( new wxDataFormat[count] );
|
||||
wxDataFormatScopedArray dfarr(count);
|
||||
data->GetAllFormats( dfarr.get(), wxDataObject::Get );
|
||||
|
||||
for( size_t i = 0; i < count; ++i )
|
||||
@ -413,7 +413,7 @@ bool wxClipboard::GetData( wxDataObject& data )
|
||||
int count;
|
||||
unsigned long max_name_length;
|
||||
size_t dfcount = data.GetFormatCount( wxDataObject::Set );
|
||||
wxDataFormatScopedArray dfarr( new wxDataFormat[dfcount] );
|
||||
wxDataFormatScopedArray dfarr(dfcount);
|
||||
data.GetAllFormats( dfarr.get(), wxDataObject::Set );
|
||||
|
||||
if( XmClipboardInquireCount( xdisplay, xwindow, &count, &max_name_length )
|
||||
|
@ -860,7 +860,7 @@ size_t wxMenu::CopyAccels(wxAcceleratorEntry *accels) const
|
||||
wxAcceleratorTable *wxMenu::CreateAccelTable() const
|
||||
{
|
||||
const size_t count = m_accels.size();
|
||||
wxScopedArray<wxAcceleratorEntry> accels(new wxAcceleratorEntry[count]);
|
||||
wxScopedArray<wxAcceleratorEntry> accels(count);
|
||||
CopyAccels(accels.get());
|
||||
|
||||
return new wxAcceleratorTable(count, accels.get());
|
||||
|
@ -894,7 +894,7 @@ STDMETHODIMP wxIDataObject::EnumFormatEtc(DWORD dwDir,
|
||||
nFormatCount = wx_truncate_cast(ULONG, ourFormatCount + sysFormatCount);
|
||||
|
||||
// fill format array with formats ...
|
||||
wxScopedArray<wxDataFormat> formats(new wxDataFormat[nFormatCount]);
|
||||
wxScopedArray<wxDataFormat> formats(nFormatCount);
|
||||
|
||||
// ... from content data (supported formats)
|
||||
m_pDataObject->GetAllFormats(formats.get(), dir);
|
||||
|
@ -931,7 +931,7 @@ bool wxToolBar::Realize()
|
||||
// Next add the buttons and separators
|
||||
// -----------------------------------
|
||||
|
||||
wxScopedArray<TBBUTTON> buttons(new TBBUTTON[nTools]);
|
||||
wxScopedArray<TBBUTTON> buttons(nTools);
|
||||
|
||||
// this array will hold the indices of all controls in the toolbar
|
||||
wxArrayInt controlIds;
|
||||
|
Loading…
Reference in New Issue
Block a user