~Adjusted width of High-level RNO in 2-column format

This commit is contained in:
Chris Glavan 2024-02-19 10:43:40 -05:00
commit 79f6a0eeb9
49 changed files with 762 additions and 521 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -746,7 +746,7 @@ namespace RODBInterface
string csufx = string.Format("_PCCHILD{0}", pcChildIdx);
//applicValues += ",";
XmlNode cn = elmnode.SelectSingleNode(parentName + csufx);
if (cn == null)
if (cn == null || cn.InnerText.Length == 0) // B2024-004 use Parent value if Child text length is zero
applicValues += string.Format(",UnitIdx={0} Value={1}", pcChildIdx, parentValue); // use parent value as default
else
{

View File

@ -473,7 +473,7 @@ namespace ctlXMLEditLib
nd = node.SelectSingleNode(str);
// if not found with just the string, search the tree.
if (nd==null)nd = node.SelectSingleNode("*/"+str);
if (nd == null)
if (nd == null || nd.InnerText.Length==0) // B2024-004 use Parent value if Child text length is zero
GetDefaultParentValue(hwnd, node, str); // C2021-026 Parent/Child Field has no value so use parent's value
else
{

View File

@ -59,6 +59,13 @@ namespace VEPROMS
get { return _Automatic; }
set { _Automatic = value; }
}
private int _prtSectID = -1;
public int PrtSectID
{
get { return _prtSectID; }
set { _prtSectID = value; }
}
// C2018-033 Used to turn off using the date/time PDF file prefix and suffix when doing batch file autmatic baseline print testing (frmVEPROMS.cs RunAutomatic())
// This is needed so the the automatic baselines can compare results from different runs of PROMS
@ -768,7 +775,7 @@ namespace VEPROMS
// B2021-102 put in the using for better memory management
using (frmPDFStatusForm frmStatus = new frmPDFStatusForm(MyProcedure, RevNumAndDate, waterMarkText, cbxDebug.Checked, cbxOrPgBrk.Checked,
cbxOpenAfterCreate2.Checked, cbxOverwritePDF2.Checked, myPDFPath, cbd, txbPDFName.Text, new Point(Left, Bottom - 50),
swtbtnBlankPgsForDuplex.Value, _AllProcedures || Automatic, Prefix, SaveLinks, RemoveTrailingHardReturnsAndManualPageBreaks, swtbtnPROMSVersion.Value, true, tbBlankPage.Text, _MergedPfd, watermarkColor))//;//C2018-009 print PROMS version
swtbtnBlankPgsForDuplex.Value, _AllProcedures || Automatic, Prefix, SaveLinks, RemoveTrailingHardReturnsAndManualPageBreaks, swtbtnPROMSVersion.Value, true, tbBlankPage.Text, _MergedPfd, watermarkColor, PrtSectID))//;//C2018-009 print PROMS version
{
frmStatus.CloseWhenDone = true;
Application.DoEvents();
@ -849,8 +856,9 @@ namespace VEPROMS
// B2016-249 Output Procedure to folder associated with Parent Child
using (frmPDFStatusForm frmStatus = new frmPDFStatusForm(MyProcedure, RevNumAndDate, waterMarkText, cbxDebug.Checked,
cbxOrPgBrk.Checked, cbxOpenAfterCreate2.Checked, cbxOverwritePDF2.Checked, GetMultiunitPDFPath(), cbd, txbPDFName.Text,
new Point(Left, Bottom - 50), swtbtnBlankPgsForDuplex.Value, _AllProcedures || Automatic, Prefix, SaveLinks, RemoveTrailingHardReturnsAndManualPageBreaks, swtbtnPROMSVersion.Value, true, tbBlankPage.Text, _MergedPfd, watermarkColor)) // ;//C2018-009 print PROMS version
new Point(Left, Bottom - 50), swtbtnBlankPgsForDuplex.Value, _AllProcedures || Automatic, Prefix, SaveLinks, RemoveTrailingHardReturnsAndManualPageBreaks, swtbtnPROMSVersion.Value, true, tbBlankPage.Text, _MergedPfd, watermarkColor, PrtSectID)) // ;//C2018-009 print PROMS version
{
frmStatus.PrtSectID = PrtSectID;
frmStatus.CloseWhenDone = true;
Application.DoEvents();
frmStatus.CancelStop = true;
@ -1001,7 +1009,7 @@ namespace VEPROMS
// B2018-124 use text of watermark form drop down list instead of enum value
using (frmPDFStatusForm frmStatus = new frmPDFStatusForm(MyProcedure, RevNumAndDate, waterMarkText, cbxDebug.Checked, cbxOrPgBrk.Checked,
cbxOpenAfterCreate2.Checked, cbxOverwritePDF2.Checked, GetMultiunitPDFPath(), cbd, txbPDFName.Text, new Point(Left, Bottom - 50),
swtbtnBlankPgsForDuplex.Value, _AllProcedures || Automatic, Prefix, SaveLinks, RemoveTrailingHardReturnsAndManualPageBreaks, swtbtnPROMSVersion.Value, false, tbBlankPage.Text, _MergedPfd, watermarkColor))//; //C2018-009 print PROMS version
swtbtnBlankPgsForDuplex.Value, _AllProcedures || Automatic, Prefix, SaveLinks, RemoveTrailingHardReturnsAndManualPageBreaks, swtbtnPROMSVersion.Value, false, tbBlankPage.Text, _MergedPfd, watermarkColor, PrtSectID))//; //C2018-009 print PROMS version
{
frmStatus.MakePlaceKeeper = swtbtnGeneratePlacekeeper.Value;
frmStatus.MakeContinuousActionSummary = cbxGenerateConActSum.Checked;

View File

@ -44,8 +44,18 @@ using System.Runtime.InteropServices;
// Revision DHH (day - no leading zero, two digit hour - military time
//
// ********* REMEMBER TO CHECK THE AssemblyConfiguration SETTING (ABOVE) ********
[assembly: AssemblyVersion("2.1.2311.3014")]
[assembly: AssemblyFileVersion("2.1.2311.3014")]
[assembly: AssemblyVersion("2.1.2402.616")]
[assembly: AssemblyFileVersion("2.1.2402.616")]

View File

@ -91,7 +91,13 @@ namespace VEPROMS
get { return _DidAll; }
set { _DidAll = value; }
}
public frmPDFStatusForm(ItemInfo myItem, string rev, string watermark, bool debugOutput, bool origPgBrk, bool openPDF, bool overWrite, string pdfPath, ChangeBarDefinition cbd, string pdfFile, Point newLocation, bool insertBlankPages, bool allOrAuto, string prefix, bool saveLinks, int removeTrailingHardReturnsAndManualPageBreaks, bool showPROMSVer, bool didAll, string blankPageText, MergedPdf mergedPdf, string watermarkColor)
private int _prtSectID = -1;
public int PrtSectID
{
get { return _prtSectID; }
set { _prtSectID = value; }
}
public frmPDFStatusForm(ItemInfo myItem, string rev, string watermark, bool debugOutput, bool origPgBrk, bool openPDF, bool overWrite, string pdfPath, ChangeBarDefinition cbd, string pdfFile, Point newLocation, bool insertBlankPages, bool allOrAuto, string prefix, bool saveLinks, int removeTrailingHardReturnsAndManualPageBreaks, bool showPROMSVer, bool didAll, string blankPageText, MergedPdf mergedPdf, string watermarkColor, int PrtSectID = -1)
{
// B2021-088 moved this if/else from CreatePDF() so that the Approval logic will have access to this logic
ProcedureInfo MyProcedure = myItem as ProcedureInfo;
@ -116,6 +122,7 @@ namespace VEPROMS
Prefix = prefix;
OpenPDF = openPDF;
DidAll = didAll;
_prtSectID = PrtSectID;
InitializeComponent();
@ -276,7 +283,7 @@ namespace VEPROMS
cachePartInfo = PartInfo.CacheList;
}
_PdfFile = MyPromsPrinter.Print(PDFPath, MakePlaceKeeper, MakeContinuousActionSummary, MakeTimeCriticalActionSummary);
_PdfFile = MyPromsPrinter.Print(PDFPath, MakePlaceKeeper, MakeContinuousActionSummary, MakeTimeCriticalActionSummary, PrtSectID);
ProfileTimer.Pop(profileDepth);

