public InfoWindow(IValuablePieceOfPaper paper, MainWindow window) { InitializeComponent(); this.Closing += new System.ComponentModel.CancelEventHandler(InfoWindow_Closing); correntPaper = paper; previousWindow = window; switch (Player.Difficulty) { case 1: IB.ImageSource = new BitmapImage(new Uri("pack://application:,,,/Themes/NormalTheme.jpg")); break; case 0: IB.ImageSource = new BitmapImage(new Uri("pack://application:,,,/Themes/EasyTheme.jpg")); break; case 2: IB.ImageSource = new BitmapImage(new Uri("pack://application:,,,/Themes/HardTheme.jpg")); break; default: break; } textblockName.Text = paper.Name; if (Names.CompanyNames().Contains(paper.Name)) { percentorpriceBlock.Text = "Price: "; percentorpriceBox.Text = paper.Price.ToString(); typeBlock.Text = "stock"; quantityBlock.Text = "Quantity of stocks: "; quantityBox.Text = paper.Quantity.ToString(); } else if (Names.BankNames().Contains(paper.Name)) { Deposit deposit = paper as Deposit; percentorpriceBlock.Text = "Interest rate: "; typeBlock.Text = "deposit"; percentorpriceBox.Text = (new StringBuilder(deposit.Percent.ToString() + "%").ToString()); percentofbacruptPanel.Visibility = Visibility.Visible; percentofbancruptBox.Text = (new StringBuilder(deposit.BankruptcyProbability.ToString() + "%").ToString()); quantityBlock.Text = "Quantity of invested funds: "; quantityBox.Text = deposit.Quantity.ToString(); } else if (Names.CountryNames().Contains(paper.Name)) { Bond bond = paper as Bond; percentorpriceBlock.Text = "Interest rate: "; typeBlock.Text = "bond"; percentorpriceBox.Text = (new StringBuilder(bond.Percent.ToString() + "%").ToString()); quantityBlock.Text = "Quantity of invested funds: "; quantityBox.Text = bond.Quantity.ToString(); } double total = paper.Price * paper.Quantity; totalBox.Text = total.ToString(); }
public BuyWindow(IValuablePieceOfPaper paper, MainWindow window) { InitializeComponent(); this.Closing += new System.ComponentModel.CancelEventHandler(SellBuyWindow_Closing); correntPaper = paper; previousWindow = window; switch (Player.Difficulty) { case 1: IB.ImageSource = new BitmapImage(new Uri("pack://application:,,,/Themes/NormalTheme.jpg")); break; case 0: IB.ImageSource = new BitmapImage(new Uri("pack://application:,,,/Themes/EasyTheme.jpg")); break; case 2: IB.ImageSource = new BitmapImage(new Uri("pack://application:,,,/Themes/HardTheme.jpg")); break; default: break; } textblockName.Text = paper.Name; if (Names.CompanyNames().Contains(paper.Name)) { percentorpriceBlock.Text = "Price: "; percentorpriceBox.Text = paper.Price.ToString(); quantityBlock.Text = "Maximum quantity of stocks: "; quantityBox.Text = Math.Floor(Math.Min(paper.Quantity, ((previousWindow as MainWindow).player.Money / paper.Price))).ToString(); quantitytobuyBlock.Text = "Quantity to buy: "; } else if (Names.BankNames().Contains(paper.Name)) { Deposit deposit = paper as Deposit; percentorpriceBlock.Text = "Interest rate: "; percentorpriceBox.Text = (new StringBuilder(deposit.Percent.ToString() + "%").ToString()); percentofbacruptPanel.Visibility = Visibility.Visible; percentofbancruptBox.Text = (new StringBuilder(deposit.BankruptcyProbability.ToString() + "%").ToString()); quantityBlock.Text = "Maximum quantity of invested funds: "; quantityBox.Text = Math.Floor(Math.Min(deposit.MaxQuantity, previousWindow.player.Money)).ToString(); quantitytobuyBlock.Text = "Funds for investment: "; } else if (Names.CountryNames().Contains(paper.Name)) { Bond bond = paper as Bond; percentorpriceBlock.Text = "Interest rate: "; percentorpriceBox.Text = (new StringBuilder(bond.Percent.ToString() + "%").ToString()); quantityBlock.Text = "Maximum quantity of invested funds: "; quantityBox.Text = Math.Floor(Math.Min(bond.MaxQuantity, previousWindow.player.Money)).ToString(); quantitytobuyBlock.Text = "Funds for investment: "; } }
private IValuablePieceOfPaper Find(string name, ObservableCollection <IValuablePieceOfPaper> list) { IValuablePieceOfPaper returnPaper = null; foreach (var p in list) { if (p.Name == name) { returnPaper = p; break; } } return(returnPaper); }
public void Sell(IValuablePieceOfPaper paper, double quantity) // changed { int i = ownings.IndexOf(paper); if (quantity == ownings[i].Quantity) { Money += ownings[i].TotalValue; InvestedMoney -= ownings[i].TotalValue; OurMarket.MarketPapers.Add(ownings[i]); ownings.RemoveAt(i); } else { ownings[i].Quantity -= quantity; Money += quantity * ownings[i].Price; InvestedMoney -= quantity * ownings[i].Price; } }
public void Buy(IValuablePieceOfPaper paper, double quantity) { paper.Quantity -= quantity; if (Money >= quantity * paper.Price) { Money = Math.Round(Money - quantity * paper.Price, 2); InvestedMoney += quantity * paper.Price; if (!ownings.Contains(Find(paper.Name, ownings))) { ownings.Add(paper.CreateAPair(quantity)); //incapsulated } else { var paper0 = Find(paper.Name, ownings); paper0.Quantity += quantity; paper0.TotalValue = paper0.Price * paper0.Quantity; } } }