BpcHTMLEditDesigner

From RiskWiki
Jump to: navigation, search

HTML Editor

Language: Delphi 7 - 2007


This is a straight implementation of Lindso Larsen's wrapper for MSHTML. Refer http://www.euromind.com/iedelphi

This implementation has substantially been superceded by Balsa EmbeddedWB

//***********************************************************
//               TbpcHTMLEditDesigner ver 1.00 (Jan. 14, 2000)     *
//                                                          *
//                     Freeware Component                   *
//                            by                            *
//                     Per Lindsø Larsen                    *
//                   per.lindsoe@larsen.dk                  *
//                                                          *
//  Documentation and updated versions:                     *
//                                                          *
//               http://www.euromind.com/iedelphi           *
//***********************************************************

unit bpcHTMLEditDesigner;

interface

uses
  Mshtml_Ewb {mshtml_tlb}, Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;


const

  SID_SHTMLEditServices: TGUID = (D1: $3050f7f9; D2: $98b5; D3: $11cf; D4: ($bb, $82, $00, $AA, $00, $bd, $ce, $0b));


type

  TbpcHTMLPreHandleEvent = function(inEvtDispId: Integer; const pIEventObj: IHTMLEventObj): HResult of object;
  TbpcHTMLPostHandleEvent = function(inEvtDispId: Integer; const pIEventObj: IHTMLEventObj): HResult of object;
  TbpcHTMLTranslateAccelerator = function(inEvtDispId: Integer; const pIEventObj: IHTMLEventObj): HResult of object;
  TbpcHTMLPostEditorEventNotify = function(inEvtDispId: Integer; const pIEventObj: IHTMLEventObj): HResult of object;


  TbpcHTMLEditDesigner = class(TComponent, IUnknown, IHtmlEditDesigner)
  private
    FPreHandleEvent: TbpcHTMLPreHandleEvent;
    FPostHandleEvent: TbpcHTMLPostHandleEvent;
    FTranslateAccelerator: TbpcHTMLTranslateAccelerator;
    FPostEditorEventNotify: TbpcHTMLPostEditorEventNotify;
    { Private declarations }
  protected
    { Protected declarations }
    function PreHandleEvent(inEvtDispId: Integer; const pIEventObj: IHTMLEventObj): HResult; stdcall;
    function PostHandleEvent(inEvtDispId: Integer; const pIEventObj: IHTMLEventObj): HResult; stdcall;
    function TranslateAccelerator(inEvtDispId: Integer; const pIEventObj: IHTMLEventObj): HResult; stdcall;
    function PostEditorEventNotify(inEvtDispId: Integer; const pIEventObj: IHTMLEventObj): HResult; stdcall;
  public
    { Public declarations }
  published
    property OnPreHandleEvent: TbpcHTMLPreHandleEvent read FPreHandleEvent write FPreHandleEvent;
    property OnPostHandleEvent: TbpcHTMLPostHandleEvent read FPostHandleEvent write FPostHandleEvent;
    property OnPostEditorEventNotify: TbpcHTMLPostEditorEventNotify read FPostEditorEventNotify write FPostEditorEventNotify;
    property OnTranslateAccelerator: TbpcHTMLTranslateAccelerator read FTranslateAccelerator write FTranslateAccelerator;
    { Published declarations }
  end;

BackLinks