Search in sources :

Example 86 with TableColumn

use of javafx.scene.control.TableColumn in project org.csstudio.display.builder by kasemir.

the class ColorMapDialog method createContent.

private Node createContent() {
    // Table for selecting a predefined color map
    predefined_table = new TableView<>();
    final TableColumn<PredefinedColorMaps.Predefined, String> name_column = new TableColumn<>(Messages.ColorMapDialog_PredefinedMap);
    name_column.setCellValueFactory(param -> new SimpleStringProperty(param.getValue().getDescription()));
    predefined_table.getColumns().add(name_column);
    predefined_table.getItems().addAll(PredefinedColorMaps.PREDEFINED);
    predefined_table.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);
    // Table for viewing/editing color sections
    sections_table = new TableView<>();
    // Value of color section
    final TableColumn<ColorSection, String> value_column = new TableColumn<>(Messages.ColorMapDialog_Value);
    value_column.setCellValueFactory(param -> new SimpleStringProperty(Integer.toString(param.getValue().value)));
    value_column.setCellFactory(TextFieldTableCell.forTableColumn());
    value_column.setOnEditCommit(event -> {
        final int index = event.getTablePosition().getRow();
        try {
            final int value = Math.max(0, Math.min(255, Integer.parseInt(event.getNewValue().trim())));
            color_sections.set(index, new ColorSection(value, color_sections.get(index).color));
            color_sections.sort((sec1, sec2) -> sec1.value - sec2.value);
            updateMapFromSections();
        } catch (NumberFormatException ex) {
        // Ignore, field will reset to original value
        }
    });
    // Color of color section
    final TableColumn<ColorSection, ColorPicker> color_column = new TableColumn<>(Messages.ColorMapDialog_Color);
    color_column.setCellValueFactory(param -> {
        final ColorSection segment = param.getValue();
        return new SimpleObjectProperty<ColorPicker>(createColorPicker(segment));
    });
    color_column.setCellFactory(column -> new ColorTableCell());
    sections_table.getColumns().add(value_column);
    sections_table.getColumns().add(color_column);
    sections_table.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);
    sections_table.setItems(color_sections);
    sections_table.setEditable(true);
    add = new Button(Messages.ColorMapDialog_Add, JFXUtil.getIcon("add.png"));
    add.setMaxWidth(Double.MAX_VALUE);
    remove = new Button(Messages.ColorMapDialog_Remove, JFXUtil.getIcon("delete.png"));
    remove.setMaxWidth(Double.MAX_VALUE);
    final VBox buttons = new VBox(10, add, remove);
    // Upper section with tables
    final HBox tables_and_buttons = new HBox(10, predefined_table, sections_table, buttons);
    HBox.setHgrow(predefined_table, Priority.ALWAYS);
    HBox.setHgrow(sections_table, Priority.ALWAYS);
    // Lower section with resulting color map
    final Region fill1 = new Region(), fill2 = new Region(), fill3 = new Region();
    HBox.setHgrow(fill1, Priority.ALWAYS);
    HBox.setHgrow(fill2, Priority.ALWAYS);
    HBox.setHgrow(fill3, Priority.ALWAYS);
    final HBox color_title = new HBox(fill1, new Label(Messages.ColorMapDialog_Result), fill2);
    color_bar = new Region();
    color_bar.setMinHeight(COLOR_BAR_HEIGHT);
    color_bar.setMaxHeight(COLOR_BAR_HEIGHT);
    color_bar.setPrefHeight(COLOR_BAR_HEIGHT);
    final HBox color_legend = new HBox(new Label("0"), fill3, new Label("255"));
    final VBox box = new VBox(10, tables_and_buttons, new Separator(), color_title, color_bar, color_legend);
    VBox.setVgrow(tables_and_buttons, Priority.ALWAYS);
    return box;
}
Also used : HBox(javafx.scene.layout.HBox) ColorPicker(javafx.scene.control.ColorPicker) Label(javafx.scene.control.Label) SimpleStringProperty(javafx.beans.property.SimpleStringProperty) TableColumn(javafx.scene.control.TableColumn) SimpleObjectProperty(javafx.beans.property.SimpleObjectProperty) Button(javafx.scene.control.Button) Region(javafx.scene.layout.Region) VBox(javafx.scene.layout.VBox) Separator(javafx.scene.control.Separator)

Example 87 with TableColumn

use of javafx.scene.control.TableColumn in project org.csstudio.display.builder by kasemir.

the class ScriptsDialog method createPVsTable.

/**
 * @return Node for UI elements that edit the PVs of a script
 */
private Region createPVsTable() {
    final TableColumn<PVTableItem, Integer> indexColumn = new TableColumn<>("#");
    indexColumn.setEditable(false);
    indexColumn.setSortable(false);
    indexColumn.setCellFactory(new LineNumberTableCellFactory<>(true));
    indexColumn.setMaxWidth(26);
    indexColumn.setMinWidth(26);
    // Create table with editable 'name' column
    pvs_name_col = new TableColumn<>(Messages.ScriptsDialog_ColPV);
    pvs_name_col.setSortable(false);
    pvs_name_col.setCellValueFactory(new PropertyValueFactory<PVTableItem, String>("name"));
    pvs_name_col.setCellFactory((col) -> new AutoCompletedTableCell(menu, btn_pv_add));
    pvs_name_col.setOnEditCommit(event -> {
        final int row = event.getTablePosition().getRow();
        pv_items.get(row).nameProperty().set(event.getNewValue());
        fixupPVs(row);
    });
    pvs_trigger_col = new TableColumn<>(Messages.ScriptsDialog_ColTrigger);
    pvs_trigger_col.setSortable(false);
    pvs_trigger_col.setCellValueFactory(new PropertyValueFactory<PVTableItem, Boolean>("trigger"));
    pvs_trigger_col.setCellFactory(CheckBoxTableCell.<PVTableItem>forTableColumn(pvs_trigger_col));
    pvs_trigger_col.setResizable(false);
    pvs_trigger_col.setMaxWidth(70);
    pvs_trigger_col.setMinWidth(70);
    // Table column for 'trigger' uses CheckBoxTableCell that directly modifies the Observable Property
    pvs_table = new TableView<>(pv_items);
    pvs_table.getColumns().add(indexColumn);
    pvs_table.getColumns().add(pvs_name_col);
    pvs_table.getColumns().add(pvs_trigger_col);
    pvs_table.setEditable(true);
    pvs_table.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);
    pvs_table.setTooltip(new Tooltip(Messages.ScriptsDialog_PVsTT));
    pvs_table.setPlaceholder(new Label(Messages.ScriptsDialog_NoPVs));
    // Buttons
    btn_pv_add = new Button(Messages.Add, JFXUtil.getIcon("add.png"));
    btn_pv_add.setMaxWidth(Double.MAX_VALUE);
    btn_pv_add.setAlignment(Pos.CENTER_LEFT);
    btn_pv_add.setOnAction(event -> {
        final PVTableItem newItem = new PVTableItem("new-PV", true);
        pv_items.add(newItem);
        pvs_table.getSelectionModel().select(newItem);
        final int newRow = pvs_table.getSelectionModel().getSelectedIndex();
        ModelThreadPool.getTimer().schedule(() -> {
            Platform.runLater(() -> pvs_table.edit(newRow, pvs_name_col));
        }, 123, TimeUnit.MILLISECONDS);
    });
    btn_pv_remove = new Button(Messages.Remove, JFXUtil.getIcon("delete.png"));
    btn_pv_remove.setMaxWidth(Double.MAX_VALUE);
    btn_pv_remove.setMinWidth(96);
    btn_pv_remove.setAlignment(Pos.CENTER_LEFT);
    btn_pv_remove.setDisable(true);
    btn_pv_remove.setOnAction(event -> {
        final int sel = pvs_table.getSelectionModel().getSelectedIndex();
        if (sel >= 0) {
            pv_items.remove(sel);
            fixupPVs(sel);
        }
    });
    btn_pv_up = new Button(Messages.MoveUp, JFXUtil.getIcon("up.png"));
    btn_pv_up.setMaxWidth(Double.MAX_VALUE);
    btn_pv_up.setAlignment(Pos.CENTER_LEFT);
    btn_pv_up.setDisable(true);
    btn_pv_up.setOnAction(event -> TableHelper.move_item_up(pvs_table, pv_items));
    btn_py_down = new Button(Messages.MoveDown, JFXUtil.getIcon("down.png"));
    btn_py_down.setMaxWidth(Double.MAX_VALUE);
    btn_py_down.setAlignment(Pos.CENTER_LEFT);
    btn_py_down.setDisable(true);
    btn_py_down.setOnAction(event -> TableHelper.move_item_down(pvs_table, pv_items));
    btn_check_connections = new CheckBox(Messages.ScriptsDialog_CheckConnections);
    btn_check_connections.setSelected(true);
    btn_check_connections.setOnAction(event -> {
        selected_script_item.check_connections = btn_check_connections.isSelected();
    });
    final VBox buttons = new VBox(10, btn_pv_add, btn_pv_remove, btn_pv_up, btn_py_down);
    final HBox pvs_buttons = new HBox(10, pvs_table, buttons);
    HBox.setHgrow(pvs_table, Priority.ALWAYS);
    HBox.setHgrow(buttons, Priority.NEVER);
    final VBox content = new VBox(10, pvs_buttons, btn_check_connections);
    VBox.setVgrow(pvs_buttons, Priority.ALWAYS);
    content.setDisable(true);
    return content;
}
Also used : HBox(javafx.scene.layout.HBox) AutoCompletedTableCell(org.csstudio.display.builder.representation.javafx.PVTableItem.AutoCompletedTableCell) Tooltip(javafx.scene.control.Tooltip) Label(javafx.scene.control.Label) TableColumn(javafx.scene.control.TableColumn) Button(javafx.scene.control.Button) MenuButton(javafx.scene.control.MenuButton) SplitMenuButton(javafx.scene.control.SplitMenuButton) CheckBox(javafx.scene.control.CheckBox) VBox(javafx.scene.layout.VBox)

Example 88 with TableColumn

use of javafx.scene.control.TableColumn in project org.csstudio.display.builder by kasemir.

the class ScriptsDialog method createScriptsTable.

/**
 * @return Node for UI elements that edit the scripts
 */
private Region createScriptsTable() {
    scripts_icon_col = new TableColumn<>();
    scripts_icon_col.setCellValueFactory(cdf -> new SimpleObjectProperty<ImageView>(getScriptImage(cdf.getValue())) {

        {
            bind(Bindings.createObjectBinding(() -> getScriptImage(cdf.getValue()), cdf.getValue().fileProperty()));
        }
    });
    scripts_icon_col.setCellFactory(col -> new TableCell<ScriptItem, ImageView>() {

        /* Instance initializer. */
        {
            setAlignment(Pos.CENTER_LEFT);
        }

        @Override
        protected void updateItem(final ImageView item, final boolean empty) {
            super.updateItem(item, empty);
            super.setGraphic(item);
        }
    });
    scripts_icon_col.setEditable(false);
    scripts_icon_col.setSortable(false);
    scripts_icon_col.setMaxWidth(25);
    scripts_icon_col.setMinWidth(25);
    // Create table with editable script 'file' column
    scripts_name_col = new TableColumn<>(Messages.ScriptsDialog_ColScript);
    scripts_name_col.setCellValueFactory(new PropertyValueFactory<ScriptItem, String>("file"));
    scripts_name_col.setCellFactory(col -> new TextFieldTableCell<ScriptItem, String>(new DefaultStringConverter()) {

        private final ChangeListener<? super Boolean> focusedListener = (ob, o, n) -> {
            if (!n)
                cancelEdit();
        };

        @Override
        public void cancelEdit() {
            ((TextField) getGraphic()).focusedProperty().removeListener(focusedListener);
            super.cancelEdit();
        }

        @Override
        public void startEdit() {
            super.startEdit();
            ((TextField) getGraphic()).focusedProperty().addListener(focusedListener);
        }

        @Override
        public void commitEdit(final String newValue) {
            ((TextField) getGraphic()).focusedProperty().removeListener(focusedListener);
            super.commitEdit(newValue);
            Platform.runLater(() -> btn_pv_add.requestFocus());
        }
    });
    scripts_name_col.setOnEditCommit(event -> {
        final int row = event.getTablePosition().getRow();
        script_items.get(row).file.set(event.getNewValue());
        fixupScripts(row);
    });
    scripts_table = new TableView<>(script_items);
    scripts_table.getColumns().add(scripts_icon_col);
    scripts_table.getColumns().add(scripts_name_col);
    scripts_table.setEditable(true);
    scripts_table.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);
    scripts_table.setTooltip(new Tooltip(Messages.ScriptsDialog_ScriptsTT));
    scripts_table.setPlaceholder(new Label(Messages.ScriptsDialog_NoScripts));
    // Buttons
    addMenuButton = new MenuButton(Messages.Add, JFXUtil.getIcon("add.png"), new MenuItem(Messages.AddPythonFile, JFXUtil.getIcon("file-python.png")) {

        {
            setOnAction(e -> addPythonFile());
        }
    }, new MenuItem(Messages.AddJavaScriptFile, JFXUtil.getIcon("file-javascript.png")) {

        {
            setOnAction(e -> addJavaScriptFile());
        }
    }, new SeparatorMenuItem(), new MenuItem(Messages.AddEmbeddedPython, JFXUtil.getIcon("python.png")) {

        {
            setOnAction(e -> addEmbeddedJython());
        }
    }, new MenuItem(Messages.AddEmbeddedJavaScript, JFXUtil.getIcon("javascript.png")) {

        {
            setOnAction(e -> addEmbeddedJavaScript());
        }
    });
    addMenuButton.setMaxWidth(Double.MAX_VALUE);
    addMenuButton.setAlignment(Pos.CENTER_LEFT);
    btn_script_remove = new Button(Messages.Remove, JFXUtil.getIcon("delete.png"));
    btn_script_remove.setMaxWidth(Double.MAX_VALUE);
    btn_script_remove.setAlignment(Pos.CENTER_LEFT);
    btn_script_remove.setDisable(true);
    btn_script_remove.setOnAction(event -> {
        final int sel = scripts_table.getSelectionModel().getSelectedIndex();
        if (sel >= 0) {
            script_items.remove(sel);
            fixupScripts(sel);
        }
    });
    btn_edit = new SplitMenuButton(convertToFileMenuItem, new SeparatorMenuItem(), convertToEmbeddedPythonMenuItem, convertToEmbeddedJavaScriptMenuItem);
    btn_edit.setText(Messages.Select);
    btn_edit.setGraphic(JFXUtil.getIcon("select-file.png"));
    btn_edit.setMaxWidth(Double.MAX_VALUE);
    btn_edit.setMinWidth(120);
    btn_edit.setAlignment(Pos.CENTER_LEFT);
    btn_edit.setDisable(true);
    btn_edit.setOnAction(e -> editOrSelect());
    final VBox buttons = new VBox(10, addMenuButton, btn_script_remove, btn_edit);
    final HBox content = new HBox(10, scripts_table, buttons);
    HBox.setHgrow(scripts_table, Priority.ALWAYS);
    HBox.setHgrow(buttons, Priority.NEVER);
    return content;
}
Also used : Button(javafx.scene.control.Button) Pos(javafx.geometry.Pos) ScriptPV(org.csstudio.display.builder.model.properties.ScriptPV) LineNumberTableCellFactory(org.csstudio.javafx.LineNumberTableCellFactory) VBox(javafx.scene.layout.VBox) AutoCompletedTableCell(org.csstudio.display.builder.representation.javafx.PVTableItem.AutoCompletedTableCell) TableHelper(org.csstudio.javafx.TableHelper) ListChangeListener(javafx.collections.ListChangeListener) TableView(javafx.scene.control.TableView) ModelThreadPool(org.csstudio.display.builder.model.util.ModelThreadPool) HBox(javafx.scene.layout.HBox) SplitPane(javafx.scene.control.SplitPane) TextField(javafx.scene.control.TextField) MenuItem(javafx.scene.control.MenuItem) Language(org.csstudio.javafx.SyntaxHighlightedMultiLineInputDialog.Language) PropertyValueFactory(javafx.scene.control.cell.PropertyValueFactory) Collectors(java.util.stream.Collectors) Platform(javafx.application.Platform) SeparatorMenuItem(javafx.scene.control.SeparatorMenuItem) Priority(javafx.scene.layout.Priority) List(java.util.List) Region(javafx.scene.layout.Region) CheckBoxTableCell(javafx.scene.control.cell.CheckBoxTableCell) MenuButton(javafx.scene.control.MenuButton) ObservableList(javafx.collections.ObservableList) DefaultStringConverter(javafx.util.converter.DefaultStringConverter) StringProperty(javafx.beans.property.StringProperty) TableViewSelectionModel(javafx.scene.control.TableView.TableViewSelectionModel) SyntaxHighlightedMultiLineInputDialog(org.csstudio.javafx.SyntaxHighlightedMultiLineInputDialog) SimpleStringProperty(javafx.beans.property.SimpleStringProperty) ButtonType(javafx.scene.control.ButtonType) JFXBaseRepresentation(org.csstudio.display.builder.representation.javafx.widgets.JFXBaseRepresentation) FXCollections(javafx.collections.FXCollections) BackingStoreException(java.util.prefs.BackingStoreException) TextFieldTableCell(javafx.scene.control.cell.TextFieldTableCell) Bindings(javafx.beans.binding.Bindings) ArrayList(java.util.ArrayList) Level(java.util.logging.Level) TableColumn(javafx.scene.control.TableColumn) TableCell(javafx.scene.control.TableCell) Insets(javafx.geometry.Insets) Tooltip(javafx.scene.control.Tooltip) ScriptInfo(org.csstudio.display.builder.model.properties.ScriptInfo) Dialog(javafx.scene.control.Dialog) Label(javafx.scene.control.Label) SplitMenuButton(javafx.scene.control.SplitMenuButton) Node(javafx.scene.Node) CheckBox(javafx.scene.control.CheckBox) Preferences(java.util.prefs.Preferences) ToolkitRepresentation.logger(org.csstudio.display.builder.representation.ToolkitRepresentation.logger) TimeUnit(java.util.concurrent.TimeUnit) SimpleObjectProperty(javafx.beans.property.SimpleObjectProperty) ImageView(javafx.scene.image.ImageView) DialogHelper(org.csstudio.javafx.DialogHelper) Widget(org.csstudio.display.builder.model.Widget) ChangeListener(javafx.beans.value.ChangeListener) HBox(javafx.scene.layout.HBox) SplitMenuButton(javafx.scene.control.SplitMenuButton) Label(javafx.scene.control.Label) MenuButton(javafx.scene.control.MenuButton) SplitMenuButton(javafx.scene.control.SplitMenuButton) Button(javafx.scene.control.Button) MenuButton(javafx.scene.control.MenuButton) SplitMenuButton(javafx.scene.control.SplitMenuButton) TextField(javafx.scene.control.TextField) ImageView(javafx.scene.image.ImageView) Tooltip(javafx.scene.control.Tooltip) MenuItem(javafx.scene.control.MenuItem) SeparatorMenuItem(javafx.scene.control.SeparatorMenuItem) SeparatorMenuItem(javafx.scene.control.SeparatorMenuItem) DefaultStringConverter(javafx.util.converter.DefaultStringConverter) VBox(javafx.scene.layout.VBox)

