Beispiel #1
0
        private void ShowGraphEditor()
        {
            // Open an editor for this graph
            GraphEditorWindow window = CreateInstance <GraphEditorWindow>();

            // TODO: Ensure only one window instance per-graph is open

            window.Show();
            window.Load(target as Graph);
        }
Beispiel #2
0
        protected virtual void ShowGraphEditor()
        {
            // Open an editor for this graph
            GraphEditorWindow window = CreateInstance <GraphEditorWindow>();

            // TODO: Ensure only one window instance per-graph is open
            window.make_side_menu = BuildSideMenu;
            window.Show();
            window.Load(target as Graph);
        }
Beispiel #3
0
        public CanvasView(GraphEditorWindow window)
        {
            EditorWindow = window;
            name         = "bluegraph-canvas";

            styleSheets.Add(Resources.Load <StyleSheet>("BlueGraphEditor/Variables"));
            styleSheets.Add(Resources.Load <StyleSheet>("BlueGraphEditor/CanvasView"));
            AddToClassList("canvasView");

            edgeConnectorListener = new EdgeConnectorListener(this);
            searchWindow          = ScriptableObject.CreateInstance <SearchWindow>();
            searchWindow.Target   = this;

            SetupZoom(ContentZoomer.DefaultMinScale, ContentZoomer.DefaultMaxScale);

            this.AddManipulator(new ContentDragger());
            this.AddManipulator(new SelectionDragger());
            this.AddManipulator(new RectangleSelector());
            this.AddManipulator(new ClickSelector());

            // Add event handlers for shortcuts and changes
            RegisterCallback <KeyUpEvent>(OnGraphKeyUp);
            RegisterCallback <MouseMoveEvent>(OnGraphMouseMove);

            graphViewChanged = OnGraphViewChanged;

            RegisterCallback <AttachToPanelEvent>(c => { Undo.undoRedoPerformed += OnUndoRedo; });
            RegisterCallback <DetachFromPanelEvent>(c => { Undo.undoRedoPerformed -= OnUndoRedo; });

            nodeCreationRequest = (ctx) => OpenSearch(ctx.screenMousePosition);

            // Add handlers for (de)serialization
            serializeGraphElements = OnSerializeGraphElements;
            canPasteSerializedData = OnTryPasteSerializedData;
            unserializeAndPaste    = OnUnserializeAndPaste;

            RegisterCallback <GeometryChangedEvent>(OnFirstResize);

            title = new Label("BLUEGRAPH");
            title.AddToClassList("canvasViewTitle");
            Add(title);

            // Add a grid renderer *behind* content containers
            Insert(0, new GridBackground());
        }