/// <summary> /// Called by Paratext when the menu item created for this plugin was clicked. /// </summary> public void Run(IHost ptHost, string activeProjectName) { Form formToShow; lock (this) { IScrExtractor extractor = ptHost.GetScriptureExtractor(activeProjectName, ExtractorType.USFM); string vrsName = ptHost.GetProjectVersificationName(activeProjectName); int currRef = ptHost.GetCurrentRef(vrsName); int book = currRef / 1000000; int chapter = (currRef / 1000) % 1000; int bookAndChapter = (currRef / 1000) * 1000; int startOfChapter = bookAndChapter + 1; int endOfChapter = bookAndChapter + ptHost.GetLastVerse(book, chapter, vrsName); string text = extractor.Extract(startOfChapter, endOfChapter); StringBuilder bldr = new StringBuilder(); bool skipping = false; for (int i = 0; i < text.Length; i++) { char ch = text[i]; if (ch == ' ') { skipping = false; } else { skipping |= (ch == '\\'); } if (!skipping) { bldr.Append(ch); } } formToShow = form = new WordCloudForm(bldr.ToString()); } Application.Run(formToShow); Environment.Exit(0); }
/// ------------------------------------------------------------------------------------ /// <summary> /// Initializes a new instance of this class. /// </summary> /// ------------------------------------------------------------------------------------ internal GenerateScriptDlg(string projectName, IScrExtractor scrExtractor, string defaultFolder, IEnumerable <int> canonicalBookIds, IEnumerable <SectionInfo> sections, IEnumerable <Tuple <string, string> > availableAdditionalLWCs) { m_scrExtractor = scrExtractor; InitializeComponent(); m_chkIncludeLWCQuestions.Tag = btnChooseEnglishQuestionColor; m_chkIncludeLWCAnswers.Tag = btnChooseEnglishAnswerColor; m_chkIncludeLWCComments.Tag = btnChooserCommentColor; m_fmtChkEnglishQuestions = m_chkIncludeLWCQuestions.Text; m_fmtChkEnglishAnswers = m_chkIncludeLWCAnswers.Text; m_fmtChkIncludeComments = m_chkIncludeLWCComments.Text; btnChooseQuestionGroupHeadingsColor.Tag = m_lblQuestionGroupHeadingsColor; btnChooseEnglishQuestionColor.Tag = m_lblEnglishQuestionColor; btnChooseEnglishAnswerColor.Tag = m_lblEnglishAnswerTextColor; btnChooserCommentColor.Tag = m_lblCommentTextColor; m_sTitleTemplate = m_txtTitle.Text; m_sFilenameTemplate = string.Format(m_txtFilename.Text, projectName, "{0}"); if (scrExtractor == null) { m_lbFilename.Text = Properties.Resources.kstidTemplateFileNameLabel; m_sFilenameTemplate = Path.ChangeExtension(m_sFilenameTemplate, "lcf"); } LoadBooks(canonicalBookIds); m_sections = sections.ToList(); LoadSectionCombos(); LoadLWCCombo(availableAdditionalLWCs); switch ((RangeOption)Properties.Settings.Default.GenerateTemplateRange) { case RangeOption.WholeBook: m_rdoWholeBook.Checked = true; TrySelectItem(m_cboBooks, Properties.Settings.Default.GenerateTemplateBook); break; case RangeOption.SingleSection: m_rdoSingleSection.Checked = true; TrySelectItem(m_cboSection, Properties.Settings.Default.GenerateTemplateSection); break; case RangeOption.RangeOfSections: m_rdoSectionRange.Checked = true; TrySelectItem(m_cboStartSection, Properties.Settings.Default.GenerateTemplateSection); TrySelectItem(m_cboEndSection, Properties.Settings.Default.GenerateTemplateEndSection); break; } m_chkPassageBeforeOverview.Checked = Properties.Settings.Default.GenerateTemplatePassageBeforeOverview; SetDefaultCheckedStateForLWCOptions(); m_rdoUseOriginal.Checked = Properties.Settings.Default.GenerateTemplateUseOriginalQuestionIfNotTranslated; m_rdoSkipUntranslated.Checked = !m_rdoUseOriginal.Checked && Properties.Settings.Default.GenerateTemplateSkipQuestionIfNotTranslated; // These two settings should never be able to both be true, but just to be safe. m_lblFolder.Text = string.IsNullOrEmpty(Properties.Settings.Default.GenerateTemplateFolder) ? defaultFolder : Properties.Settings.Default.GenerateTemplateFolder; m_numBlankLines.Value = Properties.Settings.Default.GenerateTemplateBlankLines; if (!Properties.Settings.Default.GenerateTemplateQuestionGroupHeadingsColor.IsEmpty) { m_lblQuestionGroupHeadingsColor.ForeColor = Properties.Settings.Default.GenerateTemplateQuestionGroupHeadingsColor; } if (!Properties.Settings.Default.GenerateTemplateEnglishQuestionTextColor.IsEmpty) { m_lblEnglishQuestionColor.ForeColor = Properties.Settings.Default.GenerateTemplateEnglishQuestionTextColor; } if (!Properties.Settings.Default.GenerateTemplateEnglishAnswerTextColor.IsEmpty) { m_lblEnglishAnswerTextColor.ForeColor = Properties.Settings.Default.GenerateTemplateEnglishAnswerTextColor; } if (!Properties.Settings.Default.GenerateTemplateCommentTextColor.IsEmpty) { m_lblCommentTextColor.ForeColor = Properties.Settings.Default.GenerateTemplateCommentTextColor; } m_chkNumberQuestions.Checked = Properties.Settings.Default.GenerateTemplateNumberQuestions; m_rdoUseExternalCss.Checked = Properties.Settings.Default.GenerateTemplateUseExternalCss; if (m_rdoUseExternalCss.Checked) { m_txtCssFile.Text = Properties.Settings.Default.GenerateTemplateCssFile; m_chkAbsoluteCssPath.Checked = Properties.Settings.Default.GenerateTemplateAbsoluteCssPath; } }
/// ------------------------------------------------------------------------------------ /// <summary> /// Initializes a new instance of this class. /// </summary> /// ------------------------------------------------------------------------------------ internal GenerateScriptDlg(string projectName, IScrExtractor scrExtractor, string defaultFolder, IEnumerable <int> canonicalBookIds, IList <ISectionInfo> sections, IEnumerable <KeyValuePair <string, string> > availableAdditionalLWCs) { m_projectName = projectName; m_scrExtractor = scrExtractor; InitializeComponent(); m_chkIncludeLWCQuestions.Tag = m_btnChooseLWCQuestionColor; m_chkIncludeLWCAnswers.Tag = m_btnChooseLWCAnswerColor; m_chkIncludeLWCComments.Tag = m_btnChooseCommentColor; btnChooseQuestionGroupHeadingsColor.Tag = m_lblQuestionGroupHeadingsColor; m_btnChooseLWCQuestionColor.Tag = m_lblLWCQuestionColor; m_btnChooseLWCAnswerColor.Tag = m_lblLWCAnswerTextColor; m_btnChooseCommentColor.Tag = m_lblCommentTextColor; HandleStringsLocalized(); LocalizeItemDlg <XLiffDocument> .StringsLocalized += HandleStringsLocalized; LoadBooks(canonicalBookIds); m_sections = sections; LoadSectionCombos(); LoadLWCCombo(availableAdditionalLWCs); switch ((RangeOption)Properties.Settings.Default.GenerateTemplateRange) { case RangeOption.WholeBook: m_rdoWholeBook.Checked = true; TrySelectItem(m_cboBooks, Properties.Settings.Default.GenerateTemplateBook); break; case RangeOption.SingleSection: m_rdoSingleSection.Checked = true; TrySelectItem(m_cboSection, Properties.Settings.Default.GenerateTemplateSection); break; case RangeOption.RangeOfSections: m_rdoSectionRange.Checked = true; TrySelectItem(m_cboStartSection, Properties.Settings.Default.GenerateTemplateSection); TrySelectItem(m_cboEndSection, Properties.Settings.Default.GenerateTemplateEndSection); break; } m_chkPassageBeforeOverview.Checked = Properties.Settings.Default.GenerateTemplatePassageBeforeOverview; if (m_scrExtractor == null) { m_chkIncludeVerseNumbers.Checked = m_chkIncludeVerseNumbers.Enabled = false; } else { m_chkIncludeVerseNumbers.Checked = Properties.Settings.Default.GenerateIncludeVerseNumbers; } SetDefaultCheckedStateForLWCOptions(); m_rdoUseOriginal.Checked = Properties.Settings.Default.GenerateTemplateUseOriginalQuestionIfNotTranslated; m_rdoSkipUntranslated.Checked = !m_rdoUseOriginal.Checked && Properties.Settings.Default.GenerateTemplateSkipQuestionIfNotTranslated; // These two settings should never be able to both be true, but just to be safe. m_rdoOutputPassageForOutOfOrderQuestions.Checked = Properties.Settings.Default.GenerateOutputPassageForOutOfOrderQuestions; m_lblFolder.Text = IsNullOrEmpty(Properties.Settings.Default.GenerateTemplateFolder) ? defaultFolder : Properties.Settings.Default.GenerateTemplateFolder; m_numBlankLines.Value = Properties.Settings.Default.GenerateTemplateBlankLines; if (!Properties.Settings.Default.GenerateTemplateQuestionGroupHeadingsColor.IsEmpty) { m_lblQuestionGroupHeadingsColor.ForeColor = Properties.Settings.Default.GenerateTemplateQuestionGroupHeadingsColor; } if (!Properties.Settings.Default.GenerateTemplateEnglishQuestionTextColor.IsEmpty) { m_lblLWCQuestionColor.ForeColor = Properties.Settings.Default.GenerateTemplateEnglishQuestionTextColor; } if (!Properties.Settings.Default.GenerateTemplateEnglishAnswerTextColor.IsEmpty) { m_lblLWCAnswerTextColor.ForeColor = Properties.Settings.Default.GenerateTemplateEnglishAnswerTextColor; } if (!Properties.Settings.Default.GenerateTemplateCommentTextColor.IsEmpty) { m_lblCommentTextColor.ForeColor = Properties.Settings.Default.GenerateTemplateCommentTextColor; } m_chkNumberQuestions.Checked = Properties.Settings.Default.GenerateTemplateNumberQuestions; m_rdoUseExternalCss.Checked = Properties.Settings.Default.GenerateTemplateUseExternalCss; if (m_rdoUseExternalCss.Checked) { m_txtCssFile.Text = Properties.Settings.Default.GenerateTemplateCssFile; m_chkAbsoluteCssPath.Checked = Properties.Settings.Default.GenerateTemplateAbsoluteCssPath; } }