Bring Tech Debt up to current Development
This commit is contained in:
@@ -1539,7 +1539,7 @@ namespace VEPROMS
|
||||
displayRO.MyROFST = SelectedROFst;
|
||||
// B2023-021: force Load of Step Prop/RO panel RO tree by passing in
|
||||
// true to LoadTree
|
||||
if (!_WeAreExitingPROMS) displayRO.LoadTree(true);
|
||||
if (!_WeAreExitingPROMS) displayRO.LoadTree(this,true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1757,160 +1757,158 @@ namespace VEPROMS
|
||||
public bool ClosingWithError = false; // B2019-098: prevent looping between error & exit dialog
|
||||
private bool _WeAreExitingPROMS = false; // B2019-101 if exiting PROMS from main window don't prompt on each child window (separate windows)
|
||||
|
||||
private void frmVEPROMS_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
// B2017-212 If the user uses the X button in Word to close the word attachment, PROMS thinks that the user wants to close out of PROMS as well
|
||||
// trap for this and close only the Word tab in PROMS
|
||||
// B2017-214 added a null reference check
|
||||
// B2010-071 Since we cannot tell if the user click on the X in Word or the X in PROMS, ask if the current tab
|
||||
// should be closed or if we should exit PROMS or just Cancel to continue working
|
||||
if (tc._MyDisplayTabItems.Count < 1) // If all thabs are closed in the editor will indicate that in the database.
|
||||
{
|
||||
private void frmVEPROMS_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
// B2017-212 If the user uses the X button in Word to close the word attachment, PROMS thinks that the user wants to close out of PROMS as well
|
||||
// trap for this and close only the Word tab in PROMS
|
||||
// B2017-214 added a null reference check
|
||||
// B2010-071 Since we cannot tell if the user click on the X in Word or the X in PROMS, ask if the current tab
|
||||
// should be closed or if we should exit PROMS or just Cancel to continue working
|
||||
if (tc._MyDisplayTabItems.Count < 1) // If all thabs are closed in the editor will indicate that in the database.
|
||||
{
|
||||
Item.DeactivateStateDisplayTabTmp(MySessionInfo.UserID);
|
||||
}
|
||||
if (!_WeAreExitingPROMS && !ClosingWithError && tc.SelectedDisplayTabItem != null && tc._MyDisplayTabItems.Count > 0)
|
||||
{
|
||||
// B2019-071 dialog to ask user if we are to close one tab or exit
|
||||
DlgCloseTabsOrExit dctoe = new DlgCloseTabsOrExit(MyParent == null, PROMSWindowForms.Count > 0);
|
||||
dctoe.ShowDialog();
|
||||
}
|
||||
if (!_WeAreExitingPROMS && !ClosingWithError && tc.SelectedDisplayTabItem != null && tc._MyDisplayTabItems.Count > 0)
|
||||
{
|
||||
// B2019-071 dialog to ask user if we are to close one tab or exit
|
||||
DlgCloseTabsOrExit dctoe = new DlgCloseTabsOrExit(MyParent == null, PROMSWindowForms.Count > 0);
|
||||
dctoe.ShowDialog();
|
||||
|
||||
// B2019-101 flag that we are exiting from PROMS main window (separate windows)
|
||||
_WeAreExitingPROMS = (MyParent == null && dctoe.ExitPROMS);
|
||||
// B2019-101 flag that we are exiting from PROMS main window (separate windows)
|
||||
_WeAreExitingPROMS = (MyParent == null && dctoe.ExitPROMS);
|
||||
|
||||
if (dctoe.Cancel) // B2019-071 user decided to not close any tab and not exit PROMS - so do nothing and continue working
|
||||
{
|
||||
e.Cancel = true;
|
||||
dctoe.Close();
|
||||
return;
|
||||
}
|
||||
if (dctoe.Cancel) // B2019-071 user decided to not close any tab and not exit PROMS - so do nothing and continue working
|
||||
{
|
||||
e.Cancel = true;
|
||||
dctoe.Close();
|
||||
return;
|
||||
}
|
||||
|
||||
string stk = vlnStackTrace.StackToString();
|
||||
string stk = vlnStackTrace.StackToString();
|
||||
|
||||
if (!stk.Contains("Exception"))
|
||||
{
|
||||
// B2018-091 Allow PROMS to close if only MSWord sections have been opened.
|
||||
// B2019-071 we will now close one or all of the tabs (even step editor ones)
|
||||
if (_WeAreExitingPROMS)
|
||||
{
|
||||
int TabItemID;
|
||||
int cnt = 0;
|
||||
if (!stk.Contains("Exception"))
|
||||
{
|
||||
// B2018-091 Allow PROMS to close if only MSWord sections have been opened.
|
||||
// B2019-071 we will now close one or all of the tabs (even step editor ones)
|
||||
if (_WeAreExitingPROMS)
|
||||
{
|
||||
// Deactivate previous procedure tab state by user
|
||||
Item.DeactivateStateDisplayTabTmp(MySessionInfo.UserID);
|
||||
// Save current procedure tab state
|
||||
|
||||
//B2024-082 Remember Tabs Not opening in correct order
|
||||
foreach (DisplayTabItem dti in tc.MyBar.Items)
|
||||
{
|
||||
cnt++;
|
||||
// Save current procedure tab state
|
||||
//B2024-082 Remember Tabs Not opening in correct order
|
||||
int cnt = 0;
|
||||
foreach (DisplayTabItem dti in tc.MyBar.Items)
|
||||
{
|
||||
cnt++;
|
||||
ItemInfo itminfo = dti.MyItemInfo;
|
||||
string DisplayTabID = dti.MyKey;
|
||||
TabItemID = dti.MyItemInfo.ItemID;
|
||||
string DisplayTabName = dti.ToString();
|
||||
// B2026-074 if a Word section, save the ItemID of the entire Word section
|
||||
// else if a Step Editor section, save the ItemID of the step part the user was on
|
||||
int TabItemID = itminfo.HasWordContent ? itminfo.ItemID : dti.MyStepTabPanel.MyStepTabRibbon.MyEditItem.MyItemInfo.ItemID;
|
||||
Item.AddDisplayTabsState(TabItemID, DisplayTabID, DisplayTabName, MySessionInfo.UserID, cnt);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int n = tc._MyDisplayTabItems.Count;
|
||||
|
||||
while (n-- > 0 && tc._MyDisplayTabItems.Count > 0)
|
||||
{
|
||||
|
||||
tc.CloseTabItem(tc.SelectedDisplayTabItem);
|
||||
|
||||
// B2019-071 close just the current tab and continue working
|
||||
if (!dctoe.ExitPROMS)
|
||||
{
|
||||
int n = tc._MyDisplayTabItems.Count;
|
||||
while (n-- > 0 && tc._MyDisplayTabItems.Count > 0)
|
||||
{
|
||||
tc.CloseTabItem(tc.SelectedDisplayTabItem);
|
||||
// B2019-071 close just the current tab and continue working
|
||||
if (!dctoe.ExitPROMS)
|
||||
{
|
||||
e.Cancel = true;
|
||||
dctoe.Close();
|
||||
return;
|
||||
}
|
||||
}
|
||||
dctoe.Close();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (tc.SelectedDisplayTabItem != null && tc._MyDisplayTabItems.Count > 0 && dctoe.ExitPROMS)
|
||||
{
|
||||
_MyLog.WarnFormat($"Stack Does not contain an Exception\r\nPROMS will Not Exit. Stack : \r\n{stk}");
|
||||
e.Cancel = true; // If Display Items still exist don't close.
|
||||
}
|
||||
if (tc.SelectedDisplayTabItem != null && tc._MyDisplayTabItems.Count > 0 && dctoe.ExitPROMS)
|
||||
{
|
||||
_MyLog.WarnFormat($"Stack Does not contain an Exception\r\nPROMS will Not Exit. Stack : \r\n{stk}");
|
||||
e.Cancel = true; // If Display Items still exist don't close.
|
||||
}
|
||||
|
||||
dctoe.Close();
|
||||
}
|
||||
}
|
||||
dctoe.Close();
|
||||
}
|
||||
}
|
||||
|
||||
//C2015-022 Separate Windows - if child windows are open and we are closing the main PROMS window, give user a chance to not close PROMS and that child windows
|
||||
// B2019-101 if we are exiting from PROMS main window no need to prompt user about child windows.
|
||||
if (MyParent == null && PROMSWindowForms != null && PROMSWindowForms.Count > 0 && !_WeAreExitingPROMS)
|
||||
{
|
||||
DialogResult dr = MessageBox.Show("Close all of the child windows and exit PROMS?", "Exit PROMS", MessageBoxButtons.YesNo);
|
||||
if (dr == DialogResult.No)
|
||||
{
|
||||
e.Cancel = true;
|
||||
return;
|
||||
}
|
||||
}
|
||||
//C2015-022 Separate Windows - if child windows are open and we are closing the main PROMS window, give user a chance to not close PROMS and that child windows
|
||||
// B2019-101 if we are exiting from PROMS main window no need to prompt user about child windows.
|
||||
if (MyParent == null && PROMSWindowForms != null && PROMSWindowForms.Count > 0 && !_WeAreExitingPROMS)
|
||||
{
|
||||
DialogResult dr = MessageBox.Show("Close all of the child windows and exit PROMS?", "Exit PROMS", MessageBoxButtons.YesNo);
|
||||
if (dr == DialogResult.No)
|
||||
{
|
||||
e.Cancel = true;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// This keeps PROMS from Hanging under certain circumstances
|
||||
tc.ShuttingDown = true;
|
||||
// This keeps PROMS from Hanging under certain circumstances
|
||||
tc.ShuttingDown = true;
|
||||
|
||||
// B2019-161 When shutting down output the timing information (to the error log)
|
||||
if (VolianTimer.TimingsOn)
|
||||
VolianTimer.ShowTimers();
|
||||
// B2019-161 When shutting down output the timing information (to the error log)
|
||||
if (VolianTimer.TimingsOn)
|
||||
VolianTimer.ShowTimers();
|
||||
|
||||
foreach (DisplayTabItem dti in tc.MyBar.Items)
|
||||
{
|
||||
if (dti.MyDSOTabPanel != null)
|
||||
dti.MyDSOTabPanel.CloseDSO();
|
||||
else
|
||||
MySessionInfo.CheckInItem(dti.OwnerID); //C2015-022 Separate Windows closing child form only left procedure ownership active
|
||||
}
|
||||
foreach (DisplayTabItem dti in tc.MyBar.Items)
|
||||
{
|
||||
if (dti.MyDSOTabPanel != null)
|
||||
dti.MyDSOTabPanel.CloseDSO();
|
||||
else
|
||||
MySessionInfo.CheckInItem(dti.OwnerID); //C2015-022 Separate Windows closing child form only left procedure ownership active
|
||||
}
|
||||
|
||||
|
||||
if (MyParent == null)
|
||||
{
|
||||
if (MyActivityTimer != null)
|
||||
{
|
||||
MyActivityTimer.Dispose();
|
||||
_MyLog.Debug("VEPROMS FormClosing - dispose timer");
|
||||
}
|
||||
if (MyParent == null)
|
||||
{
|
||||
if (MyActivityTimer != null)
|
||||
{
|
||||
MyActivityTimer.Dispose();
|
||||
_MyLog.Debug("VEPROMS FormClosing - dispose timer");
|
||||
}
|
||||
|
||||
// C2015-022: part of separate windows upgrade close all of the child windows before closing the main PROMS window
|
||||
if (PROMSWindowForms != null && PROMSWindowForms.Count > 0)
|
||||
{
|
||||
foreach (int k in PROMSWindowForms.Keys)
|
||||
{
|
||||
frmVEPROMS child = PROMSWindowForms[k];
|
||||
_RemoveFromPROMSWindowForms = false;
|
||||
child._RemoveFromPROMSWindowForms = false;
|
||||
child._WeAreExitingPROMS = _WeAreExitingPROMS;
|
||||
child.Close();
|
||||
child.MySessionInfo.EndSession();
|
||||
}
|
||||
}
|
||||
// C2015-022: part of separate windows upgrade close all of the child windows before closing the main PROMS window
|
||||
if (PROMSWindowForms != null && PROMSWindowForms.Count > 0)
|
||||
{
|
||||
foreach (int k in PROMSWindowForms.Keys)
|
||||
{
|
||||
frmVEPROMS child = PROMSWindowForms[k];
|
||||
_RemoveFromPROMSWindowForms = false;
|
||||
child._RemoveFromPROMSWindowForms = false;
|
||||
child._WeAreExitingPROMS = _WeAreExitingPROMS;
|
||||
child.Close();
|
||||
child.MySessionInfo.EndSession();
|
||||
}
|
||||
}
|
||||
|
||||
MySessionInfo?.EndSession();
|
||||
MySessionInfo?.EndSession();
|
||||
|
||||
// Save the location and size of the VE-PROMS application for this user
|
||||
if (WindowState == FormWindowState.Normal)
|
||||
{
|
||||
Settings.Default.Location = Location;
|
||||
Settings.Default.Size = Size;
|
||||
}
|
||||
// Save the location and size of the VE-PROMS application for this user
|
||||
if (WindowState == FormWindowState.Normal)
|
||||
{
|
||||
Settings.Default.Location = Location;
|
||||
Settings.Default.Size = Size;
|
||||
}
|
||||
|
||||
if (MyVersionWindowList != null)
|
||||
{
|
||||
Settings.Default.VersionWindows = MyVersionWindowList.ToSettings();
|
||||
}
|
||||
if (MyVersionWindowList != null)
|
||||
{
|
||||
Settings.Default.VersionWindows = MyVersionWindowList.ToSettings();
|
||||
}
|
||||
|
||||
Settings.Default.WindowState = WindowState;
|
||||
Settings.Default.QATItems = ribbonControl1.QatLayout;
|
||||
Settings.Default.WindowState = WindowState;
|
||||
Settings.Default.QATItems = ribbonControl1.QatLayout;
|
||||
|
||||
SaveMRU();
|
||||
SaveMRU();
|
||||
|
||||
DebugPagination.Close();
|
||||
DebugText.Close();
|
||||
BaselineMetaFile.Close(); // C2018-004 create meta file for baseline compares
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void frmVEPROMS_FormClosed(object sender, System.Windows.Forms.FormClosedEventArgs e)
|
||||
void frmVEPROMS_FormClosed(object sender, System.Windows.Forms.FormClosedEventArgs e)
|
||||
{
|
||||
// Close any open documents
|
||||
tc.Dispose();
|
||||
@@ -2423,10 +2421,10 @@ namespace VEPROMS
|
||||
}
|
||||
|
||||
// Add retrieve displaytabs state here.
|
||||
openDisplaytabstate();
|
||||
OpenDisplaytabstate();
|
||||
}
|
||||
|
||||
public void openDisplaytabstate()
|
||||
private void OpenDisplaytabstate()
|
||||
{
|
||||
// Retrieve edit tab state from database.
|
||||
DataTable DisPlayTabState = Item.GetDisplayTabs(VlnSettings.UserID);
|
||||
@@ -2449,9 +2447,12 @@ namespace VEPROMS
|
||||
usersettings.SetUserSettings(true, result == DialogResult.Yes);
|
||||
}
|
||||
|
||||
|
||||
if (result == DialogResult.Yes)
|
||||
{
|
||||
// B2026-074 added flag (LoadingSavedProcTabs) to supress unnecessary event calls
|
||||
// this will help prevent PROMS from getting stuck continuously looping through the same events
|
||||
// when Word procedure tabs are restored.
|
||||
tc.LoadingSavedProcTabs = true;
|
||||
foreach (DataRow TabState in DisPlayTabState.Rows)
|
||||
{
|
||||
int _ItemID = (int)TabState["ItemID"];
|
||||
@@ -2474,6 +2475,7 @@ namespace VEPROMS
|
||||
SpellChecker.MyEditItem = tc.MyEditItem; //B2025-043 Remember Tabs is not setting the EditItem for the active window causing a PROMS crash when Spell Check
|
||||
}
|
||||
}
|
||||
tc.LoadingSavedProcTabs = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4022,7 +4024,7 @@ namespace VEPROMS
|
||||
|
||||
displayRO.MyRTB = SelectedStepTabPanel?.MyStepPanel.SelectedEditItem?.MyStepRTB;
|
||||
|
||||
displayRO.LoadTree(); //B2022-026 RO Memory reduction coding (Jakes Merge)
|
||||
displayRO.LoadTree(this); //B2022-026 RO Memory reduction coding (Jakes Merge)
|
||||
}
|
||||
|
||||
#endregion
|
||||
@@ -4168,7 +4170,7 @@ namespace VEPROMS
|
||||
// need this to update RO Tree after UpdateRofst (B2015-226)
|
||||
// B2022-026 RO Memory reduction coding (Jakes Merge)
|
||||
displayRO.MyROFST = SelectedROFst;
|
||||
displayRO.LoadTree();
|
||||
displayRO.LoadTree(this);
|
||||
|
||||
// resetting the MyROFSTLookup for the search & reports panels will refresh the RO trees after UpdateRofst in each of those panels (B2015-226)
|
||||
if (SelectedDVI != null)
|
||||
@@ -4243,7 +4245,7 @@ namespace VEPROMS
|
||||
//C2026-008 Re-Architect RO.FST to include RO Modification date/time
|
||||
// if ROFST got updated,
|
||||
// set the Selected FST so it is in sync
|
||||
if (!_WeAreExitingPROMS && displayRO.LoadTree(true))
|
||||
if (!_WeAreExitingPROMS && displayRO.LoadTree(this,true))
|
||||
{
|
||||
SelectedROFst = displayRO.MyROFST;
|
||||
}
|
||||
@@ -4342,7 +4344,7 @@ namespace VEPROMS
|
||||
|
||||
// B2022-026 RO Memory reduction coding (Jakes Merge)
|
||||
displayRO.MyRTB = null;
|
||||
displayRO.LoadTree();
|
||||
displayRO.LoadTree(this);
|
||||
}
|
||||
|
||||
infotabTags.Visible = false;
|
||||
@@ -4429,7 +4431,7 @@ namespace VEPROMS
|
||||
//C2026-008 Re-Architect RO.FST to include RO Modification date/time
|
||||
// if ROFST got updated,
|
||||
// set the Selected FST so it is in sync
|
||||
if (!_WeAreExitingPROMS && displayRO.LoadTree())
|
||||
if (!_WeAreExitingPROMS && displayRO.LoadTree(this))
|
||||
{
|
||||
SelectedROFst = displayRO.MyROFST;
|
||||
}
|
||||
@@ -4460,7 +4462,7 @@ namespace VEPROMS
|
||||
|
||||
// B2022-026 RO Memory reduction coding (Jakes Merge)
|
||||
displayRO.SetFindDocROButton(false);
|
||||
if (!_WeAreExitingPROMS) displayRO.LoadTree();
|
||||
if (!_WeAreExitingPROMS) displayRO.LoadTree(this);
|
||||
|
||||
//C2019-036 View Only mode work with Checked Out Procedures
|
||||
//In View Only Mode - Step Properties should be disabled
|
||||
@@ -4481,7 +4483,7 @@ namespace VEPROMS
|
||||
displayRO.ROTypeFilter = E_ROValueType.All; // allow all RO types for Word attachments (but fix)
|
||||
|
||||
displayRO.SetFindDocROButton(true);
|
||||
displayRO.LoadTree();
|
||||
displayRO.LoadTree(this);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4607,7 +4609,7 @@ namespace VEPROMS
|
||||
//C2026-008 Re-Architect RO.FST to include RO Modification date/time
|
||||
// if ROFST got updated,
|
||||
// set the Selected FST so it is in sync
|
||||
if (displayRO.LoadTree())
|
||||
if (displayRO.LoadTree(this))
|
||||
{
|
||||
SelectedROFst = displayRO.MyROFST;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user