コード例 #1
0
ファイル: QuotationMarksDlg.cs プロジェクト: witheej/Glyssen
        internal QuotationMarksDlg(Project project, BlockNavigatorViewModel navigatorViewModel, bool readOnly)
        {
            InitializeComponent();

            m_project = project;
            m_project.AnalysisCompleted -= HandleAnalysisCompleted;
            m_project.AnalysisCompleted += HandleAnalysisCompleted;
            m_navigatorViewModel         = navigatorViewModel;

            if (Settings.Default.QuoteMarksDialogShowGridView)
            {
                m_toolStripButtonGridView.Checked = true;
            }

            var books = new BookSet();

            foreach (var bookId in m_navigatorViewModel.IncludedBooks)
            {
                books.Add(bookId);
            }
            m_scriptureReference.VerseControl.BooksPresentSet = books;
            m_scriptureReference.VerseControl.ShowEmptyBooks  = false;

            m_scriptureReference.VerseControl.AllowVerseSegments = false;
            m_scriptureReference.VerseControl.Versification      = m_navigatorViewModel.Versification;
            m_scriptureReference.VerseControl.VerseRefChanged   += m_scriptureReference_VerseRefChanged;

            m_blocksViewer.Initialize(m_navigatorViewModel);
            m_navigatorViewModel.CurrentBlockChanged += HandleCurrentBlockChanged;

            SetupQuoteMarksComboBoxes(m_project.QuoteSystem);

            m_scriptureReference.VerseControl.GetLocalizedBookName = L10N.GetLocalizedBookNameFunc(m_scriptureReference.VerseControl.GetLocalizedBookName);
            HandleStringsLocalized();
            LocalizeItemDlg.StringsLocalized += HandleStringsLocalized;

            m_blocksViewer.VisibleChanged += (sender, args) => this.SafeInvoke(() =>
            {
                if (m_blocksViewer.Visible)
                {
                    LoadBlock();
                }
            }, GetType().FullName + " - anonymous delegate m_blocksViewer.VisibleChanged", ControlExtensions.ErrorHandlingAction.IgnoreIfDisposed);

            SetFilterControlsFromMode();

            if (m_project.ProjectState == ProjectState.NeedsQuoteSystemConfirmation)
            {
                UpdateTestParse(false);
            }
            else
            {
                ShowTestResults(PercentageOfExpectedQuotesFound(m_project.Books), false);
            }

            if (readOnly)
            {
                MakeReadOnly();
            }
        }
コード例 #2
0
        internal QuotationMarksDlg(Project project, BlockNavigatorViewModel navigatorViewModel, bool readOnly, ProjectSettingsDlg parentDlg)
        {
            InitializeComponent();
            Cursor.Current = Cursors.WaitCursor;
            m_project      = project;
            m_project.AnalysisCompleted -= HandleAnalysisCompleted;
            m_project.AnalysisCompleted += HandleAnalysisCompleted;
            m_navigatorViewModel         = navigatorViewModel;
            m_parentDlg = parentDlg;

            if (Settings.Default.QuoteMarksDialogShowGridView)
            {
                m_toolStripButtonGridView.Checked = true;
            }

            if (m_navigatorViewModel == null)
            {
                PreventNavigation();
            }
            else
            {
                var books = new BookSet();
                foreach (var bookId in m_navigatorViewModel.IncludedBooks)
                {
                    books.Add(bookId);
                }
                m_scriptureReference.VerseControl.BooksPresentSet = books;
                m_scriptureReference.VerseControl.ShowEmptyBooks  = false;

                m_scriptureReference.VerseControl.AllowVerseSegments = false;
                m_scriptureReference.VerseControl.Versification      = m_navigatorViewModel.Versification;
                m_scriptureReference.VerseControl.VerseRefChanged   += m_scriptureReference_VerseRefChanged;

                m_blocksViewer.Initialize(m_navigatorViewModel);
                m_navigatorViewModel.CurrentBlockChanged += HandleCurrentBlockChanged;
                m_scriptureReference.VerseControl.GetLocalizedBookName = L10N.GetLocalizedBookNameFunc(m_scriptureReference.VerseControl.GetLocalizedBookName);

                m_blocksViewer.VisibleChanged += (sender, args) => this.SafeInvoke(() =>
                {
                    if (m_blocksViewer.Visible)
                    {
                        LoadBlock();
                    }
                }, GetType().FullName + " - anonymous delegate m_blocksViewer.VisibleChanged", ControlExtensions.ErrorHandlingAction.IgnoreIfDisposed);
            }

            SetupQuoteMarksComboBoxes(m_project.QuoteSystem);

            if (m_project.IsLiveParatextProject && readOnly)
            {
                var wrapper = m_project.GetLiveParatextDataIfCompatible(false, checkForChangesInAvailableBooks: false);
                m_linkOverride.Visible = m_allowOverride = wrapper == null || !wrapper.UserCanEditProject;
            }

            try
            {
                HandleStringsLocalized();
                LocalizeItemDlg <TMXDocument> .StringsLocalized += HandleStringsLocalized;

                SetFilterControlsFromMode();

                if (m_project.ProjectState == ProjectState.NeedsQuoteSystemConfirmation)
                {
                    UpdateTestParse(false);
                }

                ReadOnly = readOnly;
            }
            finally
            {
                Cursor.Current = Cursors.Default;
            }
        }