Exemplo n.º 1
0
        /// <summary>
        /// 주문하기 Button을 Click 했을 때 발생 하는 Event
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnOrder_Click(object sender, EventArgs e)
        {
            delFuncDow_Edge delDow  = new delFuncDow_Edge(fDow);
            delFuncDow_Edge delEdge = new delFuncDow_Edge(fEdge);

            delFuncTopping delTopping = null;


            int iDowOrder  = 0;
            int iEdgeOrder = 0;

            // 선택 도우 확인
            if (rdoDow1.Checked)
            {
                iDowOrder = 1;
            }
            else if (rdoDow2.Checked)
            {
                iDowOrder = 2;
            }

            //delDow(iDowOrder);

            // 선택 엣지 확인
            if (rdoEdge1.Checked)
            {
                iEdgeOrder = 1;
            }
            else if (rdoEdge2.Checked)
            {
                iEdgeOrder = 2;
            }

            //delEdge(iEdgeOrder);

            fCallBackDelegate(iDowOrder, delDow);
            fCallBackDelegate(iEdgeOrder, delEdge);


            // 토핑 선택 확인
            if (cboxTopping1.Checked)
            {
                //delTopping = new delFuncTopping(fTopping1);
                delTopping += fTopping1;
            }

            if (cboxTopping2.Checked)
            {
                delTopping += fTopping2;
            }
            if (cboxTopping3.Checked)
            {
                delTopping += fTopping3;
            }

            delTopping("토핑", (int)numEa.Value);

            flboxOrderRed("----------------------------------");
            flboxOrderRed(string.Format("전체 주문 가격은 {0}원 입니다.", _iTotalPrice));
        }
Exemplo n.º 2
0
        int _iTotalPrice = 0;                      //총액

        private void btnOrder_Click(object sender, EventArgs e)
        {
            Dictionary <string, int> dPizzaOrder = new Dictionary <string, int>();  // Pizza 주문

            delFuncDow_Edge delDow     = new delFuncDow_Edge(fDow);
            delFuncDow_Edge delEdge    = new delFuncDow_Edge(fEdge);
            delFuncTopping  delTopping = null;

            int iDowOrder = 1;  int iEdgeOrder = 1;

            // 1.도우 확인
            if (rdoDow1.Checked)
            {
                dPizzaOrder.Add("오리지널", 1);
            }
            else if (rdoDow2.Checked)
            {
                iDowOrder = 2;
                dPizzaOrder.Add("씬", 1);
            }

            // 2.엣지 확인
            if (rdoEdge1.Checked)
            {
                dPizzaOrder.Add("리치골드", 1);
            }
            else if (rdoEdge2.Checked)
            {
                iEdgeOrder = 2;
                dPizzaOrder.Add("치즈크러스터", 1);
            }

            // Delegate
            fCallBackDelegate(iDowOrder, delDow);
            fCallBackDelegate(iEdgeOrder, delEdge);

            // 3. 토핑 확인
            if (cboxTopping1.Checked)
            {
                delTopping = new delFuncTopping(fTopping1);
                dPizzaOrder.Add("소세지", (int)numEa.Value);
            }
            if (cboxTopping2.Checked)
            {
                delTopping += fTopping2; //delegate체인
                dPizzaOrder.Add("감자", (int)numEa.Value);
            }
            delTopping("토핑", (int)numEa.Value);

            // 결과출력
            flboxOrderRed(string.Format("전체 주문 가격은 {0}원 입니다.", _iTotalPrice));
            frmLoadling(dPizzaOrder); //서브폼 호출
        }
