mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-18 01:09:35 +02:00
parent
599083582c
commit
3ad44aa03c
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -5123,6 +5123,7 @@ ideintf/lazstringgridedit.lfm svneol=native#text/plain
|
||||
ideintf/lazstringgridedit.pas svneol=native#text/plain
|
||||
ideintf/listviewpropedit.lfm svneol=native#text/plain
|
||||
ideintf/listviewpropedit.pp svneol=native#text/pascal
|
||||
ideintf/macrodefintf.pas svneol=native#text/plain
|
||||
ideintf/macrointf.pas svneol=native#text/pascal
|
||||
ideintf/maskpropedit.lfm svneol=native#text/plain
|
||||
ideintf/maskpropedit.pas svneol=native#text/plain
|
||||
|
140
ideintf/macrodefintf.pas
Normal file
140
ideintf/macrodefintf.pas
Normal file
@ -0,0 +1,140 @@
|
||||
{ Copyright (C) 2012
|
||||
|
||||
*****************************************************************************
|
||||
* *
|
||||
* See the file COPYING.modifiedLGPL.txt, included in this distribution, *
|
||||
* for details about the copyright. *
|
||||
* *
|
||||
* This program is distributed in the hope that it will be useful, *
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
|
||||
* *
|
||||
*****************************************************************************
|
||||
|
||||
Abstract:
|
||||
Interface to the IDE macros.
|
||||
}
|
||||
|
||||
unit MacroDefIntf;
|
||||
|
||||
{$mode objfpc}{$H+}
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
Classes, SysUtils;
|
||||
|
||||
Type
|
||||
TTransferMacro = class;
|
||||
|
||||
TOnSubstitution = procedure(TheMacro: TTransferMacro; const MacroName: string;
|
||||
var s:string; const Data: PtrInt; var Handled, Abort: boolean;
|
||||
Depth: integer) of object;
|
||||
|
||||
TMacroFunction = function(const s: string; const Data: PtrInt;
|
||||
var Abort: boolean): string of object;
|
||||
|
||||
TTransferMacroFlag = (
|
||||
tmfInteractive
|
||||
);
|
||||
TTransferMacroFlags = set of TTransferMacroFlag;
|
||||
|
||||
TTransferMacro = class
|
||||
public
|
||||
Name: string;
|
||||
Value: string;
|
||||
Description: string;
|
||||
MacroFunction: TMacroFunction;
|
||||
Flags: TTransferMacroFlags;
|
||||
constructor Create(AName, AValue, ADescription:string;
|
||||
AMacroFunction: TMacroFunction; TheFlags: TTransferMacroFlags);
|
||||
end;
|
||||
|
||||
|
||||
implementation
|
||||
|
||||
{ TTransferMacro }
|
||||
|
||||
constructor TTransferMacro.Create(AName, AValue, ADescription:string;
|
||||
AMacroFunction: TMacroFunction; TheFlags: TTransferMacroFlags);
|
||||
begin
|
||||
Name:=AName;
|
||||
Value:=AValue;
|
||||
Description:=ADescription;
|
||||
MacroFunction:=AMacroFunction;
|
||||
Flags:=TheFlags;
|
||||
end;
|
||||
|
||||
|
||||
end.
|
||||
|
||||
{ Copyright (C) 2012
|
||||
|
||||
*****************************************************************************
|
||||
* *
|
||||
* See the file COPYING.modifiedLGPL.txt, included in this distribution, *
|
||||
* for details about the copyright. *
|
||||
* *
|
||||
* This program is distributed in the hope that it will be useful, *
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
|
||||
* *
|
||||
*****************************************************************************
|
||||
|
||||
Abstract:
|
||||
Interface to the IDE macros.
|
||||
}
|
||||
|
||||
unit MacroDefIntf;
|
||||
|
||||
{$mode objfpc}{$H+}
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
Classes, SysUtils;
|
||||
|
||||
Type
|
||||
TTransferMacro = class;
|
||||
|
||||
TOnSubstitution = procedure(TheMacro: TTransferMacro; const MacroName: string;
|
||||
var s:string; const Data: PtrInt; var Handled, Abort: boolean;
|
||||
Depth: integer) of object;
|
||||
|
||||
TMacroFunction = function(const s: string; const Data: PtrInt;
|
||||
var Abort: boolean): string of object;
|
||||
|
||||
TTransferMacroFlag = (
|
||||
tmfInteractive
|
||||
);
|
||||
TTransferMacroFlags = set of TTransferMacroFlag;
|
||||
|
||||
TTransferMacro = class
|
||||
public
|
||||
Name: string;
|
||||
Value: string;
|
||||
Description: string;
|
||||
MacroFunction: TMacroFunction;
|
||||
Flags: TTransferMacroFlags;
|
||||
constructor Create(AName, AValue, ADescription:string;
|
||||
AMacroFunction: TMacroFunction; TheFlags: TTransferMacroFlags);
|
||||
end;
|
||||
|
||||
|
||||
implementation
|
||||
|
||||
{ TTransferMacro }
|
||||
|
||||
constructor TTransferMacro.Create(AName, AValue, ADescription:string;
|
||||
AMacroFunction: TMacroFunction; TheFlags: TTransferMacroFlags);
|
||||
begin
|
||||
Name:=AName;
|
||||
Value:=AValue;
|
||||
Description:=ADescription;
|
||||
MacroFunction:=AMacroFunction;
|
||||
Flags:=TheFlags;
|
||||
end;
|
||||
|
||||
|
||||
end.
|
||||
|
Loading…
Reference in New Issue
Block a user