private void cmdAdd_Click(object sender, EventArgs e) { string text = txtCategory.Text.Replace("\t", "").Trim(); // Remove tabs (relic of tab-delimited file structure) TransactionItem.TransactionTypes category = (TransactionItem.TransactionTypes)cmbTypes.SelectedItem; if (string.IsNullOrEmpty(text)) { return; } if (((TransactionItem.TransactionTypes)cmbTypes.SelectedItem) == TransactionItem.TransactionTypes.Unselected) { if (MessageBox.Show("Are you sure you want to default '" + text + "' as Unselected?", "Confirm", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.No) { return; } } CategoryMatch.GetCollection().Insert(new CategoryMatch { MatchString = text, MatchType = category }); CategoryMatch.ResetCategoriesCache(); this.Close(); }
public ManageCategoryMatch() { InitializeComponent(); dgcolMatchType.DataSource = Enum.GetValues(typeof(TransactionItem.TransactionTypes)); //TransactionType.GetNames(); dgCategoryMatch.AutoGenerateColumns = false; dgCategoryMatch.DataSource = CategoryMatch.GetCollection().FindAll().OrderBy(c => c.MatchString).ToList(); dgCategoryMatch.Refresh(); }
private void ImportCategoryMatching() { if (File.Exists(Environment.CurrentDirectory + "\\CategoryMatching.txt")) { using (StreamReader sr = new StreamReader(Environment.CurrentDirectory + "\\CategoryMatching.txt")) { List <CategoryMatch> matches = new List <CategoryMatch>(); string line; while (!string.IsNullOrEmpty(line = sr.ReadLine())) { string[] itemType = line.Split('\t'); if (itemType.Length != 2) { continue; } try { matches.Add(new CategoryMatch() { MatchString = itemType[0], MatchType = (TransactionItem.TransactionTypes)Enum.Parse(typeof(TransactionItem.TransactionTypes), itemType[1]) }); } catch { MessageBox.Show(line, "Item incorrectly set up: " + line); } } CategoryMatch.GetCollection().InsertBulk(matches); foreach (TransactionItem trans in TransactionItem.GetCollection().Find(t => t.TransType == TransactionItem.TransactionTypes.Unselected)) { var newType = CategoryMatch.GetType(trans.ToString()); if (newType != trans.TransType) { trans.TransType = newType; TransactionItem.GetCollection().Update(trans); } } } BackupTransactionFile(Environment.CurrentDirectory + "\\CategoryMatching.txt", "Category Matching", DateTime.Now); } }
private void Match_FormClosed(object sender, FormClosedEventArgs e) { List <TransactionItem> filteredList = (List <TransactionItem>)dgTransactions.DataSource; foreach (TransactionItem trans in TransactionItem.GetCollection().Find(t => t.TransType == TransactionItem.TransactionTypes.Unselected)) { var newType = CategoryMatch.GetType(trans.ToString()); if (newType != trans.TransType) { trans.TransType = newType; TransactionItem.GetCollection().Update(trans); } } foreach (TransactionItem trans in filteredList.Where(f => f.TransType == TransactionItem.TransactionTypes.Unselected)) { trans.TransType = CategoryMatch.GetType(trans.ToString()); } // Reset the view dgTransactions.DataSource = filteredList; dgTransactions.Refresh(); }