public SpotTilePricingViewModel(ICurrencyPair currencyPair, SpotTileSubscriptionMode spotTileSubscriptionMode, ISpotTileViewModel parent, Func <Direction, ISpotTilePricingViewModel, IOneWayPriceViewModel> oneWayPriceFactory, IReactiveTrader reactiveTrader, IConcurrencyService concurrencyService, IConstantRatePump constantRatePump, ILoggerFactory loggerFactory) { _currencyPair = currencyPair; _subscriptionMode = spotTileSubscriptionMode; _parent = parent; _priceLatencyRecorder = reactiveTrader.PriceLatencyRecorder; _concurrencyService = concurrencyService; _constantRatePump = constantRatePump; _log = loggerFactory.Create(typeof(SpotTilePricingViewModel)); _priceSubscription = new SerialDisposable(); Bid = oneWayPriceFactory(Direction.SELL, this); Ask = oneWayPriceFactory(Direction.BUY, this); Notional = "1000000"; DealtCurrency = currencyPair.BaseCurrency; SpotDate = "SP"; IsSubscribing = true; SubscribeForPrices(); }
public SpotTilePricingViewModel(ICurrencyPair currencyPair, SpotTileSubscriptionMode spotTileSubscriptionMode, ISpotTileViewModel parent, Func<Direction, ISpotTilePricingViewModel, IOneWayPriceViewModel> oneWayPriceFactory, IReactiveTrader reactiveTrader, IConcurrencyService concurrencyService, IConstantRatePump constantRatePump, ILoggerFactory loggerFactory) { _currencyPair = currencyPair; _subscriptionMode = spotTileSubscriptionMode; _parent = parent; _priceLatencyRecorder = reactiveTrader.PriceLatencyRecorder; _concurrencyService = concurrencyService; _constantRatePump = constantRatePump; _log = loggerFactory.Create(typeof(SpotTilePricingViewModel)); _priceSubscription = new SerialDisposable(); Bid = oneWayPriceFactory(Direction.SELL, this); Ask = oneWayPriceFactory(Direction.BUY, this); Notional = "1000000"; DealtCurrency = currencyPair.BaseCurrency; SpotDate = "SP"; IsSubscribing = true; SubscribeForPrices(); }
public SpotTileViewModel(ICurrencyPair currencyPair, SpotTileSubscriptionMode spotTileSubscriptionMode, Func<ICurrencyPair, SpotTileSubscriptionMode, ISpotTileViewModel, ISpotTilePricingViewModel> pricingFactory, Func<ITrade, ISpotTileViewModel, ISpotTileAffirmationViewModel> affirmationFactory, Func<string, ISpotTileViewModel, ISpotTileErrorViewModel> errorFactory, Func<ISpotTileConfigViewModel> configFactory) { _affirmationFactory = affirmationFactory; _errorFactory = errorFactory; _configFactory = configFactory; if (currencyPair != null) { Pricing = pricingFactory(currencyPair, spotTileSubscriptionMode, this); CurrencyPair = currencyPair.Symbol; } }
public SpotTileViewModel(ICurrencyPair currencyPair, SpotTileSubscriptionMode spotTileSubscriptionMode, Func <ICurrencyPair, SpotTileSubscriptionMode, ISpotTileViewModel, ISpotTilePricingViewModel> pricingFactory, Func <ITrade, ISpotTileViewModel, ISpotTileAffirmationViewModel> affirmationFactory, Func <string, ISpotTileViewModel, ISpotTileErrorViewModel> errorFactory, Func <ISpotTileConfigViewModel> configFactory) { _affirmationFactory = affirmationFactory; _errorFactory = errorFactory; _configFactory = configFactory; if (currencyPair != null) { Pricing = pricingFactory(currencyPair, spotTileSubscriptionMode, this); CurrencyPair = currencyPair.Symbol; } }
private bool CanExecute(SpotTileSubscriptionMode spotTileSubscriptionMode) { return(SubscriptionMode != spotTileSubscriptionMode); }
private void Execute(SpotTileSubscriptionMode spotTileSubscriptionMode) { SubscriptionMode = spotTileSubscriptionMode; RaiseCanExecuteChanged(); }
private DelegateCommand CreateSubscriptionModeCommand(SpotTileSubscriptionMode spotTileSubscriptionMode) { return(new DelegateCommand(() => Execute(spotTileSubscriptionMode), () => CanExecute(spotTileSubscriptionMode))); }
private bool CanExecute(SpotTileSubscriptionMode spotTileSubscriptionMode) { return SubscriptionMode != spotTileSubscriptionMode; }
private DelegateCommand CreateSubscriptionModeCommand(SpotTileSubscriptionMode spotTileSubscriptionMode) { return new DelegateCommand(() => Execute(spotTileSubscriptionMode), () => CanExecute(spotTileSubscriptionMode)); }