X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c6182d489c7cf71c9dba511e3f68671f5b17d50d..3d777efedc1e05bd6c2a7c34a00a65895b62bb13:/src/richtext/richtextstyles.cpp?ds=sidebyside diff --git a/src/richtext/richtextstyles.cpp b/src/richtext/richtextstyles.cpp index cac6a8b1d6..ab98d93d0a 100644 --- a/src/richtext/richtextstyles.cpp +++ b/src/richtext/richtextstyles.cpp @@ -4,7 +4,6 @@ // Author: Julian Smart // Modified by: // Created: 2005-09-30 -// RCS-ID: $Id$ // Copyright: (c) Julian Smart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -61,10 +60,10 @@ wxRichTextAttr wxRichTextStyleDefinition::GetStyleMergedWithBase(const wxRichTex if (m_baseStyle.IsEmpty()) return m_style; - bool isParaStyle = IsKindOf(CLASSINFO(wxRichTextParagraphStyleDefinition)); - bool isCharStyle = IsKindOf(CLASSINFO(wxRichTextCharacterStyleDefinition)); - bool isListStyle = IsKindOf(CLASSINFO(wxRichTextListStyleDefinition)); - bool isBoxStyle = IsKindOf(CLASSINFO(wxRichTextBoxStyleDefinition)); + bool isParaStyle = IsKindOf(wxCLASSINFO(wxRichTextParagraphStyleDefinition)); + bool isCharStyle = IsKindOf(wxCLASSINFO(wxRichTextCharacterStyleDefinition)); + bool isListStyle = IsKindOf(wxCLASSINFO(wxRichTextListStyleDefinition)); + bool isBoxStyle = IsKindOf(wxCLASSINFO(wxRichTextBoxStyleDefinition)); // Collect the styles, detecting loops wxArrayString styleNames; @@ -666,6 +665,13 @@ void wxRichTextStyleListBox::UpdateStyles() SendSelectedEvent(); } } + else + { + m_styleNames.Clear(); + SetSelection(wxNOT_FOUND); + SetItemCount(0); + Refresh(); + } } // Get index for style name @@ -699,7 +705,11 @@ int wxRichTextStyleListBox::SetStyleSelection(const wxString& name) { int i = GetIndexForStyle(name); if (i > -1) + { SetSelection(i); + if (!IsVisible(i)) + ScrollToRow(i); + } return i; } @@ -729,11 +739,20 @@ wxString wxRichTextStyleListBox::CreateHTML(wxRichTextStyleDefinition* def) cons if (attr.HasAlignment() && attr.GetAlignment() == wxTEXT_ALIGNMENT_CENTRE) isCentred = true; + str << wxT("
"); + str << wxT(""); + if (isCentred) str << wxT("