1. removed wxObject::CopyObject() and Clone() - some objects just can't be

copied
2. made wxEvent::Clone() pure virtual and added missing Clone()s to the
   other event classes which this changes has helped to discover


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2001-11-21 21:44:52 +00:00
parent dcfb179bc7
commit acd15a3fa0
11 changed files with 44 additions and 47 deletions

View File

@@ -638,7 +638,7 @@ void wxEvtHandler::AddPendingEvent(wxEvent& event)
if ( !m_pendingEvents )
m_pendingEvents = new wxList;
wxEvent *event2 = (wxEvent *)event.Clone();
wxEvent *event2 = event.Clone();
m_pendingEvents->Append(event2);

View File

@@ -185,11 +185,11 @@ bool wxHTTP::Connect(wxSockAddress& addr, bool WXUNUSED(wait))
{
if (m_addr) {
delete m_addr;
m_addr = NULL;
Close();
}
m_addr = (wxSockAddress *) addr.Clone();
m_addr = addr.Clone();
return TRUE;
}

View File

@@ -99,22 +99,6 @@ bool wxObject::IsKindOf(wxClassInfo *info) const
return FALSE;
}
wxObject *wxObject::Clone() const
{
wxObject *object = GetClassInfo()->CreateObject();
CopyObject(*object);
return object;
}
#ifdef __WXDEBUG__
void wxObject::CopyObject(wxObject& object_dest) const
#else // !Debug
void wxObject::CopyObject(wxObject& WXUNUSED(object_dest)) const
#endif // Debug/!Debug
{
wxASSERT(object_dest.GetClassInfo()->IsKindOf(GetClassInfo()));
}
#if wxUSE_STD_IOSTREAM && (defined(__WXDEBUG__) || wxUSE_DEBUG_CONTEXT)
void wxObject::Dump(wxSTD ostream& str)
{

View File

@@ -72,16 +72,8 @@ const wxSockAddress& wxSockAddress::operator=(const wxSockAddress& addr)
return *this;
}
void wxSockAddress::CopyObject(wxObject& dest) const
{
wxSockAddress *addr = (wxSockAddress *)&dest;
wxObject::CopyObject(dest);
addr->SetAddress(GetAddress());
}
void wxSockAddress::Clear()
{
{
GAddress_destroy(m_address);
m_address = GAddress_new();
}
@@ -102,7 +94,7 @@ wxIPV4address::~wxIPV4address()
bool wxIPV4address::Hostname(const wxString& name)
{
// Some people are sometimes fool.
if (name == wxT(""))
if (name == wxT(""))
{
wxLogWarning( _("Trying to solve a NULL hostname: giving up") );
return FALSE;
@@ -147,7 +139,7 @@ wxString wxIPV4address::Hostname()
unsigned short wxIPV4address::Service()
{
return GAddress_INET_GetPort(m_address);
return GAddress_INET_GetPort(m_address);
}
#if 0
@@ -196,7 +188,7 @@ const wxString& wxIPV6address::Hostname()
unsigned short wxIPV6address::Service()
{
return GAddress_INET_GetPort(m_address);
return GAddress_INET_GetPort(m_address);
}
#endif
@@ -231,5 +223,5 @@ wxString wxUNIXaddress::Filename()
#endif
#endif
#endif
// wxUSE_SOCKETS