ctbrec-5.3.2-experimental/client/src/main/java/ctbrec/ui/tabs/DonateTabFx.java

111 lines
5.1 KiB
Java

package ctbrec.ui.tabs;
import ctbrec.ui.DesktopIntegration;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.Tab;
import javafx.scene.control.TextField;
import javafx.scene.image.ImageView;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.scene.text.Font;
public class DonateTabFx extends Tab {
public DonateTabFx() {
setClosable(false);
setText("Donate");
BorderPane container = new BorderPane();
container.setPadding(new Insets(10));
setContent(container);
VBox headerVbox = new VBox(10);
headerVbox.setAlignment(Pos.CENTER);
Label beer = new Label("Buy me some beer?!");
beer.setFont(new Font(36));
Label desc = new Label("If you like this software and want to buy me some beer or pizza, here are some possibilities!");
desc.setFont(new Font(24));
headerVbox.getChildren().addAll(beer, desc);
HBox header = new HBox();
header.setAlignment(Pos.CENTER);
header.getChildren().add(headerVbox);
header.setPadding(new Insets(20, 0, 0, 0));
container.setTop(header);
ImageView coffeeImage = new ImageView(getClass().getResource("/buymeacoffee-round.png").toString());
Button coffeeButton = new Button("Buy me a coffee");
coffeeButton.setPadding(new Insets(5));
coffeeButton.setOnMouseClicked(e -> DesktopIntegration.open("https://www.buymeacoffee.com/0xboobface"));
VBox buyCoffeeBox = new VBox(5);
buyCoffeeBox.setAlignment(Pos.TOP_CENTER);
buyCoffeeBox.getChildren().addAll(coffeeImage, coffeeButton);
ImageView paypalImage = new ImageView(getClass().getResource("/paypal-round.png").toString());
Button paypalButton = new Button("PayPal");
paypalButton.setPadding(new Insets(5));
paypalButton.setOnMouseClicked(e -> DesktopIntegration.open("https://www.paypal.me/0xb00bface"));
VBox paypalBox = new VBox(5);
paypalBox.setAlignment(Pos.TOP_CENTER);
paypalBox.getChildren().addAll(paypalImage, paypalButton);
ImageView kofiImage = new ImageView(getClass().getResource("/kofi-round.png").toString());
Button kofiButton = new Button("Ko-fi");
kofiButton.setPadding(new Insets(5));
kofiButton.setOnMouseClicked(e -> DesktopIntegration.open("https://ko-fi.com/0xb00bface"));
VBox patreonBox = new VBox(5);
patreonBox.setAlignment(Pos.TOP_CENTER);
patreonBox.getChildren().addAll(kofiImage, kofiButton);
int prefWidth = 360;
TextField bitcoinAddress = new TextField("15sLWZon8diPqAX4UdPQU1DcaPuvZs2GgA");
bitcoinAddress.setEditable(false);
bitcoinAddress.setPrefWidth(prefWidth);
ImageView bitcoinQrCode = new ImageView(getClass().getResource("/html/bitcoin-address.png").toString());
Label bitcoinLabel = new Label("Bitcoin");
bitcoinLabel.setGraphic(new ImageView(getClass().getResource("/html/bitcoin.png").toString()));
VBox bitcoinBox = new VBox(5);
bitcoinBox.setAlignment(Pos.TOP_CENTER);
bitcoinBox.getChildren().addAll(bitcoinLabel, bitcoinAddress, bitcoinQrCode);
TextField ethereumAddress = new TextField("0x996041638eEAE7E31f39Ef6e82068d69bA7C090e");
ethereumAddress.setEditable(false);
ethereumAddress.setPrefWidth(prefWidth);
ImageView ethereumQrCode = new ImageView(getClass().getResource("/html/ethereum-address.png").toString());
Label ethereumLabel = new Label("Ethereum");
ethereumLabel.setGraphic(new ImageView(getClass().getResource("/html/ethereum.png").toString()));
VBox ethereumBox = new VBox(5);
ethereumBox.setAlignment(Pos.TOP_CENTER);
ethereumBox.getChildren().addAll(ethereumLabel, ethereumAddress, ethereumQrCode);
TextField moneroAddress = new TextField("448ZQZpzvT4iRNAVBr7CMQBfEbN3H8uAF2BWabtqVRckgTY3GQJkUgydjotEPaGvpzJboUpe39J8rPBkWZaUbrQa31FoSMj");
moneroAddress.setEditable(false);
moneroAddress.setPrefWidth(prefWidth);
ImageView moneroQrCode = new ImageView(getClass().getResource("/html/monero-address.png").toString());
Label moneroLabel = new Label("Monero");
moneroLabel.setGraphic(new ImageView(getClass().getResource("/html/monero.png").toString()));
VBox moneroBox = new VBox(5);
moneroBox.setAlignment(Pos.TOP_CENTER);
moneroBox.getChildren().addAll(moneroLabel, moneroAddress, moneroQrCode);
HBox topBox = new HBox(5);
topBox.setAlignment(Pos.CENTER);
topBox.setSpacing(50);
topBox.getChildren().addAll(buyCoffeeBox, paypalBox, patreonBox);
HBox bottomBox = new HBox(5);
bottomBox.setAlignment(Pos.CENTER);
bottomBox.setSpacing(50);
bottomBox.getChildren().addAll(bitcoinBox, ethereumBox, moneroBox);
VBox centerBox = new VBox(50);
VBox.setMargin(topBox, new Insets(20, 0, 0, 0));
centerBox.getChildren().addAll(topBox, bottomBox);
container.setCenter(centerBox);
}
}