📄 uiswitcherutil.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: UISwitcherUtil.java
package org.gudy.azureus2.ui.swt;
import java.io.File;
import java.lang.reflect.Constructor;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.Map;
import org.gudy.azureus2.core3.config.COConfigurationManager;
import org.gudy.azureus2.core3.util.*;
// Referenced classes of package org.gudy.azureus2.ui.swt:
// UISwitcherListener, Utils
public class UISwitcherUtil
{
private static final long UPTIME_NEWUSER = 3600L;
private static boolean NOT_GOOD_ENOUGH_FOR_AZ2_USERS_YET = true;
public static ArrayList listeners = new ArrayList();
public static String lastUI = null;
public UISwitcherUtil()
{
}
public static void addListener(UISwitcherListener l)
{
listeners.add(l);
if (lastUI != null)
triggerListeners(lastUI);
}
public static void removeListener(UISwitcherListener l)
{
listeners.remove(l);
}
public static String openSwitcherWindow(boolean bForceAsk)
{
lastUI = _openSwitcherWindow(bForceAsk);
triggerListeners(lastUI);
return lastUI;
}
private static void triggerListeners(String ui)
{
Object array[] = listeners.toArray();
for (int i = 0; i < array.length; i++)
{
UISwitcherListener l = (UISwitcherListener)array[i];
l.uiSwitched(ui);
}
}
public static String _openSwitcherWindow(boolean bForceAsk)
{
Class uiswClass;
uiswClass = null;
try
{
uiswClass = Class.forName("com.aelitis.azureus.ui.swt.shells.uiswitcher.UISwitcherWindow");
}
catch (ClassNotFoundException e1) { }
if (uiswClass == null)
return "az2";
if (bForceAsk)
break MISSING_BLOCK_LABEL_356;
if ("1".equals(System.getProperty("azureus.safemode")))
return "az2";
String lastUI = COConfigurationManager.getStringParameter("ui", "az2");
COConfigurationManager.setParameter("lastUI", lastUI);
String forceUI = System.getProperty("force.ui");
if (forceUI != null)
{
COConfigurationManager.setParameter("ui", forceUI);
return forceUI;
}
boolean installLogExists = FileUtil.getApplicationFile("installer.log").exists();
boolean alreadySwitched = COConfigurationManager.getBooleanParameter("installer.ui.alreadySwitched", false);
if (!alreadySwitched && installLogExists)
{
COConfigurationManager.setParameter("installer.ui.alreadySwitched", true);
COConfigurationManager.setParameter("ui", "az3");
COConfigurationManager.setParameter("az3.virgin.switch", true);
if (!lastUI.equals("az3"))
{
String sFirstVersion = COConfigurationManager.getStringParameter("First Recorded Version", "4.2.0.0");
if (!Constants.getBaseVersion(sFirstVersion).equals(Constants.getBaseVersion("4.2.0.0")))
COConfigurationManager.setParameter("v3.Start Advanced", true);
}
return "az3";
}
boolean asked = COConfigurationManager.getBooleanParameter("ui.asked", false);
if (asked || COConfigurationManager.hasParameter("ui", true))
return COConfigurationManager.getStringParameter("ui", "az3");
String sFirstVersion = COConfigurationManager.getStringParameter("First Recorded Version");
if (Constants.compareVersions(sFirstVersion, "3.0.0.0") >= 0)
{
COConfigurationManager.setParameter("ui", "az3");
return "az3";
}
Map map = FileUtil.readResilientConfigFile("azureus.statistics");
if (map == null)
break MISSING_BLOCK_LABEL_339;
Map overallMap = (Map)map.get("all");
if (overallMap == null)
break MISSING_BLOCK_LABEL_339;
long uptime = 0L;
Object uptimeObject = overallMap.get("uptime");
if (uptimeObject instanceof Number)
uptime = ((Number)uptimeObject).longValue();
if (uptime >= 3600L || uptime < 0L)
break MISSING_BLOCK_LABEL_339;
COConfigurationManager.setParameter("ui", "az3");
COConfigurationManager.setParameter("az3.virgin.switch", true);
COConfigurationManager.setParameter("az3.switch.immediate", true);
return "az3";
Exception e;
e;
Debug.out(e);
if (NOT_GOOD_ENOUGH_FOR_AZ2_USERS_YET)
{
COConfigurationManager.setParameter("ui", "az2");
return "az2";
}
try
{
int result[] = {
-1
};
Class fuiswClass = uiswClass;
Utils.execSWTThread(new AERunnable(fuiswClass, result) {
final Class val$fuiswClass;
final int val$result[];
public void runSupport()
{
try
{
Constructor constructor = fuiswClass.getConstructor(new Class[0]);
Object object = constructor.newInstance(new Object[0]);
Method method = fuiswClass.getMethod("open", new Class[0]);
Object resultObj = method.invoke(object, new Object[0]);
if (resultObj instanceof Number)
result[0] = ((Number)resultObj).intValue();
}
catch (Exception e)
{
Debug.printStackTrace(e);
}
}
{
fuiswClass = class1;
result = ai;
super();
}
}, false);
if (result[0] == 0)
{
COConfigurationManager.setParameter("ui", "az3");
if (!lastUI.equals("az3"))
COConfigurationManager.setParameter("v3.Start Advanced", true);
} else
if (result[0] == 1)
COConfigurationManager.setParameter("ui", "az2");
if (result[0] != -1)
COConfigurationManager.setParameter("ui.asked", true);
}
catch (Exception e)
{
Debug.printStackTrace(e);
}
return COConfigurationManager.getStringParameter("ui");
}
public static boolean isAZ3Avail()
{
Class uiswClass = null;
uiswClass = Class.forName("com.aelitis.azureus.ui.swt.shells.uiswitcher.UISwitcherWindow");
return true;
ClassNotFoundException e1;
e1;
return false;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -