Example #1
0
        } //dg_ReportTrade_CellMouseClick()

        public static void dg_ReportTradeMenuItem_Click(object sender, MouseEventArgs e)
        {
            //
            // Purpose: A generic menu click event for the Order Right-Click
            //

            // Local Variables
            ToolStripMenuItem ts_From    = (ToolStripMenuItem)sender;
            TradeMenuStruct   myTradeStr = (TradeMenuStruct)ts_From.Tag;

            String      Tradeid = myTradeStr.TradeID;
            String      NewSide = myTradeStr.NewSide;
            ReportTrade myForm  = myTradeStr.myParentForm;

            String mySql;

            // Alter the Trade Record
            mySql = "Update Trade Set Side = '" + NewSide + "' Where TradeID = " + Tradeid;
            int myRows = SystemLibrary.SQLExecute(mySql);

            mySql  = "Update Fills Set Side = '" + NewSide + "' Where OrderRefID = (Select OrderRefID from Fills_Allocation Where TradeID = " + Tradeid + ") ";
            myRows = SystemLibrary.SQLExecute(mySql);
            mySql  = "Update Orders Set Side = '" + NewSide + "' Where OrderRefID = (Select OrderRefID from Fills_Allocation Where TradeID = " + Tradeid + ") ";
            myRows = SystemLibrary.SQLExecute(mySql);

            myForm.LoadTrades();
        } //dg_ReportTradeMenuItem_Click()
Example #2
0
        } //dg_ReportTrade_MouseClick()

        private void dg_ReportTrade_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            // Show the popup menu
            try
            {
                /*
                 * WARNING: This block does not deal with Stock Location rebuild, so have restricted access to the developer.
                 *          It was temporarily added 26-Feb-2014 to help a new client who was working in EMSX only for Orders,
                 *          and thus missing whether an order direction was Long or Short.
                 */
                if (e.Button == MouseButtons.Right && e.RowIndex > -1 && e.ColumnIndex > -1 && SystemLibrary.GetUserName() == "Colin Ritchie")
                {
                    Point             myLocation = new Point(this.Location.X + CXLocation, this.Location.Y + CYLocation);
                    ContextMenuStrip  myMenu     = new ContextMenuStrip();
                    ToolStripMenuItem mySubMenu  = new ToolStripMenuItem();

                    String TradeID = SystemLibrary.ToString(dg_ReportTrade.Rows[e.RowIndex].Cells["TradeID"].Value);
                    String Side    = SystemLibrary.ToString(dg_ReportTrade.Rows[e.RowIndex].Cells["Side"].Value);
                    String NewSide = Side;

                    // Swap between Short & Long Order Menu
                    String MenuText = "";
                    switch (Side)
                    {
                    case "B":
                        MenuText = "Swap from 'Buy' to 'Buy to Cover'";
                        NewSide  = "BS";
                        break;

                    case "BS":
                        MenuText = "Swap from 'Buy to Cover' to 'Buy'";
                        NewSide  = "B";
                        break;

                    case "S":
                        MenuText = "Swap from 'Sell' to 'Sell Short'";
                        NewSide  = "SS";
                        break;

                    case "SS":
                        MenuText = "Swap from 'Sell Short' to 'Sell'";
                        NewSide  = "S";
                        break;

                    default:
                        Console.WriteLine("Programmer issue: dg_Orders_CellMouseClick(Unknown Side='" + Side + "'");
                        MenuText = "";
                        break;
                    }
                    if (MenuText.Length > 0)
                    {
                        TradeMenuStruct myTradeStr = new TradeMenuStruct();
                        myTradeStr.TradeID      = TradeID;
                        myTradeStr.NewSide      = NewSide;
                        myTradeStr.myParentForm = this;

                        mySubMenu = new ToolStripMenuItem(MenuText);
                        myTradeStr.Instruction = "Swap Trade";
                        mySubMenu.Tag          = myTradeStr;
                        mySubMenu.MouseUp     += new MouseEventHandler(dg_ReportTradeMenuItem_Click);
                        myMenu.Items.Add(mySubMenu);
                    }

                    // Show the Menu
                    myMenu.Show(myLocation);
                }
            }
            catch { }
        } //dg_ReportTrade_CellMouseClick()