Applied patch [ 795542 ] Unicode fixes in richedit sample

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2003-09-11 09:33:17 +00:00
parent 0a0be6d5a8
commit bd12a395ba
6 changed files with 179 additions and 139 deletions

View File

@@ -28,7 +28,7 @@
#define BASE_SIZE 12
inline static bool IsEndOfLine(const char *p)
inline static bool IsEndOfLine(const wxChar *p)
{
// the end of line is either just '\n' or "\r\n" - we understand both (even
// though the second is used only under DOS/Windows) to be able to import
@@ -43,9 +43,9 @@ void wxLayoutImportText(wxLayoutList *list, wxString const &str)
// we change the string only temporarily inside this function
// VZ: I still don't like it... the string data may be shared...
char * cptr = (char *)str.c_str(); // const_cast
const char * begin = cptr;
char backup;
wxChar * cptr = (wxChar *)str.c_str(); // const_cast
const wxChar * begin = cptr;
wxChar backup;
for(;;)
{
@@ -76,26 +76,26 @@ wxString wxLayoutExportCmdAsHTML(wxLayoutObjectCmd const & cmd,
wxLayoutStyleInfo *styleInfo,
bool firstTime)
{
static char buffer[20];
static wxChar buffer[20];
wxString html;
wxLayoutStyleInfo *si = cmd.GetStyle();
int size, sizecount;
html += "<font ";
html += _T("<font ");
if(si->m_fg_valid)
{
html +="color=";
sprintf(buffer,"\"#%02X%02X%02X\"", si->m_fg.Red(),si->m_fg.Green(),si->m_fg.Blue());
html += _T("color=");
wxSprintf(buffer,_T("\"#%02X%02X%02X\""), si->m_fg.Red(),si->m_fg.Green(),si->m_fg.Blue());
html += buffer;
}
if(si->m_bg_valid)
{
html += " bgcolor=";
sprintf(buffer,"\"#%02X%02X%02X\"", si->m_bg.Red(),si->m_bg.Green(),si->m_bg.Blue());
html += _T(" bgcolor=");
wxSprintf(buffer,_T("\"#%02X%02X%02X\""), si->m_bg.Red(),si->m_bg.Green(),si->m_bg.Blue());
html += buffer;
}
@@ -103,11 +103,11 @@ wxString wxLayoutExportCmdAsHTML(wxLayoutObjectCmd const & cmd,
{
case wxSWISS:
case wxMODERN:
html += " face=\"Arial,Helvetica\""; break;
html += _T(" face=\"Arial,Helvetica\""); break;
case wxROMAN:
html += " face=\"Times New Roman, Times\""; break;
html += _T(" face=\"Times New Roman, Times\""); break;
case wxTELETYPE:
html += " face=\"Courier New, Courier\""; break;
html += _T(" face=\"Courier New, Courier\""); break;
default:
;
}
@@ -123,34 +123,34 @@ wxString wxLayoutExportCmdAsHTML(wxLayoutObjectCmd const & cmd,
sizecount --;
size = (size*10)/12;
}
html += "size=";
sprintf(buffer,"%+1d", sizecount);
html += _T("size=");
wxSprintf(buffer,_T("%+1d"), sizecount);
html += buffer;
html +=">";
html += _T(">");
if(styleInfo != NULL && ! firstTime)
html ="</font>"+html; // terminate any previous font command
html = _T("</font>")+html; // terminate any previous font command
if((si->weight == wxBOLD) && ( (!styleInfo) || (styleInfo->weight != wxBOLD)))
html += "<b>";
html += _T("<b>");
else
if(si->weight != wxBOLD && ( styleInfo && (styleInfo->weight == wxBOLD)))
html += "</b>";
html += _T("</b>");
if(si->style == wxSLANT)
si->style = wxITALIC; // the same for html
if((si->style == wxITALIC) && ( (!styleInfo) || (styleInfo->style != wxITALIC)))
html += "<i>";
html += _T("<i>");
else
if(si->style != wxITALIC && ( styleInfo && (styleInfo->style == wxITALIC)))
html += "</i>";
html += _T("</i>");
if(si->underline && ( (!styleInfo) || ! styleInfo->underline))
html += "<u>";
html += _T("<u>");
else if(si->underline == false && ( styleInfo && styleInfo->underline))
html += "</u>";
html += _T("</u>");
*styleInfo = *si; // update last style info
@@ -223,9 +223,9 @@ wxLayoutExportObject *wxLayoutExport(wxLayoutExportStatus *status,
while(status->m_iterator == NULLIT)
{
if(mode & WXLO_EXPORT_AS_HTML)
*str += "<br>";
*str += _T("<br>");
if(flags & WXLO_EXPORT_WITH_CRLF)
*str += "\r\n";
*str += _T("\r\n");
else
*str += '\n';