update windows version to be compilable

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@843 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
skalogryz
2009-06-14 09:18:53 +00:00
parent 9ff777957e
commit a5c4b4e9bf
5 changed files with 142 additions and 136 deletions

View File

@@ -6,7 +6,7 @@ interface
uses uses
Classes, SysUtils, Graphics, StdCtrls, Classes, SysUtils, Graphics, StdCtrls,
RichMemoTypes, WSRichMemo; WSRichMemo;
type type

View File

@@ -19,50 +19,45 @@
"/> "/>
<License Value="LGPL"/> <License Value="LGPL"/>
<Version Minor="8"/> <Version Minor="8"/>
<Files Count="9"> <Files Count="8">
<Item1> <Item1>
<Filename Value="richmemo.pas"/>
<AddToUsesPkgSection Value="False"/>
<UnitName Value="RichMemo"/>
</Item1>
<Item2>
<Filename Value="wsrichmemo.pas"/> <Filename Value="wsrichmemo.pas"/>
<AddToUsesPkgSection Value="False"/> <AddToUsesPkgSection Value="False"/>
<UnitName Value="WSRichMemo"/> <UnitName Value="WSRichMemo"/>
</Item2> </Item1>
<Item3> <Item2>
<Filename Value="win32\win32richmemo.pas"/> <Filename Value="win32\win32richmemo.pas"/>
<AddToUsesPkgSection Value="False"/> <AddToUsesPkgSection Value="False"/>
<UnitName Value="Win32RichMemo"/> <UnitName Value="Win32RichMemo"/>
</Item3> </Item2>
<Item4> <Item3>
<Filename Value="win32\win32richmemoproc.pas"/> <Filename Value="win32\win32richmemoproc.pas"/>
<AddToUsesPkgSection Value="False"/> <AddToUsesPkgSection Value="False"/>
<UnitName Value="Win32RichMemoProc"/> <UnitName Value="Win32RichMemoProc"/>
</Item4> </Item3>
<Item5> <Item4>
<Filename Value="richmemofactory.pas"/> <Filename Value="richmemofactory.pas"/>
<UnitName Value="RichMemoFactory"/> <UnitName Value="RichMemoFactory"/>
</Item5> </Item4>
<Item6> <Item5>
<Filename Value="richmemotypes.pas"/>
<AddToUsesPkgSection Value="False"/>
<UnitName Value="RichMemoTypes"/>
</Item6>
<Item7>
<Filename Value="richmemoregister.pas"/> <Filename Value="richmemoregister.pas"/>
<HasRegisterProc Value="True"/> <HasRegisterProc Value="True"/>
<UnitName Value="richmemoregister"/> <UnitName Value="richmemoregister"/>
</Item7> </Item5>
<Item8> <Item6>
<Filename Value="richmemopackage.lrs"/> <Filename Value="richmemopackage.lrs"/>
<Type Value="LRS"/> <Type Value="LRS"/>
</Item8> </Item6>
<Item9> <Item7>
<Filename Value="carbon\carbonrichmemo.pas"/> <Filename Value="carbon\carbonrichmemo.pas"/>
<AddToUsesPkgSection Value="False"/> <AddToUsesPkgSection Value="False"/>
<UnitName Value="carbonrichmemo"/> <UnitName Value="carbonrichmemo"/>
</Item9> </Item7>
<Item8>
<Filename Value="richmemo.pas"/>
<AddToUsesPkgSection Value="False"/>
<UnitName Value="RichMemo"/>
</Item8>
</Files> </Files>
<Type Value="RunAndDesignTime"/> <Type Value="RunAndDesignTime"/>
<RequiredPkgs Count="2"> <RequiredPkgs Count="2">

View File

