public string Html(HtmlConNoteControl htmlConNoteCtrl, StoryStageLogic theStoryStage, TeamMemberData LoggedOnMember, bool bViewHidden, bool bVerseVisible, int nVerseIndex) { string strHtml = null; for (int i = 0; i < Count; i++) { ConsultNoteDataConverter aCNDC = this[i]; if (aCNDC.Visible || bViewHidden) { strHtml += aCNDC.Html(htmlConNoteCtrl, theStoryStage, LoggedOnMember, nVerseIndex, i); } } // color changes if hidden string strColor; if (bVerseVisible) { strColor = "#FFFFFF"; } else { strColor = "#F0E68C"; } return(String.Format(Properties.Resources.HTML_TableRowColor, strColor, String.Format(Properties.Resources.HTML_TableCellWithSpan, 2, String.Format(Properties.Resources.HTML_TableNoBorder, strHtml)))); }
public MultiLineControl(VerseControl ctrlVerse, StoryStageLogic storyStageLogic, MultipleLineDataConverter aMLDC, Font font, List <string> astrTestors) : base(storyStageLogic) { InitializeComponent(); tableLayoutPanel.SuspendLayout(); SuspendLayout(); System.Diagnostics.Debug.Assert(tableLayoutPanel.RowCount == 1, "otherwise, fix this assumption: RetellingsControl.cs.20"); tableLayoutPanel.RemoveRow(1); // remove the one default one we start with // finally populate the buttons on that tool strip System.Diagnostics.Debug.Assert(aMLDC.Count > 0); int nNumRows = 0; for (int i = 0; i < aMLDC.Count; i++) { StringTransfer strRowData = aMLDC[i]; string strUnsGui = aMLDC.MemberIDs[i]; System.Diagnostics.Debug.Assert(astrTestors.Contains(strUnsGui)); int nTest = astrTestors.IndexOf(strUnsGui) + 1; InitRow(ctrlVerse, aMLDC.LabelTextFormat, font, strRowData, nTest, ref nNumRows); } tableLayoutPanel.ResumeLayout(false); ResumeLayout(false); }
public AnchorControl(VerseControl ctrlVerse, StoryStageLogic storyStageLogic, AnchorsData anAnchorsData, Font font) : base(storyStageLogic) { _ctrlVerse = ctrlVerse; _myAnchorsData = anAnchorsData; _font = font; InitializeComponent(); tableLayoutPanel.SuspendLayout(); SuspendLayout(); tableLayoutPanel.Controls.Add(labelAnchor, 0, 0); tableLayoutPanel.Controls.Add(toolStripAnchors, 1, 0); // add the label and tool strip as a new row to the table layout panel // finally populate the buttons on that tool strip foreach (AnchorData anAnchorData in anAnchorsData) { ToolStripButton theAnchorButton = InitAnchorButton(toolStripAnchors, anAnchorData); if (anAnchorData.ExegeticalHelpNotes.Count > 0) { InitExegeticalHelpsRow(ctrlVerse, theAnchorButton, anAnchorData.ExegeticalHelpNotes, ref m_nNumRows); } } tableLayoutPanel.ResumeLayout(false); ResumeLayout(false); }
public StorySettings(StoryProject.storyRow theStoryRow, StoryProject projFile, TeamMemberData loggedOnMember) { StoryName = theStoryRow.name; StoryGuid = theStoryRow.guid; ProjStage = new StoryStageLogic(theStoryRow.stage, loggedOnMember); CraftingInfo = new CraftingInfoData(theStoryRow, projFile, loggedOnMember); }
public void InsureExtraBox(StoryStageLogic theStoryStage, TeamMemberData.UserTypes eLoggedOnMember, TeamMemberData.UserTypes eMentorType, TeamMemberData.UserTypes eMenteeType, string strValue) { // in case the user re-logs in, we might have extra boxes here. So remove any null ones before // "insuring" the one(s) we need if (Count > 1) { while (!this[Count - 1].HasData) { RemoveAt(Count - 1); } } // don't bother, though, if the user has ended the conversation if (IsFinished || !theStoryStage.IsEditAllowed(eLoggedOnMember)) { return; } if (((eLoggedOnMember & eMentorType) == eLoggedOnMember) && ((Count == 0) || (this[Count - 1].Direction == MenteeDirection))) { Add(new CommInstance(strValue, MentorDirection, null, DateTime.Now)); } else if (((eLoggedOnMember & eMenteeType) == eLoggedOnMember) && ((Count == 0) || (this[Count - 1].Direction == MentorDirection))) { Add(new CommInstance(strValue, MenteeDirection, null, DateTime.Now)); } }
public string CoachNotesHtml(HtmlConNoteControl htmlConNoteCtrl, StoryStageLogic theStoryStage, TeamMemberData LoggedOnMember, bool bViewHidden) { string strHtml = null; strHtml += GetHeaderRow(CstrZerothLineName, 0, FirstVerse.IsVisible, FirstVerse.CoachNotes, LoggedOnMember); strHtml += FirstVerse.CoachNotes.Html(htmlConNoteCtrl, theStoryStage, LoggedOnMember, bViewHidden, FirstVerse.IsVisible, 0); for (int i = 1; i <= Count; i++) { VerseData aVerseData = this[i - 1]; if (aVerseData.IsVisible || bViewHidden) { strHtml += GetHeaderRow("Ln: " + i, i, aVerseData.IsVisible, aVerseData.CoachNotes, LoggedOnMember); strHtml += aVerseData.CoachNotes.Html(htmlConNoteCtrl, theStoryStage, LoggedOnMember, bViewHidden, aVerseData.IsVisible, i); } } return(String.Format(Properties.Resources.HTML_Table, strHtml)); }
public CoachNoteData(int nRound, StoryStageLogic theStoryStage, TeamMemberData.UserTypes eLoggedOnMember, TeamMemberData.UserTypes eMentorType, TeamMemberData.UserTypes eMenteeType, string strValue) : base(nRound) { InsureExtraBox(theStoryStage, eLoggedOnMember, eMentorType, eMenteeType, strValue); }
public VerseControl(StoryStageLogic storyStageLogic, int nVerseNumber, StoryEditor theSE, LineFlowLayoutPanel parentFlowLayoutPanel) : base(storyStageLogic) { VerseNumber = nVerseNumber; TheSE = theSE; ParentFlowLayoutPanel = parentFlowLayoutPanel; }
public string StoryBtHtml(ProjectSettings projectSettings, TeamMembersData membersData, StoryStageLogic stageLogic, TeamMemberData loggedOnMember, int nVerseIndex, ViewItemToInsureOn viewItemToInsureOn, int nNumCols) { string strRow = null; if (IsViewItemOn(viewItemToInsureOn, ViewItemToInsureOn.eVernacularLangField)) { strRow += String.Format(Properties.Resources.HTML_TableCellWidthAlignTop, 100 / nNumCols, String.Format(Properties.Resources.HTML_Textarea, TextareaId(nVerseIndex, StoryLineControl.CstrFieldNameVernacular), StoryData.CstrLangVernacularStyleClassName, VernacularText)); } if (IsViewItemOn(viewItemToInsureOn, ViewItemToInsureOn.eNationalLangField)) { strRow += String.Format(Properties.Resources.HTML_TableCellWidthAlignTop, 100 / nNumCols, String.Format(Properties.Resources.HTML_Textarea, TextareaId(nVerseIndex, StoryLineControl.CstrFieldNameNationalBt), StoryData.CstrLangNationalBtStyleClassName, NationalBTText)); } if (IsViewItemOn(viewItemToInsureOn, ViewItemToInsureOn.eEnglishBTField)) { strRow += String.Format(Properties.Resources.HTML_TableCellWidthAlignTop, 100 / nNumCols, String.Format(Properties.Resources.HTML_Textarea, TextareaId(nVerseIndex, StoryLineControl.CstrFieldNameInternationalBt), StoryData.CstrLangInternationalBtStyleClassName, InternationalBTText)); } string strStoryLineRow = String.Format(Properties.Resources.HTML_TableRow, strRow); if (IsViewItemOn(viewItemToInsureOn, ViewItemToInsureOn.eAnchorFields)) { strStoryLineRow += Anchors.Html(nVerseIndex, nNumCols); } if (IsViewItemOn(viewItemToInsureOn, ViewItemToInsureOn.eRetellingFields) && (Retellings.Count > 0)) { strStoryLineRow += Retellings.Html(nVerseIndex, nNumCols); } if (IsViewItemOn(viewItemToInsureOn, ViewItemToInsureOn.eStoryTestingQuestionFields) && (TestQuestions.Count > 0)) { strStoryLineRow += TestQuestions.Html(projectSettings, viewItemToInsureOn, stageLogic, loggedOnMember, nVerseIndex, nNumCols, membersData.HasOutsideEnglishBTer); } return(strStoryLineRow); }
public bool IsEditable(StoryStageLogic theStoryStage, int i, TeamMemberData LoggedOnMember, CommInstance aCI) { return((i == (Count - 1)) && !IsFinished && theStoryStage.IsEditAllowed(LoggedOnMember.MemberType) && ((IsFromMentor(aCI) && !IsWrongEditor(LoggedOnMember.MemberType, MentorRequiredEditor)) || (!IsFromMentor(aCI) && !IsWrongEditor(LoggedOnMember.MemberType, MenteeRequiredEditor)))); }
public StoryData(NewDataSet.storyRow theStoryRow, NewDataSet projFile, bool bHasIndependentConsultant) { Name = theStoryRow.name; guid = theStoryRow.guid; StageTimeStamp = (theStoryRow.IsstageDateTimeStampNull()) ? DateTime.Now : theStoryRow.stageDateTimeStamp; ProjStage = new StoryStageLogic(theStoryRow.stage, bHasIndependentConsultant); CraftingInfo = new CraftingInfoData(theStoryRow); Verses = new VersesData(theStoryRow, projFile); }
public override ConsultNoteDataConverter Add(int nRound, StoryStageLogic theStoryStage, TeamMemberData.UserTypes eLoggedOnMember, string strValue) { // always add closest to the verse label ConsultNoteDataConverter theNewCN = new CoachNoteData(nRound, theStoryStage, eLoggedOnMember, MentorType, MenteeType, strValue); Add(theNewCN); return(theNewCN); }
public StoryData(StoryData rhs) { Name = rhs.Name; // the guid shouldn't be replicated guid = Guid.NewGuid().ToString(); // rhs.guid; StageTimeStamp = rhs.StageTimeStamp; ProjStage = new StoryStageLogic(rhs.ProjStage); CraftingInfo = new CraftingInfoData(rhs.CraftingInfo); Verses = new VersesData(rhs.Verses); }
public StoryData(string strStoryName, string strCrafterMemberGuid, string strLoggedOnMemberGuid, bool bIsBiblicalStory, ProjectSettings projSettings) { Name = strStoryName; guid = Guid.NewGuid().ToString(); StageTimeStamp = DateTime.Now; ProjStage = new StoryStageLogic(projSettings); CraftingInfo = new CraftingInfoData(strCrafterMemberGuid, strLoggedOnMemberGuid, bIsBiblicalStory); Verses = new VersesData(); Verses.CreateFirstVerse(); }
public CtrlTextBox(string strName, VerseControl ctrlVerseParent, Font font, ResizableControl ctrlParent, StringTransfer stData, string strLabel) { InitComponent(); Name = strName; Font = font; _strLabel = strLabel; stData.SetAssociation(this); TextChanged += new EventHandler(ctrlParent.textBox_TextChanged); System.Diagnostics.Debug.Assert(ctrlParent.StageLogic != null); _stageLogic = ctrlParent.StageLogic; _ctrlVerseParent = ctrlVerseParent; }
public string CoachNotesHtml(HtmlConNoteControl htmlConNoteCtrl, StoryStageLogic theStoryStage, ProjectSettings projSettings, TeamMemberData LoggedOnMember, bool bViewHidden) { string strHtml = Verses.CoachNotesHtml(htmlConNoteCtrl, theStoryStage, LoggedOnMember, bViewHidden); return(String.Format(Properties.Resources.HTML_Header, StylePrefix(projSettings), Properties.Resources.HTML_DOM_Prefix, strHtml)); }
public override ConsultNoteDataConverter Add(int nRound, StoryStageLogic theStoryStage, TeamMemberData.UserTypes eLoggedOnMember, string strValue) { /* * TeamMemberData.UserTypes eMentorType = MentorType; * if (eLoggedOnMember == TeamMemberData.UserTypes.eFirstPassMentor) * eMentorType = TeamMemberData.UserTypes.eFirstPassMentor; * else if (eLoggedOnMember == TeamMemberData.UserTypes.eIndependentConsultant) * eMentorType = TeamMemberData.UserTypes.eIndependentConsultant; */ ConsultNoteDataConverter theNewCN = new ConsultantNoteData(nRound, theStoryStage, eLoggedOnMember, MentorType, MenteeType, strValue); Add(theNewCN); return(theNewCN); }
public ConsultNoteControl(VerseControl ctrlVerse, StoryStageLogic storyStageLogic, ConsultNotesDataConverter theCollection, ConsultNoteDataConverter aCNDC, TeamMemberData.UserTypes eLoggedOnMemberType) : base(storyStageLogic) { _myCNDC = aCNDC; _myCollection = theCollection; m_nRoundNum = aCNDC.RoundNum; InitializeComponent(); tableLayoutPanel.SuspendLayout(); SuspendLayout(); InsertColumn(2); labelRound.Text = CstrRoundLabel + m_nRoundNum.ToString(); tableLayoutPanel.SetColumnSpan(labelRound, 2); tableLayoutPanel.Controls.Add(labelRound, 0, 0); tableLayoutPanel.Controls.Add(buttonDragDropHandle, 1, 0); System.Diagnostics.Debug.Assert(tableLayoutPanel.RowCount == 1, "otherwise, fix this assumption: ConsultNoteControl.cs.28"); // finally populate the buttons on that tool strip theCollection.InsureExtraBox(aCNDC, eLoggedOnMemberType); int nNumRows = 1; foreach (CommInstance aCI in aCNDC) { if ((aCI.Direction == ConsultNoteDataConverter.CommunicationDirections.eConsultantToProjFac) || (aCI.Direction == ConsultNoteDataConverter.CommunicationDirections.eCoachToConsultant)) { InitRow(ctrlVerse, aCNDC.MentorLabel, aCI, aCNDC.CommentColor, aCNDC.ThrowIfWrongEditor, aCNDC.MentorRequiredEditor, ref nNumRows); } else { InitRow(ctrlVerse, aCNDC.MenteeLabel, aCI, aCNDC.ResponseColor, aCNDC.ThrowIfWrongEditor, aCNDC.MenteeRequiredEditor, ref nNumRows); } } tableLayoutPanel.ResumeLayout(false); ResumeLayout(false); }
public string StoryBtHtml(ProjectSettings projectSettings, bool bViewHidden, StoryStageLogic stageLogic, TeamMembersData membersData, TeamMemberData loggedOnMember, VerseData.ViewItemToInsureOn viewItemToInsureOn) { int nColSpan = CalculateColumns(viewItemToInsureOn); // add a row indicating which languages are in what columns string strHtml = null; if (VerseData.IsViewItemOn(viewItemToInsureOn, VerseData.ViewItemToInsureOn.eVernacularLangField)) { strHtml += String.Format(Properties.Resources.HTML_TableCell, projectSettings.Vernacular.LangName); } if (VerseData.IsViewItemOn(viewItemToInsureOn, VerseData.ViewItemToInsureOn.eNationalLangField)) { strHtml += String.Format(Properties.Resources.HTML_TableCell, projectSettings.NationalBT.LangName); } if (VerseData.IsViewItemOn(viewItemToInsureOn, VerseData.ViewItemToInsureOn.eEnglishBTField)) { strHtml += String.Format(Properties.Resources.HTML_TableCell, projectSettings.InternationalBT.LangName); } strHtml = String.Format(Properties.Resources.HTML_TableRow, strHtml); ; for (int i = 1; i <= Count; i++) { VerseData aVerseData = this[i - 1]; if (aVerseData.IsVisible || bViewHidden) { strHtml += GetHeaderRow("Ln: " + i, i, aVerseData.IsVisible, nColSpan); strHtml += aVerseData.StoryBtHtml(projectSettings, membersData, stageLogic, loggedOnMember, i, viewItemToInsureOn, nColSpan); } } return(String.Format(Properties.Resources.HTML_Table, strHtml)); }
/* was used by the ConNotes, which are now done differently * public CtrlTextBox(string strName, VerseControl ctrlVerseParent, ResizableControl ctrlParent, StringTransfer stData, * ThrowIfNotCorrectEditor delegateRequiredEditorCheck, TeamMemberData.UserTypes eRequiredEditor) * { * InitComponent(); * Font = new Font("Arial Unicode MS", 12); * Name = strName; * stData.SetAssociation(this); * TextChanged += new EventHandler(ctrlParent.textBox_TextChanged); * System.Diagnostics.Debug.Assert(ctrlParent.StageLogic != null); * _stageLogic = ctrlParent.StageLogic; * _ctrlVerseParent = ctrlVerseParent; * _delegateRequiredEditorCheck = delegateRequiredEditorCheck; // call to check if the proper member is logged in! * _eRequiredEditor = eRequiredEditor; * } */ public CtrlTextBox(string strName, VerseControl ctrlVerseParent, ResizableControl ctrlParent, StringTransfer stData, ProjectSettings.LanguageInfo li, string strLabel) { InitComponent(); Name = strName; _strLabel = strLabel; Font = li.FontToUse; ForeColor = li.FontColor; if (li.DoRtl) { RightToLeft = RightToLeft.Yes; } stData.SetAssociation(this); TextChanged += ctrlParent.textBox_TextChanged; System.Diagnostics.Debug.Assert(ctrlParent.StageLogic != null); _stageLogic = ctrlParent.StageLogic; _ctrlVerseParent = ctrlVerseParent; _strKeyboardName = li.Keyboard; }
public ConsultNotesControl(StoryEditor theSE, LineFlowLayoutPanel parentFlowLayoutPanel, StoryStageLogic storyStageLogic, ConsultNotesDataConverter aCNsDC, int nVerseNumber, TeamMemberData.UserTypes eLoggedOnMemberType) : base(storyStageLogic, nVerseNumber, theSE, parentFlowLayoutPanel) { _theCNsDC = aCNsDC; InitializeComponent(); tableLayoutPanel.SuspendLayout(); SuspendLayout(); labelReference.Text = (VerseNumber == 0) ? CstrZerothVerseName : CstrVerseName + VerseNumber; tableLayoutPanel.Controls.Add(labelReference, 0, 0); tableLayoutPanel.Controls.Add(buttonDragDropHandle, 1, 0); if (aCNsDC.Count > 0) { int nRowIndex = 1; foreach (ConsultNoteDataConverter aCNDC in aCNsDC) { if (aCNDC.Visible || theSE.hiddenVersesToolStripMenuItem.Checked) { ConsultNoteControl aCNCtrl = new ConsultNoteControl(this, storyStageLogic, aCNsDC, aCNDC, eLoggedOnMemberType); aCNCtrl.Name = CstrFieldNameConsultantNote + nRowIndex; aCNCtrl.ParentControl = this; InsertRow(nRowIndex); tableLayoutPanel.SetColumnSpan(aCNCtrl, 2); tableLayoutPanel.Controls.Add(aCNCtrl, 0, nRowIndex); nRowIndex++; } } } tableLayoutPanel.ResumeLayout(false); ResumeLayout(false); }
public StoryStageLogic(StoryStageLogic rhs) { ProjectStage = rhs.ProjectStage; System.Diagnostics.Debug.Assert(stateTransitions != null); }
public string Html(HtmlConNoteControl htmlConNoteCtrl, StoryStageLogic theStoryStage, TeamMemberData LoggedOnMember, int nVerseIndex, int nConversationIndex) { System.Diagnostics.Debug.Assert(Count > 0); if (Count == 0) { return(null); } // r1: "Round: n"; "button" // r2-n: "Label:"; "value in textbox" string strRow = String.Format(Properties.Resources.HTML_TableCellWithSpanAndWidth, 100, 2, String.Format("{0}{1}", CstrRoundLabel, RoundNum)); // only the initiator of a conversation gets the buttons to delete, hide or // end conversation. CommInstance aCInitiator = this[0]; if (CanDoConversationButtons(LoggedOnMember.MemberType, aCInitiator.Initiator)) { strRow += String.Format(Properties.Resources.HTML_TableCell, String.Format(Properties.Resources.HTML_Button, ButtonId(nVerseIndex, nConversationIndex, CnBtnIndexDelete), "return window.external.OnClickDelete(this.id);", "Delete")); strRow += String.Format(Properties.Resources.HTML_TableCell, String.Format(Properties.Resources.HTML_Button, ButtonId(nVerseIndex, nConversationIndex, CnBtnIndexHide), "return window.external.OnClickHide(this.id);", (Visible) ? CstrButtonLabelHide : CstrButtonLabelUnhide)); strRow += String.Format(Properties.Resources.HTML_TableCell, String.Format(Properties.Resources.HTML_Button, ButtonId(nVerseIndex, nConversationIndex, CnBtnIndexEndConversation), "return window.external.OnClickEndConversation(this.id);", (IsFinished) ? CstrButtonLabelConversationReopen : CstrButtonLabelConversationEnd)); } string strHtml = String.Format(Properties.Resources.HTML_TableRowId, ButtonRowId(nVerseIndex, nConversationIndex), strRow); string strHtmlTable = null; for (int i = 0; i < Count; i++) { CommInstance aCI = this[i]; strRow = null; Color clrRow; if (IsFromMentor(aCI)) { strRow += String.Format(Properties.Resources.HTML_TableCell, MentorLabel); clrRow = CommentColor; } else { strRow += String.Format(Properties.Resources.HTML_TableCell, MenteeLabel); clrRow = ResponseColor; } string strColor = VerseData.HtmlColor(clrRow); // only the last one is editable and then only if the right person is // logged in string strHtmlElementId; if (IsEditable(theStoryStage, i, LoggedOnMember, aCI)) { strHtmlElementId = TextareaId(nVerseIndex, nConversationIndex); strRow += String.Format(Properties.Resources.HTML_TableCellForTextArea, "#FF0000", String.Format(Properties.Resources.HTML_TextareaWithRefDrop, strHtmlElementId, StoryData.CstrLangInternationalBtStyleClassName, aCI)); strHtmlTable += String.Format(Properties.Resources.HTML_TableRowIdColor, TextareaRowId(nVerseIndex, nConversationIndex), strColor, strRow); } else { strHtmlElementId = TextParagraphId(nVerseIndex, nConversationIndex, i); string strHyperlinkedText = aCI.ToString().Replace("\r\n", "<br />"); // regexParagraph.Replace(aCI.ToString(), ParagraphFound); strHyperlinkedText = regexBibRef.Replace(strHyperlinkedText, BibleReferenceFound); strHyperlinkedText = regexLineRef.Replace(strHyperlinkedText, LineReferenceFound); strHyperlinkedText = regexItalics.Replace(strHyperlinkedText, EmphasizedTextFound); strHyperlinkedText = regexHttpRef.Replace(strHyperlinkedText, HttpReferenceFound); strRow += String.Format(Properties.Resources.HTML_TableCellWidth, 100, String.Format(Properties.Resources.HTML_ParagraphText, strHtmlElementId, StoryData.CstrLangInternationalBtStyleClassName, strHyperlinkedText)); strHtmlTable += String.Format(Properties.Resources.HTML_TableRowIdColor, TextareaReadonlyRowId(nVerseIndex, nConversationIndex, i), strColor, strRow); } // keep track of the element id so we can use it during 'Search/Replace' operations aCI.HtmlElementId = strHtmlElementId; aCI.HtmlConNoteCtrl = htmlConNoteCtrl; } string strEmbeddedTable = String.Format(Properties.Resources.HTML_Table, strHtmlTable); strHtml += String.Format(Properties.Resources.HTML_TableRowIdColor, ConversationTableRowId(nVerseIndex, nConversationIndex), "#CCFFAA", String.Format(Properties.Resources.HTML_TableCellWithSpan, 5, strEmbeddedTable)); return(strHtml); }
public ResizableControl(StoryStageLogic storyStageLogic) { StageLogic = storyStageLogic; InitializeComponent(); }
public void InsureExtraBox(ConsultNoteDataConverter aCNDC, StoryStageLogic theStoryStage, TeamMemberData.UserTypes eLoggedOnMemberType) { aCNDC.InsureExtraBox(theStoryStage, eLoggedOnMemberType, MentorType, MenteeType, null); }
public abstract ConsultNoteDataConverter Add(int nRound, StoryStageLogic theStoryStage, TeamMemberData.UserTypes eLoggedOnMember, string strValue);
public string Html(ProjectSettings projectSettings, VerseData.ViewItemToInsureOn viewItemToInsureOn, StoryStageLogic stageLogic, TeamMemberData loggedOnMember, int nVerseIndex, int nNumCols, bool bHasOutsideEnglishBTer) { int nNumTestQuestionCols = 0; bool bShowVernacular = (VerseData.IsViewItemOn(viewItemToInsureOn, VerseData.ViewItemToInsureOn.eVernacularLangField)); bool bShowNationalBT = (projectSettings.NationalBT.HasData && (bHasOutsideEnglishBTer || (VerseData.IsViewItemOn(viewItemToInsureOn, VerseData.ViewItemToInsureOn.eNationalLangField) && !projectSettings.Vernacular.HasData))); bool bShowEnglishBT = (VerseData.IsViewItemOn(viewItemToInsureOn, VerseData.ViewItemToInsureOn.eEnglishBTField) && (!bHasOutsideEnglishBTer || (stageLogic.MemberTypeWithEditToken != TeamMemberData.UserTypes.eProjectFacilitator) || (loggedOnMember.MemberType != TeamMemberData.UserTypes.eProjectFacilitator))); if (bShowVernacular) { nNumTestQuestionCols++; } if (bShowNationalBT) { nNumTestQuestionCols++; } if (bShowEnglishBT) { nNumTestQuestionCols++; } string strRow = null; for (int i = 0; i < Count; i++) { TestQuestionData testQuestionData = this[i]; strRow += testQuestionData.Html(nVerseIndex, i, nNumTestQuestionCols, bShowVernacular, bShowNationalBT, bShowEnglishBT); } /* * // make a cell out of the testing question boxes * string strHtmlCell = String.Format(Properties.Resources.HTML_TableCellWidth, * 100, * strRow); * * // add combine with the 'tst:' header cell into a Table Row * string strHtml = String.Format(Properties.Resources.HTML_TableRow, * strHtmlCell); * // add exegetical comments as their own rows * for (int i = 0; i < Count; i++) * { * AnchorData anchorData = this[i]; * if (anchorData.ExegeticalHelpNotes.Count > 0) * strHtml += anchorData.ExegeticalHelpNotes.Html(nVerseIndex, i); * } */ // make a sub-table out of all this strRow = String.Format(Properties.Resources.HTML_TableRow, String.Format(Properties.Resources.HTML_TableCellWithSpan, nNumCols, String.Format(Properties.Resources.HTML_TableNoBorder, strRow))); return(strRow); }