XFUser_TLB.pas
上传用户:fh681027
上传日期:2022-07-23
资源大小:1959k
文件大小:13k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. unit XFUser_TLB;
  2. // ************************************************************************ //
  3. // WARNING                                                                  //
  4. // -------                                                                  //
  5. // The types declared in this file were generated from data read from a     //
  6. // Type Library. If this type library is explicitly or indirectly (via      //
  7. // another type library referring to this type library) re-imported, or the //
  8. // 'Refresh' command of the Type Library Editor activated while editing the //
  9. // Type Library, the contents of this file will be regenerated and all      //
  10. // manual modifications will be lost.                                       //
  11. // ************************************************************************ //
  12. // PASTLWTR : $Revision:   1.11.1.63  $
  13. // File generated on 6/26/98 7:22:40 PM from Type Library described below.
  14. // ************************************************************************ //
  15. // Type Lib: C:md4codePart523XFUSERXFUser.tlb
  16. // IIDLCID: {DB9C3240-0D2A-11D2-B9F1-004845400FAA}
  17. // Helpfile: 
  18. // HelpString: XUser Library
  19. // Version:    1.0
  20. // ************************************************************************ //
  21. interface
  22. uses Windows, ActiveX, Classes, Graphics, OleCtrls, StdVCL;
  23. // *********************************************************************//
  24. // GUIDS declared in the TypeLibrary. Following prefixes are used:      //
  25. //   Type Libraries     : LIBID_xxxx                                    //
  26. //   CoClasses          : CLASS_xxxx                                    //
  27. //   DISPInterfaces     : DIID_xxxx                                     //
  28. //   Non-DISP interfaces: IID_xxxx                                      //
  29. // *********************************************************************//
  30. const
  31.   LIBID_XFUser: TGUID = '{DB9C3240-0D2A-11D2-B9F1-004845400FAA}';
  32.   IID_IXFormUser: TGUID = '{DB9C3241-0D2A-11D2-B9F1-004845400FAA}';
  33.   DIID_IXFormUserEvents: TGUID = '{DB9C3243-0D2A-11D2-B9F1-004845400FAA}';
  34.   CLASS_XFormUser: TGUID = '{DB9C3245-0D2A-11D2-B9F1-004845400FAA}';
  35. // *********************************************************************//
  36. // Declaration of Enumerations defined in Type Library                  //
  37. // *********************************************************************//
  38. // TxActiveFormBorderStyle constants
  39. type
  40.   TxActiveFormBorderStyle = TOleEnum;
  41. const
  42.   afbNone = $00000000;
  43.   afbSingle = $00000001;
  44.   afbSunken = $00000002;
  45.   afbRaised = $00000003;
  46. // TxPrintScale constants
  47. type
  48.   TxPrintScale = TOleEnum;
  49. const
  50.   poNone = $00000000;
  51.   poProportional = $00000001;
  52.   poPrintToFit = $00000002;
  53. // TxMouseButton constants
  54. type
  55.   TxMouseButton = TOleEnum;
  56. const
  57.   mbLeft = $00000000;
  58.   mbRight = $00000001;
  59.   mbMiddle = $00000002;
  60. // TxBiDiMode constants
  61. type
  62.   TxBiDiMode = TOleEnum;
  63. const
  64.   bdLeftToRight = $00000000;
  65.   bdRightToLeft = $00000001;
  66.   bdRightToLeftNoAlign = $00000002;
  67.   bdRightToLeftReadingOnly = $00000003;
  68. type
  69. // *********************************************************************//
  70. // Forward declaration of interfaces defined in Type Library            //
  71. // *********************************************************************//
  72.   IXFormUser = interface;
  73.   IXFormUserDisp = dispinterface;
  74.   IXFormUserEvents = dispinterface;
  75. // *********************************************************************//
  76. // Declaration of CoClasses defined in Type Library                     //
  77. // (NOTE: Here we map each CoClass to its Default Interface)            //
  78. // *********************************************************************//
  79.   XFormUser = IXFormUser;
  80. // *********************************************************************//
  81. // Interface: IXFormUser
  82. // Flags:     (4416) Dual OleAutomation Dispatchable
  83. // GUID:      {DB9C3241-0D2A-11D2-B9F1-004845400FAA}
  84. // *********************************************************************//
  85.   IXFormUser = interface(IDispatch)
  86.     ['{DB9C3241-0D2A-11D2-B9F1-004845400FAA}']
  87.     function Get_Visible: WordBool; safecall;
  88.     procedure Set_Visible(Value: WordBool); safecall;
  89.     function Get_AutoScroll: WordBool; safecall;
  90.     procedure Set_AutoScroll(Value: WordBool); safecall;
  91.     function Get_AutoSize: WordBool; safecall;
  92.     procedure Set_AutoSize(Value: WordBool); safecall;
  93.     function Get_AxBorderStyle: TxActiveFormBorderStyle; safecall;
  94.     procedure Set_AxBorderStyle(Value: TxActiveFormBorderStyle); safecall;
  95.     function Get_Caption: WideString; safecall;
  96.     procedure Set_Caption(const Value: WideString); safecall;
  97.     function Get_Color: OLE_COLOR; safecall;
  98.     procedure Set_Color(Value: OLE_COLOR); safecall;
  99.     function Get_Font: IFontDisp; safecall;
  100.     procedure _Set_Font(const Value: IFontDisp); safecall;
  101.     procedure Set_Font(const Value: IFontDisp); safecall;
  102.     function Get_KeyPreview: WordBool; safecall;
  103.     procedure Set_KeyPreview(Value: WordBool); safecall;
  104.     function Get_PixelsPerInch: Integer; safecall;
  105.     procedure Set_PixelsPerInch(Value: Integer); safecall;
  106.     function Get_PrintScale: TxPrintScale; safecall;
  107.     procedure Set_PrintScale(Value: TxPrintScale); safecall;
  108.     function Get_Scaled: WordBool; safecall;
  109.     procedure Set_Scaled(Value: WordBool); safecall;
  110.     function Get_Active: WordBool; safecall;
  111.     function Get_DropTarget: WordBool; safecall;
  112.     procedure Set_DropTarget(Value: WordBool); safecall;
  113.     function Get_HelpFile: WideString; safecall;
  114.     procedure Set_HelpFile(const Value: WideString); safecall;
  115.     function Get_DoubleBuffered: WordBool; safecall;
  116.     procedure Set_DoubleBuffered(Value: WordBool); safecall;
  117.     function Get_Enabled: WordBool; safecall;
  118.     procedure Set_Enabled(Value: WordBool); safecall;
  119.     function Get_BiDiMode: TxBiDiMode; safecall;
  120.     procedure Set_BiDiMode(Value: TxBiDiMode); safecall;
  121.     function Get_Cursor: Smallint; safecall;
  122.     procedure Set_Cursor(Value: Smallint); safecall;
  123.     property Visible: WordBool read Get_Visible write Set_Visible;
  124.     property AutoScroll: WordBool read Get_AutoScroll write Set_AutoScroll;
  125.     property AutoSize: WordBool read Get_AutoSize write Set_AutoSize;
  126.     property AxBorderStyle: TxActiveFormBorderStyle read Get_AxBorderStyle write Set_AxBorderStyle;
  127.     property Caption: WideString read Get_Caption write Set_Caption;
  128.     property Color: OLE_COLOR read Get_Color write Set_Color;
  129.     property Font: IFontDisp read Get_Font write _Set_Font;
  130.     property KeyPreview: WordBool read Get_KeyPreview write Set_KeyPreview;
  131.     property PixelsPerInch: Integer read Get_PixelsPerInch write Set_PixelsPerInch;
  132.     property PrintScale: TxPrintScale read Get_PrintScale write Set_PrintScale;
  133.     property Scaled: WordBool read Get_Scaled write Set_Scaled;
  134.     property Active: WordBool read Get_Active;
  135.     property DropTarget: WordBool read Get_DropTarget write Set_DropTarget;
  136.     property HelpFile: WideString read Get_HelpFile write Set_HelpFile;
  137.     property DoubleBuffered: WordBool read Get_DoubleBuffered write Set_DoubleBuffered;
  138.     property Enabled: WordBool read Get_Enabled write Set_Enabled;
  139.     property BiDiMode: TxBiDiMode read Get_BiDiMode write Set_BiDiMode;
  140.     property Cursor: Smallint read Get_Cursor write Set_Cursor;
  141.   end;
  142. // *********************************************************************//
  143. // DispIntf:  IXFormUserDisp
  144. // Flags:     (4416) Dual OleAutomation Dispatchable
  145. // GUID:      {DB9C3241-0D2A-11D2-B9F1-004845400FAA}
  146. // *********************************************************************//
  147.   IXFormUserDisp = dispinterface
  148.     ['{DB9C3241-0D2A-11D2-B9F1-004845400FAA}']
  149.     property Visible: WordBool dispid 1;
  150.     property AutoScroll: WordBool dispid 2;
  151.     property AutoSize: WordBool dispid 3;
  152.     property AxBorderStyle: TxActiveFormBorderStyle dispid 4;
  153.     property Caption: WideString dispid -518;
  154.     property Color: OLE_COLOR dispid -501;
  155.     property Font: IFontDisp dispid -512;
  156.     property KeyPreview: WordBool dispid 5;
  157.     property PixelsPerInch: Integer dispid 6;
  158.     property PrintScale: TxPrintScale dispid 7;
  159.     property Scaled: WordBool dispid 8;
  160.     property Active: WordBool readonly dispid 9;
  161.     property DropTarget: WordBool dispid 10;
  162.     property HelpFile: WideString dispid 11;
  163.     property DoubleBuffered: WordBool dispid 12;
  164.     property Enabled: WordBool dispid -514;
  165.     property BiDiMode: TxBiDiMode dispid 13;
  166.     property Cursor: Smallint dispid 14;
  167.   end;
  168. // *********************************************************************//
  169. // DispIntf:  IXFormUserEvents
  170. // Flags:     (0)
  171. // GUID:      {DB9C3243-0D2A-11D2-B9F1-004845400FAA}
  172. // *********************************************************************//
  173.   IXFormUserEvents = dispinterface
  174.     ['{DB9C3243-0D2A-11D2-B9F1-004845400FAA}']
  175.     procedure OnActivate; dispid 1;
  176.     procedure OnClick; dispid 2;
  177.     procedure OnCreate; dispid 3;
  178.     procedure OnDblClick; dispid 4;
  179.     procedure OnDestroy; dispid 5;
  180.     procedure OnDeactivate; dispid 6;
  181.     procedure OnKeyPress(var Key: Smallint); dispid 10;
  182.     procedure OnPaint; dispid 15;
  183.   end;
  184. // *********************************************************************//
  185. // OLE Control Proxy class declaration
  186. // Control Name     : TXFormUser
  187. // Help String      : XFormUser Control
  188. // Default Interface: IXFormUser
  189. // Def. Intf. DISP? : No
  190. // Event   Interface: IXFormUserEvents
  191. // TypeFlags        : (34) CanCreate Control
  192. // *********************************************************************//
  193.   TXFormUserOnKeyPress = procedure(Sender: TObject; var Key: Smallint) of object;
  194.   TXFormUser = class(TOleControl)
  195.   private
  196.     FOnActivate: TNotifyEvent;
  197.     FOnClick: TNotifyEvent;
  198.     FOnCreate: TNotifyEvent;
  199.     FOnDblClick: TNotifyEvent;
  200.     FOnDestroy: TNotifyEvent;
  201.     FOnDeactivate: TNotifyEvent;
  202.     FOnKeyPress: TXFormUserOnKeyPress;
  203.     FOnPaint: TNotifyEvent;
  204.     FIntf: IXFormUser;
  205.     function  GetControlInterface: IXFormUser;
  206.   protected
  207.     procedure CreateControl;
  208.     procedure InitControlData; override;
  209.   public
  210.     property  ControlInterface: IXFormUser read GetControlInterface;
  211.     property Visible: WordBool index 1 read GetWordBoolProp write SetWordBoolProp;
  212.     property Active: WordBool index 9 read GetWordBoolProp;
  213.     property DropTarget: WordBool index 10 read GetWordBoolProp write SetWordBoolProp;
  214.     property HelpFile: WideString index 11 read GetWideStringProp write SetWideStringProp;
  215.     property DoubleBuffered: WordBool index 12 read GetWordBoolProp write SetWordBoolProp;
  216.     property Enabled: WordBool index -514 read GetWordBoolProp write SetWordBoolProp;
  217.     property BiDiMode: TOleEnum index 13 read GetTOleEnumProp write SetTOleEnumProp;
  218.   published
  219.     property AutoScroll: WordBool index 2 read GetWordBoolProp write SetWordBoolProp stored False;
  220.     property AutoSize: WordBool index 3 read GetWordBoolProp write SetWordBoolProp stored False;
  221.     property AxBorderStyle: TOleEnum index 4 read GetTOleEnumProp write SetTOleEnumProp stored False;
  222.     property Caption: WideString index -518 read GetWideStringProp write SetWideStringProp stored False;
  223.     property Color: TColor index -501 read GetTColorProp write SetTColorProp stored False;
  224.     property Font: TFont index -512 read GetTFontProp write SetTFontProp stored False;
  225.     property KeyPreview: WordBool index 5 read GetWordBoolProp write SetWordBoolProp stored False;
  226.     property PixelsPerInch: Integer index 6 read GetIntegerProp write SetIntegerProp stored False;
  227.     property PrintScale: TOleEnum index 7 read GetTOleEnumProp write SetTOleEnumProp stored False;
  228.     property Scaled: WordBool index 8 read GetWordBoolProp write SetWordBoolProp stored False;
  229.     property Cursor: Smallint index 14 read GetSmallintProp write SetSmallintProp stored False;
  230.     property OnActivate: TNotifyEvent read FOnActivate write FOnActivate;
  231.     property OnClick: TNotifyEvent read FOnClick write FOnClick;
  232.     property OnCreate: TNotifyEvent read FOnCreate write FOnCreate;
  233.     property OnDblClick: TNotifyEvent read FOnDblClick write FOnDblClick;
  234.     property OnDestroy: TNotifyEvent read FOnDestroy write FOnDestroy;
  235.     property OnDeactivate: TNotifyEvent read FOnDeactivate write FOnDeactivate;
  236.     property OnKeyPress: TXFormUserOnKeyPress read FOnKeyPress write FOnKeyPress;
  237.     property OnPaint: TNotifyEvent read FOnPaint write FOnPaint;
  238.   end;
  239. procedure Register;
  240. implementation
  241. uses ComObj;
  242. procedure TXFormUser.InitControlData;
  243. const
  244.   CEventDispIDs: array [0..7] of DWORD = (
  245.     $00000001, $00000002, $00000003, $00000004, $00000005, $00000006,
  246.     $0000000A, $0000000F);
  247.   CTFontIDs: array [0..0] of DWORD = (
  248.     $FFFFFE00);
  249.   CControlData: TControlData = (
  250.     ClassID: '{DB9C3245-0D2A-11D2-B9F1-004845400FAA}';
  251.     EventIID: '{DB9C3243-0D2A-11D2-B9F1-004845400FAA}';
  252.     EventCount: 8;
  253.     EventDispIDs: @CEventDispIDs;
  254.     LicenseKey: nil;
  255.     Flags: $0000001D;
  256.     Version: 300;
  257.     FontCount: 1;
  258.     FontIDs: @CTFontIDs);
  259. begin
  260.   ControlData := @CControlData;
  261. end;
  262. procedure TXFormUser.CreateControl;
  263.   procedure DoCreate;
  264.   begin
  265.     FIntf := IUnknown(OleObject) as IXFormUser;
  266.   end;
  267. begin
  268.   if FIntf = nil then DoCreate;
  269. end;
  270. function TXFormUser.GetControlInterface: IXFormUser;
  271. begin
  272.   CreateControl;
  273.   Result := FIntf;
  274. end;
  275. procedure Register;
  276. begin
  277.   RegisterComponents('ActiveX',[TXFormUser]);
  278. end;
  279. end.