Handle the deleting of a step marked for copy
This commit is contained in:
@@ -758,7 +758,8 @@ namespace Volian.Controls.Library
|
||||
return newFocus;
|
||||
}
|
||||
|
||||
private void HandleSqlExceptionOnDelete(System.Data.SqlClient.SqlException ex)
|
||||
//private void HandleSqlExceptionOnDelete(System.Data.SqlClient.SqlException ex)
|
||||
private void HandleSqlExceptionOnDelete(Exception ex)
|
||||
{
|
||||
if (ex.Message.Contains("has External Transitions and has no next step"))
|
||||
{
|
||||
@@ -1153,6 +1154,7 @@ namespace Volian.Controls.Library
|
||||
public void PasteSiblingBefore(int copyStartID)
|
||||
{
|
||||
ItemInfo newItemInfo = MyItemInfo.PasteSiblingBefore(copyStartID);
|
||||
if (newItemInfo.ItemID == MyItemInfo.ItemID) return;
|
||||
EditItem newEditItem = null;
|
||||
switch (_MyChildRelation)
|
||||
{
|
||||
@@ -1175,6 +1177,7 @@ namespace Volian.Controls.Library
|
||||
public void PasteSiblingAfter(int copyStartID)
|
||||
{
|
||||
ItemInfo newItemInfo = MyItemInfo.PasteSiblingAfter(copyStartID);
|
||||
if (newItemInfo.ItemID == MyItemInfo.ItemID) return;
|
||||
EditItem newEditItem = null;
|
||||
switch (_MyChildRelation)
|
||||
{
|
||||
@@ -1215,7 +1218,8 @@ namespace Volian.Controls.Library
|
||||
{
|
||||
newItemInfo = Item.PasteReplace(MyItemInfo, copyStartID);
|
||||
}
|
||||
catch (System.Data.SqlClient.SqlException ex)
|
||||
//catch (System.Data.SqlClient.SqlException ex)
|
||||
catch (Exception ex)
|
||||
{
|
||||
HandleSqlExceptionOnDelete(ex);
|
||||
return this;
|
||||
|
@@ -645,6 +645,7 @@ namespace Volian.Controls.Library
|
||||
btnCMGoTo.Enabled = btnGoTo.Enabled = true;
|
||||
else
|
||||
{
|
||||
if (_MyStepRTB == null) return;
|
||||
if (_MyStepRTB.IsSelectionLinked(_MyStepRTB.SelectionStart, _MyStepRTB.SelectionLength))
|
||||
{
|
||||
// if selected text = ?, i.e. a missing/undefined destination, don't allow go to
|
||||
@@ -1810,6 +1811,15 @@ namespace Volian.Controls.Library
|
||||
|
||||
public void btnDelStep_Click(object sender, EventArgs e)
|
||||
{
|
||||
bool clearCopyStep = false;
|
||||
StepTabPanel tmp = Parent as StepTabPanel;
|
||||
if (tmp.MyDisplayTabControl.MyCopyStep != null &&
|
||||
tmp.MyDisplayTabControl.MyCopyStep.ItemID == MyEditItem.MyItemInfo.ItemID)
|
||||
{
|
||||
if (MessageBox.Show("Are you sure?\n\nIf you delete this step you will not able to paste it.\nYou should paste it before you delete it.", "Attempting to delete copied step.", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) return;
|
||||
clearCopyStep = true;
|
||||
}
|
||||
|
||||
bool surpressMessageBox = (e == null);
|
||||
SectionInfo si = MyEditItem.MyItemInfo as SectionInfo;
|
||||
if (si != null)
|
||||
@@ -1836,7 +1846,7 @@ namespace Volian.Controls.Library
|
||||
StepInfo stpi = MyEditItem.MyItemInfo as StepInfo;
|
||||
if (stpi == null) // not sure that it will every get here!
|
||||
{
|
||||
MessageBox.Show("Unknown type {0}, cannot delete!",MyEditItem.MyItemInfo.GetType().Name);
|
||||
MessageBox.Show("Unknown type {0}, cannot delete!", MyEditItem.MyItemInfo.GetType().Name);
|
||||
return;
|
||||
}
|
||||
if (!surpressMessageBox)
|
||||
@@ -1858,10 +1868,24 @@ namespace Volian.Controls.Library
|
||||
}
|
||||
MyEditItem.IdentifyChildren(false);
|
||||
if (results == DialogResult.Yes)
|
||||
{
|
||||
MyEditItem.RemoveItem();
|
||||
if (clearCopyStep)
|
||||
{
|
||||
tmp.MyDisplayTabControl.MyCopyStep = null;
|
||||
SetPasteButtonEnabled();
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
MyEditItem.RemoveItem();
|
||||
if (clearCopyStep)
|
||||
{
|
||||
tmp.MyDisplayTabControl.MyCopyStep = null;
|
||||
SetPasteButtonEnabled();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void btnCMIns_PopupClose(object sender, EventArgs e)
|
||||
|
Reference in New Issue
Block a user