From: Vadim Zeitlin Date: Thu, 16 Oct 2008 12:32:06 +0000 (+0000) Subject: added wxConnection::IsTextFormat() X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/a62e6836aec4c5c6bd6940237d4d83cf6bf40c17 added wxConnection::IsTextFormat() git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/ipcbase.h b/include/wx/ipcbase.h index 45c0f44553..ae4bbca0a6 100644 --- a/include/wx/ipcbase.h +++ b/include/wx/ipcbase.h @@ -180,10 +180,21 @@ public: virtual bool OnDisconnect() { delete this; return true; } + // return true if this is one of the formats used for textual data + // transmission + static bool IsTextFormat(wxIPCFormat format) + { + return format == wxIPC_TEXT || + format == wxIPC_UTF8TEXT || + format == wxIPC_UTF16TEXT || + format == wxIPC_UTF32TEXT; + } + // converts from the data and format into a wxString automatically // // this function accepts data in all of wxIPC_TEXT, wxIPC_UNICODETEXT, and - // wxIPC_UTF8TEXT formats but asserts if the format is anything else + // wxIPC_UTF8TEXT formats but asserts if the format is anything else (i.e. + // such that IsTextFormat(format) doesn't return true) // // notice that the size parameter here contains the total size of the data, // including the terminating '\0' or L'\0' diff --git a/interface/wx/ipc.h b/interface/wx/ipc.h index fb477a56ac..ac6187f12c 100644 --- a/interface/wx/ipc.h +++ b/interface/wx/ipc.h @@ -205,6 +205,32 @@ public: otherwise. */ bool StopAdvise(const wxString& item); + + + /** + Returns true if the format is one of the text formats. + + The text formats are wxIPC_TEXT, wxIPC_UNICODETEXT and wxIPC_UTF8TEXT. + */ + static bool IsTextFormat(wxIPCFormat format); + + /** + Returns the data in any of the text formats as string. + + @param data + The raw data pointer as used with any of the other methods of this + class. + @param size + The size of the data buffer pointed to by @a data. + @param format + The format of the data. It must be a text one, i.e. such that + IsTextFormat() returns @true for it. + @return + The string representation of the data. If the format is not text, + an assertion failure is triggered and empty string is returned. + */ + static wxString + GetTextFromData(const void *data, size_t size, wxIPCFormat format); };