Marked as 'AdvertsingProfitControl v 0.9.5' by its folder name. Renamed some database class files, and added a new form to modify existing records.
This commit is contained in:
@@ -0,0 +1,154 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Globalization;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace AdvertsingProfitControl
|
||||
{
|
||||
public partial class FrmManageAdItems : Form
|
||||
{
|
||||
public FrmManageAdItems()
|
||||
{
|
||||
InitializeComponent();
|
||||
MaximumSize = new Size(550, 505);
|
||||
MinimumSize = new Size(525, 480);
|
||||
}
|
||||
|
||||
private void frmManageAdItems_Load(object sender, EventArgs e)
|
||||
{
|
||||
FillAdItemComboBoxFilter();
|
||||
adItemFilterComboBox.SelectedIndexChanged += UpdateFiltering;
|
||||
adItemListView.SelectedIndexChanged += OnListItemSelectionChanged;
|
||||
adItemTextBox.TextChanged += NewAdItemTextChanged;
|
||||
}
|
||||
|
||||
private void NewAdItemTextChanged(object sender, EventArgs e)
|
||||
{
|
||||
if(adItemTextBox.TextLength == 0)
|
||||
{
|
||||
addItemButton.Enabled = false;
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
addItemButton.Enabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
private void OnListItemSelectionChanged(object sender, EventArgs e)
|
||||
{
|
||||
if(adItemListView.SelectedItems.Count > 0)
|
||||
{
|
||||
deleteSelectedItem.Enabled = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
deleteSelectedItem.Enabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void UpdateFiltering(object sender, EventArgs e)
|
||||
{
|
||||
var databaseTracker = new DatabaseTracker();
|
||||
var databaseReader = new DatabaseReader();
|
||||
var itemList = new List<string>();
|
||||
adItemListView.Items.Clear();
|
||||
if(adItemFilterComboBox.Text == "All Items")
|
||||
{
|
||||
itemList = databaseReader.RetrieveAdItemListByLetter(databaseTracker.DatabaseConnectionString);
|
||||
}
|
||||
else
|
||||
{
|
||||
itemList = databaseReader.RetrieveAdItemListByLetter(databaseTracker.DatabaseConnectionString, adItemFilterComboBox.Text);
|
||||
}
|
||||
foreach (var item in itemList)
|
||||
{
|
||||
var listViewItem = new ListViewItem(item);
|
||||
adItemListView.Items.Add(listViewItem);
|
||||
}
|
||||
}
|
||||
|
||||
private void deleteSelectedItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
if(adItemListView.SelectedItems.Count == 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
var databaseTracker = new DatabaseTracker();
|
||||
var databaseWriter = new DatabaseWriter(databaseTracker.DatabaseConnectionString);
|
||||
|
||||
if (databaseWriter.RemoveAdItem(adItemListView.SelectedItems[0].Text))
|
||||
{
|
||||
notificationLabel.Text = "Successfully removed " + adItemListView.SelectedItems[0].Text + "\n from the database.";
|
||||
adItemListView.Items.Remove(adItemListView.SelectedItems[0]);
|
||||
}
|
||||
|
||||
deleteSelectedItem.Enabled = false;
|
||||
}
|
||||
|
||||
private void addItemButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
var databaseTracker = new DatabaseTracker();
|
||||
var databaseWriter = new DatabaseWriter(databaseTracker.DatabaseConnectionString);
|
||||
if (adItemTextBox.Text == "") return;
|
||||
TextInfo textInfo = new CultureInfo("en-US", false).TextInfo;
|
||||
//Clean up the input string.
|
||||
//Pretty up the ad item's name by uppercasing the name.
|
||||
var adItemText = adItemTextBox.Text;
|
||||
adItemText = textInfo.ToTitleCase(adItemText);
|
||||
//Eliminate the upper cased pound abbreviation ("Lb") with a standard "lb".
|
||||
adItemText = adItemText.Replace("Lb", "lb");
|
||||
adItemText = adItemText.Replace("LB", "lb");
|
||||
adItemText = adItemText.Replace("lB", "lb");
|
||||
adItemText = adItemText.Replace(":", "");
|
||||
adItemText = adItemText.Replace(";", "");
|
||||
adItemText = adItemText.Replace("/", "");
|
||||
adItemText = adItemText.Replace("\\", "");
|
||||
|
||||
if (databaseWriter.AddNewItem(adItemText))
|
||||
{
|
||||
notificationLabel.Text = "Successfully inserted " + adItemText + "\n into the database.";
|
||||
if (adItemFilterComboBox.SelectedIndex == 0 || adItemFilterComboBox.SelectedItem.ToString()[0] == adItemText[0])
|
||||
{
|
||||
adItemListView.Items.Add(adItemText);
|
||||
}
|
||||
if (!adItemFilterComboBox.Items.Contains(adItemText[0]))
|
||||
{
|
||||
adItemFilterComboBox.Items.Add(adItemText[0]);
|
||||
}
|
||||
}
|
||||
addItemLabel.Select();
|
||||
adItemTextBox.Text = "";
|
||||
addItemButton.Enabled = false;
|
||||
}
|
||||
|
||||
private void FillAdItemComboBoxFilter()
|
||||
{
|
||||
var databaseTracker = new DatabaseTracker();
|
||||
var databaseReader = new DatabaseReader();
|
||||
var columnHeader = new ColumnHeader();
|
||||
columnHeader.Text = "Ad Items";
|
||||
columnHeader.Width = 300;
|
||||
adItemListView.Columns.Add(columnHeader);
|
||||
var itemList = databaseReader.RetrieveAdItemListByLetter(databaseTracker.DatabaseConnectionString);
|
||||
foreach (var item in itemList)
|
||||
{
|
||||
var listViewItem = new ListViewItem(item);
|
||||
if (!adItemFilterComboBox.Items.Contains(item[0]))
|
||||
{
|
||||
adItemFilterComboBox.Items.Add(item[0]);
|
||||
}
|
||||
adItemListView.Items.Add(listViewItem);
|
||||
}
|
||||
adItemFilterComboBox.Items.Insert(0, "All Items");
|
||||
columnHeader.Width = -1;
|
||||
adItemFilterComboBox.SelectedIndex = 0;
|
||||
}
|
||||
|
||||
private void closeFormFileMainMenu_Click(object sender, EventArgs e)
|
||||
{
|
||||
Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user