View File

@ -36,6 +36,8 @@ namespace VEPROMS
this.btnShortCuts = new DevComponents.DotNetBar.ButtonItem();
this.btnHelpVWeb = new DevComponents.DotNetBar.ButtonItem();
this.btnSendErrorLog = new DevComponents.DotNetBar.ButtonItem();
this.btnShowErrFld = new DevComponents.DotNetBar.ButtonItem();
this.btnShowPrtFld = new DevComponents.DotNetBar.ButtonItem();
this.btnHelpAbout = new DevComponents.DotNetBar.ButtonItem();
this.office2007StartButton1 = new DevComponents.DotNetBar.Office2007StartButton();
this.itemContainer1 = new DevComponents.DotNetBar.ItemContainer();
@ -206,11 +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.btnHelpAbout});
this.btnHelpManual,
this.btnShortCuts,
this.btnHelpVWeb,
this.btnSendErrorLog,
this.btnShowErrFld,
this.btnShowPrtFld,
this.btnHelpAbout}); ;
this.btnHelp.Text = "Help";
//
// btnHelpManual
@ -244,6 +248,24 @@ namespace VEPROMS
this.btnSendErrorLog.Text = "Send Error Log";
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;
@ -1733,6 +1755,8 @@ namespace VEPROMS
private DevComponents.DotNetBar.TabItem infotabFoldoutMaint;
private Volian.Controls.Library.DisplayFoldoutMaint displayFoldoutMaint;
private DevComponents.DotNetBar.ButtonItem btnSendErrorLog;
private DevComponents.DotNetBar.ButtonItem btnShowErrFld;
private DevComponents.DotNetBar.ButtonItem btnShowPrtFld;
private DevComponents.DotNetBar.TabControlPanel tabControlPanel3;
private DevComponents.DotNetBar.TabItem toosTabReports;
private Volian.Controls.Library.DisplayReports displayReports;

