private void DrawBCL() { EditorGUI.LabelField(new Rect(paddedleft + 12, line, 60, LINEHEIGHT), showBclContent, (GUIStyle)"MiniLabel"); //bool bclToggle = EditorGUI.Foldout(new Rect(paddedleft, line, 16, LINEHEIGHT), fc.expandBCL, GUIContent.none/*, (GUIStyle)"OL Toggle"*/); bool bclToggle = EditorGUI.Toggle(new Rect(paddedleft, line, 32, LINEHEIGHT), GUIContent.none, fc.expandBCL, (GUIStyle)"Foldout"); if (fc.expandBCL != bclToggle) { haschanged = true; Undo.RecordObject(p.serializedObject.targetObject, "Toggle Show BCL Details"); fc.expandBCL = bclToggle; } float labelw = 48; float fieldL = ir.xMin + labelw; float fieldw = ir.width - labelw; float fldWdth4th = fieldw / 4; float fldWdth8th = fieldw / 8; float fldWdth16th = fieldw / 16; if (fc.expandBCL) { SolidTextures.DrawTexture(new Rect(fieldL, line, fieldw, BCL_HEIGHT - SPACING), SolidTextures.darken052D); } DrawBCLField(BitCullingLevel.DropAll, fieldL, fldWdth4th, fldWdth8th, fldWdth16th); DrawBCLField(BitCullingLevel.DropHalf, fieldL, fldWdth4th, fldWdth8th, fldWdth16th); DrawBCLField(BitCullingLevel.DropThird, fieldL, fldWdth4th, fldWdth8th, fldWdth16th); DrawBCLField(BitCullingLevel.NoCulling, fieldL, fldWdth4th, fldWdth8th, fldWdth16th); line += LINEHEIGHT; if (!fc.expandBCL) { return; } //SolidTextures.DrawTexture(new Rect(paddedleft, line -1, paddedwidth, 1), SolidTextures.contrastgray2D); EditorGUI.LabelField(new Rect(paddedleft, line, labelw, LINEHEIGHT), "bits", (GUIStyle)"MiniLabel"); // Reset Button if (GUI.Button(new Rect(fieldL - 18 - 2, line, 18, LINEHEIGHT), rstLabel, (GUIStyle)"minibuttonleft")) { haschanged = true; Undo.RecordObject(p.serializedObject.targetObject, "Reset BCL To Default"); fc.SetBits(fc.Bits); } line += LINEHEIGHT; EditorGUI.LabelField(new Rect(paddedleft, line, labelw, LINEHEIGHT), "zones", (GUIStyle)"MiniLabel"); line += LINEHEIGHT; line += SPACING; }