Нашел пример тут: http://wiki.lazarus.freepascal.org/Exte ... _menu_item
Но есть подозрение, что я что-то не так понял.
Я сделал пакет (это код, который Lazarus генерирует автоматически):
- Код: Выделить всё
unit DBhelper;
interface
uses
BaseDBHelper, LazarusPackageIntf;
implementation
procedure Register;
begin
RegisterUnit('BaseDBHelper', @BaseDBHelper.Register);
end;
initialization
RegisterPackage('DBhelper', @Register);
end.
- Код: Выделить всё
unit BaseDBHelper;
interface
uses
Classes, SysUtils, IDECommands, MenuIntf,
Dialogs;
procedure Register;
implementation
procedure StartMyTool(Sender: TObject);
begin
//...executed when menu item is clicked...
ShowMessage('Мой пакет');
end;
procedure Register;
begin
RegisterIDEMenuCommand(mnuTools, 'MyTool', 'Start my tool', nil, @StartMyTool);
end;
initialization
Register;
end.