コード例 #1
0
        //Callback called from the framework.. It updates the Message, Last 4 elements on the stack, the Registers etc..
        private void RefreshView(object sender, EventArgs e)
        {
            var message      = "";
            var eventMessage = (EventMessage)e;

            if (eventMessage != null)
            {
                message = eventMessage.Message;
            }
            labelMsg.Text = message;

            var lastFour = calcFramework.GetLastFour();

            labelX.Text = lastFour[0].Value.ToString();
            labelY.Text = lastFour[1].Value.ToString();
            labelZ.Text = lastFour[2].Value.ToString();
            labelT.Text = lastFour[3].Value.ToString();

            var Registers = calcFramework.GetRegisters();

            lblReg0.Text = Registers[0]; lblReg1.Text = Registers[1]; lblReg2.Text = Registers[2];
            lblReg3.Text = Registers[3]; lblReg4.Text = Registers[4]; lblReg5.Text = Registers[5];
            lblReg6.Text = Registers[6]; lblReg7.Text = Registers[7]; lblReg8.Text = Registers[8];
            lblReg9.Text = Registers[9];

            labelInput.Text = calcFramework.GetInput();
            labelState.Text = calcFramework.GetState();

            var savedProgram = calcFramework.GetSavedProgram();

            if (savedProgram != "")
            {
                lblSavedProgram.Visible = true;
                pnlSavedProgram.Visible = true;
                labelSavedProg.Visible  = true;
                labelSavedProg.Text     = savedProgram;
            }

            var isRad     = calcFramework.IsRad();
            var isInverse = calcFramework.IsInverse();

            if (isRad)
            {
                lblDegree.Text = "RAD";
            }
            else
            {
                lblDegree.Text = "DEG";
            }

            if (isInverse)
            {
                lblInverse.Text = "YES";
            }
            else
            {
                lblInverse.Text = "NO";
            }
        }