public CityIcons(CityState cityState, IDataImageLoader imageLoader) { super(2); this.cityState = cityState; this.imageLoader = imageLoader; threadExecution = new JavaFXApplicationThreadExecution(); updateMissingWare(); updateCityEvent(); cityState.longestMissingWaresBinding().addListener((observable, oldValue, newValue) -> updateMissingWare()); cityState.cityEventProperty().addListener((observable, oldValue, newValue) -> updateCityEvent()); }