13#include <QRecursiveMutex>
105 bool isUnderline =
false,
106 QColor fgColor = QColor()) :
134 static constexpr std::array<const uint,4> alpha = { 0xff, 0xff, 0x7f, 0x00, };
141 static constexpr std::array<const uint,4> alpha = { 0xff, 0xff, 0x7f, 0x00, };
147 {
return !(*
this == other); }
156 int offset,
int text_tag,
int font_tag,
157 int edge_type,
int underline,
int italics)
200 void DefineWindow(
int priority,
bool visible,
201 int anchor_point,
int relative_pos,
202 int anchor_vertical,
int anchor_horizontal,
203 int row_count,
int column_count,
204 int row_lock,
int column_lock,
205 int pen_style,
int window_style);
206 void Resize(
uint new_rows,
uint new_columns);
208 void SetWindowStyle(
uint style);
210 void AddChar(QChar ch);
211 void IncrPenLocation(
void);
212 void DecrPenLocation(
void);
213 void SetPenLocation(
uint row,
uint column);
214 void LimitPenLocation(
void);
218 return ((m_pen.m_row < m_true_row_count) &&
219 (m_pen.m_column < m_true_column_count));
222 std::vector<CC708String*> GetStrings(
void)
const;
223 static void DisposeStrings(std::vector<CC708String*> &strings);
227 fill.setAlpha(GetFillAlpha());
233 static constexpr std::array<const uint,4> alpha = { 0xff, 0xff, 0x7f, 0x00, };
234 return alpha[m_fill_opacity & 0x3];
238 void Scroll(
int row,
int col);
243 bool m_visible {
false};
245 enum : std::uint8_t {
246 kAnchorUpperLeft = 0, kAnchorUpperCenter = 1, kAnchorUpperRight = 2,
247 kAnchorCenterLeft = 3, kAnchorCenter = 4, kAnchorCenterRight = 5,
248 kAnchorLowerLeft = 6, kAnchorLowerCenter = 7, kAnchorLowerRight = 8,
283 bool m_exists {
false};
284 bool m_changed {
true};
292 if (m_exists != value)
298 if (m_visible != value)
const uint k708AttrEdgeRightDropShadow
const uint k708AttrFontMonospacedSerif
const uint k708AttrFontProportionalSerif
const uint k708JustifyRight
const uint k708AttrEdgeLeftDropShadow
const uint k708EffectWipe
const uint k708AttrSizeStandard
const uint k708AttrColorBlack
const uint k708AttrOpacitySolid
const uint k708BorderShadowRight
const uint k708AttrOffsetSuperscript
const uint k708AttrOpacityTranslucent
const uint k708AttrEdgeNone
const uint k708BorderShadowLeft
const uint k708AttrEdgeUniform
const uint k708DirLeftToRight
const uint k708DirBottomToTop
const uint k708BorderRaised
const uint k708AttrOffsetSubscript
const uint k708AttrSizeSmall
const uint k708JustifyLeft
const uint k708DirTopToBottom
const uint k708DirRightToLeft
const uint k708AttrOpacityFlash
const uint k708AttrFontCursive
const uint k708AttrFontCasual
const uint k708JustifyFull
const uint k708AttrEdgeDepressed
const uint k708AttrOffsetNormal
const uint k708BorderNone
const uint k708AttrOpacityTransparent
const uint k708AttrFontMonospacedSansSerif
const uint k708JustifyCenter
const uint k708AttrFontSmallCaps
const uint k708AttrFontProportionalSansSerif
const uint k708EffectSnap
const uint k708BorderUniform
const uint k708AttrFontDefault
const uint k708AttrColorWhite
const uint k708AttrSizeLarge
const uint k708AttrEdgeRaised
const uint k708BorderDepressed
const uint k708EffectFade
bool operator==(const CC708CharacterAttribute &other) const
bool operator!=(const CC708CharacterAttribute &other) const
CC708CharacterAttribute(bool isItalic=false, bool isBold=false, bool isUnderline=false, QColor fgColor=QColor())
QColor GetBGColor(void) const
uint GetFGAlpha(void) const
QColor GetEdgeColor(void) const
static QColor ConvertToQColor(uint eia708color)
QColor GetFGColor(void) const
uint GetBGAlpha(void) const
CC708CharacterAttribute m_attr
void SetPenStyle(uint style)
CC708CharacterAttribute m_attr
void SetAttributes(int pen_size, int offset, int text_tag, int font_tag, int edge_type, int underline, int italics)
std::array< CC708Window, k708MaxWindows > m_windows
CC708CharacterAttribute m_attr
void SetVisible(bool value)
bool GetExists(void) const
bool IsPenValid(void) const
bool GetChanged(void) const
QColor GetFillColor(void) const
bool GetVisible(void) const
uint GetFillAlpha(void) const
void SetExists(bool value)