public override bool Start(IMouseInformation mouseInformation) { if (mouseInformation.ClickCount < 2) { return(false); } IPhysicalWorkspace workspace = base.ImageViewer.PhysicalWorkspace; if (workspace == null) { return(false); } IImageBox imageBox = workspace.SelectedImageBox; if (imageBox == null) { return(false); } if (imageBox.SelectedTile == null || imageBox.SelectedTile.PresentationImage == null) { return(false); } // This tool could just be lumped into the explode image box tool, but I like the separation. if (ExplodeImageBoxTool.IsExploded(base.ImageViewer)) { return(false); } if (_unexplodeCommands.ContainsKey(imageBox)) { _unexplodeCommands[imageBox].Execute(); return(true); } else if (CanExplodeTiles(imageBox)) { ExplodeSelectedTile(imageBox); return(true); } return(false); }
public ExtensionDataProxy(ExplodeImageBoxTool tool) { Tool = tool; }