Далее приводится описание компонента sgPluginItem.TsgPluginItem
Методы TsgPlugitem
•procedure ExportCADToFile(const ADrawing: OleVariant; const AFileName: string); - экспортирует чертеж ADrawing в файл AFileName:
▪ADrawing – элемент IXMLNode (например <Drawing Id="$01F17E20"...>), или его идентификатор;
▪AFileName – имя файла, куда будет осуществлен экспорт;
▪формат экспорта определен по расширению AFileName.
•procedure ExportCADToStream(const ADrawing: OleVariant; const AStream: TStream; const AExtension: string = '.dxf'); - экспортирует чертеж в поток:
▪ADrawing – элемент IXMLNode (например <Drawing Id="$01F17E20"...>), или его идентификатор;
▪AStream – поток;
▪AExtension – указывает, в какой формат будет произведен экспорт (поумолчанию ‘.dxf’).
•procedure OpenDrawing(const AFileName: string); - открывает чертеж в новом окне:
▪AFileName – имя файла чертежа.
•procedure LoadFromStream(const AStream: TStream; const AExtension: string = '.dxf') - открывает чертеж в новом окне из потока:
▪AStream – поток;
▪AExtension – указывает, в каком формате поток (поумолчанию ‘.dxf’).
•procedure Close(const ADrawing: OleVariant) - закрывает чертеж:
▪ADrawing – элемент IXMLNode (например <Drawing Id="$01F17E20"...>), или его идентификатор;
•procedure CloseDrawing; - закрывает текущий активный чертеж.
События TsgPlugitem
Компонент TsgPluginItem = class(TComponent) предназначен для получения следующих событий приложения Inventory.exe:
1. property OnInit: TnotifyEvent инициализация плагина;
2. property OnLayoutChange: TNotifyEvent смена листа (Layout);
3. property OnOpenDrawing: TNotifyEvent открытие документа;
4. property OnCloseDrawing: TNotifyEvent закрытие документа;
5. property OnFinal: TNotifyEvent перед выгрузкой библиотеки;
6. property OnSelectEntities: TNotifyEvent выделение примитивов;
7. property OnCreateEntities: TNotifyEvent создание примитивов;
8. property OnDeleteEntities: TNotifyEvent удаление примитивов;
9. property OnCopyEntities: TNotifyEvent копирование примитивов;
10. property OnPasteEntities: TNotifyEvent вставка примитивов;
11. property OnChangeEntities: TNotifyEvent изменение примитивов;
12. property OnProperties: TNotifyEvent запрос диалога свойств плагина;
13. property OnHelp: TNotifyEvent запрос диалога (другие средства) помощи по работе с плагином;
14. property OnAction: TNotifyEvent при нажатии горячей клавиши находящейся в свве ActivationShortCut ("Alt+1" поумолчанию).
Всю базовую структуру данных можно получить через:
property Document: IXMLDocument;
(Подробнее см. проект Plug1.dpr, модуль fPlugMain.pas: procedure TPlugForm.btnShowInBrowserClick(Sender: TObject);)
Перейти на страницу Inventory