RxFPC:default editor for StrHolder

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6724 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
alexs75 2018-11-12 08:42:21 +00:00
parent 8ba346c60e
commit b2a2608447
7 changed files with 75 additions and 10 deletions

View File

@ -29,16 +29,19 @@
<EnableI18N Value="True"/>
<OutDir Value="languages"/>
</i18n>
<RequiredPkgs Count="3">
<RequiredPkgs Count="4">
<Item1>
<PackageName Value="IDEIntf"/>
<PackageName Value="rx"/>
</Item1>
<Item2>
<PackageName Value="rxtools"/>
<PackageName Value="IDEIntf"/>
</Item2>
<Item3>
<PackageName Value="FCL"/>
<PackageName Value="rxtools"/>
</Item3>
<Item4>
<PackageName Value="FCL"/>
</Item4>
</RequiredPkgs>
<UsageOptions>
<UnitPath Value="$(PkgOutDir)"/>

View File

@ -39,8 +39,8 @@ uses
procedure Register;
implementation
uses LazarusPackageIntf, RxTextHolder, ComponentEditors, RxTextHolder_Editor,
rxconst;
uses Forms, LazarusPackageIntf, RxTextHolder, ComponentEditors, RxTextHolder_Editor,
rxconst, StrHolder, PropEdits, StringsPropEditDlg, UITypes;
type
@ -53,14 +53,53 @@ type
procedure ExecuteVerb(Index:integer);override;
end;
procedure RegisterRxTextHolder;
{ TRxStrHolderEditor }
TRxStrHolderEditor = class(TComponentEditor)
public
function GetVerbCount:integer;override;
function GetVerb(Index:integer):string;override;
procedure ExecuteVerb(Index:integer);override;
end;
{ TRxStrHolderEditor }
function TRxStrHolderEditor.GetVerbCount: integer;
begin
RegisterComponentEditor(TRxTextHolder, TRxTextHolderEditor);
Result:=1;
end;
procedure Register;
function TRxStrHolderEditor.GetVerb(Index: integer): string;
begin
RegisterUnit('RxTextHolder', @RegisterRxTextHolder);
case Index of
0:Result:=sRxStrHolderTextEditor;
else
Result:='';
end;
end;
procedure TRxStrHolderEditor.ExecuteVerb(Index: integer);
var
C: TStrHolder;
F: TStringsPropEditorDlg;
begin
if Index = 0 then
begin
F:=TStringsPropEditorDlg.Create(Application);
try
C:=Component as TStrHolder;
F.Memo.Lines.Assign(C.Strings);
if F.ShowModal = mrOK then
begin
C.Strings.Assign(F.Memo.Lines);
Modified;
end;
finally
F.Free;
end;
end
else
inherited ExecuteVerb(Index);
end;
{ TRxTextHolderEditor }
@ -90,5 +129,11 @@ begin
inherited ExecuteVerb(Index);
end;
procedure Register;
begin
RegisterComponentEditor(TRxTextHolder, TRxTextHolderEditor);
RegisterComponentEditor(TStrHolder, TRxStrHolderEditor);
end;
end.

View File

@ -179,6 +179,10 @@ msgstr "Anterior A?o|"
msgid "Error. Expected value for field %s."
msgstr ""
#: rxconst.srxstrholdertexteditor
msgid "Rx string holder editor"
msgstr ""
#: rxconst.srxtextfolderitem
msgid "Item "
msgstr ""

View File

@ -177,6 +177,10 @@ msgstr ""
msgid "Error. Expected value for field %s."
msgstr ""
#: rxconst.srxstrholdertexteditor
msgid "Rx string holder editor"
msgstr ""
#: rxconst.srxtextfolderitem
msgid "Item "
msgstr ""

View File

@ -177,6 +177,10 @@ msgstr "Превыдущий год|"
msgid "Error. Expected value for field %s."
msgstr "Поле %s. Требуется значение"
#: rxconst.srxstrholdertexteditor
msgid "Rx string holder editor"
msgstr "Редактор RxStrHolder"
#: rxconst.srxtextfolderitem
msgid "Item "
msgstr "Строка "

View File

@ -192,6 +192,10 @@ msgstr "Попередній місяць|"
msgid "Error. Expected value for field %s."
msgstr "Поле %s. Вимагається значення"
#: rxconst.srxstrholdertexteditor
msgid "Rx string holder editor"
msgstr ""
#: rxconst.srxtextfolderitem
msgid "Item "
msgstr ""

View File

@ -136,6 +136,7 @@ resourcestring
{ TRxTextHolder }
sRxTextHolderTextEditor = 'Rx text holder editor';
sRxStrHolderTextEditor = 'Rx string holder editor';
sRxTextHolderEditor = 'RxTextHolder editor';
sRxTextHolderTextCaption = 'Caption';
sRxTextHolderAdd = 'Add';