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

📄 aboutwindow.java

📁 java 文件下载器。可自定义
💻 JAVA
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space 
// Source File Name:   AboutWindow.java

package org.gudy.azureus2.ui.swt.help;

import com.aelitis.azureus.ui.swt.imageloader.ImageLoader;
import java.util.Properties;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CLabel;
import org.eclipse.swt.events.*;
import org.eclipse.swt.graphics.*;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.*;
import org.gudy.azureus2.core3.config.COConfigurationManager;
import org.gudy.azureus2.core3.internat.MessageText;
import org.gudy.azureus2.core3.util.*;
import org.gudy.azureus2.ui.swt.Messages;
import org.gudy.azureus2.ui.swt.Utils;
import org.gudy.azureus2.ui.swt.components.shell.ShellFactory;
import org.gudy.azureus2.ui.swt.mainwindow.*;

public class AboutWindow
{

	private static final String IMG_SPLASH = "azureus_splash";
	static Image image;
	static AEMonitor class_mon = new AEMonitor("AboutWindow");
	private static Shell instance;
	private static Image imgSrc;

	public AboutWindow()
	{
	}

	public static void show(Display display)
	{
		if (instance != null)
		{
			instance.open();
			return;
		}
		Properties properties = new Properties();
		try
		{
			properties.load(org/gudy/azureus2/ui/swt/help/AboutWindow.getClassLoader().getResourceAsStream("org/gudy/azureus2/ui/swt/about.properties"));
		}
		catch (Exception e1)
		{
			Debug.printStackTrace(e1);
			return;
		}
		Shell window = ShellFactory.createMainShell(Constants.isOSX ? 2144 : 0x10860);
		Utils.setShellIcon(window);
		window.setText((new StringBuilder()).append(MessageText.getString("MainWindow.about.title")).append(" ").append("4.2.0.0").toString());
		window.setLayout(new GridLayout(3, false));
		ImageLoader imageLoader = ImageLoader.getInstance();
		image = imageLoader.getImage("azureus_splash");
		if (image != null)
		{
			int w = image.getBounds().width;
			int ow = w;
			if (w > 350)
				w = 350;
			int h = image.getBounds().height;
			h = 220;
			imgSrc = new Image(display, w, h);
			GC gc = new GC(imgSrc);
			gc.drawImage(image, (w - ow) / 2, 0);
			gc.dispose();
			Image imgGray = new Image(display, imageLoader.getImage("azureus_splash"), 2);
			imageLoader.releaseImage("azureus_splash");
			gc = new GC(imgGray);
			if (Constants.isOSX)
				gc.drawImage(imgGray, (w - ow) / 2, 0);
			else
				gc.copyArea(0, 0, ow, h, (w - ow) / 2, 0);
			gc.dispose();
			Image image2 = new Image(display, w, h);
			gc = new GC(image2);
			gc.setBackground(Colors.black);
			gc.fillRectangle(image2.getBounds());
			gc.dispose();
			image = Utils.renderTransparency(display, image2, imgGray, new Point(0, 0), 180);
			image2.dispose();
			imgGray.dispose();
		}
		imageLoader.releaseImage("azureus_splash");
		Group gDevelopers = new Group(window, 0);
		gDevelopers.setLayout(new GridLayout());
		Messages.setLanguageText(gDevelopers, "MainWindow.about.section.developers");
		GridData gridData = new GridData(272);
		gDevelopers.setLayoutData(gridData);
		Label label = new Label(gDevelopers, 16384);
		label.setText(properties.getProperty("developers"));
		label.setLayoutData(gridData = new GridData());
		Label labelImage = new Label(window, 0);
		labelImage.setImage(image);
		gridData = new GridData(64);
		labelImage.setLayoutData(gridData);
		Group gTranslators = new Group(window, 0);
		GridLayout gl = new GridLayout();
		gl.marginHeight = 2;
		gl.marginWidth = 0;
		gTranslators.setLayout(gl);
		Messages.setLanguageText(gTranslators, "MainWindow.about.section.translators");
		gridData = new GridData(272);
		gTranslators.setLayoutData(gridData);
		Text txtTrans = new Text(gTranslators, 0x8004a);
		txtTrans.setText(properties.getProperty("translators"));
		gridData = new GridData(1808);
		gridData.heightHint = txtTrans.computeSize(-1, -1).y + 10;
		txtTrans.setLayoutData(gridData);
		txtTrans.setBackground(display.getSystemColor(22));
		Group gInternet = new Group(window, 0);
		GridLayout gridLayout = new GridLayout();
		gridLayout.numColumns = 2;
		gridLayout.makeColumnsEqualWidth = true;
		gInternet.setLayout(gridLayout);
		Messages.setLanguageText(gInternet, "MainWindow.about.section.internet");
		gridData = new GridData(272);
		gridData.horizontalSpan = 2;
		gInternet.setLayoutData(gridData);
		Group gSys = new Group(window, 0);
		gSys.setLayout(new GridLayout());
		Messages.setLanguageText(gSys, "MainWindow.about.section.system");
		gridData = new GridData(272);
		gridData.verticalSpan = 1;
		gSys.setLayoutData(gridData);
		Text txtSysInfo = new Text(gSys, 74);
		txtSysInfo.setBackground(display.getSystemColor(22));
		txtSysInfo.setText((new StringBuilder()).append("Java ").append(System.getProperty("java.version")).append("\n ").append(System.getProperty("java.vendor")).append("\n").append("SWT v").append(SWT.getVersion()).append(", ").append(SWT.getPlatform()).append("\n").append(System.getProperty("os.name")).append(" v").append(System.getProperty("os.version")).append(", ").append(System.getProperty("os.arch")).append("\n").append(Constants.APP_NAME.charAt(0)).append("4.2.0.0").append(" ").append(COConfigurationManager.getStringParameter("ui")).toString());
		txtSysInfo.setLayoutData(gridData = new GridData(1808));
		if (window.getCaret() != null)
			window.getCaret().setVisible(false);
		String link[][] = {
			{
				"homepage", "sourceforge", "sourceforgedownloads", "bugreports", "forumdiscussion", "wiki"
			}, {
				"http://www.vuze.com", "http://sourceforge.net/projects/azureus/", "http://sourceforge.net/project/showfiles.php?group_id=84122", Constants.isCVSVersion() ? "http://forum.vuze.com/forum.jspa?forumID=4" : "http://sourceforge.net/tracker/?atid=575154&group_id=84122&func=browse", "http://forum.vuze.com/index.jspa", "http://www.azureuswiki.com/index.php/"
			}
		};
		for (int i = 0; i < link[0].length; i++)
		{
			CLabel linkLabel = new CLabel(gInternet, 0);
			linkLabel.setText(MessageText.getString((new StringBuilder()).append("MainWindow.about.internet.").append(link[0][i]).toString()));
			linkLabel.setData(link[1][i]);
			linkLabel.setCursor(Cursors.handCursor);
			linkLabel.setForeground(Colors.blue);
			gridData = new GridData(768);
			gridData.horizontalSpan = 1;
			linkLabel.setLayoutData(gridData);
			linkLabel.addMouseListener(new MouseAdapter() {

				public void mouseDoubleClick(MouseEvent arg0)
				{
					Utils.launch((String)((CLabel)arg0.widget).getData());
				}

				public void mouseDown(MouseEvent arg0)
				{
					Utils.launch((String)((CLabel)arg0.widget).getData());
				}

			});
		}

		Listener keyListener = new Listener(window) {

			final Shell val$window;

			public void handleEvent(Event e)
			{
				if (e.character == '\033')
					window.dispose();
			}

			
			{
				window = shell;
				Object();
			}
		};
		window.addListener(2, keyListener);
		window.pack();
		txtSysInfo.setFocus();
		Utils.centreWindow(window);
		window.open();
		instance = window;
		window.addDisposeListener(new DisposeListener() {

			public void widgetDisposed(DisposeEvent event)
			{
				AboutWindow.instance = null;
				AboutWindow.disposeImage();
			}

		});
		Thread updater = new AEThread("Splash Screen Updater", display, labelImage) {

			final Display val$display;
			final Label val$labelImage;

			public void runSupport()
			{
				if (AboutWindow.image == null || AboutWindow.image.isDisposed())
					return;
				final boolean finished[] = new boolean[1];
				final int x[] = new int[1];
				final int maxX = AboutWindow.image.getBounds().width;
				final int maxY = AboutWindow.image.getBounds().height;
				do
				{
					if (finished[0])
						break;
					if (AboutWindow.image == null || AboutWindow.image.isDisposed())
					{
						finished[0] = true;
						break;
					}
					if (display.isDisposed())
					{
						finished[0] = true;
						break;
					}
					Utils.execSWTThread(new AERunnable() {

						final int val$x[];
						final int val$maxY;
						final int val$maxX;
						final boolean val$finished[];
						final 4 this$0;

						public void runSupport()
						{
							if (labelImage.isDisposed())
								return;
							GC gcImage = new GC(labelImage);
							gcImage.setClipping(x[0], 0, 1, maxY);
							gcImage.drawImage(AboutWindow.imgSrc, 0, 0);
							gcImage.dispose();
							x[0]++;
							if (x[0] >= maxX)
							{
								finished[0] = true;
								labelImage.setImage(AboutWindow.imgSrc);
							}
						}

					
					{
						this$0 = 4.this;
						x = ai;
						maxY = i;
						maxX = j;
						finished = aflag;
						AERunnable();
					}
					});
					try
					{
						Thread.sleep(30L);
					}
					catch (Exception e)
					{
						Debug.printStackTrace(e);
					}
				} while (true);
			}

			
			{
				display = display1;
				labelImage = label;
				AEThread(x0);
			}
		};
		updater.start();
	}

	public static void disposeImage()
	{
		class_mon.enter();
		if (image != null && !image.isDisposed())
			image.dispose();
		image = null;
		if (imgSrc != null && !imgSrc.isDisposed())
			imgSrc.dispose();
		imgSrc = null;
		class_mon.exit();
		break MISSING_BLOCK_LABEL_74;
		Exception exception;
		exception;
		class_mon.exit();
		throw exception;
	}

	public static void main(String args[])
	{
		try
		{
			new Display();
			Colors.getInstance();
			SWTThread.createInstance(null);
			show(Display.getCurrent());
		}
		catch (SWTThreadAlreadyInstanciatedException e)
		{
			e.printStackTrace();
		}
	}



}

⌨️ 快捷键说明

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