wxTString removed

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@291 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
1998-07-17 20:52:40 +00:00
parent 6b95b20d03
commit a1530845c9
5 changed files with 24 additions and 68 deletions

View File

@@ -60,7 +60,7 @@ public:
// open/close // open/close
bool Create(const char *szFileName, bool bOverwrite = FALSE); bool Create(const char *szFileName, bool bOverwrite = FALSE);
bool Open(const char *szFileName, OpenMode mode = read); bool Open(const char *szFileName, OpenMode mode = read);
inline bool Close(); // Close is a NOP if not opened bool Close(); // Close is a NOP if not opened
// assign an existing file descriptor and get it back from wxFile object // assign an existing file descriptor and get it back from wxFile object
void Attach(int fd) { Close(); m_fd = fd; } void Attach(int fd) { Close(); m_fd = fd; }

View File

@@ -43,12 +43,7 @@ typedef unsigned long uint32;
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
class WXDLLEXPORT wxLocale; class WXDLLEXPORT wxLocale;
class WXDLLEXPORT wxMsgCatalog; class WXDLLEXPORT wxMsgCatalog;
extern WXDLLEXPORT_DATA(wxLocale *) g_pLocale;
// ----------------------------------------------------------------------------
// global functions
// ----------------------------------------------------------------------------
extern wxLocale* WXDLLEXPORT wxGetLocale();
inline const char* wxGetTranslation(const char *sz);
// ============================================================================ // ============================================================================
// locale support // locale support
@@ -63,10 +58,10 @@ class WXDLLEXPORT wxLocale
public: public:
// ctor & dtor // ctor & dtor
// the ctor has a side effect of changing current locale // the ctor has a side effect of changing current locale
wxLocale(const char *szName, // name (for messages) wxLocale(const char *szName, // name (for messages)
const char *szShort = NULL, // dir prefix (for msg files) const char *szShort = NULL, // dir prefix (for msg files)
const char *szLocale = NULL, // locale (for setlocale) const char *szLocale = NULL, // locale (for setlocale)
bool bLoadDefault = TRUE); // preload wxstd.mo? bool bLoadDefault = TRUE); // preload wxstd.mo?
// restores old locale // restores old locale
~wxLocale(); ~wxLocale();
@@ -110,50 +105,16 @@ private:
}; };
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// inline functions // global functions
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
inline WXDLLEXPORT wxLocale* wxGetLocale() { return g_pLocale; }
// get the translation of the string in the current locale // get the translation of the string in the current locale
inline const char *wxGetTranslation(const char *sz) inline WXDLLEXPORT const char *wxGetTranslation(const char *sz)
{ {
wxLocale *pLoc = wxGetLocale(); wxLocale *pLoc = wxGetLocale();
return pLoc == NULL ? sz : pLoc->GetString(sz); return pLoc == NULL ? sz : pLoc->GetString(sz);
} }
// ============================================================================
// optional features
// ============================================================================
// ----------------------------------------------------------------------------
// wxTString: automatically translates strings to current language
// ----------------------------------------------------------------------------
// this feature should be enabled by defining WX_USE_AUTOTRANS, if it's not
// done no automatic translation is performed
#if USE_AUTOTRANS
class WXDLLEXPORT wxTString
{
public:
// NB: different ctors do different things!
// does translation
wxTString(const char *sz) : m_pcsz(wxGetTranslation(sz)) { }
// no translation
wxTString(const wxString& s) : m_pcsz(s) { }
// NB: no copy ctor, it must be a POD so that we can pass it
// to vararg functions (and it's not needed anyhow)
// implicit conversion
operator const char *() const { return m_pcsz; }
private:
const char *m_pcsz;
};
#else //!USE_AUTOTRANS
#define wxTString wxString
#endif //USE_AUTOTRANS
#define TRANSSTRING_DEFINED
#endif #endif
// __INTLH__ // __INTLH__

View File