View File

@ -21,6 +21,7 @@ using DescriptiveEnum;
using Volian.Base.Library;
using Volian.Print.Library;
using JR.Utils.GUI.Forms;
using System.Diagnostics;
[assembly: log4net.Config.XmlConfigurator(Watch = true)]
@ -514,6 +515,7 @@ namespace VEPROMS
ItemInfo.ItemDeleted += new ItemInfoEvent(RefreshDisplayHistory);
tv.PrintProcedure += new vlnTreeViewEvent(tv_PrintProcedure);
tv.PrintSection += new vlnTreeViewEvent(tv_PrintSection);
tv.QPrintProcedure += new vlnTreeViewEvent(tv_QPrintProcedure);
tv.PrintAllProcedures += new vlnTreeViewEvent(tv_PrintAllProcedures);
tv.ApproveProcedure += new vlnTreeViewEvent(tv_ApproveProcedure);
@ -1189,6 +1191,45 @@ namespace VEPROMS
}
void tv_PrintSection(object sender, vlnTreeEventArgs args) // Quick Print right click menu on Procedure name.
{
try
{
//args.Node.Parent.
SectionInfo si2 = (args.Node as VETreeNode).VEObject as SectionInfo;
int _prtSectID = si2.ItemID;
if (si2 == null) return;
tc.SaveCurrentEditItem(si2.MyProcedure);
si2.MyDocVersion.DocVersionConfig.SelectedSlave = args.UnitIndex;
using (DlgPrintProcedure prnDlg = new DlgPrintProcedure(si2.MyProcedure))
{
prnDlg.PrtSectID = _prtSectID;
prnDlg.SelectedSlave = args.UnitIndex;
prnDlg.MySessionInfo = MySessionInfo;
prnDlg.SetupForProcedure(); // Setup filename
prnDlg.ShowDialog(this); // Create Print report
si2.MyProcedure.MyDocVersion.DocVersionConfig.SelectedSlave = 0;
}
}
catch (Exception ex)
{
StringBuilder sb = new StringBuilder();
sb.AppendLine("Could not create PDF Print");
sb.AppendLine();
MessageBox.Show(sb.ToString(), "Error when creating PDF Print", MessageBoxButtons.OK, MessageBoxIcon.Warning);
_MyLog.Warn("Failed to create PDF print", ex);
}
}
void tv_CreateContinuousActionSummary(object sender, vlnTreeEventArgs args)
{
DialogResult dr = System.Windows.Forms.DialogResult.Yes;
@ -4932,6 +4973,26 @@ namespace VEPROMS
}
}
private void btnShowErrFld_Click(object sender, EventArgs e)
{
string path = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
path = path + @"\Documents\VEPROMS";
if (Directory.Exists(path))
{
Process.Start("explorer.exe", path);
}
}
private void btnShowPrtFld_Click(object sender, EventArgs e)
{
string path = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
path = path + @"\AppData\Local\Temp\VEPROMS";
if (Directory.Exists(path))
{
Process.Start("explorer.exe", path);
}
}
private void btnHelpManual_Click(object sender, EventArgs e)
{
// C2019-024 Display the PROMS User Manual when user click on the option in the Help drop down menu

View File

@ -170,6 +170,18 @@
rkJggg==
</value>
</data>
<data name="btnShowErrFld.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAANUlEQVR4nGNgoBR8ahL8jw1/bBTooMiAT8Qa8gmPAUQZ8n+Z3n9KMMOoAf9Hw0CPCmEw4AAA71z+QhwwNhoAAAAASUVORK5CYII=
</value>
</data>
<data name="btnShowPrtFld.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAANUlEQVR4nGNgoBR8ahL8jw1/bBTooMiAT8Qa8gmPAUQZ8n+Z3n9KMMOoAf9Hw0CPCmEw4AAA71z+QhwwNhoAAAAASUVORK5CYII=
</value>
</data>
<data name="btnHelpAbout.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6

View File

@ -665,10 +665,12 @@ namespace VEPROMS.CSLA.Library
{
TranFixCount++;
itemInfo.MyContent.FixTransitionText(traninfo, itemInfo, "Reason for Change: Transition to Non-Editable Step");
Content content = Content.Get(itemInfo.MyContent.ContentID);
content.FixTransitionText(traninfo, true);
content.Save();
}
using (Content content = Content.Get(itemInfo.MyContent.ContentID)) //B2024-006 free up content memory when done
{
content.FixTransitionText(traninfo, true);
content.Save();
}
}
}
if (!forceConvertToText)
@ -682,10 +684,12 @@ namespace VEPROMS.CSLA.Library
forceConvertToText = true;
TranFixCount++;
itemInfo.MyContent.FixTransitionText(traninfo, itemInfo, "Reason for Change: Transition to External Procedure using Internal Format");
Content content = Content.Get(itemInfo.MyContent.ContentID);
content.FixTransitionText(traninfo, true);
content.Save();
}
using (Content content = Content.Get(itemInfo.MyContent.ContentID)) //B2024-006 free up content memory when done
{
content.FixTransitionText(traninfo, true);
content.Save();
}
}
}
}
}
@ -701,9 +705,11 @@ namespace VEPROMS.CSLA.Library
forceConvertToText = true;
TranFixCount++;
itemInfo.MyContent.FixTransitionText(traninfo, itemInfo, "Reason for Change: Transition to Outside Procedure using Internal Format");
Content content = Content.Get(itemInfo.MyContent.ContentID);
content.FixTransitionText(traninfo, true);
content.Save();
using (Content content = Content.Get(itemInfo.MyContent.ContentID)) //B2024-006 free up content memory when done
{
content.FixTransitionText(traninfo, true);
content.Save();
}
}
}
}
@ -719,9 +725,11 @@ namespace VEPROMS.CSLA.Library
if (newText != oldText || newValue == "?")
{
TranFixCount++;
Content content = Content.Get(itemInfo.MyContent.ContentID);
content.FixTransitionText(traninfo);
content.Save();
using (Content content = Content.Get(itemInfo.MyContent.ContentID)) //B2024-006 free up content memory when done
{
content.FixTransitionText(traninfo);
content.Save();
}
}
}
}
@ -966,24 +974,26 @@ namespace VEPROMS.CSLA.Library
{
//ShowDifference(oldText, newText); // debug - display in Visual Studio Output window
ROFixCount++;
Content content = Content.Get(itemInfo.MyContent.ContentID);
if (roval == "?")
using (Content content = Content.Get(itemInfo.MyContent.ContentID)) //B2024-006 free up content memory when done
{
oldText = content.ConvertROToText(rousage, roval, roch.type, origROFst);
using (Item myitem = content.ContentItems[0].MyItem) // so that myitem does not stay in cache B2016-153
if (roval == "?")
{
myitem.DisposeOfContent = false; // don't dispose of the contents may be needed if more than one RO needs processed - part of B2017-060
// B2016-225 (follow through) added more descriptive Annotation Type when RO is converted to text
Annotation.MakeAnnotation(myitem, AnnotationType.GetByNameOrCreate("Link Converted To Text"), "", string.Format("RO value ({0}) converted to text", ItemInfo.ConvertToDisplayText(oldText)), null);
oldText = content.ConvertROToText(rousage, roval, roch.type, origROFst);
using (Item myitem = content.ContentItems[0].MyItem) // so that myitem does not stay in cache B2016-153
{
myitem.DisposeOfContent = false; // don't dispose of the contents may be needed if more than one RO needs processed - part of B2017-060
// B2016-225 (follow through) added more descriptive Annotation Type when RO is converted to text
Annotation.MakeAnnotation(myitem, AnnotationType.GetByNameOrCreate("Link Converted To Text"), "", string.Format("RO value ({0}) converted to text", ItemInfo.ConvertToDisplayText(oldText)), null);
}
}
else
{
content.FixContentText(rousage, roval, roch.type, origROFst);
}
content.UserID = Volian.Base.Library.VlnSettings.UserID;
content.DTS = DateTime.Now;
content.Save();
}
else
{
content.FixContentText(rousage, roval, roch.type, origROFst);
}
content.UserID = Volian.Base.Library.VlnSettings.UserID;
content.DTS = DateTime.Now;
content.Save();
}
}
}

