This commit is contained in:
Kathy Ruffing 2010-11-30 16:04:31 +00:00
parent bd10fa7bc2
commit b3b3f5e518

View File

@ -408,8 +408,10 @@ namespace Volian.Controls.Library
}
else if (tn.VEObject as StepInfo != null)
{
cm.MenuItems.Add("Insert Step Before", new EventHandler(mi_Click));
cm.MenuItems.Add("Insert Step After", new EventHandler(mi_Click));
// check the format for allowable inserts, and also,
ItemInfo i = tn.VEObject as ItemInfo;
if (AddToInsertMenu(i,0)) cm.MenuItems.Add("Insert Step Before", new EventHandler(mi_Click));
if (AddToInsertMenu(i,1)) cm.MenuItems.Add("Insert Step After", new EventHandler(mi_Click));
}
#endregion
#region Menu_Open
@ -452,6 +454,18 @@ namespace Volian.Controls.Library
}
}
private bool AddToInsertMenu(ItemInfo ii, int ba) // 0 = before, 1 = after
{
// set up insert buttons based on format
bool retB = true;
E_AccStep? actable = 0;
StepData sd = ii.FormatStepData;
actable = sd.StepEditData.AcTable;
if (actable == null) actable = 0;
return (ba == 0) ? !ii.IsRNOPart && (actable & E_AccStep.AddingPrev) > 0 :
!ii.IsRNOPart && (actable & E_AccStep.AddingNext) > 0;
}
private void Menu_Paste(VETreeNode tn, ContextMenu cm)
{
#region MenuPaste
@ -496,9 +510,9 @@ namespace Volian.Controls.Library
cm.MenuItems.Add("Paste Step", new EventHandler(mi_Click));
else if (iiPasteHere.IsStep && iiClipboard.IsStep)
{
cm.MenuItems.Add("Paste Step Before", new EventHandler(mi_Click));
if (AddToInsertMenu(iiPasteHere, 0)) cm.MenuItems.Add("Paste Step Before", new EventHandler(mi_Click));
cm.MenuItems.Add("Replace Existing Step", new EventHandler(mi_Click));
cm.MenuItems.Add("Paste Step After", new EventHandler(mi_Click));
if (AddToInsertMenu(iiPasteHere, 1)) cm.MenuItems.Add("Paste Step After", new EventHandler(mi_Click));
}
}
}
@ -1174,11 +1188,13 @@ namespace Volian.Controls.Library
ItemInfo iidrag = ((VETreeNode)dragNode).VEObject as ItemInfo;
FolderInfo fdrag = ((VETreeNode)dragNode).VEObject as FolderInfo;
DocVersionInfo ddrag = ((VETreeNode)dragNode).VEObject as DocVersionInfo;
if ((iidrag == null && fdrag == null && ddrag == null) || (iidrag != null && iidrag.IsStep))
if ((iidrag == null && fdrag == null && ddrag == null))
{
MessageBox.Show(iidrag==null?"Cannot drag/drop a grouping node.":"Cannot drag/drop a Step");
MessageBox.Show("Cannot drag/drop a grouping node.");
return;
}
}
// don't put up message, message kept coming up on any selection of node (to copy, properties, etc)
//if (iidrag != null && iidrag.IsStep) return;
if (SetupDragCursor(_dragImageList, dragNode))
{
this.DoDragDrop(dragNode, DragDropEffects.Move | DragDropEffects.Copy);// Begin dragging