📄 piecesview.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: PiecesView.java
package org.gudy.azureus2.ui.swt.views;
import com.aelitis.azureus.ui.common.table.*;
import org.eclipse.swt.widgets.Composite;
import org.gudy.azureus2.core3.download.*;
import org.gudy.azureus2.core3.peer.*;
import org.gudy.azureus2.ui.swt.components.Legend;
import org.gudy.azureus2.ui.swt.views.piece.MyPieceDistributionView;
import org.gudy.azureus2.ui.swt.views.piece.PieceInfoView;
import org.gudy.azureus2.ui.swt.views.table.TableViewSWT;
import org.gudy.azureus2.ui.swt.views.table.impl.TableViewSWTImpl;
import org.gudy.azureus2.ui.swt.views.table.impl.TableViewTab;
import org.gudy.azureus2.ui.swt.views.tableitems.pieces.AvailabilityItem;
import org.gudy.azureus2.ui.swt.views.tableitems.pieces.BlockCountItem;
import org.gudy.azureus2.ui.swt.views.tableitems.pieces.BlocksItem;
import org.gudy.azureus2.ui.swt.views.tableitems.pieces.CompletedItem;
import org.gudy.azureus2.ui.swt.views.tableitems.pieces.PieceNumberItem;
import org.gudy.azureus2.ui.swt.views.tableitems.pieces.PriorityItem;
import org.gudy.azureus2.ui.swt.views.tableitems.pieces.RequestedItem;
import org.gudy.azureus2.ui.swt.views.tableitems.pieces.ReservedByItem;
import org.gudy.azureus2.ui.swt.views.tableitems.pieces.SizeItem;
import org.gudy.azureus2.ui.swt.views.tableitems.pieces.SpeedItem;
import org.gudy.azureus2.ui.swt.views.tableitems.pieces.TypeItem;
import org.gudy.azureus2.ui.swt.views.tableitems.pieces.WritersItem;
// Referenced classes of package org.gudy.azureus2.ui.swt.views:
// IView
public class PiecesView extends TableViewTab
implements DownloadManagerPeerListener, DownloadManagerPieceListener, TableDataSourceChangedListener, TableLifeCycleListener
{
private static final TableColumnCore basicItems[] = {
new PieceNumberItem(), new SizeItem(), new BlockCountItem(), new BlocksItem(), new CompletedItem(), new AvailabilityItem(), new TypeItem(), new ReservedByItem(), new WritersItem(), new PriorityItem(),
new SpeedItem(), new RequestedItem()
};
DownloadManager manager;
private TableViewSWTImpl tv;
private Composite legendComposite;
private PieceInfoView pieceInfoView;
private MyPieceDistributionView pieceDistView;
public PiecesView()
{
tv = new TableViewSWTImpl("Pieces", "PiecesView", basicItems, basicItems[0].getName(), 0x10010004);
setTableView(tv);
tv.setEnableTabViews(true);
pieceInfoView = new PieceInfoView();
pieceDistView = new MyPieceDistributionView();
tv.setCoreTabViews(new IView[] {
pieceInfoView, pieceDistView
});
tv.addTableDataSourceChangedListener(this, true);
tv.addLifeCycleListener(this);
}
public void tableDataSourceChanged(Object newDataSource)
{
if (manager != null)
{
manager.removePeerListener(this);
manager.removePieceListener(this);
}
if (newDataSource == null)
manager = null;
else
if (newDataSource instanceof Object[])
manager = (DownloadManager)((Object[])(Object[])newDataSource)[0];
else
manager = (DownloadManager)newDataSource;
if (manager != null)
{
manager.addPeerListener(this, false);
manager.addPieceListener(this, false);
addExistingDatasources();
}
if (pieceInfoView != null)
pieceInfoView.dataSourceChanged(manager);
if (pieceDistView != null)
pieceDistView.dataSourceChanged(manager);
}
public void tableViewInitialized()
{
if (legendComposite != null && (tv instanceof TableViewSWT))
{
Composite composite = tv.getTableComposite();
legendComposite = Legend.createLegendComposite(composite, BlocksItem.colors, new String[] {
"PiecesView.legend.requested", "PiecesView.legend.written", "PiecesView.legend.downloaded", "PiecesView.legend.incache"
});
}
if (manager != null)
{
manager.removePeerListener(this);
manager.removePieceListener(this);
manager.addPeerListener(this, false);
manager.addPieceListener(this, false);
addExistingDatasources();
}
}
public void tableViewDestroyed()
{
if (legendComposite != null && legendComposite.isDisposed())
legendComposite.dispose();
if (manager != null)
{
manager.removePeerListener(this);
manager.removePieceListener(this);
}
}
public void pieceAdded(PEPiece created)
{
tv.addDataSource(created);
}
public void pieceRemoved(PEPiece removed)
{
tv.removeDataSource(removed);
}
public void peerAdded(PEPeer pepeer)
{
}
public void peerRemoved(PEPeer pepeer)
{
}
public void peerManagerWillBeAdded(PEPeerManager pepeermanager)
{
}
public void peerManagerAdded(PEPeerManager pepeermanager)
{
}
public void peerManagerRemoved(PEPeerManager manager)
{
tv.removeAllTableRows();
}
private void addExistingDatasources()
{
if (manager == null || tv.isDisposed())
return;
Object dataSources[] = manager.getCurrentPieces();
if (dataSources == null || dataSources.length == 0)
{
return;
} else
{
tv.addDataSources(dataSources);
tv.processDataSourceQueue();
return;
}
}
public DownloadManager getManager()
{
return manager;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -