// 'Main program' equivalent: the program execution "starts" here
bool MyApp::OnInit()
{
+ if ( !wxApp::OnInit() )
+ return false;
+
#if wxUSE_HELP
wxHelpProvider::Set(new wxSimpleHelpProvider);
#endif
r.BeginBold();
r.BeginFontSize(14);
- r.WriteText(wxT("Welcome to wxRichTextCtrl, a wxWidgets control"));
- r.LineBreak();
- r.WriteText(wxT("for editing and presenting styled text and images"));
+
+ wxString lineBreak = (wxChar) 29;
+
+ r.WriteText(wxString(wxT("Welcome to wxRichTextCtrl, a wxWidgets control")) + lineBreak + wxT("for editing and presenting styled text and images"));
r.EndFontSize();
r.Newline();
r.WriteText(wxT("colour, like this red bit."));
r.EndTextColour();
- r.BeginTextColour(wxColour(0, 0, 255));
- r.WriteText(wxT(" And this blue bit."));
- r.EndTextColour();
+ wxRichTextAttr backgroundColourAttr;
+ backgroundColourAttr.SetBackgroundColour(*wxGREEN);
+ backgroundColourAttr.SetTextColour(wxColour(0, 0, 255));
+ r.BeginStyle(backgroundColourAttr);
+ r.WriteText(wxT(" And this blue on green bit."));
+ r.EndStyle();
r.WriteText(wxT(" Naturally you can make things "));
r.BeginBold();
if (m_richTextCtrl->HasSelection())
range = m_richTextCtrl->GetSelectionRange();
- wxFontData fontData;
attr.SetLeftIndent(attr.GetLeftIndent() + 100);
attr.SetFlags(wxTEXT_ATTR_LEFT_INDENT);
if (m_richTextCtrl->HasSelection())
range = m_richTextCtrl->GetSelectionRange();
- if (attr.GetLeftIndent() >= 100)
+ if (attr.GetLeftIndent() > 0)
{
- wxFontData fontData;
- attr.SetLeftIndent(attr.GetLeftIndent() - 100);
+ attr.SetLeftIndent(wxMax(0, attr.GetLeftIndent() - 100));
m_richTextCtrl->SetStyle(range, attr);
}
if (m_richTextCtrl->HasSelection())
range = m_richTextCtrl->GetSelectionRange();
- wxFontData fontData;
attr.SetFlags(wxTEXT_ATTR_LINE_SPACING);
attr.SetLineSpacing(15);
if (m_richTextCtrl->HasSelection())
range = m_richTextCtrl->GetSelectionRange();
- wxFontData fontData;
attr.SetFlags(wxTEXT_ATTR_LINE_SPACING);
attr.SetLineSpacing(20);
if (m_richTextCtrl->HasSelection())
range = m_richTextCtrl->GetSelectionRange();
- wxFontData fontData;
attr.SetFlags(wxTEXT_ATTR_LINE_SPACING);
attr.SetLineSpacing(0); // Can also use 10
if (m_richTextCtrl->HasSelection())
range = m_richTextCtrl->GetSelectionRange();
- wxFontData fontData;
attr.SetParagraphSpacingAfter(attr.GetParagraphSpacingAfter() + 20);
attr.SetFlags(wxTEXT_ATTR_PARA_SPACING_AFTER);
if (attr.GetParagraphSpacingAfter() >= 20)
{
- wxFontData fontData;
attr.SetParagraphSpacingAfter(attr.GetParagraphSpacingAfter() - 20);
attr.SetFlags(wxTEXT_ATTR_PARA_SPACING_AFTER);
wxRichTextHTMLHandler htmlHandler;
htmlHandler.SetFlags(wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_MEMORY);
+ wxArrayInt fontSizeMapping;
+ fontSizeMapping.Add(7);
+ fontSizeMapping.Add(9);
+ fontSizeMapping.Add(11);
+ fontSizeMapping.Add(12);
+ fontSizeMapping.Add(14);
+ fontSizeMapping.Add(22);
+ fontSizeMapping.Add(100);
+
+ htmlHandler.SetFontSizeMapping(fontSizeMapping);
+
if (htmlHandler.SaveFile(& m_richTextCtrl->GetBuffer(), strStream))
{
win->SetPage(text);
wxRichTextAttr urlStyle;
urlStyle.SetTextColour(*wxBLUE);
urlStyle.SetFontUnderlined(true);
-
+
m_richTextCtrl->BeginStyle(urlStyle);
m_richTextCtrl->BeginURL(url);
m_richTextCtrl->WriteText(url);