Exemplo n.º 1
0
        // Component with user preferences should be added to rootWidget at this moment
        public void Initialize()
        {
            var up = RootWidget.Components.Get <ViewNodeComponent>().ViewNode as FSViewNode;

            toolbar = new FilesystemToolbar(this);
            toolbar.TabTravesable = new TabTraversable();
            model = new Model(up.Path);
            InitializeWidgets();
            selectionPreviewSplitter.Stretches = Splitter.GetStretchesList(up.SelectionPreviewSplitterStretches, 1, 1);
            cookingRulesSplitter.Stretches     = Splitter.GetStretchesList(up.CookingRulesSplitterStretches, 1, 1);
            toggleCookingRules = new NodeToggler(crEditor.RootWidget, () => { crEditor.Invalidate(selection); });
            togglePreview      = new NodeToggler(preview.RootWidget, () => { preview.Invalidate(selection); });
            if (!up.ShowCookingRulesEditor)
            {
                toggleCookingRules.Toggle();
            }
            if (!up.ShowSelectionPreview)
            {
                togglePreview.Toggle();
            }
            foreach (var n in RootWidget.Descendants)
            {
                var w = n.AsWidget;
                if (w.TabTravesable != null)
                {
                    w.HitTestTarget = true;
                }
            }
        }
Exemplo n.º 2
0
        // Component with user preferences should be added to rootWidget at this moment
        public void Initialize()
        {
            var up = RootWidget.Components.Get <ViewNodeComponent>().ViewNode as FSViewNode;

            model   = new Model(up.Path);
            toolbar = new FilesystemToolbar(this, model);
            toolbar.TabTravesable = new TabTraversable();
            InitializeWidgets();
            selectionPreviewSplitter.Stretches = Splitter.GetStretchesList(up.SelectionPreviewSplitterStretches, 1, 1);
            cookingRulesSplitter.Stretches     = Splitter.GetStretchesList(up.CookingRulesSplitterStretches, 1, 1);
            toggleCookingRules = new NodeToggler(crEditor.RootWidget, () => { crEditor.Invalidate(selection); });
            togglePreview      = new NodeToggler(preview.RootWidget, () => { preview.Invalidate(selection); });
            if (!up.ShowCookingRulesEditor)
            {
                toggleCookingRules.Toggle();
            }
            if (!up.ShowSelectionPreview)
            {
                togglePreview.Toggle();
            }
            foreach (var n in RootWidget.Descendants)
            {
                var w = n.AsWidget;
                if (w.TabTravesable != null)
                {
                    w.HitTestTarget = true;
                }
            }
            RootWidget.Updating += (float delta) => {
                if (
                    RootWidget.Input.IsKeyPressed(Key.Control) &&
                    RootWidget.Input.WasKeyReleased(Key.L)
                    )
                {
                    toolbar.AddressBar.SetFocusOnEditor();
                }
            };
        }
Exemplo n.º 3
0
    private LevelData SerializeLevel(Level level)
    {
        LevelData levelData = new LevelData(level.Width, level.Height, level.Length);

        for (int x = 0; x < level.Width; x++)
        {
            for (int y = 0; y < level.Height; y++)
            {
                for (int z = 0; z < level.Length; z++)
                {
                    if (level.NodeMap[x, y, z].Id != 0)
                    {
                        NodeData nodeData = new NodeData(level.NodeMap[x, y, z]);
                        levelData.nodeDataList.Add(nodeData);
                    }
                    if (level.NodeMap[x, y, z].NodeMember != null)
                    {
                        if (level.NodeMap[x, y, z].NodeMember.Id != 0)
                        {
                            NodeMemberData nodeMemberData = new NodeMemberData(level.NodeMap[x, y, z].NodeMember, x, y, z);
                            levelData.nodeMemberDataList.Add(nodeMemberData);
                        }
                    }
                }
            }
        }
        for (int i = 0; i < level.NodeTogglers.Count; i++)
        {
            NodeToggler    t          = level.NodeTogglers[i];
            Vector3        tPos       = t.GetPos();
            Vector3        rPos       = t.GetConnectNodePosition();
            NodeConnection connection = new NodeConnection((int)tPos.x, (int)tPos.y, (int)tPos.z, (int)rPos.x, (int)rPos.y, (int)rPos.z);
            levelData.nodeConnections.Add(connection);
        }
        return(levelData);
    }