Example usage for javafx.scene Scene getStylesheets

List of usage examples for javafx.scene Scene getStylesheets

Introduction

In this page you can find the example usage for javafx.scene Scene getStylesheets.

Prototype

public final ObservableList<String> getStylesheets() 

Source Link

Document

Gets an observable list of string URLs linking to the stylesheets to use with this scene's contents.

Usage

From source file:gov.va.isaac.gui.refexViews.refexEdit.AddSememePopup.java

private AddSememePopup() {
    super();//from w  ww  . java2 s  . c om
    BorderPane root = new BorderPane();

    VBox topItems = new VBox();
    topItems.setFillWidth(true);

    title_ = new Label("Create new sememe instance");
    title_.getStyleClass().add("titleLabel");
    title_.setAlignment(Pos.CENTER);
    title_.prefWidthProperty().bind(topItems.widthProperty());
    topItems.getChildren().add(title_);
    VBox.setMargin(title_, new Insets(10, 10, 10, 10));

    gp_ = new GridPane();
    gp_.setHgap(10.0);
    gp_.setVgap(10.0);
    VBox.setMargin(gp_, new Insets(5, 5, 5, 5));
    topItems.getChildren().add(gp_);

    Label referencedComponent = new Label("Referenced Component");
    referencedComponent.getStyleClass().add("boldLabel");
    gp_.add(referencedComponent, 0, 0);

    unselectableComponentLabel_ = new CopyableLabel();
    unselectableComponentLabel_.setWrapText(true);
    AppContext.getService(DragRegistry.class).setupDragOnly(unselectableComponentLabel_, () -> {
        if (editRefex_ == null) {
            return focusNid_ + "";
        } else {
            return Get.identifierService().getConceptNid(editRefex_.getSememe().getAssemblageSequence()) + "";
        }
    });
    //delay adding till we know which row

    Label assemblageConceptLabel = new Label("Assemblage Concept");
    assemblageConceptLabel.getStyleClass().add("boldLabel");
    gp_.add(assemblageConceptLabel, 0, 1);

    selectableConcept_ = new ConceptNode(null, true, refexDropDownOptions, null);

    selectableConcept_.getConceptProperty().addListener(new ChangeListener<ConceptSnapshot>() {
        @Override
        public void changed(ObservableValue<? extends ConceptSnapshot> observable, ConceptSnapshot oldValue,
                ConceptSnapshot newValue) {
            if (createRefexFocus_ != null && createRefexFocus_ == ViewFocus.REFERENCED_COMPONENT) {
                if (selectableConcept_.isValid().get()) {
                    //Its a valid concept, but is it a valid assemblage concept?
                    try {
                        assemblageInfo_ = DynamicSememeUsageDescription
                                .read(selectableConcept_.getConceptNoWait().getNid());
                        assemblageIsValid_.set(true);
                        if (assemblageInfo_.getReferencedComponentTypeRestriction() != null) {
                            String result = DynamicSememeValidatorType.COMPONENT_TYPE
                                    .passesValidatorStringReturn(new DynamicSememeNid(focusNid_),
                                            new DynamicSememeString(assemblageInfo_
                                                    .getReferencedComponentTypeRestriction().name()),
                                            null, null); //don't need coordinates for component type validator
                            if (result.length() > 0) {
                                selectableConcept_.isValid()
                                        .setInvalid("The selected assemblage requires the component type to be "
                                                + assemblageInfo_.getReferencedComponentTypeRestriction()
                                                        .toString()
                                                + ", which doesn't match the referenced component.");
                                logger_.info("The selected assemblage requires the component type to be "
                                        + assemblageInfo_.getReferencedComponentTypeRestriction().toString()
                                        + ", which doesn't match the referenced component.");
                                assemblageIsValid_.set(false);
                            }
                        }
                    } catch (Exception e) {
                        selectableConcept_.isValid().setInvalid(
                                "The selected concept is not properly constructed for use as an Assemblage concept");
                        logger_.info("Concept not a valid concept for a sememe assemblage", e);
                        assemblageIsValid_.set(false);
                    }
                } else {
                    assemblageInfo_ = null;
                    assemblageIsValid_.set(false);
                }
                buildDataFields(assemblageIsValid_.get(), null);
            }
        }
    });

    selectableComponent_ = new TextField();

    selectableComponentNodeValid_ = new ValidBooleanBinding() {
        {
            setComputeOnInvalidate(true);
            bind(selectableComponent_.textProperty());
            invalidate();
        }

        @Override
        protected boolean computeValue() {
            if (createRefexFocus_ != null && createRefexFocus_ == ViewFocus.ASSEMBLAGE
                    && !conceptNodeIsConceptType_) {
                //If the assembly nid was what was set - the component node may vary - validate if we are using the text field 
                String value = selectableComponent_.getText().trim();
                if (value.length() > 0) {
                    try {
                        if (Utility.isUUID(value)) {
                            String result = DynamicSememeValidatorType.COMPONENT_TYPE
                                    .passesValidatorStringReturn(new DynamicSememeUUID(UUID.fromString(value)),
                                            new DynamicSememeString(assemblageInfo_
                                                    .getReferencedComponentTypeRestriction().name()),
                                            null, null); //component type validator doesn't use vc, so null is ok
                            if (result.length() > 0) {
                                setInvalidReason(result);
                                logger_.info(result);
                                return false;
                            }
                        } else if (Utility.isInt(value)) {
                            String result = DynamicSememeValidatorType.COMPONENT_TYPE
                                    .passesValidatorStringReturn(new DynamicSememeNid(Integer.parseInt(value)),
                                            new DynamicSememeString(assemblageInfo_
                                                    .getReferencedComponentTypeRestriction().name()),
                                            null, null); //component type validator doesn't use vc, so null is ok
                            if (result.length() > 0) {
                                setInvalidReason(result);
                                logger_.info(result);
                                return false;
                            }
                        } else {
                            setInvalidReason(
                                    "Value cannot be parsed as a component identifier.  Must be a UUID or a valid NID");
                            return false;
                        }
                    } catch (Exception e) {
                        logger_.error("Error checking component type validation", e);
                        setInvalidReason("Unexpected error validating entry");
                        return false;
                    }
                } else {
                    setInvalidReason("Component identifier is required");
                    return false;
                }
            }
            clearInvalidReason();
            return true;
        }
    };

    selectableComponentNode_ = ErrorMarkerUtils.setupErrorMarker(selectableComponent_, null,
            selectableComponentNodeValid_);

    //delay adding concept / component till we know if / where
    ColumnConstraints cc = new ColumnConstraints();
    cc.setHgrow(Priority.NEVER);
    cc.setMinWidth(FxUtils.calculateNecessaryWidthOfBoldLabel(referencedComponent));
    gp_.getColumnConstraints().add(cc);

    cc = new ColumnConstraints();
    cc.setHgrow(Priority.ALWAYS);
    gp_.getColumnConstraints().add(cc);

    Label l = new Label("Data Fields");
    l.getStyleClass().add("boldLabel");
    VBox.setMargin(l, new Insets(5, 5, 5, 5));
    topItems.getChildren().add(l);

    root.setTop(topItems);

    sp_ = new ScrollPane();
    sp_.visibleProperty().bind(assemblageIsValid_);
    sp_.setFitToHeight(true);
    sp_.setFitToWidth(true);
    root.setCenter(sp_);

    allValid_ = new UpdateableBooleanBinding() {
        {
            addBinding(assemblageIsValid_, selectableConcept_.isValid(), selectableComponentNodeValid_);
        }

        @Override
        protected boolean computeValue() {
            if (assemblageIsValid_.get() && (conceptNodeIsConceptType_ ? selectableConcept_.isValid().get()
                    : selectableComponentNodeValid_.get())) {
                boolean allDataValid = true;
                for (ReadOnlyStringProperty ssp : currentDataFieldWarnings_) {
                    if (ssp.get().length() > 0) {
                        allDataValid = false;
                        break;
                    }
                }
                if (allDataValid) {
                    clearInvalidReason();
                    return true;
                }
            }
            setInvalidReason("All errors must be corrected before save is allowed");
            return false;
        }
    };

    GridPane bottomRow = new GridPane();
    //spacer col
    bottomRow.add(new Region(), 0, 0);

    Button cancelButton = new Button("Cancel");
    cancelButton.setOnAction((action) -> {
        close();
    });
    GridPane.setMargin(cancelButton, new Insets(5, 20, 5, 0));
    GridPane.setHalignment(cancelButton, HPos.RIGHT);
    bottomRow.add(cancelButton, 1, 0);

    Button saveButton = new Button("Save");
    saveButton.disableProperty().bind(allValid_.not());
    saveButton.setOnAction((action) -> {
        doSave();
    });
    Node wrappedSave = ErrorMarkerUtils.setupDisabledInfoMarker(saveButton, allValid_.getReasonWhyInvalid());
    GridPane.setMargin(wrappedSave, new Insets(5, 0, 5, 20));
    bottomRow.add(wrappedSave, 2, 0);

    //spacer col
    bottomRow.add(new Region(), 3, 0);

    cc = new ColumnConstraints();
    cc.setHgrow(Priority.SOMETIMES);
    cc.setFillWidth(true);
    bottomRow.getColumnConstraints().add(cc);
    cc = new ColumnConstraints();
    cc.setHgrow(Priority.NEVER);
    bottomRow.getColumnConstraints().add(cc);
    cc = new ColumnConstraints();
    cc.setHgrow(Priority.NEVER);
    bottomRow.getColumnConstraints().add(cc);
    cc = new ColumnConstraints();
    cc.setHgrow(Priority.SOMETIMES);
    cc.setFillWidth(true);
    bottomRow.getColumnConstraints().add(cc);
    root.setBottom(bottomRow);

    Scene scene = new Scene(root);
    scene.getStylesheets().add(AddSememePopup.class.getResource("/isaac-shared-styles.css").toString());
    setScene(scene);
}

