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

📄 genericintparameter.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:   GenericIntParameter.java

package org.gudy.azureus2.ui.swt.config.generic;

import java.io.PrintStream;
import org.eclipse.swt.widgets.*;
import org.gudy.azureus2.core3.util.*;
import org.gudy.azureus2.ui.swt.Utils;

// Referenced classes of package org.gudy.azureus2.ui.swt.config.generic:
//			GenericParameterAdapter

public class GenericIntParameter
{

	private static boolean DEBUG = false;
	private GenericParameterAdapter adapter;
	private int iMinValue;
	private int iMaxValue;
	private int iDefaultValue;
	private String sParamName;
	private boolean bGenerateIntermediateEvents;
	private boolean bTriggerOnFocusOut;
	private Spinner spinner;
	private TimerEvent timedSaveEvent;
	private TimerEventPerformer timerEventSave;

	public GenericIntParameter(GenericParameterAdapter adapter, Composite composite, String name)
	{
		iMinValue = 0;
		iMaxValue = -1;
		bGenerateIntermediateEvents = false;
		bTriggerOnFocusOut = Constants.isOSX;
		timedSaveEvent = null;
		iDefaultValue = adapter.getIntValue(name);
		initialize(adapter, composite, name);
	}

	/**
	 * @deprecated Method GenericIntParameter is deprecated
	 */

	public GenericIntParameter(GenericParameterAdapter adapter, Composite composite, String name, int defaultValue)
	{
		iMinValue = 0;
		iMaxValue = -1;
		bGenerateIntermediateEvents = false;
		bTriggerOnFocusOut = Constants.isOSX;
		timedSaveEvent = null;
		iDefaultValue = defaultValue;
		initialize(adapter, composite, name);
	}

	public GenericIntParameter(GenericParameterAdapter adapter, Composite composite, String name, int minValue, int maxValue)
	{
		iMinValue = 0;
		iMaxValue = -1;
		bGenerateIntermediateEvents = false;
		bTriggerOnFocusOut = Constants.isOSX;
		timedSaveEvent = null;
		iDefaultValue = adapter.getIntValue(name);
		iMinValue = minValue;
		iMaxValue = maxValue;
		initialize(adapter, composite, name);
	}

