Ejemplo n.º 1
0
        private void SelectActionType(MacroActionType actionType)
        {
            if (_macroActionItem != null)
            {
                _macroActionItem.MacroActionItemChanged -= MacroActionItem_MacroActionItemChanged;
                _macroActionItem.Dispose();
                panelAction.Controls.Remove((Control)_macroActionItem);
                _macroActionItem = null;
            }

            linkLabelActionType.Text = actionType.ToString();

            switch (actionType)
            {
            case MacroActionType.Start:
            case MacroActionType.Stop:
            case MacroActionType.Restart:
                ProcessActionBundle?.ChangeActionType(actionType);
                ActionBundle     = ProcessActionBundle ?? new MacroActionBundle(actionType);
                _macroActionItem = new MacroProcessActionItem(ProcessActionBundle);
                break;

            case MacroActionType.Distribute:
                ActionBundle     = DistributionActionBundle ?? new MacroActionBundle(actionType);
                _macroActionItem = new MacroDistributionActionItem(DistributionActionBundle);
                break;

            case MacroActionType.Wait:
                ActionBundle     = WaitActionBundle ?? new MacroActionBundle(actionType);
                _macroActionItem = new MacroWaitActionItem(WaitActionBundle);
                break;
            }

            if (_macroActionItem != null)
            {
                labelSeparator.Visible = true;
                _macroActionItem.MacroActionItemChanged += MacroActionItem_MacroActionItemChanged;
                _macroActionItem.SetWidth(panelAction.Width);
                panelAction.Controls.Add((Control)_macroActionItem);
            }
        }
Ejemplo n.º 2
0
 public void SetWidth(int width)
 {
     Width = width;
     _macroActionItem?.SetWidth(panelAction.Width);
 }