fixes needed for separate DLL build to work

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2003-07-02 01:41:23 +00:00
parent 9feb77164b
commit 886dd7d28e
86 changed files with 754 additions and 677 deletions

View File

@@ -101,7 +101,7 @@ const unsigned int wxSTRING_MAXLEN = UINT_MAX - 100;
// ----------------------------------------------------------------------------
// global pointer to empty string
WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
extern WXDLLEXPORT_DATA_BASE(const wxChar*) wxEmptyString;
// ---------------------------------------------------------------------------
// global functions complementing standard C string library replacements for
@@ -166,7 +166,7 @@ inline int Stricmp(const char *psz1, const char *psz2)
}
// return an empty wxString
class WXDLLEXPORT wxString; // not yet defined
class WXDLLEXPORT_BASE wxString; // not yet defined
inline const wxString& wxGetEmptyString() { return *(wxString *)&wxEmptyString; }
// ---------------------------------------------------------------------------
@@ -174,7 +174,7 @@ inline const wxString& wxGetEmptyString() { return *(wxString *)&wxEmptyString;
// is never used directly (but had to be put here to allow inlining)
// ---------------------------------------------------------------------------
struct WXDLLEXPORT wxStringData
struct WXDLLEXPORT_BASE wxStringData
{
int nRefs; // reference count
size_t nDataLength, // actual string length
@@ -233,9 +233,9 @@ struct WXDLLEXPORT wxStringData
// - regular expressions support
// ---------------------------------------------------------------------------
class WXDLLEXPORT wxString
class WXDLLEXPORT_BASE wxString
{
friend class WXDLLEXPORT wxArrayString;
friend class WXDLLEXPORT_BASE wxArrayString;
// NB: special care was taken in arranging the member functions in such order
// that all inline functions can be effectively inlined, verify that all
@@ -607,15 +607,15 @@ public:
// non-destructive concatenation
//
friend wxString WXDLLEXPORT operator+(const wxString& string1, const wxString& string2);
friend wxString WXDLLEXPORT_BASE operator+(const wxString& string1, const wxString& string2);
//
friend wxString WXDLLEXPORT operator+(const wxString& string, wxChar ch);
friend wxString WXDLLEXPORT_BASE operator+(const wxString& string, wxChar ch);
//
friend wxString WXDLLEXPORT operator+(wxChar ch, const wxString& string);
friend wxString WXDLLEXPORT_BASE operator+(wxChar ch, const wxString& string);
//
friend wxString WXDLLEXPORT operator+(const wxString& string, const wxChar *psz);
friend wxString WXDLLEXPORT_BASE operator+(const wxString& string, const wxChar *psz);
//
friend wxString WXDLLEXPORT operator+(const wxChar *psz, const wxString& string);
friend wxString WXDLLEXPORT_BASE operator+(const wxChar *psz, const wxString& string);
// stream-like functions
// insert an int into string
@@ -1027,7 +1027,7 @@ public:
// from the array (operator[] or Item() method), a reference is returned.
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxArrayString
class WXDLLEXPORT_BASE wxArrayString
{
public:
// type of function used by wxArrayString::Sort()
@@ -1151,7 +1151,7 @@ private:
bool m_autoSort; // if TRUE, keep the array always sorted
};
class WXDLLEXPORT wxSortedArrayString : public wxArrayString
class WXDLLEXPORT_BASE wxSortedArrayString : public wxArrayString
{
public:
wxSortedArrayString() : wxArrayString(TRUE)
@@ -1164,7 +1164,7 @@ public:
// wxStringBuffer: a tiny class allowing to get a writable pointer into string
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxStringBuffer
class WXDLLEXPORT_BASE wxStringBuffer
{
public:
wxStringBuffer(wxString& str, size_t lenWanted = 1024)
@@ -1249,11 +1249,11 @@ inline bool operator!=(const wxCharBuffer& s1, const wxString& s2)
{ return (s2.Cmp((const char *)s1) != 0); }
#endif // wxUSE_UNICODE/!wxUSE_UNICODE
wxString WXDLLEXPORT operator+(const wxString& string1, const wxString& string2);
wxString WXDLLEXPORT operator+(const wxString& string, wxChar ch);
wxString WXDLLEXPORT operator+(wxChar ch, const wxString& string);
wxString WXDLLEXPORT operator+(const wxString& string, const wxChar *psz);
wxString WXDLLEXPORT operator+(const wxChar *psz, const wxString& string);
wxString WXDLLEXPORT_BASE operator+(const wxString& string1, const wxString& string2);
wxString WXDLLEXPORT_BASE operator+(const wxString& string, wxChar ch);
wxString WXDLLEXPORT_BASE operator+(wxChar ch, const wxString& string);
wxString WXDLLEXPORT_BASE operator+(const wxString& string, const wxChar *psz);
wxString WXDLLEXPORT_BASE operator+(const wxChar *psz, const wxString& string);
#if wxUSE_UNICODE
inline wxString operator+(const wxString& string, const wxWCharBuffer& buf)
{ return string + (const wchar_t *)buf; }
@@ -1277,8 +1277,8 @@ inline wxString operator+(const wxCharBuffer& buf, const wxString& string)
#include "wx/iosfwrap.h"
WXDLLEXPORT wxSTD istream& operator>>(wxSTD istream&, wxString&);
WXDLLEXPORT wxSTD ostream& operator<<(wxSTD ostream&, const wxString&);
WXDLLEXPORT_BASE wxSTD istream& operator>>(wxSTD istream&, wxString&);
WXDLLEXPORT_BASE wxSTD ostream& operator<<(wxSTD ostream&, const wxString&);
#endif // wxSTD_STRING_COMPATIBILITY