public void SetEditWorkspaceMode(bool enable, RobotWorkspace workspace, MovableValueTypes editValues) { gbWorkspaceInfo.Text = "Рабочая зона: " + (enable ? workspace.Name : ""); IsEditWorkspaceMode = enable; lstWorkspaces.Enabled = !enable; var hasNotNoneFlag = !editValues.HasFlag(MovableValueTypes.None); setMaxValueMI.Visible(hasNotNoneFlag && editValues.HasFlag(MovableValueTypes.Max)); setMinValueMI.Visible(hasNotNoneFlag && editValues.HasFlag(MovableValueTypes.Min)); setZeroValueMI.Visible(hasNotNoneFlag && editValues.HasFlag(MovableValueTypes.Zero)); removeZeroValueMI.Visible(editValues.HasFlag(MovableValueTypes.Zero)); editValuesSeparatorMI.Visible = hasNotNoneFlag; setAsActiveWorkspaceMI.Visible(!enable); editWorkspaceValuesMI.Visible(!enable); editWorkspaceSeparatorMI.Visible = !enable; removeWorkspaceMI.Visible(!enable); addWorkspaceMI.Visible(!enable); renameWorkspace.Visible(!enable); saveWorkspaceValuesMI.Visible(enable); closeEditWorkspaceModeMI.Visible(enable); }
/// <summary> /// Устанавливает новое значение для рабочей зоны плеча. /// </summary> /// <param name="type">Тип плеча</param> /// <param name="valueType">Тип значения</param> /// <param name="ab">Новое значение</param> public void SetValue(LeverType type, MovableValueTypes valueType, double ab) { var lever = GetLeverByType(type); switch (valueType) { case MovableValueTypes.Max: lever.ABmax = ab; break; case MovableValueTypes.Min: lever.ABmin = ab; break; case MovableValueTypes.Zero: lever.ABzero = ab; break; default: throw new NotImplementedException(); } }
/// <summary> /// Предоставляет данные собитий по изменению параметров рабочей зоны плеча. /// </summary> /// <param name="leverType">Тип плеча</param> /// <param name="valueType">Тип изменяемого значения</param> public EditWorkspaceEventArgs(LeverType leverType, MovableValueTypes valueType) { LeverType = leverType; ValueType = valueType; }