Archived
0

add performance options to settings

This commit is contained in:
iMoHax
2014-09-19 14:53:15 +04:00
parent d2196c6be1
commit 7eee3700e4
7 changed files with 59 additions and 3 deletions

View File

@@ -106,4 +106,19 @@ public class Settings {
return Integer.valueOf(values.getProperty("ship.jumps","3"));
}
public void setSegmentSize(int segmentSize){
values.setProperty("performance.segment", String.valueOf(segmentSize));
}
public int getSegmentSize(){
return Integer.valueOf(values.getProperty("performance.segment","0"));
}
public void setPathsCount(int pathsCount){
values.setProperty("performance.limit", String.valueOf(pathsCount));
}
public int getPathsCount(){
return Integer.valueOf(values.getProperty("performance.limit","100"));
}
}

View File

@@ -2,9 +2,8 @@ package ru.trader;
import org.xml.sax.SAXException;
import ru.trader.core.Market;
import ru.trader.core.MarketAnalyzer;
import ru.trader.core.SimpleMarket;
import ru.trader.emdn.EMDN;
import ru.trader.emdn.Station;
import ru.trader.model.ModelFabrica;
import ru.trader.store.Store;
import ru.trader.store.XSSFImporter;
@@ -45,4 +44,11 @@ public class World {
public static Market getMarket() {
return world;
}
public static MarketAnalyzer buildAnalyzer(Market market){
MarketAnalyzer analyzer = new MarketAnalyzer(market);
analyzer.setSegmentSize(Main.SETTINGS.getSegmentSize());
analyzer.setPathsCount(Main.SETTINGS.getPathsCount());
return analyzer;
}
}

View File

@@ -14,7 +14,9 @@ import org.slf4j.LoggerFactory;
import ru.trader.EMDNUpdater;
import ru.trader.Main;
import ru.trader.World;
import ru.trader.core.MarketAnalyzer;
import ru.trader.emdn.EMDN;
import ru.trader.model.MarketModel;
import ru.trader.view.support.Localization;
import ru.trader.view.support.NumberField;
@@ -30,6 +32,10 @@ public class SettingsController {
private CheckBox emdnUpdateOnly;
@FXML
private NumberField emdnUpdateTime;
@FXML
private NumberField segmentSize;
@FXML
private NumberField pathsCount;
private final Action actSave = new AbstractAction(Localization.getString("dialog.button.save")) {
{
@@ -54,6 +60,8 @@ public class SettingsController {
emdnOn.setSelected(Main.SETTINGS.getEMDNActive());
emdnUpdateOnly.setSelected(Main.SETTINGS.getEMDNUpdateOnly());
emdnUpdateTime.setValue(Main.SETTINGS.getEMDNAutoUpdate());
segmentSize.setValue(Main.SETTINGS.getSegmentSize());
pathsCount.setValue(Main.SETTINGS.getPathsCount());
}
private void save() {
@@ -65,6 +73,12 @@ public class SettingsController {
EMDNUpdater.setUpdateOnly(emdnUpdateOnly.isSelected());
Main.SETTINGS.setEMDNAutoUpdate(emdnUpdateTime.getValue().longValue());
EMDNUpdater.setInterval(emdnUpdateTime.getValue().longValue());
MarketModel market = MainController.getMarket();
Main.SETTINGS.setSegmentSize(segmentSize.getValue().intValue());
market.setSegmetnSize(segmentSize.getValue().intValue());
Main.SETTINGS.setPathsCount(pathsCount.getValue().intValue());
market.setLimit(pathsCount.getValue().intValue());
}
public Action showDialog(Parent parent, Parent content){

View File

@@ -6,6 +6,7 @@ import javafx.beans.property.SimpleListProperty;
import javafx.collections.ObservableList;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import ru.trader.World;
import ru.trader.core.*;
import ru.trader.graph.PathRoute;
import ru.trader.model.support.BindingsHelper;
@@ -42,7 +43,7 @@ public class MarketModel {
public MarketModel(Market market) {
this.market = market;
analyzer = new MarketAnalyzer(market);
analyzer = World.buildAnalyzer(market);
items = new SimpleListProperty<ItemDescModel>(BindingsHelper.observableList(market.getItems(), this::getItemDesc));
vendors = new SimpleListProperty<VendorModel>(BindingsHelper.observableList(market.get(), this::asModel));
}
@@ -178,6 +179,14 @@ public class MarketModel {
}
public void setLimit(int limit){
analyzer.setPathsCount(limit);
}
public void setSegmetnSize(int segmetnSize){
analyzer.setSegmentSize(segmetnSize);
}
public void setCargo(int cargo){
analyzer.setCargo(cargo);
}