Example 89 with TableColumn

use of javafx.scene.control.TableColumn in project org.csstudio.display.builder by kasemir.

the class WidgetInfoDialog method createMacros.

private Tab createMacros(Macros orig_macros) {
    final Macros macros = (orig_macros == null) ? new Macros() : orig_macros;
    // Use text field to allow copying the name and value
    // Table uses list of macro names as input
    // Name column just displays the macro name,..
    final TableColumn<String, String> name = new TableColumn<>(Messages.WidgetInfoDialog_Name);
    name.setCellFactory(TextFieldTableCell.forTableColumn());
    name.setCellValueFactory(param -> new ReadOnlyStringWrapper(param.getValue()));
    // .. value column fetches the macro value
    final TableColumn<String, String> value = new TableColumn<>(Messages.WidgetInfoDialog_Value);
    value.setCellFactory(TextFieldTableCell.forTableColumn());
    value.setCellValueFactory(param -> new ReadOnlyStringWrapper(macros.getValue(param.getValue())));
    final TableView<String> table = new TableView<>(FXCollections.observableArrayList(macros.getNames()));
    table.getColumns().add(name);
    table.getColumns().add(value);
    table.setEditable(true);
    table.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);
    return new Tab(Messages.WidgetInfoDialog_TabMacros, table);
}
Also used : Tab(javafx.scene.control.Tab) ReadOnlyStringWrapper(javafx.beans.property.ReadOnlyStringWrapper) Macros(org.csstudio.display.builder.model.macros.Macros) TableColumn(javafx.scene.control.TableColumn) TableView(javafx.scene.control.TableView)

