fix system editor
This commit is contained in:
@@ -19,6 +19,7 @@ import ru.trader.model.ProfileModel;
|
||||
import ru.trader.model.SystemModel;
|
||||
import ru.trader.model.support.PositionComputer;
|
||||
import ru.trader.view.support.Localization;
|
||||
import ru.trader.view.support.ViewUtils;
|
||||
import ru.trader.view.support.autocomplete.AutoCompletion;
|
||||
import ru.trader.view.support.autocomplete.CachedSuggestionProvider;
|
||||
import ru.trader.view.support.autocomplete.SystemsProvider;
|
||||
@@ -85,12 +86,12 @@ public class SystemsEditorController {
|
||||
clnS4.setCellFactory(TextFieldCell.forTableColumn(new DoubleStringConverter()));
|
||||
clnS5.setCellFactory(TextFieldCell.forTableColumn(new DoubleStringConverter()));
|
||||
clnS6.setCellFactory(TextFieldCell.forTableColumn(new DoubleStringConverter()));
|
||||
clnName.setOnEditCommit(e -> copySys1());
|
||||
clnS1.setOnEditCommit(e -> copySys2());
|
||||
clnS2.setOnEditCommit(e -> copySys3());
|
||||
clnS3.setOnEditCommit(e -> copySys4());
|
||||
clnS4.setOnEditCommit(e -> copySys5());
|
||||
clnS5.setOnEditCommit(e -> copySys6());
|
||||
ViewUtils.addOnEditCommit(clnName, e -> copySys1());
|
||||
ViewUtils.addOnEditCommit(clnS1, e -> copySys2());
|
||||
ViewUtils.addOnEditCommit(clnS2, e -> copySys3());
|
||||
ViewUtils.addOnEditCommit(clnS3, e -> copySys4());
|
||||
ViewUtils.addOnEditCommit(clnS4, e -> copySys5());
|
||||
ViewUtils.addOnEditCommit(clnS5, e -> copySys6());
|
||||
tblSystems.setItems(FXCollections.observableArrayList());
|
||||
tblSystems.getSelectionModel().setCellSelectionEnabled(true);
|
||||
tblSystems.setSortPolicy(t -> true);
|
||||
|
||||
@@ -4,6 +4,9 @@ import com.sun.javafx.scene.control.skin.TableViewSkin;
|
||||
import com.sun.javafx.scene.control.skin.VirtualFlow;
|
||||
import javafx.application.Platform;
|
||||
import javafx.collections.ObservableList;
|
||||
import javafx.event.Event;
|
||||
import javafx.event.EventHandler;
|
||||
import javafx.scene.control.TableColumn;
|
||||
import javafx.scene.control.TablePosition;
|
||||
import javafx.scene.control.TableView;
|
||||
|
||||
@@ -34,6 +37,18 @@ public class ViewUtils {
|
||||
editNext(tableView);
|
||||
}
|
||||
|
||||
public static <T extends Event> EventHandler<T> joinHandlers(EventHandler<T> first, EventHandler<T> second){
|
||||
return (e -> {
|
||||
first.handle(e);
|
||||
second.handle(e);
|
||||
});
|
||||
}
|
||||
|
||||
public static <S,T> void addOnEditCommit(TableColumn<S, T> column, EventHandler<TableColumn.CellEditEvent<S, T>> eventHandler){
|
||||
final EventHandler<TableColumn.CellEditEvent<S, T>> oldHandler = column.getOnEditCommit();
|
||||
column.setOnEditCommit(joinHandlers(oldHandler, eventHandler));
|
||||
}
|
||||
|
||||
public static void doFX(Runnable runnable){
|
||||
if (Platform.isFxApplicationThread()){
|
||||
runnable.run();
|
||||
|
||||
Reference in New Issue
Block a user