void DrawArrow(float width) { QUI.BeginHorizontal(width); { QUI.QToggle("Show Arrow", showArrow); QUI.FlexibleSpace(); } QUI.EndHorizontal(); showArrowAnimBool.target = showArrow.boolValue; if (QUI.BeginFadeGroup(showArrowAnimBool.faded)) { QUI.BeginVertical(width); { QUI.Space(SPACE_2 * showArrowAnimBool.faded); QUI.BeginHorizontal(width); { QUI.QObjectPropertyField("Arrow", arrow, width - 4 - 100, 20, true); QUI.Space(SPACE_4 * showArrowAnimBool.faded); QUI.QObjectPropertyField("Scale", arrowScale, 100, 20, false); QUI.FlexibleSpace(); } QUI.EndHorizontal(); QUI.BeginHorizontal(width); { QUI.QToggle("Override Arrow Color", overrideArrowColor); QUI.Space(SPACE_2); if (overrideArrowColor.boolValue) { tempFloat = (width - 152) / 2; //color fields width QUI.QObjectPropertyField("Closed", arrowColorWhenClosed, tempFloat, 20, false); QUI.Space(SPACE_2); QUI.QObjectPropertyField("Opened", arrowColorWhenOpened, tempFloat, 20, false); } QUI.FlexibleSpace(); } QUI.EndHorizontal(); QUI.Space(SPACE_2); QUI.BeginHorizontal(width); { if (QUI.GhostButton("Reset Arrow Holder Pos", QColors.Color.Gray, (width - 4) / 3, 18)) { Undo.RecordObject(Drawer.leftDrawerArrowHolder, "Update Arrow Holder"); switch (Drawer.drawerCloseDirection) { case Gestures.SimpleSwipe.Left: UIDrawer.ResetArrowHolder(Drawer.leftDrawerArrowHolder, Drawer.drawerCloseDirection); break; case Gestures.SimpleSwipe.Right: UIDrawer.ResetArrowHolder(Drawer.rightDrawerArrowHolder, Drawer.drawerCloseDirection); break; case Gestures.SimpleSwipe.Up: UIDrawer.ResetArrowHolder(Drawer.upDrawerArrowHolder, Drawer.drawerCloseDirection); break; case Gestures.SimpleSwipe.Down: UIDrawer.ResetArrowHolder(Drawer.downDrawerArrowHolder, Drawer.drawerCloseDirection); break; } } QUI.Space(SPACE_2); if (QUI.GhostButton("Reset Closed Arrow Pos", QColors.Color.Gray, (width - 4) / 3, 18)) { Undo.RecordObject(Drawer.leftDrawerArrowClosedPosition, "Update Closed Arrow"); switch (Drawer.drawerCloseDirection) { case Gestures.SimpleSwipe.Left: UIDrawer.ResetClosedArrow(Drawer.leftDrawerArrowClosedPosition, Drawer.drawerCloseDirection); break; case Gestures.SimpleSwipe.Right: UIDrawer.ResetClosedArrow(Drawer.rightDrawerArrowClosedPosition, Drawer.drawerCloseDirection); break; case Gestures.SimpleSwipe.Up: UIDrawer.ResetClosedArrow(Drawer.upDrawerArrowClosedPosition, Drawer.drawerCloseDirection); break; case Gestures.SimpleSwipe.Down: UIDrawer.ResetClosedArrow(Drawer.downDrawerArrowClosedPosition, Drawer.drawerCloseDirection); break; } } QUI.Space(SPACE_2); if (QUI.GhostButton("Reset Opened Arrow Pos", QColors.Color.Gray, (width - 4) / 3, 18)) { Undo.RecordObject(Drawer.leftDrawerArrowOpenedPosition, "Update Opened Arrow"); switch (Drawer.drawerCloseDirection) { case Gestures.SimpleSwipe.Left: UIDrawer.ResetOpenedArrow(Drawer.leftDrawerArrowOpenedPosition, Drawer.drawerCloseDirection); break; case Gestures.SimpleSwipe.Right: UIDrawer.ResetOpenedArrow(Drawer.rightDrawerArrowOpenedPosition, Drawer.drawerCloseDirection); break; case Gestures.SimpleSwipe.Up: UIDrawer.ResetOpenedArrow(Drawer.upDrawerArrowOpenedPosition, Drawer.drawerCloseDirection); break; case Gestures.SimpleSwipe.Down: UIDrawer.ResetOpenedArrow(Drawer.downDrawerArrowOpenedPosition, Drawer.drawerCloseDirection); break; } } } QUI.EndHorizontal(); QUI.Space(SPACE_2); QUI.BeginHorizontal(width); { if (QUI.GhostButton("Copy - Opened Arrow Position - to - Closed Arrow Position", QColors.Color.Gray, width, 18)) { Undo.RecordObject(Drawer.leftDrawerArrowOpenedPosition, "Update Opened Arrow"); switch (Drawer.drawerCloseDirection) { case Gestures.SimpleSwipe.Left: UIDrawer.MatchRectTransform(Drawer.leftDrawerArrowClosedPosition, Drawer.leftDrawerArrowOpenedPosition); break; case Gestures.SimpleSwipe.Right: UIDrawer.MatchRectTransform(Drawer.rightDrawerArrowClosedPosition, Drawer.rightDrawerArrowOpenedPosition); break; case Gestures.SimpleSwipe.Up: UIDrawer.MatchRectTransform(Drawer.upDrawerArrowClosedPosition, Drawer.upDrawerArrowOpenedPosition); break; case Gestures.SimpleSwipe.Down: UIDrawer.MatchRectTransform(Drawer.downDrawerArrowClosedPosition, Drawer.downDrawerArrowOpenedPosition); break; } } } QUI.EndHorizontal(); QUI.Space(SPACE_2); QUI.BeginHorizontal(width); { if (QUI.GhostButton("Copy - Closed Arrow Position - to - Opened Arrow Position", QColors.Color.Gray, width, 18)) { Undo.RecordObject(Drawer.leftDrawerArrowClosedPosition, "Update Closed Arrow"); switch (Drawer.drawerCloseDirection) { case Gestures.SimpleSwipe.Left: UIDrawer.MatchRectTransform(Drawer.leftDrawerArrowOpenedPosition, Drawer.leftDrawerArrowClosedPosition); break; case Gestures.SimpleSwipe.Right: UIDrawer.MatchRectTransform(Drawer.rightDrawerArrowOpenedPosition, Drawer.rightDrawerArrowClosedPosition); break; case Gestures.SimpleSwipe.Up: UIDrawer.MatchRectTransform(Drawer.upDrawerArrowOpenedPosition, Drawer.upDrawerArrowClosedPosition); break; case Gestures.SimpleSwipe.Down: UIDrawer.MatchRectTransform(Drawer.downDrawerArrowOpenedPosition, Drawer.downDrawerArrowClosedPosition); break; } } } QUI.EndHorizontal(); QUI.Space(SPACE_2); if (QUI.GhostBar("Show Arrow References", showArrowReferences.target ? QColors.Color.Blue : QColors.Color.Gray, showArrowReferences, width * showArrowAnimBool.faded, MiniBarHeight)) { showArrowReferences.target = !showArrowReferences.target; } QUI.BeginHorizontal(width); { QUI.Space(SPACE_8 * showArrowReferences.faded); if (QUI.BeginFadeGroup(showArrowReferences.faded)) { QUI.BeginVertical(width - SPACE_8); { QUI.Space(SPACE_4 * showArrowReferences.faded); QUI.QObjectPropertyField("Arrow Container", arrowContainer, width - SPACE_8, 20, true); QUI.Space(SPACE_2 * showArrowReferences.faded); DrawArrowHolder("Left", leftDrawerArrowHolder, leftDrawerArrowClosedPosition, leftDrawerArrowOpenedPosition, width); QUI.Space(SPACE_2 * showArrowReferences.faded); DrawArrowHolder("Right", rightDrawerArrowHolder, rightDrawerArrowClosedPosition, rightDrawerArrowOpenedPosition, width); QUI.Space(SPACE_2 * showArrowReferences.faded); DrawArrowHolder("Up", upDrawerArrowHolder, upDrawerArrowClosedPosition, upDrawerArrowOpenedPosition, width); QUI.Space(SPACE_2 * showArrowReferences.faded); DrawArrowHolder("Down", downDrawerArrowHolder, downDrawerArrowClosedPosition, downDrawerArrowOpenedPosition, width); QUI.Space(SPACE_2 * showArrowReferences.faded); } QUI.EndVertical(); } QUI.EndFadeGroup(); } QUI.EndHorizontal(); QUI.Space(SPACE_2 * showArrowAnimBool.faded); } QUI.EndVertical(); } QUI.EndFadeGroup(); }