⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 profdhtmledit.pas

📁 Prof DHTML Edit 2.0.3.7 for delphi
💻 PAS
📖 第 1 页 / 共 5 页
字号:
    function TableDeleteCell: Boolean; override;
    function CanTableDeleteCell: Boolean; override;
    function TableSplitCell: Boolean; override;
    function CanTableSplitCell: Boolean; override;
    function TableMergeCells: Boolean; override;
    function CanTableMergeCells: Boolean; override;

    property ShowBrTags: Boolean write SetShowBrTags;
    property ShowCommentTags: Boolean write SetShowCommentTags;

  published

    property Appearance: Integer index 13 read GetIntegerProp write SetIntegerProp stored False;
    property BrowseMode: WordBool index 26 read GetWordBoolProp write SetWordBoolProp stored False;
    property Scrollbars: WordBool index 14 read GetWordBoolProp write SetWordBoolProp stored False;
    property ScrollbarAppearance: Integer index 15 read GetIntegerProp write SetIntegerProp stored False;
    property ShowBorders: WordBool index 12 read GetWordBoolProp write SetWordBoolProp stored False;
    property ShowDetails: WordBool index 11 read GetWordBoolProp write SetWordBoolProp stored False;
    property SourceCodePreservation: WordBool index 16 read GetWordBoolProp write SetWordBoolProp stored False;
    property UseDivOnCarriageReturn: WordBool index 30 read GetWordBoolProp write SetWordBoolProp stored False;

    {$IFNDEF VER100}{$IFNDEF VER110}
    property BiDiMode;
    property ParentBiDiMode;
    {$ENDIF}{$ENDIF}

    property OnClearUndo: TNotifyEvent read FOnClearUndo write FOnClearUndo;
  end;
{$ENDIF}


  TWebBrowserStatusTextChange = procedure(ASender: TObject; const Text: WideString) of object;
  TWebBrowserProgressChange = procedure(ASender: TObject; Progress: Integer; ProgressMax: Integer) of object;
  TWebBrowserCommandStateChange = procedure(ASender: TObject; Command: Integer; Enable: WordBool) of object;
  TWebBrowserTitleChange = procedure(ASender: TObject; const Text: WideString) of object;
  TWebBrowserPropertyChange = procedure(ASender: TObject; const szProperty: WideString) of object;
  TWebBrowserBeforeNavigate2 = procedure(ASender: TObject; const pDisp: IDispatch; var URL: OleVariant; var Flags: OleVariant; var TargetFrameName: OleVariant; var PostData: OleVariant; var Headers: OleVariant; var Cancel: WordBool) of object;
  TWebBrowserNewWindow2 = procedure(ASender: TObject; var ppDisp: IDispatch; var Cancel: WordBool) of object;
  TWebBrowserNavigateComplete2 = procedure(ASender: TObject; const pDisp: IDispatch; var URL: OleVariant) of object;
  TWebBrowserDocumentComplete = procedure(ASender: TObject; const pDisp: IDispatch; var URL: OleVariant) of object;
  TWebBrowserOnVisible = procedure(ASender: TObject; Visible: WordBool) of object;
  TWebBrowserOnToolBar = procedure(ASender: TObject; ToolBar: WordBool) of object;
  TWebBrowserOnMenuBar = procedure(ASender: TObject; MenuBar: WordBool) of object;
  TWebBrowserOnStatusBar = procedure(ASender: TObject; StatusBar: WordBool) of object;
  TWebBrowserOnFullScreen = procedure(ASender: TObject; FullScreen: WordBool) of object;
  TWebBrowserOnTheaterMode = procedure(ASender: TObject; TheaterMode: WordBool) of object;
  TWebBrowserWindowSetResizable = procedure(ASender: TObject; Resizable: WordBool) of object;
  TWebBrowserWindowSetLeft = procedure(ASender: TObject; Left: Integer) of object;
  TWebBrowserWindowSetTop = procedure(ASender: TObject; Top: Integer) of object;
  TWebBrowserWindowSetWidth = procedure(ASender: TObject; Width: Integer) of object;
  TWebBrowserWindowSetHeight = procedure(ASender: TObject; Height: Integer) of object;
  TWebBrowserWindowClosing = procedure(ASender: TObject; IsChildWindow: WordBool; var Cancel: WordBool) of object;
  TWebBrowserClientToHostWindow = procedure(ASender: TObject; var CX: Integer; var CY: Integer) of object;
  TWebBrowserSetSecureLockIcon = procedure(ASender: TObject; SecureLockIcon: Integer) of object;
  TWebBrowserFileDownload = procedure(ASender: TObject; var Cancel: WordBool) of object;
  TWebBrowserNavigateError = procedure(ASender: TObject; const pDisp: IDispatch; var URL: OleVariant; var Frame: OleVariant; var StatusCode: OleVariant; var Cancel: WordBool) of object;
  TWebBrowserPrintTemplateInstantiation = procedure(ASender: TObject; const pDisp: IDispatch) of object;
  TWebBrowserPrintTemplateTeardown = procedure(ASender: TObject; const pDisp: IDispatch) of object;
  TWebBrowserUpdatePageStatus = procedure(ASender: TObject; const pDisp: IDispatch; var nPage: OleVariant; var fDone: OleVariant) of object;
  TWebBrowserPrivacyImpactedStateChange = procedure(ASender: TObject; bImpacted: WordBool) of object;
  TWebBrowserNewWindow3 = procedure(ASender: TObject; var ppDisp: IDispatch; var Cancel: WordBool; dwFlags: DWORD; const bstrUrlContext: WideString; const bstrUrl: WideString) of object;
  TWebBrowserSetPhishingFilterStatus = procedure(ASender: TObject; PhishingFilterStatus: Integer) of object;
  TWebBrowserWindowStateChanged = procedure(ASender: TObject; dwWindowStateFlags: DWORD; dwValidFlagsMask: DWORD) of object;


  TDHTMLEvent =
  (
   _onabort,
   _onactivate,
   _onafterprint,
   _onafterupdate,
   _onbeforeactivate,
   _onbeforecopy,
   _onbeforecut,
   _onbeforedeactivate,
   _onbeforeeditfocus,
   _onbeforepaste,
   _onbeforeprint,
   _onbeforeunload,
   _onbeforeupdate,
   _onblur,
   _onbounce,
   _oncellchange,
   _onchange,
   _onclick,
   _oncontextmenu,
   _oncontrolselect,
   _oncopy,
   _oncut,
   _ondataavailable,
   _ondatasetchanged,
   _ondatasetcomplete,
   _ondblclick,
   _ondeactivate,
   _ondrag,
   _ondragend,
   _ondragenter,
   _ondragleave,
   _ondragover,
   _ondragstart,
   _ondrop,
   _onerror,
   _onerrorupdate,
   _onfilterchange,
   _onfinish,
   _onfocus,
   _onfocusin,
   _onfocusout,
   _onhelp,
   _onkeydown,
   _onkeypress,
   _onkeyup,
   _onlayoutcomplete,
   _onload,
   _onlosecapture,
   _onmousedown,
   _onmouseenter,
   _onmouseleave,
   _onmousemove,
   _onmouseout,
   _onmouseover,
   _onmouseup,
   _onmousewheel,
   _onmove,
   _onmoveend,
   _onmovestart,
   _onpaste,
   _onpropertychange,
   _onreadystatechange,
   _onreset,
   _onresize,
   _onresizeend,
   _onresizestart,
   _onrowenter,
   _onrowexit,
   _onrowsdelete,
   _onrowsinserted,
   _onscroll,
   _onselect,
   _onselectionchange,
   _onselectstart,
   _onstart,
   _onstop,
   _onsubmit,
   _onunload
  );


  TProfDHTMLEdit2 = class(TCustomProfDHTMLEdit, IDocHostUIHandler)
  private
    FOnStatusTextChange: TWebBrowserStatusTextChange;
    FOnProgressChange: TWebBrowserProgressChange;
    FOnCommandStateChange: TWebBrowserCommandStateChange;
    FOnDownloadBegin: TNotifyEvent;
    FOnDownloadComplete: TNotifyEvent;
    FOnTitleChange: TWebBrowserTitleChange;
    FOnPropertyChange: TWebBrowserPropertyChange;
    FOnBeforeNavigate2: TWebBrowserBeforeNavigate2;
    FOnNewWindow2: TWebBrowserNewWindow2;
    FOnNavigateComplete2: TWebBrowserNavigateComplete2;
    FOnDocumentComplete: TWebBrowserDocumentComplete;
    FOnQuit: TNotifyEvent;
    FOnVisible: TWebBrowserOnVisible;
    FOnToolBar: TWebBrowserOnToolBar;
    FOnMenuBar: TWebBrowserOnMenuBar;
    FOnStatusBar: TWebBrowserOnStatusBar;
    FOnFullScreen: TWebBrowserOnFullScreen;
    FOnTheaterMode: TWebBrowserOnTheaterMode;
    FOnWindowSetResizable: TWebBrowserWindowSetResizable;
    FOnWindowSetLeft: TWebBrowserWindowSetLeft;
    FOnWindowSetTop: TWebBrowserWindowSetTop;
    FOnWindowSetWidth: TWebBrowserWindowSetWidth;
    FOnWindowSetHeight: TWebBrowserWindowSetHeight;
    FOnWindowClosing: TWebBrowserWindowClosing;
    FOnClientToHostWindow: TWebBrowserClientToHostWindow;
    FOnSetSecureLockIcon: TWebBrowserSetSecureLockIcon;
    FOnFileDownload: TWebBrowserFileDownload;
    FOnNavigateError: TWebBrowserNavigateError;
    FOnPrintTemplateInstantiation: TWebBrowserPrintTemplateInstantiation;
    FOnPrintTemplateTeardown: TWebBrowserPrintTemplateTeardown;
    FOnUpdatePageStatus: TWebBrowserUpdatePageStatus;
    FOnPrivacyImpactedStateChange: TWebBrowserPrivacyImpactedStateChange;
    FOnNewWindow3: TWebBrowserNewWindow3;
    FOnSetPhishingFilterStatus: TWebBrowserSetPhishingFilterStatus;
    FOnWindowStateChanged: TWebBrowserWindowStateChanged;

    FOnBeforePaste: TNotifyEvent;
    FOnPaste: TNotifyEvent;

    FUseDivOnCarriageReturn: Boolean;
    FBrowseMode: Boolean;
    FSourceCodePreservation: Boolean;
    FShowDetails: Boolean;
    FShowBorders: Boolean;
    FScrollBars: Boolean;
    FFlat: Boolean;
    FFlatScrollBars: Boolean;
    FDoNavigate: Boolean;

    procedure InitControlData; override;
    function OnFocus(fGotFocus: BOOL): HRESULT; override; stdcall;
    function GetAbout: AnsiString; override;
    function RuntimeBrowseMode: Boolean; override;
    function RuntimeUseDivOnCarriageReturn: Boolean; override;
    function RuntimeShowDetails: Boolean; override;
    function RuntimeSourceCodePreservation: Boolean; override;
    function UseSourceCodePreservation: Boolean; override;
    function private_NewDocument(const param: WideString): Boolean; override;
    function private_LoadURL(const param: WideString): Boolean; override;
    function private_LoadFromFile(const param: WideString): Boolean; override;
    procedure private_SaveToFile(const param: WideString); override;
    function GetBusy: Boolean; override;
    function GetFileName: WideString; override;
    function GetBaseURL: WideString; override;
    procedure SetBaseURL(const Value: WideString); override;
    function GetModified: Boolean; override;
    function GetTitle: WideString; override;
    function GetHTML: WideString; override;
    function ReadDOM: IDispatch; override;
    procedure DoSetModified(Value: Boolean); override;
    function DoClearUndo(AReason: TProfDHTMLEditDocumentCompleteReason): Boolean; override;
    procedure SetSource(const Value: WideString); override;
    function CallAndWait(const dom_stop: IDispatch; const Code: TProfDHTMLEditDocumentCompleteReason; const Method: TProfDHTMLEditPrivateMethod; const param: WideString): Boolean; override;
    function MSSource: WideString; override;

    procedure InitializeRuntime;
    procedure AttachDocumentEvents;
    procedure AttachBodyEvents;
    procedure HandleEvent(AEvent: TDHTMLEvent);
    procedure DoSetShowDetails(Value: Boolean);
    function DoSetShowBorders(Value: Boolean): Boolean;
    procedure DoNavigate(const URL: WideString);

    procedure StatusTextChangeHandler(ASender: TObject; const Text: WideString);
    procedure ProgressChangeHandler(ASender: TObject; Progress: Integer; ProgressMax: Integer);
    procedure CommandStateChangeHandler(ASender: TObject; Command: Integer; Enable: WordBool);
    procedure OnDownloadBeginHandler(Sender: TObject);
    procedure OnDownloadCompleteHandler(Sender: TObject);
    procedure TitleChangeHandler(ASender: TObject; const Text: WideString);
    procedure PropertyChangeHandler(ASender: TObject; const szProperty: WideString);
    procedure BeforeNavigate2Handler(ASender: TObject; const pDisp: IDispatch; var URL: OleVariant; var Flags: OleVariant; var TargetFrameName: OleVariant; var PostData: OleVariant; var Headers: OleVariant; var Cancel: WordBool);
    procedure NewWindow2Handler(ASender: TObject; var ppDisp: IDispatch; var Cancel: WordBool);
    procedure NavigateComplete2Handler(ASender: TObject; const pDisp: IDispatch; var URL: OleVariant);
    procedure DocumentCompleteHandler(ASender: TObject; const pDisp: IDispatch; var URL: OleVariant);
    procedure OnQuitHandler(Sender: TObject);
    procedure OnVisibleHandler(ASender: TObject; Visible: WordBool);
    procedure OnToolBarHandler(ASender: TObject; ToolBar: WordBool);
    procedure OnMenuBarHandler(ASender: TObject; MenuBar: WordBool);
    procedure OnStatusBarHandler(ASender: TObject; StatusBar: WordBool);
    procedure OnFullScreenHandler(ASender: TObject; FullScreen: WordBool);
    procedure OnTheaterModeHandler(ASender: TObject; TheaterMode: WordBool);
    procedure WindowSetResizableHandler(ASender: TObject; Resizable: WordBool);
    procedure WindowSetLeftHandler(ASender: TObject; Left: Integer);
    procedure WindowSetTopHandler(ASender: TObject; Top: Integer);
    procedure WindowSetWidthHandler(ASender: TObject; Width: Integer);
    procedure WindowSetHeightHandler(ASender: TObject; Height: Integer);
    procedure WindowClosingHandler(ASender: TObject; IsChildWindow: WordBool; var Cancel: WordBool);
    procedure ClientToHostWindowHandler(ASender: TObject; var CX: Integer; var CY: Integer);
    procedure SetSecureLockIconHandler(ASender: TObject; SecureLockIcon: Integer);
    procedure FileDownloadHandler(ASender: TObject; var Cancel: WordBool);
    procedure NavigateErrorHandler(ASender: TObject; const pDisp: IDispatch; var URL: OleVariant; var Frame: OleVariant; var StatusCode: OleVariant; var Cancel: WordBool);
    procedure PrintTemplateInstantiationHandler(ASender: TObject; const pDisp: IDispatch);
    procedure PrintTemplateTeardownHandler(ASender: TObject; const pDisp: IDispatch);
    procedure UpdatePageStatusHandler(ASender: TObject; const pDisp: IDispatch; var nPage: OleVariant; var fDone: OleVariant);
    procedure PrivacyImpactedStateChangeHandler(ASender: TObject; bImpacted: WordBool);
    procedure NewWindow3Handler(ASender: TObject; var ppDisp: IDispatch; var Cancel: WordBool; dwFlags: DWORD; const bstrUrlContext: WideString; const bstrUrl: WideString);
    procedure SetPhishingFilterStatusHandler(ASender: TObject; PhishingFilterStatus: Integer);
    procedure WindowStateChangedHandler(ASender: TObject; dwWindowStateFlags: DWORD; dwValidFlagsMask: DWORD);

    procedure ReadyStateChangeHandler(Sender: TObject); override;
    procedure BeforePasteHandler(Sender: TObject);
    procedure PasteHandler(Sender: TObject);

    function GetBrowseMode: Boolean

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -