home *** CD-ROM | disk | FTP | other *** search
/ The Houseplan Collection / HRCD2005.ISO / data1.cab / Zusatz / 3DS / DATA2.Z / ArConEventWrapper.pas < prev    next >
Pascal/Delphi Source File  |  1998-08-06  |  8KB  |  221 lines

  1. unit ArConEventWrapper;
  2.  
  3. interface
  4.  
  5. uses Windows, StdCtrls, Classes, Forms, ComObj, ArConMakro_TLB;
  6.  
  7. type
  8.  
  9. TEventListFunction = procedure(str: String);
  10.  
  11. TArConEvents = class (TAutoObject, IArConEvents)
  12. private
  13.     FListEvent : TEventListFunction;
  14. public
  15. constructor Create(f: TEventListFunction);
  16. protected
  17.     procedure ProgramExit; safecall;
  18.     procedure LoadDialog(dialogID, ArConDlgToken: Integer; dialogObject: IDispatch); safecall;
  19.     procedure EndDialog(dialogID: Integer; ok: WordBool); safecall;
  20.     procedure ExecuteMenuItem(menuId: Integer); safecall;
  21.     procedure GotOneClick(valid: WordBool; x, y: Single; id: Integer); safecall;
  22.     procedure ButtonChange(btnId, evnt, selectedIndex: Integer; pressed, visible, enabled: WordBool); safecall;
  23.     procedure HowMove(btnId: Integer; x, y: Single; viewHandle: Integer); safecall;
  24.     procedure HowInput(btnId: Integer; x, y, dirX, dirY: Single; state: Integer; CutView: IDispatch); safecall;
  25.     procedure SaveDialogDefaults(dlgId, token: Integer); safecall;
  26.     procedure DialogActivation(dlgId, ArConDlgToken, subObjectCount: Integer; activated: WordBool); safecall;
  27.     procedure LoadComplete(successfull: WordBool); safecall;
  28.     procedure LoadBuilding(aBuilding: IDispatch; SaveNo: Integer); safecall;
  29.     procedure LoadStart; safecall;
  30.     procedure SaveStart(const FileName: WideString; NumBuildings: Integer; isAutoSave: WordBool; var numChunksToSave: Integer); safecall;
  31.     procedure SaveBuilding(BuildingNo: Integer; aBuilding: IDispatch); safecall;
  32.     procedure HowSnap(btnId: Integer; x, y: Single; viewHandle: Integer; snapDistance: Single); safecall;
  33.     procedure HowStatusLineRedraw(btnId: Integer; x, y: Single; viewHandle: Integer); safecall;
  34.     procedure ProjectClosed; safecall;
  35.     procedure Graphics2DDoubleClick(obj: IDispatch); safecall;
  36.     procedure Graphics2DSelectionChanged(obj: IDispatch; x, y: Single; selected, extended, hasAlreadyBeenSelected: WordBool; pixelScale: Single; snapRadius: Integer); safecall;
  37.     procedure Graphics2DDeleted(obj: IDispatch; var allowDelete: WordBool); safecall;
  38.     procedure Graphics2DMove(obj: IDispatch; x, y: Single; viewHandle: Integer); safecall;
  39.     procedure Graphics2DEndMoving(obj: IDispatch; aborted, extended, copied: WordBool); safecall;
  40.     procedure NewCurrentProject; safecall;
  41.     procedure Graphics2DStartMoving(obj: IDispatch; x, y, pixelFactor: Single; extended: WordBool; markerIndex: Integer; var allowMove: WordBool); safecall;
  42.     procedure InputModeChanged(newMode: Integer); safecall;
  43.     procedure ProjectChange; safecall;
  44.     procedure ChangeNotify(obj: IDispatch; events: Integer); safecall;
  45.     procedure Object3DDoubleClicked(obj3D, obj2D: IDispatch; var redrawObject, redrawAll: WordBool); safecall;
  46.     procedure TextureDropped(obj2D, obj3D: IDispatch; matIndex: Integer; objTexture: IDispatch; const droppedTextureName: WideString; x, y, z: Single; var redraw, redrawWholeScene, autoExchangeTexture: WordBool); safecall;
  47.     procedure Graphics2DStoryHeightsChanged(obj2D: IDispatch); safecall;
  48.     procedure Graphics2DObjectTransform(obj2D: IDispatch; matrix: OleVariant); safecall;
  49.     procedure RoofDoubleClicked(var showDialog: WordBool); safecall;
  50. end;
  51.  
  52. implementation
  53. uses ComServ;
  54.  
  55. constructor TArConEvents.Create(f: TEventListFunction);
  56. begin
  57.      FListEvent := f;
  58.      inherited Create;
  59. end;
  60.  
  61. procedure TArConEvents.ProgramExit; safecall;
  62. begin
  63.      FListEvent('ProgramExit');
  64.      PostQuitMessage(0);
  65. end;
  66.  
  67. procedure TArConEvents.LoadDialog(dialogID, ArConDlgToken: Integer; dialogObject: IDispatch); safecall;
  68. var
  69.    s : String;
  70. begin
  71.      Str(dialogID, s);
  72.      s := 'LoadDialog, id = ' + s;
  73.      FListEvent(s);
  74. end;
  75.  
  76. procedure TArConEvents.EndDialog(dialogID: Integer; ok: WordBool); safecall;
  77. var
  78.    s : String;
  79. begin
  80.      Str(dialogID, s);
  81.      s := 'EndDialog, id = ' + s;
  82.      FListEvent(s);
  83. end;
  84.  
  85. procedure TArConEvents.ExecuteMenuItem(menuId: Integer); safecall;
  86. begin
  87. end;
  88.  
  89. procedure TArConEvents.GotOneClick(valid: WordBool; x, y: Single; id: Integer); safecall;
  90. var
  91.    t, s : String;
  92. begin
  93.      s := 'Got one click, x = ';
  94.      Str(x, t);
  95.      s := s+t;
  96.      Str(y, t);
  97.      s := s+t;
  98.      FListEvent(s);
  99. end;
  100.  
  101. procedure TArConEvents.ButtonChange(btnId, evnt, selectedIndex: Integer; pressed, visible, enabled: WordBool); safecall;
  102. begin
  103. end;
  104.  
  105. procedure TArConEvents.HowMove(btnId: Integer; x, y: Single; viewHandle: Integer); safecall;
  106. begin
  107. end;
  108.  
  109. procedure TArConEvents.HowInput(btnId: Integer; x, y, dirX, dirY: Single; state: Integer; CutView: IDispatch); safecall;
  110. begin
  111. end;
  112.  
  113. procedure TArConEvents.SaveDialogDefaults(dlgId, token: Integer); safecall;
  114. begin
  115. end;
  116.  
  117. procedure TArConEvents.DialogActivation(dlgId, ArConDlgToken, subObjectCount: Integer; activated: WordBool); safecall;
  118. begin
  119. end;
  120.  
  121. procedure TArConEvents.LoadComplete(successfull: WordBool); safecall;
  122. begin
  123. end;
  124.  
  125. procedure TArConEvents.LoadBuilding(aBuilding: IDispatch; SaveNo: Integer); safecall;
  126. begin
  127. end;
  128.  
  129. procedure TArConEvents.LoadStart; safecall;
  130. begin
  131. end;
  132.  
  133. procedure TArConEvents.SaveStart(const FileName: WideString; NumBuildings: Integer; isAutoSave: WordBool; var numChunksToSave: Integer); safecall;
  134. begin
  135. end;
  136.  
  137. procedure TArConEvents.SaveBuilding(BuildingNo: Integer; aBuilding: IDispatch); safecall;
  138. begin
  139. end;
  140.  
  141. procedure TArConEvents.HowSnap(btnId: Integer; x, y: Single; viewHandle: Integer; snapDistance: Single); safecall;
  142. begin
  143. end;
  144.  
  145. procedure TArConEvents.HowStatusLineRedraw(btnId: Integer; x, y: Single; viewHandle: Integer); safecall;
  146. begin
  147. end;
  148.  
  149. procedure TArConEvents.ProjectClosed; safecall;
  150. begin
  151.      FListEvent('ProjectClosed');
  152. end;
  153.  
  154. procedure TArConEvents.Graphics2DDoubleClick(obj: IDispatch); safecall;
  155. begin
  156. end;
  157.  
  158. procedure TArConEvents.Graphics2DSelectionChanged(obj: IDispatch; x, y: Single; selected, extended, hasAlreadyBeenSelected: WordBool; pixelScale: Single; snapRadius: Integer); safecall;
  159. begin
  160. end;
  161.  
  162. procedure TArConEvents.Graphics2DDeleted(obj: IDispatch; var allowDelete: WordBool); safecall;
  163. begin
  164. end;
  165.  
  166. procedure TArConEvents.Graphics2DMove(obj: IDispatch; x, y: Single; viewHandle: Integer); safecall;
  167. begin
  168. end;
  169.  
  170. procedure TArConEvents.Graphics2DEndMoving(obj: IDispatch; aborted, extended, copied: WordBool); safecall;
  171. begin
  172. end;
  173.  
  174. procedure TArConEvents.NewCurrentProject; safecall;
  175. begin
  176.      FListEvent('NewCurrentProject');
  177. end;
  178.  
  179. procedure TArConEvents.Graphics2DStartMoving(obj: IDispatch; x, y, pixelFactor: Single; extended: WordBool; markerIndex: Integer; var allowMove: WordBool); safecall;
  180. begin
  181. end;
  182.  
  183. procedure TArConEvents.InputModeChanged(newMode: Integer); safecall;
  184. begin
  185.      FListEvent('InputModeChanged');
  186. end;
  187.  
  188. procedure TArConEvents.ProjectChange; safecall;
  189. begin
  190.      FListEvent('ProjectChange');
  191. end;
  192.  
  193. procedure TArConEvents.ChangeNotify(obj: IDispatch; events: Integer); safecall;
  194. begin
  195. end;
  196.  
  197. procedure TArConEvents.Object3DDoubleClicked(obj3D, obj2D: IDispatch; var redrawObject, redrawAll: WordBool); safecall;
  198. begin
  199. end;
  200.  
  201. procedure TArConEvents.TextureDropped(obj2D, obj3D: IDispatch; matIndex: Integer; objTexture: IDispatch; const droppedTextureName: WideString; x, y, z: Single; var redraw, redrawWholeScene, autoExchangeTexture: WordBool); safecall;
  202. begin
  203. end;
  204.  
  205. procedure TArConEvents.Graphics2DStoryHeightsChanged(obj2D: IDispatch); safecall;
  206. begin
  207. end;
  208.  
  209. procedure TArConEvents.Graphics2DObjectTransform(obj2D: IDispatch; matrix: OleVariant); safecall;
  210. begin
  211. end;
  212.  
  213. procedure TArConEvents.RoofDoubleClicked(var showDialog: WordBool); safecall;
  214. begin
  215. end;
  216.  
  217. initialization
  218.   TAutoObjectFactory.Create(ComServer, TArConEvents, Class_ArConEventSink, ciSingleInstance);
  219.  
  220. end.
  221.