aboutsummaryrefslogtreecommitdiffstats
path: root/ui-desktop/src/main/java/market/guess/ui/desktop/components/LadderItemView.java
blob: e2ecfbd820ac64ee2b2a932a009abdc77bdd2cc6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package market.guess.ui.desktop.components;

import javafx.css.PseudoClass;
import javafx.fxml.FXML;
import javafx.scene.control.Label;
import javafx.scene.layout.HBox;
import market.guess.ui.desktop.model.BookRow;
import market.guess.ui.desktop.util.Views;

public class LadderItemView extends HBox {
  private static final PseudoClass BID = PseudoClass.getPseudoClass("bid");
  private static final PseudoClass ASK = PseudoClass.getPseudoClass("ask");

  @FXML private Label priceLabel;
  @FXML private Label sideLabel;
  @FXML private Label qtyLabel;
  @FXML private Label userLabel;

  public LadderItemView() {
    Views.loadRoot(this, "ladder_item.fxml");
  }

  public LadderItemView(BookRow row) {
    this();
    update(row);
  }

  public void update(BookRow r) {
    priceLabel.setText(r.price());
    sideLabel.setText(r.side());
    qtyLabel.setText(String.valueOf(r.qty()));
    userLabel.setText(r.user());

    pseudoClassStateChanged(BID, r.isBid());
    pseudoClassStateChanged(ASK, !r.isBid());
  }
}