public void EditCard(Rect rect) { Window.Draw(rect); switch (Window.Draw_Choose(rect.ChangeWidth(-rect.width / 2 - 1), Program.CardCategories)) { case 0: string str_name = Window.Draw_Read_Line(new Rect(rect.left + rect.width / 2 + 2, rect.top + 2, rect.width / 2 - 3, 2), "Enter Card Name"); int cur = Window.Draw_Choose(new Rect(rect.left + rect.width / 2 + 2, rect.top + 6, rect.width / 2 - 3, rect.height - 6 - 1), Program.CurrencyCategories); Cards.Add(new Card(new Currency(0, cur), str_name)); break; case 1: Window.Clear(new Rect(rect.left + 1, rect.top + 1, rect.width / 2 - 2, rect.height / 2 - 2)); switch (Window.Draw_Choose(rect.ChangeWidth(-rect.width / 2 - 1), Program.CardEditCategories)) { case 0: Window.Clear(new Rect(rect.left + 1, rect.top + 1, rect.width / 2 - 2, rect.height / 2 - 2)); int index = Window.Draw_Choose(rect.ChangeWidth(-rect.width / 2 - 1), GetCardNames()); Cards[index].Name = Window.Draw_Read_Line(new Rect(rect.left + rect.width / 2 + 2, rect.top + 2, rect.width / 2 - 4, 2), "Enter Card Name"); break; case 1: Window.Clear(new Rect(rect.left + 1, rect.top + 1, rect.width / 2 - 2, rect.height / 2 - 2)); index = Window.Draw_Choose(rect.ChangeWidth(-rect.width / 2 - 1), GetCardNames()); int to_currency = Window.Draw_Choose(new Rect(rect.left + rect.width / 2 + 1, rect.top, rect.width / 2, rect.height), Program.CurrencyCategories); Currency.ConvertMoney(ref Cards[index].Balance, to_currency); break; } break; case 2: if (Cards.Count > 0) { int index = Window.Draw_Choose(rect.ChangeLeft(rect.width / 2 + 1).ChangeWidth(-rect.width / 2 - 1), GetCardNames()); Cards.RemoveAt(index); for (int i = 0; i < Program.transfers.Count; i++) { if (Program.transfers[i].Cardid == index) { Program.transfers.RemoveAt(i--); } } Program.FilteringTransfers = Program.transfers.Where(x => Program.min <= x.dateTime && x.dateTime < Program.max).ToList(); Transfers.Reset(); } else { Errors.Add("You dont have a card!"); } break; } }
static void Addtransfers() { Random random = new Random(); //// for (int i = 0; i < count; i++) { bool t = random.Next(0, 100) > 55 ? true : false; transfers.Add(new Transfers(0, new Currency(random.Next(1, 2000), random.Next(1, Currency.CurrencyNames.Count)), random.Next(1, 2000).ToString(), random.Next(0, t ? Categories.Count : MoneyCategories.Count), t, DateTime.Now.AddDays(random.Next(-365, 365)))); if (transfers[i].Is_Received) { me.Expense += transfers[i].Price; me.Cards[0].Balance -= transfers[i].Price; } else { me.Income += transfers[i].Price; me.Cards[0].Balance += transfers[i].Price; } } FilteringTransfers = transfers.Where(x => min <= x.dateTime && x.dateTime < max).ToList(); Transfers.Reset(); }