private BooleanBinding actionEnabledBinding() { return new BooleanBinding() { { super.bind(moneyTransfer.amountProperty()); } @Override protected boolean computeValue() { return moneyTransfer.getAmount() > 0; } }; }
/** * Create a new instance for the money transfer. * @return new control for the money transfer. */ public MoneyTransfer getMoneyTransfer(IDataImageLoader imageLoader) { return new MoneyTransfer(imageLoader); } }
@Override protected boolean computeValue() { return moneyTransfer.getAmount() > 0; } };
@PostConstruct private void initializeDialog() { setTitle(messageSource.getMessage("ch.sahits.game.openpatrician.display.dialog.church.ChurchGiftDialog.title", new Object[]{}, locale.getCurrentLocal())); String template = messageSource.getMessage("ch.sahits.game.openpatrician.display.dialog.church.ChurchGiftDialog.introText", new Object[]{}, locale.getCurrentLocal()); DecoratedText text = textFactory.createDecoratedText(template, new HashMap<>()); VBox box = new VBox(text); final ICompany company = city.getPlayer().getCompany(); moneyTransfer = fxUtils.getMoneyTransfer(imageLoader); moneyTransfer.setStepSize(500); moneyTransfer.maxTransfereableProperty().bind(company.cashProperty()); moneyTransfer.setAmount(0); box.setLayoutX(50); box.setLayoutY(CLOSE_BTN_Y_POS - 500); moneyTransfer.setPadding(new Insets(100, 0, 0, 100)); box.getChildren().addAll(moneyTransfer); final int actionButtonX = (WIDTH - 124) / 2; String s = messageSource.getMessage("ch.sahits.game.openpatrician.display.dialog.church.ChurchFeedingDialog.donate", new Object[]{}, locale.getCurrentLocal()); final OpenPatricianLargeWaxButton action = new OpenPatricianLargeWaxButton(s); action.getStyleClass().add("actionButton"); action.setOnAction(getAction()); action.setLayoutX(actionButtonX); action.setLayoutY(CLOSE_BTN_Y_POS - 24); BooleanBinding actionEnabled = actionEnabledBinding(); action.setDisable(!actionEnabled.get()); actionEnabled.addListener((observableValue, oldValue, newValue) -> action.setDisable(!newValue)); getContent().addAll(box, action); }
Treasury treasury = (Treasury) cityHallAccessor.getCityHall(city.getCity()).getTreasury(); MoneyTransfer moneyTransfer = fxUtils.getMoneyTransfer(imageLoader); moneyTransfer.setStepSize(100); moneyTransfer.maxTransfereableProperty().bind(treasury.cashProperty()); moneyTransfer.setAmount(0); action.setOnAction((evt) -> { try { final int withdrawl = moneyTransfer.getAmount(); treasury.subtractOtherCosts(withdrawl); city.getPlayer().getCompany().updateCash(withdrawl);
input.textProperty().bind(moneyTranfer.amountProperty().asString()); imgView.setOnMouseReleased((e) -> { int value = Integer.parseInt(input.getText()); moneyTranfer.setAmount(Math.max(value - moneyTranfer.getStepSize(), 0)); moneyTranfer.setAmount(Math.min(value + moneyTranfer.getStepSize(), moneyTranfer.getMaxTransfereable()));
moneyTransfer.setStepSize(500); moneyTransfer.maxTransfereableProperty().bind(company.cashProperty()); moneyTransfer.setAmount(0); moneyTransfer.setPadding(new Insets(100, 0, 0, 100)); box.getChildren().addAll(moneyTransfer);
final ICompany company = city.getPlayer().getCompany(); MoneyTransfer moneyTransfer = fxUtils.getMoneyTransfer(imageLoader); moneyTransfer.setStepSize(100); moneyTransfer.maxTransfereableProperty().bind(company.cashProperty()); moneyTransfer.setAmount(0); selectionBox = new HBox(5); action.setOnAction((e) -> { Treasury treasury = (Treasury) cityHallAccessor.getCityHall(city.getCity()).getTreasury(); final int donations = moneyTransfer.getAmount(); treasury.addDonations(donations); company.updateCash(-donations);
private BooleanBinding actionEnabledBinding() { return new BooleanBinding() { { super.bind(moneyTransfer.amountProperty()); } @Override protected boolean computeValue() { return moneyTransfer.getAmount() > 0; } }; }
@Override protected boolean computeValue() { return moneyTransfer.getAmount() > 0; } };
private EventHandler<MouseEvent> getAction(final IChurch church) { return evt -> { try { final ICompany company = city.getPlayer().getCompany(); company.updateCash(-moneyTransfer.getAmount()); church.makeDonation(moneyTransfer.getAmount()); city.getCity().getReputation(city.getPlayer()).update(moneyTransfer.getAmount() / 1000); executeOnCloseButtonClicked(); } catch (RuntimeException e) { logger.error("Failed to make donation", e); } }; }
private EventHandler<MouseEvent> getAction() { return evt -> { try { final ICompany company = city.getPlayer().getCompany(); company.updateCash(-moneyTransfer.getAmount()); city.getCity().getReputation(city.getPlayer()).update(moneyTransfer.getAmount() / 1000); executeOnCloseButtonClicked(); } catch (RuntimeException e) { logger.error("Failed to make a donation to the city", e); } }; }