@@ -6,7 +6,7 @@
<MainUnit Value="0"/> <MainUnit Value="0"/>
<TargetFileExt Value=""/> <TargetFileExt Value=""/>
<UseXPManifest Value="True"/> <UseXPManifest Value="True"/>
<ActiveEditorIndexAtStart Value="0"/> <ActiveEditorIndexAtStart Value="1"/>
</General> </General>
<VersionInfo> <VersionInfo>
<ProjectVersion Value=""/> <ProjectVersion Value=""/>
@@ -32,16 +32,14 @@
<PackageName Value="LCL"/> <PackageName Value="LCL"/>
</Item2> </Item2>
</RequiredPackages> </RequiredPackages>
<Units Count="38"> <Units Count="40">
<Unit0> <Unit0>
<Filename Value="project1.lpr"/> <Filename Value="project1.lpr"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<UnitName Value="project1"/> <UnitName Value="project1"/>
<CursorPos X="32" Y="12"/> <CursorPos X="32" Y="12"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<EditorIndex Value="1"/>
<UsageCount Value="49"/> <UsageCount Value="49"/>
<Loaded Value="True"/>
</Unit0> </Unit0>
<Unit1> <Unit1>
<Filename Value="unit1.pas"/> <Filename Value="unit1.pas"/>
@@ -49,7 +47,7 @@
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<UnitName Value="Unit1"/> <UnitName Value="Unit1"/>
<CursorPos X="15" Y="10"/> <CursorPos X="10" Y="10"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<EditorIndex Value="0"/> <EditorIndex Value="0"/>
<UsageCount Value="49"/> <UsageCount Value="49"/>
@@ -238,18 +236,18 @@
<Unit27> <Unit27>
<Filename Value="../../richmemo.pas"/> <Filename Value="../../richmemo.pas"/>
<UnitName Value="RichMemo"/> <UnitName Value="RichMemo"/>
<CursorPos X="14" Y="29"/> <CursorPos X="3" Y="9"/>
<TopLine Value="19"/> <TopLine Value="1"/>
<EditorIndex Value="5"/> <EditorIndex Value="4"/>
<UsageCount Value="20"/> <UsageCount Value="20"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit27> </Unit27>
<Unit28> <Unit28>
<Filename Value="../../wsrichmemo.pas"/> <Filename Value="../../wsrichmemo.pas"/>
<UnitName Value="WSRichMemo"/> <UnitName Value="WSRichMemo"/>
<CursorPos X="66" Y="42"/> <CursorPos X="139" Y="28"/>
<TopLine Value="41"/> <TopLine Value="11"/>
<EditorIndex Value="6"/> <EditorIndex Value="3"/>
<UsageCount Value="20"/> <UsageCount Value="20"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit28> </Unit28>
@@ -258,21 +256,17 @@
<UnitName Value="CarbonRichMemo"/> <UnitName Value="CarbonRichMemo"/>
<CursorPos X="24" Y="222"/> <CursorPos X="24" Y="222"/>
<TopLine Value="222"/> <TopLine Value="222"/>
<EditorIndex Value="2"/>
<UsageCount Value="19"/> <UsageCount Value="19"/>
<Bookmarks Count="1"> <Bookmarks Count="1">
<Item0 X="16" Y="230" ID="2"/> <Item0 X="16" Y="230" ID="2"/>
</Bookmarks> </Bookmarks>
<Loaded Value="True"/>
</Unit29> </Unit29>
<Unit30> <Unit30>
<Filename Value="../../../fpc/packages/univint/src/MacOSAll.pas"/> <Filename Value="../../../fpc/packages/univint/src/MacOSAll.pas"/>
<UnitName Value="MacOSAll"/> <UnitName Value="MacOSAll"/>
<CursorPos X="39" Y="220678"/> <CursorPos X="39" Y="220678"/>
<TopLine Value="220670"/> <TopLine Value="220670"/>
<EditorIndex Value="3"/>
<UsageCount Value="18"/> <UsageCount Value="18"/>
<Loaded Value="True"/>
</Unit30> </Unit30>
<Unit31> <Unit31>
<Filename Value="../../../fpc/rtl/objpas/sysutils/osutilsh.inc"/> <Filename Value="../../../fpc/rtl/objpas/sysutils/osutilsh.inc"/>
@@ -311,9 +305,7 @@
<UnitName Value="WSStdCtrls"/> <UnitName Value="WSStdCtrls"/>
<CursorPos X="20" Y="145"/> <CursorPos X="20" Y="145"/>
<TopLine Value="138"/> <TopLine Value="138"/>
<EditorIndex Value="4"/>
<UsageCount Value="15"/> <UsageCount Value="15"/>
<Loaded Value="True"/>
</Unit36> </Unit36>
<Unit37> <Unit37>
<Filename Value="../../richmemotypes.pas"/> <Filename Value="../../richmemotypes.pas"/>
@@ -322,127 +314,145 @@
<TopLine Value="1"/> <TopLine Value="1"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit37> </Unit37>
<Unit38>
<Filename Value="../../win32/win32richmemo.pas"/>
<UnitName Value="Win32RichMemo"/>
<CursorPos X="79" Y="177"/>
<TopLine Value="168"/>
<EditorIndex Value="1"/>
<UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit38>
<Unit39>
<Filename Value="../../win32/win32richmemoproc.pas"/>
<UnitName Value="Win32RichMemoProc"/>
<CursorPos X="1" Y="1"/>
<TopLine Value="1"/>
<EditorIndex Value="2"/>
<UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit39>
</Units> </Units>
<JumpHistory Count="30" HistoryIndex="29"> <JumpHistory Count="30" HistoryIndex="29">
<Position1> <Position1>
<Filename Value="unit1.pas"/> <Filename Value="unit1.pas"/>
<Caret Line="25" Column="21" TopLine="15"/> <Caret Line="104" Column="1" TopLine="91"/>
</Position1> </Position1>
<Position2> <Position2>
<Filename Value="unit1.pas"/> <Filename Value="unit1.pas"/>
<Caret Line="110" Column="1" TopLine="94"/> <Caret Line="98" Column="21" TopLine="88"/>
</Position2> </Position2>
<Position3> <Position3>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemoproc.pas"/>
<Caret Line="109" Column="45" TopLine="99"/> <Caret Line="14" Column="1" TopLine="25"/>
</Position3> </Position3>
<Position4> <Position4>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemoproc.pas"/>
<Caret Line="25" Column="26" TopLine="9"/> <Caret Line="25" Column="11" TopLine="11"/>
</Position4> </Position4>
<Position5> <Position5>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemoproc.pas"/>
<Caret Line="24" Column="18" TopLine="9"/> <Caret Line="107" Column="15" TopLine="106"/>
</Position5> </Position5>
<Position6> <Position6>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemoproc.pas"/>
<Caret Line="25" Column="32" TopLine="9"/> <Caret Line="27" Column="53" TopLine="14"/>
</Position6> </Position6>
<Position7> <Position7>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemoproc.pas"/>
<Caret Line="24" Column="18" TopLine="9"/> <Caret Line="87" Column="47" TopLine="84"/>
</Position7> </Position7>
<Position8> <Position8>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="26" Column="30" TopLine="9"/> <Caret Line="18" Column="15" TopLine="1"/>
</Position8> </Position8>
<Position9> <Position9>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="25" Column="26" TopLine="9"/> <Caret Line="30" Column="25" TopLine="18"/>
</Position9> </Position9>
<Position10> <Position10>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="24" Column="18" TopLine="9"/> <Caret Line="121" Column="62" TopLine="120"/>
</Position10> </Position10>
<Position11> <Position11>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="23" Column="30" TopLine="9"/> <Caret Line="1" Column="1" TopLine="1"/>
</Position11> </Position11>
<Position12> <Position12>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="111" Column="29" TopLine="101"/> <Caret Line="28" Column="33" TopLine="16"/>
</Position12> </Position12>
<Position13> <Position13>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="74" Column="1" TopLine="71"/> <Caret Line="30" Column="35" TopLine="16"/>
</Position13> </Position13>
<Position14> <Position14>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="78" Column="1" TopLine="73"/> <Caret Line="121" Column="60" TopLine="109"/>
</Position14> </Position14>
<Position15> <Position15>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemoproc.pas"/>
<Caret Line="88" Column="33" TopLine="80"/> <Caret Line="141" Column="19" TopLine="129"/>
</Position15> </Position15>
<Position16> <Position16>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemoproc.pas"/>
<Caret Line="75" Column="1" TopLine="73"/> <Caret Line="1" Column="1" TopLine="1"/>
</Position16> </Position16>
<Position17> <Position17>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemoproc.pas"/>
<Caret Line="25" Column="30" TopLine="25"/> <Caret Line="25" Column="29" TopLine="13"/>
</Position17> </Position17>
<Position18> <Position18>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemoproc.pas"/>
<Caret Line="26" Column="52" TopLine="25"/> <Caret Line="26" Column="88" TopLine="13"/>
</Position18> </Position18>
<Position19> <Position19>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemoproc.pas"/>
<Caret Line="25" Column="30" TopLine="25"/> <Caret Line="96" Column="84" TopLine="84"/>
</Position19> </Position19>
<Position20> <Position20>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemoproc.pas"/>
<Caret Line="24" Column="30" TopLine="24"/> <Caret Line="107" Column="25" TopLine="95"/>
</Position20> </Position20>
<Position21> <Position21>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemoproc.pas"/>
<Caret Line="88" Column="33" TopLine="81"/> <Caret Line="141" Column="1" TopLine="129"/>
</Position21> </Position21>
<Position22> <Position22>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="80" Column="7" TopLine="75"/> <Caret Line="143" Column="81" TopLine="131"/>
</Position22> </Position22>
<Position23> <Position23>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="88" Column="1" TopLine="75"/> <Caret Line="32" Column="20" TopLine="20"/>
</Position23> </Position23>
<Position24> <Position24>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="79" Column="3" TopLine="75"/> <Caret Line="121" Column="60" TopLine="109"/>
</Position24> </Position24>
<Position25> <Position25>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="33" Column="44" TopLine="33"/> <Caret Line="143" Column="1" TopLine="131"/>
</Position25> </Position25>
<Position26> <Position26>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="110" Column="3" TopLine="108"/> <Caret Line="1" Column="1" TopLine="1"/>
</Position26> </Position26>
<Position27> <Position27>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="93" Column="1" TopLine="91"/> <Caret Line="24" Column="38" TopLine="17"/>
</Position27> </Position27>
<Position28> <Position28>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="89" Column="1" TopLine="76"/> <Caret Line="175" Column="30" TopLine="145"/>
</Position28> </Position28>
<Position29> <Position29>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="104" Column="1" TopLine="91"/> <Caret Line="124" Column="61" TopLine="115"/>
</Position29> </Position29>
<Position30> <Position30>
<Filename Value="unit1.pas"/> <Filename Value="../../win32/win32richmemo.pas"/>
<Caret Line="98" Column="21" TopLine="88"/> <Caret Line="139" Column="61" TopLine="123"/>
</Position30> </Position30>
</JumpHistory> </JumpHistory>
</ProjectOptions> </ProjectOptions>

