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

📄 xrendererlistenersupport.java

📁 XBrowser是一个完全免费并且开源的Web浏览器
💻 JAVA
字号:
/****************************************************************
*              XBrowser  -  eXtended web Browser                *
*                                                               *
*           Copyright (c) 2000-2001  Armond Avanes              *
*     Refer to ReadMe & License files for more information      *
*                                                               *
*                                                               *
*                 By: Uladzimir V. Kavalchuk                    *
*               Uladzimir_Kavalchuk@ep.minsk.by                 *
*               http://xbrowser.sourceforge.net/                *
*****************************************************************/
package xbrowser.renderer.event;

import java.applet.*;
import java.util.*;
import java.awt.print.*;

public class XRendererListenerSupport extends LinkedList implements XRendererListener
{
	interface Closure
	{
		void call(XRendererListener rl);
	}

	public void addListener(XRendererListener rl)
	{
		add(rl);
	}

	public void removeListener(XRendererListener rl)
	{
		remove(rl);
	}

	protected void callAll(Closure callee)
	{
	Iterator i = ((LinkedList)clone()).iterator();

		while( i.hasNext() )
			callee.call( (XRendererListener)i.next() );
	}

	public void hyperlinkEntered(String hyper_link)
	{
	final String hl = hyper_link;

		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.hyperlinkEntered( hl);
			}
		});
	}

	public void hyperlinkExited(String hyper_link)
	{
	final String hl = hyper_link;

		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.hyperlinkExited(hl);
			}
		});
	}

	public void pageLoadingProgress(long read_size, long entire_size)
	{
	final long rs = read_size, es = entire_size;

		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.pageLoadingProgress(rs, es);
			}
		});
	}

	public void pageLoadingFinished(Exception e)
	{
	final Exception x = e;

		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.pageLoadingFinished(x);
			}
		});
	}

	public void pageLoadingStarted()
	{
		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.pageLoadingStarted();
			}
		});
	}

	public void pageLoadingStopped()
	{
		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.pageLoadingStopped();
			}
		});
	}

	public void pageAddedToHistory(String url)
	{
	final String u = url;

		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.pageAddedToHistory(u);
			}
		});
	}

	public void pagePrintingStarted()
	{
		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.pagePrintingStarted();
			}
		});
	}

	public void pagePrintingFinished(PrinterException e)
	{
	final PrinterException x = e;

		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.pagePrintingFinished(x);
			}
		});
	}

	public void renderingPage(int page_index)
	{
	final int pi = page_index;

		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.renderingPage(pi);
			}
		});
	}

	public void renderingFinished()
	{
		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.renderingFinished();
			}
		});
	}

	public void showAppletStatus(String status)
	{
	final String u = status;

		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.showAppletStatus(u);
			}
		});
	}

	public void showAppletLifeCycle(Applet applet, int status)
	{
	final Applet a = applet;
	final int s = status;

		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.showAppletLifeCycle(a, s);
			}
		});
	}

	public void showStatus(String status)
	{
	final String u = status;

		callAll( new Closure() {
			public void call(XRendererListener rl)
			{
				rl.showStatus(u);
			}
		});
	}
}

⌨️ 快捷键说明

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