Files
lazarus-ccr/components/jvcllaz/design/JvCmp/jvstrholdereditor.pas

77 lines
1.5 KiB
ObjectPascal
Raw Permalink Normal View History

unit JvStrHolderEditor;
{$mode objfpc}{$H+}
interface
uses
SysUtils, Classes, Controls,
ComponentEditors;
type
TJvStrHolderEditor = class(TDefaultComponentEditor)
public
procedure Edit; override;
procedure ExecuteVerb(AIndex: integer); override;
function GetVerb(AIndex: Integer): string; override;
function GetVerbCount: Integer; override;
end;
implementation
uses
Forms, JvStringHolder, JvStringsForm;
procedure TJvStrHolderEditor.Edit;
var
Temp: string;
Comp: TPersistent;
begin
with TJvStrEditDlg.Create(Application) do
try
Comp := Self.GetComponent;
(*
if Comp is TComponent then
Caption := TComponent(Comp).Name + '.' + GetName
else
Caption := GetName;
Temp := GetStrValue;
Memo.Lines.Text := Temp;
*)
Memo.Lines.Assign((Comp as TJvStrHolder).Strings);
UpdateStatus(nil);
if ShowModal = mrOk then
begin
Temp := Memo.Text;
while (Length(Temp) > 0) and (Temp[Length(Temp)] < ' ') do
System.Delete(Temp, Length(Temp), 1);
(Comp as TJvStrHolder).Strings.Text := Temp;
// SetStrValue(Temp);
end;
finally
Free;
end;
end;
procedure TJvStrHolderEditor.ExecuteVerb(AIndex: Integer);
begin
if AIndex = 0 then Edit;
end;
function TJvStrHolderEditor.GetVerb(AIndex: Integer): string;
begin
case AIndex of
0: Result := 'Strings Editor ----';
else Result := '';
end;
end;
function TJvStrHolderEditor.GetVerbCount: Integer;
begin
Result := 1;
end;
end.