Example 90 with TableColumn

use of javafx.scene.control.TableColumn in project bisq-desktop by bisq-network.

the class TraderDisputeView method getSelectColumn.

// /////////////////////////////////////////////////////////////////////////////////////////
// Table
// /////////////////////////////////////////////////////////////////////////////////////////
private TableColumn<Dispute, Dispute> getSelectColumn() {
    TableColumn<Dispute, Dispute> column = new AutoTooltipTableColumn<Dispute, Dispute>(Res.get("shared.select"));
    column.setMinWidth(80);
    column.setMaxWidth(80);
    column.setSortable(false);
    column.setCellValueFactory((addressListItem) -> new ReadOnlyObjectWrapper<>(addressListItem.getValue()));
    column.setCellFactory(new Callback<TableColumn<Dispute, Dispute>, TableCell<Dispute, Dispute>>() {

        @Override
        public TableCell<Dispute, Dispute> call(TableColumn<Dispute, Dispute> column) {
            return new TableCell<Dispute, Dispute>() {

                Button button;

                @Override
                public void updateItem(final Dispute item, boolean empty) {
                    super.updateItem(item, empty);
                    if (item != null && !empty) {
                        if (button == null) {
                            button = new AutoTooltipButton(Res.get("shared.select"));
                            setGraphic(button);
                        }
                        button.setOnAction(e -> tableView.getSelectionModel().select(item));
                    } else {
                        setGraphic(null);
                        if (button != null) {
                            button.setOnAction(null);
                            button = null;
                        }
                    }
                }
            };
        }
    });
    return column;
}
Also used : Button(javafx.scene.control.Button) EventHandler(javafx.event.EventHandler) PubKeyRing(bisq.common.crypto.PubKeyRing) BusyAnimation(bisq.desktop.components.BusyAnimation) Utilities(bisq.common.util.Utilities) HyperlinkWithIcon(bisq.desktop.components.HyperlinkWithIcon) ListCell(javafx.scene.control.ListCell) URL(java.net.URL) Date(java.util.Date) ReadOnlyBooleanProperty(javafx.beans.property.ReadOnlyBooleanProperty) DisputeManager(bisq.core.arbitration.DisputeManager) VBox(javafx.scene.layout.VBox) BSFormatter(bisq.desktop.util.BSFormatter) Contract(bisq.core.trade.Contract) InputTextField(bisq.desktop.components.InputTextField) ReadOnlyObjectWrapper(javafx.beans.property.ReadOnlyObjectWrapper) ListChangeListener(javafx.collections.ListChangeListener) Res(bisq.core.locale.Res) Map(java.util.Map) TableView(javafx.scene.control.TableView) ParseException(java.text.ParseException) DateFormat(java.text.DateFormat) Pane(javafx.scene.layout.Pane) SortedList(javafx.collections.transformation.SortedList) HBox(javafx.scene.layout.HBox) Popup(bisq.desktop.main.overlays.popups.Popup) AutoTooltipTableColumn(bisq.desktop.components.AutoTooltipTableColumn) P2PService(bisq.network.p2p.P2PService) AutoTooltipLabel(bisq.desktop.components.AutoTooltipLabel) FilteredList(javafx.collections.transformation.FilteredList) KeyEvent(javafx.scene.input.KeyEvent) Subscription(org.fxmisc.easybind.Subscription) SendPrivateNotificationWindow(bisq.desktop.main.overlays.windows.SendPrivateNotificationWindow) Priority(javafx.scene.layout.Priority) List(java.util.List) TradeManager(bisq.core.trade.TradeManager) AnchorPane(javafx.scene.layout.AnchorPane) Paint(javafx.scene.paint.Paint) NodeAddress(bisq.network.p2p.NodeAddress) AutoTooltipButton(bisq.desktop.components.AutoTooltipButton) AppOptionKeys(bisq.core.app.AppOptionKeys) UserThread(bisq.common.UserThread) ByteStreams(com.google.common.io.ByteStreams) Optional(java.util.Optional) Attachment(bisq.core.arbitration.Attachment) ObservableList(javafx.collections.ObservableList) AwesomeIcon(de.jensd.fx.fontawesome.AwesomeIcon) TableGroupHeadline(bisq.desktop.components.TableGroupHeadline) GUIUtil(bisq.desktop.util.GUIUtil) Scene(javafx.scene.Scene) ActivatableView(bisq.desktop.common.view.ActivatableView) ListView(javafx.scene.control.ListView) DisputeSummaryWindow(bisq.desktop.main.overlays.windows.DisputeSummaryWindow) TextArea(javafx.scene.control.TextArea) SimpleDateFormat(java.text.SimpleDateFormat) Timer(bisq.common.Timer) HashMap(java.util.HashMap) Dispute(bisq.core.arbitration.Dispute) ContractWindow(bisq.desktop.main.overlays.windows.ContractWindow) FxmlView(bisq.desktop.common.view.FxmlView) TableColumn(javafx.scene.control.TableColumn) ArrayList(java.util.ArrayList) Inject(javax.inject.Inject) TableCell(javafx.scene.control.TableCell) Lists(com.google.common.collect.Lists) Insets(javafx.geometry.Insets) Connection(bisq.network.p2p.network.Connection) TextAlignment(javafx.scene.text.TextAlignment) Callback(javafx.util.Callback) Tooltip(javafx.scene.control.Tooltip) PrivateNotificationManager(bisq.core.alert.PrivateNotificationManager) Nullable(javax.annotation.Nullable) KeyCode(javafx.scene.input.KeyCode) Version(bisq.common.app.Version) Label(javafx.scene.control.Label) TradeDetailsWindow(bisq.desktop.main.overlays.windows.TradeDetailsWindow) MalformedURLException(java.net.MalformedURLException) Trade(bisq.core.trade.Trade) AwesomeDude(de.jensd.fx.fontawesome.AwesomeDude) FileOutputStream(java.io.FileOutputStream) IOException(java.io.IOException) File(java.io.File) TimeUnit(java.util.concurrent.TimeUnit) FileChooser(javafx.stage.FileChooser) DisputeCommunicationMessage(bisq.core.arbitration.messages.DisputeCommunicationMessage) Stage(javafx.stage.Stage) EasyBind(org.fxmisc.easybind.EasyBind) ImageView(javafx.scene.image.ImageView) ArbitratorDisputeView(bisq.desktop.main.disputes.arbitrator.ArbitratorDisputeView) Named(com.google.inject.name.Named) KeyRing(bisq.common.crypto.KeyRing) ChangeListener(javafx.beans.value.ChangeListener) InputStream(java.io.InputStream) AutoTooltipTableColumn(bisq.desktop.components.AutoTooltipTableColumn) TableColumn(javafx.scene.control.TableColumn) AutoTooltipButton(bisq.desktop.components.AutoTooltipButton) TableCell(javafx.scene.control.TableCell) Button(javafx.scene.control.Button) AutoTooltipButton(bisq.desktop.components.AutoTooltipButton) AutoTooltipTableColumn(bisq.desktop.components.AutoTooltipTableColumn) Dispute(bisq.core.arbitration.Dispute)

Aggregations

TableColumn (javafx.scene.control.TableColumn)132 TableView (javafx.scene.control.TableView)68 TableCell (javafx.scene.control.TableCell)66 AutoTooltipLabel (bisq.desktop.components.AutoTooltipLabel)46 Button (javafx.scene.control.Button)44 VBox (javafx.scene.layout.VBox)41 Tooltip (javafx.scene.control.Tooltip)40 Callback (javafx.util.Callback)40 ObservableList (javafx.collections.ObservableList)39 Insets (javafx.geometry.Insets)37 ReadOnlyObjectWrapper (javafx.beans.property.ReadOnlyObjectWrapper)36 Label (javafx.scene.control.Label)35 ArrayList (java.util.ArrayList)33 List (java.util.List)33 Scene (javafx.scene.Scene)32 Res (bisq.core.locale.Res)31 FxmlView (bisq.desktop.common.view.FxmlView)31 Inject (javax.inject.Inject)31 HyperlinkWithIcon (bisq.desktop.components.HyperlinkWithIcon)30 SortedList (javafx.collections.transformation.SortedList)27