public bool OnAccept(CloneObjectParameters parameters) { // Do the cloning string originalName = mFileData.GetNameForCloning(); string potentialNewNodeName = parameters.TransformParameter(originalName); if (potentialNewNodeName.Length <= 1) { MessageBox.Show("You must enter a name longer than 1 character for the clone!"); return(false); } if (potentialNewNodeName.Equals(originalName) && parameters.SourceModule == parameters.TargetModule) { MessageBox.Show("You must enter a new unique name for the clone or change the target mod!"); return(false); } parameters.SetmanifestEntryType(mManifestEntryType); HashSet <string> dependencies = ModuleDataManager.GetInstance().PreviewCloneDependencies(mFileData, parameters); HashSet <string> savedUnwantedItems = mPreviewCallback != null ? mPreviewCallback.SavedUnwantedItems : null; mPreviewCallback = new PreviewCloneAliasCallback(mViewer, mFileData, parameters); mPreviewCallback.SavedUnwantedItems = savedUnwantedItems; PreviewCloneDialog dialog = new PreviewCloneDialog("Creating " + potentialNewNodeName, dependencies, mPreviewCallback); DialogResult result = dialog.ShowDialog(); if (result != DialogResult.OK) { return(false); } return(true); }