From 9ff777957ef6a26e2d59543fc28bbb39b0e9d164 Mon Sep 17 00:00:00 2001 From: skalogryz Date: Sat, 13 Jun 2009 16:38:20 +0000 Subject: [PATCH] fixing carbon richmemo implementation. updating test project file git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@842 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- components/richmemo/carbon/carbonrichmemo.pas | 15 +++++++++------ .../richmemo/samples/testsimple/project1.lpi | 2 +- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/components/richmemo/carbon/carbonrichmemo.pas b/components/richmemo/carbon/carbonrichmemo.pas index eb30b86c2..eb9c61eec 100644 --- a/components/richmemo/carbon/carbonrichmemo.pas +++ b/components/richmemo/carbon/carbonrichmemo.pas @@ -11,7 +11,7 @@ uses Controls, Graphics, - RichMemoTypes, WSRichMemo, + WSRichMemo, CarbonProc, CarbonEdits; @@ -89,7 +89,7 @@ procedure GetATSUFontRGBAColor(AStyle: ATSUStyle; var r,g,b,a: Byte); var rgba : ATSURGBAlphaColor; begin - ATSUGetAttribute(AStyle, kATSURGBAlphaColorTag, sizeof(Boolean), @rgba, nil); + writeln('getting color= ', ATSUGetAttribute(AStyle, kATSURGBAlphaColorTag, sizeof(ATSURGBAlphaColor), @rgba, nil)); r := Round(rgba.red*255); g := Round(rgba.green*255); b := Round(rgba.blue*255); @@ -231,13 +231,13 @@ class function TCarbonWSCustomRichMemo.GetTextAttributes(const AWinControl: TWin TextStart: Integer; var Params: TIntFontParams): Boolean; var edit : TCarbonRichEdit; - attr : array [0..1] of TXNTypeAttributes; + attr : array [0..2] of TXNTypeAttributes; sstart : Integer; slen : Integer; flags : TXNContinuousFlags; astyle : ATSUStyle; - + maccolor : RGBColor; begin Result := false; edit := GetValidRichEdit(AWinControl); @@ -252,10 +252,13 @@ begin ATSUCreateStyle(astyle); AttrSetATSUStyle(astyle, attr[0]); AttrSetStyle([], attr[1]); + AttrSetColor(maccolor, attr[2]); - Result := edit.GetContinuousTypeAttributes(flags, 2, attr); + Result := edit.GetContinuousTypeAttributes(flags, 3, attr); Params.Name := GetATSUFontName(astyle); - Params.Color := GetATSUFontColor(astyle); + Params.Color := RGBColorToColor(maccolor); + // GetATSUFontColor(astyle); + //writeln('got color: ', IntToHex(Params.Color, 8)); Params.Style := GetATSUFontStyles(astyle) + QDStyleToFontStyle(attr[1].data.dataValue); Params.Size := GetATSUFontSize(astyle); diff --git a/components/richmemo/samples/testsimple/project1.lpi b/components/richmemo/samples/testsimple/project1.lpi index e7363c342..3370ee545 100644 --- a/components/richmemo/samples/testsimple/project1.lpi +++ b/components/richmemo/samples/testsimple/project1.lpi @@ -49,7 +49,7 @@ - +