View File

@@ -15,7 +15,7 @@ uses
// Win32WidgetSet // Win32WidgetSet
Win32WSControls, Win32Int, Win32WSControls, Win32Int,
// RichMemo headers // RichMemo headers
RichMemoTypes, WSRichMemo, Win32RichMemoProc; WSRichMemo, Win32RichMemoProc;
type type
@@ -25,10 +25,11 @@ type
published published
class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): HWND; override; class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): HWND; override;
class function GetTextAttributes(const AWinControl: TWinControl; TextStart: Integer; class function GetTextAttributes(const AWinControl: TWinControl; TextStart: Integer;
var Params: TFontParams): Boolean; override; var Params: TIntFontParams): Boolean; virtual;
class procedure SetTextAttributes(const AWinControl: TWinControl; TextStart, TextLen: Integer; class procedure SetTextAttributes(const AWinControl: TWinControl; TextStart, TextLen: Integer;
Mask: TTextStyleMask; const Params: TFontParams); override; const Params: TIntFontParams); override;
class procedure SetHideSelection(const AWinControl: TWinControl; AHideSelection: Boolean); override; class procedure SetHideSelection(const AWinControl: TWinControl; AHideSelection: Boolean); override;
class function GetStyleRange(const AWinControl: TWinControl; TextStart: Integer; var RangeStart, RangeLen: Integer): Boolean; override;
end; end;
implementation implementation
@@ -117,7 +118,7 @@ begin
end; end;
class procedure TWin32WSCustomRichMemo.SetTextAttributes(const AWinControl: TWinControl; class procedure TWin32WSCustomRichMemo.SetTextAttributes(const AWinControl: TWinControl;
TextStart, TextLen: Integer; Mask: TTextStyleMask; const Params: TFontParams); TextStart, TextLen: Integer; const Params: TIntFontParams);
var var
OrigStart : Integer; OrigStart : Integer;
OrigLen : Integer; OrigLen : Integer;
@@ -131,15 +132,15 @@ begin
if NeedLock then begin if NeedLock then begin
LockRedraw(AWinControl.Handle); LockRedraw(AWinControl.Handle);
RichEditManager.SetSelection(AWinControl.Handle, TextStart, TextLen); RichEditManager.SetSelection(AWinControl.Handle, TextStart, TextLen);
RichEditManager.SetSelectedTextStyle(AWinControl.Handle, Mask, Params ); RichEditManager.SetSelectedTextStyle(AWinControl.Handle, Params );
RichEditManager.SetSelection(AWinControl.Handle, OrigStart, OrigLen); RichEditManager.SetSelection(AWinControl.Handle, OrigStart, OrigLen);
UnlockRedraw(AWinControl.Handle); UnlockRedraw(AWinControl.Handle);
end else end else
RichEditManager.SetSelectedTextStyle(AWinControl.Handle, Mask, Params); RichEditManager.SetSelectedTextStyle(AWinControl.Handle, Params);
end; end;
class function TWin32WSCustomRichMemo.GetTextAttributes( class function TWin32WSCustomRichMemo.GetTextAttributes(
const AWinControl: TWinControl; TextStart: Integer; var Params: TFontParams const AWinControl: TWinControl; TextStart: Integer; var Params: TIntFontParams
): Boolean; ): Boolean;
var var
OrigStart : Integer; OrigStart : Integer;
@@ -169,5 +170,12 @@ begin
RichEditManager.SetHideSelection(AWinControl.Handle, AHideSelection); RichEditManager.SetHideSelection(AWinControl.Handle, AHideSelection);
end; end;
class function TWin32WSCustomRichMemo.GetStyleRange(
const AWinControl: TWinControl; TextStart: Integer; var RangeStart,
RangeLen: Integer): Boolean;
begin
Result:=inherited GetStyleRange(AWinControl, TextStart, RangeStart, RangeLen);
end;
end. end.

