diff --git a/components/rx/trunk/dcl_rxtools.lpk b/components/rx/trunk/dcl_rxtools.lpk
index 5c40bf734..e65d4e046 100644
--- a/components/rx/trunk/dcl_rxtools.lpk
+++ b/components/rx/trunk/dcl_rxtools.lpk
@@ -29,16 +29,19 @@
-
+
-
+
-
+
-
+
+
+
+
diff --git a/components/rx/trunk/dcl_rxtools/register_rxtools.pas b/components/rx/trunk/dcl_rxtools/register_rxtools.pas
index b3f35a939..08f85401c 100644
--- a/components/rx/trunk/dcl_rxtools/register_rxtools.pas
+++ b/components/rx/trunk/dcl_rxtools/register_rxtools.pas
@@ -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.
diff --git a/components/rx/trunk/languages/rxconst.es.po b/components/rx/trunk/languages/rxconst.es.po
index c17eaa2d3..4b855ce4c 100644
--- a/components/rx/trunk/languages/rxconst.es.po
+++ b/components/rx/trunk/languages/rxconst.es.po
@@ -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 ""
diff --git a/components/rx/trunk/languages/rxconst.po b/components/rx/trunk/languages/rxconst.po
index c9c08eebe..808dc2897 100644
--- a/components/rx/trunk/languages/rxconst.po
+++ b/components/rx/trunk/languages/rxconst.po
@@ -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 ""
diff --git a/components/rx/trunk/languages/rxconst.ru.po b/components/rx/trunk/languages/rxconst.ru.po
index 79df028ba..a1a8168d0 100644
--- a/components/rx/trunk/languages/rxconst.ru.po
+++ b/components/rx/trunk/languages/rxconst.ru.po
@@ -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 "Строка "
diff --git a/components/rx/trunk/languages/rxconst.uk.po b/components/rx/trunk/languages/rxconst.uk.po
index 3cce8977b..801cf1bde 100644
--- a/components/rx/trunk/languages/rxconst.uk.po
+++ b/components/rx/trunk/languages/rxconst.uk.po
@@ -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 ""
diff --git a/components/rx/trunk/rxtools/rxconst.pas b/components/rx/trunk/rxtools/rxconst.pas
index f1bb60378..ed0ad26c8 100644
--- a/components/rx/trunk/rxtools/rxconst.pas
+++ b/components/rx/trunk/rxtools/rxconst.pas
@@ -136,6 +136,7 @@ resourcestring
{ TRxTextHolder }
sRxTextHolderTextEditor = 'Rx text holder editor';
+ sRxStrHolderTextEditor = 'Rx string holder editor';
sRxTextHolderEditor = 'RxTextHolder editor';
sRxTextHolderTextCaption = 'Caption';
sRxTextHolderAdd = 'Add';