summaryrefslogtreecommitdiff
path: root/src/rtfformatting.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/rtfformatting.h')
-rw-r--r--src/rtfformatting.h122
1 files changed, 122 insertions, 0 deletions
diff --git a/src/rtfformatting.h b/src/rtfformatting.h
new file mode 100644
index 0000000..2dfc126
--- /dev/null
+++ b/src/rtfformatting.h
@@ -0,0 +1,122 @@
+// RtfTextProperties.h: interface for the RtfTextProperties class.
+//
+//////////////////////////////////////////////////////////////////////
+
+#if !defined(AFX_RTFTEXTPROPERTIES_H__719D85C9_69D9_4499_BE5E_7A9A7F6F9C38__INCLUDED_)
+#define AFX_RTFTEXTPROPERTIES_H__719D85C9_69D9_4499_BE5E_7A9A7F6F9C38__INCLUDED_
+
+#if _MSC_VER > 1000
+#pragma once
+#endif // _MSC_VER > 1000
+
+class RtfFormatting
+{
+public:
+ RtfFormatting()
+ {
+ resetText();
+ resetPara();
+ }
+
+ RtfFormatting(const RtfFormatting& format)
+ {
+ copy(format);
+ }
+
+ bool textEquals(const RtfFormatting& format) const
+ {
+ return m_bold == format.m_bold &&
+ m_italic == format.m_italic &&
+ m_strike == format.m_italic &&
+ m_hidden == format.m_hidden &&
+ m_underline == format.m_underline &&
+ m_color == format.m_color;
+ }
+
+ bool paraEquals(RtfFormatting& format) const
+ {
+ return m_style == format.m_style &&
+ m_list == format.m_list &&
+ m_inTbl == format.m_inTbl;
+ }
+
+ void copy(const RtfFormatting& format)
+ {
+ m_bold = format.m_bold;
+ m_italic = format.m_italic;
+ m_strike = format.m_italic;
+ m_hidden = format.m_hidden;
+ m_underline = format.m_underline;
+ m_color = format.m_color;
+
+ m_style = format.m_style;
+ m_list = format.m_list;
+ m_inTbl = format.m_inTbl;
+ }
+
+ void resetText()
+ {
+ m_bold = m_italic = m_strike =
+ m_underline = m_hidden = false;
+ m_color = -1;
+ }
+
+ void resetPara()
+ {
+ m_style = m_list = -1;
+ m_inTbl = false;
+ }
+
+ bool textIsBold() const
+ { return m_bold; }
+ bool textIsItalic() const
+ { return m_italic; }
+ bool textIsStrike() const
+ { return m_strike; }
+ bool textIsUnderline() const
+ { return m_underline; }
+ bool textIsHidden() const
+ { return m_hidden; }
+ int textColor() const
+ { return m_color; }
+ int paraStyle() const
+ { return m_style; }
+ int paraList() const
+ { return m_list; }
+ bool paraInTable() const
+ { return m_inTbl; }
+
+ void textSetBold(bool bold)
+ { m_bold = bold; }
+ void textSetItalic(bool italic)
+ { m_italic = italic; }
+ void textSetStrike(bool strike)
+ { m_strike = strike; }
+ void textSetUnderline(bool underline)
+ { m_underline = underline; }
+ void textSetHidden(bool hidden)
+ { m_hidden = hidden; }
+ void textSetColor(int color)
+ { m_color = color; }
+ void paraSetStyle(int style)
+ { m_style = style; }
+ void paraSetList(int list)
+ { m_list = list; }
+ void paraSetTable(bool inTable)
+ { m_inTbl = inTable; }
+
+protected:
+ bool m_bold;
+ bool m_italic;
+ bool m_strike;
+ bool m_underline;
+ bool m_hidden;
+ int m_color;
+
+ int m_style;
+ int m_list;
+ bool m_inTbl;
+ // TODO: Character styles
+};
+
+#endif // !defined(AFX_RTFTEXTPROPERTIES_H__719D85C9_69D9_4499_BE5E_7A9A7F6F9C38__INCLUDED_)