StyleRareInheritedData.h [plain text]
#ifndef StyleRareInheritedData_h
#define StyleRareInheritedData_h
#include "Color.h"
#include "Length.h"
#include <wtf/RefCounted.h>
#include <wtf/PassRefPtr.h>
#include <wtf/text/AtomicString.h>
#if ENABLE(IOS_TEXT_AUTOSIZING)
#include "TextSizeAdjustment.h"
#endif
namespace WebCore {
class CursorList;
class QuotesData;
class ShadowData;
class StyleImage;
class StyleRareInheritedData : public RefCounted<StyleRareInheritedData> {
public:
static PassRef<StyleRareInheritedData> create() { return adoptRef(*new StyleRareInheritedData); }
PassRef<StyleRareInheritedData> copy() const;
~StyleRareInheritedData();
bool operator==(const StyleRareInheritedData& o) const;
bool operator!=(const StyleRareInheritedData& o) const
{
return !(*this == o);
}
bool shadowDataEquivalent(const StyleRareInheritedData&) const;
RefPtr<StyleImage> listStyleImage;
Color textStrokeColor;
float textStrokeWidth;
Color textFillColor;
Color textEmphasisColor;
Color visitedLinkTextStrokeColor;
Color visitedLinkTextFillColor;
Color visitedLinkTextEmphasisColor;
std::unique_ptr<ShadowData> textShadow;
RefPtr<CursorList> cursorData;
Length indent;
float m_effectiveZoom;
Length wordSpacing;
short widows;
short orphans;
unsigned m_hasAutoWidows : 1;
unsigned m_hasAutoOrphans : 1;
unsigned textSecurity : 2; unsigned userModify : 2; unsigned wordBreak : 2; unsigned overflowWrap : 1; unsigned nbspMode : 1; unsigned lineBreak : 3; unsigned resize : 2; unsigned userSelect : 2; unsigned colorSpace : 1; unsigned speak : 3; unsigned hyphens : 2; unsigned textEmphasisFill : 1; unsigned textEmphasisMark : 3; unsigned textEmphasisPosition : 4; unsigned m_textOrientation : 2; #if ENABLE(CSS3_TEXT)
unsigned m_textIndentLine : 1; unsigned m_textIndentType : 1; #endif
unsigned m_lineBoxContain: 7; #if ENABLE(CSS_IMAGE_ORIENTATION)
unsigned m_imageOrientation : 4; #endif
unsigned m_imageRendering : 2; unsigned m_lineSnap : 2; unsigned m_lineAlign : 1; #if ENABLE(ACCELERATED_OVERFLOW_SCROLLING)
unsigned useTouchOverflowScrolling: 1;
#endif
#if ENABLE(CSS_IMAGE_RESOLUTION)
unsigned m_imageResolutionSource : 1; unsigned m_imageResolutionSnap : 1; #endif
#if ENABLE(CSS3_TEXT)
unsigned m_textAlignLast : 3; unsigned m_textJustify : 3; #endif // CSS3_TEXT
unsigned m_textDecorationSkip : 5; unsigned m_textUnderlinePosition : 3; unsigned m_rubyPosition : 1;
#if PLATFORM(IOS)
unsigned touchCalloutEnabled : 1;
#endif
AtomicString hyphenationString;
short hyphenationLimitBefore;
short hyphenationLimitAfter;
short hyphenationLimitLines;
AtomicString locale;
AtomicString textEmphasisCustomMark;
RefPtr<QuotesData> quotes;
AtomicString m_lineGrid;
unsigned m_tabSize;
#if PLATFORM(IOS)
Color compositionFillColor;
#endif
#if ENABLE(IOS_TEXT_AUTOSIZING)
TextSizeAdjustment textSizeAdjust;
#endif
#if ENABLE(CSS_IMAGE_RESOLUTION)
float m_imageResolution;
#endif
#if ENABLE(TOUCH_EVENTS)
Color tapHighlightColor;
#endif
private:
StyleRareInheritedData();
StyleRareInheritedData(const StyleRareInheritedData&);
};
}
#endif // StyleRareInheritedData_h