You've already forked lazarus-ccr
77 lines
1.5 KiB
ObjectPascal
77 lines
1.5 KiB
ObjectPascal
![]() |
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.
|
||
|
|