View File

@ -1545,6 +1545,9 @@ namespace VEPROMS.CSLA.Library
{
//if (tb._FromItem.MyContent.InList(5322)) Console.WriteLine("Here");
string str1 = TranGetSectionNumber(tb._ToItem);
// F2024-008 added flag to title case the section number in transitions
if (tb._FormatData.TransData.Cap1stCharTransSectionNumber)
str1 = CapFirstLetterOnly(str1, 0);
if(!tb._ToItem.ActiveFormat.PlantFormat.FormatData.PrintData.SpecialCaseCalvert) return str1;
List<ItemInfo> FromSections = GetSections(tb._FromItem.ActiveSection);
List<ItemInfo> ToSections = GetSections(tb._ToItem.ActiveSection);
@ -1615,6 +1618,9 @@ namespace VEPROMS.CSLA.Library
sectionTitle = (tb._FormatData.TransData.CapsTransitionsSection ? sectionTitle.ToUpper().Replace(@"\U", @"\u") :
tb._FormatData.TransData.Cap1stCharTransSection ? CapFirstLetterOnly(sectionTitle, 0) :
sectionTitle);
// F2024-008 Added flag to surround the section title with parenthesis in transitions
if (tb._FormatData.TransData.ParensAroundSectionTitle)
sectionTitle = string.Format("({0})", sectionTitle);
// B2017-236 Replace embedded returns with spaces and trim the spaces from the end of the section title.
return TrimSectionTitle(sectionTitle);
}