View File

@@ -11,8 +11,8 @@ uses
Classes, SysUtils, Classes, SysUtils,
// LCL units // LCL units
Graphics, Graphics,
// RichMemo unit // RichMemoUnits
RichMemoTypes, WSRichMemo,
// Win32 widgetset units // Win32 widgetset units
win32proc; win32proc;
@@ -22,8 +22,8 @@ type
TRichEditManager = class(TObject) TRichEditManager = class(TObject)
public public
class function SetSelectedTextStyle(RichEditWnd: Handle; class function SetSelectedTextStyle(RichEditWnd: Handle;
SetMask: TTextStyleMask; Params: TFontParams): Boolean; virtual; Params: TIntFontParams): Boolean; virtual;
class function GetSelectedTextStyle(RichEditWnd: Handle; var Params: TFontParams): Boolean; virtual; class function GetSelectedTextStyle(RichEditWnd: Handle; var Params: TIntFontParams): Boolean; virtual;
class procedure GetSelection(RichEditWnd: Handle; var TextStart, TextLen: Integer); virtual; class procedure GetSelection(RichEditWnd: Handle; var TextStart, TextLen: Integer); virtual;
class procedure SetSelection(RichEditWnd: Handle; TextStart, TextLen: Integer); virtual; class procedure SetSelection(RichEditWnd: Handle; TextStart, TextLen: Integer); virtual;
class procedure SetHideSelection(RichEditWnd: Handle; AValue: Boolean); virtual; class procedure SetHideSelection(RichEditWnd: Handle; AValue: Boolean); virtual;
@@ -31,7 +31,7 @@ type
TRichManagerClass = class of TRichEditManager; TRichManagerClass = class of TRichEditManager;
var var
RichEditManager : TRichManagerClass = TRichEditManager; RichEditManager : TRichManagerClass = nil;
function InitRichEdit: Boolean; function InitRichEdit: Boolean;
function GetRichEditClass: AnsiString; function GetRichEditClass: AnsiString;
@@ -93,7 +93,7 @@ begin
end; end;
procedure CharFormatToFontParams(const fmt: TCHARFORMAT; var Params: TFontParams); procedure CharFormatToFontParams(const fmt: TCHARFORMAT; var Params: TIntFontParams);
begin begin
Params.Name := fmt.szFaceName; Params.Name := fmt.szFaceName;
Params.Size := fmt.cbSize; Params.Size := fmt.cbSize;
@@ -104,7 +104,7 @@ end;
{ TRichEditManager } { TRichEditManager }
class function TRichEditManager.SetSelectedTextStyle(RichEditWnd: Handle; class function TRichEditManager.SetSelectedTextStyle(RichEditWnd: Handle;
SetMask: TTextStyleMask; Params: TFontParams): Boolean; Params: TIntFontParams): Boolean;
var var
w : WPARAM; w : WPARAM;
fmt : TCHARFORMAT; fmt : TCHARFORMAT;
@@ -120,32 +120,25 @@ begin
FillChar(fmt, sizeof(fmt), 0); FillChar(fmt, sizeof(fmt), 0);
fmt.cbSize := sizeof(fmt); fmt.cbSize := sizeof(fmt);
if tsm_Color in SetMask then begin
fmt.dwMask := fmt.dwMask or CFM_COLOR; fmt.dwMask := fmt.dwMask or CFM_COLOR;
fmt.crTextColor := Params.Color; fmt.crTextColor := Params.Color;
end;
if tsm_Name in SetMask then begin
fmt.dwMask := fmt.dwMask or CFM_FACE ; fmt.dwMask := fmt.dwMask or CFM_FACE ;
// keep last char for Null-termination // keep last char for Null-termination?
CopyStringToCharArray(Params.Name, fmt.szFaceName, LF_FACESIZE-1); CopyStringToCharArray(Params.Name, fmt.szFaceName, LF_FACESIZE-1);
end;
if tsm_Size in SetMask then begin
fmt.dwMask := fmt.dwMask or CFM_SIZE; fmt.dwMask := fmt.dwMask or CFM_SIZE;
fmt.yHeight := Params.Size * TwipsInFontSize; fmt.yHeight := Params.Size * TwipsInFontSize;
end;
if tsm_Styles in SetMask then begin
fmt.dwMask := fmt.dwMask or CFM_EFFECTS; fmt.dwMask := fmt.dwMask or CFM_EFFECTS;
fmt.dwEffects := FontStylesToEffects(Params.Style); fmt.dwEffects := FontStylesToEffects(Params.Style);
end;
Result := SendMessage(RichEditWnd, EM_SETCHARFORMAT, w, PtrInt(@fmt))>0; Result := SendMessage(RichEditWnd, EM_SETCHARFORMAT, w, PtrInt(@fmt))>0;
end; end;
class function TRichEditManager.GetSelectedTextStyle(RichEditWnd: Handle; class function TRichEditManager.GetSelectedTextStyle(RichEditWnd: Handle;
var Params: TFontParams): Boolean; var Params: TIntFontParams): Boolean;
var var
w : WPARAM; w : WPARAM;
fmt : TCHARFORMAT; fmt : TCHARFORMAT;