If zero arguments are supplied, zero is used for all four sides. If one argument is supplied, that number is used for all four sides. If two arguments are supplied, the top and bottom sides get the first value, and the left and right sides get the second value. Otherwise there must be four arguments, in the order: top, right, bottom, left.
Optional
t: numberthe margin for the top side; if not supplied, all sides are zero.
Optional
r: numberthe margin for the right side; if not supplied, all sides have the value of the first argument.
Optional
b: numberthe margin for all bottom side; if not supplied, the top and bottom get the value of the first argument, and the right and left sides get the value of the second argument.
Optional
l: numberthe margin for the left side; must be supplied if the third argument was supplied.
Gets or sets the bottom value of this margin. Default is 0.
Gets or sets the left value of this margin. Default is 0.
Gets or sets the right value of this margin. Default is 0.
Gets or sets the top value of this margin. Default is 0.
Virtual
copyIndicates whether the given margin is equal to this Margin.
top.
right.
bottom.
left.
True if the two Margins have identical Top and Right and Bottom and Left values, false otherwise.
Static
parseThis static function can be used to read in a Margin from a string that was produced by Margin.stringify.
go.Margin.parse("1 2 3 4")
produces the Margin new go.Margin(1, 2, 3, 4)
.
Static
stringifyThis static function can be used to write out a Margin as a string that can be read by Margin.parse.
go.Margin.stringify(new go.Margin(1, 2, 3, 4))
produces the string "1 2 3 4".
Static
stringifyThis static function returns a function that can be used as a back converter for a Binding to write out a Margin's values as numbers with a fixed number of digits after the decimal point.
This is useful for limiting the size of JSON output and making it more legible. It might also be useful for regression testing.
Example:
new go.Binding("margin", "margin", go.Margin.parse, go.Margin.stringifyFixed(0))
must be a non-negative integer
a function that converts a Margin to a string without so many decimals
This static function returns a function that can be used as a back converter for a Binding to write out a Margin's values as numbers with a fixed number of digits after the decimal point.
This is useful for limiting the size of JSON output and making it more legible. It might also be useful for regression testing.
Example:
new go.Binding("margin", "margin", go.Margin.parse, go.Margin.stringifyFixed(0))
a function that converts a Margin to a string without so many decimals
A Margin represents a band of space outside or inside a rectangular area, with possibly different values on each of the four sides.
Example uses include GraphObject.margin, Panel.padding, and Diagram.padding.
Use the static functions Margin.parse and Margin.stringify to convert to and from a standard string representation that is independent of the current locale.
When an instance of this class is the value of a property of a GraphObject class or Diagram or CommandHandler or a Tool class, you should treat the object as if it were frozen or read-only -- you cannot modify its properties. This allows the property to return a value without allocating a new instance. If you need to do your own calculations with the value, call copy to make a new instance with the same values that you can modify.
Many methods modify the object's properties and then return a reference to "this" object. The only instance method to allocate a new object is the copy method. The static Margin.parse method also allocates a new object.
The "Debug" implementation of this class is significantly slower than the "Release" implementation, mostly due to additional error checking.
You cannot inherit from this class.