use of com.biglybt.core.peer.PEPeer in project BiglyBT by BiglySoftware.
the class SBC_TorrentDetailsView method initialize.
private void initialize(Composite composite) {
Composite main_area = new Composite(composite, SWT.NULL);
main_area.setLayout(new FormLayout());
// Color bg_color = ColorCache.getColor(composite.getDisplay(), "#c0cbd4");
UIFunctionsSWT uiFunctions = UIFunctionsManagerSWT.getUIFunctionsSWT();
this.parent = composite;
if (tabbedMDI == null) {
tabbedMDI = uiFunctions.createTabbedMDI(main_area, "detailsview");
} else {
System.out.println("ManagerView::initialize : folder isn't null !!!");
}
if (composite.getLayout() instanceof FormLayout) {
main_area.setLayoutData(Utils.getFilledFormData());
} else if (composite.getLayout() instanceof GridLayout) {
main_area.setLayoutData(new GridData(GridData.FILL_BOTH));
}
composite.layout();
// Call plugin listeners
if (uiFunctions != null) {
UISWTInstance pluginUI = uiFunctions.getUISWTInstance();
if (pluginUI != null) {
MyTorrentsView.registerPluginViews(pluginUI);
for (String id : new String[] { UISWTInstance.VIEW_MYTORRENTS, UISWTInstance.VIEW_TORRENT_DETAILS }) {
UISWTViewEventListenerWrapper[] pluginViews = pluginUI.getViewListeners(id);
for (UISWTViewEventListenerWrapper l : pluginViews) {
if (id == UISWTInstance.VIEW_MYTORRENTS && l.getViewID() == PieceInfoView.MSGID_PREFIX) {
// Simple hack to exlude PieceInfoView tab as it's already within Pieces View
continue;
}
if (l != null) {
try {
tabbedMDI.createEntryFromEventListener(null, UISWTInstance.VIEW_TORRENT_DETAILS, l, l.getViewID(), false, manager, null);
} catch (Throwable e) {
Debug.out(e);
}
}
}
}
}
}
SelectedContentManager.addCurrentlySelectedContentListener(this);
tabbedMDI.addListener(new MdiSWTMenuHackListener() {
@Override
public void menuWillBeShown(MdiEntry entry, Menu menuTree) {
menuTree.setData("downloads", new DownloadManager[] { manager });
menuTree.setData("is_detailed_view", true);
MenuFactory.buildTorrentMenu(menuTree);
}
});
if (dataSource instanceof Object[] && ((Object[]) dataSource)[0] instanceof PEPeer) {
tabbedMDI.showEntryByID(PeersView.MSGID_PREFIX);
} else {
MdiEntry[] entries = tabbedMDI.getEntries();
if (entries.length > 0) {
tabbedMDI.showEntry(entries[0]);
}
}
}
use of com.biglybt.core.peer.PEPeer in project BiglyBT by BiglySoftware.
the class PeerFilesView method tableRefresh.
@Override
public void tableRefresh() {
synchronized (this) {
if (refreshing) {
return;
}
refreshing = true;
}
try {
PEPeer peer = current_peer;
if (peer == null) {
tv.removeAllTableRows();
} else {
if (tv.getRowCount() == 0) {
DiskManagerFileInfo[] files = peer.getManager().getDiskManager().getFiles();
PeersFilesViewRow[] rows = new PeersFilesViewRow[files.length];
for (int i = 0; i < files.length; i++) {
rows[i] = new PeersFilesViewRow(files[i], peer);
}
tv.addDataSources(rows);
tv.processDataSourceQueueSync();
} else {
TableRowCore[] rows = tv.getRows();
for (TableRowCore row : rows) {
((PeersFilesViewRow) row.getDataSource()).setPeer(peer);
}
}
}
} finally {
synchronized (this) {
refreshing = false;
}
}
}
use of com.biglybt.core.peer.PEPeer in project BiglyBT by BiglySoftware.
the class ChokingItem method refresh.
@Override
public void refresh(TableCell cell) {
PEPeer peer = (PEPeer) cell.getDataSource();
long value = (peer == null) ? 0 : (peer.isChokedByMe() ? 1 : 0);
if (!cell.setSortValue(value) && cell.isValid())
return;
cell.setText((value == 1) ? "*" : "");
}
use of com.biglybt.core.peer.PEPeer in project BiglyBT by BiglySoftware.
the class DownItem method cellHover.
/* (non-Javadoc)
* @see com.biglybt.pif.ui.tables.TableCellToolTipListener#cellHover(com.biglybt.pif.ui.tables.TableCell)
*/
@Override
public void cellHover(TableCell cell) {
Object ds = cell.getDataSource();
if (ds instanceof PEPeer) {
PEPeer peer = (PEPeer) ds;
long data_value = peer.getStats().getTotalDataBytesReceived();
long prot_value = peer.getStats().getTotalProtocolBytesReceived();
StringBuilder sb = new StringBuilder();
sb.append(DisplayFormatters.formatByteCountToKiBEtc(data_value));
sb.append(' ');
sb.append(MessageText.getString("label.transfered.data"));
sb.append('\n');
sb.append(DisplayFormatters.formatByteCountToKiBEtc(prot_value));
sb.append(' ');
sb.append(MessageText.getString("label.transfered.protocol"));
sb.append('\n');
sb.append(DisplayFormatters.formatByteCountToKiBEtc(prot_value + data_value));
sb.append(' ');
sb.append(MessageText.getString("label.transfered.total"));
sb.append('\n');
cell.setToolTip(sb.toString());
}
}
use of com.biglybt.core.peer.PEPeer in project BiglyBT by BiglySoftware.
the class DownItem method refresh.
@Override
public void refresh(TableCell cell) {
PEPeer peer = (PEPeer) cell.getDataSource();
long data_value = 0;
long prot_value = 0;
if (peer != null) {
data_value = peer.getStats().getTotalDataBytesReceived();
prot_value = peer.getStats().getTotalProtocolBytesReceived();
}
long sort_value;
if (separate_prot_data_stats) {
sort_value = (data_value << 24) + prot_value;
} else if (data_stats_only) {
sort_value = data_value;
} else {
sort_value = data_value + prot_value;
}
if (!cell.setSortValue(sort_value) && cell.isValid())
return;
cell.setText(DisplayFormatters.formatDataProtByteCountToKiBEtc(data_value, prot_value));
}
Aggregations