public WatchVariableNumberWrapper( WatchVariable watchVar, WatchVariableControl watchVarControl, int?roundingLimit = DEFAULT_ROUNDING_LIMIT, bool?displayAsHex = DEFAULT_DISPLAY_AS_HEX, bool useCheckbox = DEFAULT_USE_CHECKBOX, WatchVariableCoordinate?coordinate = null) : base(watchVar, watchVarControl, useCheckbox) { if (roundingLimit.HasValue) { roundingLimit = MoreMath.Clamp(roundingLimit.Value, 0, MAX_ROUNDING_LIMIT); } _roundingLimit = roundingLimit; _displayAsHex = displayAsHex ?? DEFAULT_DISPLAY_AS_HEX; _displayAsNegated = false; AddCoordinateContextMenuStripItems(); AddNumberContextMenuStripItems(); if (coordinate != null) { WatchVariableCoordinateManager.NotifyCoordinate(coordinate.Value, this); } }
public WatchVariableNumberWrapper( WatchVariable watchVar, WatchVariableControl watchVarControl, Type displayType = DEFAULT_DISPLAY_TYPE, int?roundingLimit = DEFAULT_ROUNDING_LIMIT, bool?displayAsHex = DEFAULT_DISPLAY_AS_HEX, bool useCheckbox = DEFAULT_USE_CHECKBOX, Coordinate?coordinate = null) : base(watchVar, watchVarControl, useCheckbox) { _displayType = displayType; _defaultRoundingLimit = roundingLimit ?? DEFAULT_ROUNDING_LIMIT; _roundingLimit = _defaultRoundingLimit; if (_roundingLimit < -1 || _roundingLimit > MAX_ROUNDING_LIMIT) { throw new ArgumentOutOfRangeException(); } _defaultDisplayAsHex = displayAsHex ?? DEFAULT_DISPLAY_AS_HEX; _displayAsHex = _defaultDisplayAsHex; AddCoordinateContextMenuStripItems(); AddNumberContextMenuStripItems(); if (coordinate != null) { WatchVariableCoordinateManager.NotifyCoordinate(coordinate.Value, this); } }