Exemplo n.º 3
0
        private void btnOrder_Click(object sender, EventArgs e)
        {
            Dictionary <string, int> dPizzaOrder = new Dictionary <string, int>(); //Pizza 주문을 담을 그릇
            delFunc        dDow     = new delFunc(fDow);                           //delegate 호출
            delFunc        dEdge    = new delFunc(fEdge);
            delFuncTopping dTopping = null;

            int dowIdx  = 0;
            int edgeIdx = 0;

            //Dow
            if (rdoDow1.Checked)
            {
                dowIdx = 1;
                dPizzaOrder.Add("Original", 1);    //Dictionary에 key,value 추가
            }
            else if (rdoDow2.Checked)
            {
                dowIdx = 2;
                dPizzaOrder.Add("Napoli", 1);
            }
            else if (rdoDow3.Checked)
            {
                dowIdx = 3;
                dPizzaOrder.Add("Thin", 1);
            }

            //dDow(dowIdx);

            //Edge
            if (rdoEdge1.Checked)
            {
                edgeIdx = 1;
                dPizzaOrder.Add("Rich Gold", 1);
            }
            else if (rdoEdge2.Checked)
            {
                edgeIdx = 2;
                dPizzaOrder.Add("Cheese Crust", 2);
            }
            //dEdge(edgeIdx);

            fCallBack(dowIdx, dDow);
            fCallBack(edgeIdx, dEdge);

            if (cBoxTopping1.Checked)
            {
                dTopping += fTopping1;      //delegate chain(함수를 연결시킴)
                dPizzaOrder.Add("Pepperoni", 1);
            }
            if (cBoxTopping2.Checked)
            {
                dTopping += fTopping2;
                dPizzaOrder.Add("Potato", 1);
            }
            if (cBoxTopping3.Checked)
            {
                dTopping += fTopping3;
                dPizzaOrder.Add("Meat", 1);
            }
            if (cBoxTopping4.Checked)
            {
                dTopping += fTopping4;
                dPizzaOrder.Add("White Mushroom", 1);
            }
            if (cBoxTopping5.Checked)
            {
                dTopping += fTopping5;
                dPizzaOrder.Add("Paprika", 1);
            }

            if (dTopping == null)
            {
                fOrderError("Topping");
            }
            else
            {
                dTopping();
                fEndOrder("------------------------------------");
                fEndOrder(string.Format("Total Price is {0}.", totalPrice));
                frmLoading(dPizzaOrder);
            }
        }
Exemplo n.º 4
0
        private void btnOrder_Click(object sender, EventArgs e)
        {
            Dictionary <string, int> dPizzaOrder = new Dictionary <string, int>();

            delFuncDow_Edge delDow  = new delFuncDow_Edge(fDow);
            delFuncDow_Edge delEdge = new delFuncDow_Edge(fEdge);

            delFuncTopping delTopping = null;

            int iDowOrder  = 0;
            int iEdgeOrder = 0;

            //도우를 선택
            if (rdoDow1.Checked)
            {
                iDowOrder = 1;
                dPizzaOrder.Add("오리지널", 1);
            }
            else if (rdoDow2.Checked)
            {
                iDowOrder = 2;
                dPizzaOrder.Add("씬", 2);
            }

            // delDow(iDowOrder);

            //Edge를 선택
            if (rdoEdge1.Checked)
            {
                iEdgeOrder = 1;
                dPizzaOrder.Add("리치골드", 1);
            }
            else if (rdoEdge2.Checked)
            {
                iEdgeOrder = 2;
                dPizzaOrder.Add("치즈클러스터", 1);
            }

            // delEdge(iEdgeOrder);
            // 좋은 지 모르 겠음
            fCallBackDelegate(iDowOrder, delDow);
            fCallBackDelegate(iEdgeOrder, delEdge);

            if (cboxTopping1.Checked)
            {
                //delTopping = new delFuncTopping(fTopping1);
                delTopping += fTopping1;
                dPizzaOrder.Add("소세지", (int)numEa.Value);
            }

            if (cboxTopping2.Checked)
            {
                //delTopping = new delFuncTopping(fTopping1);
                delTopping += fTopping2;
                dPizzaOrder.Add("감자", (int)numEa.Value);
            }
            if (cboxTopping3.Checked)
            {
                //delTopping = new delFuncTopping(fTopping1);
                delTopping += fTopping3;
                dPizzaOrder.Add("치즈", (int)numEa.Value);
            }

            delTopping("토핑", (int)numEa.Value);

            flboxOrderRed("---------------------------------");
            flboxOrderRed(string.Format("전체 주문 가격은 {0}원 입니다.", _iTotalPrice));

            frmLoading(dPizzaOrder);
        }
Exemplo n.º 5
0
        /* ★주문하기 버튼★ */
        private void btnOrder_Click(object sender, EventArgs e)
        {
            Dictionary <string, int> dPizzaOrder = new Dictionary <string, int>(); // ★ Pizza 주문을 담을 그릇 (Key : 주문 종류, value : 개수)


            delFuncDow_Edge delDow  = new delFuncDow_Edge(fDow);  // int 도우  함수 fDow와 연결
            delFuncDow_Edge delEdge = new delFuncDow_Edge(fEdge); // int 엣지  함수 fEdge와 연결


            int iDowOrder  = 0;
            int iEdgeOrder = 0;

            if (rdoDow1.Checked)
            {
                iDowOrder = 1;
                dPizzaOrder.Add("오리지널", 1);  //사장님 오리지널 하나요^^
            }
            else if (rdoDow2.Checked)
            {
                iDowOrder = 2;
                dPizzaOrder.Add("씬", 1);
            }
            //delDow(iDowOrder);    return _iTotalPirce

            if (rdoEdge1.Checked)
            {
                iEdgeOrder = 1;
                dPizzaOrder.Add("리치골드", 1);
            }
            else if (rdoEdge2.Checked)
            {
                iEdgeOrder = 2;
                dPizzaOrder.Add("치즈크러스트", 1);
            }

            //delEdge(iEdgeOrder);   return _iTotalPrice


            // fCallBackDelegate 함수에다가 int타입, delegate호출(함수호출이 아님 함수대리자 delegate)
            // ★ delegate랑 연결한 함수 fDow와 fEdge에 iDowOrder값 넘겨주고, iEdgeOrder값 넘겨줌! delegate이용해서!! ★
            // fDow(iDowOrder)
            // fEdge(iEdgeOrder)  랑 같은맥락
            fCallBackDelegate(iDowOrder, fDow);        //delDow(iDowOrder);
            fCallBackDelegate(iEdgeOrder, fEdge);      //delEdge(iEdgeOrder);



            delFuncTopping delTopping = null;      //토핑종류(string), 추가횟수(int)

            /* 토핑 선택 확인 */
            if (cboxTopping1.Checked)
            {
                delTopping = new delFuncTopping(fTopping1);           // ★ delegate인 delTopping과 함수인 fTopping1 연결


                dPizzaOrder.Add("소세지", (int)numEa.Value);
            }

            if (cboxTopping2.Checked)
            {
                delTopping += fTopping2;
                dPizzaOrder.Add("감자", (int)numEa.Value);
            }

            if (cboxTopping3.Checked)
            {
                delTopping += fTopping3;
                dPizzaOrder.Add("치즈", (int)numEa.Value);
            }

            if (!cboxTopping1.Checked && !cboxTopping2.Checked && !cboxTopping3.Checked)
            {
                delTopping = delTopping + fTopping4;
            }

            // ★ delegate인 delTopping
            int Result = delTopping("토핑", (int)numEa.Value);   //string,int


            flboxOrderText("----------------------------------");
            flboxOrderText(string.Format("전체 주문가격은 {0}원 입니다.", _iTotalPrice));
            flboxOrderText("\r\n");



            //주문하기 버튼 누르면 frmPizza.cs 폼 작업!! frmLoading에 매개변수를 딕셔너리로 dPizzaOrder(모든값 다 가지고있음)
            frmLoading(dPizzaOrder);
        }
Exemplo n.º 6
0
        private void btnOrder_Click(object sender, EventArgs e)
        {
            Dictionary <string, int> dPizzaOrder = new Dictionary <string, int>();

            delFuncDow_Edge delDow  = new delFuncDow_Edge(fDow);
            delFuncDow_Edge delEdge = new delFuncDow_Edge(fEdge);

            delFuncTopping delTopping = null;

            int iDowOrder  = 0;
            int iEdgeOrder = 0;

            _iTotalPrice = 0;
            lbResult.Items.Clear();

            if (rbOrigin.Checked)
            {
                iDowOrder = 1;
                dPizzaOrder.Add("오리지널", 1);
            }
            else if (rbThin.Checked)
            {
                iDowOrder = 2;
                dPizzaOrder.Add("씬", 1);
            }

            delDow.Invoke(iDowOrder);

            if (rbRich.Checked)
            {
                iEdgeOrder = 1;
                dPizzaOrder.Add("리치골드", 1);
            }
            else if (rbCrust.Checked)
            {
                iEdgeOrder = 2;
                dPizzaOrder.Add("치즈크러스터", 1);
            }

            delEdge.Invoke(iEdgeOrder);

            //delDow.Invoke(iDowOrder); ==> fCallBackDelegate(iDowOrder, delDow);
            //delEdge.Invoke(iEdgeOrder); ==> fCallBackDelegate(iEdgeOrder, delEdge);

            if (cbSoce.Checked)
            {
                delTopping += fTopping1;
                dPizzaOrder.Add("소세지", (int)nudEa.Value);
            }

            if (cbPote.Checked)
            {
                delTopping += fTopping2;
                dPizzaOrder.Add("감자", (int)nudEa.Value);
            }

            if (cbChee.Checked)
            {
                delTopping += fTopping3;
                dPizzaOrder.Add("치즈", (int)nudEa.Value);
            }

            if ((cbSoce.Checked || cbPote.Checked || cbChee.Checked) && (nudEa.Value >= 1))
            {
                delTopping("토핑", (int)nudEa.Value);
            }

            string strTotal = string.Format("총 주문 금액은 {0} 원 입니다.", _iTotalPrice.ToString());

            fLbOrderRed("-------------------------------------------");
            fLbOrderRed(strTotal);

            frmLoading(dPizzaOrder);
        }
Exemplo n.º 7
0
        private void btnOrder_Click(object sender, EventArgs e)
        {
            delFuncDow_Edge delDow     = new delFuncDow_Edge(fDow);
            delFuncDow_Edge delEdge    = new delFuncDow_Edge(fEdge);
            delFuncTopping  delTopping = null;

            Dictionary <string, int> dpOrder = new Dictionary <string, int>();       // pizza 주문을 담을 그릇


            int iOrder     = 0;
            int iEdgeOrder = 0;

            if (rdoDow1.Checked)
            {
                iOrder = 1;
                dpOrder.Add("오리지널", 1);
            }
            else if (rdoDow2.Checked)
            {
                iOrder = 2;
                dpOrder.Add("씬", 1);
            }
            // _iTotlaPrice = delDow(iOrder);


            if (rdoEdge1.Checked)
            {
                iEdgeOrder = 1;
                dpOrder.Add("리치골드", 1);
            }
            else if (rdoEdge2.Checked)
            {
                iEdgeOrder = 2;
                dpOrder.Add("치즈크러스트", 1);
            }
            // _iTotlaPrice = delEdge(iEdgeOrder);

            //callback사용하는 방식으로...
            fCallBackDelegate(iOrder, delDow);
            fCallBackDelegate(iEdgeOrder, delEdge);

            if (chkTopping1.Checked)
            {
                // delTopping = new delFuncTopping(fTooping1);
                delTopping += fTooping1;
                dpOrder.Add("소세지", (int)numEa.Value);
            }
            if (chkTopping2.Checked)
            {
                delTopping += fTooping2;
                dpOrder.Add("감자", (int)numEa.Value);
            }
            if (chkTopping3.Checked)
            {
                delTopping += fTooping3;
                dpOrder.Add("치즈", (int)numEa.Value);
            }


            // 델리게이트 체인으로 함수들을 한번에 호출한다.
            delTopping("토핑", (int)numEa.Value);

            listBoxOrderAdd("--------------------------------------------------");
            listBoxOrderAdd(string.Format("전체 주문 가격은 {0} 원 입니다.", _iTotlaPrice));


            frmLoading(dpOrder);
        }