diff --git a/gui/pom.xml b/gui/pom.xml
index ddaf01f94b..5504ac17a3 100644
--- a/gui/pom.xml
+++ b/gui/pom.xml
@@ -141,5 +141,12 @@
Enzo
0.1.5
+
+
+
\ No newline at end of file
diff --git a/gui/src/main/java/io/bitsquare/gui/bitsquare.css b/gui/src/main/java/io/bitsquare/gui/bitsquare.css
index 907f961a3a..28f5107421 100644
--- a/gui/src/main/java/io/bitsquare/gui/bitsquare.css
+++ b/gui/src/main/java/io/bitsquare/gui/bitsquare.css
@@ -31,7 +31,11 @@ bg color of non edit textFields: fafafa
-fx-accent: #0f87c3;
-bs-green: #00aa33;
+ -bs-green-soft: derive(-bs-green, 60%);
-bs-error-red: #dd0000;
+ -bs-red-soft: derive(-bs-error-red, 60%);
+ -bs-orange: #dd8f05;
+
-bs-blue-transparent: #0f87c344;
-bs-green-transparent: #00aa3344;
@@ -146,7 +150,7 @@ bg color of non edit textFields: fafafa
}
.received-funds-icon {
- -fx-text-fill: -bs-green;
+ -fx-text-fill: -bs-green-soft;
-fx-cursor: hand;
}
@@ -156,7 +160,7 @@ bg color of non edit textFields: fafafa
}
.sent-funds-icon {
- -fx-text-fill: -bs-error-red;
+ -fx-text-fill: -bs-red-soft;
-fx-cursor: hand;
}
@@ -613,6 +617,65 @@ textfield */
-fx-background-radius: 3px, 3px, 2px, 1px;
}
+#open-support-button {
+ -fx-font-weight: bold;
+ -fx-font-size: 14;
+ -fx-base: -bs-orange;
+}
+
+#open-dispute-button {
+ -fx-font-weight: bold;
+ -fx-font-size: 14;
+ -fx-base: #dd0000;
+}
+
+#trade-notification-warning {
+ -fx-font-size: 14;
+ -fx-base: -bs-red-soft;
+}
+
+#trade-notification-information {
+ -fx-font-size: 14;
+ -fx-outer-border: linear-gradient(to bottom, #ffb34b, #ff9200);
+}
+
+#trade-notification-dispute {
+ -fx-font-size: 14;
+ -fx-base: -bs-error-red;
+}
+
+#trade-notification-support {
+ -fx-font-size: 14;
+ -fx-base: -bs-orange;
+}
+
+#support-info-label {
+ -fx-font-size: 14;
+ -fx-text-fill: -bs-red-soft;
+}
+
+#titled-group-bg-warn {
+ -fx-body-color: linear-gradient(to bottom, -bs-content-bg-grey, #F0F0F0);
+ -fx-outer-border: linear-gradient(to bottom, #ffb34b, #ff9200);
+ -fx-background-color: -fx-shadow-highlight-color,
+ -fx-outer-border,
+ -fx-inner-border,
+ -fx-body-color;
+ -fx-background-insets: 0 0 -1 0, 0, 1, 2;
+ -fx-background-radius: 3px, 3px, 2px, 1px;
+}
+
+#titled-group-bg-label-warn {
+ -fx-font-weight: bold;
+ -fx-font-size: 14;
+ -fx-text-fill: #ff9200;
+ -fx-background-color: -bs-content-bg-grey;
+}
+
+
+
+
+
/* TitledGroupBg */
#titled-group-bg-label {
-fx-font-weight: bold;
diff --git a/gui/src/main/java/io/bitsquare/gui/components/AddressTextField.java b/gui/src/main/java/io/bitsquare/gui/components/AddressTextField.java
index 7fa2877914..4d37f59e2c 100644
--- a/gui/src/main/java/io/bitsquare/gui/components/AddressTextField.java
+++ b/gui/src/main/java/io/bitsquare/gui/components/AddressTextField.java
@@ -62,20 +62,20 @@ public class AddressTextField extends AnchorPane {
textField.setId("address-text-field");
textField.setEditable(false);
textField.textProperty().bind(address);
- Tooltip.install(textField, new Tooltip("Open your default bitcoin wallet with that address."));
- textField.setOnMouseClicked(mouseEvent -> {
- try {
- Utilities.openURI(URI.create(getBitcoinURI()));
- } catch (Exception e) {
- log.warn(e.getMessage());
- new Popup().warning("Opening a default bitcoin wallet application has failed. " +
- "Perhaps you don't have one installed?").show();
- }
- });
+ String tooltipText = "Open your default bitcoin wallet";
+ Tooltip.install(textField, new Tooltip(tooltipText));
+ textField.setOnMouseClicked(mouseEvent -> openExtWallet());
textField.focusTraversableProperty().set(focusTraversableProperty().get());
//TODO app wide focus
//focusedProperty().addListener((ov, oldValue, newValue) -> textField.requestFocus());
+ Label extWalletIcon = new Label();
+ extWalletIcon.setLayoutY(3);
+ extWalletIcon.getStyleClass().add("copy-icon");
+ Tooltip.install(extWalletIcon, new Tooltip(tooltipText));
+ AwesomeDude.setIcon(extWalletIcon, AwesomeIcon.SIGNIN);
+ extWalletIcon.setOnMouseClicked(e -> openExtWallet());
+
Label copyIcon = new Label();
copyIcon.setLayoutY(3);
copyIcon.getStyleClass().add("copy-icon");
@@ -121,10 +121,21 @@ public class AddressTextField extends AnchorPane {
AnchorPane.setRightAnchor(qrCode, 5.0);
AnchorPane.setRightAnchor(copyIcon, 30.0);
- AnchorPane.setRightAnchor(textField, 55.0);
+ AnchorPane.setRightAnchor(extWalletIcon, 55.0);
+ AnchorPane.setRightAnchor(textField, 77.0);
AnchorPane.setLeftAnchor(textField, 0.0);
- getChildren().addAll(textField, copyIcon, qrCode);
+ getChildren().addAll(textField, extWalletIcon, copyIcon, qrCode);
+ }
+
+ private void openExtWallet() {
+ try {
+ Utilities.openURI(URI.create(getBitcoinURI()));
+ } catch (Exception e) {
+ log.warn(e.getMessage());
+ new Popup().warning("Opening a default bitcoin wallet application has failed. " +
+ "Perhaps you don't have one installed?").show();
+ }
}
diff --git a/gui/src/main/java/io/bitsquare/gui/components/AddressWithIconAndDirection.java b/gui/src/main/java/io/bitsquare/gui/components/AddressWithIconAndDirection.java
index 9a3974bf17..add6fec473 100644
--- a/gui/src/main/java/io/bitsquare/gui/components/AddressWithIconAndDirection.java
+++ b/gui/src/main/java/io/bitsquare/gui/components/AddressWithIconAndDirection.java
@@ -26,7 +26,6 @@ public class AddressWithIconAndDirection extends AnchorPane {
directionIcon.setLayoutY(3);
directionIcon.getStyleClass().add(received ? "received-funds-icon" : "sent-funds-icon");
AwesomeDude.setIcon(directionIcon, received ? AwesomeIcon.SIGNIN : AwesomeIcon.SIGNOUT);
- directionIcon.setOpacity(0.7);
directionIcon.setMouseTransparent(true);
HBox hBox = new HBox();
@@ -48,6 +47,7 @@ public class AddressWithIconAndDirection extends AnchorPane {
openLinkIcon = new Label();
openLinkIcon.setLayoutY(3);
openLinkIcon.getStyleClass().add("external-link-icon");
+ openLinkIcon.setOpacity(0.7);
AwesomeDude.setIcon(openLinkIcon, awesomeIcon);
AnchorPane.setLeftAnchor(directionIcon, 3.0);
diff --git a/gui/src/main/java/io/bitsquare/gui/components/HyperlinkWithIcon.java b/gui/src/main/java/io/bitsquare/gui/components/HyperlinkWithIcon.java
index 3b311e3e9a..44c5d38642 100644
--- a/gui/src/main/java/io/bitsquare/gui/components/HyperlinkWithIcon.java
+++ b/gui/src/main/java/io/bitsquare/gui/components/HyperlinkWithIcon.java
@@ -14,7 +14,7 @@ import javafx.scene.layout.Priority;
public class HyperlinkWithIcon extends HBox {
private final Hyperlink hyperlink;
- private final Label openLinkIcon;
+ private final Label icon;
public HyperlinkWithIcon(String text, AwesomeIcon awesomeIcon) {
this(text, awesomeIcon, false);
@@ -28,12 +28,13 @@ public class HyperlinkWithIcon extends HBox {
setSpacing(5);
hyperlink = new Hyperlink(text);
- openLinkIcon = new Label();
- openLinkIcon.getStyleClass().add("external-link-icon");
+ icon = new Label();
+ icon.getStyleClass().add("external-link-icon");
- AwesomeDude.setIcon(openLinkIcon, awesomeIcon);
- openLinkIcon.setMinWidth(20);
- HBox.setMargin(openLinkIcon, new Insets(awesomeIcon == AwesomeIcon.INFO_SIGN ? 2 : 3, 0, 0, 0));
+ AwesomeDude.setIcon(icon, awesomeIcon);
+ icon.setMinWidth(20);
+ icon.setOpacity(0.7);
+ HBox.setMargin(icon, new Insets(awesomeIcon == AwesomeIcon.INFO_SIGN ? 2 : 3, 0, 0, 0));
if (isCentered) {
Pane spacer1 = new Pane();
@@ -44,20 +45,20 @@ public class HyperlinkWithIcon extends HBox {
spacer2.setMaxWidth(Double.MAX_VALUE);
HBox.setHgrow(spacer2, Priority.ALWAYS);
- getChildren().addAll(spacer1, hyperlink, openLinkIcon, spacer2);
+ getChildren().addAll(spacer1, hyperlink, icon, spacer2);
} else {
- getChildren().addAll(hyperlink, openLinkIcon);
+ getChildren().addAll(hyperlink, icon);
}
}
public void setOnAction(EventHandler handler) {
hyperlink.setOnAction(handler);
- openLinkIcon.setOnMouseClicked(e -> handler.handle(null));
+ icon.setOnMouseClicked(e -> handler.handle(null));
}
public void setTooltip(Tooltip tooltip) {
hyperlink.setTooltip(tooltip);
// TODO does not use the right style
- openLinkIcon.setTooltip(tooltip);
+ icon.setTooltip(tooltip);
}
}
diff --git a/gui/src/main/java/io/bitsquare/gui/components/TitledGroupBg.java b/gui/src/main/java/io/bitsquare/gui/components/TitledGroupBg.java
index 6ed55eba38..b98316dcd3 100644
--- a/gui/src/main/java/io/bitsquare/gui/components/TitledGroupBg.java
+++ b/gui/src/main/java/io/bitsquare/gui/components/TitledGroupBg.java
@@ -26,6 +26,7 @@ import javafx.scene.layout.Pane;
public class TitledGroupBg extends Pane {
+
private final Label label;
private final StringProperty text = new SimpleStringProperty();
@@ -68,5 +69,8 @@ public class TitledGroupBg extends Pane {
this.text.set(text);
}
+ public Label getLabel() {
+ return label;
+ }
}
diff --git a/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/AliPayForm.java b/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/AliPayForm.java
index b46db99c54..49726e1a0a 100644
--- a/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/AliPayForm.java
+++ b/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/AliPayForm.java
@@ -42,9 +42,7 @@ public class AliPayForm extends PaymentMethodForm {
private InputTextField accountNrInputTextField;
public static int addFormForBuyer(GridPane gridPane, int gridRow, PaymentAccountContractData paymentAccountContractData) {
- addLabelTextField(gridPane, ++gridRow, "Payment method:", BSResources.get(paymentAccountContractData.getPaymentMethodName()));
addLabelTextFieldWithCopyIcon(gridPane, ++gridRow, "Account nr.:", ((AliPayAccountContractData) paymentAccountContractData).getAccountNr());
- addAllowedPeriod(gridPane, ++gridRow, paymentAccountContractData);
return gridRow;
}
@@ -72,7 +70,7 @@ public class AliPayForm extends PaymentMethodForm {
@Override
protected void autoFillNameTextField() {
- if (autoFillCheckBox != null && autoFillCheckBox.isSelected()) {
+ if (useCustomAccountNameCheckBox != null && !useCustomAccountNameCheckBox.isSelected()) {
String accountNr = accountNrInputTextField.getText();
accountNr = StringUtils.abbreviate(accountNr, 5);
String method = BSResources.get(paymentAccount.getPaymentMethod().getId());
diff --git a/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/BlockChainForm.java b/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/BlockChainForm.java
index c0f1c47943..5738e00bc1 100644
--- a/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/BlockChainForm.java
+++ b/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/BlockChainForm.java
@@ -49,13 +49,11 @@ public class BlockChainForm extends PaymentMethodForm {
private ComboBox currencyComboBox;
public static int addFormForBuyer(GridPane gridPane, int gridRow, PaymentAccountContractData paymentAccountContractData) {
- addLabelTextField(gridPane, ++gridRow, "Payment method:", BSResources.get(paymentAccountContractData.getPaymentMethodName()));
addLabelTextFieldWithCopyIcon(gridPane, ++gridRow, "Address:", ((BlockChainAccountContractData) paymentAccountContractData).getAddress());
if (paymentAccountContractData instanceof BlockChainAccountContractData &&
((BlockChainAccountContractData) paymentAccountContractData).getPaymentId() != null)
addLabelTextFieldWithCopyIcon(gridPane, ++gridRow, "Payment ID:", ((BlockChainAccountContractData) paymentAccountContractData).getPaymentId());
- addAllowedPeriod(gridPane, ++gridRow, paymentAccountContractData);
return gridRow;
}
@@ -86,7 +84,7 @@ public class BlockChainForm extends PaymentMethodForm {
@Override
protected void autoFillNameTextField() {
- if (autoFillCheckBox != null && autoFillCheckBox.isSelected()) {
+ if (useCustomAccountNameCheckBox != null && !useCustomAccountNameCheckBox.isSelected()) {
String method = BSResources.get(paymentAccount.getPaymentMethod().getId());
String address = addressInputTextField.getText();
address = StringUtils.abbreviate(address, 9);
diff --git a/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/OKPayForm.java b/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/OKPayForm.java
index f6d5f3b366..689f3f6068 100644
--- a/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/OKPayForm.java
+++ b/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/OKPayForm.java
@@ -49,9 +49,7 @@ public class OKPayForm extends PaymentMethodForm {
private InputTextField accountNrInputTextField;
public static int addFormForBuyer(GridPane gridPane, int gridRow, PaymentAccountContractData paymentAccountContractData) {
- addLabelTextField(gridPane, ++gridRow, "Payment method:", BSResources.get(paymentAccountContractData.getPaymentMethodName()));
addLabelTextFieldWithCopyIcon(gridPane, ++gridRow, "Account nr.:", ((OKPayAccountContractData) paymentAccountContractData).getAccountNr());
- addAllowedPeriod(gridPane, ++gridRow, paymentAccountContractData);
return gridRow;
}
@@ -116,7 +114,7 @@ public class OKPayForm extends PaymentMethodForm {
@Override
protected void autoFillNameTextField() {
- if (autoFillCheckBox != null && autoFillCheckBox.isSelected()) {
+ if (useCustomAccountNameCheckBox != null && !useCustomAccountNameCheckBox.isSelected()) {
String accountNr = accountNrInputTextField.getText();
accountNr = StringUtils.abbreviate(accountNr, 5);
String method = BSResources.get(paymentAccount.getPaymentMethod().getId());
diff --git a/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/PaymentMethodForm.java b/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/PaymentMethodForm.java
index 0f020e1bb0..bc99ee858c 100644
--- a/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/PaymentMethodForm.java
+++ b/gui/src/main/java/io/bitsquare/gui/components/paymentmethods/PaymentMethodForm.java
@@ -48,7 +48,7 @@ public abstract class PaymentMethodForm {
protected int gridRowFrom;
protected InputTextField accountNameTextField;
- protected CheckBox autoFillCheckBox;
+ protected CheckBox useCustomAccountNameCheckBox;
private ComboBox currencyComboBox;
public PaymentMethodForm(PaymentAccount paymentAccount, InputValidator inputValidator, GridPane gridPane, int gridRow) {
@@ -80,7 +80,7 @@ public abstract class PaymentMethodForm {
}
protected void addAccountNameTextFieldWithAutoFillCheckBox() {
- Tuple3