Beispiel #1
0
 public void AddTool(ToolType toolType, Tool tool)
 {
     tool.DependencyInjection(CreateAlert, GetCurrentlySelectedNode, SetSelectedWorldObject);
     toolList.Add(toolType, tool);
 }
Beispiel #2
0
        public void SetTool(ToolType toolType)
        {
            Tool nextTool;

            if (!toolList.TryGetValue(toolType, out nextTool)) {
                Console.WriteLine("No matching tool found for :: {0}", toolType);
                return;
            }

            if (!nextTool.Initialize()) return;

            if (_currentTool != null) {
                foreach (var worldObject in WorldObjects) {
                    _currentTool.Remove(worldObject);
                }
            }

            foreach (var worldObject in WorldObjects) {
                nextTool.Apply(worldObject);
            }

            _currentTool = nextTool;
        }