📄 shareratioitem.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: ShareRatioItem.java
package org.gudy.azureus2.ui.swt.views.tableitems.mytorrents;
import org.gudy.azureus2.core3.config.COConfigurationManager;
import org.gudy.azureus2.core3.config.ParameterListener;
import org.gudy.azureus2.core3.download.DownloadManager;
import org.gudy.azureus2.core3.download.DownloadManagerStats;
import org.gudy.azureus2.core3.util.DisplayFormatters;
import org.gudy.azureus2.plugins.download.Download;
import org.gudy.azureus2.plugins.ui.tables.*;
import org.gudy.azureus2.ui.swt.Utils;
import org.gudy.azureus2.ui.swt.mainwindow.Colors;
import org.gudy.azureus2.ui.swt.views.table.utils.CoreTableColumn;
public class ShareRatioItem extends CoreTableColumn
implements TableCellRefreshListener, ParameterListener
{
public static final Class DATASOURCE_TYPE = org/gudy/azureus2/plugins/download/Download;
private static final String CONFIG_ID = "StartStopManager_iFirstPriority_ShareRatio";
public static final String COLUMN_ID = "shareRatio";
private int iMinShareRatio;
private boolean changeFG;
public void fillTableColumnInfo(TableColumnInfo info)
{
info.addCategories(new String[] {
"sharing", "swarm"
});
}
public ShareRatioItem(String sTableID)
{
super(DATASOURCE_TYPE, "shareRatio", 2, 70, sTableID);
changeFG = true;
setType(1);
setRefreshInterval(-2);
setMinWidthAuto(true);
setPosition(-2);
iMinShareRatio = COConfigurationManager.getIntParameter("StartStopManager_iFirstPriority_ShareRatio");
COConfigurationManager.addParameterListener("StartStopManager_iFirstPriority_ShareRatio", this);
}
protected void finalize()
throws Throwable
{
super.finalize();
COConfigurationManager.removeParameterListener("StartStopManager_iFirstPriority_ShareRatio", this);
}
public void refresh(TableCell cell)
{
DownloadManager dm = (DownloadManager)cell.getDataSource();
int sr = dm != null ? dm.getStats().getShareRatio() : 0;
if (sr == -1)
sr = 0x1e13380;
if (!cell.setSortValue(sr) && cell.isValid())
return;
String shareRatio = "";
if (sr == 0x1e13380)
{
shareRatio = "∞";
} else
{
String partial;
for (partial = String.valueOf(sr % 1000); partial.length() < 3; partial = (new StringBuilder()).append("0").append(partial).toString());
shareRatio = (new StringBuilder()).append("").append(sr / 1000).append(DisplayFormatters.getDecimalSeparator()).append(partial).toString();
}
if (cell.setText(shareRatio) && changeFG)
{
org.eclipse.swt.graphics.Color color = sr >= iMinShareRatio ? null : Colors.colorWarning;
cell.setForeground(Utils.colorToIntArray(color));
}
}
public void parameterChanged(String parameterName)
{
iMinShareRatio = COConfigurationManager.getIntParameter("StartStopManager_iFirstPriority_ShareRatio");
invalidateCells();
}
public boolean isChangeFG()
{
return changeFG;
}
public void setChangeFG(boolean changeFG)
{
this.changeFG = changeFG;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -