Exemplo n.º 1
0
        private void UpdateProcessInstanceButtons(ProcessInstance instance)
        {
            instanceRestartToolStripButton.Enabled      = false;
            instanceStopToolStripButton.Enabled         = false;
            instanceDeleteToolStripButton.Enabled       = false;
            instanceViewFlowToolStripButton.Enabled     = false;
            instanceRetryToolStripButton.Enabled        = false;
            instanceGotoActivityToolStripButton.Enabled = false;

            if (instance == null)
            {
                return;
            }

            switch (instance.GetProcessInstanceStatus())
            {
            case ProcessInstanceStatus.Error:
                instanceRetryToolStripButton.Enabled = true;
                break;

            case ProcessInstanceStatus.Running:
                instanceStopToolStripButton.Enabled = true;
                break;

            case ProcessInstanceStatus.Active:
                instanceStopToolStripButton.Enabled         = true;
                instanceDeleteToolStripButton.Enabled       = true;
                instanceGotoActivityToolStripButton.Enabled = true;
                instanceViewFlowToolStripButton.Enabled     = true;
                break;

            case ProcessInstanceStatus.Completed:
                break;

            case ProcessInstanceStatus.Stopped:
                instanceRestartToolStripButton.Enabled  = true;
                instanceDeleteToolStripButton.Enabled   = true;
                instanceViewFlowToolStripButton.Enabled = true;
                break;

            case ProcessInstanceStatus.Deleted:
                break;

            case ProcessInstanceStatus.Undefined:
                break;

            default:
                break;
            }
        }