summaryrefslogtreecommitdiff
path: root/src/corelib
diff options
context:
space:
mode:
authorgraemeg <graemeg@ae50a9b5-8222-0410-bf8d-8a13f76226bf>2008-05-19 07:09:32 +0000
committergraemeg <graemeg@ae50a9b5-8222-0410-bf8d-8a13f76226bf>2008-05-19 07:09:32 +0000
commit47aa5a7615cb3d7adf5e9af693288d9cbd89adb9 (patch)
treee7b71b9d13cc2b66067a5563c681d5dfa667be32 /src/corelib
parent71ddb1d624ac22d25503ab2a3031c342c5ff06e0 (diff)
downloadfpGUI-47aa5a7615cb3d7adf5e9af693288d9cbd89adb9.tar.xz
* fpgGet[Red|Green|Blue] did not take into account named colors.
Diffstat (limited to 'src/corelib')
-rw-r--r--src/corelib/gfxbase.pas22
1 files changed, 17 insertions, 5 deletions
diff --git a/src/corelib/gfxbase.pas b/src/corelib/gfxbase.pas
index 635d043f..4497e4dc 100644
--- a/src/corelib/gfxbase.pas
+++ b/src/corelib/gfxbase.pas
@@ -559,7 +559,7 @@ procedure SortRect(var left, top, right, bottom: integer);
implementation
uses
- fpgfx, // needed for fpgApplication
+ fpgfx, // needed for fpgApplication & fpgNamedColor
gfx_utils, // needed for fpgFileList
gfx_constants,
typinfo;
@@ -764,27 +764,39 @@ begin
end;
function fpgGetRed(const AColor: TfpgColor): word;
+var
+ c: TfpgColor;
begin
+ c := fpgColorToRGB(AColor);
// AARRGGBB format
- Result := Word((AColor shr 16) and $FF);
+ Result := Word((c shr 16) and $FF);
end;
function fpgGetGreen(const AColor: TfpgColor): word;
+var
+ c: TfpgColor;
begin
+ c := fpgColorToRGB(AColor);
// AARRGGBB format
- Result := Word((AColor shr 8) and $FF);
+ Result := Word((c shr 8) and $FF);
end;
function fpgGetBlue(const AColor: TfpgColor): word;
+var
+ c: TfpgColor;
begin
+ c := fpgColorToRGB(AColor);
// AARRGGBB format
- Result := Word(AColor and $FF);
+ Result := Word(c and $FF);
end;
function fpgGetAlpha(const AColor: TfpgColor): word;
+var
+ c: TfpgColor;
begin
+ c := fpgColorToRGB(AColor);
// AARRGGBB format
- Result := Word((AColor shr 32) and $FF);
+ Result := Word((c shr 32) and $FF);
end;
function fpgGetAvgColor(const AColor1, AColor2: TfpgColor): TfpgColor;