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

📄 uipwlistpanel.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:   UIPWListPanel.java

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

import com.aelitis.azureus.core.AzureusCore;
import java.util.*;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.*;
import org.gudy.azureus2.core3.internat.MessageText;
import org.gudy.azureus2.core3.util.Debug;
import org.gudy.azureus2.plugins.*;
import org.gudy.azureus2.ui.swt.Messages;
import org.gudy.azureus2.ui.swt.wizard.*;

// Referenced classes of package org.gudy.azureus2.ui.swt.pluginsuninstaller:
//			UIPWFinishPanel, UnInstallPluginWizard

public class UIPWListPanel extends AbstractWizardPanel
{

	Table pluginList;

	public UIPWListPanel(Wizard wizard, IWizardPanel previous)
	{
		AbstractWizardPanel(wizard, previous);
	}

	public void show()
	{
		wizard.setTitle(MessageText.getString("uninstallPluginsWizard.list.title"));
		wizard.setErrorMessage("");
		Composite rootPanel = wizard.getPanel();
		GridLayout layout = new GridLayout();
		layout.numColumns = 1;
		rootPanel.setLayout(layout);
		Composite panel = new Composite(rootPanel, 0);
		GridData gridData = new GridData(772);
		panel.setLayoutData(gridData);
		layout = new GridLayout();
		layout.numColumns = 1;
		panel.setLayout(layout);
		Label lblStatus = new Label(panel, 0);
		Messages.setLanguageText(lblStatus, "uninstallPluginsWizard.list.loaded");
		pluginList = new Table(panel, 0x10a24);
		pluginList.setHeaderVisible(true);
		GridData data = new GridData(768);
		data.heightHint = 200;
		pluginList.setLayoutData(data);
		TableColumn tcName = new TableColumn(pluginList, 16384);
		Messages.setLanguageText(tcName, "installPluginsWizard.list.name");
		tcName.setWidth(200);
		TableColumn tcVersion = new TableColumn(pluginList, 16384);
		Messages.setLanguageText(tcVersion, "installPluginsWizard.list.version");
		tcVersion.setWidth(150);
		PluginInterface plugins[] = new PluginInterface[0];
		try
		{
			plugins = wizard.getAzureusCore().getPluginManager().getPluginInterfaces();
			Arrays.sort(plugins, new Comparator() {

				final UIPWListPanel this$0;

				public int compare(Object o1, Object o2)
				{
					return ((PluginInterface)o1).getPluginName().compareTo(((PluginInterface)o2).getPluginName());
				}

			
			{
				this$0 = UIPWListPanel.this;
				Object();
			}
			});
		}
		catch (Exception e)
		{
			Debug.printStackTrace(e);
		}
		Map pid_map = new HashMap();
		for (int i = 0; i < plugins.length; i++)
		{
			PluginInterface plugin = plugins[i];
			String pid = plugin.getPluginID();
			ArrayList pis = (ArrayList)pid_map.get(pid);
			if (pis == null)
			{
				pis = new ArrayList();
				pid_map.put(pid, pis);
			}
			pis.add(plugin);
		}

		ArrayList pid_list[] = new ArrayList[pid_map.size()];
		pid_map.values().toArray(pid_list);
		Arrays.sort(pid_list, new Comparator() {

			final UIPWListPanel this$0;

			public int compare(Object o1, Object o2)
			{
				ArrayList l1 = (ArrayList)o1;
				ArrayList l2 = (ArrayList)o2;
				return ((PluginInterface)l1.get(0)).getPluginName().compareToIgnoreCase(((PluginInterface)l2.get(0)).getPluginName());
			}

			
			{
				this$0 = UIPWListPanel.this;
				Object();
			}
		});
		for (int i = 0; i < pid_list.length; i++)
		{
			ArrayList pis = pid_list[i];
			boolean skip = false;
			String display_name = "";
			int j = 0;
			do
			{
				if (j >= pis.size())
					break;
				PluginInterface pi = (PluginInterface)pis.get(j);
				if (pi.getPluginState().isMandatory() || pi.getPluginState().isBuiltIn())
				{
					skip = true;
					break;
				}
				display_name = (new StringBuilder()).append(display_name).append(j != 0 ? "," : "").append(pi.getPluginName()).toString();
				j++;
			} while (true);
			if (skip)
				continue;
			PluginInterface plugin = (PluginInterface)pis.get(0);
			List selected_plugins = ((UnInstallPluginWizard)wizard).getPluginList();
			TableItem item = new TableItem(pluginList, 0);
			item.setData(plugin);
			item.setText(0, display_name);
			item.setChecked(selected_plugins.contains(plugin));
			String version = plugin.getPluginVersion();
			if (version == null)
				version = MessageText.getString("installPluginsWizard.list.nullversion");
			item.setText(1, version);
		}

		pluginList.addListener(13, new Listener() {

			final UIPWListPanel this$0;

			public void handleEvent(Event e)
			{
				updateList();
			}

			
			{
				this$0 = UIPWListPanel.this;
				Object();
			}
		});
	}

	public boolean isFinishEnabled()
	{
		return ((UnInstallPluginWizard)wizard).getPluginList().size() > 0;
	}

	public IWizardPanel getFinishPanel()
	{
		return new UIPWFinishPanel(wizard, this);
	}

	public void updateList()
	{
		ArrayList list = new ArrayList();
		TableItem items[] = pluginList.getItems();
		for (int i = 0; i < items.length; i++)
			if (items[i].getChecked())
				list.add(items[i].getData());

		((UnInstallPluginWizard)wizard).setPluginList(list);
		((UnInstallPluginWizard)wizard).setFinishEnabled(isFinishEnabled());
	}
}

⌨️ 快捷键说明

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