Compare commits
58 Commits
F2026-004_
...
B2025-064_
| Author | SHA1 | Date | |
|---|---|---|---|
| d198a7b63a | |||
| db3d9fc65f | |||
| f9738451db | |||
| ec73b5cbea | |||
| f3bd6b6469 | |||
| fd50993fb9 | |||
| 079381dbb0 | |||
| 85bdc35342 | |||
| 2aaaa55e42 | |||
| e999bea228 | |||
| 287c06383b | |||
| 202409c140 | |||
| 34886beccb | |||
| 3d200cc34e | |||
| b13883530a | |||
| 032e04bc50 | |||
| 625b715832 | |||
| e1ac360271 | |||
| 7eda88bdbe | |||
| 90fdb94e95 | |||
| 15979203ce | |||
| 53360a03af | |||
| 9f6f7c23f6 | |||
| 7419f4e886 | |||
| f90a80c366 | |||
| d9ec756e22 | |||
| 9f7c24c540 | |||
| fe2833395d | |||
| dfce44a47a | |||
| 22280bf1e3 | |||
| 30aedb6eec | |||
| 12f175740f | |||
| 5c0f11aea1 | |||
| 879518c4a9 | |||
| ecaf00c5b3 | |||
| bfdc77da97 | |||
| 9e64e5a60e | |||
| 35eb05432b | |||
| 77c6298067 | |||
| 0ae45eb918 | |||
| 5ce168071c | |||
| d560468f3c | |||
| ac5e49d0fc | |||
| 447d1f510c | |||
| c0651e4e2c | |||
| f8865206e9 | |||
| 5e7d2431b3 | |||
| 99216321a8 | |||
| 5a2c0460aa | |||
| 72c2bd90e4 | |||
| d4ecf28147 | |||
| 751794c1ec | |||
| c561aad661 | |||
| 9023cc76a0 | |||
| 52583a05f6 | |||
| 37b4726925 | |||
| cc66eb5329 | |||
| 563c133676 |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -77,6 +77,7 @@ using System.Xml.Schema;
|
||||
using System.Text;
|
||||
using ROFields;
|
||||
using RODBInterface;
|
||||
using System.Linq;
|
||||
|
||||
namespace ROEditor
|
||||
{
|
||||
@@ -280,6 +281,7 @@ namespace ROEditor
|
||||
this.tbXYPlotWid.Size = new System.Drawing.Size(40, 22);
|
||||
this.tbXYPlotWid.TabIndex = 11;
|
||||
this.tbXYPlotWid.Text = "";
|
||||
this.tbXYPlotWid.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtBox_KeyDown);
|
||||
//
|
||||
// tbTableWid
|
||||
//
|
||||
@@ -288,6 +290,7 @@ namespace ROEditor
|
||||
this.tbTableWid.Size = new System.Drawing.Size(40, 22);
|
||||
this.tbTableWid.TabIndex = 10;
|
||||
this.tbTableWid.Text = "";
|
||||
this.tbTableWid.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtBox_KeyDown);
|
||||
//
|
||||
// tbVariableTxtWid
|
||||
//
|
||||
@@ -296,6 +299,7 @@ namespace ROEditor
|
||||
this.tbVariableTxtWid.Size = new System.Drawing.Size(40, 22);
|
||||
this.tbVariableTxtWid.TabIndex = 9;
|
||||
this.tbVariableTxtWid.Text = "";
|
||||
this.tbVariableTxtWid.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtBox_KeyDown);
|
||||
//
|
||||
// tbSingleTxtWid
|
||||
//
|
||||
@@ -304,6 +308,7 @@ namespace ROEditor
|
||||
this.tbSingleTxtWid.Size = new System.Drawing.Size(40, 22);
|
||||
this.tbSingleTxtWid.TabIndex = 8;
|
||||
this.tbSingleTxtWid.Text = "";
|
||||
this.tbSingleTxtWid.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtBox_KeyDown);
|
||||
//
|
||||
// lblW4
|
||||
//
|
||||
@@ -586,5 +591,18 @@ namespace ROEditor
|
||||
|
||||
this.Close();
|
||||
}
|
||||
private void txtBox_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))
|
||||
{
|
||||
string clpBrd = Clipboard.GetText();
|
||||
if (clpBrd.Any(c => c > 166))
|
||||
{
|
||||
MessageBox.Show("Symbols are not allowed in the field. Clipbroad: '" + clpBrd + "'");
|
||||
Clipboard.Clear();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -77,6 +77,7 @@ using System.Xml.Schema;
|
||||
using System.Text;
|
||||
using ROFields;
|
||||
using RODBInterface;
|
||||
using System.Linq;
|
||||
|
||||
namespace ROEditor
|
||||
{
|
||||
@@ -316,6 +317,22 @@ namespace ROEditor
|
||||
}
|
||||
base.Dispose( disposing );
|
||||
}
|
||||
private void txtBox_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
bool symFlg = false;
|
||||
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))
|
||||
{
|
||||
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))
|
||||
{
|
||||
string clpBrd = Clipboard.GetText();
|
||||
if (clpBrd.Any(c => c > 166))
|
||||
{
|
||||
MessageBox.Show("Symbols are not allowed in the field. Clipbroad: '" + clpBrd + "'");
|
||||
Clipboard.Clear();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
/// <summary>
|
||||
@@ -357,6 +374,7 @@ namespace ROEditor
|
||||
this.tbFieldName.Size = new System.Drawing.Size(320, 22);
|
||||
this.tbFieldName.TabIndex = 2;
|
||||
this.tbFieldName.Text = "";
|
||||
this.tbFieldName.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtBox_KeyDown);
|
||||
//
|
||||
// tbWidth
|
||||
//
|
||||
@@ -365,6 +383,7 @@ namespace ROEditor
|
||||
this.tbWidth.Size = new System.Drawing.Size(32, 22);
|
||||
this.tbWidth.TabIndex = 3;
|
||||
this.tbWidth.Text = "";
|
||||
this.tbWidth.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtBox_KeyDown);
|
||||
//
|
||||
// btnOK
|
||||
//
|
||||
@@ -402,6 +421,7 @@ namespace ROEditor
|
||||
this.tbPattern.TabIndex = 7;
|
||||
this.tbPattern.Text = "";
|
||||
this.tbPattern.Visible = false;
|
||||
this.tbPattern.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtBox_KeyDown);
|
||||
//
|
||||
// FieldTextFrm
|
||||
//
|
||||
@@ -425,3 +445,4 @@ namespace ROEditor
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -72,6 +72,7 @@ using System.Xml;
|
||||
using System.Text;
|
||||
using RODBInterface;
|
||||
using ROFields;
|
||||
using System.Linq;
|
||||
|
||||
namespace ROEditor
|
||||
{
|
||||
@@ -277,6 +278,22 @@ namespace ROEditor
|
||||
|
||||
this.Close();
|
||||
}
|
||||
private void txtBox_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
bool symFlg = false;
|
||||
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))
|
||||
{
|
||||
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))
|
||||
{
|
||||
string clpBrd = Clipboard.GetText();
|
||||
if (clpBrd.Any(c => c > 166))
|
||||
{
|
||||
MessageBox.Show("Symbols are not allowed in the field. Clipbroad: '" + clpBrd + "'");
|
||||
Clipboard.Clear();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#region Windows Form Designer generated code
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
@@ -315,6 +332,7 @@ namespace ROEditor
|
||||
this.tbFieldName.Size = new System.Drawing.Size(368, 22);
|
||||
this.tbFieldName.TabIndex = 1;
|
||||
this.tbFieldName.Text = "";
|
||||
this.tbFieldName.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtBox_KeyDown);
|
||||
//
|
||||
// gbFldType
|
||||
//
|
||||
@@ -437,3 +455,4 @@ namespace ROEditor
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -52,6 +52,7 @@ using System.Xml;
|
||||
using System.Text;
|
||||
using ROFields;
|
||||
using RODBInterface;
|
||||
using System.Linq;
|
||||
|
||||
namespace ROEditor
|
||||
{
|
||||
@@ -155,6 +156,7 @@ namespace ROEditor
|
||||
this.tbGroup.Size = new System.Drawing.Size(248, 22);
|
||||
this.tbGroup.TabIndex = 8;
|
||||
this.tbGroup.Text = "";
|
||||
this.tbGroup.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtBox_KeyDown);
|
||||
//
|
||||
// lblGroup
|
||||
//
|
||||
@@ -421,5 +423,21 @@ namespace ROEditor
|
||||
GroupDefFrm grdef = new GroupDefFrm(nelem,myrodb,nelem.InnerText,dbtype);
|
||||
grdef.ShowDialog();
|
||||
}
|
||||
private void txtBox_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))
|
||||
{
|
||||
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))
|
||||
{
|
||||
string clpBrd = Clipboard.GetText();
|
||||
if (clpBrd.Any(c => c > 166))
|
||||
{
|
||||
MessageBox.Show("Symbols are not allowed in the field. Clipbroad: '" + clpBrd + "'");
|
||||
Clipboard.Clear();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -106,6 +106,7 @@ using ROFields;
|
||||
using RODBInterface;
|
||||
using VlnStatus;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
|
||||
namespace ROEditor
|
||||
@@ -1311,6 +1312,22 @@ namespace ROEditor
|
||||
}
|
||||
}
|
||||
}
|
||||
private void txtBox_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
bool symFlg = false;
|
||||
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))
|
||||
{
|
||||
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))
|
||||
{
|
||||
string clpBrd = Clipboard.GetText();
|
||||
if (clpBrd.Any(c => c > 166))
|
||||
{
|
||||
MessageBox.Show("Symbols are not allowed in the field. Clipbroad: '" + clpBrd + "'");
|
||||
Clipboard.Clear();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
/// <summary>
|
||||
@@ -1375,6 +1392,7 @@ namespace ROEditor
|
||||
this.tbRetVal.Size = new System.Drawing.Size(464, 22);
|
||||
this.tbRetVal.TabIndex = 4;
|
||||
this.tbRetVal.Text = "textBox1";
|
||||
this.tbRetVal.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtBox_KeyDown);
|
||||
//
|
||||
// tbMenuVal
|
||||
//
|
||||
@@ -1383,6 +1401,7 @@ namespace ROEditor
|
||||
this.tbMenuVal.Size = new System.Drawing.Size(464, 22);
|
||||
this.tbMenuVal.TabIndex = 5;
|
||||
this.tbMenuVal.Text = "textBox1";
|
||||
this.tbMenuVal.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtBox_KeyDown);
|
||||
//
|
||||
// lblGroupText
|
||||
//
|
||||
@@ -1608,3 +1627,4 @@ namespace ROEditor
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -109,6 +109,10 @@
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="DevComponents.DotNetBar2, Version=14.1.0.37, Culture=neutral, PublicKeyToken=7eb7c3a35b91de04, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\..\..\..\..\..\3rdPartyLibraries\DotNetBar\DotNetBar4.6Build\DevComponents.DotNetBar2.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System">
|
||||
<Name>System</Name>
|
||||
</Reference>
|
||||
@@ -124,10 +128,6 @@
|
||||
<Reference Include="System.Xml">
|
||||
<Name>System.XML</Name>
|
||||
</Reference>
|
||||
<Reference Include="Volian.Base.Library, Version=1.0.0.0, Culture=neutral, processorArchitecture=x86">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\..\..\Volian.Base.Library\bin\Debug\Volian.Base.Library.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="AboutROEditor.cs">
|
||||
@@ -168,6 +168,7 @@
|
||||
<Compile Include="RO_FST.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Content Include="Symbols.xml" />
|
||||
<EmbeddedResource Include="AboutROEditor.resx">
|
||||
<SubType>Designer</SubType>
|
||||
<DependentUpon>AboutROEditor.cs</DependentUpon>
|
||||
|
||||
@@ -125,7 +125,7 @@
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACE
|
||||
CAAAAk1TRnQBSQFMAgEBAgEAASwBAAEsAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
CAAAAk1TRnQBSQFMAgEBAgEAAUQBAAFEAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||
@@ -175,7 +175,7 @@
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAe
|
||||
CwAAAk1TRnQBSQFMAgEBBgEAASwBAAEsAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
CwAAAk1TRnQBSQFMAgEBBgEAAUQBAAFEAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||
|
||||
@@ -101,7 +101,6 @@ using System.Runtime.InteropServices;
|
||||
using VlnStatus;
|
||||
using System.Collections.Specialized;
|
||||
using ROFST_FILE;
|
||||
using Volian.Base.Library;
|
||||
|
||||
//using VlnProfiler; //don't forget to add VlnProfiler to the reference list
|
||||
|
||||
@@ -885,3 +884,4 @@ namespace ROEditor
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -263,6 +263,7 @@ using System.Collections.Specialized;
|
||||
using Org.Mentalis.Files;
|
||||
using System.Data.SqlClient;
|
||||
using System.Collections.Generic;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
|
||||
namespace RODBInterface
|
||||
@@ -1909,6 +1910,8 @@ namespace RODBInterface
|
||||
string Info = DBE.GetString(3);
|
||||
//B2022-043 &pos; was missing the ;
|
||||
Info = Info.Replace("'", "\'"); // B2021-071: crash when getting/saving field names
|
||||
Info = Regex.Replace(Info, @"\\u([0-9]{1,4})\?", m => Convert.ToChar(int.Parse(m.Groups[1].Value)).ToString()); // RO Editor add symbols C2022 - 003
|
||||
|
||||
node.SetAttribute("HasChild", "True");
|
||||
|
||||
// Store data in the VlnXmlElement as a subgroup
|
||||
@@ -2182,10 +2185,13 @@ namespace RODBInterface
|
||||
parent.SetAttribute("ChildLoaded", "True");
|
||||
}
|
||||
string xmlstr = GenerateXmlString(ro, false);
|
||||
|
||||
string wraccid = null;
|
||||
if (ro.HasAttribute("AccPageID"))
|
||||
{
|
||||
string accid = ro.GetAttribute("AccPageID");
|
||||
|
||||
|
||||
int quote = accid.IndexOf("'");
|
||||
if (quote >= 0)
|
||||
wraccid = accid.Insert(quote, "'");
|
||||
@@ -2251,7 +2257,7 @@ namespace RODBInterface
|
||||
// select all of the field definition records in this table.
|
||||
// strGetFields = "SELECT RecID, Info from " + elem.GetAttribute("Table");
|
||||
strGetFields = "SELECT RecID, Info from " + TableName;
|
||||
strGetFields = strGetFields + " where RecType = 2"; // + rtype.ToString();
|
||||
strGetFields = strGetFields + " where RecType = 2";
|
||||
DBE.Command(strGetFields);
|
||||
DBE.Reader();
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ namespace ctlXMLEditLib
|
||||
{
|
||||
private System.Windows.Forms.Button btnSave;
|
||||
private System.Windows.Forms.Button btnCancel;
|
||||
private System.Windows.Forms.TextBox tbZoom;
|
||||
private ctlXMLEditLib.roRichTextBox tbZoom; // RO Editor add symbols C2022 - 003
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
@@ -88,7 +88,7 @@ namespace ctlXMLEditLib
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.tbZoom = new System.Windows.Forms.TextBox();
|
||||
this.tbZoom = new ctlXMLEditLib.roRichTextBox(); // RO Editor add symbols C2022 - 003
|
||||
this.btnSave = new System.Windows.Forms.Button();
|
||||
this.btnCancel = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
@@ -99,7 +99,7 @@ namespace ctlXMLEditLib
|
||||
this.tbZoom.Location = new System.Drawing.Point(24, 16);
|
||||
this.tbZoom.Multiline = true;
|
||||
this.tbZoom.Name = "tbZoom";
|
||||
this.tbZoom.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
|
||||
this.tbZoom.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.Vertical; // RO Editor add symbols C2022 - 003
|
||||
this.tbZoom.Size = new System.Drawing.Size(576, 392);
|
||||
this.tbZoom.TabIndex = 0;
|
||||
//
|
||||
@@ -149,3 +149,4 @@ namespace ctlXMLEditLib
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -200,7 +200,11 @@ using System.Xml.Schema;
|
||||
using System.Text;
|
||||
using RODBInterface;
|
||||
using Org.Mentalis.Files;
|
||||
//using IniFileIO;
|
||||
using System.Windows;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Linq;
|
||||
using Volian.Base.Library;
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -221,6 +225,7 @@ namespace ctlXMLEditLib
|
||||
///
|
||||
///
|
||||
/// </summary>
|
||||
|
||||
public class ctlXMLEdit : System.Windows.Forms.UserControl
|
||||
{
|
||||
/// <summary>
|
||||
@@ -237,12 +242,12 @@ namespace ctlXMLEditLib
|
||||
private bool dosaveflag;
|
||||
private VlnXmlElement editelem;
|
||||
private XmlDocument editdoc;
|
||||
private TextBox zoomtextbox;
|
||||
private roRichTextBox zoomtextbox;
|
||||
// the following is used for handling images. Note that if we want to have more
|
||||
// than one image defined in an ro, this should be become a list.
|
||||
private TextBox GraphicsFiletextbox;
|
||||
private TextBox GraphicsWdtextbox;
|
||||
private TextBox GraphicsHttextbox;
|
||||
private roRichTextBox GraphicsFiletextbox;
|
||||
private roRichTextBox GraphicsWdtextbox;
|
||||
private roRichTextBox GraphicsHttextbox;
|
||||
private System.Windows.Forms.Button btnFindFile;
|
||||
private string GraphicsText;
|
||||
private ToolTip zmtooltip;
|
||||
@@ -265,6 +270,19 @@ namespace ctlXMLEditLib
|
||||
private GroupBox pcGrpBox = null;
|
||||
/** end C2021-026 **/
|
||||
|
||||
public string _RO_IDEN;
|
||||
public string RO_IDEN
|
||||
{
|
||||
get
|
||||
{
|
||||
return _RO_IDEN;
|
||||
}
|
||||
set
|
||||
{
|
||||
_RO_IDEN = value;
|
||||
}
|
||||
}
|
||||
|
||||
// use this struct to define attributes for the text box fields, storing
|
||||
// the pattern, radio button association, required field flag, etc.
|
||||
struct TextBoxAttrTag
|
||||
@@ -311,10 +329,19 @@ namespace ctlXMLEditLib
|
||||
public string GetParentHTId { get { return parenthtid; } }
|
||||
public void SetParentHTId(string id) { this.parenthtid = id; }
|
||||
}
|
||||
|
||||
private roRichTextBox _TextBoxFocus; // RO Editor add symbols C2022 - 003
|
||||
public roRichTextBox TextBoxFocus
|
||||
{
|
||||
get { return _TextBoxFocus; }
|
||||
set
|
||||
{
|
||||
_TextBoxFocus = value;
|
||||
}
|
||||
}
|
||||
public ctlXMLEdit(VlnXmlElement myelem, XmlSchema myschema, ArrayList reqfields, ArrayList fldsWithApplic, string [] pckids)
|
||||
{
|
||||
// This call is required by the Windows.Forms Form Designer.
|
||||
|
||||
InitializeComponent();
|
||||
FieldsWithApplic = fldsWithApplic;
|
||||
PCChildren = pckids; //C2021-026 list of Parent/Child children
|
||||
@@ -359,11 +386,12 @@ namespace ctlXMLEditLib
|
||||
// Set required fields based on list. (can add message later).
|
||||
SetRequiredFields(reqfields);
|
||||
dosaveflag=true;
|
||||
RO_IDEN = myelem.GetAccPageIDTemplate();
|
||||
}
|
||||
|
||||
// set the required fields tag on those fields which are included in the passed
|
||||
// in required fields list.
|
||||
private void DoSet(TextBox hwnd, string msg)
|
||||
private void DoSet(roRichTextBox hwnd, string msg) // RO Editor add symbols C2022 - 003
|
||||
{
|
||||
if (hwnd == null) return;
|
||||
if (hwnd.Tag != null)
|
||||
@@ -378,7 +406,7 @@ namespace ctlXMLEditLib
|
||||
private void SetRequiredFields(ArrayList reqfields)
|
||||
{
|
||||
Object o;
|
||||
TextBox hwnd;
|
||||
roRichTextBox hwnd;
|
||||
string field, msg;
|
||||
int indx;
|
||||
foreach (string strfld in reqfields)
|
||||
@@ -397,15 +425,15 @@ namespace ctlXMLEditLib
|
||||
o = myHT[field+"a"];
|
||||
if (o != null) // set all combo types required, the checker
|
||||
{
|
||||
DoSet((TextBox)o,msg);
|
||||
DoSet((TextBox)myHT[field+"b"],msg);
|
||||
DoSet((TextBox)myHT[field+"c"],msg);
|
||||
DoSet((TextBox)myHT[field+"d"],msg);
|
||||
DoSet((roRichTextBox)o,msg);
|
||||
DoSet((roRichTextBox)myHT[field+"b"],msg);
|
||||
DoSet((roRichTextBox)myHT[field+"c"],msg);
|
||||
DoSet((roRichTextBox)myHT[field+"d"],msg);
|
||||
}
|
||||
}
|
||||
else if (o != null)
|
||||
{
|
||||
hwnd = (TextBox) o;
|
||||
hwnd = (roRichTextBox) o;
|
||||
if (hwnd.Tag != null)
|
||||
{
|
||||
TextBoxAttrTag tag = (TextBoxAttrTag) hwnd.Tag;
|
||||
@@ -419,7 +447,7 @@ namespace ctlXMLEditLib
|
||||
|
||||
// C2021-026 If this is a Parent/Child field that has no value saved in the database
|
||||
// then use the parent's value and display it as grey colored text.
|
||||
private void GetDefaultParentValue(TextBox tb, XmlNode node, string chldName)
|
||||
private void GetDefaultParentValue(roRichTextBox tb, XmlNode node, string chldName)
|
||||
{
|
||||
XmlNode parentNode = null;
|
||||
// PCChildren contains a list strings reprenting the Children setup in the current Working Draft Parent/Child property
|
||||
@@ -463,21 +491,23 @@ namespace ctlXMLEditLib
|
||||
private void DisplayFieldContents(XmlNode node)
|
||||
{
|
||||
Object o;
|
||||
TextBox hwnd;
|
||||
roRichTextBox hwnd;
|
||||
XmlNode nd;
|
||||
// if we have an image, check it for validity, i.e. file exists, etc.??
|
||||
foreach (string str in myHT.Keys)
|
||||
{
|
||||
o = myHT[str];
|
||||
hwnd = (TextBox) o;
|
||||
hwnd = (roRichTextBox) o;
|
||||
nd = node.SelectSingleNode(str);
|
||||
// if not found with just the string, search the tree.
|
||||
if (nd==null)nd = node.SelectSingleNode("*/"+str);
|
||||
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
|
||||
{
|
||||
hwnd.Text = nd.InnerText; // set the field's text from XML
|
||||
{
|
||||
|
||||
hwnd.Text = Regex.Replace(nd.InnerText, @"\\u([0-9]{1,4})\?", m => Convert.ToChar(int.Parse(m.Groups[1].Value)).ToString()); // set the field's text from XML
|
||||
Size size = hwnd.Size;
|
||||
|
||||
// check if this window has a button name as part of its tag. If
|
||||
// so it's a combo type & the radio button/visibility may need to
|
||||
@@ -546,7 +576,7 @@ namespace ctlXMLEditLib
|
||||
// height/width data of the image.
|
||||
if (GraphicsFiletextbox != null && GraphicsFiletextbox.Text != "") UpdateHtWd();
|
||||
}
|
||||
public TextBox GetGraphicsFiletextbox()
|
||||
public roRichTextBox GetGraphicsFiletextbox()
|
||||
{
|
||||
return GraphicsFiletextbox;
|
||||
}
|
||||
@@ -585,13 +615,13 @@ namespace ctlXMLEditLib
|
||||
{
|
||||
dosaveflag=false;
|
||||
mysavexml=false;
|
||||
TextBox hwnd;
|
||||
roRichTextBox hwnd;
|
||||
// first, clear out all of the text boxes.
|
||||
|
||||
foreach (string str in myHT.Keys)
|
||||
{
|
||||
object o = myHT[str];
|
||||
hwnd = (TextBox) o;
|
||||
hwnd = (roRichTextBox) o;
|
||||
hwnd.Text = "";
|
||||
TextBoxAttrTag tag = (TextBoxAttrTag) hwnd.Tag;
|
||||
RadioButton radio;
|
||||
@@ -623,7 +653,7 @@ namespace ctlXMLEditLib
|
||||
// to the parent's value, then clear the child's textbox so that nothing is saved
|
||||
// to the database. This allow us to know that a specific value was not set
|
||||
// for this Parent/Child child
|
||||
private void RemovePCChildTextIfSameAsParent(XmlNode node, TextBox tb, string chldName)
|
||||
private void RemovePCChildTextIfSameAsParent(XmlNode node, roRichTextBox tb, string chldName)
|
||||
{
|
||||
XmlNode parentNode = null;
|
||||
// if this is a child node get the parent's value
|
||||
@@ -660,18 +690,35 @@ namespace ctlXMLEditLib
|
||||
// true if success, false if fail.
|
||||
// Note that the Parent and Child XML node variables below are not coding for Parent/Child Applicabily Fields
|
||||
public bool SaveData()
|
||||
|
||||
{
|
||||
if (mysavexml)
|
||||
{
|
||||
TextBox hwnd;
|
||||
roRichTextBox hwnd;
|
||||
TextBoxAttrTag tag;
|
||||
string imgdate;
|
||||
|
||||
//go thru the hash table to get textboxes. Find the ones that have text.
|
||||
foreach (string str in myHT.Keys)
|
||||
foreach (string str in myHT.Keys) // RO Editor add symbols C2022 - 003
|
||||
{
|
||||
object o = myHT[str];
|
||||
hwnd = (TextBox) o;
|
||||
hwnd = (roRichTextBox) o;
|
||||
|
||||
StringBuilder result1 = new StringBuilder();
|
||||
char[] chrAry = hwnd.Text.ToCharArray();
|
||||
foreach (int chr in chrAry)
|
||||
{
|
||||
if (chr > 166)
|
||||
{
|
||||
result1.Append($"\\u{(int)chr}?");
|
||||
}
|
||||
else
|
||||
{
|
||||
result1.Append((char)chr);
|
||||
}
|
||||
}
|
||||
hwnd.Text = result1.ToString();
|
||||
|
||||
imgdate = null;
|
||||
// if this is a required field and there is no text, put out an error
|
||||
// message and get out of here.
|
||||
@@ -788,6 +835,7 @@ namespace ctlXMLEditLib
|
||||
return (false);
|
||||
}
|
||||
|
||||
|
||||
#region Component Designer generated code
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
@@ -858,7 +906,7 @@ namespace ctlXMLEditLib
|
||||
// 'normalizedString') or a multiline text box(type is 'string'). Also, a radio
|
||||
// button is passed in if this was called to handle an element within a combo type.
|
||||
// This button is saved for a given text box so that initialization of these combo types can occur.
|
||||
private string DisplayXmlSchemaSimpleType(XmlSchemaSimpleType simpleType, TextBox mytextbox, RadioButton radio,
|
||||
private string DisplayXmlSchemaSimpleType(XmlSchemaSimpleType simpleType, roRichTextBox mytextbox, RadioButton radio,
|
||||
bool img, string imgname)
|
||||
{
|
||||
// set up for text box tag, which stores whether field is required and
|
||||
@@ -888,12 +936,17 @@ namespace ctlXMLEditLib
|
||||
if (getannot.IndexOf("Lines")>=0)
|
||||
{
|
||||
GraphicsHttextbox = mytextbox;
|
||||
|
||||
Size size = GraphicsHttextbox.Size;
|
||||
mytextbox.LostFocus += new System.EventHandler(this.GraphicsHt_lostfocus);
|
||||
|
||||
}
|
||||
if (getannot.IndexOf("Character")>=0)
|
||||
{
|
||||
GraphicsWdtextbox = mytextbox;
|
||||
|
||||
mytextbox.LostFocus += new System.EventHandler(this.GraphicsWd_lostfocus);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -904,14 +957,17 @@ namespace ctlXMLEditLib
|
||||
{
|
||||
// A Schema Type Restriction is used to define single or multi-line boxes.
|
||||
XmlSchemaSimpleTypeRestriction myRestrictions = (XmlSchemaSimpleTypeRestriction) simpleType.Content;
|
||||
if (myRestrictions.BaseTypeName.Name == "normalizedString")
|
||||
if (myRestrictions.BaseTypeName.Name == "normalizedString")
|
||||
{
|
||||
mytextbox.Multiline = false;
|
||||
mytextbox.Size = new Size(300, 40);
|
||||
}
|
||||
else
|
||||
{
|
||||
mytextbox.Multiline = true;
|
||||
mytextbox.AcceptsReturn = true;
|
||||
mytextbox.AcceptsTab = true;
|
||||
mytextbox.Height = (int) mytextbox.Font.GetHeight() * 4;
|
||||
mytextbox.ScrollBars = ScrollBars.Vertical;
|
||||
mytextbox.ScrollBars = RichTextBoxScrollBars.Vertical;
|
||||
zmtooltip.SetToolTip(mytextbox, "Press Shift F2 To Zoom");
|
||||
}
|
||||
|
||||
@@ -992,7 +1048,8 @@ namespace ctlXMLEditLib
|
||||
radio.CheckedChanged += new System.EventHandler(this.radiocheckchg);
|
||||
gbox.Controls.Add(radio);
|
||||
|
||||
TextBox tb = new TextBox();
|
||||
roRichTextBox tb = new roRichTextBox();
|
||||
Size size3 = tb.Size;
|
||||
tb.Location = new Point(boxx+20, y+25);
|
||||
if (!first) tb.Visible = false;
|
||||
myHT.Add(element.Name,tb);
|
||||
@@ -1001,7 +1058,7 @@ namespace ctlXMLEditLib
|
||||
// the groupbox.
|
||||
Controls.Add(tb);
|
||||
tb.TextChanged += new System.EventHandler(this.textbox_change);
|
||||
tb.GotFocus += new System.EventHandler(this.textbox_zoombtn);
|
||||
tb.GotFocus += new System.EventHandler(this.currentTextBox);
|
||||
tb.KeyDown += new KeyEventHandler(MyOnKeyDown);
|
||||
gbox.Contains(tb);
|
||||
// the following will set attributes on the text boxes such as maxlength, multiline, etc.
|
||||
@@ -1144,8 +1201,9 @@ namespace ctlXMLEditLib
|
||||
}
|
||||
else
|
||||
{
|
||||
TextBox mytextbox;
|
||||
mytextbox = new TextBox();
|
||||
roRichTextBox mytextbox;
|
||||
mytextbox = new roRichTextBox();
|
||||
Size size3 = mytextbox.Size;
|
||||
mytextbox.Location = new Point(screenx+indent, screeny);
|
||||
string tFieldName = (pcChildIdx == 0) ? CvtUserFldToFld(element.Name) : CvtUserFldToFld(pcChildFldName);
|
||||
mytextbox.Name = tFieldName;
|
||||
@@ -1155,7 +1213,7 @@ namespace ctlXMLEditLib
|
||||
screeny = screeny + 10;
|
||||
mytextbox.TextChanged += new System.EventHandler(this.textbox_change);
|
||||
mytextbox.Validating += new System.ComponentModel.CancelEventHandler(this.textbox_Validating);
|
||||
mytextbox.GotFocus += new System.EventHandler(this.textbox_zoombtn);
|
||||
mytextbox.GotFocus += new System.EventHandler(this.currentTextBox);
|
||||
mytextbox.KeyDown += new KeyEventHandler(MyOnKeyDown);
|
||||
if (pcChildIdx > 0)
|
||||
{
|
||||
@@ -1192,9 +1250,18 @@ namespace ctlXMLEditLib
|
||||
// the following is needed to load the control.
|
||||
private void ctlXMLEdit_Load(object sender, System.EventArgs e)
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public delegate void ctlXMLEditEvent(object sender, ctlXMLEditEventArgs args); // RO Editor add symbols C2022 - 003 for turning off symbols btn for RO ID field.
|
||||
public event ctlXMLEditEvent EnableDisableSymbolsBtn;
|
||||
private void OnEnableDisableSymbolsBtn(ctlXMLEditEventArgs args)
|
||||
{
|
||||
if (EnableDisableSymbolsBtn != null)
|
||||
EnableDisableSymbolsBtn(this, args);
|
||||
}
|
||||
|
||||
// when data in a text box has changed, flag it (except for when this
|
||||
// happens during loading of original data). This flag will be used
|
||||
// later to know whether to save data.
|
||||
@@ -1210,7 +1277,7 @@ namespace ctlXMLEditLib
|
||||
// When leaving the textbox
|
||||
private void txtBox_Leave(object sender, EventArgs e)
|
||||
{
|
||||
TextBox tb = sender as TextBox;
|
||||
roRichTextBox tb = sender as roRichTextBox;
|
||||
string dfTxt = "";
|
||||
try
|
||||
{
|
||||
@@ -1219,7 +1286,7 @@ namespace ctlXMLEditLib
|
||||
{
|
||||
object o = myHT[parentid];
|
||||
if (o != null)
|
||||
dfTxt = (o as TextBox).Text; // set to use the parent's value (default)
|
||||
dfTxt = (o as roRichTextBox).Text; // set to use the parent's value (default)
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1227,7 +1294,7 @@ namespace ctlXMLEditLib
|
||||
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)
|
||||
dfTxt = (o as roRichTextBox).Text; // set to use the parent's value (default)
|
||||
}
|
||||
}
|
||||
catch
|
||||
@@ -1235,7 +1302,7 @@ namespace ctlXMLEditLib
|
||||
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)
|
||||
dfTxt = (o as roRichTextBox).Text; // set to use the parent's value (default)
|
||||
}
|
||||
|
||||
if (dosaveflag) mysavexml = true;
|
||||
@@ -1251,7 +1318,7 @@ namespace ctlXMLEditLib
|
||||
// so clear the textbox so that user can enter the value for that child
|
||||
private void txtBox_Enter(object sender, EventArgs e)
|
||||
{
|
||||
TextBox tb = sender as TextBox;
|
||||
roRichTextBox tb = sender as roRichTextBox;
|
||||
if (tb.ForeColor == SystemColors.GrayText) // currently no value set - using parent's value
|
||||
{
|
||||
tb.Text = "";
|
||||
@@ -1264,7 +1331,7 @@ namespace ctlXMLEditLib
|
||||
private void radiocheckchg(object sender, System.EventArgs e)
|
||||
{
|
||||
RadioButton btnsel = (RadioButton) sender;
|
||||
TextBox assocbox;
|
||||
roRichTextBox assocbox;
|
||||
string btntext, str;
|
||||
|
||||
if(dosaveflag)mysavexml = true;
|
||||
@@ -1277,7 +1344,7 @@ namespace ctlXMLEditLib
|
||||
str = btnsel.Name.Replace(btntext,"");
|
||||
object o = myHT[str];
|
||||
if (o == null) return;
|
||||
assocbox = (TextBox) o;
|
||||
assocbox = (roRichTextBox) o;
|
||||
// make the text box visible if checked, otherwise, invisible
|
||||
assocbox.Visible = btnsel.Checked;
|
||||
// C2021-026 show or hide the Parent/Child appicability group box
|
||||
@@ -1299,7 +1366,7 @@ namespace ctlXMLEditLib
|
||||
c.Visible = vsblState; // show or hide the lable inside the group box
|
||||
object oo = myHT[c.Name];
|
||||
if (oo != null)
|
||||
(oo as TextBox).Visible = vsblState; // show or hide the associated text box
|
||||
(oo as roRichTextBox).Visible = vsblState; // show or hide the associated text box
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1391,7 +1458,7 @@ namespace ctlXMLEditLib
|
||||
|
||||
// The following can be used to validate the text, i.e. check the text against
|
||||
// the pattern. this needs written yet (5/16/02)
|
||||
private void MyValidatingCode(TextBox tb)
|
||||
private void MyValidatingCode(roRichTextBox tb)
|
||||
{
|
||||
//get the text box's tag which contains a flag for whether this is required &
|
||||
//if it has a pattern. If it has a pattern, validate the field against the pattern.
|
||||
@@ -1420,20 +1487,33 @@ namespace ctlXMLEditLib
|
||||
}
|
||||
|
||||
// save which box we're on, for zoom processing.
|
||||
private void textbox_zoombtn(object sender, System.EventArgs e)
|
||||
private void currentTextBox(object sender, System.EventArgs e)
|
||||
{
|
||||
TextBox textbox = (TextBox) sender;
|
||||
roRichTextBox textbox = (roRichTextBox) sender;
|
||||
if (textbox.Multiline == true || textbox == GraphicsFiletextbox)
|
||||
zoomtextbox = textbox;
|
||||
else
|
||||
zoomtextbox = null;
|
||||
|
||||
TextBoxFocus = textbox;
|
||||
|
||||
string RO_IDENDITY = RO_IDEN.Substring(1, RO_IDEN.Length - 2); // RO Editor add symbols C2022 - 003 for turning off symbols btn for RO ID.
|
||||
if (textbox.Name == RO_IDENDITY)
|
||||
{
|
||||
OnEnableDisableSymbolsBtn(new ctlXMLEditEventArgs(DisplaySymBolBtn:false));
|
||||
}
|
||||
else
|
||||
{
|
||||
OnEnableDisableSymbolsBtn(new ctlXMLEditEventArgs(DisplaySymBolBtn:true));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void textbox_Validating(object sender, System.ComponentModel.CancelEventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
MyValidatingCode((TextBox) sender);
|
||||
MyValidatingCode((roRichTextBox) sender);
|
||||
}
|
||||
|
||||
catch(Exception ex)
|
||||
@@ -1459,11 +1539,18 @@ namespace ctlXMLEditLib
|
||||
}
|
||||
btnZoom_click(null, null);
|
||||
}
|
||||
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))
|
||||
{
|
||||
if (((kea.Modifiers & Keys.ControlKey) == Keys.ControlKey) && kea.KeyCode == Keys.V)
|
||||
{
|
||||
roRichTextBox o = (roRichTextBox)objSender;
|
||||
o.rchtxtBox_KeyDown(objSender, RO_IDEN);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void btnZoom_click(object sender, System.EventArgs e)
|
||||
{
|
||||
//TextBox tb = (TextBox) sender;
|
||||
TextBoxAttrTag tag;
|
||||
bool doimage = false;
|
||||
if (zoomtextbox.Tag != null)
|
||||
@@ -1507,7 +1594,7 @@ namespace ctlXMLEditLib
|
||||
// file local & keep width/height of file proportional.
|
||||
private void GraphicText_lostfocus(object sender, System.EventArgs e)
|
||||
{
|
||||
TextBox fnamebox = (TextBox) sender;
|
||||
roRichTextBox fnamebox = (roRichTextBox) sender;
|
||||
if (fnamebox.Text != "" && fnamebox.Modified == true)
|
||||
{
|
||||
FileInfo ifi = new FileInfo(fnamebox.Text);
|
||||
@@ -1716,7 +1803,7 @@ namespace ctlXMLEditLib
|
||||
// if changed height, calculate associated width
|
||||
private void GraphicsHt_lostfocus(object sender, System.EventArgs e)
|
||||
{
|
||||
TextBox ht = (TextBox) sender;
|
||||
roRichTextBox ht = (roRichTextBox) sender;
|
||||
if (ht.Modified == true)
|
||||
{
|
||||
try
|
||||
@@ -1733,7 +1820,7 @@ namespace ctlXMLEditLib
|
||||
// if changed width, calculate associated height
|
||||
private void GraphicsWd_lostfocus(object sender, System.EventArgs e)
|
||||
{
|
||||
TextBox wd = (TextBox) sender;
|
||||
roRichTextBox wd = (roRichTextBox) sender;
|
||||
if (wd.Modified == true)
|
||||
{
|
||||
try
|
||||
@@ -1888,7 +1975,7 @@ namespace ctlXMLEditLib
|
||||
* and overload a couple of it's functions in order to use it.
|
||||
* - called in CalculatePromsDate() above.
|
||||
*/
|
||||
public class ThisTimeZone : TimeZone
|
||||
public class ThisTimeZone : TimeZone
|
||||
{
|
||||
private TimeZone curTZ;
|
||||
public TimeSpan SpanTZ;
|
||||
@@ -1929,5 +2016,31 @@ namespace ctlXMLEditLib
|
||||
return curTZ.GetDaylightChanges(year);
|
||||
}
|
||||
}
|
||||
|
||||
public class ctlXMLEditEventArgs : EventArgs // RO Editor add symbols C2022 - 003 for turning off symbols btn for RO ID.
|
||||
{
|
||||
public ctlXMLEditEventArgs() {; }
|
||||
public ctlXMLEditEventArgs(bool DisplaySymBolBtn)
|
||||
{
|
||||
_DisplaySymBolBtn = DisplaySymBolBtn;
|
||||
}
|
||||
private bool _DisplaySymBolBtn;
|
||||
|
||||
public bool DisplaySymBolBtn
|
||||
{
|
||||
get { return _DisplaySymBolBtn; }
|
||||
set { _DisplaySymBolBtn = value; }
|
||||
}
|
||||
}
|
||||
|
||||
public enum E_FontStyle : byte
|
||||
{
|
||||
FS_NONE = 0,
|
||||
FS_BOLD = 0x01,
|
||||
FS_UNDERLINE = 0x02,
|
||||
FS_ITALIC = 0x04,
|
||||
FS_SUPERSCRIPT = 0x08,
|
||||
FS_SUBSCRIPT = 0x10
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -126,6 +126,9 @@
|
||||
<Reference Include="System.Xml">
|
||||
<Name>System.XML</Name>
|
||||
</Reference>
|
||||
<Reference Include="Volian.Base.Library">
|
||||
<HintPath>..\..\..\Volian.Base.Library\bin\Debug\Volian.Base.Library.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="AssemblyInfo.cs">
|
||||
@@ -137,6 +140,12 @@
|
||||
<Compile Include="ImageDialog.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="roRichTextBox.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="roRichTextBox.Designer.cs">
|
||||
<DependentUpon>roRichTextBox.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ZoomDialog.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
|
||||
40
PROMS/ReferencedObjects/LibSource/ctlXMLEditLib/roRichTextBox.Designer.cs
generated
Normal file
40
PROMS/ReferencedObjects/LibSource/ctlXMLEditLib/roRichTextBox.Designer.cs
generated
Normal file
@@ -0,0 +1,40 @@
|
||||
|
||||
namespace ctlXMLEditLib
|
||||
{
|
||||
partial class roRichTextBox
|
||||
{
|
||||
/// <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 override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Component Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
System.Windows.Forms.AutoScaleMode AutoScaleMode;
|
||||
private void InitializeComponent()
|
||||
{
|
||||
|
||||
components = new System.ComponentModel.Container();
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
100
PROMS/ReferencedObjects/LibSource/ctlXMLEditLib/roRichTextBox.cs
Normal file
100
PROMS/ReferencedObjects/LibSource/ctlXMLEditLib/roRichTextBox.cs
Normal file
@@ -0,0 +1,100 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using Volian.Base.Library;
|
||||
|
||||
namespace ctlXMLEditLib
|
||||
{
|
||||
public partial class roRichTextBox : RichTextBox // C2022-003 Symbols in RO Editor. Customized RichTextBox for RO Editor.
|
||||
{
|
||||
public roRichTextBox()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
private string _RtfPrefix; // contains Font table and styles (bold/underline/italics) for rtb from step style
|
||||
public string RtfPrefixForSymbols
|
||||
{
|
||||
get
|
||||
{
|
||||
//B2020-100 RHM Use SelectionFont rather than the font from the format file.
|
||||
StringBuilder selectedRtfSB = new StringBuilder();
|
||||
AddFontTable(selectedRtfSB, FormatFont, true);
|
||||
_RtfPrefix = selectedRtfSB.ToString();
|
||||
return _RtfPrefix + @"\f1\fs" + 10 * 2 + " ";
|
||||
}
|
||||
}
|
||||
public void InsertSymbol( int symbcode)
|
||||
{
|
||||
int position = this.SelectionStart;
|
||||
string sym = string.Format(symbcode < 256 ? "\'{0:X2}" : @"\u{0}", symbcode);
|
||||
this.SelectedRtf = RtfPrefixForSymbols + sym + @"}";
|
||||
Select(position, -1);
|
||||
Select(position + 1, 0);
|
||||
}
|
||||
public void rchtxtBox_KeyDown(object sender,string RO_IDEN) // C2022-003 code used to prevent a symbol from being inserted into RO ID.
|
||||
{
|
||||
bool symFlg = false;
|
||||
|
||||
roRichTextBox o = (roRichTextBox)sender;
|
||||
if (o.Name == RO_IDEN)
|
||||
{
|
||||
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))
|
||||
{
|
||||
string clpBrd = Clipboard.GetText();
|
||||
if (clpBrd.Any(c => c > 166))
|
||||
{
|
||||
MessageBox.Show("Symbols are not allowed in the field. Clipbroad: '" + clpBrd + "'");
|
||||
Clipboard.Clear();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
private static void AddFontTable(StringBuilder selectedRtfSB, Font myFont, bool isFixed)
|
||||
{
|
||||
StringBuilder sbbeg = new StringBuilder();
|
||||
StringBuilder sbend = new StringBuilder();
|
||||
if (myFont.Bold)
|
||||
{
|
||||
sbbeg.Append(@"\b");
|
||||
sbend.Append(@"\b0");
|
||||
}
|
||||
if (myFont.Underline)
|
||||
{
|
||||
sbbeg.Append(@"\ul");
|
||||
sbend.Insert(0, @"\ulnone");
|
||||
}
|
||||
if (myFont.Italic)
|
||||
{
|
||||
sbbeg.Append(@"\i");
|
||||
sbend.Insert(0, @"\i0");
|
||||
}
|
||||
// RO Editor add symbols C2022-003
|
||||
selectedRtfSB.Append(@"{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset2 " + myFont.FontFamily.Name + @";}");
|
||||
selectedRtfSB.Append(@"{\f1\fnil\fcharset0 FreeMono;}}{\colortbl ;\red255\green0\blue0;\red0\green0\blue255;}"); // FreeMono is now used for symbols display.
|
||||
selectedRtfSB.Append("\r\n");
|
||||
selectedRtfSB.Append(@"\viewkind4\uc1\pard" + sbbeg.ToString() + @"\fs" + Convert.ToInt32(myFont.SizeInPoints * 2).ToString() + @" ");
|
||||
}
|
||||
private Font _FormatFont;
|
||||
public Font FormatFont
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_FormatFont == null)
|
||||
{
|
||||
Font formatFont;
|
||||
formatFont = Font;
|
||||
_FormatFont = formatFont;
|
||||
}
|
||||
return _FormatFont;
|
||||
}
|
||||
set { _FormatFont = value; }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1643,7 +1643,11 @@ Begin
|
||||
Select Cast(i.LastChanged as varbinary(8)) as 'ILastChanged',
|
||||
i.ItemID as 'ItemID',
|
||||
zi.VersionID as 'VersionID',
|
||||
zi.PPath +
|
||||
CASE WHEN c.[Type] % 20000 = 6 THEN REPLACE(zi.PPath,'Note','Caution')
|
||||
WHEN c.[Type] % 20000 = 7 THEN REPLACE(zi.PPath,'Caution','Note')
|
||||
ELSE zi.PPath
|
||||
END
|
||||
+
|
||||
Case (c.[Type]/10000)
|
||||
When 0 Then @Delim + @UnitPrefix + IsNull(c.Number,'') + @DelimNumber + IsNull(c.Text,'') -- Procedure
|
||||
When 1 Then @Delim + IsNull(c.Number,'') + @DelimNumber + IsNull(c.Text,'') -- Section
|
||||
@@ -24529,6 +24533,206 @@ GO
|
||||
PRINT 'Added IX_tblROUsagesRODbIDDeleteStatusROID Index. Speeds up RO queries'
|
||||
GO
|
||||
|
||||
|
||||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[GetCurrentApprovedRevisions]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1)
|
||||
DROP PROCEDURE [GetCurrentApprovedRevisions];
|
||||
|
||||
GO
|
||||
|
||||
/****** Object: StoredProcedure [dbo].[GetCurrentApprovedRevisions] Script Date: 02/05/2026 7:54:42 AM ******/
|
||||
|
||||
-- =============================================
|
||||
-- Author: Matthew Schill
|
||||
-- Create date: 02/05/2026
|
||||
-- Description: Gets all current approved revisions
|
||||
-- =============================================
|
||||
CREATE PROCEDURE [dbo].[GetCurrentApprovedRevisions]
|
||||
(
|
||||
@ItemID AS bigint
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
select max(rr.revisionid) revisionid, UnitId, UnitVal.name UnitName, max(rr.DTS) DTS
|
||||
from items ii
|
||||
inner join revisions rr on ii.itemid = rr.itemid
|
||||
inner join versions vv on rr.revisionid = vv.revisionid
|
||||
inner join stages ss on vv.stageid = ss.stageid
|
||||
outer apply
|
||||
(Select UnitId = r1.value('@Index','int') FROM rr.config.nodes('Config/Applicability') t1(r1)) App
|
||||
left outer join
|
||||
(select r1.value('@index','int') indx
|
||||
,r1.value('@Name','varchar') name
|
||||
from (select *,cast(config as xml) xconfig from DocVersions
|
||||
where ItemID in(select itemID from vefn_AllSiblingItems(@ItemID))) SDV
|
||||
cross apply
|
||||
xconfig.nodes('Config/Slaves/Slave') t1(r1)) UnitVal ON UnitVal.indx = UnitId
|
||||
where ss.isapproved = 1
|
||||
and ii.itemid = @ItemID
|
||||
group by UnitId, UnitVal.name
|
||||
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF (@@Error = 0) PRINT 'Procedure Creation: [GetCurrentApprovedRevisions] Succeeded'
|
||||
ELSE PRINT 'Procedure Creation: [GetCurrentApprovedRevisions] Error on Creation'
|
||||
GO
|
||||
|
||||
|
||||
/*
|
||||
==========================================================================================================
|
||||
-- Begin: C2026-010 Add Audit Ability for ChangeBars
|
||||
-- Author: Matthew Schill
|
||||
-- Create date: 02/17/2026
|
||||
==========================================================================================================
|
||||
*/
|
||||
/*
|
||||
----------------------------------------------------------------------------------
|
||||
Tables:
|
||||
----------------------------------------------------------------------------------
|
||||
[ChangeBarAudits]
|
||||
|
||||
----------------------------------------------------------------------------------
|
||||
Indexes:
|
||||
----------------------------------------------------------------------------------
|
||||
[IX_ChangeBarAudits_ItemID] on [dbo].[ChangeBarAudits]
|
||||
|
||||
|
||||
|
||||
*/
|
||||
|
||||
|
||||
IF Not Exists(SELECT * FROM sys.objects Where name = 'ChangeBarAudits' AND type in (N'U'))
|
||||
Begin
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
|
||||
/****** Create Table to hold Audit Information ******/
|
||||
CREATE TABLE [dbo].[ChangeBarAudits](
|
||||
[AuditID] [bigint] IDENTITY(1,1) NOT NULL,
|
||||
[ItemID] [bigint] NOT NULL,
|
||||
[Text] [nvarchar](max) NULL,
|
||||
[DTS] [datetime] NOT NULL,
|
||||
[UserID] [nvarchar](100) NOT NULL,
|
||||
[UnitIndex] [int] NULL,
|
||||
CONSTRAINT [PK_ChangeBarAudits] PRIMARY KEY CLUSTERED
|
||||
(
|
||||
[AuditID] ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
|
||||
|
||||
IF (@@Error = 0) PRINT 'Table Creation: [ChangeBarAudits] Succeeded'
|
||||
ELSE PRINT 'Table Creation: [ChangeBarAudits] Error on Creation'
|
||||
|
||||
/****** Table was not previously created - so intially populate with info from Approvals ******/
|
||||
INSERT into ChangeBarAudits([ItemID],[Text],[DTS],[UserID],[UnitIndex])
|
||||
select --rr.RevisionID,
|
||||
rr.ItemID,
|
||||
Text = CASE WHEN r1.value('@Index','int') <> 0 AND UnitName IS NOT NULL THEN
|
||||
'(Unit ' + UnitName + ') '
|
||||
ELSE
|
||||
''
|
||||
END +
|
||||
'Approved by (' + rr.UserID + ') on (' +
|
||||
CAST(rr.DTS AS VARCHAR) + ')',
|
||||
rr.DTS,
|
||||
rr.UserID,
|
||||
UnitIndex = r1.value('@Index','int')
|
||||
-- , UnitName
|
||||
from revisions rr
|
||||
inner join versions vv on rr.revisionid = vv.revisionid
|
||||
inner join stages ss on vv.stageid = ss.stageid
|
||||
outer apply rr.config.nodes('Config/Applicability') t1(r1)
|
||||
outer apply
|
||||
( Select r2.value('@Name','varchar') UnitName
|
||||
FROM
|
||||
(select DocVerSions.ItemID, cast(config as xml) xconfig from DocVersions
|
||||
inner join
|
||||
vefn_AllSiblingItems(rr.ItemID) Sib ON DocVerSions.ItemID = Sib.ItemID) SDV
|
||||
cross apply
|
||||
xconfig.nodes('Config/Slaves/Slave') t2(r2)
|
||||
WHERE r2.value('@index','varchar') = r1.value('@Index','int')
|
||||
) UN
|
||||
where ss.isapproved = 1
|
||||
order by rr.ItemID, rr.RevisionID desc
|
||||
|
||||
IF (@@Error = 0) PRINT '[ChangeBarAudits] Initial Population Succeeded'
|
||||
ELSE PRINT '[ChangeBarAudits] Initial Population Error'
|
||||
|
||||
/****** Create Index to get ChangeBar Audit Information for Item (ItemID = ProcedureID) ******/
|
||||
CREATE NONCLUSTERED INDEX [IX_ChangeBarAudits_ItemID] ON [dbo].[ChangeBarAudits]
|
||||
(
|
||||
[ItemID] ASC
|
||||
)
|
||||
INCLUDE ([AuditID], [Text], [DTS], [UnitIndex])
|
||||
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
|
||||
IF (@@Error = 0) PRINT 'Index Creation: [IX_ChangeBarAudits_ItemID] Succeeded'
|
||||
ELSE PRINT 'Index Creation: [IX_ChangeBarAudits_ItemID] Error on Creation'
|
||||
|
||||
End
|
||||
|
||||
-- =============================================
|
||||
-- Description: Gets ChangeBar Audit History by item
|
||||
-- =============================================
|
||||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[GetChangeBarAuditHistoryByItem]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1)
|
||||
DROP PROCEDURE [GetChangeBarAuditHistoryByItem];
|
||||
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[GetChangeBarAuditHistoryByItem]
|
||||
(
|
||||
@ItemID AS bigint
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
Select * FROM ChangeBarAudits where ItemID = @ItemID
|
||||
order by DTS desc
|
||||
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF (@@Error = 0) PRINT 'Procedure Creation: [GetChangeBarAuditHistoryByItem] Succeeded'
|
||||
ELSE PRINT 'Procedure Creation: [GetChangeBarAuditHistoryByItem] Error on Creation'
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: Adds ChangeBar Audit History
|
||||
-- =============================================
|
||||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[AddChangeBarAuditHistory]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1)
|
||||
DROP PROCEDURE [AddChangeBarAuditHistory];
|
||||
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[AddChangeBarAuditHistory]
|
||||
(
|
||||
@ItemID AS bigint,
|
||||
@Description As nvarchar(max),
|
||||
@DTS AS Datetime,
|
||||
@UserID As nvarchar(100),
|
||||
@UnitIndex AS bigint = NULL
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
INSERT into ChangeBarAudits([ItemID],[Text],[DTS],[UserID],[UnitIndex])
|
||||
VALUES (@ItemID, @Description, @DTS, @UserID, @UnitIndex)
|
||||
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF (@@Error = 0) PRINT 'Procedure Creation: [AddChangeBarAuditHistory] Succeeded'
|
||||
ELSE PRINT 'Procedure Creation: [AddChangeBarAuditHistory] Error on Creation'
|
||||
GO
|
||||
|
||||
/*
|
||||
==========================================================================================================
|
||||
-- End: C2026-010 Add Audit Ability for ChangeBars
|
||||
==========================================================================================================
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
---------------------------------------------------------------------------
|
||||
| ADD New Code Before this Block |
|
||||
@@ -24562,8 +24766,8 @@ BEGIN TRY -- Try Block
|
||||
DECLARE @RevDate varchar(255)
|
||||
DECLARE @RevDescription varchar(255)
|
||||
|
||||
set @RevDate = '01/19/2026 5:00 PM'
|
||||
set @RevDescription = 'Sync tree list Sort order between in RO Editor and PROMS'
|
||||
set @RevDate = '02/18/2026 7:00 AM'
|
||||
set @RevDescription = 'Added Audit Ability for ChangeBars'
|
||||
|
||||
Select cast(@RevDate as datetime) RevDate, @RevDescription RevDescription
|
||||
PRINT 'SQL Code Revision ' + @RevDate + ' - ' + @RevDescription
|
||||
|
||||
@@ -1135,6 +1135,7 @@ namespace VEPROMS
|
||||
ViewPDF = ViewPDF && MyProcedures.Count == 1;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
StageInfo nsi = StageInfo.GetJustStage(RevStage);
|
||||
DateTime now = DateTime.Now; //using variable so dates are consistent
|
||||
foreach (ApprovalProcedure ap in MyProcedures) //spin thru looking for updating current revision
|
||||
{
|
||||
// ric: current revision info record, not new one being created.
|
||||
@@ -1207,7 +1208,7 @@ namespace VEPROMS
|
||||
cfg.History_StartDate = myDTS; // if there is a slave, date found from above code
|
||||
cfg.Applicability_Index = ap.ProcInfo.MyDocVersion.DocVersionConfig.SelectedSlave;
|
||||
//cfg.Save();
|
||||
revision = Revision.MakeRevision(pi.ItemID, RevType, ap.RevNumber, ap.RevDate, RevNote, cfg.ToString(), DateTime.Now, Volian.Base.Library.VlnSettings.UserID);
|
||||
revision = Revision.MakeRevision(pi.ItemID, RevType, ap.RevNumber, ap.RevDate, RevNote, cfg.ToString(), now, Volian.Base.Library.VlnSettings.UserID);
|
||||
// revision.MyConfig.History_StartDate = pi.DTS;
|
||||
// revision.MyConfig.Save();
|
||||
// revision = revision.Save();
|
||||
@@ -1234,7 +1235,7 @@ namespace VEPROMS
|
||||
RevisionConfig cfg = new RevisionConfig();
|
||||
cfg.History_StartDate = pi.DTS; // todo: this should probably be myDTS, found during fix of B2019-051.
|
||||
//cfg.Save();
|
||||
revision = Revision.MakeRevision(pi.ItemID, RevType, ap.RevNumber, ap.RevDate, RevNote, cfg.ToString(), DateTime.Now, Volian.Base.Library.VlnSettings.UserID);
|
||||
revision = Revision.MakeRevision(pi.ItemID, RevType, ap.RevNumber, ap.RevDate, RevNote, cfg.ToString(), now, Volian.Base.Library.VlnSettings.UserID);
|
||||
// revision.MyConfig.History_StartDate = pi.DTS;
|
||||
// revision.MyConfig.Save();
|
||||
// revision = revision.Save();
|
||||
@@ -1253,7 +1254,7 @@ namespace VEPROMS
|
||||
byte[] summaryBuf = null;
|
||||
//B2017-149 Allow the user to choose if they want the Summary of Changes report created during the approval process
|
||||
if (doSumChg) summaryBuf = CreateSummary(ref pi, summaryPDF, myDTS);
|
||||
DateTime currentDTS = DateTime.Now;
|
||||
DateTime currentDTS = now;
|
||||
Check check = Check.MakeCheck(revision, Stage.GetJustStage(RevStage), RevisionInfo.BuildRevisionChecks(pi), currentDTS, VlnSettings.UserID);
|
||||
//make pdf with promsprinter and get byte stream
|
||||
// Moved to end so that Item and Content are saved at the same time
|
||||
@@ -1319,10 +1320,13 @@ namespace VEPROMS
|
||||
version.ApprovedXML = xd.OuterXml;
|
||||
version.Save();
|
||||
dlg.Dispose();
|
||||
UpdateProcedureConfig(pi, ap.RevNumber, ap.RevDate, DateTime.Now, selectedSlave);
|
||||
UpdateProcedureConfig(pi, ap.RevNumber, ap.RevDate, now, selectedSlave);
|
||||
|
||||
// Clear the change bar override for this procedure:
|
||||
pi.ClearChangeBarOverrides();
|
||||
//CSM - C2026-010 - Add Audit Record for Change Bar Audit History
|
||||
ChangeBarAuditHistory.AddAudit(pi.ItemID, $"{(selectedSlave > 0 ? $"(Unit {pi.MyDocVersion.UnitNames[selectedSlave - 1]}) " : "")}Approved by ({VlnSettings.UserID}) on ({now})", now, VlnSettings.UserID, selectedSlave);
|
||||
|
||||
// Clear the change bar override for this procedure:
|
||||
pi.ClearChangeBarOverrides();
|
||||
|
||||
//B2019-140 Change bars do not get refreshed when approval is run.
|
||||
ProcedureInfo newproc = ItemInfo.ResetProcedure(pi.ItemID);
|
||||
|
||||
@@ -216,7 +216,7 @@ namespace VEPROMS
|
||||
MembershipInfo mi = (MembershipInfo)lstMembers.SelectedItem;
|
||||
string selectedUserID = mi.MyUserUserID;
|
||||
string msg = "Are you sure you want to remove this Group Member?";
|
||||
if (MessageBox.Show(this, msg, "Confirm Group Member Removal", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
if (MessageBox.Show(this, msg, "Confirm Group Member Removal", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
{
|
||||
if (mi.MyGroup.GroupName == "Administrators" && mi.MyGroup.GroupMemberships.Count(mm => mm.EndDate == null || mm.EndDate == string.Empty) == 1)
|
||||
{
|
||||
@@ -255,7 +255,7 @@ namespace VEPROMS
|
||||
MessageBox.Show("There are still users who are members of this group. You need to delete all members in order to delete this group.", "Group Has Members", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (MessageBox.Show("Are you sure you want to delete this group?", "Confirm Deleting Group", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
if (MessageBox.Show("Are you sure you want to delete this group?", "Confirm Deleting Group", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
{
|
||||
Group.Delete(gi.GID);
|
||||
LoadRefreshGroupUsers();
|
||||
@@ -397,7 +397,7 @@ namespace VEPROMS
|
||||
}
|
||||
int nummemberships = ui.UserMemberships.Count(mi => mi.EndDate == null || mi.EndDate == string.Empty);
|
||||
string mem_text = nummemberships > 0 ? "\r\nNote that this will remove all memberships that this user has." : "";
|
||||
if (MessageBox.Show($"Are you sure you want to delete this user?{mem_text}", "Confirm Deleting User", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
if (MessageBox.Show($"Are you sure you want to delete this user?{mem_text}", "Confirm Deleting User", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
{
|
||||
foreach (MembershipInfo minfo in ui.UserMemberships.Where(mi => mi.EndDate == null || mi.EndDate == string.Empty))
|
||||
{
|
||||
@@ -477,7 +477,7 @@ namespace VEPROMS
|
||||
{
|
||||
MembershipInfo mi = (MembershipInfo)lstGroups.SelectedItem;
|
||||
string msg = "Are you sure you want to remove this Group Member?";
|
||||
if (MessageBox.Show(this, msg, "Confirm Group Member Removal", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
if (MessageBox.Show(this, msg, "Confirm Group Member Removal", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
{
|
||||
if (mi.MyGroup.GroupName == "Administrators" && mi.MyGroup.GroupMemberships.Count(mm => mm.EndDate == null || mm.EndDate == string.Empty) == 1)
|
||||
{
|
||||
|
||||
@@ -28,142 +28,158 @@
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.btnOK = new DevComponents.DotNetBar.ButtonX();
|
||||
this.btnCancel = new DevComponents.DotNetBar.ButtonX();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.superTooltip1 = new DevComponents.DotNetBar.SuperTooltip();
|
||||
this.dateTimeInput1 = new DevComponents.Editors.DateTimeAdv.DateTimeInput();
|
||||
this.btnNow = new DevComponents.DotNetBar.ButtonX();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dateTimeInput1)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// btnOK
|
||||
//
|
||||
this.btnOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
|
||||
this.btnOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||
this.btnOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground;
|
||||
this.btnOK.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.btnOK.Location = new System.Drawing.Point(18, 111);
|
||||
this.btnOK.Name = "btnOK";
|
||||
this.btnOK.Size = new System.Drawing.Size(64, 23);
|
||||
this.btnOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.btnOK.TabIndex = 1;
|
||||
this.btnOK.Text = "OK";
|
||||
this.btnOK.Click += new System.EventHandler(this.btnOK_Click);
|
||||
//
|
||||
// btnCancel
|
||||
//
|
||||
this.btnCancel.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
|
||||
this.btnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.btnCancel.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground;
|
||||
this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.btnCancel.Location = new System.Drawing.Point(179, 111);
|
||||
this.btnCancel.Name = "btnCancel";
|
||||
this.btnCancel.Size = new System.Drawing.Size(64, 23);
|
||||
this.btnCancel.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.btnCancel.TabIndex = 2;
|
||||
this.btnCancel.Text = "Cancel";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label1.Location = new System.Drawing.Point(3, 19);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(229, 15);
|
||||
this.label1.TabIndex = 3;
|
||||
this.label1.Text = "Show Change Bars on Changes Starting:";
|
||||
//
|
||||
// superTooltip1
|
||||
//
|
||||
this.superTooltip1.DefaultTooltipSettings = new DevComponents.DotNetBar.SuperTooltipInfo("", "", "", null, null, DevComponents.DotNetBar.eTooltipColor.Gray);
|
||||
this.superTooltip1.LicenseKey = "F962CEC7-CD8F-4911-A9E9-CAB39962FC1F";
|
||||
//
|
||||
// dateTimeInput1
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
this.dateTimeInput1.BackgroundStyle.Class = "DateTimeInputBackground";
|
||||
this.dateTimeInput1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
this.dateTimeInput1.ButtonDropDown.Shortcut = DevComponents.DotNetBar.eShortcut.AltDown;
|
||||
this.dateTimeInput1.ButtonDropDown.Visible = true;
|
||||
this.dateTimeInput1.CustomFormat = "MM/dd/yyyy HH:mm:ss";
|
||||
this.dateTimeInput1.DateTimeSelectorVisibility = DevComponents.Editors.DateTimeAdv.eDateTimeSelectorVisibility.DateSelector;
|
||||
this.dateTimeInput1.Format = DevComponents.Editors.eDateTimePickerFormat.Custom;
|
||||
this.dateTimeInput1.IsPopupCalendarOpen = false;
|
||||
this.dateTimeInput1.Location = new System.Drawing.Point(30, 51);
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
this.dateTimeInput1.MonthCalendar.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
this.dateTimeInput1.MonthCalendar.CalendarDimensions = new System.Drawing.Size(1, 1);
|
||||
this.dateTimeInput1.MonthCalendar.ClearButtonVisible = true;
|
||||
//
|
||||
//
|
||||
//
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground2;
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.BackColorGradientAngle = 90;
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground;
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid;
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.BorderTopColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarDockedBorder;
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.BorderTopWidth = 1;
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
this.dateTimeInput1.MonthCalendar.DisplayMonth = new System.DateTime(2016, 2, 1, 0, 0, 0, 0);
|
||||
//
|
||||
//
|
||||
//
|
||||
this.dateTimeInput1.MonthCalendar.NavigationBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2;
|
||||
this.dateTimeInput1.MonthCalendar.NavigationBackgroundStyle.BackColorGradientAngle = 90;
|
||||
this.dateTimeInput1.MonthCalendar.NavigationBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground;
|
||||
this.dateTimeInput1.MonthCalendar.NavigationBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
this.dateTimeInput1.MonthCalendar.TodayButtonVisible = true;
|
||||
this.dateTimeInput1.Name = "dateTimeInput1";
|
||||
this.dateTimeInput1.Size = new System.Drawing.Size(146, 20);
|
||||
this.dateTimeInput1.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.superTooltip1.SetSuperTooltip(this.dateTimeInput1, new DevComponents.DotNetBar.SuperTooltipInfo("Change Bar Start Date", "", "Only the changes made after this date will have change bars.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(138, 67)));
|
||||
this.dateTimeInput1.TabIndex = 4;
|
||||
this.dateTimeInput1.TimeSelectorTimeFormat = DevComponents.Editors.DateTimeAdv.eTimeSelectorFormat.Time24H;
|
||||
this.dateTimeInput1.TimeSelectorType = DevComponents.Editors.DateTimeAdv.eTimeSelectorType.TouchStyle;
|
||||
//
|
||||
// btnNow
|
||||
//
|
||||
this.btnNow.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
|
||||
this.btnNow.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground;
|
||||
this.btnNow.Location = new System.Drawing.Point(182, 51);
|
||||
this.btnNow.Name = "btnNow";
|
||||
this.btnNow.Size = new System.Drawing.Size(49, 23);
|
||||
this.btnNow.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.superTooltip1.SetSuperTooltip(this.btnNow, new DevComponents.DotNetBar.SuperTooltipInfo("Now", "", "This will set the Change Bar Start date to today.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray));
|
||||
this.btnNow.TabIndex = 5;
|
||||
this.btnNow.Text = "Today";
|
||||
this.btnNow.Click += new System.EventHandler(this.btnNow_Click);
|
||||
//
|
||||
// dlgSetChangeBarStartDate
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(268, 144);
|
||||
this.Controls.Add(this.btnNow);
|
||||
this.Controls.Add(this.dateTimeInput1);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.btnCancel);
|
||||
this.Controls.Add(this.btnOK);
|
||||
this.DoubleBuffered = true;
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "dlgSetChangeBarStartDate";
|
||||
this.ShowIcon = false;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||
this.Text = "Change Bar Start Date";
|
||||
this.Load += new System.EventHandler(this.dlgSetChangeBarStartDate_Load);
|
||||
((System.ComponentModel.ISupportInitialize)(this.dateTimeInput1)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
this.btnOK = new DevComponents.DotNetBar.ButtonX();
|
||||
this.btnCancel = new DevComponents.DotNetBar.ButtonX();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.superTooltip1 = new DevComponents.DotNetBar.SuperTooltip();
|
||||
this.dateTimeInput1 = new DevComponents.Editors.DateTimeAdv.DateTimeInput();
|
||||
this.btnNow = new DevComponents.DotNetBar.ButtonX();
|
||||
this.btnResetToApproved = new DevComponents.DotNetBar.ButtonX();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dateTimeInput1)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// btnOK
|
||||
//
|
||||
this.btnOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
|
||||
this.btnOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||
this.btnOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground;
|
||||
this.btnOK.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.btnOK.Location = new System.Drawing.Point(18, 111);
|
||||
this.btnOK.Name = "btnOK";
|
||||
this.btnOK.Size = new System.Drawing.Size(64, 23);
|
||||
this.btnOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.btnOK.TabIndex = 1;
|
||||
this.btnOK.Text = "OK";
|
||||
this.btnOK.Click += new System.EventHandler(this.btnOK_Click);
|
||||
//
|
||||
// btnCancel
|
||||
//
|
||||
this.btnCancel.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
|
||||
this.btnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.btnCancel.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground;
|
||||
this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.btnCancel.Location = new System.Drawing.Point(179, 111);
|
||||
this.btnCancel.Name = "btnCancel";
|
||||
this.btnCancel.Size = new System.Drawing.Size(64, 23);
|
||||
this.btnCancel.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.btnCancel.TabIndex = 2;
|
||||
this.btnCancel.Text = "Cancel";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label1.Location = new System.Drawing.Point(3, 19);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(229, 15);
|
||||
this.label1.TabIndex = 3;
|
||||
this.label1.Text = "Show Change Bars on Changes Starting:";
|
||||
//
|
||||
// superTooltip1
|
||||
//
|
||||
this.superTooltip1.DefaultTooltipSettings = new DevComponents.DotNetBar.SuperTooltipInfo("", "", "", null, null, DevComponents.DotNetBar.eTooltipColor.Gray);
|
||||
this.superTooltip1.LicenseKey = "F962CEC7-CD8F-4911-A9E9-CAB39962FC1F";
|
||||
//
|
||||
// dateTimeInput1
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
this.dateTimeInput1.BackgroundStyle.Class = "DateTimeInputBackground";
|
||||
this.dateTimeInput1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
this.dateTimeInput1.ButtonDropDown.Shortcut = DevComponents.DotNetBar.eShortcut.AltDown;
|
||||
this.dateTimeInput1.ButtonDropDown.Visible = true;
|
||||
this.dateTimeInput1.CustomFormat = "MM/dd/yyyy HH:mm:ss";
|
||||
this.dateTimeInput1.DateTimeSelectorVisibility = DevComponents.Editors.DateTimeAdv.eDateTimeSelectorVisibility.DateSelector;
|
||||
this.dateTimeInput1.Format = DevComponents.Editors.eDateTimePickerFormat.Custom;
|
||||
this.dateTimeInput1.IsPopupCalendarOpen = false;
|
||||
this.dateTimeInput1.Location = new System.Drawing.Point(30, 51);
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
this.dateTimeInput1.MonthCalendar.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
this.dateTimeInput1.MonthCalendar.CalendarDimensions = new System.Drawing.Size(1, 1);
|
||||
this.dateTimeInput1.MonthCalendar.ClearButtonVisible = true;
|
||||
//
|
||||
//
|
||||
//
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground2;
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.BackColorGradientAngle = 90;
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground;
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid;
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.BorderTopColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarDockedBorder;
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.BorderTopWidth = 1;
|
||||
this.dateTimeInput1.MonthCalendar.CommandsBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
this.dateTimeInput1.MonthCalendar.DisplayMonth = new System.DateTime(2016, 2, 1, 0, 0, 0, 0);
|
||||
//
|
||||
//
|
||||
//
|
||||
this.dateTimeInput1.MonthCalendar.NavigationBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2;
|
||||
this.dateTimeInput1.MonthCalendar.NavigationBackgroundStyle.BackColorGradientAngle = 90;
|
||||
this.dateTimeInput1.MonthCalendar.NavigationBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground;
|
||||
this.dateTimeInput1.MonthCalendar.NavigationBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
this.dateTimeInput1.MonthCalendar.TodayButtonVisible = true;
|
||||
this.dateTimeInput1.Name = "dateTimeInput1";
|
||||
this.dateTimeInput1.Size = new System.Drawing.Size(146, 20);
|
||||
this.dateTimeInput1.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.superTooltip1.SetSuperTooltip(this.dateTimeInput1, new DevComponents.DotNetBar.SuperTooltipInfo("Change Bar Start Date", "", "Only the changes made after this date will have change bars.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(138, 67)));
|
||||
this.dateTimeInput1.TabIndex = 4;
|
||||
this.dateTimeInput1.TimeSelectorTimeFormat = DevComponents.Editors.DateTimeAdv.eTimeSelectorFormat.Time24H;
|
||||
this.dateTimeInput1.TimeSelectorType = DevComponents.Editors.DateTimeAdv.eTimeSelectorType.TouchStyle;
|
||||
//
|
||||
// btnNow
|
||||
//
|
||||
this.btnNow.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
|
||||
this.btnNow.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground;
|
||||
this.btnNow.Location = new System.Drawing.Point(182, 51);
|
||||
this.btnNow.Name = "btnNow";
|
||||
this.btnNow.Size = new System.Drawing.Size(49, 23);
|
||||
this.btnNow.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.superTooltip1.SetSuperTooltip(this.btnNow, new DevComponents.DotNetBar.SuperTooltipInfo("Now", "", "This will set the Change Bar Start date to today.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray));
|
||||
this.btnNow.TabIndex = 5;
|
||||
this.btnNow.Text = "Today";
|
||||
this.btnNow.Click += new System.EventHandler(this.btnNow_Click);
|
||||
//
|
||||
// btnResetToApproved
|
||||
//
|
||||
this.btnResetToApproved.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
|
||||
this.btnResetToApproved.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground;
|
||||
this.btnResetToApproved.Location = new System.Drawing.Point(30, 77);
|
||||
this.btnResetToApproved.Name = "btnResetToApproved";
|
||||
this.btnResetToApproved.Size = new System.Drawing.Size(201, 23);
|
||||
this.btnResetToApproved.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.btnResetToApproved.TabIndex = 6;
|
||||
this.btnResetToApproved.Text = "Reset Change Bar To Approved Date";
|
||||
this.btnResetToApproved.Tooltip = "Reset Change Bar to the last approved date. If no approvals, reset to as if no ch" +
|
||||
"ange bar date. After selecting this, press OK to save.";
|
||||
this.btnResetToApproved.Click += new System.EventHandler(this.btnResetToApproved_Click);
|
||||
//
|
||||
// dlgSetChangeBarStartDate
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(268, 144);
|
||||
this.Controls.Add(this.btnResetToApproved);
|
||||
this.Controls.Add(this.btnNow);
|
||||
this.Controls.Add(this.dateTimeInput1);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.btnCancel);
|
||||
this.Controls.Add(this.btnOK);
|
||||
this.DoubleBuffered = true;
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "dlgSetChangeBarStartDate";
|
||||
this.ShowIcon = false;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||
this.Text = "Change Bar Start Date";
|
||||
this.Load += new System.EventHandler(this.dlgSetChangeBarStartDate_Load);
|
||||
((System.ComponentModel.ISupportInitialize)(this.dateTimeInput1)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
@@ -175,5 +191,6 @@
|
||||
private DevComponents.DotNetBar.SuperTooltip superTooltip1;
|
||||
private DevComponents.Editors.DateTimeAdv.DateTimeInput dateTimeInput1;
|
||||
private DevComponents.DotNetBar.ButtonX btnNow;
|
||||
}
|
||||
private DevComponents.DotNetBar.ButtonX btnResetToApproved;
|
||||
}
|
||||
}
|
||||
@@ -1,31 +1,25 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using DevComponents.DotNetBar;
|
||||
using DevComponents.DotNetBar.Controls;
|
||||
using VEPROMS.CSLA.Library;
|
||||
|
||||
using Volian.Base.Library;
|
||||
using Volian.Controls.Library;
|
||||
|
||||
namespace VEPROMS
|
||||
{
|
||||
public partial class dlgSetChangeBarStartDate : DevComponents.DotNetBar.Office2007Form
|
||||
{
|
||||
private ProcedureConfig _MyProcConfig = null;
|
||||
public ProcedureConfig MyProcConfig { get; set; } = null;
|
||||
|
||||
public ProcedureConfig MyProcConfig
|
||||
{
|
||||
get { return _MyProcConfig; }
|
||||
set { _MyProcConfig = value; }
|
||||
}
|
||||
public ProcedureInfo MyProcInfo { get; set; } = null;
|
||||
|
||||
public dlgSetChangeBarStartDate(ProcedureConfig pc)
|
||||
public dlgSetChangeBarStartDate(ProcedureConfig pc, ProcedureInfo pi)
|
||||
{
|
||||
InitializeComponent();
|
||||
_MyProcConfig = pc;
|
||||
MyProcConfig = pc;
|
||||
MyProcInfo = pi;
|
||||
}
|
||||
|
||||
private void dlgSetChangeBarStartDate_Load(object sender, EventArgs e)
|
||||
@@ -37,7 +31,7 @@ namespace VEPROMS
|
||||
{
|
||||
cbdt = DateTime.Now.ToString("MM/dd/yyyy") + " " + DateTime.Now.ToString("HH:mm:ss");
|
||||
dateTimeInput1.Value = DateTime.Parse(cbdt);
|
||||
return;
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -72,13 +66,92 @@ namespace VEPROMS
|
||||
private void btnOK_Click(object sender, EventArgs e)
|
||||
{
|
||||
MyProcConfig.Print_ChangeBarDate = dateTimeInput1.Value.ToString("MM/dd/yyyy HH:mm:ss");// ("MM/dd/yyyy HH:mm:ss");
|
||||
}
|
||||
|
||||
//CSM - C2026-010 - Add Audit Record for Change Bar Audit History
|
||||
ChangeBarAuditHistory.AddAudit(MyProcInfo.ItemID, $"Set ChangeBars set to ({ dateTimeInput1.Value.ToString("MM/dd/yyyy HH:mm:ss")}) by ({ VlnSettings.UserID}) on ({DateTime.Now})", DateTime.Now, VlnSettings.UserID, 0);
|
||||
|
||||
}
|
||||
|
||||
|
||||
private void btnNow_Click(object sender, EventArgs e)
|
||||
private void btnNow_Click(object sender, EventArgs e)
|
||||
{
|
||||
dateTimeInput1.Value = DateTime.Now;
|
||||
}
|
||||
|
||||
}
|
||||
//C2026-009 Add Option to Reset Change Bar to Last Approved Date/Time
|
||||
private void btnResetToApproved_Click(object sender, EventArgs e)
|
||||
{
|
||||
System.Data.DataTable dt = RevisionData.GetRevisionDataByUnit(MyProcInfo.ItemID);
|
||||
|
||||
if (dt.Rows.Count == 0)
|
||||
{
|
||||
//no records, remove
|
||||
if (MessageBox.Show("There are currently no approvals set. Selecting yes will set ChangeBars to show all changes since the creation of the procedure.\r\nAre you sure you wish to reset ChangeBars?", "Reset ChangeBar Date", MessageBoxButtons.YesNo) == DialogResult.Yes)
|
||||
{
|
||||
MyProcConfig.Print_ChangeBarDate = "";
|
||||
DialogResult = DialogResult.OK;
|
||||
|
||||
//CSM - C2026-010 - Add Audit Record for Change Bar Audit History
|
||||
ChangeBarAuditHistory.AddAudit(MyProcInfo.ItemID, $"Reset ChangeBars performed by ({VlnSettings.UserID}) on ({DateTime.Now}). ChangeBars reset to show all changes.", DateTime.Now, VlnSettings.UserID, 0);
|
||||
|
||||
Close();
|
||||
}
|
||||
}
|
||||
else if (RevisionData.HasUnits(dt))
|
||||
{
|
||||
|
||||
//any with units
|
||||
string maxDTS = RevisionData.MaxDTS(dt).ToString("MM/dd/yyyy HH:mm:ss");
|
||||
|
||||
//create wording for ChangeBar changes
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.Append($" The Procedure Viewer Change Bar Date will be set to ({maxDTS}).");
|
||||
foreach (DataRow r in dt.Rows)
|
||||
{
|
||||
sb.Append($"\r\n The Change Bar Date for Unit ({r["UnitName"]}) will be set to ({Convert.ToDateTime(r["DTS"]):MM/dd/yyyy HH:mm:ss}).");
|
||||
}
|
||||
|
||||
sb.Append("\r\n Any Change Bars for Units not listed above will use the Overall/Procedure Viewer Change Bar Date (as these Units have no approvals).");
|
||||
|
||||
if (CustomMessageBox.Show($"This will reset ChangeBars to show for changes newer than the last approval.\r\nThis includes the following changes:\r\n{sb.ToString()}\r\n\r\nAre you sure you wish to reset ChangeBars?", "Reset ChangeBar Date", "Yes", "No") == DialogResult.Yes)
|
||||
{
|
||||
//Change the overall ChangeBarDate
|
||||
MyProcConfig.Print_ChangeBarDate = maxDTS;
|
||||
|
||||
//Change the ChangeBarDate for each unit
|
||||
foreach (DataRow r in dt.Rows)
|
||||
{
|
||||
MyProcConfig.SelectedSlave = Convert.ToInt32(r["UnitID"]);
|
||||
MyProcConfig.Print_ChangeBarDate = Convert.ToDateTime(r["DTS"]).ToString("MM / dd / yyyy HH: mm: ss");
|
||||
|
||||
//CSM - C2026-010 - Add Audit Record for Change Bar Audit History
|
||||
ChangeBarAuditHistory.AddAudit(MyProcInfo.ItemID, $"Reset ChangeBars performed by ({VlnSettings.UserID}) on ({DateTime.Now}). ChangeBars reset to show since last approval ({Convert.ToDateTime(r["DTS"]):MM/dd/yyyy HH:mm:ss}) for (Unit {r["UnitName"]})", DateTime.Now, VlnSettings.UserID, MyProcConfig.SelectedSlave);
|
||||
|
||||
}
|
||||
MyProcConfig.SelectedSlave = 0;
|
||||
DialogResult = DialogResult.OK;
|
||||
|
||||
//CSM - C2026-010 - Add Audit Record for Change Bar Audit History
|
||||
ChangeBarAuditHistory.AddAudit(MyProcInfo.ItemID, $"Reset ChangeBars performed by ({VlnSettings.UserID}) on ({DateTime.Now}). ChangeBars reset to show since last approval ({maxDTS})", DateTime.Now, VlnSettings.UserID, 0);
|
||||
|
||||
Close();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//no units
|
||||
string maxDTS = RevisionData.MaxDTS(dt).ToString("MM/dd/yyyy HH:mm:ss");
|
||||
if (MessageBox.Show($"This will reset ChangeBars to show for changes newer than the last approval ({maxDTS}).\r\nAre you sure you wish to reset ChangeBars?", "Reset ChangeBar Date", MessageBoxButtons.YesNo) == DialogResult.Yes)
|
||||
{
|
||||
MyProcConfig.Print_ChangeBarDate = maxDTS;
|
||||
DialogResult = DialogResult.OK;
|
||||
|
||||
//CSM - C2026-010 - Add Audit Record for Change Bar Audit History
|
||||
ChangeBarAuditHistory.AddAudit(MyProcInfo.ItemID, $"Reset ChangeBars performed by ({VlnSettings.UserID}) on ({DateTime.Now}). ChangeBars reset to show since last approval ({maxDTS})", DateTime.Now, VlnSettings.UserID, 0);
|
||||
Close();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -165,9 +165,9 @@ This function will cause no change to data or records in PROMS.
|
||||
It should however be performed when other users are not in PROMS, as it could
|
||||
cause slowdown or errors for other users while it is running.</value>
|
||||
</data>
|
||||
<metadata name="superTooltip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<data name="superTooltip1.TrayLocation" type="System.Drawing.Point, System.Drawing">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</data>
|
||||
<data name="swDeleteFolder.SuperTooltip" xml:space="preserve">
|
||||
<value>This allows the user to remove folders and sub folders as well as their contents.
|
||||
|
||||
@@ -304,22 +304,22 @@ Should an item become orphaned (disconnected) from the rest of the data, it will
|
||||
</value>
|
||||
</data>
|
||||
<data name="swCheckROLinks.SuperTooltip" xml:space="preserve">
|
||||
<value>This allows the user to check referenced objects links in procedure step data for multiple working drafts in a batch mode.
|
||||
<value>This allows the user to check referenced object links in procedure step data for multiple working drafts in a batch mode.
|
||||
|
||||
Bad referenced bject links will be identified with an Bad RO Link annotation. Use the PROMS Search tool to list all of the steps that have this annotation.
|
||||
Bad referenced object links will be identified with a Bad RO Link annotation. Use the PROMS Search tool to list all of the steps that have this annotation.
|
||||
|
||||
Be sure a current backup of the database exists prior performing this function.
|
||||
Be sure a current backup of the database exists prior to performing this function.
|
||||
|
||||
It is recommended that this be done during off hours.
|
||||
|
||||
</value>
|
||||
</data>
|
||||
<data name="labelX12.SuperTooltip" xml:space="preserve">
|
||||
<value>This allows the user to check referenced objects links in procedure step data for multiple working drafts in a batch mode.
|
||||
<value>This allows the user to check referenced object links in procedure step data for multiple working drafts in a batch mode.
|
||||
|
||||
Bad referenced bject links will be identified with an Bad RO Link annotation. Use the PROMS Search tool to list all of the steps that have this annotation.
|
||||
Bad referenced object links will be identified with a Bad RO Link annotation. Use the PROMS Search tool to list all of the steps that have this annotation.
|
||||
|
||||
Be sure a current backup of the database exists prior performing this function.
|
||||
Be sure a current backup of the database exists prior to performing this function.
|
||||
|
||||
It is recommended that this be done during off hours.
|
||||
</value>
|
||||
@@ -388,7 +388,8 @@ If more than one procedure is selected, it is recommended that this be performed
|
||||
ud8AKwnMnBpmYFAAAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="$this.TrayHeight" type="System.Int32, mscorlib">
|
||||
<value>25</value>
|
||||
</metadata>
|
||||
</data>
|
||||
</root>
|
||||
@@ -678,7 +678,7 @@ namespace VEPROMS
|
||||
// to check that there are enough docstyles to map the selected type of section.
|
||||
PlantFormat pf = _SectionConfig.MyFormat != null ? _SectionConfig.MyFormat.PlantFormat : _SectionConfig.MyDefaultFormat.PlantFormat;
|
||||
if (!_Initializing && ppCmbxFormat.SelectedIndex >= 0)
|
||||
pf = FormatInfoList.SortedFormatInfoList[ppCmbxFormat.SelectedIndex].PlantFormat;
|
||||
pf = ((FormatInfo) ppCmbxFormat.SelectedItem).PlantFormat;
|
||||
else if (!_Initializing) // if the format was changed, it may have been set to default.
|
||||
pf = _SectionConfig.MyDefaultFormat.PlantFormat;
|
||||
_Initializing = true;
|
||||
|
||||
@@ -877,7 +877,7 @@ namespace VEPROMS
|
||||
this.infoPanel.ExpandOnTitleClick = true;
|
||||
this.infoPanel.Location = new System.Drawing.Point(614, 57);
|
||||
this.infoPanel.Name = "infoPanel";
|
||||
this.infoPanel.Size = new System.Drawing.Size(230, 490);
|
||||
this.infoPanel.Size = new System.Drawing.Size(300, 490);
|
||||
this.infoPanel.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.infoPanel.Style.BackColor1.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground;
|
||||
this.infoPanel.Style.BackColor2.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2;
|
||||
|
||||
@@ -617,7 +617,7 @@ namespace VEPROMS
|
||||
ProcedureConfig pc = pi.MyConfig as ProcedureConfig;
|
||||
if (pc == null) return;
|
||||
|
||||
dlgSetChangeBarStartDate cbdDlg = new dlgSetChangeBarStartDate(pc);
|
||||
dlgSetChangeBarStartDate cbdDlg = new dlgSetChangeBarStartDate(pc, pi);
|
||||
if (cbdDlg.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
using (Item itm = Item.Get(pi.ItemID))
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
using Csla.Data;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.ComponentModel;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading;
|
||||
|
||||
using Csla.Data;
|
||||
using static System.Net.Mime.MediaTypeNames;
|
||||
|
||||
|
||||
namespace VEPROMS.CSLA.Library
|
||||
@@ -494,6 +494,8 @@ namespace VEPROMS.CSLA.Library
|
||||
{
|
||||
roid = FormatRoidKey(roid, true);
|
||||
|
||||
|
||||
|
||||
string retval = GetRoChild(roid).value;
|
||||
|
||||
if (string.IsNullOrEmpty(retval))
|
||||
@@ -2162,7 +2164,7 @@ namespace VEPROMS.CSLA.Library
|
||||
return s2;
|
||||
|
||||
s2 = s2.Replace(@"\u160?", "<HSP>"); // convert hard spaces bug fix: B2016-206
|
||||
s2 = s2.Replace(@"\", @"\u9586?"); // convert backslashes to a backslash symbol
|
||||
s2 = Regex.Replace(s2, @"\\(?!u)", @"\u9586?"); // convert backslashes to a backslash symbol
|
||||
s2 = s2.Replace("<HSP>", @"\u160?"); // convert hard spaces bug fix: B2016-206
|
||||
s2 = s2.Replace("`", @"\'b0"); // convert backquote to degree - left over from DOS days.
|
||||
s2 = s2.Replace("\xf8", @"\'b0"); // convert \xf8 to degree.
|
||||
|
||||
@@ -597,13 +597,6 @@ namespace VEPROMS.CSLA.Library
|
||||
//if (_RevisionInfoList != null)
|
||||
// return _RevisionInfoList;
|
||||
RevisionInfoList tmp = DataPortal.Fetch<RevisionInfoList>(new ItemUnitCriteria(itemID, unitID));
|
||||
|
||||
foreach (var x in tmp)
|
||||
{
|
||||
x.LatestVersion.ApprovedXML = x.RevisionID.ToString();
|
||||
x.LatestVersion.PDF = Encoding.ASCII.GetBytes(x.RevisionID.ToString());
|
||||
x.LatestVersion.SummaryPDF = Encoding.ASCII.GetBytes(x.RevisionID.ToString());
|
||||
}
|
||||
RevisionInfo.AddList(tmp);
|
||||
tmp.AddEvents();
|
||||
//_RevisionInfoList = tmp;
|
||||
|
||||
72
PROMS/VEPROMS.CSLA.Library/Minimal/ChangeBarAuditHistory.cs
Normal file
72
PROMS/VEPROMS.CSLA.Library/Minimal/ChangeBarAuditHistory.cs
Normal file
@@ -0,0 +1,72 @@
|
||||
using System;
|
||||
using Csla.Data;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
|
||||
//CSM - C2026-010 - Minimal Class for Managing Change Bar Audit History
|
||||
namespace VEPROMS.CSLA.Library
|
||||
{
|
||||
public static class ChangeBarAuditHistory
|
||||
{
|
||||
|
||||
#region Add Audit Record for ChangeBar History
|
||||
public static void AddAudit(int itemID, string description, DateTime dts, string userID, int unitIndex)
|
||||
{
|
||||
try
|
||||
{
|
||||
using (SqlConnection cn = Database.VEPROMS_SqlConnection)
|
||||
{
|
||||
using (SqlCommand cm = cn.CreateCommand())
|
||||
{
|
||||
cm.CommandType = CommandType.StoredProcedure;
|
||||
cm.CommandText = "AddChangeBarAuditHistory";
|
||||
cm.Parameters.AddWithValue("@ItemID", itemID);
|
||||
cm.Parameters.AddWithValue("@Description", description);
|
||||
cm.Parameters.AddWithValue("@DTS", dts);
|
||||
cm.Parameters.AddWithValue("@UserID", userID);
|
||||
if (unitIndex != 0) cm.Parameters.AddWithValue("@UnitIndex", unitIndex);
|
||||
|
||||
cm.CommandTimeout = 0;
|
||||
cm.ExecuteNonQuery();
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
throw new DbCslaException("Error in ChangeBarAuditHistory.AddAudit: ", ex);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Get Change Bar Audit History
|
||||
public static DataTable GetChangeBarAuditHistory(int itemID)
|
||||
{
|
||||
try
|
||||
{
|
||||
using (SqlConnection cn = Database.VEPROMS_SqlConnection)
|
||||
{
|
||||
using (SqlCommand cm = cn.CreateCommand())
|
||||
{
|
||||
cm.CommandType = CommandType.StoredProcedure;
|
||||
cm.CommandText = "GetChangeBarAuditHistoryByItem";
|
||||
cm.Parameters.AddWithValue("@ItemID", itemID);
|
||||
cm.CommandTimeout = Database.DefaultTimeout;
|
||||
using (SqlDataAdapter da = new SqlDataAdapter(cm))
|
||||
{
|
||||
DataTable dt = new DataTable();
|
||||
da.Fill(dt);
|
||||
return dt;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
throw new DbCslaException("Error in ChangeBarAuditHistory.GetChangeBarAuditHistoryByItem: retrieving data failed", ex);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
||||
53
PROMS/VEPROMS.CSLA.Library/Minimal/RevisionData.cs
Normal file
53
PROMS/VEPROMS.CSLA.Library/Minimal/RevisionData.cs
Normal file
@@ -0,0 +1,53 @@
|
||||
using Csla.Data;
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using System.Linq;
|
||||
|
||||
//CSM - C2026-009 - Minimal Class for Getting Revision Data
|
||||
namespace VEPROMS.CSLA.Library
|
||||
{
|
||||
public static class RevisionData
|
||||
{
|
||||
#region Check Data
|
||||
//Check if Data Has Units
|
||||
public static bool HasUnits(DataTable dt) => dt.AsEnumerable().Any(x => x.Field<int?>("UnitID") > 0);
|
||||
|
||||
//Get Maximum Date Time Stamp
|
||||
public static DateTime MaxDTS(DataTable dt) => dt.AsEnumerable().Max(x => x.Field<DateTime>("DTS"));
|
||||
|
||||
#endregion
|
||||
|
||||
#region Get Revision Data
|
||||
//CSM - C2026-009 Get Current Revision Data by Unit
|
||||
public static DataTable GetRevisionDataByUnit(int itemID)
|
||||
{
|
||||
try
|
||||
{
|
||||
using (SqlConnection cn = Database.VEPROMS_SqlConnection)
|
||||
{
|
||||
using (SqlCommand cm = cn.CreateCommand())
|
||||
{
|
||||
cm.CommandType = CommandType.StoredProcedure;
|
||||
cm.CommandText = "GetCurrentApprovedRevisions";
|
||||
cm.CommandTimeout = Database.DefaultTimeout;
|
||||
cm.Parameters.AddWithValue("@ItemID", itemID);
|
||||
|
||||
using (SqlDataAdapter da = new SqlDataAdapter(cm))
|
||||
{
|
||||
DataTable dt = new DataTable();
|
||||
da.Fill(dt);
|
||||
return dt;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
throw new DbCslaException("Error in GetRevisionDataByUnit: retrieving data failed", ex);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
||||
@@ -389,8 +389,10 @@
|
||||
<Compile Include="Generated\ZTransition.cs" />
|
||||
<Compile Include="Generated\ZTransitionInfo.cs" />
|
||||
<Compile Include="Minimal\AnnotationstypeSections.cs" />
|
||||
<Compile Include="Minimal\ChangeBarAuditHistory.cs" />
|
||||
<Compile Include="Minimal\Maintenance.cs" />
|
||||
<Compile Include="Minimal\GeneralReports.cs" />
|
||||
<Compile Include="Minimal\RevisionData.cs" />
|
||||
<Compile Include="Minimal\UserReports.cs" />
|
||||
<Compile Include="Minimal\UserSettings.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
|
||||
@@ -31,25 +31,32 @@
|
||||
this.btn1 = new System.Windows.Forms.Button();
|
||||
this.btn2 = new System.Windows.Forms.Button();
|
||||
this.lblMessage = new System.Windows.Forms.Label();
|
||||
this.tableLP1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.tableLP1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// btn1
|
||||
//
|
||||
this.btn1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||
this.btn1.AutoSize = true;
|
||||
this.btn1.Location = new System.Drawing.Point(12, 99);
|
||||
this.btn1.Location = new System.Drawing.Point(18, 102);
|
||||
this.btn1.Margin = new System.Windows.Forms.Padding(10);
|
||||
this.btn1.MinimumSize = new System.Drawing.Size(60, 20);
|
||||
this.btn1.Name = "btn1";
|
||||
this.btn1.Size = new System.Drawing.Size(75, 23);
|
||||
this.btn1.Size = new System.Drawing.Size(60, 20);
|
||||
this.btn1.TabIndex = 0;
|
||||
this.btn1.UseVisualStyleBackColor = true;
|
||||
this.btn1.Click += new System.EventHandler(this.Btn1_Click);
|
||||
//
|
||||
// btn2
|
||||
//
|
||||
this.btn2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.btn2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.btn2.AutoSize = true;
|
||||
this.btn2.Location = new System.Drawing.Point(322, 99);
|
||||
this.btn2.Location = new System.Drawing.Point(335, 102);
|
||||
this.btn2.Margin = new System.Windows.Forms.Padding(10);
|
||||
this.btn2.MinimumSize = new System.Drawing.Size(60, 20);
|
||||
this.btn2.Name = "btn2";
|
||||
this.btn2.Size = new System.Drawing.Size(75, 23);
|
||||
this.btn2.Size = new System.Drawing.Size(60, 20);
|
||||
this.btn2.TabIndex = 1;
|
||||
this.btn2.UseVisualStyleBackColor = true;
|
||||
this.btn2.Click += new System.EventHandler(this.Btn2_Click);
|
||||
@@ -57,24 +64,48 @@
|
||||
// lblMessage
|
||||
//
|
||||
this.lblMessage.AutoSize = true;
|
||||
this.lblMessage.Location = new System.Drawing.Point(33, 41);
|
||||
this.tableLP1.SetColumnSpan(this.lblMessage, 2);
|
||||
this.lblMessage.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.lblMessage.Location = new System.Drawing.Point(11, 8);
|
||||
this.lblMessage.MaximumSize = new System.Drawing.Size(413, 0);
|
||||
this.lblMessage.Name = "lblMessage";
|
||||
this.lblMessage.Size = new System.Drawing.Size(0, 13);
|
||||
this.lblMessage.Size = new System.Drawing.Size(391, 84);
|
||||
this.lblMessage.TabIndex = 2;
|
||||
this.lblMessage.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// tableLP1
|
||||
//
|
||||
this.tableLP1.AutoSize = true;
|
||||
this.tableLP1.ColumnCount = 2;
|
||||
this.tableLP1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tableLP1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tableLP1.Controls.Add(this.lblMessage, 0, 0);
|
||||
this.tableLP1.Controls.Add(this.btn1);
|
||||
this.tableLP1.Controls.Add(this.btn2);
|
||||
this.tableLP1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tableLP1.Location = new System.Drawing.Point(0, 0);
|
||||
this.tableLP1.MaximumSize = new System.Drawing.Size(413, 0);
|
||||
this.tableLP1.MinimumSize = new System.Drawing.Size(413, 130);
|
||||
this.tableLP1.Name = "tableLP1";
|
||||
this.tableLP1.Padding = new System.Windows.Forms.Padding(8);
|
||||
this.tableLP1.RowCount = 2;
|
||||
this.tableLP1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.tableLP1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30F));
|
||||
this.tableLP1.Size = new System.Drawing.Size(413, 130);
|
||||
this.tableLP1.TabIndex = 0;
|
||||
//
|
||||
// CustomMessageBox
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.AutoSize = true;
|
||||
this.ClientSize = new System.Drawing.Size(419, 130);
|
||||
this.Controls.Add(this.lblMessage);
|
||||
this.Controls.Add(this.btn2);
|
||||
this.Controls.Add(this.btn1);
|
||||
this.Controls.Add(this.tableLP1);
|
||||
this.Name = "CustomMessageBox";
|
||||
this.ShowIcon = false;
|
||||
this.Text = "CustomMessageBox";
|
||||
this.tableLP1.ResumeLayout(false);
|
||||
this.tableLP1.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
@@ -85,5 +116,6 @@
|
||||
private System.Windows.Forms.Button btn1;
|
||||
private System.Windows.Forms.Button btn2;
|
||||
private System.Windows.Forms.Label lblMessage;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLP1;
|
||||
}
|
||||
}
|
||||
@@ -27,6 +27,10 @@ namespace Volian.Controls.Library
|
||||
{
|
||||
btn2.Text = button2Text;
|
||||
btn2.Visible = true;
|
||||
|
||||
//make buttons uniform
|
||||
btn1.Height = btn2.Height = btn1.Height > btn2.Height ? btn1.Height : btn2.Height;
|
||||
btn1.Width = btn2.Width = btn1.Width > btn2.Width ? btn1.Width : btn2.Width;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
using System.Security.Cryptography;
|
||||
using VEPROMS.CSLA.Library;
|
||||
|
||||
namespace Volian.Controls.Library
|
||||
{
|
||||
partial class DisplayApplicability
|
||||
@@ -20,6 +23,7 @@ namespace Volian.Controls.Library
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
|
||||
#region Component Designer generated code
|
||||
|
||||
/// <summary>
|
||||
@@ -30,19 +34,41 @@ namespace Volian.Controls.Library
|
||||
{
|
||||
this.gpMode = new DevComponents.DotNetBar.Controls.GroupPanel();
|
||||
this.gpItem = new DevComponents.DotNetBar.Controls.GroupPanel();
|
||||
this.btnApplicabilitychg2 = new DevComponents.DotNetBar.ButtonItem();
|
||||
this.btnApplicabilitychg = new DevComponents.DotNetBar.ButtonX();
|
||||
this.superTooltip1 = new DevComponents.DotNetBar.SuperTooltip();
|
||||
this.gpItem.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// btnApplicabilitychg
|
||||
//
|
||||
this.btnApplicabilitychg.Location = new System.Drawing.Point(60, 8);
|
||||
this.btnApplicabilitychg.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.btnApplicabilitychg.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.btnApplicabilitychg.Name = "btnApplicabilitychg";
|
||||
this.btnApplicabilitychg.Size = new System.Drawing.Size(80, 22);
|
||||
this.btnApplicabilitychg.Margin = new System.Windows.Forms.Padding(2);
|
||||
this.btnApplicabilitychg.RightToLeft = System.Windows.Forms.RightToLeft.No;
|
||||
this.superTooltip1.SetSuperTooltip(this.btnApplicabilitychg, new DevComponents.DotNetBar.SuperTooltipInfo("Change applicability settings - All At Level", "", "When clicked, all steps at the level of the current step will have their applicability settings changed.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray));
|
||||
this.btnApplicabilitychg.TabIndex = 0;
|
||||
this.btnApplicabilitychg.Text = "Set All at Level";
|
||||
this.btnApplicabilitychg.ColorTable = DevComponents.DotNetBar.eButtonColor.BlueOrb;
|
||||
this.btnApplicabilitychg.Font = new System.Drawing.Font("Microsoft Sans Serif", 8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.btnApplicabilitychg.Click += new System.EventHandler(this.BtnApplicabilitychg_Click);
|
||||
//
|
||||
// gpMode
|
||||
//
|
||||
this.gpMode.AutoSize = true;
|
||||
this.gpMode.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
|
||||
this.gpMode.CanvasColor = System.Drawing.SystemColors.Control;
|
||||
this.gpMode.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007;
|
||||
this.gpMode.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.gpMode.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.gpMode.Location = new System.Drawing.Point(0, 0);
|
||||
this.gpMode.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.gpMode.Name = "gpMode";
|
||||
this.gpMode.Padding = new System.Windows.Forms.Padding(10, 10, 10, 30);
|
||||
this.gpMode.Size = new System.Drawing.Size(324, 40);
|
||||
this.gpMode.Padding = new System.Windows.Forms.Padding(13, 12, 13, 37);
|
||||
this.gpMode.Size = new System.Drawing.Size(432, 49);
|
||||
//
|
||||
//
|
||||
//
|
||||
@@ -58,7 +84,6 @@ namespace Volian.Controls.Library
|
||||
this.gpMode.Style.BorderRightWidth = 1;
|
||||
this.gpMode.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid;
|
||||
this.gpMode.Style.BorderTopWidth = 1;
|
||||
this.gpMode.Style.Class = "";
|
||||
this.gpMode.Style.CornerDiameter = 4;
|
||||
this.gpMode.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded;
|
||||
this.gpMode.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center;
|
||||
@@ -67,12 +92,10 @@ namespace Volian.Controls.Library
|
||||
//
|
||||
//
|
||||
//
|
||||
this.gpMode.StyleMouseDown.Class = "";
|
||||
this.gpMode.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
//
|
||||
//
|
||||
//
|
||||
this.gpMode.StyleMouseOver.Class = "";
|
||||
this.gpMode.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
this.gpMode.TabIndex = 0;
|
||||
this.gpMode.Text = "Viewing Mode";
|
||||
@@ -83,11 +106,14 @@ namespace Volian.Controls.Library
|
||||
this.gpItem.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
|
||||
this.gpItem.CanvasColor = System.Drawing.SystemColors.Control;
|
||||
this.gpItem.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007;
|
||||
//this.gpItem.Controls.Add(this.btnApplicabilitychg);
|
||||
this.gpItem.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.gpItem.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.gpItem.Location = new System.Drawing.Point(0, 40);
|
||||
this.gpItem.Location = new System.Drawing.Point(0, 49);
|
||||
this.gpItem.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.gpItem.Name = "gpItem";
|
||||
this.gpItem.Padding = new System.Windows.Forms.Padding(10, 10, 10, 30);
|
||||
this.gpItem.Size = new System.Drawing.Size(324, 40);
|
||||
this.gpItem.Padding = new System.Windows.Forms.Padding(13, 12, 13, 37);
|
||||
this.gpItem.Size = new System.Drawing.Size(432, 85);
|
||||
//
|
||||
//
|
||||
//
|
||||
@@ -103,7 +129,6 @@ namespace Volian.Controls.Library
|
||||
this.gpItem.Style.BorderRightWidth = 1;
|
||||
this.gpItem.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid;
|
||||
this.gpItem.Style.BorderTopWidth = 1;
|
||||
this.gpItem.Style.Class = "";
|
||||
this.gpItem.Style.CornerDiameter = 4;
|
||||
this.gpItem.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded;
|
||||
this.gpItem.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center;
|
||||
@@ -112,26 +137,31 @@ namespace Volian.Controls.Library
|
||||
//
|
||||
//
|
||||
//
|
||||
this.gpItem.StyleMouseDown.Class = "";
|
||||
this.gpItem.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
//
|
||||
//
|
||||
//
|
||||
this.gpItem.StyleMouseOver.Class = "";
|
||||
this.gpItem.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
this.gpItem.TabIndex = 1;
|
||||
this.gpItem.Text = "Item Mode";
|
||||
//
|
||||
// DisplayApplicability
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.gpItem);
|
||||
this.Controls.Add(this.gpMode);
|
||||
this.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.Name = "DisplayApplicability";
|
||||
this.Size = new System.Drawing.Size(324, 656);
|
||||
this.Size = new System.Drawing.Size(432, 807);
|
||||
this.gpItem.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
this.PerformLayout();
|
||||
//
|
||||
// superTooltip1
|
||||
//
|
||||
this.superTooltip1.DefaultTooltipSettings = new DevComponents.DotNetBar.SuperTooltipInfo("", "", "", null, null, DevComponents.DotNetBar.eTooltipColor.Gray);
|
||||
this.superTooltip1.LicenseKey = "F962CEC7-CD8F-4911-A9E9-CAB39962FC1F";
|
||||
|
||||
}
|
||||
|
||||
@@ -139,6 +169,9 @@ namespace Volian.Controls.Library
|
||||
|
||||
private DevComponents.DotNetBar.Controls.GroupPanel gpMode;
|
||||
private DevComponents.DotNetBar.Controls.GroupPanel gpItem;
|
||||
private DevComponents.DotNetBar.ButtonItem btnApplicabilitychg2;
|
||||
private DevComponents.DotNetBar.ButtonX btnApplicabilitychg;
|
||||
private DevComponents.DotNetBar.SuperTooltip superTooltip1;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
using JR.Utils.GUI.Forms;
|
||||
using log4net.Util;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Drawing;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using VEPROMS.CSLA.Library;
|
||||
using JR.Utils.GUI.Forms;
|
||||
|
||||
namespace Volian.Controls.Library
|
||||
{
|
||||
@@ -51,15 +52,22 @@ namespace Volian.Controls.Library
|
||||
i++;
|
||||
AddViewMode(name.Trim(), i.ToString(), apple == i);
|
||||
}
|
||||
|
||||
AddItemMode("All", "-1");
|
||||
i = 0;
|
||||
foreach (string name in names)
|
||||
AddItemMode(name.Trim(), (++i).ToString());
|
||||
AddItemMode("None", "0");
|
||||
gpItem.Controls.Add(btnApplicabilitychg);
|
||||
btnApplicabilitychg.BringToFront();
|
||||
if (_MyDisplayTabItem.MyStepTabPanel != null)
|
||||
{
|
||||
MyItemInfo = _MyDisplayTabItem.MyStepTabPanel.MyStepPanel.SelectedItemInfo;
|
||||
}
|
||||
else
|
||||
{
|
||||
MyItemInfo = _MyDisplayTabItem.MyItemInfo;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -175,7 +183,8 @@ namespace Volian.Controls.Library
|
||||
}
|
||||
break;
|
||||
}
|
||||
WireCheckboxes();
|
||||
|
||||
WireCheckboxes();
|
||||
MyApplicability = string.Empty;
|
||||
string sep = string.Empty;
|
||||
foreach (int i in MyCheckBoxes.Keys)
|
||||
@@ -270,6 +279,29 @@ namespace Volian.Controls.Library
|
||||
// s.Save();
|
||||
//}
|
||||
}
|
||||
private void BtnApplicabilitychg_Click(object sender, System.EventArgs e)
|
||||
{
|
||||
Volian.Base.Library.BigNum MasterSlave_ApplicabilityTmp;
|
||||
StepConfig sc = MyItemInfo.MyConfig as StepConfig;
|
||||
MasterSlave_ApplicabilityTmp = sc.MasterSlave_Applicability;
|
||||
|
||||
ItemInfo startitm = MyItemInfo.FirstSibling;
|
||||
while (startitm != null)
|
||||
{
|
||||
StepConfig sc2 = startitm.MyConfig as StepConfig;
|
||||
using (Content cnt = Content.Get(startitm.MyContent.ContentID))
|
||||
{
|
||||
sc2.MasterSlave_Applicability = (MasterSlave_ApplicabilityTmp);
|
||||
cnt.Config = sc2.ToString();
|
||||
cnt.Save();
|
||||
}
|
||||
startitm = startitm.GetNext();
|
||||
}
|
||||
|
||||
_MyDisplayTabItem.MyStepTabPanel.MyStepTabRibbon.RefreshProcedure();
|
||||
|
||||
}
|
||||
|
||||
// B2021-149: for procedure, only consider external transitions as invalid
|
||||
private bool IsProcWithNoExternalTrans(ItemInfo ii, List<InvalidTransition> invalidTrans)
|
||||
{
|
||||
|
||||
@@ -56,7 +56,20 @@ namespace Volian.Controls.Library
|
||||
set
|
||||
{
|
||||
if (DesignMode) return; // B2019-043 need to check if we are just saving changes to the user interface
|
||||
if (value is ProcedureInfo && _MyProcedureInfo is ProcedureInfo && value.ItemID == _MyProcedureInfo.ItemID)
|
||||
|
||||
//CSM - C2026-010 - Set/Show Change Bar Audit History
|
||||
if (value != null)
|
||||
{
|
||||
lbChangeBarHistory.DataSource = ChangeBarAuditHistory.GetChangeBarAuditHistory(value.ItemID);
|
||||
lbChangeBarHistory.ValueMember = "AuditID";
|
||||
lbChangeBarHistory.DisplayMember = "Text";
|
||||
}
|
||||
else
|
||||
{
|
||||
lbChangeBarHistory.DataSource = null;
|
||||
}
|
||||
|
||||
if (value is ProcedureInfo && _MyProcedureInfo is ProcedureInfo && value.ItemID == _MyProcedureInfo.ItemID)
|
||||
return;
|
||||
_MyProcedureInfo = value;
|
||||
if (value == null) return;
|
||||
@@ -184,6 +197,15 @@ namespace Volian.Controls.Library
|
||||
InitializeComponent();
|
||||
myRTB.FormatFont = null;
|
||||
RefreshRequired = true;
|
||||
|
||||
if (MyProcedureInfo != null)
|
||||
{
|
||||
lbChangeBarHistory.DataSource = ChangeBarAuditHistory.GetChangeBarAuditHistory(MyProcedureInfo.ItemID);
|
||||
}
|
||||
else
|
||||
{
|
||||
lbChangeBarHistory.DataSource = null;
|
||||
}
|
||||
}
|
||||
|
||||
private void lbChanges_VisibleChanged(object sender, System.EventArgs e)
|
||||
@@ -1075,7 +1097,25 @@ namespace Volian.Controls.Library
|
||||
{
|
||||
tvAudits.Height = ((tcpDetail.Height - btnRestore.Height) / 4) * 3;
|
||||
}
|
||||
public void RefreshChangeList()
|
||||
|
||||
//CSM - C2026-010 - Set/Show Change Bar Audit History
|
||||
//Display a Tooltip for what was in the list
|
||||
private void LbChangeBarHistory_MouseMove(object sender, MouseEventArgs e)
|
||||
{
|
||||
// Just use the item's value for the tooltip.
|
||||
int index = lbChangeBarHistory.IndexFromPoint(e.Location);
|
||||
|
||||
if (index != ListBox.NoMatches)
|
||||
{
|
||||
DataRow rw = (lbChangeBarHistory.Items[index] as DataRowView)?.Row;
|
||||
|
||||
// Display the item's value as a tooltip.
|
||||
if (tipCBHistory.GetToolTip(lbChangeBarHistory) != rw["Text"].ToString())
|
||||
tipCBHistory.SetToolTip(lbChangeBarHistory, rw["Text"].ToString());
|
||||
}
|
||||
}
|
||||
|
||||
public void RefreshChangeList()
|
||||
{
|
||||
myTimer.Enabled = false;
|
||||
myTimer.Enabled = true;
|
||||
|
||||
BIN
PROMS/Volian.Controls.Library/DisplayHistory.designer.cs
generated
BIN
PROMS/Volian.Controls.Library/DisplayHistory.designer.cs
generated
Binary file not shown.
@@ -188,4 +188,7 @@
|
||||
<metadata name="myTimer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="tipCBHistory.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>119, 17</value>
|
||||
</metadata>
|
||||
</root>
|
||||
@@ -81,7 +81,7 @@ namespace Volian.Controls.Library
|
||||
this.lbROId.Dock = System.Windows.Forms.DockStyle.Left;
|
||||
this.lbROId.ForeColor = System.Drawing.SystemColors.Highlight;
|
||||
this.lbROId.Location = new System.Drawing.Point(48, 24);
|
||||
this.lbROId.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.lbROId.Margin = new System.Windows.Forms.Padding(2);
|
||||
this.lbROId.Name = "lbROId";
|
||||
this.lbROId.Size = new System.Drawing.Size(183, 33);
|
||||
this.superTooltip1.SetSuperTooltip(this.lbROId, new DevComponents.DotNetBar.SuperTooltipInfo("RO ID", "", "The RO ID for the selected RO Value will be displayed here. Double-Click to open" +
|
||||
@@ -97,7 +97,7 @@ namespace Volian.Controls.Library
|
||||
this.lblROID.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
this.lblROID.Dock = System.Windows.Forms.DockStyle.Left;
|
||||
this.lblROID.Location = new System.Drawing.Point(0, 24);
|
||||
this.lblROID.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.lblROID.Margin = new System.Windows.Forms.Padding(2);
|
||||
this.lblROID.Name = "lblROID";
|
||||
this.lblROID.Size = new System.Drawing.Size(48, 33);
|
||||
this.superTooltip1.SetSuperTooltip(this.lblROID, new DevComponents.DotNetBar.SuperTooltipInfo("RO ID", "", "The RO ID for the selected RO Value will be displayed here.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(150, 80)));
|
||||
@@ -139,7 +139,7 @@ namespace Volian.Controls.Library
|
||||
this.btnGoToRO.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.btnGoToRO.Enabled = false;
|
||||
this.btnGoToRO.Location = new System.Drawing.Point(0, 55);
|
||||
this.btnGoToRO.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.btnGoToRO.Margin = new System.Windows.Forms.Padding(2);
|
||||
this.btnGoToRO.Name = "btnGoToRO";
|
||||
this.btnGoToRO.Size = new System.Drawing.Size(233, 18);
|
||||
this.btnGoToRO.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
@@ -155,7 +155,7 @@ namespace Volian.Controls.Library
|
||||
this.btnPreviewRO.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.btnPreviewRO.Enabled = false;
|
||||
this.btnPreviewRO.Location = new System.Drawing.Point(0, 37);
|
||||
this.btnPreviewRO.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.btnPreviewRO.Margin = new System.Windows.Forms.Padding(2);
|
||||
this.btnPreviewRO.Name = "btnPreviewRO";
|
||||
this.btnPreviewRO.Size = new System.Drawing.Size(233, 18);
|
||||
this.superTooltip1.SetSuperTooltip(this.btnPreviewRO, new DevComponents.DotNetBar.SuperTooltipInfo("Preview", "", "This will Preview the selected RO Table, X/Y Plot, or Image.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(150, 80)));
|
||||
@@ -263,6 +263,7 @@ namespace Volian.Controls.Library
|
||||
this.Controls.Add(this.tvROFST);
|
||||
this.Controls.Add(this.lbFound);
|
||||
this.Controls.Add(this.panelValue);
|
||||
this.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.Name = "DisplayRO";
|
||||
this.Size = new System.Drawing.Size(233, 507);
|
||||
this.panelValue.ResumeLayout(false);
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
using DevComponents.DotNetBar;
|
||||
using JR.Utils.GUI.Forms;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Drawing;
|
||||
using System.Data;
|
||||
using System.Text;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Windows.Forms;
|
||||
using VEPROMS.CSLA.Library;
|
||||
using XYPlots;
|
||||
using DevComponents.DotNetBar;
|
||||
using System.Text.RegularExpressions;
|
||||
using Volian.Base.Library;
|
||||
using JR.Utils.GUI.Forms;
|
||||
using System.Linq;
|
||||
using XYPlots;
|
||||
|
||||
namespace Volian.Controls.Library
|
||||
{
|
||||
@@ -372,8 +372,7 @@ namespace Volian.Controls.Library
|
||||
{
|
||||
// B2022-088: [JPR] Find Doc Ro button not working in Word Sections
|
||||
// B2022-098: [JPR] ROs not being resolved in Word Sections
|
||||
if (e.Node.Tag is ROFSTLookup.rochild)
|
||||
{
|
||||
if (e.Node.Tag is ROFSTLookup.rochild){
|
||||
ROFSTLookup.rochild chld = (ROFSTLookup.rochild)e.Node.Tag;
|
||||
selectedChld = chld;
|
||||
|
||||
@@ -770,9 +769,15 @@ namespace Volian.Controls.Library
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
tmp = new TreeNode(roc.title);
|
||||
tmp.Tag = roc;
|
||||
|
||||
if (tmp.Text.IndexOf("\\u") > -1) // RO Editor add symbols C2022 - 003
|
||||
{
|
||||
tmp.Text = Regex.Replace(tmp.Text, @"\\u([0-9]{1,4})\?", m => Convert.ToChar(int.Parse(m.Groups[1].Value)).ToString());
|
||||
}
|
||||
|
||||
if (roc.roid.Length == 16)
|
||||
{
|
||||
tn.Nodes.Add(tmp);
|
||||
@@ -921,11 +926,12 @@ namespace Volian.Controls.Library
|
||||
// Pad to 16 to store in the RoUsage table.
|
||||
string padroid = ROFSTLookup.FormatRoidKey(roc.roid, true);
|
||||
string linktxt = string.Format(@"#Link:ReferencedObject:<NewID> {0} {1}", padroid, MyROFST.RODbID);
|
||||
|
||||
// Resolve symbols and scientific notation in the RO return value
|
||||
string valtxt = MyROFSTLookup.GetTranslatedRoValue(padroid, MyRTB.MyItemInfo.ActiveFormat.PlantFormat.FormatData.SectData.ConvertCaretToDelta, MyRTB.MyItemInfo.ActiveFormat.PlantFormat.FormatData.SectData.UseTildaPoundCharsForSuperSubScriptInROValues, false, MyRTB.MyItemInfo);
|
||||
|
||||
MyRTB.OnRoInsert(this, new StepRTBRoEventArgs(valtxt, selectedChld.value, linktxt, padroid, MyROFST.RODbID));
|
||||
// Resolve symbols and scientific notation in the RO return value
|
||||
string valtxt = MyROFSTLookup.GetTranslatedRoValue(padroid, MyRTB.MyItemInfo.ActiveFormat.PlantFormat.FormatData.SectData.ConvertCaretToDelta, MyRTB.MyItemInfo.ActiveFormat.PlantFormat.FormatData.SectData.UseTildaPoundCharsForSuperSubScriptInROValues, false, MyRTB.MyItemInfo);
|
||||
|
||||
MyRTB.OnRoInsert(this, new StepRTBRoEventArgs(valtxt, selectedChld.value, linktxt, padroid, MyROFST.RODbID));
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -112,20 +112,12 @@
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="superTooltip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<metadata name="superTooltip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<data name="btnSaveRO.SuperTooltip" xml:space="preserve">
|
||||
<value>For Step Editor sections:
|
||||
- This will place the selected RO at the cursor position.
|
||||
- This will replace an RO with the selected RO.
|
||||
|
||||
For Word sections
|
||||
- This will place the needed RO ID on the clipboard.</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -1400,9 +1400,13 @@ namespace Volian.Controls.Library
|
||||
if (SelectionLength > 0)HandleDeleteKeyWithSelectedText(new KeyEventArgs(Keys.None), null);
|
||||
int position = SelectionStart;
|
||||
SelectionLength = 0;
|
||||
linkValue = linkValue.Replace("\\u8209?", "\\f1\\u8209?\\f0 ");
|
||||
linkValue = linkValue.Replace("\\u9586?", "\\f1\\u9586?\\f0 "); // backslash symbol
|
||||
linkValue = linkValue.Replace("\\u916?", "\\f1\\u916?\\f0 ");
|
||||
|
||||
var pattern = @"\\u([0-9]{1,4})\?"; // RO Editor add symbols C2022 - 003
|
||||
foreach (Match match in Regex.Matches(linkValue, pattern, RegexOptions.IgnoreCase))
|
||||
{
|
||||
linkValue = linkValue.Replace(match.Value, "\\f1 " + match.Value + " \\f0");
|
||||
}
|
||||
|
||||
linkValue = linkValue.Replace(@"{", @"\{");
|
||||
linkValue = linkValue.Replace(@"}", @"\}");
|
||||
SelectedRtf = @"{\rtf1\ansi" + FontTable + @"{\colortbl ;\red255\green0\blue0;\red0\green0\blue255;}\v" + FontSize + @" <START]\v0\cf1 " + linkValue + @"\cf0\v " + linkUrl + @"[END>\v0 }";
|
||||
|
||||
@@ -1668,7 +1668,17 @@ namespace Volian.Controls.Library
|
||||
}
|
||||
Clipboard.Clear();
|
||||
|
||||
Clipboard.SetDataObject(myDO); // this saves the cleaned up information to the Windows clipboard
|
||||
//Try to update the data object to persist beyond PROMS life
|
||||
//if can't, log it and use old method of scoping clipboard to PROMS life
|
||||
try
|
||||
{
|
||||
Clipboard.SetDataObject(myDO, true); // this saves the cleaned up information to the Windows clipboard
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_MyLog.Warn($"Error Setting Clipboard Object to Persist beyond PROMS. Clipboard will be scoped to PROMS. Error:{ex.Message}");
|
||||
Clipboard.SetDataObject(myDO); // this saves the cleaned up information to the Windows clipboard
|
||||
}
|
||||
}
|
||||
iData = Clipboard.GetDataObject();
|
||||
bool noEquationData = true;
|
||||
|
||||
@@ -462,6 +462,7 @@
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="CustomMessageBox.resx">
|
||||
<DependentUpon>CustomMessageBox.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="DisplayBookMarks.resx">
|
||||
<DependentUpon>DisplayBookMarks.cs</DependentUpon>
|
||||
|
||||
@@ -1601,12 +1601,11 @@ namespace Volian.Controls.Library
|
||||
//B2024-024 create import file for parent/child procedure set
|
||||
void MultiUnitImportProcedure_Click(object sender, EventArgs e)
|
||||
{
|
||||
//RevisionInfo ri = (sender as MenuItem).Tag as RevisionInfo;
|
||||
RevisionInfo ri = RevisionInfo.Get(int.Parse((sender as MenuItem).Tag.ToString()));
|
||||
RevisionConfig rc = ri.MyConfig as RevisionConfig;
|
||||
// bug fix: B2016-183 - add the child's name (ex Unit 1) to the export file name for Parent/Child procedures.
|
||||
int applIdx = rc.Applicability_Index;
|
||||
string str = (applIdx > 0) ? _currentPri.MyDocVersion.UnitNames[applIdx - 1] + "_" : ""; // if parent/child get the defined child name to inlcude the export filename
|
||||
string str = (applIdx > 0) ? _currentPri.MyDocVersion.UnitNames[applIdx - 1] + "_" : ""; // if parent/child get the defined child name to include the export filename
|
||||
System.Xml.XmlDocument xd = new System.Xml.XmlDocument();
|
||||
xd.LoadXml(ri.LatestVersion.ApprovedXML);
|
||||
string PEIPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\VEPROMS\PEI_" + Database.VEPROMS_SqlConnection.Database;
|
||||
@@ -1615,8 +1614,13 @@ namespace Volian.Controls.Library
|
||||
// B2022-048: Crash when creating Procedure to Import from versions. Couldn't handle '/' in proc number.
|
||||
string fNametmp = xd.SelectSingleNode("procedure/content/@number").InnerText.Replace(" ", "_").Replace(@"\u8209?", "-").Replace(@"\u9586?", "_").Replace("/", "-") + ".pxml";
|
||||
// B2022-112: If applicability, need to resolve the '<' and '>' characters. Just use the UnitNames, i.e. str, from above.
|
||||
if (applIdx > 0) fNametmp = Regex.Replace(fNametmp, @"\<U-ID\>", str, RegexOptions.IgnoreCase);
|
||||
string fileName = PEIPath + "\\" + str + "Approved_Rev_" + ri.RevisionNumber.Replace(" ", "_").Replace("\\", "-").Replace("/", "-") + "_" + fNametmp;
|
||||
if (applIdx > 0)
|
||||
{
|
||||
fNametmp = Regex.Replace(fNametmp, @"\<U-ID\>", str, RegexOptions.IgnoreCase);
|
||||
fNametmp = Regex.Replace(fNametmp, @"\<U-NAME\>", str, RegexOptions.IgnoreCase);
|
||||
}
|
||||
|
||||
string fileName = PEIPath + "\\" + str + "Approved_Rev_" + ri.RevisionNumber.Replace(" ", "_").Replace("\\", "-").Replace("/", "-") + "_" + fNametmp;
|
||||
xd.Save(fileName);
|
||||
FlexibleMessageBox.Show("Approved procedure saved to import file " + fileName, "Creating Export of Approved Procedure", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user