private void FormCommItem_Load(object sender, System.EventArgs e) { IsStartingUp = true; textPatientName.Text = Patients.GetLim(CommlogCur.PatNum).GetNameFL(); textUser.Text = Userods.GetName(CommlogCur.UserNum); //might be blank. textDateTime.Text = CommlogCur.CommDateTime.ToShortDateString() + " " + CommlogCur.CommDateTime.ToShortTimeString(); if (CommlogCur.DateTimeEnd.Year > 1880) { textDateTimeEnd.Text = CommlogCur.DateTimeEnd.ToShortDateString() + " " + CommlogCur.DateTimeEnd.ToShortTimeString(); } //there will usually be a commtype set before this dialog is opened for (int i = 0; i < DefC.Short[(int)DefCat.CommLogTypes].Length; i++) { listType.Items.Add(DefC.Short[(int)DefCat.CommLogTypes][i].ItemName); if (DefC.Short[(int)DefCat.CommLogTypes][i].DefNum == CommlogCur.CommType) { listType.SelectedIndex = i; } } for (int i = 0; i < Enum.GetNames(typeof(CommItemMode)).Length; i++) { listMode.Items.Add(Lan.g("enumCommItemMode", Enum.GetNames(typeof(CommItemMode))[i])); } listMode.SelectedIndex = (int)CommlogCur.Mode_; for (int i = 0; i < Enum.GetNames(typeof(CommSentOrReceived)).Length; i++) { listSentOrReceived.Items.Add (Lan.g("enumCommSentOrReceived", Enum.GetNames(typeof(CommSentOrReceived))[i])); } try{ listSentOrReceived.SelectedIndex = (int)CommlogCur.SentOrReceived; } catch { MessageBox.Show(((int)CommlogCur.SentOrReceived).ToString()); } //checkIsStatementSent.Checked=CommlogCur.IsStatementSent; textNote.Text = CommlogCur.Note; textNote.SelectionStart = textNote.Text.Length; #if !DEBUG labelCommlogNum.Visible = false; textCommlogNum.Visible = false; #endif textCommlogNum.Text = CommlogCur.CommlogNum.ToString(); if (!PrefC.GetBool(PrefName.DistributorKey)) { labelDateTimeEnd.Visible = false; textDateTimeEnd.Visible = false; butNow.Visible = false; butNowEnd.Visible = false; } textNote.Select(); string keyData = GetSignatureKey(); signatureBoxWrapper.FillSignature(CommlogCur.SigIsTopaz, keyData, CommlogCur.Signature); signatureBoxWrapper.BringToFront(); IsStartingUp = false; if (!Security.IsAuthorized(Permissions.CommlogEdit, CommlogCur.CommDateTime)) { if (IsNew) { DialogResult = DialogResult.Cancel; return; } butDelete.Enabled = false; butOK.Enabled = false; } }
///<summary>Runs as the final step of loading the form, and also immediately after fields are moved down due to growth.</summary> private void LayoutFields() { panelMain.Controls.Clear(); RichTextBox textbox; //has to be richtextbox due to MS bug that doesn't show cursor. FontStyle style; SheetCheckBox checkbox; //first, draw images--------------------------------------------------------------------------------------- //might change this to only happen once when first loading form: if (pictDraw != null) { if (panelMain.Controls.Contains(pictDraw)) { Controls.Remove(pictDraw); } pictDraw = null; } imgDraw = null; pictDraw = new PictureBox(); if (SheetCur.IsLandscape) { imgDraw = new Bitmap(SheetCur.Height, SheetCur.Width); pictDraw.Width = SheetCur.Height; pictDraw.Height = SheetCur.Width; } else { imgDraw = new Bitmap(SheetCur.Width, SheetCur.Height); pictDraw.Width = SheetCur.Width; pictDraw.Height = SheetCur.Height; } pictDraw.Location = new Point(0, 0); pictDraw.Image = (Image)imgDraw.Clone(); pictDraw.SizeMode = PictureBoxSizeMode.StretchImage; panelMain.Controls.Add(pictDraw); panelMain.SendToBack(); Graphics pictGraphics = Graphics.FromImage(imgDraw); foreach (SheetField field in SheetCur.SheetFields) { if (field.FieldType != SheetFieldType.Image) { continue; } string filePathAndName = ODFileUtils.CombinePaths(SheetUtil.GetImagePath(), field.FieldName); Image img = null; if (field.FieldName == "Patient Info.gif") { img = Properties.Resources.Patient_Info; } else if (File.Exists(filePathAndName)) { img = Image.FromFile(filePathAndName); } else { continue; } pictGraphics.DrawImage(img, field.XPos, field.YPos, field.Width, field.Height); } pictGraphics.Dispose(); //Set mouse events for the pictDraw pictDraw.MouseDown += new MouseEventHandler(pictDraw_MouseDown); pictDraw.MouseMove += new MouseEventHandler(pictDraw_MouseMove); pictDraw.MouseUp += new MouseEventHandler(pictDraw_MouseUp); //draw drawings, rectangles, and lines----------------------------------------------------------------------- RefreshPanel(); //draw textboxes---------------------------------------------------------------------------------------------- foreach (SheetField field in SheetCur.SheetFields) { if (field.FieldType != SheetFieldType.InputField && field.FieldType != SheetFieldType.OutputText && field.FieldType != SheetFieldType.StaticText) { continue; } textbox = new RichTextBox(); textbox.BorderStyle = BorderStyle.None; textbox.TabStop = false; //Only input fields allow tab stop (set below for input text). //textbox.Multiline=true;//due to MS malfunction at 9pt which cuts off the bottom of the text. if (field.FieldType == SheetFieldType.OutputText || field.FieldType == SheetFieldType.StaticText) { //textbox.BackColor=Color.White; //textbox.BackColor=Color.FromArgb(245,245,200); } else if (field.FieldType == SheetFieldType.InputField) { textbox.BackColor = Color.FromArgb(245, 245, 200); textbox.TabStop = (field.TabOrder == 0?false:true); textbox.TabIndex = field.TabOrder; } textbox.Location = new Point(field.XPos, field.YPos); textbox.Width = field.Width; textbox.ScrollBars = RichTextBoxScrollBars.None; textbox.Text = field.FieldValue; style = FontStyle.Regular; if (field.FontIsBold) { style = FontStyle.Bold; } textbox.Font = new Font(field.FontName, field.FontSize, style); if (field.Height < textbox.Font.Height + 2) { textbox.Multiline = false; //textbox.AcceptsReturn=false; } else { textbox.Multiline = true; //textbox.AcceptsReturn=true; } textbox.Height = field.Height; //textbox.ScrollBars=RichTextBoxScrollBars.None; textbox.Tag = field; textbox.TextChanged += new EventHandler(text_TextChanged); panelMain.Controls.Add(textbox); textbox.BringToFront(); } //draw checkboxes---------------------------------------------------------------------------------------------- foreach (SheetField field in SheetCur.SheetFields) { if (field.FieldType != SheetFieldType.CheckBox) { continue; } checkbox = new SheetCheckBox(); if (field.FieldValue == "X") { checkbox.IsChecked = true; } checkbox.Location = new Point(field.XPos, field.YPos); checkbox.Width = field.Width; checkbox.Height = field.Height; checkbox.Tag = field; checkbox.Click += new EventHandler(text_TextChanged); checkbox.TabStop = (field.TabOrder == 0?false:true); checkbox.TabIndex = field.TabOrder; panelMain.Controls.Add(checkbox); checkbox.BringToFront(); } //draw signature boxes---------------------------------------------------------------------------------------------- foreach (SheetField field in SheetCur.SheetFields) { if (field.FieldType != SheetFieldType.SigBox) { continue; } OpenDental.UI.SignatureBoxWrapper sigBox = new OpenDental.UI.SignatureBoxWrapper(); sigBox.Location = new Point(field.XPos, field.YPos); sigBox.Width = field.Width; sigBox.Height = field.Height; if (field.FieldValue.Length > 0) //a signature is present { bool sigIsTopaz = false; if (field.FieldValue[0] == '1') { sigIsTopaz = true; } string signature = ""; if (field.FieldValue.Length > 1) { signature = field.FieldValue.Substring(1); } string keyData = Sheets.GetSignatureKey(SheetCur); sigBox.FillSignature(sigIsTopaz, keyData, signature); } sigBox.Tag = field; sigBox.TabStop = (field.TabOrder == 0?false:true); sigBox.TabIndex = field.TabOrder; panelMain.Controls.Add(sigBox); sigBox.BringToFront(); } }
///<summary>Runs as the final step of loading the form, and also immediately after fields are moved down due to growth.</summary> private void LayoutFields() { List<SheetField> fieldsSorted=new List<SheetField>(); fieldsSorted.AddRange(SheetCur.SheetFields);//Creates a sortable list that will not change sort order of the original list. fieldsSorted.Sort(SheetFields.SortDrawingOrderLayers); panelMain.Controls.Clear(); RichTextBox textbox;//has to be richtextbox due to MS bug that doesn't show cursor. FontStyle style; SheetCheckBox checkbox; //first, draw images--------------------------------------------------------------------------------------- //might change this to only happen once when first loading form: if(pictDraw!=null) { if(panelMain.Controls.Contains(pictDraw)) { Controls.Remove(pictDraw); } pictDraw=null; } imgDraw=null; pictDraw=new PictureBox(); if(SheetCur.IsLandscape) { //imgDraw=new Bitmap(SheetCur.Height,SheetCur.Width); pictDraw.Width=SheetCur.Height; pictDraw.Height=SheetCur.Width; } else { //imgDraw=new Bitmap(SheetCur.Width,SheetCur.Height); pictDraw.Width=SheetCur.Width; pictDraw.Height=SheetCur.Height; } if(Sheets.CalculatePageCount(SheetCur,_printMargin)==1){ pictDraw.Height=SheetCur.HeightPage;//+10 for HScrollBar } else { int pageCount=0; pictDraw.Height=SheetPrinting.bottomCurPage(SheetCur.HeightLastField,SheetCur,out pageCount); } //imgDraw.Dispose();//dispose of old image before setting it to a new image. imgDraw=new Bitmap(pictDraw.Width,pictDraw.Height); pictDraw.Location=new Point(0,0); pictDraw.Image=(Image)imgDraw.Clone(); pictDraw.SizeMode=PictureBoxSizeMode.StretchImage; panelMain.Controls.Add(pictDraw); panelMain.SendToBack(); Graphics pictGraphics=Graphics.FromImage(imgDraw); SheetPrinting.DrawImages(SheetCur,pictGraphics,true); pictGraphics.Dispose(); //Set mouse events for the pictDraw pictDraw.MouseDown+=new MouseEventHandler(pictDraw_MouseDown); pictDraw.MouseMove+=new MouseEventHandler(pictDraw_MouseMove); pictDraw.MouseUp+=new MouseEventHandler(pictDraw_MouseUp); //draw drawings, rectangles, and lines----------------------------------------------------------------------- RefreshPanel(); //draw textboxes---------------------------------------------------------------------------------------------- foreach(SheetField field in SheetCur.SheetFields) { if(field.FieldType!=SheetFieldType.InputField && field.FieldType!=SheetFieldType.OutputText && field.FieldType!=SheetFieldType.StaticText) { continue; } textbox=new RichTextBox(); textbox.BorderStyle=BorderStyle.None; textbox.TabStop=false;//Only input fields allow tab stop (set below for input text). //textbox.Multiline=true;//due to MS malfunction at 9pt which cuts off the bottom of the text. if(field.FieldType==SheetFieldType.OutputText || field.FieldType==SheetFieldType.StaticText) { //textbox.BackColor=Color.White; //textbox.BackColor=Color.FromArgb(245,245,200); } else if(field.FieldType==SheetFieldType.InputField) { textbox.BackColor=Color.FromArgb(245,245,200); textbox.TabStop=(field.TabOrder==0?false:true); textbox.TabIndex=field.TabOrder; } textbox.Location=new Point(field.XPos,field.YPos); textbox.Width=field.Width; textbox.ScrollBars=RichTextBoxScrollBars.None; if(field.ItemColor!=Color.FromArgb(0)){ textbox.ForeColor=field.ItemColor; } //textbox.Text=field.FieldValue; textbox.SelectionAlignment=field.TextAlign; textbox.SelectedText=field.FieldValue; style=FontStyle.Regular; if(field.FontIsBold) { style=FontStyle.Bold; } textbox.Font=new Font(field.FontName,field.FontSize,style); if(field.Height<textbox.Font.Height+2) { textbox.Multiline=false; //textbox.AcceptsReturn=false; } else { textbox.Multiline=true; //textbox.AcceptsReturn=true; } textbox.Height=field.Height; //textbox.ScrollBars=RichTextBoxScrollBars.None; textbox.Tag=field; textbox.TextChanged+=new EventHandler(text_TextChanged); panelMain.Controls.Add(textbox); textbox.BringToFront(); } //draw checkboxes---------------------------------------------------------------------------------------------- foreach(SheetField field in SheetCur.SheetFields) { if(field.FieldType!=SheetFieldType.CheckBox) { continue; } checkbox=new SheetCheckBox(); if(field.FieldValue=="X") { checkbox.IsChecked=true; } checkbox.Location=new Point(field.XPos,field.YPos); checkbox.Width=field.Width; checkbox.Height=field.Height; checkbox.Tag=field; checkbox.MouseUp+=new MouseEventHandler(checkbox_MouseUp); checkbox.TabStop=(field.TabOrder==0?false:true); checkbox.TabIndex=field.TabOrder; panelMain.Controls.Add(checkbox); checkbox.BringToFront(); } //draw signature boxes---------------------------------------------------------------------------------------------- foreach(SheetField field in SheetCur.SheetFields) { if(field.FieldType!=SheetFieldType.SigBox) { continue; } OpenDental.UI.SignatureBoxWrapper sigBox=new OpenDental.UI.SignatureBoxWrapper(); sigBox.Location=new Point(field.XPos,field.YPos); sigBox.Width=field.Width; sigBox.Height=field.Height; if(field.FieldValue.Length>0) {//a signature is present bool sigIsTopaz=false; if(field.FieldValue[0]=='1') { sigIsTopaz=true; } string signature=""; if(field.FieldValue.Length>1) { signature=field.FieldValue.Substring(1); } string keyData=Sheets.GetSignatureKey(SheetCur); sigBox.FillSignature(sigIsTopaz,keyData,signature); } sigBox.Tag=field; sigBox.TabStop=(field.TabOrder==0?false:true); sigBox.TabIndex=field.TabOrder; panelMain.Controls.Add(sigBox); sigBox.BringToFront(); } }
///<summary>Runs as the final step of loading the form, and also immediately after fields are moved down due to growth.</summary> private void LayoutFields() { panelMain.Controls.Clear(); RichTextBox textbox;//has to be richtextbox due to MS bug that doesn't show cursor. FontStyle style; SheetCheckBox checkbox; //first, draw images--------------------------------------------------------------------------------------- //might change this to only happen once when first loading form: if(pictDraw!=null) { if(panelMain.Controls.Contains(pictDraw)) { Controls.Remove(pictDraw); } pictDraw=null; } imgDraw=null; pictDraw=new PictureBox(); if(SheetCur.IsLandscape) { imgDraw=new Bitmap(SheetCur.Height,SheetCur.Width); pictDraw.Width=SheetCur.Height; pictDraw.Height=SheetCur.Width; } else { imgDraw=new Bitmap(SheetCur.Width,SheetCur.Height); pictDraw.Width=SheetCur.Width; pictDraw.Height=SheetCur.Height; } pictDraw.Location=new Point(0,0); pictDraw.Image=(Image)imgDraw.Clone(); pictDraw.SizeMode=PictureBoxSizeMode.StretchImage; panelMain.Controls.Add(pictDraw); panelMain.SendToBack(); Graphics pictGraphics=Graphics.FromImage(imgDraw); foreach(SheetField field in SheetCur.SheetFields) { if(field.FieldType!=SheetFieldType.Image) { continue; } string filePathAndName=ODFileUtils.CombinePaths(SheetUtil.GetImagePath(),field.FieldName); Image img=null; if(field.FieldName=="Patient Info.gif") { img=Properties.Resources.Patient_Info; } else if(File.Exists(filePathAndName)) { img=Image.FromFile(filePathAndName); } else { continue; } pictGraphics.DrawImage(img,field.XPos,field.YPos,field.Width,field.Height); } pictGraphics.Dispose(); //Set mouse events for the pictDraw pictDraw.MouseDown+=new MouseEventHandler(pictDraw_MouseDown); pictDraw.MouseMove+=new MouseEventHandler(pictDraw_MouseMove); pictDraw.MouseUp+=new MouseEventHandler(pictDraw_MouseUp); //draw drawings, rectangles, and lines----------------------------------------------------------------------- RefreshPanel(); //draw textboxes---------------------------------------------------------------------------------------------- foreach(SheetField field in SheetCur.SheetFields) { if(field.FieldType!=SheetFieldType.InputField && field.FieldType!=SheetFieldType.OutputText && field.FieldType!=SheetFieldType.StaticText) { continue; } textbox=new RichTextBox(); textbox.BorderStyle=BorderStyle.None; textbox.TabStop=false;//Only input fields allow tab stop (set below for input text). //textbox.Multiline=true;//due to MS malfunction at 9pt which cuts off the bottom of the text. if(field.FieldType==SheetFieldType.OutputText || field.FieldType==SheetFieldType.StaticText) { //textbox.BackColor=Color.White; //textbox.BackColor=Color.FromArgb(245,245,200); } else if(field.FieldType==SheetFieldType.InputField) { textbox.BackColor=Color.FromArgb(245,245,200); textbox.TabStop=(field.TabOrder==0?false:true); textbox.TabIndex=field.TabOrder; } textbox.Location=new Point(field.XPos,field.YPos); textbox.Width=field.Width; textbox.ScrollBars=RichTextBoxScrollBars.None; textbox.Text=field.FieldValue; style=FontStyle.Regular; if(field.FontIsBold) { style=FontStyle.Bold; } textbox.Font=new Font(field.FontName,field.FontSize,style); if(field.Height<textbox.Font.Height+2) { textbox.Multiline=false; //textbox.AcceptsReturn=false; } else { textbox.Multiline=true; //textbox.AcceptsReturn=true; } textbox.Height=field.Height; //textbox.ScrollBars=RichTextBoxScrollBars.None; textbox.Tag=field; textbox.TextChanged+=new EventHandler(text_TextChanged); panelMain.Controls.Add(textbox); textbox.BringToFront(); } //draw checkboxes---------------------------------------------------------------------------------------------- foreach(SheetField field in SheetCur.SheetFields) { if(field.FieldType!=SheetFieldType.CheckBox) { continue; } checkbox=new SheetCheckBox(); if(field.FieldValue=="X") { checkbox.IsChecked=true; } checkbox.Location=new Point(field.XPos,field.YPos); checkbox.Width=field.Width; checkbox.Height=field.Height; checkbox.Tag=field; checkbox.Click+=new EventHandler(text_TextChanged); checkbox.TabStop=(field.TabOrder==0?false:true); checkbox.TabIndex=field.TabOrder; panelMain.Controls.Add(checkbox); checkbox.BringToFront(); } //draw signature boxes---------------------------------------------------------------------------------------------- foreach(SheetField field in SheetCur.SheetFields) { if(field.FieldType!=SheetFieldType.SigBox) { continue; } OpenDental.UI.SignatureBoxWrapper sigBox=new OpenDental.UI.SignatureBoxWrapper(); sigBox.Location=new Point(field.XPos,field.YPos); sigBox.Width=field.Width; sigBox.Height=field.Height; if(field.FieldValue.Length>0) {//a signature is present bool sigIsTopaz=false; if(field.FieldValue[0]=='1') { sigIsTopaz=true; } string signature=""; if(field.FieldValue.Length>1) { signature=field.FieldValue.Substring(1); } string keyData=Sheets.GetSignatureKey(SheetCur); sigBox.FillSignature(sigIsTopaz,keyData,signature); } sigBox.Tag=field; sigBox.TabStop=(field.TabOrder==0?false:true); sigBox.TabIndex=field.TabOrder; panelMain.Controls.Add(sigBox); sigBox.BringToFront(); } }
public void SignatureBoxWrapper_FillSignature_GetNumberOfTabletPoints() { string suffix = "52"; Patient pat = PatientT.CreatePatient(suffix); List <int> listFailedTests = new List <int>(); OpenDental.UI.SignatureBoxWrapper sbw = new OpenDental.UI.SignatureBoxWrapper(); //1: Normal signature with \r\n sbw.FillSignature(false, "15.4 Normal\r\n15.4 Normal\r\n15.4 Normal3", "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"); if (sbw.GetNumberOfTabletPoints(false) == 0) { listFailedTests.Add(1); } //2: Normal signature, middle tier with \r\n sbw.FillSignature(false, "15.4 Normal MiddleTier\r\n15.4 Normal MiddleTier\r\n15.4 Normal MiddleTier3", "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"); if (sbw.GetNumberOfTabletPoints(false) == 0) { listFailedTests.Add(2); } //3: Topaz signature with \r\n sbw.FillSignature(true, "15.4 Topaz\r\n15.4 Topaz\r\n15.4 Topaz3", "FFFFFFFFED1D7C6A37000000040000003E6A277C10525BF095781A4505E1A9814FB05B0B7930F49EDDE09B95B6743B4EF11B47C4E7DF151AA5C031BC4487067C897FA35C3E9A5FD9DAF32CEC3F9479C6CDB793CC5202BCE8714DDADDE228986E39440B31B76E940496E9F63EFFED1C3F896DE2B7EA5129CA08C9B22066C48CF27FEEBE00E107A3901498ABE9FA9F301FB028748CE0BBE01CC2A4628E94AF9854FFA4A15D60F3C488698D5F2F14379F99D764B27013B4FFB18336AA20B132DE18A85060544F5F92F4A259803FC2CA9384DF30B784703C80868C6F1D2EADCF55345F0380CC9A5F0C757594FF128F66E6F7BC6D655FF2592935EDB3CA52C642FC9C4A64B8623F43015F3810CC51A580081C50DC9FF1ADDFEF3FBD06E0C9E0DD47F1B87E1061C760099E6EA055A1533C6134700527723C62DDFD8B267D6CECC6399CCA149BA5B234B0A5EA44DF3223941DF7AFF6D4B5551366F71103B7B48EE7D2B6122B9495654DE257478FBED6680F4DE2A0C91EFFE5E95E785E7ADF0AED06BC384B69915DC4BA281980F9684AF119FB0B242EF4CCC82E3AE733C05F08933DD71E8D54F403C6C8A1A48D54F403C6C8A1A48D54F403C6C8A1A48D54F403C6C8A1A48D54F403C6C8A1A4"); if (sbw.GetNumberOfTabletPoints(true) == 0) { listFailedTests.Add(3); } //4: Topaz signature, middle tier with \r\n sbw.FillSignature(true, "15.4 Topaz MiddleTier\r\n15.4 Topaz MiddleTier\r\n15.4 Topaz MiddleTier3", "FFFFFFFFAD1F4B693A00000000000000DEB4BBA8050C7F6E66DD8CC844BE7EEC6F3102C5E6B6F4977E482CE5F5E82ADCEEFFC822D77A6AB9529E824C363E0822ED65EBC841D98F55C7FF5CF269D8CBEF37B4E68BE56095D172699A8A58D8F71E366D6F65DA865F186454B4C9219D159147294001EBE30DF244B970B7B015C0FAEBC74BDDA61551412F6761D295D5C754A58B2B94781E067E7FEC2FEE0AAD6F0463D2C48F1EF21AD068CFE314CE2738949A01A19D29564D16A8C3D1CE462FEA754AD769CAFDEC057F9CF7AEB8BC68CDBDE965B83D75226294C44B14F4391BC07C32D908F409247E80C9C4C9DFE27C123459651FB5240C922841254DD77107DB1E6A5A525AFA10947BB1488D058C88E127DD6790A3F30A5013D9643AFDB03762875EA5D7D336EE6076B4AB7BD089872BD687300CF16AA32DC9606A91CD726E0244D91B760EA76C904B27180D271CCE952B80C4C65E39EBD2E41B84B7A7309AB3D953E673E788E063F624568F8C936B440254D832245B2DF3730066B0D32CBBD779AF1299037B3A14C72376D13B3B65E87D078FFB0FB98E2F53E6E02939A697AFAF585853EDB281D283765A15B1CE10060C4DC8A32D40884F8C4F5DEA3FA31345073F7C73434A9AE2913F7C73434A9AE2913F7C73434A9AE2913F7C73434A9AE291"); if (sbw.GetNumberOfTabletPoints(true) == 0) { listFailedTests.Add(4); } //5: Normal signature with \n sbw.FillSignature(false, "15.4 Normal\n15.4 Normal\n15.4 Normal3", "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"); if (sbw.GetNumberOfTabletPoints(false) == 0) { listFailedTests.Add(5); } //6: Normal signature, middle tier with \n sbw.FillSignature(false, "15.4 Normal MiddleTier\n15.4 Normal MiddleTier\n15.4 Normal MiddleTier3", "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"); if (sbw.GetNumberOfTabletPoints(false) == 0) { listFailedTests.Add(6); } //7: Topaz signature with \n sbw.FillSignature(true, "15.4 Topaz\n15.4 Topaz\n15.4 Topaz3", "FFFFFFFFED1D7C6A37000000040000003E6A277C10525BF095781A4505E1A9814FB05B0B7930F49EDDE09B95B6743B4EF11B47C4E7DF151AA5C031BC4487067C897FA35C3E9A5FD9DAF32CEC3F9479C6CDB793CC5202BCE8714DDADDE228986E39440B31B76E940496E9F63EFFED1C3F896DE2B7EA5129CA08C9B22066C48CF27FEEBE00E107A3901498ABE9FA9F301FB028748CE0BBE01CC2A4628E94AF9854FFA4A15D60F3C488698D5F2F14379F99D764B27013B4FFB18336AA20B132DE18A85060544F5F92F4A259803FC2CA9384DF30B784703C80868C6F1D2EADCF55345F0380CC9A5F0C757594FF128F66E6F7BC6D655FF2592935EDB3CA52C642FC9C4A64B8623F43015F3810CC51A580081C50DC9FF1ADDFEF3FBD06E0C9E0DD47F1B87E1061C760099E6EA055A1533C6134700527723C62DDFD8B267D6CECC6399CCA149BA5B234B0A5EA44DF3223941DF7AFF6D4B5551366F71103B7B48EE7D2B6122B9495654DE257478FBED6680F4DE2A0C91EFFE5E95E785E7ADF0AED06BC384B69915DC4BA281980F9684AF119FB0B242EF4CCC82E3AE733C05F08933DD71E8D54F403C6C8A1A48D54F403C6C8A1A48D54F403C6C8A1A48D54F403C6C8A1A48D54F403C6C8A1A4"); if (sbw.GetNumberOfTabletPoints(true) == 0) { listFailedTests.Add(7); } //8: Topaz signature, middle tier with \n sbw.FillSignature(true, "15.4 Topaz MiddleTier\n15.4 Topaz MiddleTier\n15.4 Topaz MiddleTier3", "FFFFFFFFAD1F4B693A00000000000000DEB4BBA8050C7F6E66DD8CC844BE7EEC6F3102C5E6B6F4977E482CE5F5E82ADCEEFFC822D77A6AB9529E824C363E0822ED65EBC841D98F55C7FF5CF269D8CBEF37B4E68BE56095D172699A8A58D8F71E366D6F65DA865F186454B4C9219D159147294001EBE30DF244B970B7B015C0FAEBC74BDDA61551412F6761D295D5C754A58B2B94781E067E7FEC2FEE0AAD6F0463D2C48F1EF21AD068CFE314CE2738949A01A19D29564D16A8C3D1CE462FEA754AD769CAFDEC057F9CF7AEB8BC68CDBDE965B83D75226294C44B14F4391BC07C32D908F409247E80C9C4C9DFE27C123459651FB5240C922841254DD77107DB1E6A5A525AFA10947BB1488D058C88E127DD6790A3F30A5013D9643AFDB03762875EA5D7D336EE6076B4AB7BD089872BD687300CF16AA32DC9606A91CD726E0244D91B760EA76C904B27180D271CCE952B80C4C65E39EBD2E41B84B7A7309AB3D953E673E788E063F624568F8C936B440254D832245B2DF3730066B0D32CBBD779AF1299037B3A14C72376D13B3B65E87D078FFB0FB98E2F53E6E02939A697AFAF585853EDB281D283765A15B1CE10060C4DC8A32D40884F8C4F5DEA3FA31345073F7C73434A9AE2913F7C73434A9AE2913F7C73434A9AE2913F7C73434A9AE291"); if (sbw.GetNumberOfTabletPoints(true) == 0) { listFailedTests.Add(8); } //9: Invalid Signature (wrong key) sbw.FillSignature(false, "15.4 Normal\r\n15.4 Normal\r\n15.4 Normal4", "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"); if (sbw.GetNumberOfTabletPoints(false) != 0) //This test is meant to be invalid intentionally. { listFailedTests.Add(9); } Assert.AreEqual(0, listFailedTests.Count); }