Archived
0

add new stations to list in profile screen

This commit is contained in:
iMoHax
2015-11-05 16:51:14 +03:00
parent ef4d3dd8d3
commit 70b9faab78

View File

@@ -12,6 +12,7 @@ import ru.trader.Main;
import ru.trader.ServicesManager;
import ru.trader.core.Engine;
import ru.trader.model.*;
import ru.trader.model.support.ChangeMarketListener;
import ru.trader.view.support.NumberField;
import ru.trader.view.support.ViewUtils;
import ru.trader.view.support.autocomplete.AutoCompletion;
@@ -121,6 +122,7 @@ public class ProfileController {
void init(){
MarketModel world = MainController.getWorld();
world.getNotificator().add(marketChangeListener);
SystemsProvider provider = world.getSystemsProvider();
if (system == null){
system = new AutoCompletion<>(systemText, new CachedSuggestionProvider<>(provider), ModelFabric.NONE_SYSTEM, provider.getConverter());
@@ -227,6 +229,27 @@ public class ProfileController {
private final ChangeListener<Number> cargoListener = (ov, o, n) -> consumeChanges(() -> cargo.setValue(n));
private final ChangeListener<Engine> engineListener = (ov, o, n) -> consumeChanges(() -> engine.setValue(n));
private final ChangeMarketListener marketChangeListener = new ChangeMarketListener() {
@Override
public void add(StationModel station) {
ViewUtils.doFX(() -> {
if (station.getSystem().equals(system.getValue())) {
ProfileController.this.station.getItems().add(station.getName());
}
});
}
@Override
public void remove(StationModel station) {
ViewUtils.doFX(() -> {
if (station.getSystem().equals(system.getValue())) {
ProfileController.this.station.getItems().remove(station.getName());
}
});
}
};
private class EngineStringConverter extends StringConverter<Engine> {
@Override
public String toString(Engine engine) {