	public void initialize(GenericParameterAdapter _adapter, Composite composite, String name)
	{
		adapter = _adapter;
		sParamName = name;
		timerEventSave = new TimerEventPerformer() {

			final GenericIntParameter this$0;

			public void perform(TimerEvent event)
			{
				Utils.execSWTThread(new AERunnable() {

					final 1 this$1;

					public void runSupport()
					{
						if (spinner.isDisposed())
							return;
						if (GenericIntParameter.DEBUG)
							debug((new StringBuilder()).append("setIntValue to ").append(spinner.getSelection()).append(" via timeEventSave").toString());
						adapter.setIntValue(sParamName, spinner.getSelection());
					}

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

			
			{
				this$0 = GenericIntParameter.this;
				super();
			}
		};
		int value = adapter.getIntValue(name, iDefaultValue);
		spinner = new Spinner(composite, 2048);
		setMinimumValue(iMinValue);
		setMaximumValue(iMaxValue);
		spinner.setSelection(value);
		spinner.addListener(13, new Listener() {

			final GenericIntParameter this$0;

			public void handleEvent(Event event)
			{
				if (bGenerateIntermediateEvents || !spinner.isFocusControl())
				{
					adapter.setIntValue(sParamName, spinner.getSelection());
				} else
				{
					bTriggerOnFocusOut = true;
					cancelTimedSaveEvent();
					if (GenericIntParameter.DEBUG)
						debug((new StringBuilder()).append("create timeSaveEvent (").append(spinner.getSelection()).append(") ").toString());
					timedSaveEvent = SimpleTimer.addEvent("IntParam Saver", SystemTime.getOffsetTime(750L), timerEventSave);
				}
			}

			
			{
				this$0 = GenericIntParameter.this;
				super();
			}
		});
		spinner.addListener(12, new Listener() {

			final GenericIntParameter this$0;

			public void handleEvent(Event event)
			{
				if (spinner.isFocusControl())
				{
					if (GenericIntParameter.DEBUG)
						debug("next");
					spinner.traverse(16);
				}
			}

			
			{
				this$0 = GenericIntParameter.this;
				super();
			}
		});
		spinner.addListener(16, new Listener() {

			final GenericIntParameter this$0;

			public void handleEvent(Event event)
			{
				if (bTriggerOnFocusOut)
				{
					if (GenericIntParameter.DEBUG)
						debug((new StringBuilder()).append("focus out setIntValue(").append(spinner.getSelection()).append("/trigger").toString());
					cancelTimedSaveEvent();
					adapter.setIntValue(sParamName, spinner.getSelection());
				}
			}

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

	private void cancelTimedSaveEvent()
	{
		if (timedSaveEvent != null && (!timedSaveEvent.hasRun() || !timedSaveEvent.isCancelled()))
		{
			if (DEBUG)
				debug("cancel timeSaveEvent");
			timedSaveEvent.cancel();
		}
	}

	private void debug(String string)
	{
		System.out.println((new StringBuilder()).append("[GenericIntParameter:").append(sParamName).append("] ").append(string).toString());
	}

	public void setMinimumValue(final int value)
	{
		iMinValue = value;
		if (iMinValue > 0 && getValue() < iMinValue)
			setValue(iMinValue);
		Utils.execSWTThread(new AERunnable() {

			final int val$value;
			final GenericIntParameter this$0;

			public void runSupport()
			{
				spinner.setMinimum(value);
			}

			
			{
				this$0 = GenericIntParameter.this;
				value = i;
				super();
			}
		});
	}

	public void setMaximumValue(int value)
	{
		iMaxValue = value;
		if (iMaxValue != -1 && getValue() > iMaxValue)
			setValue(iMaxValue);
		Utils.execSWTThread(new AERunnable() {

			final GenericIntParameter this$0;

			public void runSupport()
			{
				spinner.setMaximum(iMaxValue != -1 ? iMaxValue : 0x7fffffff);
			}

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

	public String getName()
	{
		return sParamName;
	}

	public void setValue(int value)
	{
		int newValue;
		if (iMaxValue != -1 && value > iMaxValue)
			newValue = iMaxValue;
		else
		if (iMinValue > 0 && value < iMinValue)
			newValue = iMinValue;
		else
			newValue = value;
		final int finalNewValue = newValue;
		Utils.execSWTThread(new AERunnable() {

			final int val$finalNewValue;
			final GenericIntParameter this$0;

			public void runSupport()
			{
				if (!spinner.isDisposed())
				{
					if (spinner.getSelection() != finalNewValue)
					{
						if (GenericIntParameter.DEBUG)
							debug((new StringBuilder()).append("spinner.setSelection(").append(finalNewValue).append(")").toString());
						spinner.setSelection(finalNewValue);
					}
					if (GenericIntParameter.DEBUG)
						debug((new StringBuilder()).append("setIntValue to ").append(spinner.getSelection()).append(" via setValue(int)").toString());
				}
			}

			
			{
				this$0 = GenericIntParameter.this;
				finalNewValue = i;
				super();
			}
		});
		if (finalNewValue != getValue())
			adapter.setIntValue(sParamName, finalNewValue);
	}

	public void setValue(final int value, boolean force_adapter_set)
	{
		if (force_adapter_set)
			setValue(value);
		else
			Utils.execSWTThread(new AERunnable() {

				final int val$value;
				final GenericIntParameter this$0;

				public void runSupport()
				{
					if (spinner.getSelection() != value)
						spinner.setSelection(value);
				}

			
			{
				this$0 = GenericIntParameter.this;
				value = i;
				super();
			}
			});
	}

	public int getValue()
	{
		return adapter.getIntValue(sParamName, iDefaultValue);
	}

	public void resetToDefault()
	{
		if (adapter.resetIntDefault(sParamName))
			setValue(adapter.getIntValue(sParamName));
		else
			setValue(getValue());
	}

	public void setLayoutData(Object layoutData)
	{
		spinner.setLayoutData(layoutData);
	}

	public Control getControl()
	{
		return spinner;
	}

	public boolean isGeneratingIntermediateEvents()
	{
		return bGenerateIntermediateEvents;
	}

	public void setGenerateIntermediateEvents(boolean generateIntermediateEvents)
	{
		bGenerateIntermediateEvents = generateIntermediateEvents;
	}













}

⌨️ 快捷键说明

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