From source file:gov.va.isaac.gui.refexViews.refexEdit.AddRefexPopup.java

private AddRefexPopup() {
    super();/*ww w .j a v a 2  s  .  c  o  m*/
    BorderPane root = new BorderPane();

    VBox topItems = new VBox();
    topItems.setFillWidth(true);

    title_ = new Label("Create new sememe instance");
    title_.getStyleClass().add("titleLabel");
    title_.setAlignment(Pos.CENTER);
    title_.prefWidthProperty().bind(topItems.widthProperty());
    topItems.getChildren().add(title_);
    VBox.setMargin(title_, new Insets(10, 10, 10, 10));

    gp_ = new GridPane();
    gp_.setHgap(10.0);
    gp_.setVgap(10.0);
    VBox.setMargin(gp_, new Insets(5, 5, 5, 5));
    topItems.getChildren().add(gp_);

    Label referencedComponent = new Label("Referenced Component");
    referencedComponent.getStyleClass().add("boldLabel");
    gp_.add(referencedComponent, 0, 0);

    unselectableComponentLabel_ = new CopyableLabel();
    unselectableComponentLabel_.setWrapText(true);
    AppContext.getService(DragRegistry.class).setupDragOnly(unselectableComponentLabel_, () -> {
        if (editRefex_ == null) {
            if (createRefexFocus_.getComponentNid() != null) {
                return createRefexFocus_.getComponentNid() + "";
            } else {
                return createRefexFocus_.getAssemblyNid() + "";
            }
        } else {
            return editRefex_.getRefex().getAssemblageNid() + "";
        }
    });
    //delay adding till we know which row

    Label assemblageConceptLabel = new Label("Assemblage Concept");
    assemblageConceptLabel.getStyleClass().add("boldLabel");
    gp_.add(assemblageConceptLabel, 0, 1);

    selectableConcept_ = new ConceptNode(null, true, refexDropDownOptions, null);

    selectableConcept_.getConceptProperty().addListener(new ChangeListener<ConceptVersionBI>() {
        @Override
        public void changed(ObservableValue<? extends ConceptVersionBI> observable, ConceptVersionBI oldValue,
                ConceptVersionBI newValue) {
            if (createRefexFocus_ != null && createRefexFocus_.getComponentNid() != null) {
                if (selectableConcept_.isValid().get()) {
                    //Its a valid concept, but is it a valid assemblage concept?
                    try {
                        assemblageInfo_ = RefexDynamicUsageDescriptionBuilder
                                .readRefexDynamicUsageDescriptionConcept(
                                        selectableConcept_.getConceptNoWait().getNid());
                        assemblageIsValid_.set(true);
                        if (assemblageInfo_.getReferencedComponentTypeRestriction() != null) {
                            String result = RefexDynamicValidatorType.COMPONENT_TYPE
                                    .passesValidatorStringReturn(
                                            new RefexDynamicNid(createRefexFocus_.getComponentNid()),
                                            new RefexDynamicString(assemblageInfo_
                                                    .getReferencedComponentTypeRestriction().name()),
                                            null); //component type validator doesn't use vc, so null is ok
                            if (result.length() > 0) {
                                selectableConcept_.isValid()
                                        .setInvalid("The selected assemblage requires the component type to be "
                                                + assemblageInfo_.getReferencedComponentTypeRestriction()
                                                        .toString()
                                                + ", which doesn't match the referenced component.");
                                logger_.info("The selected assemblage requires the component type to be "
                                        + assemblageInfo_.getReferencedComponentTypeRestriction().toString()
                                        + ", which doesn't match the referenced component.");
                                assemblageIsValid_.set(false);
                            }
                        }
                    } catch (Exception e) {
                        selectableConcept_.isValid().setInvalid(
                                "The selected concept is not properly constructed for use as an Assemblage concept");
                        logger_.info("Concept not a valid concept for a sememe assemblage", e);
                        assemblageIsValid_.set(false);
                    }
                } else {
                    assemblageInfo_ = null;
                    assemblageIsValid_.set(false);
                }
                buildDataFields(assemblageIsValid_.get(), null);
            }
        }
    });

    selectableComponent_ = new TextField();

    selectableComponentNodeValid_ = new ValidBooleanBinding() {
        {
            setComputeOnInvalidate(true);
            bind(selectableComponent_.textProperty());
            invalidate();
        }

        @Override
        protected boolean computeValue() {
            if (createRefexFocus_ != null && createRefexFocus_.getAssemblyNid() != null
                    && !conceptNodeIsConceptType_) {
                //If the assembly nid was what was set - the component node may vary - validate if we are using the text field 
                String value = selectableComponent_.getText().trim();
                if (value.length() > 0) {
                    try {
                        if (Utility.isUUID(value)) {
                            String result = RefexDynamicValidatorType.COMPONENT_TYPE
                                    .passesValidatorStringReturn(new RefexDynamicUUID(UUID.fromString(value)),
                                            new RefexDynamicString(assemblageInfo_
                                                    .getReferencedComponentTypeRestriction().name()),
                                            null); //component type validator doesn't use vc, so null is ok
                            if (result.length() > 0) {
                                setInvalidReason(result);
                                logger_.info(result);
                                return false;
                            }
                        } else if (Utility.isInt(value)) {
                            String result = RefexDynamicValidatorType.COMPONENT_TYPE
                                    .passesValidatorStringReturn(new RefexDynamicNid(Integer.parseInt(value)),
                                            new RefexDynamicString(assemblageInfo_
                                                    .getReferencedComponentTypeRestriction().name()),
                                            null); //component type validator doesn't use vc, so null is ok
                            if (result.length() > 0) {
                                setInvalidReason(result);
                                logger_.info(result);
                                return false;
                            }
                        } else {
                            setInvalidReason(
                                    "Value cannot be parsed as a component identifier.  Must be a UUID or a valid NID");
                            return false;
                        }
                    } catch (Exception e) {
                        logger_.error("Error checking component type validation", e);
                        setInvalidReason("Unexpected error validating entry");
                        return false;
                    }
                } else {
                    setInvalidReason("Component identifier is required");
                    return false;
                }
            }
            clearInvalidReason();
            return true;
        }
    };

    selectableComponentNode_ = ErrorMarkerUtils.setupErrorMarker(selectableComponent_, null,
            selectableComponentNodeValid_);

    //delay adding concept / component till we know if / where
    ColumnConstraints cc = new ColumnConstraints();
    cc.setHgrow(Priority.NEVER);
    cc.setMinWidth(FxUtils.calculateNecessaryWidthOfBoldLabel(referencedComponent));
    gp_.getColumnConstraints().add(cc);

    cc = new ColumnConstraints();
    cc.setHgrow(Priority.ALWAYS);
    gp_.getColumnConstraints().add(cc);

    Label l = new Label("Data Fields");
    l.getStyleClass().add("boldLabel");
    VBox.setMargin(l, new Insets(5, 5, 5, 5));
    topItems.getChildren().add(l);

    root.setTop(topItems);

    sp_ = new ScrollPane();
    sp_.visibleProperty().bind(assemblageIsValid_);
    sp_.setFitToHeight(true);
    sp_.setFitToWidth(true);
    root.setCenter(sp_);

    allValid_ = new UpdateableBooleanBinding() {
        {
            addBinding(assemblageIsValid_, selectableConcept_.isValid(), selectableComponentNodeValid_);
        }

        @Override
        protected boolean computeValue() {
            if (assemblageIsValid_.get() && (conceptNodeIsConceptType_ ? selectableConcept_.isValid().get()
                    : selectableComponentNodeValid_.get())) {
                boolean allDataValid = true;
                for (ReadOnlyStringProperty ssp : currentDataFieldWarnings_) {
                    if (ssp.get().length() > 0) {
                        allDataValid = false;
                        break;
                    }
                }
                if (allDataValid) {
                    clearInvalidReason();
                    return true;
                }
            }
            setInvalidReason("All errors must be corrected before save is allowed");
            return false;
        }
    };

    GridPane bottomRow = new GridPane();
    //spacer col
    bottomRow.add(new Region(), 0, 0);

    Button cancelButton = new Button("Cancel");
    cancelButton.setOnAction((action) -> {
        close();
    });
    GridPane.setMargin(cancelButton, new Insets(5, 20, 5, 0));
    GridPane.setHalignment(cancelButton, HPos.RIGHT);
    bottomRow.add(cancelButton, 1, 0);

    Button saveButton = new Button("Save");
    saveButton.disableProperty().bind(allValid_.not());
    saveButton.setOnAction((action) -> {
        doSave();
    });
    Node wrappedSave = ErrorMarkerUtils.setupDisabledInfoMarker(saveButton, allValid_.getReasonWhyInvalid());
    GridPane.setMargin(wrappedSave, new Insets(5, 0, 5, 20));
    bottomRow.add(wrappedSave, 2, 0);

    //spacer col
    bottomRow.add(new Region(), 3, 0);

    cc = new ColumnConstraints();
    cc.setHgrow(Priority.SOMETIMES);
    cc.setFillWidth(true);
    bottomRow.getColumnConstraints().add(cc);
    cc = new ColumnConstraints();
    cc.setHgrow(Priority.NEVER);
    bottomRow.getColumnConstraints().add(cc);
    cc = new ColumnConstraints();
    cc.setHgrow(Priority.NEVER);
    bottomRow.getColumnConstraints().add(cc);
    cc = new ColumnConstraints();
    cc.setHgrow(Priority.SOMETIMES);
    cc.setFillWidth(true);
    bottomRow.getColumnConstraints().add(cc);
    root.setBottom(bottomRow);

    Scene scene = new Scene(root);
    scene.getStylesheets().add(AddRefexPopup.class.getResource("/isaac-shared-styles.css").toString());
    setScene(scene);
}

