public override void DrawPreview(Rect rect)
            {
                space = rect.AdjustToRatio(SpaceWidth, SpaceHeight);
                foreach (var scene in Controller.Instance.ChapterList.getSelectedChapterDataControl().getScenesList().getScenes())
                {
                    DrawScene(scene);
                }

                foreach (var scene in Controller.Instance.ChapterList.getSelectedChapterDataControl().getScenesList().getScenes())
                {
                    foreach (var exit in scene.getExitsList().getExits())
                    {
                        DrawExit(scene, exit);
                    }
                }
            }
Пример #2
0
            public override void DrawPreview(Rect rect)
            {
                space = rect.AdjustToRatio(SPACE_WIDTH, SPACE_HEIGHT);
                UpdatePositions();

                foreach (var scene in Controller.Instance.ChapterList.getSelectedChapterDataControl().getScenesList().getScenes())
                {
                    DrawScene(scene);
                }

                foreach (var scene in Controller.Instance.ChapterList.getSelectedChapterDataControl().getScenesList().getScenes())
                {
                    foreach (var exit in scene.getExitsList().getExits())
                    {
                        DrawExit(scene, exit);
                    }
                }
            }
Пример #3
0
        public override void DrawPreview(Rect rect)
        {
            // We first fix the ratio of the rect
            var viewport = rect.AdjustToRatio(800f / 600f);

            GUI.DrawTexture(viewport, backgroundPreview, ScaleMode.ScaleToFit);

            bool selected;

            if (Event.current.type == EventType.MouseDown)
            {
                SelectedArrow = -1;
            }

            // Draw the left arrow
            if (leftNormalArrow)
            {
                EditorGUI.BeginChangeCheck();
                var leftArrowPos = DoArrow(workingBook.getPreviousPagePosition(), leftNormalArrow, leftOverArrow, viewport, false, out selected, "Arrow left".GetHashCode());
                if (EditorGUI.EndChangeCheck())
                {
                    workingBook.setPreviousPagePosition(leftArrowPos);
                }
                if (selected)
                {
                    SelectedArrow = BookDataControl.ARROW_LEFT;
                }
            }

            if (rightNormalArrow)
            {
                EditorGUI.BeginChangeCheck();
                var isDefault     = workingBook.getArrowImagePath(BookDataControl.ARROW_RIGHT, BookDataControl.ARROW_NORMAL) == SpecialAssetPaths.ASSET_DEFAULT_ARROW_NORMAL_RIGHT;
                var rightArrowPos = DoArrow(workingBook.getNextPagePosition(), rightNormalArrow, rightOverArrow, viewport, isDefault, out selected, "Arrow right".GetHashCode());
                if (EditorGUI.EndChangeCheck())
                {
                    workingBook.setNextPagePosition(rightArrowPos);
                }
                if (selected)
                {
                    SelectedArrow = BookDataControl.ARROW_RIGHT;
                }
            }
        }
Пример #4
0
        protected override void BeforeDrawElements(Rect rect)
        {
            PushMatrix();
            Viewport = rect.AdjustToRatio(Size.x / Size.y);

            Matrix *= Matrix4x4.TRS(Viewport.position, Quaternion.identity,
                                    new Vector3(Viewport.width / Size.x, Viewport.height / Size.y, 1f));

            if (workingScene.getSelectedResources() != lastSelectedResources)
            {
                RefreshSceneResources(workingScene);
            }

            // Background
            if (backgroundPreview)
            {
                GUI.DrawTexture(Viewport, backgroundPreview, ScaleMode.ScaleToFit);
            }
        }
Пример #5
0
        public void Draw(Rect rect)
        {
            if (workingScene == null)
            {
                return;
            }

            var previousCurrent = Current;

            Current = this;

            Viewport = rect.AdjustToRatio(Size.x / Size.y);

            if (workingScene.getSelectedResources() != lastSelectedResources)
            {
                RefreshSceneResources(workingScene);
            }

            // Background
            if (backgroundPreview)
            {
                GUI.DrawTexture(Viewport, backgroundPreview, ScaleMode.ScaleToFit);
            }

            var wantsToDeselect = Event.current.type == EventType.MouseDown && rect.Contains(Event.current.mousePosition);

            SelectedElement = UpdateAndRenderElements(wantsToDeselect);
            DrawGizmos();
            DrawGizmosSelected();

            if (foregroundPreview)
            {
                GUI.DrawTexture(Viewport, foregroundPreview, ScaleMode.ScaleToFit);
            }

            Current = previousCurrent;
        }
Пример #6
0
 public static Rect AdjustToRatio(this Rect rect, float width, float height)
 {
     return(rect.AdjustToRatio(width / height));
 }