protected void DrawTRS(TRS_SP trsSP, TRS type, string label) { const float RANGE_LABEL_WIDTH = 42; EditorGUILayout.LabelField(System.Enum.GetName(typeof(TRS), type) + ":", (GUIStyle)"BoldLabel"); EditorGUILayout.BeginVertical("HelpBox"); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField(addVectorContent, GUILayout.MaxWidth(RANGE_LABEL_WIDTH)); DrawAxes(trsSP.addVector, AxisMask.XYZ); EditorGUILayout.LabelField("/sec", GUILayout.MaxWidth(32)); EditorGUILayout.EndHorizontal(); /// Local EditorGUI.BeginDisabledGroup(type == TRS.Scale); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Local", GUILayout.MaxWidth(RANGE_LABEL_WIDTH)); EditorGUILayout.GetControlRect(GUILayout.MaxWidth(AXIS_LAB_WID)); EditorGUILayout.PropertyField(trsSP.local, GUIContent.none); EditorGUILayout.EndHorizontal(); EditorGUI.EndDisabledGroup(); EditorGUILayout.EndVertical(); }
protected void DrawHorizontalTRS(TRS_SP trsSP, TRS type, string label) { EditorGUILayout.BeginVertical("HelpBox"); { /// Restrict EditorGUILayout.PropertyField(trsSP.includeAxes, new GUIContent(label + " Axes")); if (trsSP.includeAxes.intValue != 0) { /// Relation EditorGUILayout.PropertyField(trsSP.relation); /// Local EditorGUI.BeginDisabledGroup(type == TRS.Scale); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Local", GUILayout.MaxWidth(RANGE_LABEL_WIDTH)); EditorGUILayout.GetControlRect(GUILayout.MaxWidth(AXIS_LAB_WID)); EditorGUILayout.PropertyField(trsSP.local, GUIContent.none); EditorGUILayout.EndHorizontal(); EditorGUI.EndDisabledGroup(); } } EditorGUILayout.EndVertical(); }
protected void InitSP(SerializedProperty trs, TRS_SP trsSP) { trsSP.addVector = trs.FindPropertyRelative("addVector"); trsSP.relation = trs.FindPropertyRelative("relation"); trsSP.includeAxes = trs.FindPropertyRelative("includeAxes"); trsSP.local = trs.FindPropertyRelative("local"); }