View File

@ -7103,6 +7103,7 @@ namespace VEPROMS.CSLA.Library
return LazyLoad(ref _Cap1stCharTrans, "@Cap1stCharTrans");
}
}
// Title Case section title
private LazyLoad<bool> _Cap1stCharTransSection;
public bool Cap1stCharTransSection
{
@ -7111,6 +7112,24 @@ namespace VEPROMS.CSLA.Library
return LazyLoad(ref _Cap1stCharTransSection, "@Cap1stCharTransSection");
}
}
// Title Case section number
private LazyLoad<bool> _Cap1stCharTransSectionNumber;
public bool Cap1stCharTransSectionNumber
{
get
{
return LazyLoad(ref _Cap1stCharTransSectionNumber, "@Cap1stCharTransSectionNumber");
}
}
// Parens around section title
private LazyLoad<bool> _ParensAroundSectionTitle;
public bool ParensAroundSectionTitle
{
get
{
return LazyLoad(ref _ParensAroundSectionTitle, "@ParensAroundSectionTitle");
}
}
private LazyLoad<bool> _UseTransitionModifier;
public bool UseTransitionModifier
{

View File

@ -208,7 +208,7 @@ namespace Volian.Controls.Library
// set other procedure related private variables.
vlnTreeComboSetsFillIn(_CurrentProcedure);
cbTranProcsFillIn(_CurrentProcedure);
if (_CurrentProcedure.Sections != null)
if (_CurrentProcedure.Sections != null && secitm != null)
{
// if the selected format is using section default, initialize with the section default (find it),
// otherwise use current section item.
@ -987,6 +987,7 @@ namespace Volian.Controls.Library
if (prcitm.Sections != null)
{
foreach (SectionInfo sio in prcitm.Sections)
{
SectionConfig sc = sio.MyConfig as SectionConfig;
if (sc != null && sc.Section_OriginalSteps == "Y")
@ -1115,6 +1116,8 @@ namespace Volian.Controls.Library
this.superToolTipDispTran.SetSuperTooltip(this.listBoxTranFmt, new DevComponents.DotNetBar.SuperTooltipInfo("", "",
"This is where transition types are selected. This also defines how the transition will look in the text.",
null, null, DevComponents.DotNetBar.eTooltipColor.Gray));
// B2024-007 color of transition panel was not toggling properly
groupPanelTranFmt.Style.BackColor = !HasDefault && NeedsDefault ? Color.Red : Color.Orange;
//btnTranSave.Enabled = allowSave;
//if (CurTrans != null && selii != null)
//{

View File

@ -3395,6 +3395,8 @@ namespace Volian.Controls.Library
Cursor = Cursors.Default;
return;
}
// B2024-002: Save any changes to the database so that updating of ROs has current data:
MyEditItem.SaveContents();
using (DocVersion dv = DocVersion.Get(Mydvi.VersionID))
{
swROUpdate = new System.IO.StreamWriter(ROFstInfo.ROUpdateResultsPath(Mydvi));

View File

@ -1,36 +1,36 @@
namespace Volian.Controls.Library
{
partial class vlnTreeView
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
partial class vlnTreeView
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
components = new System.ComponentModel.Container();
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
components = new System.ComponentModel.Container();
}
#endregion
}
#endregion
}
}

View File

@ -506,6 +506,11 @@ namespace Volian.Controls.Library
{
if (QPrintProcedure != null) QPrintProcedure(sender, args);
}
public event vlnTreeViewEvent PrintSection;
private void OnPrintSection(object sender, vlnTreeEventArgs args)
{
if (PrintSection != null) PrintSection(sender, args);
}
public event vlnTreeViewEvent PrintAllProcedures;
private void OnPrintAllProcedures(object sender, vlnTreeEventArgs args)
{
@ -837,6 +842,7 @@ namespace Volian.Controls.Library
MenuItem mitcas = new MenuItem("Create Time Critical Action Summary"); //F2022-024 added menu option
MenuItem mip = new MenuItem("Print");
MenuItem miqp = new MenuItem("Quick Print");
//MenuItem mips = new MenuItem("Print Section");
MenuItem mia = new MenuItem("Approve");
int k = 0;
foreach (string s in pri.MyDocVersion.UnitNames)
@ -850,6 +856,9 @@ namespace Volian.Controls.Library
MenuItem mqp = miqp.MenuItems.Add(s, new EventHandler(miMultiUnit_Click));
mqp.Enabled = procAppl;
mqp.Tag = k;
//MenuItem mps = mips.MenuItems.Add(s, new EventHandler(miMultiUnit_Click));
//mps.Enabled = procAppl;
//mps.Tag = k;
MenuItem ma = mia.MenuItems.Add(s, new EventHandler(miMultiUnit_Click));
ma.Enabled = procAppl;
ma.Tag = k;
@ -864,6 +873,7 @@ namespace Volian.Controls.Library
cm.MenuItems.Add(mitcas);
cm.MenuItems.Add(mip);
cm.MenuItems.Add(miqp);
//cm.MenuItems.Add(mips);
AddShowChangeBarsAfterMenuItem(cm.MenuItems, pri);
cm.MenuItems.Add(mia);
AddApprovedRevisionsMultiUnit(cm.MenuItems, pri);
@ -874,6 +884,7 @@ namespace Volian.Controls.Library
cm.MenuItems.Add("Create Time Critical Action Summary", new EventHandler(mi_Click));
cm.MenuItems.Add("Print", new EventHandler(mi_Click));
cm.MenuItems.Add("Quick Print", new EventHandler(mi_Click));
//cm.MenuItems.Add("Print Section", new EventHandler(mi_Click));
//MenuItem miqp = new MenuItem("Print");
AddShowChangeBarsAfterMenuItem(cm.MenuItems, pri);
cm.MenuItems.Add("Approve", new EventHandler(mi_Click));
@ -945,6 +956,25 @@ namespace Volian.Controls.Library
SectionConfig sc = si.MyConfig as SectionConfig;
if (!si.IsEnhancedSection && (si.Sections == null || si.Sections.Count == 0 || (meta && sc != null && si.Sections != null && si.Sections.Count > 0 && sc.SubSection_Edit == "Y")))
cm.MenuItems.Add("New Step", new EventHandler(mi_Click));
//ProcedureInfo pri = tn as SectionInfo;
SectionInfo si2 = (tn as VETreeNode).VEObject as SectionInfo;
if (si2.MyDocVersion.MultiUnitCount > 1)
{
MenuItem mps = new MenuItem("Print Section");
int k = 0;
foreach (string s in si2.MyDocVersion.UnitNames)
{
k++;
MenuItem mp = mps.MenuItems.Add(s, new EventHandler(miMultiUnit_Click));
mp.Tag = k;
}
cm.MenuItems.Add(mps);
}
else
{
cm.MenuItems.Add("Print Section", new EventHandler(mi_Click));
}
}
}
}
@ -962,7 +992,13 @@ namespace Volian.Controls.Library
}
#endregion
//_MyLog.WarnFormat("Context Menu 2 - {0}", GC.GetTotalMemory(true));
//#region Print_Section
//if (!tn.IsExpanded && tn.VEObject as SectionInfo != null)
//{
// SectionInfo si = tn.VEObject as SectionInfo;
// if (si.IsStepSection) cm.MenuItems.Add("Print Section", new EventHandler(mi_Click));
//}
//#endregion
#region Menu_Open
if (!tn.IsExpanded && tn.VEObject as SectionInfo != null)
{
@ -1000,6 +1036,10 @@ namespace Volian.Controls.Library
// require clearing of all enhanced config data or mapping it to existing data (quite complicated)
if ((ui.IsAdministrator() || ui.IsSetAdministrator(i.MyProcedure.MyDocVersion) || ui.IsWriter(i.MyProcedure.MyDocVersion)) && (!i.IsEnhancedStep && !i.IsEnhancedProcedure && !i.IsEnhancedSection && !i.IsRtfRaw && !i.IsFigure))
cm.MenuItems.Add("Copy", new EventHandler(mi_Click));
if (i.HasWordContent)
{
cm.MenuItems.Add("Print Section", new EventHandler(mi_Click));
}
}
#endregion
//_MyLog.WarnFormat("Context Menu 4 - {0}", GC.GetTotalMemory(true));
@ -1747,6 +1787,9 @@ namespace Volian.Controls.Library
case "Quick Print":
OnQPrintProcedure(this, new vlnTreeEventArgs(SelectedNode as VETreeNode, null, 0, mi.Text, (int)mi.Tag));
break;
case "Print Section":
OnPrintSection(this, new vlnTreeEventArgs(SelectedNode as VETreeNode, null, 0, mi.Text, (int)mi.Tag));
break;
case "Print All Procedures for":
OnPrintAllProcedures(this, new vlnTreeEventArgs(SelectedNode as VETreeNode, null, 0,mi.Text,(int)mi.Tag));
break;
@ -1880,6 +1923,10 @@ namespace Volian.Controls.Library
}
switch (mi.Text)
{
case "Print Section":
VETreeNode tn2 = SelectedNode as VETreeNode;
OnPrintSection(this, new vlnTreeEventArgs(tn2 as VETreeNode, null, 0));
break;
case "Open":
OpenNode();
break;

File diff suppressed because it is too large Load Diff

View File

@ -85,6 +85,12 @@ namespace Volian.Print.Library
get { return _TopMessage; }
set { _TopMessage = value; }
}
private int _prtSectID = -1;
public int PrtSectID
{
get { return _prtSectID; }
set { _prtSectID = value; }
}
private List<vlnText> _TopMessageRs=new List<vlnText>(); // Added if there are 2 messages, in AER AND RNO (for BGE)
public List<vlnText> TopMessageRs
{
@ -867,12 +873,15 @@ i = 0;
set
{
_MySection = value;
MySectionTitle = ((_MySection.DisplayNumber ?? string.Empty)==string.Empty ? string.Empty : _MySection.DisplayNumber + " - ") + _MySection.DisplayText;
MySectionTitle = ((_MySection.DisplayNumber ?? string.Empty) == string.Empty ? string.Empty : _MySection.DisplayNumber + " - ") + _MySection.DisplayText;
bool forceLoadSvg = false;
if (value.SectionConfig.Section_Pagination == SectionConfig.SectionPagination.Separate && value.MyDocStyle.ResetFirstPageOnSection)
DidFirstPageDocStyle = false;
if (DidFirstPageDocStyle)
forceLoadSvg = SetDocStyleAndValues(); // this method also gets the SVG (the 'else' part of this)
if (_prtSectID > -1) {
forceLoadSvg = true;
}
Volian.Svg.Library.Svg sectSvg = BuildSvg(_MySection, forceLoadSvg);
if (sectSvg != null) MySvg = sectSvg;
_YTopMargin = null;
@ -1031,9 +1040,10 @@ i = 0;
set { _MyPromsPrinter = value; }
}
private int _MyRomanPage = 1;
public VlnSvgPageHelper(VEPROMS.CSLA.Library.SectionInfo mySection, PromsPrinter myPromsPrinter, string hlsText, int hlsItemId)
public VlnSvgPageHelper(VEPROMS.CSLA.Library.SectionInfo mySection, PromsPrinter myPromsPrinter, string hlsText, int hlsItemId, int PrtSectID)
: base()
{
_prtSectID = PrtSectID;
HLSText = hlsText;
HasHLSTextId = hlsItemId;
MyPromsPrinter = myPromsPrinter;
@ -1836,6 +1846,8 @@ i = 0;
float coverlinelen = ((ctlen == 0) ? (int)section.ActiveFormat.PlantFormat.FormatData.ProcData.TitleLength : ctlen) * (float)pageItem.Font.CPI / 12;
string title1 = section.MyProcedure.MyContent.Text;
if (section.ActiveFormat.PlantFormat.FormatData.ProcData.CapitalizeTitle) title1 = title1.ToUpper();
// F2024-012 copied this line from above (processing COVERPROCTITLE) to resolve unit designators in the procedure title
if (title1.ToUpper().Contains(@"<U")) title1 = VEPROMS.CSLA.Library.DisplayText.ResolveUnitSpecific(section.MyDocVersion, title1);
plstr = SplitCoverTitle(svgGroup, pageItem, title1, (int)coverlinelen, token, plstr);//, rowAdj);
break;
case "{TITLE&UNIT}":