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

📄 menufactory.java

📁 java 文件下载器。可自定义
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
				}
			}

			
			{
				shell = shell1;
				super();
			}
		});
		Listener enableHandler = new Listener(shell, item) {

			final Shell val$shell;
			final MenuItem val$item;

			public void handleEvent(Event event)
			{
				if (!shell.isDisposed() && !item.isDisposed())
				{
					if (!Constants.isOSX)
						if (shell.getMaximized())
							Messages.setLanguageText(item, MessageText.resolveLocalizationKey("MainWindow.menu.window.zoom.restore"));
						else
							Messages.setLanguageText(item, MessageText.resolveLocalizationKey("MainWindow.menu.window.zoom.maximize"));
					if ((shell.getStyle() & 0x400) != 0)
						item.setEnabled(!shell.getMinimized());
					else
						item.setEnabled(false);
				}
			}

			
			{
				shell = shell1;
				item = menuitem;
				super();
			}
		};
		menuParent.addListener(22, enableHandler);
		shell.addListener(15, enableHandler);
		shell.addListener(19, enableHandler);
		shell.addListener(20, enableHandler);
		return item;
	}

	public static MenuItem addAboutMenuItem(Menu menu)
	{
		return addMenuItem(menu, "MainWindow.menu.help.about", new Listener() {

			public void handleEvent(Event e)
			{
				AboutWindow.show(MenuFactory.getDisplay());
			}

		});
	}

	public static MenuItem addHealthMenuItem(Menu menu)
	{
		return addMenuItem(menu, "MyTorrentsView.menu.health", new Listener() {

			public void handleEvent(Event e)
			{
				HealthHelpWindow.show(MenuFactory.getDisplay());
			}

		});
	}

	public static MenuItem addWhatsNewMenuItem(Menu menu)
	{
		return addMenuItem(menu, "MainWindow.menu.help.whatsnew", new Listener() {

			public void handleEvent(Event e)
			{
				Utils.launch("http://azureus.sourceforge.net/changelog.php?version=4.2.0.0");
			}

		});
	}

	public static MenuItem addWikiMenuItem(Menu menu)
	{
		return addMenuItem(menu, "MainWindow.menu.community.wiki", new Listener() {

			public void handleEvent(Event e)
			{
				Utils.launch("http://www.azureuswiki.com/index.php/");
			}

		});
	}

	public static MenuItem addReleaseNotesMenuItem(Menu menu)
	{
		return addMenuItem(menu, "MainWindow.menu.help.releasenotes", new Listener(menu) {

			final Menu val$menu;

			public void handleEvent(Event e)
			{
				new WelcomeWindow(menu.getShell());
			}

			
			{
				menu = menu1;
				super();
			}
		});
	}

	public static MenuItem addHelpSupportMenuItem(Menu menu, String support_url)
	{
		return addMenuItem(menu, "MainWindow.menu.help.support", new Listener(support_url) {

			final String val$support_url;

			public void handleEvent(Event e)
			{
				Utils.launch(support_url);
			}

			
			{
				support_url = s;
				super();
			}
		});
	}

	public static MenuItem addDonationMenuItem(Menu menu)
	{
		return addMenuItem(menu, "MainWindow.menu.help.donate", new Listener() {

			public void handleEvent(Event e)
			{
				DonationWindow.open(true);
			}

		});
	}

	public static MenuItem addGetPluginsMenuItem(Menu menu)
	{
		return addMenuItem(menu, "MainWindow.menu.help.plugins", new Listener() {

			public void handleEvent(Event e)
			{
				Utils.launch("http://azureus.sourceforge.net/plugin_list.php");
			}

		});
	}

	public static MenuItem addDebugHelpMenuItem(Menu menu)
	{
		return addMenuItem(menu, "MainWindow.menu.help.debug", new Listener() {

			public void handleEvent(Event e)
			{
				UIDebugGenerator.generate();
			}

		});
	}

	public static MenuItem addCheckUpdateMenuItem(Menu menu)
	{
		return addMenuItem(menu, "MainWindow.menu.help.checkupdate", new Listener(menu) {

			final Menu val$menu;

			public void handleEvent(Event e)
			{
				UIFunctionsSWT uiFunctions = UIFunctionsManagerSWT.getUIFunctionsSWT();
				if (uiFunctions != null)
					uiFunctions.bringToFront();
				UpdateMonitor.getSingleton(MenuFactory.getCore()).performCheck(true, false, false, new UpdateCheckInstanceListener() {

					final 61 this$0;

					public void cancelled(UpdateCheckInstance updatecheckinstance)
					{
					}

					public void complete(UpdateCheckInstance instance)
					{
						if (instance.getUpdates().length == 0)
							Utils.execSWTThread(new AERunnable() {

								final 1 this$1;

								public void runSupport()
								{
									Utils.openMessageBox(menu.getShell(), 34, "window.update.noupdates", (String[])null);
								}

						
						{
							this$1 = 1.this;
							super();
						}
							});
					}

					
					{
						this$0 = 61.this;
						super();
					}
				});
			}

			
			{
				menu = menu1;
				super();
			}
		});
	}

	public static MenuItem addPluginInstallMenuItem(Menu menuParent)
	{
		return addMenuItem(menuParent, "MainWindow.menu.plugins.installPlugins", new Listener() {

			public void handleEvent(Event e)
			{
				new InstallPluginWizard(MenuFactory.getCore(), MenuFactory.getDisplay());
			}

		});
	}

	public static MenuItem addPluginUnInstallMenuItem(Menu menuParent)
	{
		return addMenuItem(menuParent, "MainWindow.menu.plugins.uninstallPlugins", new Listener() {

			public void handleEvent(Event e)
			{
				new UnInstallPluginWizard(MenuFactory.getCore(), MenuFactory.getDisplay());
			}

		});
	}

	public static final MenuItem addLabelMenuItem(Menu menu, String localizationKey)
	{
		MenuItem item = new MenuItem(menu, 0);
		Messages.setLanguageText(item, localizationKey);
		item.setEnabled(false);
		return item;
	}

	public static MenuItem addSeparatorMenuItem(Menu menuParent)
	{
		return new MenuItem(menuParent, 2);
	}

	public static MenuItem createTopLevelMenuItem(Menu menuParent, String localizationKey)
	{
		Menu menu = new Menu(menuParent.getShell(), 4);
		MenuItem menuItem = new MenuItem(menuParent, 64);
		Messages.setLanguageText(menuItem, localizationKey);
		menuItem.setMenu(menu);
		menu.setData("key.menu.id", localizationKey);
		menuItem.setData("key.menu.id", localizationKey);
		return menuItem;
	}

	public static final MenuItem addMenuItem(Menu menu, String localizationKey, Listener selListener)
	{
		return addMenuItem(menu, localizationKey, selListener, 0);
	}

	public static final MenuItem addMenuItem(Menu menu, String localizationKey, Listener selListener, int style)
	{
		MenuItem menuItem = new MenuItem(menu, style);
		Messages.setLanguageText(menuItem, MessageText.resolveLocalizationKey(localizationKey));
		KeyBindings.setAccelerator(menuItem, MessageText.resolveAcceleratorKey(localizationKey));
		if (null != selListener)
			menuItem.addListener(13, selListener);
		menuItem.setData("key.menu.id", localizationKey);
		return menuItem;
	}

	public static final MenuItem addMenuItem(Menu menu, int style, String localizationKey, Listener selListener)
	{
		return addMenuItem(menu, style, -1, localizationKey, selListener);
	}

	public static final MenuItem addMenuItem(Menu menu, int style, int index, String localizationKey, Listener selListener)
	{
		if (index < 0 || index > menu.getItemCount())
			index = menu.getItemCount();
		MenuItem menuItem = new MenuItem(menu, style, index);
		Messages.setLanguageText(menuItem, localizationKey);
		KeyBindings.setAccelerator(menuItem, localizationKey);
		menuItem.addListener(13, selListener);
		menuItem.setData("key.menu.id", localizationKey);
		return menuItem;
	}

	private static UIFunctionsSWT getUIFunctionSWT()
	{
		UIFunctionsSWT uiFunctions = UIFunctionsManagerSWT.getUIFunctionsSWT();
		if (null != uiFunctions)
			return uiFunctions;
		else
			throw new IllegalStateException("No instance of UIFunctionsSWT found; the UIFunctionsManager might not have been initialized properly");
	}

	private static AzureusCore getCore()
	{
		return AzureusCoreFactory.getSingleton();
	}

	private static Display getDisplay()
	{
		return SWTThread.getInstance().getDisplay();
	}

	public static void updateMenuText(Object menu)
	{
		if (menu == null)
			return;
		if (menu instanceof Menu)
		{
			MenuItem menus[] = ((Menu)menu).getItems();
			for (int i = 0; i < menus.length; i++)
				updateMenuText(menus[i]);

		} else
		if (menu instanceof MenuItem)
		{
			MenuItem item = (MenuItem)menu;
			if (item.getData("key.menu.id") instanceof String)
			{
				String localizationKey = (String)item.getData("key.menu.id");
				item.setText(MessageText.getString(localizationKey));
				KeyBindings.setAccelerator(item, MessageText.resolveAcceleratorKey(localizationKey));
				updateMenuText(item.getMenu());
			} else
			{
				Messages.updateLanguageForControl(item);
			}
		}
	}

	public static void performOneTimeDisable(MenuItem item, boolean affectsChildMenuItems)
	{
		item.setEnabled(false);
		if (affectsChildMenuItems)
		{
			Menu childMenu = item.getMenu();
			if (childMenu == null)
				return;
			for (int i = 0; i < childMenu.getItemCount(); i++)
				childMenu.getItem(i).setEnabled(false);

		}
	}

	public static Menu findMenu(Menu menuToStartWith, String idToMatch)
	{
		if (null == menuToStartWith || menuToStartWith.isDisposed() || null == idToMatch || idToMatch.length() < 1)
			return null;
		if (idToMatch.equals(getID(menuToStartWith)))
			return menuToStartWith;
		MenuItem items[] = menuToStartWith.getItems();
		for (int i = 0; i < items.length; i++)
		{
			MenuItem item = items[i];
			Menu menuToFind = findMenu(item.getMenu(), idToMatch);
			if (null != menuToFind)
				return menuToFind;
		}

		return null;
	}

	public static MenuItem findMenuItem(Menu menuToStartWith, String idToMatch)
	{
		if (null == menuToStartWith || menuToStartWith.isDisposed() || null == idToMatch || idToMatch.length() < 1)
			return null;
		MenuItem items[] = menuToStartWith.getItems();
		for (int i = 0; i < items.length; i++)
		{
			MenuItem item = items[i];
			if (idToMatch.equals(getID(item)))
				return item;
			MenuItem menuItemToFind = findMenuItem(item.getMenu(), idToMatch);
			if (null != menuItemToFind)
				return menuItemToFind;
		}

		return null;
	}

	private static String getID(Widget widget)
	{
		if (null != widget && !widget.isDisposed())
		{
			Object id = widget.getData("key.menu.id");
			if (null != id)
				return id.toString();
		}
		return "";
	}

	public static void setEnablementKeys(Widget widget, int keys)
	{
		if (null != widget && !widget.isDisposed())
			widget.setData("key.enablement", new Integer(keys));
	}

	public static int getEnablementKeys(Widget widget)
	{
		if (null != widget && !widget.isDisposed())
		{
			Object keys = widget.getData("key.enablement");
			if (keys instanceof Integer)
				return ((Integer)keys).intValue();
		}
		return -1;
	}

	public static void updateEnabledStates(Menu menuToStartWith)
	{
		if (null == menuToStartWith || menuToStartWith.isDisposed())
			return;
		if (!setEnablement(menuToStartWith))
			return;
		MenuItem items[] = menuToStartWith.getItems();
		for (int i = 0; i < items.length; i++)
		{
			MenuItem item = items[i];
			if (setEnablement(item))
				updateEnabledStates(item.getMenu());
		}

	}

	public static boolean setEnablement(Widget widget)
	{
		if (null != widget && !widget.isDisposed())
		{
			boolean isEnabled = isEnabledForCurrentMode(widget);
			if (widget instanceof MenuItem)
				((MenuItem)widget).setEnabled(isEnabled);
			else
			if (widget instanceof Menu)
				((Menu)widget).setEnabled(isEnabled);
			return isEnabled;
		} else
		{
			return false;
		}
	}

	public static boolean isEnabledForCurrentMode(Widget widget)
	{
		int keys = getEnablementKeys(widget);
		if (keys <= 0)
			return true;
		if (isAZ3_ADV)
			return (keys & 4) != 0;
		if (isAZ3)
			return (keys & 2) != 0;
		else
			return (keys & 1) != 0;
	}

	private static TableRow wrapAsRow(Object o, String table_name)
	{
		return new TableRow(o, table_name) {

			final Object val$o;
			final String val$table_name;

			public Object getDataSource()
			{
				return o;
			}

			public String getTableID()
			{
				return table_name;
			}

			private void notSupported()
			{
				throw new RuntimeException("method is not supported - table row is a \"virtual\" one, only getDataSource and getTableID are supported.");
			}

			private void setForegroundDebug()
			{
				if (MenuFactory.DEBUG_SET_FOREGROUND)
					Debug.out("setForeground on fake TableRow");
			}

			public void setForeground(int red, int green, int blue)
			{
				setForegroundDebug();
				notSupported();
			}

			public void setForeground(int rgb[])
			{
				setForegroundDebug();
				notSupported();
			}

			public void setForegroundToErrorColor()
			{
				setForegroundDebug();
				notSupported();
			}

			public boolean isValid()
			{
				notSupported();
				return false;
			}

			public TableCell getTableCell(String sColumnName)
			{
				notSupported();
				return null;
			}

			public boolean isSelected()
			{
				notSupported();
				return false;
			}

			public void addMouseListener(TableRowMouseListener listener)
			{
				notSupported();
			}

			public void removeMouseListener(TableRowMouseListener listener)
			{
				notSupported();
			}

			
			{
				o = obj;
				table_name = s;
				super();
			}
		};
	}






}

⌨️ 快捷键说明

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