From source file:UI.MainStageController.java

@FXML
/**/*w ww  .  j av  a 2  s  .  c om*/
 * runs when the optionsButton is clicked
 * opens the Options stage
 *
 */
private void optionsButtonClicked() {
    FXMLLoader fxmlLoader = new FXMLLoader();
    Parent root = null;
    try {
        fxmlLoader.setLocation(Main.class.getClassLoader().getResource("UI/optionsGui.fxml"));
        root = fxmlLoader.load();

    } catch (Exception e) {
        try {
            fxmlLoader.setLocation(
                    new URL("file:" + new File("").getCanonicalPath().concat("src/UI/optionsGui.fxml")));
            root = fxmlLoader.load();
        } catch (Exception e2) {
            System.err.println("ERROR: Couldn't find optionsGui.fxml!");
        }
    }

    this.optionsStage = new Stage();
    optionsStage.setTitle("Options");
    Scene optionsScene = new Scene(root, 1000, 700);
    optionsStage.setScene(optionsScene);
    optionsScene.getStylesheets().add(GlobalConstants.LIGHTTHEME);
    optionsStage.show();
}

From source file:UI.MainStageController.java

/**
 * Opens new PopUp Window with Image Export options.
 *///from   w  w  w.  j a va2  s. c  om
@FXML
private void exportImages() {
    try {
        FXMLLoader loader = new FXMLLoader(getClass().getResource("src/UI/exportImageGUI"));
        loader.setLocation(
                new URL("file:" + new File("").getCanonicalPath().concat("/src/UI/exportImageGUI.fxml")));
        //Parent root = loader.load();
        ExportImageController exportImageController = new ExportImageController(viewPane);
        //ExportImageController exportImageController = loader.getController();
        //exportImageController.setViewPane(viewPane);
        loader.setController(exportImageController);
        Parent root = loader.load();
        exportImagesStage = new Stage();
        exportImagesStage.setTitle("Export Image");
        Scene exportImageScene = new Scene(root, 300, 200);
        exportImagesStage.setScene(exportImageScene);
        exportImageScene.getStylesheets().add(GlobalConstants.DARKTHEME);
        exportImagesStage.show();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

From source file:net.sourceforge.entrainer.gui.EntrainerFX.java

private void layoutComponents() {
    mainPanel = new JFXPanel();

    int v = 0;//from   w  ww. j  a v a 2  s  .  c  o  m
    GridPane.setConstraints(sliderControlPane, 0, v++);
    GridPane.setMargin(sliderControlPane, new Insets(20, 0, 0, 0));
    GridPane.setConstraints(pictures, 0, v++);
    GridPane.setConstraints(animations, 0, v++);
    GridPane.setConstraints(shimmerOptions, 0, v++);
    GridPane.setConstraints(neuralizer, 0, v++);

    gp.setPadding(new Insets(5, 13, 5, 5));
    gp.getChildren().addAll(sliderControlPane, animations, shimmerOptions, pictures, neuralizer);

    hiddenSidesPane = new HiddenSidesPane();
    hiddenSidesPane.setContent(gp);
    hiddenSidesPane.setTop(soundControlPane);
    hiddenSidesPane.setTriggerDistance(25);

    final URI css = JFXUtils.getEntrainerCSS();

    JFXUtils.runLater(new Runnable() {

        @Override
        public void run() {
            group = new Group();

            shimmer.setInUse(true);
            group.getChildren().addAll(background.getPane(), shimmer, hiddenSidesPane);
            Scene scene = new Scene(group);
            if (css != null)
                scene.getStylesheets().add(css.toString());
            mainPanel.setScene(scene);
        }
    });

    getContentPane().add(mainPanel);
}

From source file:statos2_0.MainA.java

@Override
public void start(Stage primaryStage) throws Exception {
    primaryStage.setTitle(nameseller + "[" + storename + "]");
    primaryStage.show();//from w  w  w  .  j  a v a 2 s .  c om

    primaryStage.setOnCloseRequest(new EventHandler<WindowEvent>() {
        public void handle(WindowEvent we) {

            updsel(m, 1);
        }
    });
    GridPane grid = new GridPane();
    grid.setHgap(14);
    grid.setVgap(14);
    grid.setPadding(new Insets(5, 5, 5, 5));
    //System.out.println("****"+m);
    txg3.setVisible(false);
    // ,    1
    sp1.setValueFactory(spfd);
    spb1.setValueFactory(sfi);
    sp2.setValueFactory(sfi2);
    sp3.setValueFactory(sfi3);
    p1.setId("firstlab");
    p2.setId("firstlab");
    p3.setId("firstlab");
    kasnbn.setId("secondlab");
    kasvnbn.setId("secondlab");
    sumnbn.setId("secondlab");
    vyr.setId("vyr");
    sumvnbn.setId("secondlab");
    JSONParser jP5 = new JSONParser();
    JSONObject jsons5 = new JSONObject();
    List<NameValuePair> para5 = new ArrayList<NameValuePair>();

    para5.add(new BasicNameValuePair("idm", String.valueOf(m)));
    jsons5 = jP5.makeHttpRequest(url_cashgetm, "POST", para5);
    int success = jsons5.getInt("success");
    if (!jsons5.isNull("success")) {
        //res=true;
        // System.out.println("TRUE");

        double all = jsons5.getDouble("all");
        double dayall = Double.parseDouble(jsons5.get("dayall").toString());
        double daybn = Double.parseDouble(jsons5.get("daybn").toString());
        days = dayall + daybn;
        if (days <= 7999 & days > 0) {
            smvyr += (days / 100) * 3;
        } else if (days > 7999) {
            smvyr += (days / 100) * 4;
        }
        vyr.setText(":" + smvyr);
        sumnbn.setText(all + " .");
        sumvnbn.setText(dayall + " / " + daybn);
    }

    litg.setText(":");
    {//    
        sp1.setVisible(false);
        spb1.setVisible(false);
        lb1.setVisible(false);
        t1.setVisible(false);
        bt1.setVisible(false);
        lbb1.setVisible(false);
        cbx4.setVisible(false);
    }
    {//  , 
        sp2.setVisible(false);
        lb2.setVisible(false);
        t2.setVisible(false);
        bt2.setVisible(false);
    }
    {//   

        sp3.setVisible(false);
        lb3.setVisible(false);
        t3.setVisible(false);
        bt3.setVisible(false);

    }

    res.editableProperty().setValue(Boolean.FALSE);
    t1.editableProperty().setValue(Boolean.FALSE);
    t2.editableProperty().setValue(Boolean.FALSE);
    t3.editableProperty().setValue(Boolean.FALSE);
    titg.editableProperty().setValue(Boolean.FALSE);
    //cbx1.setItems(GetByTag(TAG_NAME, "1"));
    //cbx2.setItems(GetByTag(TAG_NAME, "2"));
    //cbx3.setItems(GetByTag(TAG_NAME, "3"));
    //cbx4.setItems(GetByTag(TAG_NAME, "4"));

    //cbx1.valueProperty().addListener(new );
    cbx1.setId("comboprod");
    cbx2.setId("comboprod");
    cbx3.setId("comboprod");

    txg3.setPrefSize(70, 80);

    sp1.setPrefSize(75, 80);
    sp2.setPrefSize(75, 80);
    sp3.setPrefSize(75, 80);
    spb1.setPrefSize(75, 80);
    lb1.setId("labl");
    lb2.setId("labl");
    lb3.setId("labl");
    lbb1.setId("labl");
    t1.setId("textost");
    t2.setId("textost");
    t3.setId("textost");
    bt1.setId("btitg");
    bt2.setId("btitg");
    bt3.setId("btitg");
    cbx4.setId("combbot");
    //lb1.setPrefSize(25, 40);
    //lb2.setPrefSize(25, 40);
    //lb3.setPrefSize(25, 40);

    //t1.setPrefSize(150, 40);
    //t2.setPrefSize(150, 40);
    //t3.setPrefSize(150, 40);

    //cbx4.setPrefSize(160,40);
    //bt2.setPrefSize(40, 40);
    //bt3.setPrefSize(40, 40);

    //spb1.setPrefSize(80, 40);

    //lbb1.setPrefSize(40,40);

    //bt1.setPrefSize(40, 40);

    titg.setPrefSize(120, 80);
    litg.setId("itgl");
    res.setPrefSize(300, 300);

    lb1.setText("");
    lb2.setText("");
    lb3.setText("");
    bt1.setText("+");
    bt2.setText("+");
    bt3.setText("+");
    lbb1.setText("");
    bres.setText("");
    bitg.setText("");
    bdlg.setText("");
    bbn.setText("/");
    //sp1.setValueFactory();
    grid.add(p1, 0, 0);
    grid.add(p2, 0, 1);
    grid.add(p3, 0, 2);

    grid.add(cbx1, 1, 0);
    grid.add(cbx2, 1, 1);
    grid.add(cbx3, 1, 2);

    grid.add(sp1, 2, 0);
    grid.add(sp2, 2, 1);
    grid.add(sp3, 2, 2);
    grid.add(txg3, 2, 2);
    grid.add(lb1, 3, 0);
    grid.add(lb2, 3, 1);
    grid.add(lb3, 3, 2);

    grid.add(t1, 4, 0);
    grid.add(t2, 4, 1);
    grid.add(t3, 4, 2);

    grid.add(cbx4, 5, 0);
    grid.add(bt2, 5, 1);
    grid.add(bt3, 5, 2);

    grid.add(spb1, 6, 0);
    grid.add(lbb1, 7, 0);
    grid.add(bt1, 8, 0);
    //grid.add(res, 1, 4, 3, 3);
    grid.add(res, 0, 3, 2, 3);
    litg.setAlignment(Pos.BASELINE_RIGHT);
    grid.add(litg, 2, 3);

    grid.add(titg, 3, 3, 2, 1);
    grid.add(bitg, 2, 4);
    grid.add(btcl, 4, 4);

    grid.add(kasnbn, 10, 0);
    grid.add(sumnbn, 10, 1);
    grid.add(kasvnbn, 10, 2);
    grid.add(sumvnbn, 10, 3);
    grid.add(vyr, 10, 4);
    grid.add(close, 10, 8);

    close.setOnAction(event -> {

        /**
             Dialog<Void> dialog = new Dialog<>();
        dialog.initModality(Modality.WINDOW_MODAL);
        dialog.initOwner(primaryStage);//stage here is the stage of your webview
        //dialog.initStyle(StageStyle.TRANSPARENT);
        Label loader = new Label("LOADING");
        //loader.setContentDisplay(ContentDisplay.DOWN);
        loader.setGraphic(new ProgressIndicator());
        dialog.getDialogPane().setGraphic(loader);
        DropShadow ds = new DropShadow();
        ds.setOffsetX(1.3); ds.setOffsetY(1.3); ds.setColor(Color.DARKGRAY);
        dialog.getDialogPane().setEffect(ds);
        //ButtonType btn = new ButtonType("OK",ButtonData.CANCEL_CLOSE);
                
        //dialog.getDialogPane().getButtonTypes().add(btn);
        dialog.show();  
            runJsons();
                    
            dialog.hide();
            dialog.close();
                 
           **/

        Alert alert = new Alert(AlertType.CONFIRMATION);
        alert.setTitle("");

        alert.setHeaderText(" ");
        alert.setContentText("    ?");
        ButtonType buttonTypeOne = new ButtonType("");

        ButtonType buttonTypeCancel = new ButtonType("", ButtonData.CANCEL_CLOSE);

        alert.getButtonTypes().setAll(buttonTypeOne, buttonTypeCancel);
        Optional<ButtonType> result2 = alert.showAndWait();
        if (result2.get() == buttonTypeOne) {
            updsel(m, 1);
            cashday(m);
            System.exit(0);
        }

    });
    btcl.setOnAction(event -> {
        jsares.clear();
        res.setText("");
        titg.setText("");
        itog = 0;
        chcount = 1;
        cbx1.getSelectionModel().clearSelection();
        cbx2.getSelectionModel().clearSelection();
        cbx3.getSelectionModel().clearSelection();
        cbx4.getSelectionModel().clearSelection();
        cbx4.setVisible(false);
        sp1.getValueFactory().setValue(0.0);
        sp2.getValueFactory().setValue(0);
        sp3.getValueFactory().setValue(0);
        spb1.getValueFactory().setValue(0);
        sp1.setVisible(false);
        sp2.setVisible(false);
        sp3.setVisible(false);
        spb1.setVisible(false);
        lb1.setVisible(false);
        lb2.setVisible(false);
        lb3.setVisible(false);
        lbb1.setVisible(false);
        t1.setVisible(false);
        t2.setVisible(false);
        t3.setVisible(false);
        bt1.setVisible(false);
        bt2.setVisible(false);
        bt3.setVisible(false);

    });
    bitg.setOnAction(event -> {
        Alert alert = new Alert(AlertType.CONFIRMATION);
        alert.setTitle("");
        alert.setHeaderText(" ");
        alert.setContentText("  ?");
        ButtonType buttonOK = new ButtonType("");
        ButtonType buttonCancel = new ButtonType("", ButtonData.CANCEL_CLOSE);
        alert.getButtonTypes().setAll(buttonOK, buttonCancel);
        Optional<ButtonType> result = alert.showAndWait();
        if (result.get() == buttonOK)

        {

            alert = new Alert(AlertType.CONFIRMATION);
            alert.setTitle("");

            alert.setHeaderText("  ");
            alert.setContentText("  ");
            ButtonType buttonTypeOne = new ButtonType("");
            ButtonType buttonTypeTwo = new ButtonType("");
            //ButtonType buttonTypeThree = new ButtonType("Three");
            ButtonType buttonTypeCancel = new ButtonType("", ButtonData.CANCEL_CLOSE);

            alert.getButtonTypes().setAll(buttonTypeOne, buttonTypeTwo, /*buttonTypeThree,*/ buttonTypeCancel);
            Optional<ButtonType> result2 = alert.showAndWait();
            if (result2.get() == buttonTypeOne) {
                // ... user chose "One"
                typepay = "";
                finishnal(titg.getText(), res.getText(), 1);

            } else if (result2.get() == buttonTypeTwo) {
                // ... user chose "Two"
                typepay = "";
                finishnal(titg.getText(), res.getText(), 2);
            } /*
                      
              else if (result2.get() == buttonTypeThree) {
                // ... user chose "Three"
              }*/ else {
                // ... user chose CANCEL or closed the dialog
            }

        } else {
            // ... user chose CANCEL or closed the dialog
        }
    });
    txg3.setOnMouseClicked(event -> {
        Dialog dialog = new Dialog();
        GridPane gr = new GridPane();
        gr.setHgap(3);
        gr.setVgap(5);
        gr.setPadding(new Insets(10, 10, 10, 10));
        Button b1 = new Button("1");
        b1.setPrefSize(50, 50);
        Button b2 = new Button("2");
        b2.setPrefSize(50, 50);
        Button b3 = new Button("3");
        b3.setPrefSize(50, 50);
        Button b4 = new Button("4");
        b4.setPrefSize(50, 50);
        Button b5 = new Button("5");
        b5.setPrefSize(50, 50);
        Button b6 = new Button("6");
        b6.setPrefSize(50, 50);
        Button b7 = new Button("7");
        b7.setPrefSize(50, 50);
        Button b8 = new Button("8");
        b8.setPrefSize(50, 50);
        Button b9 = new Button("9");
        b9.setPrefSize(50, 50);
        Button b0 = new Button("0");
        b0.setPrefSize(50, 50);
        Button bd = new Button(".");
        bd.setPrefSize(50, 50);
        Button bc = new Button("C");
        bc.setPrefSize(50, 50);
        Button bok = new Button("");
        bc.setPrefSize(50, 50);
        Button bno = new Button("");
        bc.setPrefSize(50, 50);
        gr.add(b1, 0, 0);
        gr.add(b2, 1, 0);
        gr.add(b3, 2, 0);
        gr.add(b4, 0, 1);
        gr.add(b5, 1, 1);
        gr.add(b6, 2, 1);
        gr.add(b7, 0, 2);
        gr.add(b8, 1, 2);
        gr.add(b9, 2, 2);
        gr.add(bd, 0, 3);
        gr.add(b0, 1, 3);
        gr.add(bc, 2, 3);
        //gr.add(bok, 0, 4);
        //gr.add(bno, 3, 4);

        b1.setOnAction(even -> {
            txg3.setText(txg3.getText() + "1");
        });
        b2.setOnAction(even -> {
            txg3.setText(txg3.getText() + "2");
        });
        b3.setOnAction(even -> {
            txg3.setText(txg3.getText() + "3");
        });
        b4.setOnAction(even -> {
            txg3.setText(txg3.getText() + "4");
        });
        b5.setOnAction(even -> {
            txg3.setText(txg3.getText() + "5");
        });
        b6.setOnAction(even -> {
            txg3.setText(txg3.getText() + "6");
        });
        b7.setOnAction(even -> {
            txg3.setText(txg3.getText() + "7");
        });
        b8.setOnAction(even -> {
            txg3.setText(txg3.getText() + "8");
        });
        b9.setOnAction(even -> {
            txg3.setText(txg3.getText() + "9");
        });
        bc.setOnAction(even -> {
            txg3.setText("");

        });
        bd.setOnAction(even -> {
            txg3.setText(txg3.getText() + ".");
        });
        b0.setOnAction(even -> {
            txg3.setText(txg3.getText() + "0");
        });

        ButtonType okk = new ButtonType("OK", ButtonData.OK_DONE);
        ButtonType no = new ButtonType("", ButtonData.CANCEL_CLOSE);
        //gr.add(okk, 0, 4);

        dialog.getDialogPane().setContent(gr);
        dialog.getDialogPane().getButtonTypes().addAll(no, okk);
        dialog.setX(350);
        dialog.setY(260);
        Optional res = dialog.showAndWait();
        runJsons();
        // dialog.setResult(ButtonData.CANCEL_CLOSE);

        //dialog.showAndWait();
    });
    txg3.lengthProperty().addListener(new ChangeListener<Number>() {
        @Override
        public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
            if (newValue.intValue() > oldValue.intValue()) {
                char ch = txg3.getText().charAt(oldValue.intValue());

                // Check if the new character is the number or other's
                if ((!(ch >= '0' && ch <= '9'))) {

                    // if it's not number then just setText to previous one
                    if (ch == '.') {
                    } else {
                        txg3.setText(txg3.getText().substring(0, txg3.getText().length() - 1));
                    }
                }
                double res;

                if (cbx3.getSelectionModel().getSelectedIndex() >= 0) {
                    res = Double.parseDouble(txg3.getText());
                    res = res / 1000;
                    //System.out.println("RES-"+res+"balanc"+balancech(cbx3.getSelectionModel().getSelectedItem().toString())+"BASE"+Double.parseDouble(getTwotag(cbx3.getSelectionModel().getSelectedItem().toString(),MT)));
                    if ((res + balancech(cbx3.getSelectionModel().getSelectedItem().toString(), 3)) > Double
                            .parseDouble(
                                    getTwotag(cbx3.getSelectionModel().getSelectedItem().toString(), 3, MT))) {
                        txg3.setText("");
                        Alert alert = new Alert(Alert.AlertType.ERROR);
                        alert.setTitle("!");
                        alert.setHeaderText("!");
                        alert.setContentText("   \n   !");
                        alert.showAndWait();
                    }
                }

            }
        }

    });
    cbx1.setOnMouseClicked(new EventHandler() {

        @Override
        public void handle(Event event) {
            spb1.getValueFactory().setValue(0);
            sp1.getValueFactory().setValue(0.0);
            runJsons();
            cbx1.setItems(GetByTag(TAG_NAME, "1"));
            //cbx1.getSelectionModel().clearSelection(); 
            int[] remove = new int[cbx1.getItems().size()];
            for (int i = 0; i < cbx1.getItems().size(); i++) {
                //System.out.println("****"+m);
                if (!isHave(cbx1.getItems().get(i).toString(), 1)) {
                    //

                } else {

                }
            }

            cbx1.show();

        }

    });

    sp1.setOnMouseClicked(event -> {
        if (cbx1.getSelectionModel().getSelectedItem() != null) {
            double spres = Double.parseDouble(sp1.getEditor().getText().toString().replace(",", "."));
            double salesres = balancech(cbx1.getSelectionModel().getSelectedItem().toString(), 1);
            double balancestore = Double
                    .parseDouble(getTwotag(cbx1.getSelectionModel().getSelectedItem().toString(), 1, MT));
            // System.out.println(balancestore+" "+spres+" "+salesres);
            if ((balancestore - (spres + salesres)) >= 0) {

            } else {
                Alert alert = new Alert(Alert.AlertType.ERROR);
                alert.setTitle("!");
                alert.setHeaderText("!");
                alert.setContentText("   \n   !");
                alert.showAndWait();
                sp1.getValueFactory().setValue(0.0);

            }
        }
    });
    sp2.setOnMouseClicked(event -> {
        if (cbx2.getSelectionModel().getSelectedIndex() >= 0) {
            double spres = Double.parseDouble(sp2.getEditor().getText().toString());
            double salesres = balancech(cbx2.getSelectionModel().getSelectedItem().toString(), 2);
            double balancestore = Double
                    .parseDouble(getTwotag(cbx2.getSelectionModel().getSelectedItem().toString(), 2, MT));
            if ((balancestore - (spres + salesres)) >= 0) {

            } else {

                Alert alert = new Alert(Alert.AlertType.ERROR);
                alert.setTitle("!");
                alert.setHeaderText("!");
                alert.setContentText("   \n   !");
                alert.showAndWait();
                sp2.getValueFactory().setValue(0);

            }
        }
    });
    spb1.setOnMouseClicked(event -> {
        if (cbx4.getSelectionModel().getSelectedIndex() >= 0) {
            double spres = Double.parseDouble(spb1.getEditor().getText().toString());
            double salesres = balancech(cbx4.getSelectionModel().getSelectedItem().toString(), 4);
            double balancestore = Double
                    .parseDouble(getTwotag(cbx4.getSelectionModel().getSelectedItem().toString(), 4, MT));
            if ((balancestore - (spres + salesres)) >= 0) {

            } else {

                Alert alert = new Alert(Alert.AlertType.ERROR);
                alert.setTitle("!");
                alert.setHeaderText("!");
                alert.setContentText("   \n   !");
                alert.showAndWait();
                spb1.getValueFactory().setValue(0);
            }
        }
    });
    sp3.setOnMouseClicked(event -> {
        if (cbx3.getSelectionModel().getSelectedIndex() >= 0) {
            double spres = Double.parseDouble(sp3.getEditor().getText().toString());
            double salesres = balancech(cbx3.getSelectionModel().getSelectedItem().toString(), 3);
            double balancestore = Double
                    .parseDouble(getTwotag(cbx3.getSelectionModel().getSelectedItem().toString(), 3, MT));
            if ((balancestore - (spres + salesres)) >= 0) {

            } else {

                Alert alert = new Alert(Alert.AlertType.ERROR);
                alert.setTitle("!");
                alert.setHeaderText("!");
                alert.setContentText("   \n   !");
                alert.showAndWait();
                sp3.getValueFactory().setValue(0);
            }
        }
    });
    cbx4.getSelectionModel().selectedItemProperty().addListener(new ChangeListener() {

        @Override
        public void changed(ObservableValue observable, Object oldValue, Object newValue) {
            if (observable.getValue() == null) {

            } else {
                if (!isHave(cbx4.getSelectionModel().getSelectedItem().toString(), 4)) {
                    Alert alert = new Alert(Alert.AlertType.ERROR);
                    alert.setTitle("!");
                    alert.setHeaderText("!");
                    alert.setContentText(
                            cbx4.getSelectionModel().getSelectedItem().toString() + "   !");
                    Optional<ButtonType> result = alert.showAndWait();
                    if (result.get() == ButtonType.OK) {
                        cbx4.getSelectionModel().clearSelection();
                    } else {
                        cbx4.getSelectionModel().clearSelection();
                    }
                } else {

                }
            }
        }
    });
    cbx1.getSelectionModel().selectedItemProperty().addListener(new ChangeListener() {

        @Override
        public void changed(ObservableValue observable, Object oldValue, Object newValue) {

            if (observable.getValue() == null) {

            } else {

                if (!isHave(cbx1.getSelectionModel().getSelectedItem().toString(), 1)) {
                    Alert alert = new Alert(Alert.AlertType.ERROR);

                    alert.setTitle("!");
                    alert.setHeaderText("!");
                    alert.setContentText(
                            cbx1.getSelectionModel().getSelectedItem().toString() + "   !");
                    Optional<ButtonType> result = alert.showAndWait();
                    if (result.get() == ButtonType.OK) {
                        sp1.setVisible(false);
                        sp1.getValueFactory().setValue(0.0);
                        lb1.setVisible(false);
                        t1.setVisible(false);
                        cbx4.setVisible(false);
                        spb1.setVisible(false);
                        spb1.getValueFactory().setValue(0);
                        lbb1.setVisible(false);
                        bt1.setVisible(false);
                        cbx1.getSelectionModel().clearSelection();
                    } else {
                        sp1.setVisible(false);
                        sp1.getValueFactory().setValue(0.0);
                        lb1.setVisible(false);
                        t1.setVisible(false);
                        cbx4.setVisible(false);
                        spb1.setVisible(false);
                        spb1.getValueFactory().setValue(0);
                        lbb1.setVisible(false);
                        bt1.setVisible(false);
                        cbx1.getSelectionModel().clearSelection();

                    }
                } else {

                    sp2.setVisible(false);
                    lb2.setVisible(false);
                    t2.setVisible(false);
                    bt2.setVisible(false);
                    sp2.getValueFactory().setValue(0);
                    cbx2.getSelectionModel().clearSelection();

                    txg3.setVisible(false);
                    sp3.setVisible(false);
                    lb3.setVisible(false);
                    t3.setVisible(false);
                    bt3.setVisible(false);
                    sp3.getValueFactory().setValue(0);
                    cbx3.getSelectionModel().clearSelection();
                    double curbal = Double.parseDouble(
                            getTwotag(cbx1.getSelectionModel().getSelectedItem().toString(), 1, MT))
                            - balancech(cbx1.getSelectionModel().getSelectedItem().toString(), 1);
                    t1.setText(ost + " " + curbal + " .");
                    cbx4.setItems(GetByTag(TAG_NAME, "4"));
                    sp1.setVisible(true);
                    lb1.setVisible(true);
                    t1.setVisible(true);
                    cbx4.setVisible(true);
                    spb1.setVisible(true);
                    lbb1.setVisible(true);
                    bt1.setVisible(true);

                    if (cbx1.getSelectionModel().getSelectedItem().toString().matches("")) {
                        sp1.setVisible(false);
                        t1.setVisible(false);
                        lb1.setVisible(false);
                    }
                }
            }
        }
    });
    bt1.setOnAction(event -> {
        if (cbx1.getSelectionModel().getSelectedItem().toString().matches("")) {

            if (spb1.getValueFactory().getValue() < 1) {
                Alert alert = new Alert(Alert.AlertType.ERROR);
                alert.setTitle("!");
                alert.setHeaderText("!");
                alert.setContentText("    !");
                alert.showAndWait();
            } else {

                double bottlprice = Double.parseDouble(
                        getTwotag(cbx4.getSelectionModel().getSelectedItem().toString(), 4, "price"));
                int bottlc = spb1.getValueFactory().getValue();
                double bottleitg = bottlc * bottlprice;

                res.setText(res.getText() + printCh2(cbx4.getSelectionModel().getSelectedItem().toString(),
                        "", bottlc, bottlprice) + "\n");

                itog = itog + bottleitg;
                titg.setText(String.valueOf(itog));
                jsores = new JSONObject();
                jsores.put(TIP, getTwotag(cbx4.getSelectionModel().getSelectedItem().toString(), 4, "id"));
                jsores.put(TCOUNT, bottlc);
                jsores.put(TRES, bottleitg);
                jsores.put(TM, m);
                jsores.put(TSELLER, selid);//   ID 
                SimpleDateFormat fff = new SimpleDateFormat("dd.MM.yyyy HH.mm");
                jsores.put(TDATE, fff.format(System.currentTimeMillis()));
                jsores.put(TAG_CHECK, checkcheck());
                jsares.add(jsores);
                sp1.setVisible(!true);
                lb1.setVisible(!true);
                t1.setVisible(!true);
                cbx4.setVisible(!true);
                spb1.setVisible(!true);
                lbb1.setVisible(!true);
                bt1.setVisible(!true);
                spb1.getValueFactory().setValue(0);
                sp1.getValueFactory().setValue(0.0);
                cbx1.getSelectionModel().clearSelection();
                cbx4.getSelectionModel().clearSelection();

            }
        } else {
            if (sp1.getValueFactory().getValue() < 0.5) {
                Alert alert = new Alert(Alert.AlertType.ERROR);
                alert.setTitle("!");
                alert.setHeaderText("!");
                alert.setContentText("    !");
                alert.showAndWait();
            } else if (cbx4.getSelectionModel().getSelectedItem() == null) {
                Alert alert = new Alert(Alert.AlertType.ERROR);
                alert.setTitle("!");
                alert.setHeaderText("!");
                alert.setContentText("    !");
                alert.showAndWait();

            } else if (spb1.getValueFactory().getValue() < 1) {
                Alert alert = new Alert(Alert.AlertType.ERROR);
                alert.setTitle("!");
                alert.setHeaderText("!");
                alert.setContentText("    !");
                alert.showAndWait();
            } /*else if(cbx4.getSelectionModel().getSelectedItem().toString().matches("")){
               Alert alert = new Alert(Alert.AlertType.ERROR);
              alert.setTitle("!");
              alert.setHeaderText("!");
              alert.setContentText("    !");
              alert.showAndWait();  
              }*/else {
                double liters = sp1.getValueFactory().getValue();
                double bottlc = spb1.getValueFactory().getValue();
                String sb = cbx4.getSelectionModel().getSelectedItem().toString();
                double bottlsz = 0;
                if (sb.contains("0.5") | sb.contains("0,5")) {
                    bottlsz = 0.5;
                } else if (sb.contains("1.0") | sb.contains("1,0")) {
                    bottlsz = 1.0;
                } else if (sb.contains("1.5") | sb.contains("1,5")) {
                    bottlsz = 1.5;
                } else if (sb.contains("2,0") | sb.contains("2.0") | sb.contains("2")) {
                    bottlsz = 2.0;
                } else if (sb.contains("3,0") | sb.contains("3.0") | sb.contains("3")) {
                    bottlsz = 3.0;
                } else if (sb.contains("")) {
                    bottlsz = 0.5;
                }

                if ((bottlsz * bottlc) == liters) {
                    double price = Double.parseDouble(
                            getTwotag(cbx1.getSelectionModel().getSelectedItem().toString(), 1, TAG_PRICE));
                    String prodn = cbx1.getSelectionModel().getSelectedItem().toString();
                    double itg = 0;
                    if (getTwotag(prodn, 1, "sales").matches("1")) {
                        if (liters % 3 == 0) {
                            price = ((liters * price) - ((liters / 3) * price)) / liters;
                            itg = liters * price;
                        } else {
                            itg = liters * price;
                        }
                    } else {
                        itg = liters * price;
                    }
                    double bottlprice = 0;
                    if (sp1.isVisible()
                            & !cbx4.getSelectionModel().getSelectedItem().toString().contains("")) {
                        bottlprice = Double.parseDouble(
                                getTwotag(cbx4.getSelectionModel().getSelectedItem().toString(), 4, "price"));
                    } else if (sp1.isVisible()
                            & cbx4.getSelectionModel().getSelectedItem().toString().contains("")) {
                        bottlprice = 0;
                    } else if (!sp1.isVisible()
                            & cbx4.getSelectionModel().getSelectedItem().toString().contains("")) {
                        bottlprice = 0;
                    }
                    res.setText(res.getText() + printCh2(cbx1.getSelectionModel().getSelectedItem().toString(),
                            "", liters, price) + "\n");
                    res.setText(res.getText() + printCh2(cbx4.getSelectionModel().getSelectedItem().toString(),
                            "", bottlc, bottlprice) + "\n");
                    itog += itg;

                    jsores = new JSONObject();
                    jsores.put(TIP, getTwotag(cbx1.getSelectionModel().getSelectedItem().toString(), 1, "id"));
                    jsores.put(TCOUNT, String.valueOf(liters));
                    jsores.put(TRES, itg);
                    jsores.put(TM, m);
                    jsores.put(TSELLER, selid);//   ID 
                    //jsores.put("balance", (balance1.get(cbx1.getSelectionModel().getSelectedIndex()) - coun));          
                    SimpleDateFormat ff = new SimpleDateFormat("dd.MM.yyyy HH.mm");
                    jsores.put(TDATE, ff.format(System.currentTimeMillis()));
                    //jsores.put("seltype","1");        
                    //jsores.put("dolgid","1");
                    jsores.put(TAG_CHECK, checkcheck());
                    jsares.add(jsores);
                    double bottleitg = bottlprice * bottlc;

                    itog = itog + bottleitg;
                    titg.setText(String.valueOf(itog));
                    jsores = new JSONObject();
                    jsores.put(TIP, getTwotag(cbx4.getSelectionModel().getSelectedItem().toString(), 4, "id"));
                    jsores.put(TCOUNT, bottlc);
                    jsores.put(TRES, bottleitg);
                    jsores.put(TM, m);
                    jsores.put(TSELLER, selid);//   ID 
                    //jsores.put("balance", (balanceb.get(cbx4.getSelectionModel().getSelectedIndex()) - counb));          
                    SimpleDateFormat fff = new SimpleDateFormat("dd.MM.yyyy HH.mm");
                    jsores.put(TDATE, fff.format(System.currentTimeMillis()));
                    //jsores.put("seltype",1);    !
                    //jsores.put("dolgid",1);
                    jsores.put(TAG_CHECK, checkcheck());
                    jsares.add(jsores);
                    //System.out.println(jsares);
                    sp1.setVisible(!true);
                    lb1.setVisible(!true);
                    t1.setVisible(!true);
                    cbx4.setVisible(!true);
                    spb1.setVisible(!true);
                    lbb1.setVisible(!true);
                    bt1.setVisible(!true);
                    spb1.getValueFactory().setValue(0);
                    sp1.getValueFactory().setValue(0.0);
                    cbx1.getSelectionModel().clearSelection();
                    cbx4.getSelectionModel().clearSelection();

                } else {
                    Alert alert = new Alert(Alert.AlertType.ERROR);
                    alert.setTitle("!");
                    alert.setHeaderText("!");
                    alert.setContentText("    !");
                    alert.showAndWait();

                }
            }
        }
    });

    cbx2.setOnMouseClicked(new EventHandler() {
        @Override
        public void handle(Event event) {
            runJsons();
            cbx2.setItems(GetByTag(TAG_NAME, "2"));
            cbx2.show();
        }
    });

    cbx2.getSelectionModel().selectedItemProperty().addListener(new ChangeListener() {

        @Override
        public void changed(ObservableValue observable, Object oldValue, Object newValue) {

            if (observable.getValue() == null) {

            } else {
                if (!isHave(cbx2.getSelectionModel().getSelectedItem().toString(), 2)) {
                    Alert alert = new Alert(Alert.AlertType.ERROR);
                    alert.setTitle("!");
                    alert.setHeaderText("!");
                    alert.setContentText(
                            cbx2.getSelectionModel().getSelectedItem().toString() + "   !");
                    Optional<ButtonType> result = alert.showAndWait();
                    if (result.get() == ButtonType.OK) {
                        sp2.setVisible(false);
                        sp2.getValueFactory().setValue(0);
                        lb2.setVisible(false);
                        t2.setVisible(false);
                        bt2.setVisible(false);
                        cbx2.getSelectionModel().clearSelection();
                    } else {
                        sp2.setVisible(false);
                        sp2.getValueFactory().setValue(0);
                        lb2.setVisible(false);
                        t2.setVisible(false);
                        bt2.setVisible(false);
                        cbx2.getSelectionModel().clearSelection();
                    }
                } else {
                    txg3.setVisible(false);
                    sp3.setVisible(!true);
                    lb3.setVisible(!true);
                    t3.setVisible(!true);
                    bt3.setVisible(!true);
                    sp3.getValueFactory().setValue(0);
                    cbx3.getSelectionModel().clearSelection();

                    cbx4.setVisible(!true);
                    sp1.setVisible(!true);
                    lb1.setVisible(!true);
                    t1.setVisible(!true);
                    spb1.setVisible(!true);
                    lbb1.setVisible(!true);
                    bt1.setVisible(!true);
                    sp1.getValueFactory().setValue(0.0);
                    spb1.getValueFactory().setValue(0);
                    cbx1.getSelectionModel().clearSelection();

                    sp2.setVisible(true);
                    lb2.setVisible(true);
                    t2.setVisible(true);
                    bt2.setVisible(true);
                    sp2.getValueFactory().setValue(0);
                    //System.out.println("////////"+newValue+"/////");
                    double curbal = Double.parseDouble(
                            getTwotag(cbx2.getSelectionModel().getSelectedItem().toString(), 2, MT))
                            - balancech(cbx2.getSelectionModel().getSelectedItem().toString(), 2);
                    t2.setText(ost + " " + curbal + " .");
                }
            }
        }
    });
    bt2.setOnAction(event -> {
        if (sp2.getValueFactory().getValue() < 1) {
            Alert alert = new Alert(Alert.AlertType.ERROR);
            alert.setTitle("!");
            alert.setHeaderText("!");
            alert.setContentText("    !");
            alert.showAndWait();
        } else {
            int coun = Integer.parseInt(sp2.getEditor().getText());
            double price = Double.parseDouble(
                    getTwotag(cbx2.getSelectionModel().getSelectedItem().toString(), 2, TAG_PRICE));
            double itg = coun * price;
            res.setText(res.getText()
                    + printCh2(cbx2.getSelectionModel().getSelectedItem().toString(), "", coun, price)
                    + "\n");
            itog = itog + itg;
            titg.setText(String.valueOf(itog));
            jsores = new JSONObject();
            jsores.put(TIP, getTwotag(cbx2.getSelectionModel().getSelectedItem().toString(), 2, TAG_ID));
            jsores.put(TCOUNT, String.valueOf(coun));
            jsores.put(TRES, itg);
            jsores.put(TM, m);
            jsores.put(TSELLER, selid);//   ID 
            //jsores.put("balance", (balance2.get(cbx2.getSelectionModel().getSelectedIndex()) - coun));
            SimpleDateFormat ff = new SimpleDateFormat("dd.MM.yyyy HH.mm");
            jsores.put(TDATE, ff.format(System.currentTimeMillis()));
            //jsores.put("seltype","1");     !!!!!!
            //jsores.put("dolgid","1");
            jsores.put(TAG_CHECK, checkcheck());
            jsares.add(jsores);
            sp2.setVisible(!true);
            lb2.setVisible(!true);
            t2.setVisible(!true);
            bt2.setVisible(!true);
            sp2.getValueFactory().setValue(0);
            cbx2.getSelectionModel().clearSelection();
        }
    });
    cbx3.setOnMouseClicked(new EventHandler() {
        @Override
        public void handle(Event event) {

            sp3.getValueFactory().setValue(0);
            runJsons();
            cbx3.setItems(GetByTag(TAG_NAME, "3"));
            cbx3.show();
        }
    });

    cbx3.getSelectionModel().selectedItemProperty().addListener(new ChangeListener() {

        @Override
        public void changed(ObservableValue observable, Object oldValue, Object newValue) {
            if (observable.getValue() == null) {

            } else {

                if (!isHave(cbx3.getSelectionModel().getSelectedItem().toString(), 3)) {
                    Alert alert = new Alert(Alert.AlertType.ERROR);
                    alert.setTitle("!");
                    alert.setHeaderText("!");
                    alert.setContentText(
                            cbx3.getSelectionModel().getSelectedItem().toString() + "   !");
                    Optional<ButtonType> result = alert.showAndWait();
                    if (result.get() == ButtonType.OK) {
                        sp3.setVisible(false);
                        sp3.getValueFactory().setValue(0);
                        lb3.setVisible(false);
                        t3.setVisible(false);
                        bt3.setVisible(false);
                        cbx3.getSelectionModel().clearSelection();
                    } else {
                        sp3.setVisible(false);
                        sp3.getValueFactory().setValue(0);
                        lb3.setVisible(false);
                        t3.setVisible(false);
                        bt3.setVisible(false);
                        cbx3.getSelectionModel().clearSelection();
                    }
                } else {
                    sp1.setVisible(!true);
                    lb1.setVisible(!true);
                    t1.setVisible(!true);
                    cbx4.setVisible(!true);
                    spb1.setVisible(!true);
                    lbb1.setVisible(!true);
                    bt1.setVisible(!true);
                    //spb1.getEditor().setText("0");
                    //sp1.getEditor().setText("0");
                    cbx1.getSelectionModel().clearSelection();

                    sp2.setVisible(!true);
                    lb2.setVisible(!true);
                    t2.setVisible(!true);
                    bt2.setVisible(!true);
                    sp2.getValueFactory().setValue(0);
                    cbx2.getSelectionModel().clearSelection();

                    sp3.setVisible(true);
                    lb3.setVisible(true);
                    t3.setVisible(true);
                    bt3.setVisible(true);
                    sp3.getValueFactory().setValue(0);
                    if (getTwotag(cbx3.getSelectionModel().getSelectedItem().toString(), 3, TAG_ZT)
                            .equals("2")) {

                        double curbal = Double.parseDouble(
                                getTwotag(cbx3.getSelectionModel().getSelectedItem().toString(), 3, MT))
                                - (balancech(cbx3.getSelectionModel().getSelectedItem().toString(), 3));
                        String pattern = "##0.00";
                        DecimalFormat decimalFormat = new DecimalFormat(pattern);
                        String format = decimalFormat.format(curbal);

                        t3.setText(ost + " " + format + " .");
                        lb3.setText("");

                        sp3.setVisible(false);
                        txg3.setVisible(true);
                        txg3.setText("");

                    } else {
                        double curbal = Double.parseDouble(
                                getTwotag(cbx3.getSelectionModel().getSelectedItem().toString(), 3, MT))
                                - balancech(cbx3.getSelectionModel().getSelectedItem().toString(), 3);
                        t3.setText(ost + " " + curbal + " .");
                        lb3.setText("");
                        txg3.setVisible(false);
                        sp3.setVisible(true);
                    }
                }
            }
        }
    });

    bt3.setOnAction(event -> {
        int typez = Integer.parseInt(getTwotag(cbx3.getSelectionModel().getSelectedItem().toString(), 3, "zt"));

        if (sp3.isVisible() & sp3.getValueFactory().getValue() < 1) {

            Alert alert = new Alert(Alert.AlertType.ERROR);
            alert.setTitle("!");
            alert.setHeaderText("!");
            alert.setContentText("    !");
            alert.showAndWait();
        } else if (txg3.isVisible() & txg3.getText().equals("")) {

            Alert alert = new Alert(Alert.AlertType.ERROR);
            alert.setTitle("!");
            alert.setHeaderText("!!");
            alert.setContentText("    !");
            alert.showAndWait();

        } else {

            double coun = 0;
            double price = Double.parseDouble(
                    getTwotag(cbx3.getSelectionModel().getSelectedItem().toString(), 3, TAG_PRICE));
            double itg = 0;
            double itgcoun = 0;
            if (lb3.getText().equals("")) {
                //System.out.println(lb3.getText());
                coun = sp3.getValueFactory().getValue();
                itg = coun * price;
                itgcoun = coun;
                // System.out.println("SPINNER" + coun);
                res.setText(res.getText()
                        + printCh2(cbx3.getSelectionModel().getSelectedItem().toString(), "", coun, price)
                        + "\n");

            } else if (lb3.getText().equals("")) {
                // System.out.println(lb3.getText());
                coun = Double.parseDouble(txg3.getText());

                itg = ((price * coun) / 100);
                // System.out.println("!!!???!!!"+coun+"   "+price);
                res.setText(res.getText()
                        + printCh3(cbx3.getSelectionModel().getSelectedItem().toString(), "", coun, price)
                        + "\n");
                itgcoun = (double) coun / 1000;
                //System.out.println("TEXT" + coun+"  "+itgcoun);

            }
            String pattern = "##0.0";
            DecimalFormat decimalFormat = new DecimalFormat(pattern);
            String format = decimalFormat.format(itg);
            itog = itog + itg;
            titg.setText(String.valueOf(itog));
            jsores = new JSONObject();
            jsores.put(TIP, getTwotag(cbx3.getSelectionModel().getSelectedItem().toString(), 3, TAG_ID));
            jsores.put(TCOUNT, Double.parseDouble(String.valueOf(itgcoun)));
            jsores.put(TRES, itg);
            jsores.put(TM, m);
            jsores.put(TSELLER, selid);//   ID 
            //jsores.put("balance", (balance3.get(cbx3.getSelectionModel().getSelectedIndex()) - coun));
            SimpleDateFormat ff = new SimpleDateFormat("dd.MM.yyyy HH.mm");
            jsores.put(TDATE, ff.format(System.currentTimeMillis()));
            //jsores.put("seltype","1");   !!!!!
            //jsores.put("dolgid","1");
            jsores.put(TAG_CHECK, checkcheck());
            //System.out.println(jsores);
            jsares.add(jsores);
            sp3.setVisible(!true);
            lb3.setVisible(!true);
            t3.setVisible(!true);
            bt3.setVisible(!true);
            sp3.getValueFactory().setValue(0);
            cbx3.getSelectionModel().clearSelection();
            txg3.setVisible(false);
            // }
        }
    });
    Dimension sSize = Toolkit.getDefaultToolkit().getScreenSize();
    Scene scene = new Scene(grid, sSize.width, sSize.height);
    primaryStage.setScene(scene);
    scene.getStylesheets().add(MainA.class.getResource("main.css").toExternalForm());
    primaryStage.show();

}

From source file:snpviewer.SnpViewer.java

public void showAbout(ActionEvent ev) {
    try {/*from w w w.j  av  a 2 s .com*/
        FXMLLoader loader = new FXMLLoader(getClass().getResource("about.fxml"));
        Pane page = (Pane) loader.load();
        Scene scene = new Scene(page);
        Stage stage = new Stage();
        stage.setScene(scene);
        scene.getStylesheets().add(SnpViewer.class.getResource("SnpViewerStyleSheet.css").toExternalForm());
        AboutController controller = loader.getController();
        controller.setVersion(VERSION);
        stage.initModality(Modality.APPLICATION_MODAL);
        stage.getIcons().add(new Image(this.getClass().getResourceAsStream("icon.png")));
        stage.setTitle("About SnpViewer");

        stage.show();
    } catch (Exception ex) {
        Dialogs.showErrorDialog(null, "Error showing about information - see" + " details for stack trace",
                "ERROR!", "SnpViewer", ex);
    }
}

From source file:snpviewer.SnpViewer.java

@Override
public void start(final Stage primaryStage) {
    try {/*from w  w  w  .  ja v a2 s.  co m*/
        //FXMLLoader loader = new FXMLLoader(SnpViewer.class.getResource("SnpView.fxml"));
        AnchorPane page = (AnchorPane) FXMLLoader.load(SnpViewer.class.getResource("SnpView.fxml"));

        Scene scene = new Scene(page);
        primaryStage.setScene(scene);
        primaryStage.setTitle("SNP Viewer");
        scene.getStylesheets().add(SnpViewer.class.getResource("SnpViewerStyleSheet.css").toExternalForm());
        primaryStage.show();
        primaryStage.getIcons().add(new Image(this.getClass().getResourceAsStream("icon.png")));

        /*primaryStage.setOnCloseRequest(new EventHandler<WindowEvent>() {
        @Override
        public void handle(WindowEvent event) {
            try{
                DialogResponse response = Dialogs.showConfirmDialog(primaryStage,
                           "Any unsaved changes will be lost",
                           "Really quit?", "SNP View", DialogOptions.OK_CANCEL);
                if (DialogResponse.OK.equals(response)){
                    stop();
                }else {
                    event.consume();
                }
            }catch (Exception ex) {
                Logger.getLogger(SnpViewer.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
        });*/
    } catch (Exception ex) {
        Logger.getLogger(SnpViewer.class.getName()).log(Level.SEVERE, null, ex);
    }
}

From source file:snpviewer.SnpViewer.java

public void removeSamples(ActionEvent event) {
    FXMLLoader loader = new FXMLLoader(getClass().getResource("RemoveSamplesInterface.fxml"));
    try {/*from  ww w .j  a  v  a2  s  .  co  m*/
        Pane pane = (Pane) loader.load();
        RemoveSamplesInterfaceController removeController = (RemoveSamplesInterfaceController) loader
                .getController();
        Scene scene = new Scene(pane);
        Stage stage = new Stage();
        stage.setScene(scene);
        scene.getStylesheets().add(SnpViewer.class.getResource("SnpViewerStyleSheet.css").toExternalForm());
        stage.getIcons().add(new Image(this.getClass().getResourceAsStream("icon.png")));
        stage.setTitle("Remove Samples");
        removeController.setSamples(affObserve, unObserve);
        stage.initModality(Modality.APPLICATION_MODAL);
        stage.showAndWait();
        List<Integer> indicesToRemove = removeController.getSamplesToRemove();
        //System.out.println(indicesToRemove.toString());
        if (indicesToRemove.isEmpty()) {
            return;
        }
        ArrayList<Integer> affsToRemove = new ArrayList<>();
        ArrayList<Integer> unsToRemove = new ArrayList<>();
        for (Integer r : indicesToRemove) {
            if (r < affObserve.size()) {//index corresponds to affFiles
                affsToRemove.add(r);
            } else {//index corresponds to unFiles
                r -= affObserve.size();
                unsToRemove.add(r);
            }
        }
        ArrayList<File> dirsToDelete = new ArrayList<>();
        if (!affsToRemove.isEmpty()) {
            Collections.sort(affsToRemove, Collections.reverseOrder());
            for (int i : affsToRemove) {
                dirsToDelete.add(affObserve.get(i).getOutputDirectory());
                affObserve.remove(i);
            }
        }
        if (!unsToRemove.isEmpty()) {
            Collections.sort(unsToRemove, Collections.reverseOrder());
            for (int i : unsToRemove) {
                dirsToDelete.add(unObserve.get(i).getOutputDirectory());
                unObserve.remove(i);
            }
        }
        if (affObserve.isEmpty() && unObserve.isEmpty()) {
            resetView();
        } else {
            refreshView(null, false);
        }
        saveProject();
        for (File dir : dirsToDelete) {
            FileUtils.deleteDirectory(dir);
        }
    } catch (Exception ex) {
        Dialogs.showErrorDialog(null,
                "Sample removal failed - please see " + "details for stack trace and report this error.",
                "Remove Samples Failed!", "SnpViewer", ex);
    }
}

From source file:snpviewer.SnpViewer.java

public void showSavedRegionsTable() {
    if (savedRegions.size() > 0) {
        FXMLLoader tableLoader = new FXMLLoader(getClass().getResource("MultiRegionReporter.fxml"));
        try {/*from ww  w . java  2  s .  c om*/
            Pane tablePane = (Pane) tableLoader.load();
            MultiRegionReporterController multiReg = (MultiRegionReporterController) tableLoader
                    .getController();
            Scene tableScene = new Scene(tablePane);
            Stage tableStage = new Stage();
            tableStage.setScene(tableScene);
            tableScene.getStylesheets()
                    .add(SnpViewer.class.getResource("SnpViewerStyleSheet.css").toExternalForm());
            tableStage.getIcons().add(new Image(this.getClass().getResourceAsStream("icon.png")));
            multiReg.displayData(savedRegions);
            tableStage.setTitle("Saved Regions");
            tableStage.initModality(Modality.NONE);

            tableStage.show();
        } catch (Exception ex) {
            Dialogs.showErrorDialog(null, "Error displaying" + " Saved Regions - see Details for stack trace.",
                    "Saved Regions Display Error!", "SnpViewer", ex);
        }
    } else {
        Dialogs.showInformationDialog(null, "No regions " + "found.", "Saved Regions", "SnpViewer");
    }
}