From c3534e21fac5b9a5277e0f5dc0da957ddb6ad252 Mon Sep 17 00:00:00 2001 From: mschill Date: Mon, 5 May 2025 08:31:21 -0400 Subject: [PATCH 01/10] B2025-026 - AND Substeps are Printing as Sequential Substeps in the ERG format / B2025-027 - Bottom Continue message now appears due to the AND step type being now sequential and step compression being shut off --- PROMS/Formats/fmtall/TUECall.xml | Bin 122892 -> 122936 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/PROMS/Formats/fmtall/TUECall.xml b/PROMS/Formats/fmtall/TUECall.xml index 70aa6d12eb617f1f47ffb27e84a86d986bf950af..3e0376e946f6c2a0f3f1ca3e966cf9dd23ef0059 100644 GIT binary patch delta 66 zcmeA Date: Mon, 5 May 2025 14:36:23 -0400 Subject: [PATCH 02/10] F2025-012 Format changes are needed to account for ABN procedures. In the ERG and ABN format, Attachment Step Editor (Two Column), the following changes need made: - add a blank line between the Initial Action Step and the following high level step - need the ability to insert sub-steps off of the Initial Action Step - adjust extra line spacing above Initial Action Steps - add a step designator in the edit window to indicate an Immediate Action Step --- PROMS/Formats/fmtall/BASEall.xml | Bin 94236 -> 94778 bytes PROMS/Formats/fmtall/TUECall.xml | Bin 122936 -> 124082 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/PROMS/Formats/fmtall/BASEall.xml b/PROMS/Formats/fmtall/BASEall.xml index 0dbdf3b25ba8e1d94139b80c6d361c469d6fad69..3078bdbb46912565e7cf67f80000450a464f6b69 100644 GIT binary patch delta 83 zcmV-Z0IdI<;03zm1%R{x&=r#&1PGTv4gmy{fUp{u{1pLIlSH@}ld{Vqmv9yV7?UuW p7L#6;BDX#Y0Z0LowIGuQp`Metz$CZe76A$YlMtf>x9%4KE?6^W9_9c5 delta 58 zcmV-A0LA~hpr<^=Ny&<~B_=QFRhxXINno;0 zn9}412bRq`RWgi|jd;W+f3TFATu`kvd4q?--1)u_pn)xPg=bOy9BoF{sk{$y9 From 5d3bb41275330de9e3ca6f3a15af0db714d3ea4e Mon Sep 17 00:00:00 2001 From: John Jenko Date: Tue, 6 May 2025 14:41:50 -0400 Subject: [PATCH 03/10] Added PROMS Demo Fromats and dded a checkbox on the Copy Formats dialog to include the PROMS Demo formats. --- PROMS/Formats/fmtall/PROMSDemo1all.xml | Bin 0 -> 99022 bytes PROMS/Formats/fmtall/PROMSDemo2all.xml | Bin 0 -> 82446 bytes PROMS/Formats/fmtall/PROMSDemoALRall.xml | Bin 0 -> 103960 bytes PROMS/Formats/fmtall/PROMSDemoBCKall.xml | Bin 0 -> 54878 bytes PROMS/Formats/frmFormatCopy.Designer.cs | 17 +++++++++++++++++ PROMS/Formats/frmFormatCopy.cs | 12 ++++++++---- PROMS/Formats/genmacall/PROMSDemo1.svg | Bin 0 -> 23242 bytes PROMS/Formats/genmacall/PROMSDemo2.svg | Bin 0 -> 11716 bytes PROMS/Formats/genmacall/PROMSDemoALR.svg | Bin 0 -> 7086 bytes PROMS/Formats/genmacall/PROMSDemoBCK.svg | Bin 0 -> 6990 bytes 10 files changed, 25 insertions(+), 4 deletions(-) create mode 100644 PROMS/Formats/fmtall/PROMSDemo1all.xml create mode 100644 PROMS/Formats/fmtall/PROMSDemo2all.xml create mode 100644 PROMS/Formats/fmtall/PROMSDemoALRall.xml create mode 100644 PROMS/Formats/fmtall/PROMSDemoBCKall.xml create mode 100644 PROMS/Formats/genmacall/PROMSDemo1.svg create mode 100644 PROMS/Formats/genmacall/PROMSDemo2.svg create mode 100644 PROMS/Formats/genmacall/PROMSDemoALR.svg create mode 100644 PROMS/Formats/genmacall/PROMSDemoBCK.svg diff --git a/PROMS/Formats/fmtall/PROMSDemo1all.xml b/PROMS/Formats/fmtall/PROMSDemo1all.xml new file mode 100644 index 0000000000000000000000000000000000000000..c2b19d9228fa8e8a0be577516da8d7367c1d2a36 GIT binary patch literal 99022 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�%2xN@+J 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 irb~Y&c@o0e*!5 literal 0 HcmV?d00001 diff --git a/PROMS/Formats/fmtall/PROMSDemo2all.xml b/PROMS/Formats/fmtall/PROMSDemo2all.xml new file mode 100644 index 0000000000000000000000000000000000000000..952f24c9f58be33751088c0d4777a9c937b254f5 GIT binary patch literal 82446 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 literal 0 HcmV?d00001 diff --git a/PROMS/Formats/fmtall/PROMSDemoALRall.xml b/PROMS/Formats/fmtall/PROMSDemoALRall.xml new file mode 100644 index 0000000000000000000000000000000000000000..3e2a1a240da6e64de5e4cac7a60ba2162dc6f9ad GIT binary patch literal 103960 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 Hp&|c2!J;5X literal 0 HcmV?d00001 diff --git a/PROMS/Formats/fmtall/PROMSDemoBCKall.xml b/PROMS/Formats/fmtall/PROMSDemoBCKall.xml new file mode 100644 index 0000000000000000000000000000000000000000..f9e76fb907ad03bf48ba24a271e145e2d87689e4 GIT binary patch literal 54878 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 TT6?7>p4C%0%B}Aft6u*DAt;8V literal 0 HcmV?d00001 diff --git a/PROMS/Formats/genmacall/PROMSDemoALR.svg b/PROMS/Formats/genmacall/PROMSDemoALR.svg new file mode 100644 index 0000000000000000000000000000000000000000..c5ae1d771a3af3a0eca9c9aea4663339604017fa GIT binary patch literal 7086 zcmeHMTTdE66h5yu>3`VzTtIH34b><$u}Lq+HhrfGXjCME7uxi%xBb33d)V1!L01;* zLqmk!nKLurxz0JqKfjx@Eq8Ju=Mu<`bmU5gaw?b7m$$MiWhu%Uegn+(5kuI%u|KOJ2$gY04{%732VWUCIF8r&v9bHlD`V={?qWF>{4e+Zfl=0;~w6 z2&?0}x!5r^(M zbZ?|2zvTKDl*DWt3^CdRl}e@$N=k!xM&Rg;l<>KApCZ1iSWSL<7$sVMN?5}^D7#yn ze2kSRZkG+b_1*XhPBu&`?X}6=4W2q!xr?3e+`2XF#J{>UAnyR*JZm+?9AKo0Q^?g3 z#t!6AKFde>g7J44y}&*y3+mwlR83%v=&89CjFD@iC7xYq*7jd%dq6T>#$Wysm=>UERfb)DZXU17#nSTrtEsw4gJ*bM8B6+Bp4eYPOJ&Fs+uz z18}GsC1)k@rf({%IHy(6N3%*n%ewQpRe1-nV&WkOHFpZFnRZx!UAG}y@}o36;DEMz zo}iMq78-&1FmKOuvG{DS`ICmq-wxiD1sqpiR)DFwySfV?*nI39zS zdu+kFXlVn-Ik};BIuar7V2+kHf;<>IMsu;#qp5e=RoO|GQZe*8LU}XJkfsvSkSFC( zM^FG2BxQ>QM)6b_Yp@oJni{dpnrCA)ihqaE zq+}RpN z3wpe5WJ8#=UCl2IUnF6}R}G{1Q{k&2Z&6I?67=USYf*_V17TFvsK)2rnEMWQGOzq^ zH)lRC+2Rf}4TX`3#WT&!;69;~x3 zo%UE0e{$7d_ByQ*<_KD+@n&O9lLxvFz{YxXl(Ba7WtAr$b|ToHU{yQ-D((Gbt!v}* z%1@VHQJ)QfFdH7)wbnhVzx?nV0t@><){$EbSDt!2fTj2Dk<|Q~M{gs)2ea?${Y7t| zD8Ej2oR(RiPIsK59MSqU7Kh5HVbn&<-!)rU%-^kx^pO6jbw{&wlgh~Z>{em~txqc8 zJbGVg-O6-yet#q0t!z1bv+Ml=vK!0G$N~G-`X29DmczR~X+JjpJh~gL)LboTYre+x zdA60Y_kQgnGrQuv&DejA-$e1gC8f7D>G`GWOZ_~FYXkiptK_K*YJxpm9a|no>rW_xf{Pl3>hxf!<4~ntXNrgwC;fzV zn|jc+uS9eC`%8MX^&`Xd?b32QS#)53Y&wID_nQl0ls0YF+<#pBZnIG=rp5VvO>(9G HN!pUXycORt literal 0 HcmV?d00001 diff --git a/PROMS/Formats/genmacall/PROMSDemoBCK.svg b/PROMS/Formats/genmacall/PROMSDemoBCK.svg new file mode 100644 index 0000000000000000000000000000000000000000..4b0b8281a9b39fe3c4786b7e6d8391b4b17dd18a GIT binary patch literal 6990 zcmd5>TTc@~6h6-;{)g3P>1|uu5`-X-;0qcd#@BKuU?r5R#=ow9-<+P#?#%WA_Chvp zmzlFO-?@Hg*1vyNWnCWRyIe{lcXBM((vx%fAzgVdZ>1_Fso*!kOjiyueuUYsoVwXt zxselDg48l()@4mz%PU!xHyB%z&sgh+T;YC>w{N6_r$?;x5$~U1<{G-cV64zMc z5ZGx8N;P1$6nEl(?Bj}cY&dKstf-QqrpwZTy-UzT=TCrwzUK~IXxzoFT(yUt8JidQ zn{x+{p=KA+>{4K5=0nX%m2(y=|20$3mT_ zt=m)3hFCmq=5J}>-$f(Oqbas@US`pVv)NIEx9YNtxuZxmZe|k;Veb098KYzaW=ZO@ zBwwS_Ty}=pTLbp_=dQ*#IpiTzkH}~qi&msMMi>>WAmlGH&k~+GsEDjHDn$mnbzDPk zNn{r*-v{rIVSn~(PZevjI_$|l*zB{bsfK2fno-H&EQ*a~)N|&ZRoB@^h~c;D-W1xd z>8vmhTW+9_*hdHO3Dz&es^4JOZ8x?pTk;F_|4M$#7mV#;hEjWYCYu@Z(DGr-hc+D- z`8DJOquadjl43t*q8fa~K8DQAno<;1HRLkA>REgCaTR(Y#xULw6^FXg&xV)e2a7$+ zniO^?YqGbtu4uM3D9i}UlwIV={vdBYp{LuI4dmA@vSw>!-o&w0N8GfaReeNkvCq?v zP&J=rWHIYU^={;`an*pC-O6~0`f0Vz^Irqm(!|`b{$+-Yg>4} z0{Uy<=edhL$0(kP^Nrn@q1QU@?QZ>f6@Ji;(fUU(^M5_0G6>H~#kMZSYn_VXCAR!I zs1A?h@p_qQ;kB5E>w{&-4lFxac2IJB6)}y-Vfq|a4@M&MAY`q^Oe==>q1i<9B=#No z*fM-r&tUUf(+&Bwy*4?*YCo4P7sx$oWy=MVm>0%6qQzoCt(f+$Ivk@(EDobt$uMTM zn60nl49$Lj+Hu|-$KX7*lC|4?-quRbGhi`~v;GX{@rKKH^3{C4KMjj^?a=d`meBKxcNw;pb_31p@L~JU5%_g&Brj4zV zt!D0|C3phf7{@pF literal 0 HcmV?d00001 From a099d27b868f6af17d12ea4354488787134f99c9 Mon Sep 17 00:00:00 2001 From: mschill Date: Tue, 13 May 2025 08:19:23 -0400 Subject: [PATCH 04/10] C2025-032 Add check if user is sure want to paste replace section. --- PROMS/Volian.Controls.Library/vlnTreeView.cs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/PROMS/Volian.Controls.Library/vlnTreeView.cs b/PROMS/Volian.Controls.Library/vlnTreeView.cs index 5fcb43b6..140a7a23 100644 --- a/PROMS/Volian.Controls.Library/vlnTreeView.cs +++ b/PROMS/Volian.Controls.Library/vlnTreeView.cs @@ -2074,7 +2074,6 @@ namespace Volian.Controls.Library case "Paste Procedure After": case "Paste Section": case "Paste Section Before": - case "Replace Existing Section": case "Paste Section After": case "Paste Step": case "Paste Step Before": @@ -2083,8 +2082,18 @@ namespace Volian.Controls.Library case "Paste Subsection": tv_NodePaste(mi.Text); break; + case "Replace Existing Section": + //C2025-032 - Add check if user is sure want to paste replace section + DialogResult ovewriteExPS = FlexibleMessageBox.Show("This will overwrite the selected section with the one you copied, would you like to overwrite it?\r\n\r\nSelecting 'Cancel' will cancel the paste action.", "Overwrite the section?", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); + + if (ovewriteExPS == DialogResult.Cancel) break; + else + { + tv_NodePaste(mi.Text); + break; + } case "Replace Existing Procedure": - DialogResult ovewriteEx = FlexibleMessageBox.Show("This will overwrite the selected procedure with then one you copied, would you like to overwrite it?\r\n\r\nSelecting 'Cancel' will cancel the paste action.", "Overwrite the procedure?", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);// == DialogResult.Yes; + DialogResult ovewriteEx = FlexibleMessageBox.Show("This will overwrite the selected procedure with the one you copied, would you like to overwrite it?\r\n\r\nSelecting 'Cancel' will cancel the paste action.", "Overwrite the procedure?", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);// == DialogResult.Yes; if (ovewriteEx == DialogResult.Cancel) break; else From 20cacf26aec111c7513d76bec6ad3dad8fe000db Mon Sep 17 00:00:00 2001 From: mschill Date: Tue, 13 May 2025 14:17:57 -0400 Subject: [PATCH 05/10] B2025-030 Show Cannot restore wording if restoring Annotation with a deleted annotation type. --- PROMS/Volian.Controls.Library/DisplayHistory.cs | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/PROMS/Volian.Controls.Library/DisplayHistory.cs b/PROMS/Volian.Controls.Library/DisplayHistory.cs index a66c6952..1978e024 100644 --- a/PROMS/Volian.Controls.Library/DisplayHistory.cs +++ b/PROMS/Volian.Controls.Library/DisplayHistory.cs @@ -897,11 +897,7 @@ namespace Volian.Controls.Library // B2023-072: Don't crash if annotation type was deleted for the restore annotation if (ai == null) { - AnnotationTypeInfo ati = AnnotationTypeInfo.Get(aai.TypeID); - if (ati == null) - { - FlexibleMessageBox.Show(this, "Annotation Type was deleted, cannot restore Annotation Type\r\nCopy text from window in Change Details and paste into new annotation to restore the text.", "Annotation Type Deleted", MessageBoxButtons.OK, MessageBoxIcon.Warning); - } + FlexibleMessageBox.Show(this, "Annotation Type was deleted, cannot restore Annotation Type\r\nCopy text from window in Change Details and paste into new annotation to restore the text.", "Annotation Type Deleted", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } OnAnnotationRestored(ai, ai.MyItem); From 2c1476b74c0c61df5e7d8db914cff23b5011a0e3 Mon Sep 17 00:00:00 2001 From: John Jenko Date: Tue, 13 May 2025 16:03:44 -0400 Subject: [PATCH 06/10] C2025-031 - Added Tool Tip text for button on V button. Code fix for DotNetBar Visual UI rendering --- .../frmSysOptions.Designer.cs | 2 +- .../frmVEPROMS.Designer.cs | 89 ++++++++++++------- PROMS/VEPROMS User Interface/frmVEPROMS.cs | 16 ++-- PROMS/VEPROMS User Interface/frmVEPROMS.resx | 18 ++-- PROMS/Volian.Controls.Library/DisplayTags.cs | 27 +++--- PROMS/Volian.Controls.Library/ImageItem.cs | 5 +- 6 files changed, 88 insertions(+), 69 deletions(-) diff --git a/PROMS/VEPROMS User Interface/frmSysOptions.Designer.cs b/PROMS/VEPROMS User Interface/frmSysOptions.Designer.cs index 7dbea98c..7146a533 100644 --- a/PROMS/VEPROMS User Interface/frmSysOptions.Designer.cs +++ b/PROMS/VEPROMS User Interface/frmSysOptions.Designer.cs @@ -1099,7 +1099,7 @@ namespace VEPROMS this.btnReset.Location = new System.Drawing.Point(194, 492); this.btnReset.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.btnReset.Name = "btnReset"; - this.btnReset.RightToLeft = System.Windows.Forms.RightToLeft.Yes; + this.btnReset.RightToLeft = System.Windows.Forms.RightToLeft.No; this.btnReset.Size = new System.Drawing.Size(79, 19); this.superTooltip1.SetSuperTooltip(this.btnReset, new DevComponents.DotNetBar.SuperTooltipInfo("Default Settings", "", "This will reset saved user settings back to the Proms system default.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(140, 95))); this.btnReset.TabIndex = 3; diff --git a/PROMS/VEPROMS User Interface/frmVEPROMS.Designer.cs b/PROMS/VEPROMS User Interface/frmVEPROMS.Designer.cs index 8548a650..030f4070 100644 --- a/PROMS/VEPROMS User Interface/frmVEPROMS.Designer.cs +++ b/PROMS/VEPROMS User Interface/frmVEPROMS.Designer.cs @@ -47,13 +47,13 @@ namespace VEPROMS this.btnOpen = new DevComponents.DotNetBar.ButtonItem(); this.btnPrepare = new DevComponents.DotNetBar.ButtonItem(); this.btnAdmin = new DevComponents.DotNetBar.ButtonItem(); - this.btnUpdateFormats = new DevComponents.DotNetBar.ButtonItem(); this.icRecentDocs = new DevComponents.DotNetBar.ItemContainer(); this.labelItem8 = new DevComponents.DotNetBar.LabelItem(); this.itemContainer5 = new DevComponents.DotNetBar.ItemContainer(); this.btnOptions = new DevComponents.DotNetBar.ButtonItem(); this.btnExit = new DevComponents.DotNetBar.ButtonItem(); this.qatCustomizeItem1 = new DevComponents.DotNetBar.QatCustomizeItem(); + this.btnUpdateFormats = new DevComponents.DotNetBar.ButtonItem(); this.galleryGroup1 = new DevComponents.DotNetBar.GalleryGroup(); this.galleryGroup2 = new DevComponents.DotNetBar.GalleryGroup(); this.galleryGroup3 = new DevComponents.DotNetBar.GalleryGroup(); @@ -208,13 +208,13 @@ namespace VEPROMS this.btnHelp.KeyTips = "?"; this.btnHelp.Name = "btnHelp"; this.btnHelp.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.btnHelpManual, - this.btnShortCuts, - this.btnHelpVWeb, - this.btnSendErrorLog, - this.btnShowErrFld, - this.btnShowPrtFld, - this.btnHelpAbout}); + this.btnHelpManual, + this.btnShortCuts, + this.btnHelpVWeb, + this.btnSendErrorLog, + this.btnShowErrFld, + this.btnShowPrtFld, + this.btnHelpAbout}); this.btnHelp.Text = "Help"; // // btnHelpManual @@ -249,23 +249,19 @@ namespace VEPROMS this.btnSendErrorLog.Click += new System.EventHandler(this.btnSendErrorLog_Click); // // btnShowErrFld - // - //this.btnShowErrFld.Image = global::VEPROMS.Properties.Resources.GoToParentFolderHS; + // this.btnShowErrFld.Image = ((System.Drawing.Image)(resources.GetObject("btnShowErrFld.Image"))); this.btnShowErrFld.Name = "btnShowErrFld"; this.btnShowErrFld.Text = "Open Log Folder"; this.btnShowErrFld.Click += new System.EventHandler(this.btnShowErrFld_Click); // // btnShowPrtFld - // - //this.btnShowPrtFld.Image = global::VEPROMS.Properties.Resources.GoToParentFolderHS; + // this.btnShowPrtFld.Image = ((System.Drawing.Image)(resources.GetObject("btnShowPrtFld.Image"))); this.btnShowPrtFld.Name = "btnShowPrtFld"; this.btnShowPrtFld.Text = "Open Default Print Folder"; this.btnShowPrtFld.Click += new System.EventHandler(this.btnShowPrtFld_Click); // - // - // // btnHelpAbout // this.btnHelpAbout.ButtonStyle = DevComponents.DotNetBar.eButtonStyle.ImageAndText; @@ -303,6 +299,10 @@ namespace VEPROMS this.itemContainer1.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { this.itemContainer2, this.itemContainer5}); + // + // + // + this.itemContainer1.TitleMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; // // // @@ -320,6 +320,10 @@ namespace VEPROMS this.itemContainer2.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { this.itemContainer3, this.icRecentDocs}); + // + // + // + this.itemContainer2.TitleMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; // // // @@ -340,6 +344,10 @@ namespace VEPROMS this.btnOpen, this.btnPrepare, this.btnAdmin}); + // + // + // + this.itemContainer3.TitleMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; // // // @@ -363,7 +371,6 @@ namespace VEPROMS this.btnOpen.SubItemsExpandWidth = 24; this.btnOpen.Text = "&Open..."; this.btnOpen.Click += new System.EventHandler(this.btnOpen_Click); - // // btnPrepare // @@ -382,16 +389,8 @@ namespace VEPROMS this.btnAdmin.CanCustomize = false; this.btnAdmin.Image = global::VEPROMS.Properties.Resources.Admin; this.btnAdmin.Name = "btnAdmin"; - //this.btnAdmin.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { - //this.btnUpdateFormats}); this.btnAdmin.Text = "A&dministration"; // - // btnUpdateFormats - // - this.btnUpdateFormats.Name = "btnUpdateFormats"; - this.btnUpdateFormats.Text = "Update Formats"; - this.btnUpdateFormats.Click += new System.EventHandler(this.btnUpdateFormat_Click); - // // icRecentDocs // // @@ -404,6 +403,10 @@ namespace VEPROMS this.icRecentDocs.Name = "icRecentDocs"; this.icRecentDocs.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { this.labelItem8}); + // + // + // + this.icRecentDocs.TitleMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; // // // @@ -432,6 +435,10 @@ namespace VEPROMS this.itemContainer5.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { this.btnOptions, this.btnExit}); + // + // + // + this.itemContainer5.TitleMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; // // // @@ -444,6 +451,7 @@ namespace VEPROMS this.btnOptions.Image = ((System.Drawing.Image)(resources.GetObject("btnOptions.Image"))); this.btnOptions.Name = "btnOptions"; this.btnOptions.SubItemsExpandWidth = 24; + this.superTooltip1.SetSuperTooltip(this.btnOptions, new DevComponents.DotNetBar.SuperTooltipInfo("Options", "", "Set User-Based PROMS Editing Preferences", null, null, DevComponents.DotNetBar.eTooltipColor.Gray)); this.btnOptions.Text = "Opt&ions"; this.btnOptions.Click += new System.EventHandler(this.btnOptions_Click); // @@ -454,6 +462,7 @@ namespace VEPROMS this.btnExit.Image = ((System.Drawing.Image)(resources.GetObject("btnExit.Image"))); this.btnExit.Name = "btnExit"; this.btnExit.SubItemsExpandWidth = 24; + this.superTooltip1.SetSuperTooltip(this.btnExit, new DevComponents.DotNetBar.SuperTooltipInfo("Exit", "", "Close and Exit PROMS", null, null, DevComponents.DotNetBar.eTooltipColor.Gray)); this.btnExit.Text = "E&xit"; this.btnExit.Click += new System.EventHandler(this.btnExit_Click); // @@ -461,6 +470,12 @@ namespace VEPROMS // this.qatCustomizeItem1.Name = "qatCustomizeItem1"; // + // btnUpdateFormats + // + this.btnUpdateFormats.Name = "btnUpdateFormats"; + this.btnUpdateFormats.Text = "Update Formats"; + this.btnUpdateFormats.Click += new System.EventHandler(this.btnUpdateFormat_Click); + // // galleryGroup1 // this.galleryGroup1.Name = "galleryGroup1"; @@ -535,7 +550,7 @@ namespace VEPROMS // this.txtSearch.Dock = System.Windows.Forms.DockStyle.Right; this.txtSearch.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F); - this.txtSearch.Location = new System.Drawing.Point(820, 0); + this.txtSearch.Location = new System.Drawing.Point(810, 0); this.txtSearch.Multiline = true; this.txtSearch.Name = "txtSearch"; this.txtSearch.Size = new System.Drawing.Size(100, 25); @@ -544,7 +559,7 @@ namespace VEPROMS // btnPrevious // this.btnPrevious.Dock = System.Windows.Forms.DockStyle.Right; - this.btnPrevious.Location = new System.Drawing.Point(920, 0); + this.btnPrevious.Location = new System.Drawing.Point(910, 0); this.btnPrevious.Name = "btnPrevious"; this.btnPrevious.Size = new System.Drawing.Size(23, 25); this.btnPrevious.TabIndex = 1; @@ -554,7 +569,7 @@ namespace VEPROMS // btnPrint1 // this.btnPrint1.Dock = System.Windows.Forms.DockStyle.Right; - this.btnPrint1.Location = new System.Drawing.Point(943, 0); + this.btnPrint1.Location = new System.Drawing.Point(933, 0); this.btnPrint1.Name = "btnPrint1"; this.btnPrint1.Size = new System.Drawing.Size(23, 25); this.btnPrint1.TabIndex = 2; @@ -566,7 +581,7 @@ namespace VEPROMS this.cbScrunch.Checked = true; this.cbScrunch.CheckState = System.Windows.Forms.CheckState.Checked; this.cbScrunch.Dock = System.Windows.Forms.DockStyle.Right; - this.cbScrunch.Location = new System.Drawing.Point(966, 0); + this.cbScrunch.Location = new System.Drawing.Point(956, 0); this.cbScrunch.Name = "cbScrunch"; this.cbScrunch.Size = new System.Drawing.Size(24, 25); this.cbScrunch.TabIndex = 3; @@ -575,7 +590,7 @@ namespace VEPROMS // btnNext // this.btnNext.Dock = System.Windows.Forms.DockStyle.Right; - this.btnNext.Location = new System.Drawing.Point(990, 0); + this.btnNext.Location = new System.Drawing.Point(980, 0); this.btnNext.Name = "btnNext"; this.btnNext.Size = new System.Drawing.Size(23, 25); this.btnNext.TabIndex = 4; @@ -586,7 +601,7 @@ namespace VEPROMS // this.cmbFont.Dock = System.Windows.Forms.DockStyle.Right; this.cmbFont.FormattingEnabled = true; - this.cmbFont.Location = new System.Drawing.Point(1013, 0); + this.cmbFont.Location = new System.Drawing.Point(1003, 0); this.cmbFont.Name = "cmbFont"; this.cmbFont.Size = new System.Drawing.Size(172, 23); this.cmbFont.TabIndex = 0; @@ -596,9 +611,10 @@ namespace VEPROMS // this.lblDummy.Dock = System.Windows.Forms.DockStyle.Right; this.lblDummy.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F); - this.lblDummy.Location = new System.Drawing.Point(1013, 0); + this.lblDummy.Location = new System.Drawing.Point(1175, 0); this.lblDummy.Name = "lblDummy"; this.lblDummy.Size = new System.Drawing.Size(10, 25); + this.lblDummy.TabIndex = 5; this.lblDummy.Visible = false; // // labelItem10 @@ -734,8 +750,9 @@ namespace VEPROMS // ctrlAnnotationDetails // this.ctrlAnnotationDetails.AnnotationDirty = false; - this.ctrlAnnotationDetails.AnnotationRTFText = "{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1033{\\fonttbl{\\f0\\fnil\\fcharset0 Microsoft S" + - "ans Serif;}}\r\n\\viewkind4\\uc1\\pard\\f0\\fs20\\par\r\n}\r\n"; + this.ctrlAnnotationDetails.AnnotationRTFText = "{\\rtf1\\ansi\\ansicpg1252\\deff0\\nouicompat\\deflang1033{\\fonttbl{\\f0\\fnil\\fcharset0 " + + "Microsoft Sans Serif;}}\r\n{\\*\\generator Riched20 10.0.26100}\\viewkind4\\uc1 \r\n\\par" + + "d\\f0\\fs20\\par\r\n}\r\n"; this.ctrlAnnotationDetails.Annotations = null; this.ctrlAnnotationDetails.AnnotationText = ""; this.ctrlAnnotationDetails.ClientProcess = null; @@ -806,6 +823,7 @@ namespace VEPROMS // tv // this.tv.AllowDrop = true; + this.tv.DelProcReason = null; this.tv.Dock = System.Windows.Forms.DockStyle.Fill; this.tv.Font = new System.Drawing.Font("Microsoft Sans Serif", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.tv.HideSelection = false; @@ -926,7 +944,7 @@ namespace VEPROMS this.displayTags.Dock = System.Windows.Forms.DockStyle.Fill; this.displayTags.IsVisible = false; this.displayTags.Location = new System.Drawing.Point(0, 0); - this.displayTags.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); + this.displayTags.Margin = new System.Windows.Forms.Padding(2); this.displayTags.MinimumSize = new System.Drawing.Size(100, 630); this.displayTags.MyEditItem = null; this.displayTags.Name = "displayTags"; @@ -1111,8 +1129,8 @@ namespace VEPROMS this.displayRO.Dock = System.Windows.Forms.DockStyle.Fill; this.displayRO.Location = new System.Drawing.Point(1, 1); this.displayRO.Margin = new System.Windows.Forms.Padding(4); + this.displayRO.MyDvi = null; this.displayRO.MyROFST = null; - //this.displayRO.MyROFSTLookup = null; this.displayRO.MyRTB = null; this.displayRO.Name = "displayRO"; this.displayRO.ProgressBar = null; @@ -1126,6 +1144,7 @@ namespace VEPROMS this.tc.ChgId = null; this.tc.Dock = System.Windows.Forms.DockStyle.Fill; this.tc.ForeColor = System.Drawing.SystemColors.ControlText; + this.tc.LastSelectedDisplayTabItem = null; this.tc.Location = new System.Drawing.Point(334, 57); this.tc.Margin = new System.Windows.Forms.Padding(4); this.tc.MyAnnotationDetails = null; @@ -1373,6 +1392,7 @@ namespace VEPROMS // displaySearch1 // this.displaySearch1.Dock = System.Windows.Forms.DockStyle.Fill; + this.displaySearch1.LastSearchWasAnnotations = false; this.displaySearch1.LoadingList = false; this.displaySearch1.Location = new System.Drawing.Point(1, 1); this.displaySearch1.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); @@ -1382,6 +1402,7 @@ namespace VEPROMS this.displaySearch1.ProgressBar = null; this.displaySearch1.ReportTitle = null; this.displaySearch1.RightToLeft = System.Windows.Forms.RightToLeft.Yes; + this.displaySearch1.SearchIncTransII = null; this.displaySearch1.SearchResults = null; this.displaySearch1.SearchString = null; this.displaySearch1.Size = new System.Drawing.Size(314, 462); diff --git a/PROMS/VEPROMS User Interface/frmVEPROMS.cs b/PROMS/VEPROMS User Interface/frmVEPROMS.cs index 9c78ae63..7d0197a2 100644 --- a/PROMS/VEPROMS User Interface/frmVEPROMS.cs +++ b/PROMS/VEPROMS User Interface/frmVEPROMS.cs @@ -2167,13 +2167,12 @@ namespace VEPROMS btnAdministrativeTools.Click += new EventHandler(btnAdministrativeTools_Click); btnAdmin.SubItems.Add(btnAdministrativeTools); - this.superTooltip1.SetSuperTooltip(btnExit, new SuperTooltipInfo("Exit", null, null, null, null, eTooltipColor.Gray)); - this.superTooltip1.SetSuperTooltip(btnOptions, new SuperTooltipInfo("Options", null, null, null, null, eTooltipColor.Gray)); - this.superTooltip1.SetSuperTooltip(btnManageSecurity, new SuperTooltipInfo("Manage Security", null, null, null, null, eTooltipColor.Gray)); - this.superTooltip1.SetSuperTooltip(btnUserControlOfFormats, new SuperTooltipInfo("User Control Of Formats", null, null, null, null, eTooltipColor.Gray)); - this.superTooltip1.SetSuperTooltip(btnResetSecurity, new SuperTooltipInfo("Reset Security", null, null, null, null, eTooltipColor.Gray)); - this.superTooltip1.SetSuperTooltip(btnAdministrativeTools, new SuperTooltipInfo("Administrative Tools", null, null, null, null, eTooltipColor.Gray)); - this.superTooltip1.SetSuperTooltip(btnUpdateFormats, new SuperTooltipInfo("Update Formats", null, null, null, null, eTooltipColor.Gray)); + this.superTooltip1.SetSuperTooltip(btnManageSecurity, new SuperTooltipInfo("Manage Security", "", "Add, Modify, and Delete PROMS User Access", null, null, eTooltipColor.Gray)); + // remove commented out line below when User Control of Formats code is deleted + //this.superTooltip1.SetSuperTooltip(btnUserControlOfFormats, new SuperTooltipInfo("User Control Of Formats", null, null, null, null, eTooltipColor.Gray)); + this.superTooltip1.SetSuperTooltip(btnResetSecurity, new SuperTooltipInfo("Reset Security", "", "WARNING this will \nREMOVE ALL PROMS USERS and Reset to\nthe Oringal Volian Defaults", null, null, eTooltipColor.Gray)); + this.superTooltip1.SetSuperTooltip(btnAdministrativeTools, new SuperTooltipInfo("Administrative Tools", "", "Open the PROMS Adminstation Tools Window", null, null, eTooltipColor.Gray)); + this.superTooltip1.SetSuperTooltip(btnUpdateFormats, new SuperTooltipInfo("Update Formats", "", "Install New Formats \n or Re-Install Formats", null, null, eTooltipColor.Gray)); try { @@ -2196,6 +2195,9 @@ namespace VEPROMS } ctrlAnnotationDetails.MyUserInfo = MyUserInfo; + // re-set to old RTF initialization to older RFT string + ctrlAnnotationDetails.AnnotationRTFText= "{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1033{\\fonttbl{\\f0\\fnil\\fcharset0 Microsoft Sans Serif;}}\r\n\\viewkind4\\uc1\\pard\\f0\\fs20\\par\r\n}\r\n"; + DisplayRO.MyUserInfo = MyUserInfo; // set the user's security information in the properties RO panel StepTabRibbon.MyUserInfo = MyUserInfo; // set the user's security information in the ribbon DisplayTransition.MyUserInfo = MyUserInfo; // set the user's security information in the Transition panel diff --git a/PROMS/VEPROMS User Interface/frmVEPROMS.resx b/PROMS/VEPROMS User Interface/frmVEPROMS.resx index 3c84ece0..efee24ed 100644 --- a/PROMS/VEPROMS User Interface/frmVEPROMS.resx +++ b/PROMS/VEPROMS User Interface/frmVEPROMS.resx @@ -172,16 +172,16 @@ - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAACxMAAAsTAQCanBgAAAA0SURBVDhPY2CgFHxqEvyPDX9sFOhAV4sVoGsk2RB0TeiY - oCH/l+n9pwSPGjBqAHUMGHAAAO9c/kJD+HpiAAAAAElFTkSuQmCC + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL + EwAACxMBAJqcGAAAADRJREFUOE9jYKAUfGoS/I8Nf2wU6EBXixWgayTZEHRN6JigIf+X6f2nBI8aMGoA + dQwYcAAA71z+QkP4emIAAAAASUVORK5CYII= - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAACxMAAAsTAQCanBgAAAA0SURBVDhPY2CgFHxqEvyPDX9sFOhAV4sVoGsk2RB0TeiY - oCH/l+n9pwSPGjBqAHUMGHAAAO9c/kJD+HpiAAAAAElFTkSuQmCC + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL + EwAACxMBAJqcGAAAADRJREFUOE9jYKAUfGoS/I8Nf2wU6EBXixWgayTZEHRN6JigIf+X6f2nBI8aMGoA + dQwYcAAA71z+QkP4emIAAAAASUVORK5CYII= @@ -339,6 +339,9 @@ HM29CO23pWh3l/Bz4QZPYlnkk5YA/gbYS8m5Qty18AAAAABJRU5ErkJggg== + + 240, 17 + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6 @@ -389,9 +392,6 @@ 2AlZGRmMVIjXgI7OLub6xkaVtLS0ovT09IjCwkIWdDUgDAAMn43RSw4q2AAAAABJRU5ErkJggg== - - 240, 17 - 651, 17 diff --git a/PROMS/Volian.Controls.Library/DisplayTags.cs b/PROMS/Volian.Controls.Library/DisplayTags.cs index a582db36..9761ae85 100644 --- a/PROMS/Volian.Controls.Library/DisplayTags.cs +++ b/PROMS/Volian.Controls.Library/DisplayTags.cs @@ -97,21 +97,6 @@ namespace Volian.Controls.Library set { if (Visible != value) Visible = value; } } - /// - /// Expose text properties for height and widht to handle selecting RO Image Types. - /// - public string TbFSwd - { - get {return tbFSWd.Text;} - set { tbFSWd.Text = value; tbFSWd.Refresh(); } // trBarFS.Value = Convert.ToInt32(value); - } - - public string TbFSht - { - get { return tbFSHt.Text; } - set { tbFSHt.Text = value; tbFSHt.Refresh(); _origFigureSizeRatio = float.Parse(value) / float.Parse(tbFSWd.Text); } - } - #endregion #region Constructor public DisplayTags() @@ -172,6 +157,18 @@ namespace Volian.Controls.Library tbFSWd.SelectionLength = 0; tbFSWd.SelectionStart = tbFSWd.TextLength; // position to the end of the Width text box } + /// + /// Update text properties for height and width for new RO Image Types. + /// + public void SetNewImageHeightAndWidth(int height, int width) + { + tbFSHt.Text = height.ToString(); + tbFSWd.Text = width.ToString(); + tbFSWd.Refresh(); + tbFSHt.Refresh(); + _origFigureSizeWidth = width; + _origFigureSizeRatio = (float)height / (float)width; + } public void ToggleChangeBar() // for use with shortcut keystoke { if (rbChgBarOff.Checked) diff --git a/PROMS/Volian.Controls.Library/ImageItem.cs b/PROMS/Volian.Controls.Library/ImageItem.cs index b51fcd9b..698fc85d 100644 --- a/PROMS/Volian.Controls.Library/ImageItem.cs +++ b/PROMS/Volian.Controls.Library/ImageItem.cs @@ -340,9 +340,8 @@ namespace Volian.Controls.Library this.Height = MyPictureBox.Height + 10; if (_displayTags != null) { - _displayTags._origFigureSizeWidth = wd; - _displayTags.TbFSwd = wd.ToString(); - _displayTags.TbFSht = ht.ToString(); + // Set the Height and Width on the step properties page for the new image + _displayTags.SetNewImageHeightAndWidth(ht, wd); } } From 700d9656b2dc8e2672d3794ca8c3371b721b0fea Mon Sep 17 00:00:00 2001 From: mschill Date: Wed, 14 May 2025 11:42:51 -0400 Subject: [PATCH 07/10] B2025-028 RO Editor - Parent Child Applicability - Default Values While working with parent/child applicability with child applicability set for a setpoint group - assign the Setpoint Values and Short Description fields to have Child values. All child values default to their parent values as expected. However, if you click in the Parent field for the Short Description, the Child Values for the Short Description fields incorrectly defaulted to the Parent Setpoint Value instead of keeping the parent Short Description. --- .../LibSource/ctlXMLEditLib/ctlXMLEdit.cs | 21 +++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/PROMS/ReferencedObjects/LibSource/ctlXMLEditLib/ctlXMLEdit.cs b/PROMS/ReferencedObjects/LibSource/ctlXMLEditLib/ctlXMLEdit.cs index 57a279a3..0313cf28 100644 --- a/PROMS/ReferencedObjects/LibSource/ctlXMLEditLib/ctlXMLEdit.cs +++ b/PROMS/ReferencedObjects/LibSource/ctlXMLEditLib/ctlXMLEdit.cs @@ -1192,14 +1192,27 @@ namespace ctlXMLEditLib // C2021-026 Event handler for Parent/Child child textbox // if the textbox text is same as parent, then or nothing is entered in the textbox // then use the parent value and set the text color to gray + // B2025-028 RO Editor - Parent Child Applicability - Default Values + // Were always setting to the Group parent value instead of individual parent values + // When leaving the textbox private void txtBox_Leave(object sender, EventArgs e) { TextBox tb = sender as TextBox; string dfTxt = ""; - string parName = pcGrpBox.Name.Substring(5); - object o = myHT[parName]; - if (o != null) - dfTxt = (o as TextBox).Text; // set to use the parent's value (default) + try + { + ctlXMLEdit tmp = (ctlXMLEdit)tb?.Parent; + if (!string.IsNullOrEmpty(tmp?.ActiveControl.Text)) + dfTxt = tmp.ActiveControl.Text; + } + catch + { + string parName = pcGrpBox.Name.Substring(5); + object o = myHT[parName]; + if (o != null) + dfTxt = (o as TextBox).Text; // set to use the parent's value (default) + } + if (dosaveflag) mysavexml = true; if (tb.Text.Length == 0 || tb.Text == dfTxt) { From 24d5cee8b434d98258974b012d25528542a37707 Mon Sep 17 00:00:00 2001 From: mschill Date: Thu, 15 May 2025 07:34:19 -0400 Subject: [PATCH 08/10] B2025-031 Improve wording for if attempting to delete copied section When an attempt is made to delete a section in the edit window that has been copied, the "Attempting to delete copied step" message box appears. This message box is incorrect because you're attempting to delete the section, not a step in the section. This only happens on a section that has been copied. --- PROMS/Volian.Controls.Library/StepTabRibbon.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/PROMS/Volian.Controls.Library/StepTabRibbon.cs b/PROMS/Volian.Controls.Library/StepTabRibbon.cs index 9834448d..77ed9197 100644 --- a/PROMS/Volian.Controls.Library/StepTabRibbon.cs +++ b/PROMS/Volian.Controls.Library/StepTabRibbon.cs @@ -3588,7 +3588,9 @@ namespace Volian.Controls.Library if (tmp.MyDisplayTabControl.MyCopyStep != null && tmp.MyDisplayTabControl.MyCopyStep.ItemID == MyEditItem.MyItemInfo.ItemID) { - if (FlexibleMessageBox.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; + //B2025-031 - Improve wording for if attempting to delete copied section + string stype = MyEditItem.MyItemInfo.IsSection ? "section" : "step"; + if (FlexibleMessageBox.Show($"Are you sure?\n\nIf you delete this {stype} you will not able to paste it.\nYou should paste it before you delete it.", $"Attempting to delete copied {stype}.", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) return; clearCopyStep = true; } From 79f66e964179c0b7da5def81c8c8afd6ea6d855d Mon Sep 17 00:00:00 2001 From: John Jenko Date: Thu, 15 May 2025 09:01:43 -0400 Subject: [PATCH 09/10] C2025-031 Fixed typos found in Tool Tip message from previous check-in of this code change --- PROMS/VEPROMS User Interface/frmVEPROMS.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/PROMS/VEPROMS User Interface/frmVEPROMS.cs b/PROMS/VEPROMS User Interface/frmVEPROMS.cs index 7d0197a2..877a4ec7 100644 --- a/PROMS/VEPROMS User Interface/frmVEPROMS.cs +++ b/PROMS/VEPROMS User Interface/frmVEPROMS.cs @@ -2167,11 +2167,12 @@ namespace VEPROMS btnAdministrativeTools.Click += new EventHandler(btnAdministrativeTools_Click); btnAdmin.SubItems.Add(btnAdministrativeTools); + // C2025-031 added tool tip messages this.superTooltip1.SetSuperTooltip(btnManageSecurity, new SuperTooltipInfo("Manage Security", "", "Add, Modify, and Delete PROMS User Access", null, null, eTooltipColor.Gray)); // remove commented out line below when User Control of Formats code is deleted //this.superTooltip1.SetSuperTooltip(btnUserControlOfFormats, new SuperTooltipInfo("User Control Of Formats", null, null, null, null, eTooltipColor.Gray)); - this.superTooltip1.SetSuperTooltip(btnResetSecurity, new SuperTooltipInfo("Reset Security", "", "WARNING this will \nREMOVE ALL PROMS USERS and Reset to\nthe Oringal Volian Defaults", null, null, eTooltipColor.Gray)); - this.superTooltip1.SetSuperTooltip(btnAdministrativeTools, new SuperTooltipInfo("Administrative Tools", "", "Open the PROMS Adminstation Tools Window", null, null, eTooltipColor.Gray)); + this.superTooltip1.SetSuperTooltip(btnResetSecurity, new SuperTooltipInfo("Reset Security", "", "WARNING this will \nREMOVE ALL PROMS USERS and Reset to the\nOriginal Volian Defaults", null, null, eTooltipColor.Gray)); + this.superTooltip1.SetSuperTooltip(btnAdministrativeTools, new SuperTooltipInfo("Administrative Tools", "", "Open the PROMS Adminstration Tools Window", null, null, eTooltipColor.Gray)); this.superTooltip1.SetSuperTooltip(btnUpdateFormats, new SuperTooltipInfo("Update Formats", "", "Install New Formats \n or Re-Install Formats", null, null, eTooltipColor.Gray)); try From 2970c0d7d4b1d46f741d71c5e6e73cb0df68661a Mon Sep 17 00:00:00 2001 From: mschill Date: Thu, 15 May 2025 10:28:47 -0400 Subject: [PATCH 10/10] B2025-028 RO Editor - Parent Child Applicability - Default Values While working with parent/child applicability with child applicability set for a setpoint group - assign the Setpoint Values and Short Description fields to have Child values. All child values default to their parent values as expected. However, if you click in the Parent field for the Short Description, the Child Values for the Short Description fields incorrectly defaulted to the Parent Setpoint Value instead of keeping the parent Short Description. --- .../LibSource/ctlXMLEditLib/ctlXMLEdit.cs | 35 ++++++++++++++++--- 1 file changed, 30 insertions(+), 5 deletions(-) diff --git a/PROMS/ReferencedObjects/LibSource/ctlXMLEditLib/ctlXMLEdit.cs b/PROMS/ReferencedObjects/LibSource/ctlXMLEditLib/ctlXMLEdit.cs index 0313cf28..e181526c 100644 --- a/PROMS/ReferencedObjects/LibSource/ctlXMLEditLib/ctlXMLEdit.cs +++ b/PROMS/ReferencedObjects/LibSource/ctlXMLEditLib/ctlXMLEdit.cs @@ -276,8 +276,10 @@ namespace ctlXMLEditLib bool imagechild; //whether this field is a subchild of an image string imagename; //if subchild of image, name of image parent (for save) string imagedate; //if this was filename, save the date/time stamp + string name; //name of element + string parenthtid; //name of parent element in hashtable for PC items public TextBoxAttrTag(bool reqd, string ptn, RadioButton rd, bool img, - string imgname, string imgdate) + string imgname, string imgdate, string elemname) { this.req_msg = null; this.required = reqd; @@ -286,6 +288,12 @@ namespace ctlXMLEditLib this.imagechild = img; this.imagename = imgname; this.imagedate = imgdate; + this.name = elemname; + + if (name.Contains("_PCCHILD")) + this.parenthtid = name.Substring(0, name.IndexOf("_PCCHILD")); + else + this.parenthtid = null; } public void SetPattern(string pattern) {this.pattern = pattern;} public void SetRequired(bool req) {this.required = req;} @@ -298,6 +306,10 @@ namespace ctlXMLEditLib public string GetImageName { get {return imagename;}} public string GetImageDate { get {return imagedate;}} public void SetImageDate(string imgdate) {this.imagedate = imgdate;} + public string GetName { get { return name; } } + public void SetName(string elemname) { this.name = elemname; } + public string GetParentHTId { get { return parenthtid; } } + public void SetParentHTId(string id) { this.parenthtid = id; } } public ctlXMLEdit(VlnXmlElement myelem, XmlSchema myschema, ArrayList reqfields, ArrayList fldsWithApplic, string [] pckids) @@ -928,7 +940,7 @@ namespace ctlXMLEditLib // initialization. if (mytextbox.Tag == null) { - TextBoxAttrTag tag = new TextBoxAttrTag(false, pattern, radio, img, (img?imgname:null), null); + TextBoxAttrTag tag = new TextBoxAttrTag(false, pattern, radio, img, (img?imgname:null), null, mytextbox.Name); mytextbox.Tag = (object) tag; } return getannot; @@ -1136,6 +1148,7 @@ namespace ctlXMLEditLib mytextbox = new TextBox(); mytextbox.Location = new Point(screenx+indent, screeny); string tFieldName = (pcChildIdx == 0) ? CvtUserFldToFld(element.Name) : CvtUserFldToFld(pcChildFldName); + mytextbox.Name = tFieldName; myHT.Add(tFieldName, mytextbox); tabindx++; Controls.Add(mytextbox); @@ -1201,9 +1214,21 @@ namespace ctlXMLEditLib string dfTxt = ""; try { - ctlXMLEdit tmp = (ctlXMLEdit)tb?.Parent; - if (!string.IsNullOrEmpty(tmp?.ActiveControl.Text)) - dfTxt = tmp.ActiveControl.Text; + string parentid = ((TextBoxAttrTag)tb.Tag).GetParentHTId; + if (!string.IsNullOrEmpty(parentid)) + { + object o = myHT[parentid]; + if (o != null) + dfTxt = (o as TextBox).Text; // set to use the parent's value (default) + } + else + { + + string parName = pcGrpBox.Name.Substring(5); + object o = myHT[parName]; + if (o != null) + dfTxt = (o as TextBox).Text; // set to use the parent's value (default) + } } catch {