2001-09-25 05:32:19 +04:00
|
|
|
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
|
|
/* ***** BEGIN LICENSE BLOCK *****
|
2004-04-18 01:52:36 +04:00
|
|
|
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
1998-04-14 00:24:54 +04:00
|
|
|
*
|
2004-04-18 01:52:36 +04:00
|
|
|
* The contents of this file are subject to the Mozilla Public License Version
|
|
|
|
* 1.1 (the "License"); you may not use this file except in compliance with
|
|
|
|
* the License. You may obtain a copy of the License at
|
|
|
|
* http://www.mozilla.org/MPL/
|
1998-04-14 00:24:54 +04:00
|
|
|
*
|
2001-09-25 05:32:19 +04:00
|
|
|
* Software distributed under the License is distributed on an "AS IS" basis,
|
|
|
|
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
|
|
|
* for the specific language governing rights and limitations under the
|
|
|
|
* License.
|
1998-04-14 00:24:54 +04:00
|
|
|
*
|
1999-11-06 06:40:37 +03:00
|
|
|
* The Original Code is mozilla.org code.
|
|
|
|
*
|
2004-04-18 01:52:36 +04:00
|
|
|
* The Initial Developer of the Original Code is
|
2001-09-25 05:32:19 +04:00
|
|
|
* Netscape Communications Corporation.
|
|
|
|
* Portions created by the Initial Developer are Copyright (C) 1998
|
|
|
|
* the Initial Developer. All Rights Reserved.
|
1999-11-06 06:40:37 +03:00
|
|
|
*
|
2001-09-25 05:32:19 +04:00
|
|
|
* Contributor(s):
|
2002-05-21 12:16:42 +04:00
|
|
|
* Daniel Glazman <glazman@netscape.com>
|
2001-09-25 05:32:19 +04:00
|
|
|
*
|
|
|
|
* Alternatively, the contents of this file may be used under the terms of
|
2004-04-18 01:52:36 +04:00
|
|
|
* either of the GNU General Public License Version 2 or later (the "GPL"),
|
|
|
|
* or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
2001-09-25 05:32:19 +04:00
|
|
|
* in which case the provisions of the GPL or the LGPL are applicable instead
|
|
|
|
* of those above. If you wish to allow use of your version of this file only
|
|
|
|
* under the terms of either the GPL or the LGPL, and not to allow others to
|
2004-04-18 01:52:36 +04:00
|
|
|
* use your version of this file under the terms of the MPL, indicate your
|
2001-09-25 05:32:19 +04:00
|
|
|
* decision by deleting the provisions above and replace them with the notice
|
|
|
|
* and other provisions required by the GPL or the LGPL. If you do not delete
|
|
|
|
* the provisions above, a recipient may use your version of this file under
|
2004-04-18 01:52:36 +04:00
|
|
|
* the terms of any one of the MPL, the GPL or the LGPL.
|
2001-09-25 05:32:19 +04:00
|
|
|
*
|
|
|
|
* ***** END LICENSE BLOCK ***** */
|
2006-03-25 08:47:31 +03:00
|
|
|
|
|
|
|
/*
|
|
|
|
* temporary (expanded) representation of the property-value pairs
|
|
|
|
* within a CSS declaration using during parsing and mutation, and
|
|
|
|
* representation of complex values for CSS properties
|
|
|
|
*/
|
|
|
|
|
2003-04-15 07:07:34 +04:00
|
|
|
#ifndef nsCSSStruct_h___
|
|
|
|
#define nsCSSStruct_h___
|
1998-04-14 00:24:54 +04:00
|
|
|
|
1998-10-08 05:34:58 +04:00
|
|
|
#include "nsCSSValue.h"
|
2008-10-01 09:50:52 +04:00
|
|
|
#include "nsStyleConsts.h"
|
1998-04-14 00:24:54 +04:00
|
|
|
|
2008-10-01 09:50:52 +04:00
|
|
|
struct nsCSSCornerSizes {
|
|
|
|
nsCSSCornerSizes(void);
|
|
|
|
nsCSSCornerSizes(const nsCSSCornerSizes& aCopy);
|
|
|
|
~nsCSSCornerSizes();
|
|
|
|
|
|
|
|
// argument is a "full corner" constant from nsStyleConsts.h
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue const & GetCorner(PRUint32 aCorner) const {
|
|
|
|
return this->*corners[aCorner];
|
2008-10-01 09:50:52 +04:00
|
|
|
}
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue & GetCorner(PRUint32 aCorner) {
|
|
|
|
return this->*corners[aCorner];
|
2008-10-01 09:50:52 +04:00
|
|
|
}
|
2010-07-23 22:00:24 +04:00
|
|
|
|
2008-10-01 09:50:52 +04:00
|
|
|
PRBool operator==(const nsCSSCornerSizes& aOther) const {
|
|
|
|
NS_FOR_CSS_FULL_CORNERS(corner) {
|
2010-08-19 23:33:44 +04:00
|
|
|
if (this->GetCorner(corner) != aOther.GetCorner(corner))
|
2008-10-01 09:50:52 +04:00
|
|
|
return PR_FALSE;
|
|
|
|
}
|
|
|
|
return PR_TRUE;
|
|
|
|
}
|
|
|
|
|
|
|
|
PRBool operator!=(const nsCSSCornerSizes& aOther) const {
|
|
|
|
NS_FOR_CSS_FULL_CORNERS(corner) {
|
2010-08-19 23:33:44 +04:00
|
|
|
if (this->GetCorner(corner) != aOther.GetCorner(corner))
|
2008-10-01 09:50:52 +04:00
|
|
|
return PR_TRUE;
|
|
|
|
}
|
|
|
|
return PR_FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
PRBool HasValue() const {
|
|
|
|
NS_FOR_CSS_FULL_CORNERS(corner) {
|
2010-08-19 23:33:44 +04:00
|
|
|
if (this->GetCorner(corner).GetUnit() != eCSSUnit_Null)
|
2008-10-01 09:50:52 +04:00
|
|
|
return PR_TRUE;
|
|
|
|
}
|
|
|
|
return PR_FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
void Reset();
|
|
|
|
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mTopLeft;
|
|
|
|
nsCSSValue mTopRight;
|
|
|
|
nsCSSValue mBottomRight;
|
|
|
|
nsCSSValue mBottomLeft;
|
2008-10-01 09:50:52 +04:00
|
|
|
|
|
|
|
protected:
|
2010-08-19 23:33:44 +04:00
|
|
|
typedef nsCSSValue nsCSSCornerSizes::*corner_type;
|
2008-10-01 09:50:52 +04:00
|
|
|
static const corner_type corners[4];
|
|
|
|
};
|
|
|
|
|
2007-04-16 02:25:20 +04:00
|
|
|
/****************************************************************************/
|
|
|
|
|
|
|
|
struct nsCSSStruct {
|
|
|
|
// EMPTY on purpose. ABSTRACT with no virtuals (typedef void nsCSSStruct?)
|
|
|
|
};
|
|
|
|
|
2010-06-29 02:49:35 +04:00
|
|
|
// We use the nsCSS* structures for storing css::Declaration's
|
2007-04-16 02:25:20 +04:00
|
|
|
// *temporary* data during parsing and modification. (They are too big
|
|
|
|
// for permanent storage.) We also use them for nsRuleData, with some
|
|
|
|
// additions of things that the style system must cascade, but that
|
|
|
|
// aren't CSS properties. Thus we use typedefs and inheritance
|
|
|
|
// (forwards, when the rule data needs extra data) to make the rule data
|
|
|
|
// structs from the declaration structs.
|
|
|
|
// NOTE: For compilation speed, this typedef also appears in nsRuleNode.h
|
|
|
|
typedef nsCSSStruct nsRuleDataStruct;
|
|
|
|
|
|
|
|
|
|
|
|
struct nsCSSFont : public nsCSSStruct {
|
|
|
|
nsCSSFont(void);
|
|
|
|
~nsCSSFont(void);
|
|
|
|
|
2007-06-12 22:28:56 +04:00
|
|
|
nsCSSValue mSystemFont;
|
2007-04-16 02:25:20 +04:00
|
|
|
nsCSSValue mFamily;
|
|
|
|
nsCSSValue mStyle;
|
|
|
|
nsCSSValue mVariant;
|
|
|
|
nsCSSValue mWeight;
|
|
|
|
nsCSSValue mSize;
|
|
|
|
nsCSSValue mSizeAdjust; // NEW
|
|
|
|
nsCSSValue mStretch; // NEW
|
2010-07-14 00:30:42 +04:00
|
|
|
nsCSSValue mFontFeatureSettings;
|
|
|
|
nsCSSValue mFontLanguageOverride;
|
2007-07-04 22:52:27 +04:00
|
|
|
|
2008-01-09 12:38:28 +03:00
|
|
|
#ifdef MOZ_MATHML
|
|
|
|
nsCSSValue mScriptLevel; // Integer values mean "relative", Number values mean "absolute"
|
|
|
|
nsCSSValue mScriptSizeMultiplier;
|
|
|
|
nsCSSValue mScriptMinSize;
|
|
|
|
#endif
|
|
|
|
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSFont(const nsCSSFont& aOther); // NOT IMPLEMENTED
|
2007-04-16 02:25:20 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
struct nsRuleDataFont : public nsCSSFont {
|
|
|
|
PRBool mFamilyFromHTML; // Is the family from an HTML FONT element
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataFont() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataFont(const nsRuleDataFont& aOther); // NOT IMPLEMENTED
|
2007-04-16 02:25:20 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
struct nsCSSColor : public nsCSSStruct {
|
|
|
|
nsCSSColor(void);
|
|
|
|
~nsCSSColor(void);
|
|
|
|
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mColor;
|
|
|
|
nsCSSValue mBackColor;
|
|
|
|
nsCSSValue mBackImage;
|
|
|
|
nsCSSValue mBackRepeat;
|
|
|
|
nsCSSValue mBackAttachment;
|
|
|
|
nsCSSValue mBackPosition;
|
|
|
|
nsCSSValue mBackSize;
|
|
|
|
nsCSSValue mBackClip;
|
|
|
|
nsCSSValue mBackOrigin;
|
|
|
|
nsCSSValue mBackInlinePolicy;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSColor(const nsCSSColor& aOther); // NOT IMPLEMENTED
|
2007-04-16 02:25:20 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
struct nsRuleDataColor : public nsCSSColor {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataColor() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataColor(const nsRuleDataColor& aOther); // NOT IMPLEMENTED
|
2007-04-16 02:25:20 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
struct nsCSSText : public nsCSSStruct {
|
|
|
|
nsCSSText(void);
|
|
|
|
~nsCSSText(void);
|
|
|
|
|
2009-09-27 00:23:47 +04:00
|
|
|
nsCSSValue mTabSize;
|
2007-04-16 02:25:20 +04:00
|
|
|
nsCSSValue mWordSpacing;
|
|
|
|
nsCSSValue mLetterSpacing;
|
|
|
|
nsCSSValue mVerticalAlign;
|
|
|
|
nsCSSValue mTextTransform;
|
|
|
|
nsCSSValue mTextAlign;
|
|
|
|
nsCSSValue mTextIndent;
|
|
|
|
nsCSSValue mDecoration;
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mTextShadow; // NEW
|
2007-04-16 02:25:20 +04:00
|
|
|
nsCSSValue mUnicodeBidi; // NEW
|
|
|
|
nsCSSValue mLineHeight;
|
|
|
|
nsCSSValue mWhiteSpace;
|
2008-07-24 11:16:18 +04:00
|
|
|
nsCSSValue mWordWrap;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSText(const nsCSSText& aOther); // NOT IMPLEMENTED
|
2007-04-16 02:25:20 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
struct nsRuleDataText : public nsCSSText {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataText() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataText(const nsRuleDataText& aOther); // NOT IMPLEMENTED
|
2007-04-16 02:25:20 +04:00
|
|
|
};
|
|
|
|
|
1998-04-25 22:45:22 +04:00
|
|
|
struct nsCSSDisplay : public nsCSSStruct {
|
1998-05-27 03:16:55 +04:00
|
|
|
nsCSSDisplay(void);
|
2002-01-16 01:43:37 +03:00
|
|
|
~nsCSSDisplay(void);
|
1999-02-12 20:45:58 +03:00
|
|
|
|
1998-04-25 22:45:22 +04:00
|
|
|
nsCSSValue mDirection;
|
|
|
|
nsCSSValue mDisplay;
|
2001-06-01 02:19:43 +04:00
|
|
|
nsCSSValue mBinding;
|
2001-12-18 01:51:39 +03:00
|
|
|
nsCSSValue mAppearance;
|
2001-06-01 02:19:43 +04:00
|
|
|
nsCSSValue mPosition;
|
1998-04-25 22:45:22 +04:00
|
|
|
nsCSSValue mFloat;
|
|
|
|
nsCSSValue mClear;
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mClip;
|
2004-09-05 04:04:04 +04:00
|
|
|
nsCSSValue mOverflowX;
|
|
|
|
nsCSSValue mOverflowY;
|
2010-03-19 14:49:33 +03:00
|
|
|
nsCSSValue mResize;
|
2009-08-27 07:53:35 +04:00
|
|
|
nsCSSValue mPointerEvents;
|
1998-05-27 03:16:55 +04:00
|
|
|
nsCSSValue mVisibility;
|
2001-06-01 02:19:43 +04:00
|
|
|
nsCSSValue mOpacity;
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mTransform; // List of Arrays containing transform information
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mTransformOrigin;
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mTransitionProperty;
|
|
|
|
nsCSSValue mTransitionDuration;
|
|
|
|
nsCSSValue mTransitionTimingFunction;
|
|
|
|
nsCSSValue mTransitionDelay;
|
2002-03-26 23:14:05 +03:00
|
|
|
|
2002-03-18 00:35:08 +03:00
|
|
|
// temp fix for bug 24000
|
|
|
|
nsCSSValue mBreakBefore;
|
|
|
|
nsCSSValue mBreakAfter;
|
|
|
|
// end temp fix
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSDisplay(const nsCSSDisplay& aOther); // NOT IMPLEMENTED
|
1998-04-14 00:24:54 +04:00
|
|
|
};
|
|
|
|
|
2002-11-12 18:17:07 +03:00
|
|
|
struct nsRuleDataDisplay : public nsCSSDisplay {
|
|
|
|
nsCSSValue mLang;
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataDisplay() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataDisplay(const nsRuleDataDisplay& aOther); // NOT IMPLEMENTED
|
2002-11-12 18:17:07 +03:00
|
|
|
};
|
|
|
|
|
1998-04-14 00:24:54 +04:00
|
|
|
struct nsCSSMargin : public nsCSSStruct {
|
|
|
|
nsCSSMargin(void);
|
2002-01-16 01:43:37 +03:00
|
|
|
~nsCSSMargin(void);
|
1999-02-12 20:45:58 +03:00
|
|
|
|
2003-06-08 02:14:42 +04:00
|
|
|
nsCSSRect mMargin;
|
2004-02-04 09:10:56 +03:00
|
|
|
nsCSSValue mMarginStart;
|
|
|
|
nsCSSValue mMarginEnd;
|
|
|
|
nsCSSValue mMarginLeftLTRSource;
|
|
|
|
nsCSSValue mMarginLeftRTLSource;
|
|
|
|
nsCSSValue mMarginRightLTRSource;
|
|
|
|
nsCSSValue mMarginRightRTLSource;
|
2003-06-08 02:14:42 +04:00
|
|
|
nsCSSRect mPadding;
|
2004-02-04 09:10:56 +03:00
|
|
|
nsCSSValue mPaddingStart;
|
|
|
|
nsCSSValue mPaddingEnd;
|
|
|
|
nsCSSValue mPaddingLeftLTRSource;
|
|
|
|
nsCSSValue mPaddingLeftRTLSource;
|
|
|
|
nsCSSValue mPaddingRightLTRSource;
|
|
|
|
nsCSSValue mPaddingRightRTLSource;
|
2003-06-08 02:14:42 +04:00
|
|
|
nsCSSRect mBorderWidth;
|
2007-07-04 22:51:16 +04:00
|
|
|
nsCSSValue mBorderStartWidth;
|
|
|
|
nsCSSValue mBorderEndWidth;
|
|
|
|
nsCSSValue mBorderLeftWidthLTRSource;
|
|
|
|
nsCSSValue mBorderLeftWidthRTLSource;
|
|
|
|
nsCSSValue mBorderRightWidthLTRSource;
|
|
|
|
nsCSSValue mBorderRightWidthRTLSource;
|
2003-06-08 02:14:42 +04:00
|
|
|
nsCSSRect mBorderColor;
|
2007-07-04 22:51:16 +04:00
|
|
|
nsCSSValue mBorderStartColor;
|
|
|
|
nsCSSValue mBorderEndColor;
|
|
|
|
nsCSSValue mBorderLeftColorLTRSource;
|
|
|
|
nsCSSValue mBorderLeftColorRTLSource;
|
|
|
|
nsCSSValue mBorderRightColorLTRSource;
|
|
|
|
nsCSSValue mBorderRightColorRTLSource;
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSRect mBorderColors;
|
2003-06-08 02:14:42 +04:00
|
|
|
nsCSSRect mBorderStyle;
|
2007-07-04 22:51:16 +04:00
|
|
|
nsCSSValue mBorderStartStyle;
|
|
|
|
nsCSSValue mBorderEndStyle;
|
|
|
|
nsCSSValue mBorderLeftStyleLTRSource;
|
|
|
|
nsCSSValue mBorderLeftStyleRTLSource;
|
|
|
|
nsCSSValue mBorderRightStyleLTRSource;
|
|
|
|
nsCSSValue mBorderRightStyleRTLSource;
|
2008-10-01 09:50:52 +04:00
|
|
|
nsCSSCornerSizes mBorderRadius;
|
1999-07-24 23:04:42 +04:00
|
|
|
nsCSSValue mOutlineWidth;
|
|
|
|
nsCSSValue mOutlineColor;
|
|
|
|
nsCSSValue mOutlineStyle;
|
2004-10-26 16:57:15 +04:00
|
|
|
nsCSSValue mOutlineOffset;
|
2008-10-01 09:50:52 +04:00
|
|
|
nsCSSCornerSizes mOutlineRadius;
|
1999-07-24 23:04:42 +04:00
|
|
|
nsCSSValue mFloatEdge; // NEW
|
2008-07-17 10:30:25 +04:00
|
|
|
nsCSSValue mBorderImage;
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mBoxShadow;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSMargin(const nsCSSMargin& aOther); // NOT IMPLEMENTED
|
1998-04-14 00:24:54 +04:00
|
|
|
};
|
|
|
|
|
2002-11-12 18:17:07 +03:00
|
|
|
struct nsRuleDataMargin : public nsCSSMargin {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataMargin() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataMargin(const nsRuleDataMargin& aOther); // NOT IMPLEMENTED
|
2002-11-12 18:17:07 +03:00
|
|
|
};
|
|
|
|
|
1998-04-14 00:24:54 +04:00
|
|
|
struct nsCSSPosition : public nsCSSStruct {
|
1998-10-08 05:34:58 +04:00
|
|
|
nsCSSPosition(void);
|
2002-01-16 01:43:37 +03:00
|
|
|
~nsCSSPosition(void);
|
1999-02-12 20:45:58 +03:00
|
|
|
|
1998-04-14 00:24:54 +04:00
|
|
|
nsCSSValue mWidth;
|
1999-07-24 23:04:42 +04:00
|
|
|
nsCSSValue mMinWidth;
|
|
|
|
nsCSSValue mMaxWidth;
|
1998-04-14 00:24:54 +04:00
|
|
|
nsCSSValue mHeight;
|
1999-07-24 23:04:42 +04:00
|
|
|
nsCSSValue mMinHeight;
|
|
|
|
nsCSSValue mMaxHeight;
|
|
|
|
nsCSSValue mBoxSizing; // NEW
|
2003-06-08 02:14:42 +04:00
|
|
|
nsCSSRect mOffset;
|
1998-04-14 00:24:54 +04:00
|
|
|
nsCSSValue mZIndex;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSPosition(const nsCSSPosition& aOther); // NOT IMPLEMENTED
|
1998-04-14 00:24:54 +04:00
|
|
|
};
|
|
|
|
|
2002-11-12 18:17:07 +03:00
|
|
|
struct nsRuleDataPosition : public nsCSSPosition {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataPosition() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataPosition(const nsRuleDataPosition& aOther); // NOT IMPLEMENTED
|
2002-11-12 18:17:07 +03:00
|
|
|
};
|
|
|
|
|
1998-04-14 00:24:54 +04:00
|
|
|
struct nsCSSList : public nsCSSStruct {
|
1999-06-03 05:58:11 +04:00
|
|
|
nsCSSList(void);
|
2002-01-16 01:43:37 +03:00
|
|
|
~nsCSSList(void);
|
1999-02-12 20:45:58 +03:00
|
|
|
|
1998-04-14 00:24:54 +04:00
|
|
|
nsCSSValue mType;
|
|
|
|
nsCSSValue mImage;
|
|
|
|
nsCSSValue mPosition;
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mImageRegion;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSList(const nsCSSList& aOther); // NOT IMPLEMENTED
|
1998-04-14 00:24:54 +04:00
|
|
|
};
|
|
|
|
|
2002-11-12 18:17:07 +03:00
|
|
|
struct nsRuleDataList : public nsCSSList {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataList() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataList(const nsRuleDataList& aOther); // NOT IMPLEMENTED
|
2002-11-12 18:17:07 +03:00
|
|
|
};
|
|
|
|
|
1998-10-08 05:34:58 +04:00
|
|
|
struct nsCSSTable : public nsCSSStruct { // NEW
|
1999-06-03 05:58:11 +04:00
|
|
|
nsCSSTable(void);
|
2002-01-16 01:43:37 +03:00
|
|
|
~nsCSSTable(void);
|
1999-02-12 20:45:58 +03:00
|
|
|
|
1998-10-08 05:34:58 +04:00
|
|
|
nsCSSValue mBorderCollapse;
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mBorderSpacing;
|
1998-10-08 05:34:58 +04:00
|
|
|
nsCSSValue mCaptionSide;
|
|
|
|
nsCSSValue mEmptyCells;
|
2001-06-01 02:19:43 +04:00
|
|
|
|
1998-10-08 05:34:58 +04:00
|
|
|
nsCSSValue mLayout;
|
2001-06-01 02:19:43 +04:00
|
|
|
nsCSSValue mSpan; // Not mappable via CSS, only using HTML4 table attrs.
|
|
|
|
nsCSSValue mCols; // Not mappable via CSS, only using HTML4 table attrs.
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSTable(const nsCSSTable& aOther); // NOT IMPLEMENTED
|
1998-10-08 05:34:58 +04:00
|
|
|
};
|
|
|
|
|
2002-11-12 18:17:07 +03:00
|
|
|
struct nsRuleDataTable : public nsCSSTable {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataTable() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataTable(const nsRuleDataTable& aOther); // NOT IMPLEMENTED
|
2002-11-12 18:17:07 +03:00
|
|
|
};
|
|
|
|
|
1998-10-08 05:34:58 +04:00
|
|
|
struct nsCSSBreaks : public nsCSSStruct { // NEW
|
1999-06-03 05:58:11 +04:00
|
|
|
nsCSSBreaks(void);
|
2002-01-16 01:43:37 +03:00
|
|
|
~nsCSSBreaks(void);
|
1999-02-12 20:45:58 +03:00
|
|
|
|
1998-10-08 05:34:58 +04:00
|
|
|
nsCSSValue mOrphans;
|
|
|
|
nsCSSValue mWidows;
|
|
|
|
nsCSSValue mPage;
|
2003-06-08 02:14:42 +04:00
|
|
|
// temp fix for bug 24000
|
|
|
|
//nsCSSValue mPageBreakAfter;
|
|
|
|
//nsCSSValue mPageBreakBefore;
|
1998-10-08 05:34:58 +04:00
|
|
|
nsCSSValue mPageBreakInside;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSBreaks(const nsCSSBreaks& aOther); // NOT IMPLEMENTED
|
1998-10-08 05:34:58 +04:00
|
|
|
};
|
|
|
|
|
2002-11-12 18:17:07 +03:00
|
|
|
struct nsRuleDataBreaks : public nsCSSBreaks {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataBreaks() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataBreaks(const nsRuleDataBreaks& aOther); // NOT IMPLEMENTED
|
2002-11-12 18:17:07 +03:00
|
|
|
};
|
|
|
|
|
1998-10-08 05:34:58 +04:00
|
|
|
struct nsCSSPage : public nsCSSStruct { // NEW
|
1999-06-03 05:58:11 +04:00
|
|
|
nsCSSPage(void);
|
2002-01-16 01:43:37 +03:00
|
|
|
~nsCSSPage(void);
|
1999-02-12 20:45:58 +03:00
|
|
|
|
1998-10-08 05:34:58 +04:00
|
|
|
nsCSSValue mMarks;
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mSize;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSPage(const nsCSSPage& aOther); // NOT IMPLEMENTED
|
1998-10-27 02:22:40 +03:00
|
|
|
};
|
|
|
|
|
2002-11-12 18:17:07 +03:00
|
|
|
struct nsRuleDataPage : public nsCSSPage {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataPage() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataPage(const nsRuleDataPage& aOther); // NOT IMPLEMENTED
|
2002-11-12 18:17:07 +03:00
|
|
|
};
|
|
|
|
|
1999-07-24 23:04:42 +04:00
|
|
|
struct nsCSSContent : public nsCSSStruct {
|
1998-10-27 02:22:40 +03:00
|
|
|
nsCSSContent(void);
|
2002-01-16 01:43:37 +03:00
|
|
|
~nsCSSContent(void);
|
1999-02-12 20:45:58 +03:00
|
|
|
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mContent;
|
|
|
|
nsCSSValue mCounterIncrement;
|
|
|
|
nsCSSValue mCounterReset;
|
|
|
|
nsCSSValue mMarkerOffset;
|
|
|
|
nsCSSValue mQuotes;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSContent(const nsCSSContent& aOther); // NOT IMPLEMENTED
|
1998-10-08 05:34:58 +04:00
|
|
|
};
|
|
|
|
|
2002-11-12 18:17:07 +03:00
|
|
|
struct nsRuleDataContent : public nsCSSContent {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataContent() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataContent(const nsRuleDataContent& aOther); // NOT IMPLEMENTED
|
2002-11-12 18:17:07 +03:00
|
|
|
};
|
|
|
|
|
1999-07-24 23:04:42 +04:00
|
|
|
struct nsCSSUserInterface : public nsCSSStruct { // NEW
|
|
|
|
nsCSSUserInterface(void);
|
2002-01-16 01:43:37 +03:00
|
|
|
~nsCSSUserInterface(void);
|
1999-07-24 23:04:42 +04:00
|
|
|
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mUserInput;
|
|
|
|
nsCSSValue mUserModify;
|
|
|
|
nsCSSValue mUserSelect;
|
|
|
|
nsCSSValue mUserFocus;
|
|
|
|
|
|
|
|
nsCSSValue mCursor;
|
|
|
|
nsCSSValue mForceBrokenImageIcon;
|
|
|
|
nsCSSValue mIMEMode;
|
|
|
|
nsCSSValue mWindowShadow;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSUserInterface(const nsCSSUserInterface& aOther); // NOT IMPLEMENTED
|
1999-07-24 23:04:42 +04:00
|
|
|
};
|
|
|
|
|
2002-11-12 18:17:07 +03:00
|
|
|
struct nsRuleDataUserInterface : public nsCSSUserInterface {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataUserInterface() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataUserInterface(const nsRuleDataUserInterface& aOther); // NOT IMPLEMENTED
|
2002-11-12 18:17:07 +03:00
|
|
|
};
|
|
|
|
|
1998-10-08 05:34:58 +04:00
|
|
|
struct nsCSSAural : public nsCSSStruct { // NEW
|
1999-06-03 05:58:11 +04:00
|
|
|
nsCSSAural(void);
|
2002-01-16 01:43:37 +03:00
|
|
|
~nsCSSAural(void);
|
1999-02-12 20:45:58 +03:00
|
|
|
|
1998-10-08 05:34:58 +04:00
|
|
|
nsCSSValue mAzimuth;
|
|
|
|
nsCSSValue mElevation;
|
|
|
|
nsCSSValue mCueAfter;
|
|
|
|
nsCSSValue mCueBefore;
|
|
|
|
nsCSSValue mPauseAfter;
|
|
|
|
nsCSSValue mPauseBefore;
|
|
|
|
nsCSSValue mPitch;
|
|
|
|
nsCSSValue mPitchRange;
|
|
|
|
nsCSSValue mRichness;
|
|
|
|
nsCSSValue mSpeak;
|
|
|
|
nsCSSValue mSpeakHeader;
|
|
|
|
nsCSSValue mSpeakNumeral;
|
|
|
|
nsCSSValue mSpeakPunctuation;
|
|
|
|
nsCSSValue mSpeechRate;
|
|
|
|
nsCSSValue mStress;
|
|
|
|
nsCSSValue mVoiceFamily;
|
|
|
|
nsCSSValue mVolume;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSAural(const nsCSSAural& aOther); // NOT IMPLEMENTED
|
1998-10-08 05:34:58 +04:00
|
|
|
};
|
1998-04-14 00:24:54 +04:00
|
|
|
|
2002-11-12 18:17:07 +03:00
|
|
|
struct nsRuleDataAural : public nsCSSAural {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataAural() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataAural(const nsRuleDataAural& aOther); // NOT IMPLEMENTED
|
2002-11-12 18:17:07 +03:00
|
|
|
};
|
|
|
|
|
2001-03-06 05:30:30 +03:00
|
|
|
struct nsCSSXUL : public nsCSSStruct {
|
|
|
|
nsCSSXUL(void);
|
2002-01-16 01:43:37 +03:00
|
|
|
~nsCSSXUL(void);
|
2001-03-06 05:30:30 +03:00
|
|
|
|
2001-08-02 04:09:27 +04:00
|
|
|
nsCSSValue mBoxAlign;
|
|
|
|
nsCSSValue mBoxDirection;
|
|
|
|
nsCSSValue mBoxFlex;
|
2001-03-06 05:30:30 +03:00
|
|
|
nsCSSValue mBoxOrient;
|
2001-08-02 04:09:27 +04:00
|
|
|
nsCSSValue mBoxPack;
|
2001-09-26 02:17:00 +04:00
|
|
|
nsCSSValue mBoxOrdinal;
|
2008-06-05 10:46:24 +04:00
|
|
|
nsCSSValue mStackSizing;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSXUL(const nsCSSXUL& aOther); // NOT IMPLEMENTED
|
2001-03-06 05:30:30 +03:00
|
|
|
};
|
2002-11-12 18:17:07 +03:00
|
|
|
|
|
|
|
struct nsRuleDataXUL : public nsCSSXUL {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataXUL() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataXUL(const nsRuleDataXUL& aOther); // NOT IMPLEMENTED
|
2002-11-12 18:17:07 +03:00
|
|
|
};
|
2001-03-06 05:30:30 +03:00
|
|
|
|
2004-06-17 15:57:37 +04:00
|
|
|
struct nsCSSColumn : public nsCSSStruct {
|
|
|
|
nsCSSColumn(void);
|
|
|
|
~nsCSSColumn(void);
|
|
|
|
|
|
|
|
nsCSSValue mColumnCount;
|
|
|
|
nsCSSValue mColumnWidth;
|
2004-07-18 16:12:46 +04:00
|
|
|
nsCSSValue mColumnGap;
|
2008-07-19 14:38:25 +04:00
|
|
|
nsCSSValue mColumnRuleColor;
|
|
|
|
nsCSSValue mColumnRuleWidth;
|
|
|
|
nsCSSValue mColumnRuleStyle;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSColumn(const nsCSSColumn& aOther); // NOT IMPLEMENTED
|
2004-06-17 15:57:37 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
struct nsRuleDataColumn : public nsCSSColumn {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataColumn() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataColumn(const nsRuleDataColumn& aOther); // NOT IMPLEMENTED
|
2004-06-17 15:57:37 +04:00
|
|
|
};
|
|
|
|
|
2001-12-12 10:59:31 +03:00
|
|
|
struct nsCSSSVG : public nsCSSStruct {
|
|
|
|
nsCSSSVG(void);
|
2002-01-16 01:43:37 +03:00
|
|
|
~nsCSSSVG(void);
|
2001-12-12 10:59:31 +03:00
|
|
|
|
2005-01-25 06:55:03 +03:00
|
|
|
nsCSSValue mClipPath;
|
|
|
|
nsCSSValue mClipRule;
|
2007-01-30 16:19:55 +03:00
|
|
|
nsCSSValue mColorInterpolation;
|
|
|
|
nsCSSValue mColorInterpolationFilters;
|
Landing of SVG_20020806_BRANCH, Bug 182533. Refactoring of SVG backend, new GDI+ and Libart rendering
backends, text support on Windows (GDI+), rudimentary text support on Linux (libart/freetype2), presentation
attributes, lots of bug fixes (see bug 182533 for dependency list).
Not part of default build; code is #ifdef'ed out.
r=sicking, sr=jst for dom and htmlparser changes
r=bsmedberg, sr=tor for config changes
r=dbaron, sr=bzbarsky for content and layout changes
r=tor, sr=bzbarsky for gfx changes
2004-02-07 15:39:26 +03:00
|
|
|
nsCSSValue mDominantBaseline;
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mFill;
|
2001-12-12 10:59:31 +03:00
|
|
|
nsCSSValue mFillOpacity;
|
|
|
|
nsCSSValue mFillRule;
|
2005-09-07 02:30:40 +04:00
|
|
|
nsCSSValue mFilter;
|
2007-01-08 19:48:56 +03:00
|
|
|
nsCSSValue mFloodColor;
|
|
|
|
nsCSSValue mFloodOpacity;
|
2009-03-21 18:36:38 +03:00
|
|
|
nsCSSValue mImageRendering;
|
2007-07-26 10:57:42 +04:00
|
|
|
nsCSSValue mLightingColor;
|
2004-12-09 06:16:15 +03:00
|
|
|
nsCSSValue mMarkerEnd;
|
|
|
|
nsCSSValue mMarkerMid;
|
|
|
|
nsCSSValue mMarkerStart;
|
2006-01-20 20:00:43 +03:00
|
|
|
nsCSSValue mMask;
|
Landing of SVG_20020806_BRANCH, Bug 182533. Refactoring of SVG backend, new GDI+ and Libart rendering
backends, text support on Windows (GDI+), rudimentary text support on Linux (libart/freetype2), presentation
attributes, lots of bug fixes (see bug 182533 for dependency list).
Not part of default build; code is #ifdef'ed out.
r=sicking, sr=jst for dom and htmlparser changes
r=bsmedberg, sr=tor for config changes
r=dbaron, sr=bzbarsky for content and layout changes
r=tor, sr=bzbarsky for gfx changes
2004-02-07 15:39:26 +03:00
|
|
|
nsCSSValue mShapeRendering;
|
2004-10-15 03:02:53 +04:00
|
|
|
nsCSSValue mStopColor;
|
|
|
|
nsCSSValue mStopOpacity;
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mStroke;
|
2010-08-19 23:33:44 +04:00
|
|
|
nsCSSValue mStrokeDasharray;
|
2001-12-12 10:59:31 +03:00
|
|
|
nsCSSValue mStrokeDashoffset;
|
|
|
|
nsCSSValue mStrokeLinecap;
|
|
|
|
nsCSSValue mStrokeLinejoin;
|
|
|
|
nsCSSValue mStrokeMiterlimit;
|
|
|
|
nsCSSValue mStrokeOpacity;
|
|
|
|
nsCSSValue mStrokeWidth;
|
Landing of SVG_20020806_BRANCH, Bug 182533. Refactoring of SVG backend, new GDI+ and Libart rendering
backends, text support on Windows (GDI+), rudimentary text support on Linux (libart/freetype2), presentation
attributes, lots of bug fixes (see bug 182533 for dependency list).
Not part of default build; code is #ifdef'ed out.
r=sicking, sr=jst for dom and htmlparser changes
r=bsmedberg, sr=tor for config changes
r=dbaron, sr=bzbarsky for content and layout changes
r=tor, sr=bzbarsky for gfx changes
2004-02-07 15:39:26 +03:00
|
|
|
nsCSSValue mTextAnchor;
|
|
|
|
nsCSSValue mTextRendering;
|
2007-07-04 22:52:27 +04:00
|
|
|
private:
|
|
|
|
nsCSSSVG(const nsCSSSVG& aOther); // NOT IMPLEMENTED
|
2001-12-12 10:59:31 +03:00
|
|
|
};
|
2002-11-12 18:17:07 +03:00
|
|
|
|
|
|
|
struct nsRuleDataSVG : public nsCSSSVG {
|
2007-07-04 22:52:27 +04:00
|
|
|
nsRuleDataSVG() {}
|
|
|
|
private:
|
|
|
|
nsRuleDataSVG(const nsRuleDataSVG& aOther); // NOT IMPLEMENTED
|
2002-11-12 18:17:07 +03:00
|
|
|
};
|
2001-12-12 10:59:31 +03:00
|
|
|
|
2003-04-15 07:07:34 +04:00
|
|
|
#endif /* nsCSSStruct_h___ */
|