diff --git a/UIUtils/CMTTrendModelClosePositionDialog.xaml b/UIUtils/CMTTrendModelClosePositionDialog.xaml
deleted file mode 100644
index 32d9510..0000000
--- a/UIUtils/CMTTrendModelClosePositionDialog.xaml
+++ /dev/null
@@ -1,59 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Symbol
-
-
-
-
-
-
-
-
- 100.00
-
-
- Delete Stop
-
-
-
-
-
-
-
-
-
diff --git a/UIUtils/CMTTrendModelClosePositionDialog.xaml.cs b/UIUtils/CMTTrendModelClosePositionDialog.xaml.cs
deleted file mode 100644
index 757ae02..0000000
--- a/UIUtils/CMTTrendModelClosePositionDialog.xaml.cs
+++ /dev/null
@@ -1,184 +0,0 @@
-using MarketData.DataAccess;
-using MarketData.MarketDataModel;
-using MarketData.Utils;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Media;
-using System.Text;
-using System.Threading;
-using System.Windows;
-using System.Windows.Controls;
-using System.Windows.Data;
-using System.Windows.Documents;
-using System.Windows.Input;
-using System.Windows.Media;
-using System.Windows.Media.Imaging;
-using System.Windows.Shapes;
-using System.Windows.Threading;
-using Position=MarketData.Generator.CMTrend.Position;
-
-namespace TradeBlotter.UIUtils
-{
- ///
- /// Interaction logic for CMTTrendModelClosePositionDialog.xaml
- ///
- public partial class CMTTrendModelClosePositionDialog:Window
- {
- private ManualResetEvent manualResetEvent=new ManualResetEvent(false);
- private String Symbol{get;set;}
- private DateTime PurchaseDate { get; set; }
- private DateTime SellDate{get;set;}
- private double SellPrice { get; set; }
- private bool DeleteStop{get;set;}
- private bool Result { get; set; }
-
- private CMTTrendModelClosePositionDialog(String title,Position position,bool hasStopLimit)
- {
- this.Background=new SolidColorBrush(Colors.AliceBlue);
- this.Owner=Application.Current.MainWindow;
- InitializeComponent();
- this.Loaded+=new RoutedEventHandler(CMTTrendModelClosePositionDialog_Loaded);
- this.Closing+=Window_Closing;
-
- dpPurchaseDate.SelectedDateChanged+=dpPurchaseDate_SelectionChanged;
- dpSellDate.SelectedDateChanged+=dpPurchaseDate_SelectionChanged;
- cbDeleteStop.Click+=cbDeleteStop_SelectionChanged;
-
- Title=title;
- Symbol=position.Symbol;
- PurchaseDate=position.PurchaseDate;
- SellDate=DateTime.Now.Date;
- SellPrice=position.TrailingStopLimit;
- DeleteStop=hasStopLimit;
-
- txtSymbol.Text=Symbol;
- dpPurchaseDate.SelectedDate=PurchaseDate;
- dpSellDate.SelectedDate=SellDate;
- cbDeleteStop.IsChecked=DeleteStop;
-
- UpdateSellPrice();
- UpdateCompanyName();
- }
- public ManualResetEvent Event { get { return manualResetEvent; } }
- public static Position Prompt(string title,Position position,bool hasStopLimit,ref bool deleteStop)
- {
- CMTTrendModelClosePositionDialog cmtTrendModelClosePositionDialog=new CMTTrendModelClosePositionDialog(title,position,hasStopLimit);
- try { cmtTrendModelClosePositionDialog.ShowDialog(); }
- catch(Exception) { return null; }
- cmtTrendModelClosePositionDialog.Event.WaitOne();
- if( cmtTrendModelClosePositionDialog.Result)
- {
- position.SellDate=cmtTrendModelClosePositionDialog.SellDate;
- position.CurrentPrice=cmtTrendModelClosePositionDialog.SellPrice;
- deleteStop=cmtTrendModelClosePositionDialog.DeleteStop;
- return position;
- }
- return null;
- }
- void CMTTrendModelClosePositionDialog_Loaded(object sender,RoutedEventArgs e)
- {
- txtSellPrice.Focus();
- }
- private void btnOk_Click(object sender,RoutedEventArgs e)
- {
- Result=Validate();
- if(!Result)
- {
- SystemSounds.Beep.Play();
- return;
- }
- Close();
- Event.Set();
- return;
- }
- private void cbDeleteStop_SelectionChanged(object sender,RoutedEventArgs e)
- {
- DeleteStop=cbDeleteStop.IsChecked.Value;
- }
- private void txtSellPrice_OnLostFocusHandler(Object sender,RoutedEventArgs routedEventArgs)
- {
- HandleSellPriceEvents();
- }
- private void txtSellPrice_OnKeyDownHandler(object sender,KeyEventArgs e)
- {
- if(e.Key==Key.Return)
- {
- HandleSellPriceEvents();
- }
- }
- private void HandleSellPriceEvents()
- {
- double value=0.00;
- value=Utility.ParseCurrency(txtSellPrice.Text);
- if(SellPrice.Equals(value)) return;
- SellPrice=value;
- UpdateSellPrice();
- }
- private void dpPurchaseDate_SelectionChanged(object sender,RoutedEventArgs e)
- {
- if(null==dpPurchaseDate.SelectedDate) return;
- PurchaseDate=dpPurchaseDate.SelectedDate.Value;
- }
- private void dpSellDate_SelectionChanged(object sender,RoutedEventArgs e)
- {
- if(null==dpSellDate.SelectedDate) return;
- SellDate=dpSellDate.SelectedDate.Value;
- }
- private void Window_Closing(object sender,System.ComponentModel.CancelEventArgs e)
- {
- Event.Set();
- }
- private void btnCancel_Click(object sender,RoutedEventArgs e)
- {
- Result=false;
- Close();
- Event.Set();
- }
- private bool Validate()
- {
- DateGenerator dateGenerator=new DateGenerator();
- if(null==Symbol)
- {
- SetMessage("Invalid Symbol.");
- return false;
- }
- if(Utility.IsEpoch(PurchaseDate))
- {
- SetMessage("Invalid Purchase Date.");
- return false;
- }
- if(Utility.IsEpoch(SellDate))
- {
- SetMessage("Invalid Sell Date.");
- return false;
- }
- if(!dateGenerator.IsMarketOpen(SellDate))
- {
- SetMessage("Market closed on Sell Date.");
- return false;
- }
- if(double.IsNaN(SellPrice))
- {
- SetMessage("Invalid Sell Price.");
- return false;
- }
- SetMessage("");
- return true;
- }
- private void UpdateSellPrice()
- {
- txtSellPrice.Text=Utility.FormatCurrency(SellPrice);
- }
- private void UpdateCompanyName()
- {
- CompanyProfile companyProfile=CompanyProfileDA.GetCompanyProfile(Symbol);
- if(null==companyProfile||null==companyProfile.CompanyName) return;
- lblCompanyName.Content=companyProfile.CompanyName.ToUpper();
- }
- private void SetMessage(String message)
- {
- lblMessage.Content=message;
- }
- }
-}