C2022-019 Added a Cancel button to the message box that informs the user that the destination you are pasting to is a different step type than what is being copied.
This commit is contained in:
parent
08fe520ffa
commit
6eabc4efd1
@ -593,7 +593,8 @@ namespace VEPROMS.CSLA.Library
|
||||
}
|
||||
// B2016-009 - added a message box explaining to the user that the copyed step will take on the destination type. 16-bit PROMS had also done this way.
|
||||
// - this one is used for Paste Replace with copyed step
|
||||
public static void CheckSourceDestinationType(int copyStartID, ItemInfo itemInfo)
|
||||
// C2022-017 Added a Cancel button to the message box to allow the user to cancel the paste operation
|
||||
public static bool CheckSourceDestinationType(int copyStartID, ItemInfo itemInfo)
|
||||
{
|
||||
ItemInfo cpyItem = ItemInfo.Get(copyStartID);
|
||||
// B2017-065 use MyContent instead of _Mycontent so that if null it will get the needed content
|
||||
@ -601,26 +602,34 @@ namespace VEPROMS.CSLA.Library
|
||||
int? DestType = itemInfo.MyContent.Type;
|
||||
if (DestType >= 20000 && DestType != SourceType)
|
||||
{
|
||||
string msg = "The step you are copying TO is a different type than the step you are copying FROM.\n\nThe copied step will inherit the destination step type.\n\nOnce copied, the step type can be changed from the Tags tab on the Step Properties panel.";
|
||||
FlexibleMessageBox.Show(msg, "Different Step Types", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
string msg = "The step you are copying TO is a different type than the step you are copying FROM.\n\nThe copied step will inherit the destination step type.\n\nOnce copied, the step type can be changed from the Tags tab on the Step Properties panel.";
|
||||
DialogResult msgBoxResult = FlexibleMessageBox.Show(msg, "Different Step Types", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
|
||||
if (msgBoxResult == DialogResult.Cancel)
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
// B2016-009 - added a message box explaining to the user that the copyed step will take on the destination type. 16-bit PROMS had also done this way.
|
||||
// - this one is used for Insert Copyed step Before or After
|
||||
private void CheckSourceDestinationType(int? DestType, int? SourceType)
|
||||
// C2022-017 Added a Cancel button to the message box to allow the user to cancel the paste operation
|
||||
private bool CheckSourceDestinationType(int? DestType, int? SourceType)
|
||||
{
|
||||
if (DestType >= 20000 && DestType != SourceType)
|
||||
{
|
||||
string msg = "The step you are copying TO is a different type than the step you are copying FROM.\n\nThe copied step will inherit the destination step type.\n\nOnce copied, the step type can be changed from the Tags tab on the Step Properties panel.";
|
||||
FlexibleMessageBox.Show(msg, "Different Step Types", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
DialogResult msgBoxResult = FlexibleMessageBox.Show(msg, "Different Step Types", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
|
||||
if (msgBoxResult == DialogResult.Cancel)
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
public ItemInfo PasteSiblingBefore(int copyStartID, string chgid)
|
||||
{
|
||||
// To determine 'type' of pasted item, if it's a step (type >=20000), use the originating
|
||||
// item, i.e. item inserting after. If it's a section or procedure, use the copied item's type.
|
||||
ItemInfo cpItem = ItemInfo.Get(copyStartID);
|
||||
CheckSourceDestinationType(MyContent.Type, cpItem.MyContent.Type); // B2016-009 check source and desintation types and display message box if needed
|
||||
// B2016-009 check source and desintation types and display message box if needed
|
||||
// C2022-017 moved the CheckSourceDestinationType call to btnPasteReplace_Click in StepTabRibbon
|
||||
int? type = MyContent.Type >= 20000 ? MyContent.Type : cpItem.MyContent.Type;
|
||||
try
|
||||
{
|
||||
@ -646,7 +655,8 @@ namespace VEPROMS.CSLA.Library
|
||||
// To determine 'type' of pasted item, if it's a step (type >=20000), use the originating
|
||||
// item, i.e. item inserting after. If it's a section or procedure, use the copied item's type.
|
||||
ItemInfo cpItem = ItemInfo.Get(copyStartID);
|
||||
CheckSourceDestinationType(MyContent.Type, cpItem.MyContent.Type); // B2016-009 check source and desintation types and display message box if needed
|
||||
// B2016-009 check source and desintation types and display message box if needed
|
||||
// C2022-017 moved the CheckSourceDestinationType call to btnPasteReplace_Click in StepTabRibbon
|
||||
int? type = MyContent.Type >= 20000 ? MyContent.Type : cpItem.MyContent.Type;
|
||||
try
|
||||
{
|
||||
@ -2484,7 +2494,8 @@ namespace VEPROMS.CSLA.Library
|
||||
throw new System.Security.SecurityException("User not authorized to remove a Item");
|
||||
try
|
||||
{
|
||||
ItemInfo.CheckSourceDestinationType(copyStartID, itemInfo); // B2016-009 check source and desintation types and display message box if needed
|
||||
// B2016-009 check source and desintation types and display message box if needed
|
||||
// C2022-017 moved the CheckSourceDestinationType call to btnPasteReplace_Click in StepTabRibbon
|
||||
ItemInfo newItemInfo = ItemInfo.CopyPasteReplaceItemInfoFetch(copyStartID, itemInfo); //itemInfo.ItemID, itemInfo.MyContent.Type, itemInfo.MyContent.Type);
|
||||
// Delete business objects, including remove from tree
|
||||
ItemInfo.DeleteItemInfoAndChildren(itemInfo.ItemID); // Dispose ItemInfo and Children
|
||||
|
@ -3989,6 +3989,9 @@ namespace Volian.Controls.Library
|
||||
{
|
||||
StepTabPanel tmp = Parent as StepTabPanel;
|
||||
if (tmp.MyDisplayTabControl.MyCopyStep == null) return;
|
||||
// B2016-009 check source and desintation types and display message box if needed
|
||||
// C2022-017 check for user canceling the paste step
|
||||
if (!ItemInfo.CheckSourceDestinationType(tmp.MyDisplayTabControl.MyCopyStep.ItemID, MyItemInfo)) return;
|
||||
SaveTableChanges(); // B2018-055 Save Current Changes to the table
|
||||
// F2021-009 display a message if pasting step will results in more sub-step levels than are defined in the format
|
||||
ItemInfo.PasteStepIsWithinDefinedSubStepLevels(tmp.MyDisplayTabControl.MyCopyStep.ItemID, MyItemInfo, false);
|
||||
@ -3998,6 +4001,9 @@ namespace Volian.Controls.Library
|
||||
{
|
||||
StepTabPanel tmp = Parent as StepTabPanel;
|
||||
if (tmp.MyDisplayTabControl.MyCopyStep == null) return;
|
||||
// B2016-009 check source and desintation types and display message box if needed
|
||||
// C2022-017 check for user canceling the paste step
|
||||
if (!ItemInfo.CheckSourceDestinationType(tmp.MyDisplayTabControl.MyCopyStep.ItemID, MyItemInfo)) return;
|
||||
SaveTableChanges(); // B2018-055 Save Current Changes to the table
|
||||
// F2021-009 display a message if pasting step will results in more sub-step levels than are defined in the format
|
||||
ItemInfo.PasteStepIsWithinDefinedSubStepLevels(tmp.MyDisplayTabControl.MyCopyStep.ItemID, MyItemInfo, false);
|
||||
@ -4039,6 +4045,9 @@ namespace Volian.Controls.Library
|
||||
{
|
||||
StepTabPanel tmp = Parent as StepTabPanel;
|
||||
if (tmp.MyDisplayTabControl.MyCopyStep == null) return;
|
||||
// B2016-009 check source and desintation types and display message box if needed
|
||||
// C2022-017 check for user canceling the paste step
|
||||
if (!ItemInfo.CheckSourceDestinationType(tmp.MyDisplayTabControl.MyCopyStep.ItemID, MyItemInfo)) return;
|
||||
// F2021-009 display a message if pasting step will results in more sub-step levels than are defined in the format
|
||||
ItemInfo.PasteStepIsWithinDefinedSubStepLevels(tmp.MyDisplayTabControl.MyCopyStep.ItemID, MyItemInfo, true);
|
||||
EditItem oldEditItem = MyEditItem;
|
||||
|
Loading…
x
Reference in New Issue
Block a user