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

📄 website.java

📁 源码为Eclipse开源开发平台桌面开发工具SWT的源代码,
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/******************************************************************************* * Copyright (c) 2000, 2004 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Common Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/cpl-v10.html *  * Contributors: *     IBM Corporation - initial API and implementation *******************************************************************************/package org.eclipse.swt.browser;import org.eclipse.swt.*;import org.eclipse.swt.internal.ole.win32.*;import org.eclipse.swt.ole.win32.*;import org.eclipse.swt.widgets.*;import org.eclipse.swt.internal.win32.*;class WebSite extends OleControlSite {	COMObject iDocHostUIHandler;	COMObject iDocHostShowUI;	COMObject iServiceProvider;	COMObject iInternetSecurityManager;public WebSite(Composite parent, int style, String progId) {	super(parent, style, progId);		}protected void createCOMInterfaces () {	super.createCOMInterfaces();	iDocHostUIHandler = new COMObject(new int[]{2, 0, 0, 4, 1, 5, 0, 0, 1, 1, 1, 3, 3, 2, 2, 1, 3, 2}){		public int method0(int[] args) {return QueryInterface(args[0], args[1]);}		public int method1(int[] args) {return AddRef();}		public int method2(int[] args) {return Release();}		public int method3(int[] args) {return ShowContextMenu(args[0], args[1], args[2], args[3]);}		public int method4(int[] args) {return GetHostInfo(args[0]);}		public int method5(int[] args) {return ShowUI(args[0], args[1], args[2], args[3], args[4]);}		public int method6(int[] args) {return HideUI();}		public int method7(int[] args) {return UpdateUI();}		public int method8(int[] args) {return EnableModeless(args[0]);}		public int method9(int[] args) {return OnDocWindowActivate(args[0]);}		public int method10(int[] args) {return OnFrameWindowActivate(args[0]);}		public int method11(int[] args) {return ResizeBorder(args[0], args[1], args[2]);}		public int method12(int[] args) {return TranslateAccelerator(args[0], args[1], args[2]);}		public int method13(int[] args) {return GetOptionKeyPath(args[0], args[1]);}		public int method14(int[] args) {return GetDropTarget(args[0], args[1]);}		public int method15(int[] args) {return GetExternal(args[0]);}		public int method16(int[] args) {return TranslateUrl(args[0], args[1], args[2]);}				public int method17(int[] args) {return FilterDataObject(args[0], args[1]);}	};	iDocHostShowUI = new COMObject(new int[]{2, 0, 0, 7, 7}){		public int method0(int[] args) {return QueryInterface(args[0], args[1]);}		public int method1(int[] args) {return AddRef();}		public int method2(int[] args) {return Release();}		public int method3(int[] args) {return ShowMessage(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);}		public int method4(int[] args) {return ShowHelp(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);}	};	iServiceProvider = new COMObject(new int[]{2, 0, 0, 3}){		public int method0(int[] args) {return QueryInterface(args[0], args[1]);}		public int method1(int[] args) {return AddRef();}		public int method2(int[] args) {return Release();}		public int method3(int[] args) {return QueryService(args[0], args[1], args[2]);}	};	iInternetSecurityManager = new COMObject(new int[]{2, 0, 0, 1, 1, 3, 4, 8, 7, 3, 3}){		public int method0(int[] args) {return QueryInterface(args[0], args[1]);}		public int method1(int[] args) {return AddRef();}		public int method2(int[] args) {return Release();}		public int method3(int[] args) {return SetSecuritySite(args[0]);}		public int method4(int[] args) {return GetSecuritySite(args[0]);}		public int method5(int[] args) {return MapUrlToZone(args[0], args[1], args[2]);}		public int method6(int[] args) {return GetSecurityId(args[0], args[1], args[2], args[3]);}		public int method7(int[] args) {return ProcessUrlAction(args[0], args[1], args[2], args[3], args[4], args[5], args[6], args[7]);}		public int method8(int[] args) {return QueryCustomPolicy(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);}		public int method9(int[] args) {return SetZoneMapping(args[0], args[1], args[2]);}		public int method10(int[] args) {return GetZoneMappings(args[0], args[1], args[2]);}	};}protected void disposeCOMInterfaces() {	super.disposeCOMInterfaces();	if (iDocHostUIHandler != null) {		iDocHostUIHandler.dispose();		iDocHostUIHandler = null;	}	if (iDocHostShowUI != null) {		iDocHostShowUI.dispose();		iDocHostShowUI = null;	}	if (iServiceProvider != null) {		iServiceProvider.dispose();		iServiceProvider = null;	}	if (iInternetSecurityManager != null) {		iInternetSecurityManager.dispose();		iInternetSecurityManager = null;	}}protected int AddRef() {	/* Workaround for javac 1.1.8 bug */	return super.AddRef();}protected int QueryInterface(int riid, int ppvObject) {	int result = super.QueryInterface(riid, ppvObject);	if (result == COM.S_OK) return result;	if (riid == 0 || ppvObject == 0) return COM.E_INVALIDARG;	GUID guid = new GUID();	COM.MoveMemory(guid, riid, GUID.sizeof);	if (COM.IsEqualGUID(guid, COM.IIDIDocHostUIHandler)) {		COM.MoveMemory(ppvObject, new int[] {iDocHostUIHandler.getAddress()}, 4);		AddRef();		return COM.S_OK;	}	if (COM.IsEqualGUID(guid, COM.IIDIDocHostShowUI)) {		COM.MoveMemory(ppvObject, new int[] {iDocHostShowUI.getAddress()}, 4);		AddRef();		return COM.S_OK;	}	if (COM.IsEqualGUID(guid, COM.IIDIServiceProvider)) {		COM.MoveMemory(ppvObject, new int[] {iServiceProvider.getAddress()}, 4);		AddRef();		return COM.S_OK;	}	COM.MoveMemory(ppvObject, new int[] {0}, 4);	return COM.E_NOINTERFACE;}/* IDocHostUIHandler */int EnableModeless(int EnableModeless) {	return COM.E_NOTIMPL;}int FilterDataObject(int pDO, int ppDORet) {	return COM.E_NOTIMPL;}int GetDropTarget(int pDropTarget, int ppDropTarget) {	return COM.E_NOTIMPL;}int GetExternal(int ppDispatch) {	return COM.E_NOTIMPL;}int GetHostInfo(int pInfo) {	return COM.E_NOTIMPL;}int GetOptionKeyPath(int pchKey, int dw) {	return COM.E_NOTIMPL;}int HideUI() {	return COM.E_NOTIMPL;}int OnDocWindowActivate(int fActivate) {	return COM.E_NOTIMPL;}int OnFrameWindowActivate(int fActivate) {	return COM.E_NOTIMPL;}protected int Release() {	/* Workaround for javac 1.1.8 bug */	return super.Release();}int ResizeBorder(int prcBorder, int pUIWindow, int fFrameWindow) {	return COM.E_NOTIMPL;}int ShowContextMenu(int dwID, int ppt, int pcmdtReserved, int pdispReserved) {	Browser browser = (Browser)getParent().getParent();	Event event = new Event();	POINT pt = new POINT();	OS.MoveMemory(pt, ppt, POINT.sizeof);	event.x = pt.x;	event.y = pt.y;	browser.notifyListeners(SWT.MenuDetect, event);	if (!event.doit) return COM.S_OK;	Menu menu = browser.getMenu();	if (menu != null && !menu.isDisposed ()) {		if (pt.x != event.x || pt.y != event.y) {			menu.setLocation (event.x, event.y);		}		menu.setVisible (true);		return COM.S_OK;	}	/* Show default IE popup menu */	return COM.S_FALSE;}int ShowUI(int dwID, int pActiveObject, int pCommandTarget, int pFrame, int pDoc) {	return COM.E_NOTIMPL;}int TranslateAccelerator(int lpMsg, int pguidCmdGroup, int nCmdID) {	/*	* Feature on Internet Explorer.  By default the embedded Internet Explorer control runs	* the Internet Explorer shortcuts (e.g. F5 for refresh).  This overrides the shortcuts	* defined by SWT.  The workaround is to forward the accelerator keys to the parent window	* and have Internet Explorer ignore the ones handled by the parent window.	*/	Menu menubar = getShell().getMenuBar();	if (menubar != null && !menubar.isDisposed() && menubar.isEnabled()) {		Shell shell = menubar.getShell();		int hwnd = shell.handle;		int hAccel = OS.SendMessage(hwnd, OS.WM_APP+1, 0, 0);		if (hAccel != 0) {			MSG msg = new MSG();			OS.MoveMemory(msg, lpMsg, MSG.sizeof);			if (OS.TranslateAccelerator(hwnd, hAccel, msg) != 0) return COM.S_OK;		}	}	/*	* Feature on Internet Explorer.  By default the embedded Internet Explorer control runs

⌨️ 快捷键说明

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