private void ActivateToolWithUndo(IVisibilityTool tool)
 {
     if (currentTool != tool && tool.isAvailable)
     {
         m_Model.BeginUndoOperation(TextContent.visibilityTab);
         ActivateTool(tool);
     }
 }
        private void ActivateTool(IVisibilityTool tool)
        {
            if (tool.isAvailable == false)
            {
                return;
            }

            if (currentTool != null)
            {
                currentTool.Deactivate();
            }

            currentTool = tool;
            currentTool.Activate();

            m_Model.view.SetActiveTab(m_Model.currentToolIndex);
            m_Model.view.SetContent(currentTool.view);
        }