-/// Compare two attribute objects
-bool wxTextAttrEq(const wxTextAttrEx& attr1, const wxTextAttrEx& attr2)
-{
- return (attr1 == attr2);
-}
-
-bool wxTextAttrEq(const wxTextAttrEx& attr1, const wxRichTextAttr& attr2)
-{
- return (
- attr1.GetTextColour() == attr2.GetTextColour() &&
- attr1.GetBackgroundColour() == attr2.GetBackgroundColour() &&
- attr1.GetFont().GetPointSize() == attr2.GetFontSize() &&
- attr1.GetFont().GetStyle() == attr2.GetFontStyle() &&
- attr1.GetFont().GetWeight() == attr2.GetFontWeight() &&
- attr1.GetFont().GetFaceName() == attr2.GetFontFaceName() &&
- attr1.GetFont().GetUnderlined() == attr2.GetFontUnderlined() &&
- attr1.GetAlignment() == attr2.GetAlignment() &&
- attr1.GetLeftIndent() == attr2.GetLeftIndent() &&
- attr1.GetRightIndent() == attr2.GetRightIndent() &&
- attr1.GetLeftSubIndent() == attr2.GetLeftSubIndent() &&
- wxRichTextTabsEq(attr1.GetTabs(), attr2.GetTabs()) &&
- attr1.GetLineSpacing() == attr2.GetLineSpacing() &&
- attr1.GetParagraphSpacingAfter() == attr2.GetParagraphSpacingAfter() &&
- attr1.GetParagraphSpacingBefore() == attr2.GetParagraphSpacingBefore() &&
- attr1.GetBulletStyle() == attr2.GetBulletStyle() &&
- attr1.GetBulletNumber() == attr2.GetBulletNumber() &&
- attr1.GetBulletText() == attr2.GetBulletText() &&
- attr1.GetBulletName() == attr2.GetBulletName() &&
- attr1.GetBulletFont() == attr2.GetBulletFont() &&
- attr1.GetCharacterStyleName() == attr2.GetCharacterStyleName() &&
- attr1.GetParagraphStyleName() == attr2.GetParagraphStyleName() &&
- attr1.GetListStyleName() == attr2.GetListStyleName());
-}
-
-/// Compare two attribute objects, but take into account the flags
-/// specifying attributes of interest.
-bool wxTextAttrEqPartial(const wxTextAttrEx& attr1, const wxTextAttrEx& attr2, int flags)
-{
- if ((flags & wxTEXT_ATTR_TEXT_COLOUR) && attr1.GetTextColour() != attr2.GetTextColour())
- return false;
-
- if ((flags & wxTEXT_ATTR_BACKGROUND_COLOUR) && attr1.GetBackgroundColour() != attr2.GetBackgroundColour())
- return false;
-
- if ((flags & wxTEXT_ATTR_FONT_FACE) && attr1.GetFont().Ok() && attr2.GetFont().Ok() &&
- attr1.GetFont().GetFaceName() != attr2.GetFont().GetFaceName())
- return false;
-
- if ((flags & wxTEXT_ATTR_FONT_SIZE) && attr1.GetFont().Ok() && attr2.GetFont().Ok() &&
- attr1.GetFont().GetPointSize() != attr2.GetFont().GetPointSize())
- return false;
-
- if ((flags & wxTEXT_ATTR_FONT_WEIGHT) && attr1.GetFont().Ok() && attr2.GetFont().Ok() &&
- attr1.GetFont().GetWeight() != attr2.GetFont().GetWeight())
- return false;
-
- if ((flags & wxTEXT_ATTR_FONT_ITALIC) && attr1.GetFont().Ok() && attr2.GetFont().Ok() &&
- attr1.GetFont().GetStyle() != attr2.GetFont().GetStyle())
- return false;
-
- if ((flags & wxTEXT_ATTR_FONT_UNDERLINE) && attr1.GetFont().Ok() && attr2.GetFont().Ok() &&
- attr1.GetFont().GetUnderlined() != attr2.GetFont().GetUnderlined())
- return false;
-
- if ((flags & wxTEXT_ATTR_ALIGNMENT) && attr1.GetAlignment() != attr2.GetAlignment())
- return false;
-
- if ((flags & wxTEXT_ATTR_LEFT_INDENT) &&
- ((attr1.GetLeftIndent() != attr2.GetLeftIndent()) || (attr1.GetLeftSubIndent() != attr2.GetLeftSubIndent())))
- return false;
-
- if ((flags & wxTEXT_ATTR_RIGHT_INDENT) &&
- (attr1.GetRightIndent() != attr2.GetRightIndent()))
- return false;
-
- if ((flags & wxTEXT_ATTR_PARA_SPACING_AFTER) &&
- (attr1.GetParagraphSpacingAfter() != attr2.GetParagraphSpacingAfter()))
- return false;
-
- if ((flags & wxTEXT_ATTR_PARA_SPACING_BEFORE) &&
- (attr1.GetParagraphSpacingBefore() != attr2.GetParagraphSpacingBefore()))
- return false;
-
- if ((flags & wxTEXT_ATTR_LINE_SPACING) &&
- (attr1.GetLineSpacing() != attr2.GetLineSpacing()))
- return false;
-
- if ((flags & wxTEXT_ATTR_CHARACTER_STYLE_NAME) &&
- (attr1.GetCharacterStyleName() != attr2.GetCharacterStyleName()))
- return false;
-
- if ((flags & wxTEXT_ATTR_PARAGRAPH_STYLE_NAME) &&
- (attr1.GetParagraphStyleName() != attr2.GetParagraphStyleName()))
- return false;
-
- if ((flags & wxTEXT_ATTR_LIST_STYLE_NAME) &&
- (attr1.GetListStyleName() != attr2.GetListStyleName()))
- return false;
-
- if ((flags & wxTEXT_ATTR_BULLET_STYLE) &&
- (attr1.GetBulletStyle() != attr2.GetBulletStyle()))
- return false;
-
- if ((flags & wxTEXT_ATTR_BULLET_NUMBER) &&
- (attr1.GetBulletNumber() != attr2.GetBulletNumber()))
- return false;
-
- if ((flags & wxTEXT_ATTR_BULLET_TEXT) &&
- (attr1.GetBulletText() != attr2.GetBulletText()) &&
- (attr1.GetBulletFont() != attr2.GetBulletFont()))
- return false;
-
- if ((flags & wxTEXT_ATTR_BULLET_NAME) &&
- (attr1.GetBulletName() != attr2.GetBulletName()))
- return false;
-
- if ((flags & wxTEXT_ATTR_TABS) &&
- !wxRichTextTabsEq(attr1.GetTabs(), attr2.GetTabs()))
- return false;
-
- return true;
-}
-
-bool wxTextAttrEqPartial(const wxTextAttrEx& attr1, const wxRichTextAttr& attr2, int flags)
-{
- if ((flags & wxTEXT_ATTR_TEXT_COLOUR) && attr1.GetTextColour() != attr2.GetTextColour())
- return false;
-
- if ((flags & wxTEXT_ATTR_BACKGROUND_COLOUR) && attr1.GetBackgroundColour() != attr2.GetBackgroundColour())
- return false;
-
- if ((flags & (wxTEXT_ATTR_FONT)) && !attr1.GetFont().Ok())
- return false;
-
- if ((flags & wxTEXT_ATTR_FONT_FACE) && attr1.GetFont().Ok() &&
- attr1.GetFont().GetFaceName() != attr2.GetFontFaceName())
- return false;
-
- if ((flags & wxTEXT_ATTR_FONT_SIZE) && attr1.GetFont().Ok() &&
- attr1.GetFont().GetPointSize() != attr2.GetFontSize())
- return false;
-
- if ((flags & wxTEXT_ATTR_FONT_WEIGHT) && attr1.GetFont().Ok() &&
- attr1.GetFont().GetWeight() != attr2.GetFontWeight())
- return false;
-
- if ((flags & wxTEXT_ATTR_FONT_ITALIC) && attr1.GetFont().Ok() &&
- attr1.GetFont().GetStyle() != attr2.GetFontStyle())
- return false;
-
- if ((flags & wxTEXT_ATTR_FONT_UNDERLINE) && attr1.GetFont().Ok() &&
- attr1.GetFont().GetUnderlined() != attr2.GetFontUnderlined())
- return false;
-
- if ((flags & wxTEXT_ATTR_ALIGNMENT) && attr1.GetAlignment() != attr2.GetAlignment())
- return false;
-
- if ((flags & wxTEXT_ATTR_LEFT_INDENT) &&
- ((attr1.GetLeftIndent() != attr2.GetLeftIndent()) || (attr1.GetLeftSubIndent() != attr2.GetLeftSubIndent())))
- return false;
-
- if ((flags & wxTEXT_ATTR_RIGHT_INDENT) &&
- (attr1.GetRightIndent() != attr2.GetRightIndent()))
- return false;
-
- if ((flags & wxTEXT_ATTR_PARA_SPACING_AFTER) &&
- (attr1.GetParagraphSpacingAfter() != attr2.GetParagraphSpacingAfter()))
- return false;
-
- if ((flags & wxTEXT_ATTR_PARA_SPACING_BEFORE) &&
- (attr1.GetParagraphSpacingBefore() != attr2.GetParagraphSpacingBefore()))
- return false;
-
- if ((flags & wxTEXT_ATTR_LINE_SPACING) &&
- (attr1.GetLineSpacing() != attr2.GetLineSpacing()))
- return false;
-
- if ((flags & wxTEXT_ATTR_CHARACTER_STYLE_NAME) &&
- (attr1.GetCharacterStyleName() != attr2.GetCharacterStyleName()))
- return false;
-
- if ((flags & wxTEXT_ATTR_PARAGRAPH_STYLE_NAME) &&
- (attr1.GetParagraphStyleName() != attr2.GetParagraphStyleName()))
- return false;
-
- if ((flags & wxTEXT_ATTR_LIST_STYLE_NAME) &&
- (attr1.GetListStyleName() != attr2.GetListStyleName()))
- return false;
-
- if ((flags & wxTEXT_ATTR_BULLET_STYLE) &&
- (attr1.GetBulletStyle() != attr2.GetBulletStyle()))
- return false;
-
- if ((flags & wxTEXT_ATTR_BULLET_NUMBER) &&
- (attr1.GetBulletNumber() != attr2.GetBulletNumber()))
- return false;
-
- if ((flags & wxTEXT_ATTR_BULLET_TEXT) &&
- (attr1.GetBulletText() != attr2.GetBulletText()) &&
- (attr1.GetBulletFont() != attr2.GetBulletFont()))
- return false;