From fca22fcc33f666c9d1e2531cc11f1a36b65386de Mon Sep 17 00:00:00 2001 From: paul Date: Sun, 23 Nov 2008 10:25:45 +0000 Subject: [PATCH] lcl: return CLX colors temporary to allow project compilation (will raise deprecated warning now) and loading forms in ide (though CLX colors will not be listed in the object inspector anymore) git-svn-id: trunk@17538 - --- lcl/graphics.pp | 183 +++++++++++++++++++++++++++++++++++++++++++++--- lcl/lcltype.pp | 65 +++++++++++++++++ 2 files changed, 240 insertions(+), 8 deletions(-) diff --git a/lcl/graphics.pp b/lcl/graphics.pp index 1d0f873e6a..aaa903a24a 100644 --- a/lcl/graphics.pp +++ b/lcl/graphics.pp @@ -309,6 +309,86 @@ const clMask = clWhite; clDontMask = clBlack; + // !! deprecated colors !! + {$warnings off} + // CLX base, mapped, pseudo, rgb values + clForeground = TColor(-1) deprecated; + clButton = TColor(-2) deprecated; + clLight = TColor(-3) deprecated; + clMidlight = TColor(-4) deprecated; + clDark = TColor(-5) deprecated; + clMid = TColor(-6) deprecated; + clText = TColor(-7) deprecated; + clBrightText = TColor(-8) deprecated; + clButtonText = TColor(-9) deprecated; + clBase = TColor(-10) deprecated; + clxBackground = TColor(-11) deprecated; + clShadow = TColor(-12) deprecated; + clxHighlight = TColor(-13) deprecated; + clHighlightedText = TColor(-14) deprecated; + + // CLX mapped role offsets + cloNormal = 32 deprecated; + cloDisabled = 64 deprecated; + cloActive = 96 deprecated; + + // CLX normal, mapped, pseudo, rgb values + clNormalForeground = TColor(clForeground - cloNormal) deprecated; + clNormalButton = TColor(clButton - cloNormal) deprecated; + clNormalLight = TColor(clLight - cloNormal) deprecated; + clNormalMidlight = TColor(clMidlight - cloNormal) deprecated; + clNormalDark = TColor(clDark - cloNormal) deprecated; + clNormalMid = TColor(clMid - cloNormal) deprecated; + clNormalText = TColor(clText - cloNormal) deprecated; + clNormalBrightText = TColor(clBrightText - cloNormal) deprecated; + clNormalButtonText = TColor(clButtonText - cloNormal) deprecated; + clNormalBase = TColor(clBase - cloNormal) deprecated; + clNormalBackground = TColor(clxBackground - cloNormal) deprecated; + clNormalShadow = TColor(clShadow - cloNormal) deprecated; + clNormalHighlight = TColor(clxHighlight - cloNormal) deprecated; + clNormalHighlightedText = TColor(clHighlightedText - cloNormal) deprecated; + + // CLX disabled, mapped, pseudo, rgb values + clDisabledForeground = TColor(clForeground - cloDisabled) deprecated; + clDisabledButton = TColor(clButton - cloDisabled) deprecated; + clDisabledLight = TColor(clLight - cloDisabled) deprecated; + clDisabledMidlight = TColor(clMidlight - cloDisabled) deprecated; + clDisabledDark = TColor(clDark - cloDisabled) deprecated; + clDisabledMid = TColor(clMid - cloDisabled) deprecated; + clDisabledText = TColor(clText - cloDisabled) deprecated; + clDisabledBrightText = TColor(clBrightText - cloDisabled) deprecated; + clDisabledButtonText = TColor(clButtonText - cloDisabled) deprecated; + clDisabledBase = TColor(clBase - cloDisabled) deprecated; + clDisabledBackground = TColor(clxBackground - cloDisabled) deprecated; + clDisabledShadow = TColor(clShadow - cloDisabled) deprecated; + clDisabledHighlight = TColor(clxHighlight - cloDisabled) deprecated; + clDisabledHighlightedText = TColor(clHighlightedText - cloDisabled) deprecated; + + // CLX active, mapped, pseudo, rgb values + clActiveForeground = TColor(clForeground - cloActive) deprecated; + clActiveButton = TColor(clButton - cloActive) deprecated; + clActiveLight = TColor(clLight - cloActive) deprecated; + clActiveMidlight = TColor(clMidlight - cloActive) deprecated; + clActiveDark = TColor(clDark - cloActive) deprecated; + clActiveMid = TColor(clMid - cloActive) deprecated; + clActiveText = TColor(clText - cloActive) deprecated; + clActiveBrightText = TColor(clBrightText - cloActive) deprecated; + clActiveButtonText = TColor(clButtonText - cloActive) deprecated; + clActiveBase = TColor(clBase - cloActive) deprecated; + clActiveBackground = TColor(clxBackground - cloActive) deprecated; + clActiveShadow = TColor(clShadow - cloActive) deprecated; + clActiveHighlight = TColor(clxHighlight - cloActive) deprecated; + clActiveHighlightedText = TColor(clHighlightedText - cloActive) deprecated; + +type + TMappedColor = clActiveHighlightedText..clNormalForeground; + + TColorGroup = (cgInactive, cgDisabled, cgActive); + TColorRole = (crForeground, crButton, crLight, crMidlight, crDark, crMid, + crText, crBrightText, crButtonText, crBase, crBackground, crShadow, + crHighlight, crHighlightText, crNoRole); + {$warnings on} + const cmBlackness = BLACKNESS; cmDstInvert = DSTINVERT; @@ -326,6 +406,7 @@ const cmSrcPaint = SRCPAINT; cmWhiteness = WHITENESS; + type TCanvas = class; @@ -2022,7 +2103,9 @@ type { Color mapping routines } const - Colors: array[0..52] of TIdentMapEntry = ( + FirstDeprecatedColorIndex = 53; + LastDeprecatedColorIndex = 106; + Colors: array[0..106] of TIdentMapEntry = ( // standard colors (Value: clBlack; Name: 'clBlack'), (Value: clMaroon; Name: 'clMaroon'), @@ -2085,8 +2168,74 @@ const (Value: clGradientInactiveCaption; Name: 'clGradientInactiveCaption'), // one our special color - (Value: clForm; Name: 'clForm') - ); + (Value: clForm; Name: 'clForm'), + + {$warnings off} + // CLX base, mapped, pseudo, rgb values + (Value: clForeground; Name: 'clForeground'), + (Value: clButton; Name: 'clButton'), + (Value: clLight; Name: 'clLight'), + (Value: clMidlight; Name: 'clMidlight'), + (Value: clDark; Name: 'clDark'), + (Value: clMid; Name: 'clMid'), + (Value: clText; Name: 'clText'), + (Value: clBrightText; Name: 'clBrightText'), + (Value: clButtonText; Name: 'clButtonText'), + (Value: clBase; Name: 'clBase'), + //clBackground + (Value: clShadow; Name: 'clShadow'), + //clHighlight + (Value: clHighlightedText; Name: 'clHighlightedText'), + + // CLX normal, mapped, pseudo, rgb values + (Value: clNormalForeground; Name: 'clNormalForeground'), + (Value: clNormalButton; Name: 'clNormalButton'), + (Value: clNormalLight; Name: 'clNormalLight'), + (Value: clNormalMidlight; Name: 'clNormalMidlight'), + (Value: clNormalDark; Name: 'clNormalDark'), + (Value: clNormalMid; Name: 'clNormalMid'), + (Value: clNormalText; Name: 'clNormalText'), + (Value: clNormalBrightText; Name: 'clNormalBrightText'), + (Value: clNormalButtonText; Name: 'clNormalButtonText'), + (Value: clNormalBase; Name: 'clNormalBase'), + (Value: clNormalBackground; Name: 'clNormalBackground'), + (Value: clNormalShadow; Name: 'clNormalShadow'), + (Value: clNormalHighlight; Name: 'clNormalHighlight'), + (Value: clNormalHighlightedText; Name: 'clNormalHighlightedText'), + + // CLX disabled, mapped, pseudo, rgb values + (Value: clDisabledForeground; Name: 'clDisabledForeground'), + (Value: clDisabledButton; Name: 'clDisabledButton'), + (Value: clDisabledLight; Name: 'clDisabledLight'), + (Value: clDisabledMidlight; Name: 'clDisabledMidlight'), + (Value: clDisabledDark; Name: 'clDisabledDark'), + (Value: clDisabledMid; Name: 'clDisabledMid'), + (Value: clDisabledText; Name: 'clDisabledText'), + (Value: clDisabledBrightText; Name: 'clDisabledBrightText'), + (Value: clDisabledButtonText; Name: 'clDisabledButtonText'), + (Value: clDisabledBase; Name: 'clDisabledBase'), + (Value: clDisabledBackground; Name: 'clDisabledBackground'), + (Value: clDisabledShadow; Name: 'clDisabledShadow'), + (Value: clDisabledHighlight; Name: 'clDisabledHighlight'), + (Value: clDisabledHighlightedText; Name: 'clDisabledHighlightedText'), + + // CLX active, mapped, pseudo, rgb values + (Value: clActiveForeground; Name: 'clActiveForeground'), + (Value: clActiveButton; Name: 'clActiveButton'), + (Value: clActiveLight; Name: 'clActiveLight'), + (Value: clActiveMidlight; Name: 'clActiveMidlight'), + (Value: clActiveDark; Name: 'clActiveDark'), + (Value: clActiveMid; Name: 'clActiveMid'), + (Value: clActiveText; Name: 'clActiveText'), + (Value: clActiveBrightText; Name: 'clActiveBrightText'), + (Value: clActiveButtonText; Name: 'clActiveButtonText'), + (Value: clActiveBase; Name: 'clActiveBase'), + (Value: clActiveBackground; Name: 'clActiveBackground'), + (Value: clActiveShadow; Name: 'clActiveShadow'), + (Value: clActiveHighlight; Name: 'clActiveHighlight'), + (Value: clActiveHighlightedText; Name: 'clActiveHighlightedText') + {$warnings on} + ); function IdentEntry(Entry: Longint; var MapEntry: TIdentMapEntry): boolean; begin @@ -2124,10 +2273,24 @@ end; function SysColorToSysColorIndex(Color: TColor): integer; begin - if (Cardinal(Color) and Cardinal(SYS_COLOR_BASE)) <> 0 then - Result := Color and $FF - else - Result := -1; + if (Cardinal(Color) and Cardinal(SYS_COLOR_BASE)) <> 0 then begin + case Color of + {$warnings off} + clHighlightedText..clForeground: + Result:=clForeground+COLOR_clForeground-Color; + clNormalHighlightedText..clNormalForeground: + Result:=clNormalForeground+COLOR_clNormalForeground-Color; + clDisabledHighlightedText..clDisabledForeground: + Result:=clDisabledForeground+COLOR_clDisabledForeground-Color; + clActiveHighlightedText..clActiveForeground: + Result:=clActiveForeground+COLOR_clActiveForeground-Color; + {$warnings on} + else + Result:=Color and $FF; + end; + end else begin + Result:=-1; + end; end; function ColorToRGB(Color: TColor): TColor; @@ -2156,7 +2319,11 @@ procedure GetColorValues(Proc: TGetColorStringProc); var I: Integer; begin - for I := Low(Colors) to High(Colors) do Proc(Colors[I].Name); + for I := Low(Colors) to High(Colors) do + if (I >= FirstDeprecatedColorIndex) and (I <= LastDeprecatedColorIndex) then + Continue + else + Proc(Colors[I].Name); end; function InvertColor(AColor: TColor): TColor; diff --git a/lcl/lcltype.pp b/lcl/lcltype.pp index 9b670f891e..b5ddedcbaf 100644 --- a/lcl/lcltype.pp +++ b/lcl/lcltype.pp @@ -1405,6 +1405,71 @@ const MAX_SYS_COLORS = COLOR_ENDCOLORS; SYS_COLOR_BASE = TColorRef($80000000); + // !! deprecated colors !! + + // CLX base, mapped, pseudo, rgb values + COLOR_clForeground = 32; + COLOR_clButton = COLOR_clForeground+1; + COLOR_clLight = COLOR_clForeground+2; + COLOR_clMidlight = COLOR_clForeground+3; + COLOR_clDark = COLOR_clForeground+4; + COLOR_clMid = COLOR_clForeground+5; + COLOR_clText = COLOR_clForeground+6; + COLOR_clBrightText = COLOR_clForeground+7; + COLOR_clButtonText = COLOR_clForeground+8; + COLOR_clBase = COLOR_clForeground+9; + //clBackground + COLOR_clShadow = COLOR_clForeground+10; + //clHighlight + COLOR_clHighlightedText = COLOR_clForeground+11; + + // CLX normal, mapped, pseudo, rgb values + COLOR_clNormalForeground = 44; + COLOR_clNormalButton = COLOR_clNormalForeground+1; + COLOR_clNormalLight = COLOR_clNormalForeground+2; + COLOR_clNormalMidlight = COLOR_clNormalForeground+3; + COLOR_clNormalDark = COLOR_clNormalForeground+4; + COLOR_clNormalMid = COLOR_clNormalForeground+5; + COLOR_clNormalText = COLOR_clNormalForeground+6; + COLOR_clNormalBrightText = COLOR_clNormalForeground+7; + COLOR_clNormalButtonText = COLOR_clNormalForeground+8; + COLOR_clNormalBase = COLOR_clNormalForeground+9; + COLOR_clNormalBackground = COLOR_clNormalForeground+10; + COLOR_clNormalShadow = COLOR_clNormalForeground+11; + COLOR_clNormalHighlight = COLOR_clNormalForeground+12; + COLOR_clNormalHighlightedText = COLOR_clNormalForeground+13; + + // CLX disabled, mapped, pseudo, rgb values + COLOR_clDisabledForeground = 58; + COLOR_clDisabledButton = COLOR_clDisabledForeground+1; + COLOR_clDisabledLight = COLOR_clDisabledForeground+2; + COLOR_clDisabledMidlight = COLOR_clDisabledForeground+3; + COLOR_clDisabledDark = COLOR_clDisabledForeground+4; + COLOR_clDisabledMid = COLOR_clDisabledForeground+5; + COLOR_clDisabledText = COLOR_clDisabledForeground+6; + COLOR_clDisabledBrightText = COLOR_clDisabledForeground+7; + COLOR_clDisabledButtonText = COLOR_clDisabledForeground+8; + COLOR_clDisabledBase = COLOR_clDisabledForeground+9; + COLOR_clDisabledBackground = COLOR_clDisabledForeground+10; + COLOR_clDisabledShadow = COLOR_clDisabledForeground+11; + COLOR_clDisabledHighlight = COLOR_clDisabledForeground+12; + COLOR_clDisabledHighlightedText = COLOR_clDisabledForeground+13; + + // CLX active, mapped, pseudo, rgb values + COLOR_clActiveForeground = 72; + COLOR_clActiveButton = COLOR_clActiveForeground+1; + COLOR_clActiveLight = COLOR_clActiveForeground+2; + COLOR_clActiveMidlight = COLOR_clActiveForeground+3; + COLOR_clActiveDark = COLOR_clActiveForeground+4; + COLOR_clActiveMid = COLOR_clActiveForeground+5; + COLOR_clActiveText = COLOR_clActiveForeground+6; + COLOR_clActiveBrightText = COLOR_clActiveForeground+7; + COLOR_clActiveButtonText = COLOR_clActiveForeground+8; + COLOR_clActiveBase = COLOR_clActiveForeground+9; + COLOR_clActiveBackground = COLOR_clActiveForeground+10; + COLOR_clActiveShadow = COLOR_clActiveForeground+11; + COLOR_clActiveHighlight = COLOR_clActiveForeground+12; + COLOR_clActiveHighlightedText = COLOR_clActiveForeground+13; {$ifndef WINDOWS} R2_BLACK = 0;