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))
{
MessageBox.Show("You must enter a new unique name for the clone!");
return false;
}
HashSet<string> dependencies = ModuleDataManager.GetInstance().PreviewCloneDependencies(mFileData, parameters);
HashSet<string> savedUnwantedItems = mPreviewCallback != null ? mPreviewCallback.GetSavedUnwantedItems() : null;
mPreviewCallback = new PreviewCloneFileCallback(mViewer, mFileData, parameters);
mPreviewCallback.SetUnwantedItems(savedUnwantedItems);
PreviewCloneDialog dialog = new PreviewCloneDialog("Creating " + potentialNewNodeName, dependencies, mPreviewCallback);
DialogResult result = dialog.ShowDialog();
if (result != DialogResult.OK)
{
return false;
}
return true;
}