@@ -196,7 +196,7 @@ class wxLogFrame;
class WXDLLEXPORT wxLogWindow : public wxLog class WXDLLEXPORT wxLogWindow : public wxLog
{ {
public: public:
wxLogWindow(const wxTString& strTitle, bool bShow = TRUE); wxLogWindow(const char *szTitle, bool bShow = TRUE);
~wxLogWindow(); ~wxLogWindow();
// show/hide the log window // show/hide the log window
@@ -254,16 +254,13 @@ private:
// define wxLog<level> // define wxLog<level>
// ------------------- // -------------------
// NB: all these functions take `wxTString' and not
// `const wxTString&' because according to C++ standard
// the first argument to a vararg function can not be
// an array, function or reference :-(
// the most generic log function
void WXDLLEXPORT wxLogGeneric(wxLogLevel level, wxTString strFormat, ...);
#define DECLARE_LOG_FUNCTION(level) \ #define DECLARE_LOG_FUNCTION(level) \
extern void WXDLLEXPORT wxLog##level(wxTString strFormat, ...) extern void WXDLLEXPORT wxLog##level(const char *szFormat, ...)
#define DECLARE_LOG_FUNCTION2(level, arg1) \
extern void WXDLLEXPORT wxLog##level(arg1, const char *szFormat, ...)
// a generic function for all levels (level is passes as parameter)
DECLARE_LOG_FUNCTION2(Generic, wxLogLevel level);
// one function per each level // one function per each level
DECLARE_LOG_FUNCTION(FatalError); DECLARE_LOG_FUNCTION(FatalError);
@@ -280,19 +277,17 @@ DECLARE_LOG_FUNCTION(SysError);
// and another one which also takes the error code (for those broken APIs // and another one which also takes the error code (for those broken APIs
// that don't set the errno (like registry APIs in Win32)) // that don't set the errno (like registry APIs in Win32))
void WXDLLEXPORT wxLogSysError(long lErrCode, wxTString strFormat, ...); DECLARE_LOG_FUNCTION2(SysError, long lErrCode);
// debug functions do nothing in release mode // debug functions do nothing in release mode
#ifdef __WXDEBUG__ #ifdef __WXDEBUG__
// NB: debug functions don't translate their arguments DECLARE_LOG_FUNCTION(Debug);
extern void WXDLLEXPORT wxLogDebug(const char *szFormat, ...);
// first king of LogTrace is uncoditional: it doesn't check the level, // first king of LogTrace is uncoditional: it doesn't check the level,
// while the second one does nothing if all of level bits are not set // while the second one does nothing if all of level bits are not set
// in wxLog::GetActive()->GetTraceMask(). // in wxLog::GetActive()->GetTraceMask().
extern void WXDLLEXPORT wxLogTrace(const char *szFormat, ...); DECLARE_LOG_FUNCTION(Trace);
extern void WXDLLEXPORT wxLogTrace(wxTraceMask mask, DECLARE_LOG_FUNCTION2(Trace, wxTraceMask mask);
const char *szFormat, ...);
#else //!debug #else //!debug
// these functions do nothing // these functions do nothing
inline void wxLogDebug(const char *, ...) { } inline void wxLogDebug(const char *, ...) { }

View File

@@ -49,7 +49,7 @@ DECLARE_DYNAMIC_CLASS(wxMenuItem)
public: public:
// ctor & dtor // ctor & dtor
wxMenuItem(wxMenu *pParentMenu = NULL, int id = ID_SEPARATOR, wxMenuItem(wxMenu *pParentMenu = NULL, int id = ID_SEPARATOR,
const wxTString& strName = "", const wxTString& wxHelp = "", const wxString& strName = "", const wxString& wxHelp = "",
bool bCheckable = FALSE, wxMenu *pSubMenu = NULL); bool bCheckable = FALSE, wxMenu *pSubMenu = NULL);
virtual ~wxMenuItem(); virtual ~wxMenuItem();

View File

@@ -31,9 +31,9 @@ class WXDLLEXPORT wxOwnerDrawn
{ {
public: public:
// ctor & dtor // ctor & dtor
wxOwnerDrawn(const wxTString& str = "", wxOwnerDrawn(const wxString& str = "",
bool bCheckable = FALSE, bool bCheckable = FALSE,
bool bMenuItem = FALSE); // ## kludge for colors bool bMenuItem = FALSE); // @@ kludge for colors
virtual ~wxOwnerDrawn() { } virtual ~wxOwnerDrawn() { }
// fix appearance // fix appearance