added -moz-border-radius

This commit is contained in:
peterl%netscape.com 1999-04-03 03:15:01 +00:00
parent dc3a70b347
commit f0b7fcff54
18 changed files with 1941 additions and 1848 deletions

View File

@ -341,6 +341,7 @@ void nsCSSMargin::List(FILE* out, PRInt32 aIndent) const
for (PRInt32 index = aIndent; --index >= 0; ) fputs(" ", out);
nsAutoString buffer;
mBorderRadius.AppendToString(buffer, PROP__MOZ_BORDER_RADIUS);
mOutlineWidth.AppendToString(buffer, PROP_OUTLINE_WIDTH);
mOutlineColor.AppendToString(buffer, PROP_OUTLINE_COLOR);
mOutlineStyle.AppendToString(buffer, PROP_OUTLINE_STYLE);
@ -1036,14 +1037,16 @@ CSSDeclarationImpl::AppendValue(PRInt32 aProperty, const nsCSSValue& aValue)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
CSS_ENSURE(Margin) {
switch (aProperty) {
case PROP_OUTLINE_WIDTH: mMargin->mOutlineWidth = aValue; break;
case PROP_OUTLINE_COLOR: mMargin->mOutlineColor = aValue; break;
case PROP_OUTLINE_STYLE: mMargin->mOutlineStyle = aValue; break;
case PROP__MOZ_BORDER_RADIUS: mMargin->mBorderRadius = aValue; break;
case PROP_OUTLINE_WIDTH: mMargin->mOutlineWidth = aValue; break;
case PROP_OUTLINE_COLOR: mMargin->mOutlineColor = aValue; break;
case PROP_OUTLINE_STYLE: mMargin->mOutlineStyle = aValue; break;
}
}
break;
@ -1634,15 +1637,17 @@ CSSDeclarationImpl::SetValueImportant(PRInt32 aProperty)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
if (nsnull != mMargin) {
CSS_ENSURE_IMPORTANT(Margin) {
switch (aProperty) {
CSS_CASE_IMPORTANT(PROP_OUTLINE_WIDTH, mMargin->mOutlineWidth);
CSS_CASE_IMPORTANT(PROP_OUTLINE_COLOR, mMargin->mOutlineColor);
CSS_CASE_IMPORTANT(PROP_OUTLINE_STYLE, mMargin->mOutlineStyle);
CSS_CASE_IMPORTANT(PROP__MOZ_BORDER_RADIUS, mMargin->mBorderRadius);
CSS_CASE_IMPORTANT(PROP_OUTLINE_WIDTH, mMargin->mOutlineWidth);
CSS_CASE_IMPORTANT(PROP_OUTLINE_COLOR, mMargin->mOutlineColor);
CSS_CASE_IMPORTANT(PROP_OUTLINE_STYLE, mMargin->mOutlineStyle);
}
}
}
@ -2257,14 +2262,16 @@ CSSDeclarationImpl::GetValue(PRInt32 aProperty, nsCSSValue& aValue)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
if (nsnull != mMargin) {
switch (aProperty) {
case PROP_OUTLINE_WIDTH: aValue = mMargin->mOutlineWidth; break;
case PROP_OUTLINE_COLOR: aValue = mMargin->mOutlineColor; break;
case PROP_OUTLINE_STYLE: aValue = mMargin->mOutlineStyle; break;
case PROP__MOZ_BORDER_RADIUS: aValue = mMargin->mBorderRadius; break;
case PROP_OUTLINE_WIDTH: aValue = mMargin->mOutlineWidth; break;
case PROP_OUTLINE_COLOR: aValue = mMargin->mOutlineColor; break;
case PROP_OUTLINE_STYLE: aValue = mMargin->mOutlineStyle; break;
}
}
else {

View File

@ -2297,6 +2297,8 @@ PRBool CSSParserImpl::ParseSingleValueProperty(PRInt32& aErrorCode,
case PROP_BORDER_TOP_WIDTH:
return ParseVariant(aErrorCode, aValue, VARIANT_HKL,
nsCSSProps::kBorderWidthKTable);
case PROP__MOZ_BORDER_RADIUS:
return ParseVariant(aErrorCode, aValue, VARIANT_HLP, nsnull);
case PROP_BOTTOM:
case PROP_TOP:
case PROP_LEFT:

View File

@ -341,6 +341,7 @@ void nsCSSMargin::List(FILE* out, PRInt32 aIndent) const
for (PRInt32 index = aIndent; --index >= 0; ) fputs(" ", out);
nsAutoString buffer;
mBorderRadius.AppendToString(buffer, PROP__MOZ_BORDER_RADIUS);
mOutlineWidth.AppendToString(buffer, PROP_OUTLINE_WIDTH);
mOutlineColor.AppendToString(buffer, PROP_OUTLINE_COLOR);
mOutlineStyle.AppendToString(buffer, PROP_OUTLINE_STYLE);
@ -1036,14 +1037,16 @@ CSSDeclarationImpl::AppendValue(PRInt32 aProperty, const nsCSSValue& aValue)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
CSS_ENSURE(Margin) {
switch (aProperty) {
case PROP_OUTLINE_WIDTH: mMargin->mOutlineWidth = aValue; break;
case PROP_OUTLINE_COLOR: mMargin->mOutlineColor = aValue; break;
case PROP_OUTLINE_STYLE: mMargin->mOutlineStyle = aValue; break;
case PROP__MOZ_BORDER_RADIUS: mMargin->mBorderRadius = aValue; break;
case PROP_OUTLINE_WIDTH: mMargin->mOutlineWidth = aValue; break;
case PROP_OUTLINE_COLOR: mMargin->mOutlineColor = aValue; break;
case PROP_OUTLINE_STYLE: mMargin->mOutlineStyle = aValue; break;
}
}
break;
@ -1634,15 +1637,17 @@ CSSDeclarationImpl::SetValueImportant(PRInt32 aProperty)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
if (nsnull != mMargin) {
CSS_ENSURE_IMPORTANT(Margin) {
switch (aProperty) {
CSS_CASE_IMPORTANT(PROP_OUTLINE_WIDTH, mMargin->mOutlineWidth);
CSS_CASE_IMPORTANT(PROP_OUTLINE_COLOR, mMargin->mOutlineColor);
CSS_CASE_IMPORTANT(PROP_OUTLINE_STYLE, mMargin->mOutlineStyle);
CSS_CASE_IMPORTANT(PROP__MOZ_BORDER_RADIUS, mMargin->mBorderRadius);
CSS_CASE_IMPORTANT(PROP_OUTLINE_WIDTH, mMargin->mOutlineWidth);
CSS_CASE_IMPORTANT(PROP_OUTLINE_COLOR, mMargin->mOutlineColor);
CSS_CASE_IMPORTANT(PROP_OUTLINE_STYLE, mMargin->mOutlineStyle);
}
}
}
@ -2257,14 +2262,16 @@ CSSDeclarationImpl::GetValue(PRInt32 aProperty, nsCSSValue& aValue)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
if (nsnull != mMargin) {
switch (aProperty) {
case PROP_OUTLINE_WIDTH: aValue = mMargin->mOutlineWidth; break;
case PROP_OUTLINE_COLOR: aValue = mMargin->mOutlineColor; break;
case PROP_OUTLINE_STYLE: aValue = mMargin->mOutlineStyle; break;
case PROP__MOZ_BORDER_RADIUS: aValue = mMargin->mBorderRadius; break;
case PROP_OUTLINE_WIDTH: aValue = mMargin->mOutlineWidth; break;
case PROP_OUTLINE_COLOR: aValue = mMargin->mOutlineColor; break;
case PROP_OUTLINE_STYLE: aValue = mMargin->mOutlineStyle; break;
}
}
else {

View File

@ -1866,6 +1866,11 @@ void MapDeclarationInto(nsICSSDeclaration* aDeclaration,
}
}
// -moz-border-radius: length, inherit
if (! SetCoord(ourMargin->mBorderRadius, spacing->mBorderRadius,
SETCOORD_LPH, font, aPresContext)) {
}
// outline-width: length, enum, inherit
if (! SetCoord(ourMargin->mOutlineWidth, spacing->mOutlineWidth,
SETCOORD_LE, font, aPresContext)) {

View File

@ -198,6 +198,7 @@ struct nsCSSMargin : public nsCSSStruct {
nsCSSRect* mBorderWidth; // CHANGED
nsCSSRect* mBorderColor; // CHANGED
nsCSSRect* mBorderStyle; // CHANGED
nsCSSValue mBorderRadius; // NEW (extension)
nsCSSValue mOutlineWidth; // NEW
nsCSSValue mOutlineColor; // NEW
nsCSSValue mOutlineStyle; // NEW

File diff suppressed because it is too large Load Diff

View File

@ -341,6 +341,7 @@ void nsCSSMargin::List(FILE* out, PRInt32 aIndent) const
for (PRInt32 index = aIndent; --index >= 0; ) fputs(" ", out);
nsAutoString buffer;
mBorderRadius.AppendToString(buffer, PROP__MOZ_BORDER_RADIUS);
mOutlineWidth.AppendToString(buffer, PROP_OUTLINE_WIDTH);
mOutlineColor.AppendToString(buffer, PROP_OUTLINE_COLOR);
mOutlineStyle.AppendToString(buffer, PROP_OUTLINE_STYLE);
@ -1036,14 +1037,16 @@ CSSDeclarationImpl::AppendValue(PRInt32 aProperty, const nsCSSValue& aValue)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
CSS_ENSURE(Margin) {
switch (aProperty) {
case PROP_OUTLINE_WIDTH: mMargin->mOutlineWidth = aValue; break;
case PROP_OUTLINE_COLOR: mMargin->mOutlineColor = aValue; break;
case PROP_OUTLINE_STYLE: mMargin->mOutlineStyle = aValue; break;
case PROP__MOZ_BORDER_RADIUS: mMargin->mBorderRadius = aValue; break;
case PROP_OUTLINE_WIDTH: mMargin->mOutlineWidth = aValue; break;
case PROP_OUTLINE_COLOR: mMargin->mOutlineColor = aValue; break;
case PROP_OUTLINE_STYLE: mMargin->mOutlineStyle = aValue; break;
}
}
break;
@ -1634,15 +1637,17 @@ CSSDeclarationImpl::SetValueImportant(PRInt32 aProperty)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
if (nsnull != mMargin) {
CSS_ENSURE_IMPORTANT(Margin) {
switch (aProperty) {
CSS_CASE_IMPORTANT(PROP_OUTLINE_WIDTH, mMargin->mOutlineWidth);
CSS_CASE_IMPORTANT(PROP_OUTLINE_COLOR, mMargin->mOutlineColor);
CSS_CASE_IMPORTANT(PROP_OUTLINE_STYLE, mMargin->mOutlineStyle);
CSS_CASE_IMPORTANT(PROP__MOZ_BORDER_RADIUS, mMargin->mBorderRadius);
CSS_CASE_IMPORTANT(PROP_OUTLINE_WIDTH, mMargin->mOutlineWidth);
CSS_CASE_IMPORTANT(PROP_OUTLINE_COLOR, mMargin->mOutlineColor);
CSS_CASE_IMPORTANT(PROP_OUTLINE_STYLE, mMargin->mOutlineStyle);
}
}
}
@ -2257,14 +2262,16 @@ CSSDeclarationImpl::GetValue(PRInt32 aProperty, nsCSSValue& aValue)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
if (nsnull != mMargin) {
switch (aProperty) {
case PROP_OUTLINE_WIDTH: aValue = mMargin->mOutlineWidth; break;
case PROP_OUTLINE_COLOR: aValue = mMargin->mOutlineColor; break;
case PROP_OUTLINE_STYLE: aValue = mMargin->mOutlineStyle; break;
case PROP__MOZ_BORDER_RADIUS: aValue = mMargin->mBorderRadius; break;
case PROP_OUTLINE_WIDTH: aValue = mMargin->mOutlineWidth; break;
case PROP_OUTLINE_COLOR: aValue = mMargin->mOutlineColor; break;
case PROP_OUTLINE_STYLE: aValue = mMargin->mOutlineStyle; break;
}
}
else {

View File

@ -2297,6 +2297,8 @@ PRBool CSSParserImpl::ParseSingleValueProperty(PRInt32& aErrorCode,
case PROP_BORDER_TOP_WIDTH:
return ParseVariant(aErrorCode, aValue, VARIANT_HKL,
nsCSSProps::kBorderWidthKTable);
case PROP__MOZ_BORDER_RADIUS:
return ParseVariant(aErrorCode, aValue, VARIANT_HLP, nsnull);
case PROP_BOTTOM:
case PROP_TOP:
case PROP_LEFT:

View File

@ -1,144 +1,145 @@
/* Do not edit - generated by ./genhash.pl */
#define PROP_AZIMUTH 0
#define PROP_BACKGROUND 1
#define PROP_BACKGROUND_ATTACHMENT 2
#define PROP_BACKGROUND_COLOR 3
#define PROP_BACKGROUND_FILTER 4
#define PROP_BACKGROUND_IMAGE 5
#define PROP_BACKGROUND_POSITION 6
#define PROP_BACKGROUND_REPEAT 7
#define PROP_BACKGROUND_X_POSITION 8
#define PROP_BACKGROUND_Y_POSITION 9
#define PROP_BORDER 10
#define PROP_BORDER_BOTTOM 11
#define PROP_BORDER_BOTTOM_COLOR 12
#define PROP_BORDER_BOTTOM_STYLE 13
#define PROP_BORDER_BOTTOM_WIDTH 14
#define PROP_BORDER_COLLAPSE 15
#define PROP_BORDER_COLOR 16
#define PROP_BORDER_LEFT 17
#define PROP_BORDER_LEFT_COLOR 18
#define PROP_BORDER_LEFT_STYLE 19
#define PROP_BORDER_LEFT_WIDTH 20
#define PROP_BORDER_RIGHT 21
#define PROP_BORDER_RIGHT_COLOR 22
#define PROP_BORDER_RIGHT_STYLE 23
#define PROP_BORDER_RIGHT_WIDTH 24
#define PROP_BORDER_SPACING 25
#define PROP_BORDER_STYLE 26
#define PROP_BORDER_TOP 27
#define PROP_BORDER_TOP_COLOR 28
#define PROP_BORDER_TOP_STYLE 29
#define PROP_BORDER_TOP_WIDTH 30
#define PROP_BORDER_WIDTH 31
#define PROP_BORDER_X_SPACING 32
#define PROP_BORDER_Y_SPACING 33
#define PROP_BOTTOM 34
#define PROP_CAPTION_SIDE 35
#define PROP_CLEAR 36
#define PROP_CLIP 37
#define PROP_CLIP_BOTTOM 38
#define PROP_CLIP_LEFT 39
#define PROP_CLIP_RIGHT 40
#define PROP_CLIP_TOP 41
#define PROP_COLOR 42
#define PROP_CONTENT 43
#define PROP_COUNTER_INCREMENT 44
#define PROP_COUNTER_RESET 45
#define PROP_CUE 46
#define PROP_CUE_AFTER 47
#define PROP_CUE_BEFORE 48
#define PROP_CURSOR 49
#define PROP_DIRECTION 50
#define PROP_DISPLAY 51
#define PROP_ELEVATION 52
#define PROP_EMPTY_CELLS 53
#define PROP_FILTER 54
#define PROP_FLOAT 55
#define PROP_FONT 56
#define PROP_FONT_FAMILY 57
#define PROP_FONT_SIZE 58
#define PROP_FONT_SIZE_ADJUST 59
#define PROP_FONT_STRETCH 60
#define PROP_FONT_STYLE 61
#define PROP_FONT_VARIANT 62
#define PROP_FONT_WEIGHT 63
#define PROP_HEIGHT 64
#define PROP_LEFT 65
#define PROP_LETTER_SPACING 66
#define PROP_LINE_HEIGHT 67
#define PROP_LIST_STYLE 68
#define PROP_LIST_STYLE_IMAGE 69
#define PROP_LIST_STYLE_POSITION 70
#define PROP_LIST_STYLE_TYPE 71
#define PROP_MARGIN 72
#define PROP_MARGIN_BOTTOM 73
#define PROP_MARGIN_LEFT 74
#define PROP_MARGIN_RIGHT 75
#define PROP_MARGIN_TOP 76
#define PROP_MARKER_OFFSET 77
#define PROP_MARKS 78
#define PROP_MAX_HEIGHT 79
#define PROP_MAX_WIDTH 80
#define PROP_MIN_HEIGHT 81
#define PROP_MIN_WIDTH 82
#define PROP_OPACITY 83
#define PROP_ORPHANS 84
#define PROP_OUTLINE 85
#define PROP_OUTLINE_COLOR 86
#define PROP_OUTLINE_STYLE 87
#define PROP_OUTLINE_WIDTH 88
#define PROP_OVERFLOW 89
#define PROP_PADDING 90
#define PROP_PADDING_BOTTOM 91
#define PROP_PADDING_LEFT 92
#define PROP_PADDING_RIGHT 93
#define PROP_PADDING_TOP 94
#define PROP_PAGE 95
#define PROP_PAGE_BREAK_AFTER 96
#define PROP_PAGE_BREAK_BEFORE 97
#define PROP_PAGE_BREAK_INSIDE 98
#define PROP_PAUSE 99
#define PROP_PAUSE_AFTER 100
#define PROP_PAUSE_BEFORE 101
#define PROP_PITCH 102
#define PROP_PITCH_RANGE 103
#define PROP_PLAY_DURING 104
#define PROP_PLAY_DURING_FLAGS 105
#define PROP_POSITION 106
#define PROP_QUOTES 107
#define PROP_QUOTES_CLOSE 108
#define PROP_QUOTES_OPEN 109
#define PROP_RICHNESS 110
#define PROP_RIGHT 111
#define PROP_SIZE 112
#define PROP_SIZE_HEIGHT 113
#define PROP_SIZE_WIDTH 114
#define PROP_SPEAK 115
#define PROP_SPEAK_HEADER 116
#define PROP_SPEAK_NUMERAL 117
#define PROP_SPEAK_PUNCTUATION 118
#define PROP_SPEECH_RATE 119
#define PROP_STRESS 120
#define PROP_TABLE_LAYOUT 121
#define PROP_TEXT_ALIGN 122
#define PROP_TEXT_DECORATION 123
#define PROP_TEXT_INDENT 124
#define PROP_TEXT_SHADOW 125
#define PROP_TEXT_SHADOW_COLOR 126
#define PROP_TEXT_SHADOW_RADIUS 127
#define PROP_TEXT_SHADOW_X 128
#define PROP_TEXT_SHADOW_Y 129
#define PROP_TEXT_TRANSFORM 130
#define PROP_TOP 131
#define PROP_UNICODE_BIDI 132
#define PROP_VERTICAL_ALIGN 133
#define PROP_VISIBILITY 134
#define PROP_VOICE_FAMILY 135
#define PROP_VOLUME 136
#define PROP_WHITE_SPACE 137
#define PROP_WIDOWS 138
#define PROP_WIDTH 139
#define PROP_WORD_SPACING 140
#define PROP_Z_INDEX 141
#define PROP_MAX 142
/* Do not edit - generated by genhash.pl */
#define PROP__MOZ_BORDER_RADIUS 0
#define PROP_AZIMUTH 1
#define PROP_BACKGROUND 2
#define PROP_BACKGROUND_ATTACHMENT 3
#define PROP_BACKGROUND_COLOR 4
#define PROP_BACKGROUND_FILTER 5
#define PROP_BACKGROUND_IMAGE 6
#define PROP_BACKGROUND_POSITION 7
#define PROP_BACKGROUND_REPEAT 8
#define PROP_BACKGROUND_X_POSITION 9
#define PROP_BACKGROUND_Y_POSITION 10
#define PROP_BORDER 11
#define PROP_BORDER_BOTTOM 12
#define PROP_BORDER_BOTTOM_COLOR 13
#define PROP_BORDER_BOTTOM_STYLE 14
#define PROP_BORDER_BOTTOM_WIDTH 15
#define PROP_BORDER_COLLAPSE 16
#define PROP_BORDER_COLOR 17
#define PROP_BORDER_LEFT 18
#define PROP_BORDER_LEFT_COLOR 19
#define PROP_BORDER_LEFT_STYLE 20
#define PROP_BORDER_LEFT_WIDTH 21
#define PROP_BORDER_RIGHT 22
#define PROP_BORDER_RIGHT_COLOR 23
#define PROP_BORDER_RIGHT_STYLE 24
#define PROP_BORDER_RIGHT_WIDTH 25
#define PROP_BORDER_SPACING 26
#define PROP_BORDER_STYLE 27
#define PROP_BORDER_TOP 28
#define PROP_BORDER_TOP_COLOR 29
#define PROP_BORDER_TOP_STYLE 30
#define PROP_BORDER_TOP_WIDTH 31
#define PROP_BORDER_WIDTH 32
#define PROP_BORDER_X_SPACING 33
#define PROP_BORDER_Y_SPACING 34
#define PROP_BOTTOM 35
#define PROP_CAPTION_SIDE 36
#define PROP_CLEAR 37
#define PROP_CLIP 38
#define PROP_CLIP_BOTTOM 39
#define PROP_CLIP_LEFT 40
#define PROP_CLIP_RIGHT 41
#define PROP_CLIP_TOP 42
#define PROP_COLOR 43
#define PROP_CONTENT 44
#define PROP_COUNTER_INCREMENT 45
#define PROP_COUNTER_RESET 46
#define PROP_CUE 47
#define PROP_CUE_AFTER 48
#define PROP_CUE_BEFORE 49
#define PROP_CURSOR 50
#define PROP_DIRECTION 51
#define PROP_DISPLAY 52
#define PROP_ELEVATION 53
#define PROP_EMPTY_CELLS 54
#define PROP_FILTER 55
#define PROP_FLOAT 56
#define PROP_FONT 57
#define PROP_FONT_FAMILY 58
#define PROP_FONT_SIZE 59
#define PROP_FONT_SIZE_ADJUST 60
#define PROP_FONT_STRETCH 61
#define PROP_FONT_STYLE 62
#define PROP_FONT_VARIANT 63
#define PROP_FONT_WEIGHT 64
#define PROP_HEIGHT 65
#define PROP_LEFT 66
#define PROP_LETTER_SPACING 67
#define PROP_LINE_HEIGHT 68
#define PROP_LIST_STYLE 69
#define PROP_LIST_STYLE_IMAGE 70
#define PROP_LIST_STYLE_POSITION 71
#define PROP_LIST_STYLE_TYPE 72
#define PROP_MARGIN 73
#define PROP_MARGIN_BOTTOM 74
#define PROP_MARGIN_LEFT 75
#define PROP_MARGIN_RIGHT 76
#define PROP_MARGIN_TOP 77
#define PROP_MARKER_OFFSET 78
#define PROP_MARKS 79
#define PROP_MAX_HEIGHT 80
#define PROP_MAX_WIDTH 81
#define PROP_MIN_HEIGHT 82
#define PROP_MIN_WIDTH 83
#define PROP_OPACITY 84
#define PROP_ORPHANS 85
#define PROP_OUTLINE 86
#define PROP_OUTLINE_COLOR 87
#define PROP_OUTLINE_STYLE 88
#define PROP_OUTLINE_WIDTH 89
#define PROP_OVERFLOW 90
#define PROP_PADDING 91
#define PROP_PADDING_BOTTOM 92
#define PROP_PADDING_LEFT 93
#define PROP_PADDING_RIGHT 94
#define PROP_PADDING_TOP 95
#define PROP_PAGE 96
#define PROP_PAGE_BREAK_AFTER 97
#define PROP_PAGE_BREAK_BEFORE 98
#define PROP_PAGE_BREAK_INSIDE 99
#define PROP_PAUSE 100
#define PROP_PAUSE_AFTER 101
#define PROP_PAUSE_BEFORE 102
#define PROP_PITCH 103
#define PROP_PITCH_RANGE 104
#define PROP_PLAY_DURING 105
#define PROP_PLAY_DURING_FLAGS 106
#define PROP_POSITION 107
#define PROP_QUOTES 108
#define PROP_QUOTES_CLOSE 109
#define PROP_QUOTES_OPEN 110
#define PROP_RICHNESS 111
#define PROP_RIGHT 112
#define PROP_SIZE 113
#define PROP_SIZE_HEIGHT 114
#define PROP_SIZE_WIDTH 115
#define PROP_SPEAK 116
#define PROP_SPEAK_HEADER 117
#define PROP_SPEAK_NUMERAL 118
#define PROP_SPEAK_PUNCTUATION 119
#define PROP_SPEECH_RATE 120
#define PROP_STRESS 121
#define PROP_TABLE_LAYOUT 122
#define PROP_TEXT_ALIGN 123
#define PROP_TEXT_DECORATION 124
#define PROP_TEXT_INDENT 125
#define PROP_TEXT_SHADOW 126
#define PROP_TEXT_SHADOW_COLOR 127
#define PROP_TEXT_SHADOW_RADIUS 128
#define PROP_TEXT_SHADOW_X 129
#define PROP_TEXT_SHADOW_Y 130
#define PROP_TEXT_TRANSFORM 131
#define PROP_TOP 132
#define PROP_UNICODE_BIDI 133
#define PROP_VERTICAL_ALIGN 134
#define PROP_VISIBILITY 135
#define PROP_VOICE_FAMILY 136
#define PROP_VOLUME 137
#define PROP_WHITE_SPACE 138
#define PROP_WIDOWS 139
#define PROP_WIDTH 140
#define PROP_WORD_SPACING 141
#define PROP_Z_INDEX 142
#define PROP_MAX 143

File diff suppressed because it is too large Load Diff

View File

@ -1866,6 +1866,11 @@ void MapDeclarationInto(nsICSSDeclaration* aDeclaration,
}
}
// -moz-border-radius: length, inherit
if (! SetCoord(ourMargin->mBorderRadius, spacing->mBorderRadius,
SETCOORD_LPH, font, aPresContext)) {
}
// outline-width: length, enum, inherit
if (! SetCoord(ourMargin->mOutlineWidth, spacing->mOutlineWidth,
SETCOORD_LE, font, aPresContext)) {

View File

@ -198,6 +198,7 @@ struct nsCSSMargin : public nsCSSStruct {
nsCSSRect* mBorderWidth; // CHANGED
nsCSSRect* mBorderColor; // CHANGED
nsCSSRect* mBorderStyle; // CHANGED
nsCSSValue mBorderRadius; // NEW (extension)
nsCSSValue mOutlineWidth; // NEW
nsCSSValue mOutlineColor; // NEW
nsCSSValue mOutlineStyle; // NEW

View File

@ -341,6 +341,7 @@ void nsCSSMargin::List(FILE* out, PRInt32 aIndent) const
for (PRInt32 index = aIndent; --index >= 0; ) fputs(" ", out);
nsAutoString buffer;
mBorderRadius.AppendToString(buffer, PROP__MOZ_BORDER_RADIUS);
mOutlineWidth.AppendToString(buffer, PROP_OUTLINE_WIDTH);
mOutlineColor.AppendToString(buffer, PROP_OUTLINE_COLOR);
mOutlineStyle.AppendToString(buffer, PROP_OUTLINE_STYLE);
@ -1036,14 +1037,16 @@ CSSDeclarationImpl::AppendValue(PRInt32 aProperty, const nsCSSValue& aValue)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
CSS_ENSURE(Margin) {
switch (aProperty) {
case PROP_OUTLINE_WIDTH: mMargin->mOutlineWidth = aValue; break;
case PROP_OUTLINE_COLOR: mMargin->mOutlineColor = aValue; break;
case PROP_OUTLINE_STYLE: mMargin->mOutlineStyle = aValue; break;
case PROP__MOZ_BORDER_RADIUS: mMargin->mBorderRadius = aValue; break;
case PROP_OUTLINE_WIDTH: mMargin->mOutlineWidth = aValue; break;
case PROP_OUTLINE_COLOR: mMargin->mOutlineColor = aValue; break;
case PROP_OUTLINE_STYLE: mMargin->mOutlineStyle = aValue; break;
}
}
break;
@ -1634,15 +1637,17 @@ CSSDeclarationImpl::SetValueImportant(PRInt32 aProperty)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
if (nsnull != mMargin) {
CSS_ENSURE_IMPORTANT(Margin) {
switch (aProperty) {
CSS_CASE_IMPORTANT(PROP_OUTLINE_WIDTH, mMargin->mOutlineWidth);
CSS_CASE_IMPORTANT(PROP_OUTLINE_COLOR, mMargin->mOutlineColor);
CSS_CASE_IMPORTANT(PROP_OUTLINE_STYLE, mMargin->mOutlineStyle);
CSS_CASE_IMPORTANT(PROP__MOZ_BORDER_RADIUS, mMargin->mBorderRadius);
CSS_CASE_IMPORTANT(PROP_OUTLINE_WIDTH, mMargin->mOutlineWidth);
CSS_CASE_IMPORTANT(PROP_OUTLINE_COLOR, mMargin->mOutlineColor);
CSS_CASE_IMPORTANT(PROP_OUTLINE_STYLE, mMargin->mOutlineStyle);
}
}
}
@ -2257,14 +2262,16 @@ CSSDeclarationImpl::GetValue(PRInt32 aProperty, nsCSSValue& aValue)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
if (nsnull != mMargin) {
switch (aProperty) {
case PROP_OUTLINE_WIDTH: aValue = mMargin->mOutlineWidth; break;
case PROP_OUTLINE_COLOR: aValue = mMargin->mOutlineColor; break;
case PROP_OUTLINE_STYLE: aValue = mMargin->mOutlineStyle; break;
case PROP__MOZ_BORDER_RADIUS: aValue = mMargin->mBorderRadius; break;
case PROP_OUTLINE_WIDTH: aValue = mMargin->mOutlineWidth; break;
case PROP_OUTLINE_COLOR: aValue = mMargin->mOutlineColor; break;
case PROP_OUTLINE_STYLE: aValue = mMargin->mOutlineStyle; break;
}
}
else {

View File

@ -2297,6 +2297,8 @@ PRBool CSSParserImpl::ParseSingleValueProperty(PRInt32& aErrorCode,
case PROP_BORDER_TOP_WIDTH:
return ParseVariant(aErrorCode, aValue, VARIANT_HKL,
nsCSSProps::kBorderWidthKTable);
case PROP__MOZ_BORDER_RADIUS:
return ParseVariant(aErrorCode, aValue, VARIANT_HLP, nsnull);
case PROP_BOTTOM:
case PROP_TOP:
case PROP_LEFT:

File diff suppressed because it is too large Load Diff

View File

@ -341,6 +341,7 @@ void nsCSSMargin::List(FILE* out, PRInt32 aIndent) const
for (PRInt32 index = aIndent; --index >= 0; ) fputs(" ", out);
nsAutoString buffer;
mBorderRadius.AppendToString(buffer, PROP__MOZ_BORDER_RADIUS);
mOutlineWidth.AppendToString(buffer, PROP_OUTLINE_WIDTH);
mOutlineColor.AppendToString(buffer, PROP_OUTLINE_COLOR);
mOutlineStyle.AppendToString(buffer, PROP_OUTLINE_STYLE);
@ -1036,14 +1037,16 @@ CSSDeclarationImpl::AppendValue(PRInt32 aProperty, const nsCSSValue& aValue)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
CSS_ENSURE(Margin) {
switch (aProperty) {
case PROP_OUTLINE_WIDTH: mMargin->mOutlineWidth = aValue; break;
case PROP_OUTLINE_COLOR: mMargin->mOutlineColor = aValue; break;
case PROP_OUTLINE_STYLE: mMargin->mOutlineStyle = aValue; break;
case PROP__MOZ_BORDER_RADIUS: mMargin->mBorderRadius = aValue; break;
case PROP_OUTLINE_WIDTH: mMargin->mOutlineWidth = aValue; break;
case PROP_OUTLINE_COLOR: mMargin->mOutlineColor = aValue; break;
case PROP_OUTLINE_STYLE: mMargin->mOutlineStyle = aValue; break;
}
}
break;
@ -1634,15 +1637,17 @@ CSSDeclarationImpl::SetValueImportant(PRInt32 aProperty)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
if (nsnull != mMargin) {
CSS_ENSURE_IMPORTANT(Margin) {
switch (aProperty) {
CSS_CASE_IMPORTANT(PROP_OUTLINE_WIDTH, mMargin->mOutlineWidth);
CSS_CASE_IMPORTANT(PROP_OUTLINE_COLOR, mMargin->mOutlineColor);
CSS_CASE_IMPORTANT(PROP_OUTLINE_STYLE, mMargin->mOutlineStyle);
CSS_CASE_IMPORTANT(PROP__MOZ_BORDER_RADIUS, mMargin->mBorderRadius);
CSS_CASE_IMPORTANT(PROP_OUTLINE_WIDTH, mMargin->mOutlineWidth);
CSS_CASE_IMPORTANT(PROP_OUTLINE_COLOR, mMargin->mOutlineColor);
CSS_CASE_IMPORTANT(PROP_OUTLINE_STYLE, mMargin->mOutlineStyle);
}
}
}
@ -2257,14 +2262,16 @@ CSSDeclarationImpl::GetValue(PRInt32 aProperty, nsCSSValue& aValue)
}
break;
case PROP__MOZ_BORDER_RADIUS:
case PROP_OUTLINE_WIDTH:
case PROP_OUTLINE_COLOR:
case PROP_OUTLINE_STYLE:
if (nsnull != mMargin) {
switch (aProperty) {
case PROP_OUTLINE_WIDTH: aValue = mMargin->mOutlineWidth; break;
case PROP_OUTLINE_COLOR: aValue = mMargin->mOutlineColor; break;
case PROP_OUTLINE_STYLE: aValue = mMargin->mOutlineStyle; break;
case PROP__MOZ_BORDER_RADIUS: aValue = mMargin->mBorderRadius; break;
case PROP_OUTLINE_WIDTH: aValue = mMargin->mOutlineWidth; break;
case PROP_OUTLINE_COLOR: aValue = mMargin->mOutlineColor; break;
case PROP_OUTLINE_STYLE: aValue = mMargin->mOutlineStyle; break;
}
}
else {

View File

@ -1866,6 +1866,11 @@ void MapDeclarationInto(nsICSSDeclaration* aDeclaration,
}
}
// -moz-border-radius: length, inherit
if (! SetCoord(ourMargin->mBorderRadius, spacing->mBorderRadius,
SETCOORD_LPH, font, aPresContext)) {
}
// outline-width: length, enum, inherit
if (! SetCoord(ourMargin->mOutlineWidth, spacing->mOutlineWidth,
SETCOORD_LE, font, aPresContext)) {

View File

@ -1,3 +1,4 @@
-moz-border-radius
azimuth
background
background-attachment