Search in sources :

Example 1 with PeerInfoIcon

use of io.bitsquare.gui.components.PeerInfoIcon in project bitsquare by bitsquare.

the class OfferBookView method getAvatarColumn.

private TableColumn<OfferBookListItem, OfferBookListItem> getAvatarColumn() {
    TableColumn<OfferBookListItem, OfferBookListItem> column = new TableColumn<OfferBookListItem, OfferBookListItem>("") {

        {
            setMinWidth(40);
            setMaxWidth(40);
            setSortable(true);
        }
    };
    column.setCellValueFactory((offer) -> new ReadOnlyObjectWrapper<>(offer.getValue()));
    column.setCellFactory(new Callback<TableColumn<OfferBookListItem, OfferBookListItem>, TableCell<OfferBookListItem, OfferBookListItem>>() {

        @Override
        public TableCell<OfferBookListItem, OfferBookListItem> call(TableColumn<OfferBookListItem, OfferBookListItem> column) {
            return new TableCell<OfferBookListItem, OfferBookListItem>() {

                @Override
                public void updateItem(final OfferBookListItem newItem, boolean empty) {
                    super.updateItem(newItem, empty);
                    if (newItem != null && !empty) {
                        String hostName = newItem.getOffer().getOwnerNodeAddress().hostName;
                        int numPastTrades = model.getNumPastTrades(newItem.getOffer());
                        boolean hasTraded = numPastTrades > 0;
                        String tooltipText = hasTraded ? "Offerer's onion address: " + hostName + "\n" + "You have already traded " + numPastTrades + " times with that offerer." : "Offerer's onion address: " + hostName;
                        Node identIcon = new PeerInfoIcon(hostName, tooltipText, numPastTrades, privateNotificationManager, newItem.getOffer());
                        setPadding(new Insets(-2, 0, -2, 0));
                        if (identIcon != null)
                            setGraphic(identIcon);
                    } else {
                        setGraphic(null);
                    }
                }
            };
        }
    });
    return column;
}
Also used : Insets(javafx.geometry.Insets) Node(javafx.scene.Node) PeerInfoIcon(io.bitsquare.gui.components.PeerInfoIcon)

Example 2 with PeerInfoIcon

use of io.bitsquare.gui.components.PeerInfoIcon in project bitsquare by bitsquare.

the class PendingTradesView method setAvatarColumnCellFactory.

private TableColumn<PendingTradesListItem, PendingTradesListItem> setAvatarColumnCellFactory() {
    avatarColumn.setCellValueFactory((offer) -> new ReadOnlyObjectWrapper<>(offer.getValue()));
    avatarColumn.setCellFactory(new Callback<TableColumn<PendingTradesListItem, PendingTradesListItem>, TableCell<PendingTradesListItem, PendingTradesListItem>>() {

        @Override
        public TableCell<PendingTradesListItem, PendingTradesListItem> call(TableColumn<PendingTradesListItem, PendingTradesListItem> column) {
            return new TableCell<PendingTradesListItem, PendingTradesListItem>() {

                @Override
                public void updateItem(final PendingTradesListItem newItem, boolean empty) {
                    super.updateItem(newItem, empty);
                    if (newItem != null && !empty && newItem.getTrade().getTradingPeerNodeAddress() != null) {
                        String hostName = newItem.getTrade().getTradingPeerNodeAddress().hostName;
                        int numPastTrades = model.getNumPastTrades(newItem.getTrade());
                        boolean hasTraded = numPastTrades > 0;
                        String tooltipText = hasTraded ? "Trading peers onion address: " + hostName + "\n" + "You have already traded " + numPastTrades + " times with that peer." : "Trading peers onion address: " + hostName;
                        Node identIcon = new PeerInfoIcon(hostName, tooltipText, numPastTrades, privateNotificationManager, newItem.getTrade().getOffer());
                        setPadding(new Insets(-2, 0, -2, 0));
                        if (identIcon != null)
                            setGraphic(identIcon);
                    } else {
                        setGraphic(null);
                    }
                }
            };
        }
    });
    return avatarColumn;
}
Also used : Insets(javafx.geometry.Insets) Node(javafx.scene.Node) PeerInfoIcon(io.bitsquare.gui.components.PeerInfoIcon)

Example 3 with PeerInfoIcon

use of io.bitsquare.gui.components.PeerInfoIcon in project bitsquare by bitsquare.

the class ClosedTradesView method setAvatarColumnCellFactory.

private TableColumn<ClosedTradableListItem, ClosedTradableListItem> setAvatarColumnCellFactory() {
    avatarColumn.setCellValueFactory((offer) -> new ReadOnlyObjectWrapper<>(offer.getValue()));
    avatarColumn.setCellFactory(new Callback<TableColumn<ClosedTradableListItem, ClosedTradableListItem>, TableCell<ClosedTradableListItem, ClosedTradableListItem>>() {

        @Override
        public TableCell<ClosedTradableListItem, ClosedTradableListItem> call(TableColumn<ClosedTradableListItem, ClosedTradableListItem> column) {
            return new TableCell<ClosedTradableListItem, ClosedTradableListItem>() {

                @Override
                public void updateItem(final ClosedTradableListItem newItem, boolean empty) {
                    super.updateItem(newItem, empty);
                    if (newItem != null && !empty && newItem.getTradable() instanceof Trade) {
                        int numPastTrades = model.getNumPastTrades(newItem.getTradable());
                        Trade trade = (Trade) newItem.getTradable();
                        String hostName = trade.getTradingPeerNodeAddress() != null ? trade.getTradingPeerNodeAddress().hostName : "";
                        Node identIcon = new PeerInfoIcon(hostName, "Trading peers onion address: " + hostName, numPastTrades, privateNotificationManager, newItem.getTradable().getOffer());
                        setPadding(new Insets(-2, 0, -2, 0));
                        if (identIcon != null)
                            setGraphic(identIcon);
                    } else {
                        setGraphic(null);
                    }
                }
            };
        }
    });
    return avatarColumn;
}
Also used : Insets(javafx.geometry.Insets) Node(javafx.scene.Node) PeerInfoIcon(io.bitsquare.gui.components.PeerInfoIcon) Trade(io.bitsquare.trade.Trade)

Aggregations

PeerInfoIcon (io.bitsquare.gui.components.PeerInfoIcon)3 Insets (javafx.geometry.Insets)3 Node (javafx.scene.Node)3 Trade (io.bitsquare.trade.Trade)1