Example #1
0
 /// <summary>
 /// Constructs a new limit from the provided properties.
 /// </summary>
 /// <param name="limitData">Linear limit specific properties.</param>
 /// <param name="commonData">Properties common to all limit types.</param>
 public LimitLinear(LimitLinearData limitData, LimitCommonData commonData)
     : base(commonData)
 {
     this.data = limitData;
 }
Example #2
0
 /// <summary>
 /// Constructs a new limit from the provided properties.
 /// </summary>
 /// <param name="limitData">Linear limit specific properties.</param>
 /// <param name="commonData">Properties common to all limit types.</param>
 public LimitLinear(LimitLinearData limitData, LimitCommonData commonData)
     : base(commonData)
 {
     this.data = limitData;
 }
Example #3
0
        /// <summary>
        /// Constructs a new set of GUI elements for inspecting the limit object.
        /// </summary>
        /// <param name="limit">Initial values to assign to the GUI elements.</param>
        /// <param name="layout">Layout to append the GUI elements to.</param>
        /// <param name="properties">A set of properties that are persisted by the parent inspector. Used for saving state.
        ///                          </param>
        public LimitLinearGUI(LimitLinear limit, GUILayout layout, SerializableProperties properties)
        {
            limitData = limit.Data;

            limitExtentField.OnChanged += x => { limitData.extent = x; MarkAsModified(); };
            limitExtentField.OnFocusLost += ConfirmModify;

            layout.AddElement(limitExtentField);
            limitCommonGUI = new LimitCommonGUI("linear", limit.CommonData, layout, properties);
            limitCommonGUI.OnChanged += x => MarkAsModified();
            limitCommonGUI.OnConfirmed += ConfirmModify;
        }