/// <summary> /// Create one and set the browse view it belongs to. /// </summary> /// <param name="bv"></param> public DhListView(BrowseViewer bv) { m_bv = bv; m_imgList = new ImageList(); m_imgList.ImageSize = new Size(kHalfArrowSize * 2, kHalfArrowSize * 2); m_imgList.TransparentColor = Color.FromKnownColor(KnownColor.ControlLight); m_imgList.Images.Add(GetArrowBitmap(ArrowType.Ascending, ArrowSize.Large)); // Add ascending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Ascending, ArrowSize.Medium)); // Add ascending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Ascending, ArrowSize.Small)); // Add ascending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Descending, ArrowSize.Large)); // Add descending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Descending, ArrowSize.Medium)); // Add descending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Descending, ArrowSize.Small)); // Add descending arrow ColumnWidthChanged += ListView_ColumnWidthChanged; if (Platform.IsMono) { // FWNX-224 ColumnClick += HandleColumnClick; } ColumnWidthChanging += ListView_ColumnWidthChanging; ColumnReordered += HandleColumnReordered; }
private void BuildInitialBrowseView(XCore.Mediator mediator) { XmlNode configurationParameters = (XmlNode)mediator.PropertyTable.GetValue("WindowConfiguration"); XmlNode toolNode = configurationParameters.SelectSingleNode( "controls/parameters/guicontrol[@id='PhonologicalFeaturesFlatList']/parameters"); m_listPanel.SuspendLayout(); m_fakeFlid = FdoCache.DummyFlid; IVwCacheDa cda = m_cache.MainCacheAccessor as IVwCacheDa; int[] featureHvos = m_cache.LangProject.PhFeatureSystemOA.FeaturesOC.HvoArray; cda.CacheVecProp(m_cache.LangProject.Hvo, m_fakeFlid, featureHvos, featureHvos.Length); m_bvList = new BrowseViewer(toolNode, m_cache.LangProject.Hvo, m_fakeFlid, m_cache, mediator, null); m_bvList.SelectionChanged += new FwSelectionChangedEventHandler(m_bvList_SelectionChanged); m_bvList.ScrollBar.ValueChanged += new EventHandler(ScrollBar_ValueChanged); m_bvList.Scroller.Scroll += new ScrollEventHandler(ScrollBar_Scroll); m_bvList.ColumnsChanged += new EventHandler(BrowseViewer_ColumnsChanged); m_bvList.Resize += new EventHandler(m_bvList_Resize); m_bvList.TabStop = true; m_bvList.StyleSheet = FontHeightAdjuster.StyleSheetFromMediator(mediator); m_bvList.Dock = DockStyle.Fill; m_bvList.BackColor = SystemColors.Window; m_listPanel.Controls.Add(m_bvList); m_listPanel.ResumeLayout(false); }
/// <summary> /// Create one and set the browse view it belongs to. /// </summary> /// <param name="bv"></param> public DhListView(BrowseViewer bv) : base() { m_bv = bv; m_imgList = new ImageList(); m_imgList.ImageSize = new Size(kHalfArrowSize * 2, kHalfArrowSize * 2); m_imgList.TransparentColor = Color.FromKnownColor(KnownColor.ControlLight); m_imgList.Images.Add(GetArrowBitmap(ArrowType.Ascending, ArrowSize.Large)); // Add ascending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Ascending, ArrowSize.Medium)); // Add ascending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Ascending, ArrowSize.Small)); // Add ascending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Descending, ArrowSize.Large)); // Add descending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Descending, ArrowSize.Medium)); // Add descending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Descending, ArrowSize.Small)); // Add descending arrow m_checkMarkButton = new Button(); m_checkMarkButton.Click += new EventHandler(m_checkMarkButton_Click); m_checkMarkButton.Image = ResourceHelper.CheckMarkHeader; m_checkMarkButton.Width = m_checkMarkButton.Image.Width + 4; m_checkMarkButton.FlatStyle = FlatStyle.Flat; m_checkMarkButton.BackColor = Color.FromKnownColor(KnownColor.ControlLight); m_checkMarkButton.ForeColor = Color.FromKnownColor(KnownColor.ControlLight); m_checkMarkButton.Top = 0; m_checkMarkButton.Left = -1; }
/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose(bool disposing) { System.Diagnostics.Debug.WriteLineIf(!disposing, "****** Missing Dispose() call for " + GetType().Name + ". ****** "); // Must not be run more than once. if (IsDisposed) { return; } if (disposing) { if (m_helpProvider != null) { m_helpProvider.Dispose(); } } m_cache = null; m_fs = null; m_mediator = null; m_cache = null; m_bvList = null; m_valuesCombo = null; base.Dispose(disposing); }
private void BuildInitialBrowseView(Mediator mediator) { var configurationParameters = (XmlNode)mediator.PropertyTable.GetValue("WindowConfiguration"); XmlNode toolNode = configurationParameters.SelectSingleNode( "controls/parameters/guicontrol[@id='PhonologicalFeaturesFlatList']/parameters"); m_listPanel.SuspendLayout(); var sortedFeatureHvos = from s in m_cache.LangProject.PhFeatureSystemOA.FeaturesOC orderby s.Name.BestAnalysisAlternative.Text select s.Hvo; int[] featureHvos = sortedFeatureHvos.ToArray(); m_sda.CacheVecProp(m_cache.LangProject.Hvo, featureHvos); m_bvList = new BrowseViewer(toolNode, m_cache.LangProject.Hvo, PhonologicalFeaturePublisher.ListFlid, m_cache, mediator, null, m_sda); m_bvList.SelectionChanged += m_bvList_SelectionChanged; m_bvList.ScrollBar.ValueChanged += ScrollBar_ValueChanged; m_bvList.Scroller.Scroll += ScrollBar_Scroll; m_bvList.ColumnsChanged += BrowseViewer_ColumnsChanged; m_bvList.Resize += m_bvList_Resize; m_bvList.TabStop = true; m_bvList.StyleSheet = FontHeightAdjuster.StyleSheetFromMediator(mediator); m_bvList.Dock = DockStyle.Fill; m_bvList.BackColor = SystemColors.Window; m_listPanel.Controls.Add(m_bvList); m_listPanel.ResumeLayout(false); }
/// ------------------------------------------------------------------------------------ /// <summary> /// Releases the unmanaged resources used by the <see cref="T:System.Windows.Forms.ListView"/> and optionally releases the managed resources. /// </summary> /// <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param> /// ------------------------------------------------------------------------------------ protected override void Dispose(bool disposing) { Debug.WriteLineIf(!disposing, "****************** Missing Dispose() call for " + GetType().Name + ". ******************"); // Must not be run more than once. if (IsDisposed) { return; } if (disposing) { if (m_imgList != null) { m_imgList.Dispose(); } if (m_timer != null) { m_timer.Dispose(); m_timer = null; } if (m_tooltip != null) { m_tooltip.Dispose(); m_tooltip = null; } } m_imgList = null; m_bv = null; base.Dispose(disposing); }
/// <summary> /// Create and initialize the browse view, storing the data it will display. /// </summary> /// <param name="cache">The cache.</param> /// <param name="stylesheet">The stylesheet.</param> /// <param name="mediator">The mediator.</param> /// <param name="xnConfig">The config node.</param> /// <param name="objs">The objs.</param> public void Initialize(FdoCache cache, IVwStylesheet stylesheet, Mediator mediator, XmlNode xnConfig, IEnumerable <ICmObject> objs) { CheckDisposed(); m_cache = cache; m_stylesheet = stylesheet; m_mediator = mediator; m_configNode = xnConfig; SuspendLayout(); m_listPublisher = new ObjectListPublisher(cache.DomainDataByFlid as ISilDataAccessManaged, ObjectListFlid); StoreData(objs); m_bvList = new BrowseViewer(m_configNode, m_cache.LanguageProject.Hvo, ObjectListFlid, m_cache, m_mediator, null, m_listPublisher); m_bvList.Location = new Point(0, 0); m_bvList.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right; m_bvList.Name = "m_bvList"; m_bvList.Sorter = null; m_bvList.TabStop = true; m_bvList.StyleSheet = m_stylesheet; m_bvList.Dock = DockStyle.Fill; m_bvList.SelectionChanged += m_bvList_SelectionChanged; Controls.Add(m_bvList); ResumeLayout(false); }
/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose(bool disposing) { //Debug.WriteLineIf(!disposing, "****************** " + GetType().Name + " 'disposing' is false. ******************"); // Must not be run more than once. if (IsDisposed) { return; } if (disposing) { if (m_helpProvider != null) { m_helpProvider.Dispose(); } } if (m_cache != null) { IVwCacheDa cda = m_cache.MainCacheAccessor as IVwCacheDa; cda.CacheVecProp(m_cache.LangProject.Hvo, m_fakeFlid, null, 0); cda = null; m_cache = null; } m_ctxt = null; m_mediator = null; m_bvList = null; m_valuesCombo = null; base.Dispose(disposing); }
/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose(bool disposing) { //Debug.WriteLineIf(!disposing, "****************** " + GetType().Name + " 'disposing' is false. ******************"); // Must not be run more than once. if (IsDisposed) { return; } if (disposing) { if (components != null) { components.Dispose(); } } m_cache = null; m_fs = null; m_mediator = null; m_cache = null; m_bvList = null; m_valuesCombo = null; base.Dispose(disposing); }
/// <summary> /// Create and initialize the browse view, storing the data it will display. /// </summary> /// <param name="cache">The cache.</param> /// <param name="stylesheet">The stylesheet.</param> /// <param name="mediator">The mediator.</param> /// <param name="xnConfig">The config node.</param> /// <param name="objs">The objs.</param> public void Initialize(FdoCache cache, IVwStylesheet stylesheet, Mediator mediator, XmlNode xnConfig, IEnumerable<ICmObject> objs) { CheckDisposed(); m_cache = cache; m_stylesheet = stylesheet; m_mediator = mediator; m_configNode = xnConfig; SuspendLayout(); m_listPublisher = new ObjectListPublisher(cache.DomainDataByFlid as ISilDataAccessManaged, ObjectListFlid); StoreData(objs); m_bvList = new BrowseViewer(m_configNode, m_cache.LanguageProject.Hvo, ObjectListFlid, m_cache, m_mediator, null, m_listPublisher); m_bvList.Location = new Point(0, 0); m_bvList.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right; m_bvList.Name = "m_bvList"; m_bvList.Sorter = null; m_bvList.TabStop = true; m_bvList.StyleSheet = m_stylesheet; m_bvList.Dock = DockStyle.Fill; m_bvList.SelectionChanged += m_bvList_SelectionChanged; Controls.Add(m_bvList); ResumeLayout(false); }
/// ------------------------------------------------------------------------------------ /// <summary> /// Create one /// </summary> /// <param name="bv">The BrowseViewer that it is part of.</param> /// <param name="spec">The parameters element of the BV, containing the /// 'columns' elements that specify the BE bar (among other things).</param> /// <param name="mediator">The mediator.</param> /// <param name="propertyTable"></param> /// <param name="cache">The cache.</param> /// ------------------------------------------------------------------------------------ public BulkEditBarPhonologicalFeatures(BrowseViewer bv, XmlNode spec, Mediator mediator, PropertyTable propertyTable, LcmCache cache) : base(bv, spec, mediator, propertyTable, cache) { m_operationsTabControl.Controls.Remove(BulkCopyTab); m_operationsTabControl.Controls.Remove(ClickCopyTab); m_operationsTabControl.Controls.Remove(FindReplaceTab); m_operationsTabControl.Controls.Remove(TransduceTab); m_operationsTabControl.Controls.Remove(DeleteTab); if (m_listChoiceControl != null) { m_listChoiceControl.Text = ""; } EnablePreviewApplyForListChoice(); }
private void CreateBrowseViewer(int hvoIndex) { m_fakeFlid = Clerk.VirtualFlid; m_bvMatches = new SIL.FieldWorks.Common.Controls.BrowseViewer(m_configNode, hvoIndex, m_fakeFlid, m_cache, m_mediator, Clerk.SortItemProvider); m_bvMatches.SuspendLayout(); m_bvMatches.Location = new Point(0, 0); m_bvMatches.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right; m_bvMatches.Name = "m_bv"; m_bvMatches.Sorter = null; m_bvMatches.TabStop = false; m_bvMatches.StyleSheet = m_stylesheet; m_bvMatches.Dock = DockStyle.Fill; m_bvMatches.SelectionChanged += new FwSelectionChangedEventHandler(m_bvMatches_SelectionChanged); m_bvMatches.SelectionMade += new FwSelectionChangedEventHandler(m_bvMatches_SelectionMade); this.Controls.Add(m_bvMatches); m_bvMatches.ResumeLayout(); }
/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose(bool disposing) { // Must not be run more than once. if (IsDisposed) { return; } if (disposing) { // NO. The simple Clerk property guarantees is will not be null. //if (Clerk != null) // Clerk.FilterChangedByClerk -= new FilterChangeHandler(Clerk_FilterChangedByClerk); if (ExistingClerk != null) { PersistSortSequence(); ExistingClerk.FilterChangedByClerk -= Clerk_FilterChangedByClerk; } if (m_browseViewer != null) { m_browseViewer.SelectionChanged -= OnSelectionChanged; m_browseViewer.SelectedIndexChanged -= m_browseViewer_SelectedIndexChanged; m_browseViewer.FilterChanged -= FilterChangedHandler; m_browseViewer.SorterChanged -= SortChangedHandler; if (m_browseViewer.BulkEditBar != null) { m_browseViewer.BulkEditBar.TargetComboSelectedIndexChanged -= TargetColumnChanged; } m_browseViewer.BrowseView.RightMouseClickedEvent -= OnFwRightMouseClick; m_browseViewer.ListModificationInProgressChanged -= m_browseViewer_ListModificationInProgressChanged; m_browseViewer.SelectionDrawingFailure -= OnBrowseSelectionDrawingFailed; m_browseViewer.CheckBoxChanged -= OnCheckBoxChanged; m_browseViewer.SortersCompatible -= Clerk.AreSortersCompatible; } if (components != null) { components.Dispose(); } } m_browseViewer = null; // m_mediator = null; // No, or the superclass call will crash. base.Dispose(disposing); }
/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose(bool disposing) { //Debug.WriteLineIf(!disposing, "****************** " + GetType().Name + " 'disposing' is false. ******************"); // Must not be run more than once. if (IsDisposed) { return; } if (disposing) { // NO. The simple Clerk property guarantees is will not be null. //if (Clerk != null) // Clerk.FilterChangedByClerk -= new FilterChangeHandler(Clerk_FilterChangedByClerk); if (ExistingClerk != null) { ExistingClerk.FilterChangedByClerk -= new FilterChangeHandler(Clerk_FilterChangedByClerk); } if (m_browseViewer != null) { m_browseViewer.SelectionChanged -= new FwSelectionChangedEventHandler(OnSelectionChanged); m_browseViewer.SelectedIndexChanged -= new EventHandler(m_browseViewer_SelectedIndexChanged); m_browseViewer.FilterChanged -= new FilterChangeHandler(FilterChangedHandler); m_browseViewer.SorterChanged -= new EventHandler(SortChangedHandler); if (m_browseViewer.BulkEditBar != null) { m_browseViewer.BulkEditBar.TargetComboSelectedIndexChanged -= new TargetColumnChangedHandler(TargetColumnChanged); } m_browseViewer.BrowseView.RightMouseClickedEvent -= new FwRightMouseClickEventHandler(OnFwRightMouseClick); m_browseViewer.ListModificationInProgressChanged -= new EventHandler(m_browseViewer_ListModificationInProgressChanged); m_browseViewer.SelectionDrawingFailure -= new EventHandler(OnBrowseSelectionDrawingFailed); m_browseViewer.CheckBoxChanged -= new CheckBoxChangedEventHandler(OnCheckBoxChanged); } if (components != null) { components.Dispose(); } } m_browseViewer = null; // m_mediator = null; // No, or the superclass call will crash. base.Dispose(disposing); }
/// <summary> /// Create one and set the browse view it belongs to. /// </summary> /// <param name="bv"></param> public DhListView(BrowseViewer bv) { m_bv = bv; m_imgList = new ImageList(); m_imgList.ImageSize = new Size(kHalfArrowSize * 2, kHalfArrowSize * 2); m_imgList.TransparentColor = Color.FromKnownColor(KnownColor.ControlLight); m_imgList.Images.Add(GetArrowBitmap(ArrowType.Ascending, ArrowSize.Large)); // Add ascending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Ascending, ArrowSize.Medium)); // Add ascending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Ascending, ArrowSize.Small)); // Add ascending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Descending, ArrowSize.Large)); // Add descending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Descending, ArrowSize.Medium)); // Add descending arrow m_imgList.Images.Add(GetArrowBitmap(ArrowType.Descending, ArrowSize.Small)); // Add descending arrow ColumnWidthChanged += ListView_ColumnWidthChanged; #if __MonoCS__ // FWNX-224 ColumnClick += HandleColumnClick; #endif ColumnWidthChanging += ListView_ColumnWidthChanging; ColumnReordered += HandleColumnReordered; }
private void InitBrowseView(string guiControl, List <DummyCmObject> mergeCandidates) { XmlNode configurationParameters = (XmlNode)m_mediator.PropertyTable.GetValue("WindowConfiguration"); XmlNode toolNode = configurationParameters.SelectSingleNode("controls/parameters/guicontrol[@id='" + guiControl + "']/parameters"); m_fakeFlid = FdoCache.DummyFlid; IVwCacheDa cda = m_cache.MainCacheAccessor as IVwCacheDa; int[] hvos = new int[mergeCandidates.Count]; for (int i = 0; i < mergeCandidates.Count; i++) { hvos[i] = mergeCandidates[i].Hvo; m_candidates[mergeCandidates[i].Hvo] = mergeCandidates[i]; } cda.CacheVecProp(m_cache.LangProject.Hvo, m_fakeFlid, hvos, hvos.Length); m_bvMergeOptions = new BrowseViewer(toolNode, m_cache.LangProject.Hvo, m_fakeFlid, m_cache, m_mediator, null); m_bvMergeOptions.StyleSheet = SIL.FieldWorks.Common.Widgets.FontHeightAdjuster.StyleSheetFromMediator(m_mediator); m_bvMergeOptions.SelectedIndexChanged += new System.EventHandler(this.m_bvMergeOptions_SelectedIndexChanged); m_bvMergeOptions.Dock = DockStyle.Fill; m_bvPanel.Controls.Add(m_bvMergeOptions); }
private void InitBrowseView(string guiControl, List <DummyCmObject> mergeCandidates) { XmlNode configurationParameters = (XmlNode)m_mediator.PropertyTable.GetValue("WindowConfiguration"); XmlNode toolNode = configurationParameters.SelectSingleNode("controls/parameters/guicontrol[@id='" + guiControl + "']/parameters"); const int kfakeFlid = 8999958; ObjectListPublisher sda = new ObjectListPublisher((ISilDataAccessManaged)m_cache.DomainDataByFlid, kfakeFlid); int[] hvos = (from obj in mergeCandidates select obj.Hvo).ToArray(); for (int i = 0; i < mergeCandidates.Count; i++) { m_candidates[mergeCandidates[i].Hvo] = mergeCandidates[i]; } sda.SetOwningPropInfo(WfiWordformTags.kClassId, "LangProject", "Options"); sda.SetOwningPropValue(hvos); m_bvMergeOptions = new BrowseViewer(toolNode, m_cache.LangProject.Hvo, ObjectListPublisher.OwningFlid, m_cache, m_mediator, null, sda); m_bvMergeOptions.StyleSheet = Common.Widgets.FontHeightAdjuster.StyleSheetFromMediator(m_mediator); m_bvMergeOptions.SelectedIndexChanged += m_bvMergeOptions_SelectedIndexChanged; m_bvMergeOptions.Dock = DockStyle.Fill; m_bvPanel.Controls.Add(m_bvMergeOptions); }
private void CreateBrowseViewer(XmlNode configNode, IWritingSystem reversalWs) { m_listPublisher = new ObjectListPublisher(m_cache.DomainDataByFlid as ISilDataAccessManaged, ListFlid); m_bvMatches = new BrowseViewer(configNode, m_cache.LanguageProject.LexDbOA.Hvo, ListFlid, m_cache, m_mediator, null, m_listPublisher); m_bvMatches.SuspendLayout(); m_bvMatches.Location = new Point(0, 0); m_bvMatches.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right; m_bvMatches.Name = "m_bvMatches"; m_bvMatches.Sorter = null; m_bvMatches.TabStop = false; m_bvMatches.StyleSheet = m_stylesheet; m_bvMatches.Dock = DockStyle.Fill; if (reversalWs != null) { m_bvMatches.BrowseView.Vc.ReversalWs = reversalWs.Handle; } m_bvMatches.SelectionChanged += m_bvMatches_SelectionChanged; m_bvMatches.SelectionMade += m_bvMatches_SelectionMade; Controls.Add(m_bvMatches); m_bvMatches.ResumeLayout(); }
private void BuildInitialBrowseView(XCore.Mediator mediator, IEnumerable <IFsFeatDefn> features) { XmlNode configurationParameters = (XmlNode)mediator.PropertyTable.GetValue("WindowConfiguration"); XmlNode toolNode = configurationParameters.SelectSingleNode("controls/parameters/guicontrol[@id='FeatureConstraintFlatList']/parameters"); m_listPanel.SuspendLayout(); var hvos = (from feat in features select feat.Hvo).ToArray(); m_sda.CacheVecProp(m_cache.LangProject.Hvo, hvos); m_bvList = new BrowseViewer(toolNode, m_cache.LangProject.Hvo, FeatureConstraintPublisher.ListFlid, m_cache, mediator, null, m_sda); m_bvList.SelectionChanged += new FwSelectionChangedEventHandler(m_bvList_SelectionChanged); m_bvList.ScrollBar.ValueChanged += new EventHandler(ScrollBar_ValueChanged); m_bvList.Scroller.Scroll += new ScrollEventHandler(Scroller_Scroll); m_bvList.ColumnsChanged += new EventHandler(m_bvList_ColumnsChanged); m_bvList.Resize += new EventHandler(m_bvList_Resize); m_bvList.TabStop = true; m_bvList.StyleSheet = FontHeightAdjuster.StyleSheetFromMediator(mediator); m_bvList.Dock = DockStyle.Fill; m_bvList.BackColor = SystemColors.Window; m_listPanel.Controls.Add(m_bvList); m_listPanel.ResumeLayout(false); }
/// ------------------------------------------------------------------------------------ /// <summary> /// Releases the unmanaged resources used by the <see cref="T:System.Windows.Forms.ListView"/> and optionally releases the managed resources. /// </summary> /// <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param> /// ------------------------------------------------------------------------------------ protected override void Dispose(bool disposing) { //Debug.WriteLineIf(!disposing, "****************** " + GetType().Name + " 'disposing' is false. ******************"); // Must not be run more than once. if (IsDisposed) { return; } if (disposing) { if (m_configDisplayTimer != null) { m_configDisplayTimer.Stop(); m_configDisplayTimer.Tick -= new EventHandler(m_configDisplayTimer_Tick); m_configDisplayTimer.Dispose(); } if (m_checkMarkButton != null) { m_checkMarkButton.Click -= new EventHandler(m_checkMarkButton_Click); if (!Controls.Contains(m_checkMarkButton)) { m_checkMarkButton.Dispose(); } } if (m_imgList != null) { m_imgList.Dispose(); } } m_configDisplayTimer = null; m_imgList = null; m_checkMarkButton = null; m_bv = null; base.Dispose(disposing); }
/// <summary> /// Create and initialize the browse view, storing the data it will display. /// </summary> /// <param name="cache"></param> /// <param name="stylesheet"></param> /// <param name="mediator"></param> /// <param name="xnConfig"></param> /// <param name="rghvo"></param> public void Initialize(FdoCache cache, IVwStylesheet stylesheet, Mediator mediator, XmlNode xnConfig, List <int> rghvo) { CheckDisposed(); m_cache = cache; m_stylesheet = stylesheet; m_mediator = mediator; m_configNode = xnConfig; this.SuspendLayout(); m_flidFake = FdoCache.DummyFlid; StoreData(rghvo); m_bvList = new SIL.FieldWorks.Common.Controls.BrowseViewer(m_configNode, m_cache.LangProject.Hvo, m_flidFake, m_cache, m_mediator, null); m_bvList.Location = new Point(0, 0); m_bvList.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right; m_bvList.Name = "m_bv"; m_bvList.Sorter = null; m_bvList.TabStop = true; m_bvList.StyleSheet = m_stylesheet; m_bvList.Dock = DockStyle.Fill; this.Controls.Add(m_bvList); this.ResumeLayout(false); }
/// <summary> /// Create and initialize the browse view, storing the data it will display. /// </summary> /// <param name="cache"></param> /// <param name="stylesheet"></param> /// <param name="mediator"></param> /// <param name="xnConfig"></param> /// <param name="rghvo"></param> public void Initialize(FdoCache cache, IVwStylesheet stylesheet, Mediator mediator, XmlNode xnConfig, List<int> rghvo) { CheckDisposed(); m_cache = cache; m_stylesheet = stylesheet; m_mediator = mediator; m_configNode = xnConfig; this.SuspendLayout(); m_flidFake = FdoCache.DummyFlid; StoreData(rghvo); m_bvList = new SIL.FieldWorks.Common.Controls.BrowseViewer(m_configNode, m_cache.LangProject.Hvo, m_flidFake, m_cache, m_mediator, null); m_bvList.Location = new Point(0, 0); m_bvList.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right; m_bvList.Name = "m_bv"; m_bvList.Sorter = null; m_bvList.TabStop = true; m_bvList.StyleSheet = m_stylesheet; m_bvList.Dock = DockStyle.Fill; this.Controls.Add(m_bvList); this.ResumeLayout(false); }
/// ------------------------------------------------------------------------------------ /// <summary> /// Initializes a new instance of the <see cref="T:FindComboItem"/> class. /// </summary> /// <param name="tssName">Name of the TSS.</param> /// <param name="fsi">The fsi.</param> /// <param name="ws">The ws.</param> /// <param name="combo">The combo.</param> /// <param name="bv">The bv.</param> /// ------------------------------------------------------------------------------------ public FindComboItem(ITsString tssName, FilterSortItem fsi, int ws, FwComboBox combo, BrowseViewer bv) : base(tssName, null, fsi) { m_ws = ws; m_combo = combo; m_bv = bv; }
private void InitBrowseView(string guiControl, List<DummyCmObject> mergeCandidates) { XmlNode configurationParameters = (XmlNode)m_mediator.PropertyTable.GetValue("WindowConfiguration"); XmlNode toolNode = configurationParameters.SelectSingleNode("controls/parameters/guicontrol[@id='" + guiControl + "']/parameters"); const int kfakeFlid = 8999958; ObjectListPublisher sda = new ObjectListPublisher((ISilDataAccessManaged)m_cache.DomainDataByFlid , kfakeFlid); int[] hvos = (from obj in mergeCandidates select obj.Hvo).ToArray(); for (int i = 0; i < mergeCandidates.Count; i++) m_candidates[mergeCandidates[i].Hvo] = mergeCandidates[i]; sda.SetOwningPropInfo(WfiWordformTags.kClassId, "LangProject", "Options"); sda.SetOwningPropValue(hvos); m_bvMergeOptions = new BrowseViewer(toolNode, m_cache.LangProject.Hvo, ObjectListPublisher.OwningFlid, m_cache, m_mediator, null, sda); m_bvMergeOptions.StyleSheet = Common.Widgets.FontHeightAdjuster.StyleSheetFromMediator(m_mediator); m_bvMergeOptions.SelectedIndexChanged += m_bvMergeOptions_SelectedIndexChanged; m_bvMergeOptions.Dock = DockStyle.Fill; m_bvPanel.Controls.Add(m_bvMergeOptions); }
/// <summary> /// /// </summary> /// <param name="bv"></param> /// <param name="spec"></param> /// <param name="mediator"></param> /// <param name="propertyTable"></param> /// <param name="cache"></param> /// <returns></returns> protected override BulkEditBar CreateBulkEditBar(BrowseViewer bv, XmlNode spec, Mediator mediator, PropertyTable propertyTable, LcmCache cache) { return(new BulkEditBarPhonologicalFeatures(bv, spec, mediator, propertyTable, cache)); }
/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose( bool disposing ) { Debug.WriteLineIf(!disposing, "****** Missing Dispose() call for " + GetType().Name + ". ****** "); // Must not be run more than once. if (IsDisposed) return; if ( disposing ) { if (components != null) { components.Dispose(); } m_listChoiceTargetCombo.SelectedIndexChanged -= new EventHandler(m_listChoiceTargetCombo_SelectedIndexChanged); m_previewButton.Click -= new EventHandler(m_previewButton_Click); m_ApplyButton.Click -= new EventHandler(m_ApplyButton_Click); m_closeButton.Click -= new EventHandler(m_closeButton_Click); m_operationsTabControl.Deselecting -= new TabControlCancelEventHandler(m_operationsTabControl_Deselecting); m_operationsTabControl.SelectedIndexChanged -= new EventHandler(m_operationsTabControl_SelectedIndexChanged); DisposeBulkEditItems(); } m_beItems = null; m_mediator = null; m_bv = null; m_cache = null; base.Dispose( disposing ); }
public ManyOnePathSortItemReadWriter(FdoCache cache, XmlNode colSpec, BrowseViewer bv, IApp app) : base(cache.DomainDataByFlid) { m_cache = cache; m_colSpec = colSpec; m_bv = bv; m_app = app; EnsureFinder(); }
/// <summary/> public FakeXmlBrowseViewBase(BrowseViewer bv) { m_bv = bv; m_rootb = new FakeRootBox(); ((FakeRootBox)m_rootb).m_xmlBrowseViewBase = this; }
protected override void SetupDataContext() { base.SetupDataContext(); // Make sure our persisted sorter/filters are up to date so browse viewer // has the latest set for configuring/activating the filterBar bool fNeedReload = Clerk.UpdateFiltersAndSortersIfNeeded(); // This is mainly to handle the possibility that one of our objects in a virtual // property has been deleted, either by some other tool, or by another client altogether. // Enhance: it would be very nice not to do this any time we can be sure it isn't needed. // The second 'true' here is to make it skip the sort. The sort has to be skipped at this // point because our VC has been disposed, and we haven't made a new one yet. The sort // will happen later in the sequence of Init when InitSorter is called int hvo = 0; if (Clerk.OwningObject != null) { hvo = Clerk.OwningObject.Hvo; } // We must update the list if needed BEFORE we create the actual view, otherwise, if it is trying // to display an out-of-date list containing deleted objects, all kinds of things may go wrong. if (XmlUtils.GetOptionalBooleanAttributeValue(m_configurationParameters, "forceReloadListOnInitOrChangeRoot", false)) { m_propertyTable.SetProperty(Clerk.Id + "_AlwaysRecomputeVirtualOnReloadList", true, true); // (EricP) when called by RecordView.InitBase() in the context of ListUpdateHelper.ClearBrowseListUntilReload // the list does not get reloaded until ListUpdateHelper is disposed, but the views property // will get cleared to prevent these views from accessing invalid objects. Clerk.UpdateList(false, true); } m_browseViewer = CreateBrowseViewer(m_configurationParameters, hvo, m_fakeFlid, Cache, m_mediator, m_propertyTable, Clerk.SortItemProvider, Clerk.VirtualListPublisher); m_browseViewer.SortersCompatible += Clerk.AreSortersCompatible; // If possible make it use the style sheet appropriate for its main window. m_browseViewer.SuspendLayout(); SetStyleSheet(); m_browseViewer.Dock = DockStyle.Fill; RecordFilter linkFilter = m_browseViewer.FilterFromLink(); SetupLinkScripture(); if (linkFilter != null) { Clerk.OnChangeFilter(new FilterChangeEventArgs(linkFilter, Clerk.Filter)); } if (Clerk.Filter != null && !Clerk.Filter.IsValid) { Clerk.ResetFilterToDefault(); } m_browseViewer.UpdateFilterBar(Clerk.Filter); bool fSortChanged = m_browseViewer.InitSorter(Clerk.Sorter); // true if we had to change sorter // Do this AFTER we init the sorter and filter, so if any changes are made to the // sorter or filter as we install, we still get the right load. if (fSortChanged) { HandleSortChange(); // Keep the current index -- see LT-8755. } else { List <int> sortedCols = m_browseViewer.SortedColumns; Clerk.IsDefaultSort = sortedCols.Count > 0 && sortedCols[0] == m_browseViewer.DefaultSortColumn; // This won't actually load if in the context of UpdateListHelper() Clerk.UpdateList(true, fNeedReload); } // Do this very late, it can't display properly until its record list has been built and sorted. Controls.Add(m_browseViewer); m_browseViewer.BringToFront(); m_browseViewer.ResumeLayout(); }
private void InitBrowseView(string guiControl, List<DummyCmObject> mergeCandidates) { XmlNode configurationParameters = (XmlNode)m_mediator.PropertyTable.GetValue("WindowConfiguration"); XmlNode toolNode = configurationParameters.SelectSingleNode("controls/parameters/guicontrol[@id='" + guiControl + "']/parameters"); m_fakeFlid = FdoCache.DummyFlid; IVwCacheDa cda = m_cache.MainCacheAccessor as IVwCacheDa; int[] hvos = new int[mergeCandidates.Count]; for (int i = 0; i < mergeCandidates.Count; i++) { hvos[i] = mergeCandidates[i].Hvo; m_candidates[mergeCandidates[i].Hvo] = mergeCandidates[i]; } cda.CacheVecProp(m_cache.LangProject.Hvo, m_fakeFlid, hvos, hvos.Length); m_bvMergeOptions = new BrowseViewer(toolNode, m_cache.LangProject.Hvo, m_fakeFlid, m_cache, m_mediator, null); m_bvMergeOptions.StyleSheet = SIL.FieldWorks.Common.Widgets.FontHeightAdjuster.StyleSheetFromMediator(m_mediator); m_bvMergeOptions.SelectedIndexChanged += new System.EventHandler(this.m_bvMergeOptions_SelectedIndexChanged); m_bvMergeOptions.Dock = DockStyle.Fill; m_bvPanel.Controls.Add(m_bvMergeOptions); }
/// ------------------------------------------------------------------------------------ /// <summary> /// Inits the specified node spec. /// </summary> /// <param name="nodeSpec">The node spec.</param> /// <param name="hvoRoot">The hvo root.</param> /// <param name="fakeFlid">The fake flid.</param> /// <param name="cache">The cache.</param> /// <param name="mediator">The mediator.</param> /// <param name="bv">The bv.</param> /// ------------------------------------------------------------------------------------ public override void Init(XmlNode nodeSpec, int hvoRoot, int fakeFlid, FdoCache cache, Mediator mediator, BrowseViewer bv) { CheckDisposed(); // Use the ones in fakeFlid, and any we create. base.Init(nodeSpec, hvoRoot, fakeFlid, cache, mediator, bv); }
/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose( bool disposing ) { //Debug.WriteLineIf(!disposing, "****************** " + GetType().Name + " 'disposing' is false. ******************"); // Must not be run more than once. if (IsDisposed) return; if( disposing ) { if(components != null) { components.Dispose(); } } m_cache = null; m_fs = null; m_mediator = null; m_cache = null; m_bvList = null; m_valuesCombo = null; base.Dispose( disposing ); }
public ManyOnePathSortItemReadWriter(FdoCache cache, XmlNode colSpec, BrowseViewer bv) : base (cache.MainCacheAccessor) { m_cache = cache; m_colSpec = colSpec; m_bv = bv; EnsureFinder(); }
/// ------------------------------------------------------------------------------------ /// <summary> /// Initializes a new instance of the <see cref="T:FilterBar"/> class. /// </summary> /// <param name="bv">The bv.</param> /// <param name="spec">The spec.</param> /// ------------------------------------------------------------------------------------ public FilterBar(BrowseViewer bv, XmlNode spec) { m_bv = bv; m_columns = m_bv.ColumnSpecs; m_cache = bv.Cache; m_mdc = m_cache.MetaDataCacheAccessor; m_sda = m_cache.MainCacheAccessor; m_wsf = m_sda.WritingSystemFactory; m_userWs = m_cache.DefaultUserWs; // Store the standard font height for use in SetStyleSheet Font tempFont = new Font("Times New Roman", (float)10.0); m_stdFontHeight = tempFont.Height; // This light grey background shows through for any columns where we don't have a combo // because we can't figure a IStringFinder from the XmlParameters. this.BackColor = Color.FromKnownColor(KnownColor.ControlLight); MakeItems(); this.AccessibilityObject.Name = "FilterBar"; }
/// ------------------------------------------------------------------------------------ /// <summary> /// Create one /// </summary> /// <param name="bv">The BrowseViewer that it is part of.</param> /// <param name="spec">The parameters element of the BV, containing the /// 'columns' elements that specify the BE bar (among other things).</param> /// <param name="mediator">The mediator.</param> /// <param name="cache">The cache.</param> /// ------------------------------------------------------------------------------------ public BulkEditBarPhonologicalFeatures(BrowseViewer bv, XmlNode spec, Mediator mediator, FdoCache cache) : base(bv, spec, mediator, cache) { m_operationsTabControl.Controls.Remove(BulkCopyTab); m_operationsTabControl.Controls.Remove(ClickCopyTab); m_operationsTabControl.Controls.Remove(FindReplaceTab); m_operationsTabControl.Controls.Remove(TransduceTab); m_operationsTabControl.Controls.Remove(DeleteTab); if (m_listChoiceControl != null) m_listChoiceControl.Text = ""; EnablePreviewApplyForListChoice(); }
/// <summary> /// /// </summary> /// <param name="bv"></param> /// <param name="spec"></param> /// <param name="mediator"></param> /// <param name="cache"></param> /// <returns></returns> protected override BulkEditBar CreateBulkEditBar(BrowseViewer bv, XmlNode spec, Mediator mediator, FdoCache cache) { return new BulkEditBarPhonologicalFeatures(bv, spec, mediator, cache); }
/// ------------------------------------------------------------------------------------ /// <summary> /// Inits the specified node spec. /// </summary> /// <param name="nodeSpec">The node spec.</param> /// <param name="hvoRoot">The hvo root.</param> /// <param name="fakeFlid">The fake flid.</param> /// <param name="cache">The cache.</param> /// <param name="mediator">The mediator.</param> /// <param name="bv">The bv. Also used to set SortItemProvider</param> /// ------------------------------------------------------------------------------------ public virtual void Init(XmlNode nodeSpec, int hvoRoot, int fakeFlid, FdoCache cache, Mediator mediator, BrowseViewer bv) { CheckDisposed(); Debug.Assert((m_selectedIndex == -1), "Cannot set the index to less than zero before initializing."); Debug.Assert(m_nodeSpec == null || m_nodeSpec == nodeSpec, "XmlBrowseViewBase.Init: Mismatched configuration parameters."); m_hvoRoot = hvoRoot; m_fakeFlid = fakeFlid; if (m_nodeSpec == null) m_nodeSpec = nodeSpec; m_bv = bv; StringTbl = mediator.StringTbl; m_mediator = mediator; m_fdoCache = cache; m_sda = m_bv.SpecialCache; // This is usually done in MakeRoot, but we need it to exist right from the start // because right after we make this window we use info from the VC to help make // the column headers. if (bv != null) m_sortItemProvider = bv.SortItemProvider; m_xbvvc = Vc; string sDefaultCursor = XmlUtils.GetOptionalAttributeValue(nodeSpec, "defaultCursor", null); // Set a default cursor for a ReadOnly view, if none is given. if (sDefaultCursor == null && ReadOnlySelect) sDefaultCursor = "Arrow"; if (sDefaultCursor != null) { switch (sDefaultCursor) { case "IBeam": EditingHelper.DefaultCursor = Cursors.IBeam; break; case "Hand": EditingHelper.DefaultCursor = Cursors.Hand; break; case "Arrow": EditingHelper.DefaultCursor = Cursors.Arrow; break; case "Cross": EditingHelper.DefaultCursor = Cursors.Cross; break; } } }
internal BulkEditBarForTests(BrowseViewer bv, XmlNode spec, Mediator mediator, FdoCache cache) : base(bv, spec, mediator, cache) { Form mainWindow = (Form)mediator.PropertyTable.GetValue("window") as Form; m_wnd = mainWindow as MockFwXWindow; }
/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose( bool disposing ) { //Debug.WriteLineIf(!disposing, "****************** " + GetType().Name + " 'disposing' is false. ******************"); // Must not be run more than once. if (IsDisposed) return; if (disposing) { if (m_bv != null && !m_bv.IsDisposed && m_bv.SpecialCache != null) m_bv.SpecialCache.RemoveNotification(this); } base.Dispose(disposing); if( disposing ) { if (components != null) { components.Dispose(); } if (m_bv != null && !m_bv.IsDisposed) m_bv.Dispose(); } m_xbvvc = null; m_nodeSpec = null; m_stringTable = null; m_bv = null; }
//public const int kDoitHeight = 20; /// ------------------------------------------------------------------------------------ /// <summary> /// Create one /// </summary> /// <param name="bv">The BrowseViewer that it is part of.</param> /// <param name="spec">The parameters element of the BV, containing the /// 'columns' elements that specify the BE bar (among other things).</param> /// <param name="mediator">The mediator.</param> /// <param name="cache">The cache.</param> /// ------------------------------------------------------------------------------------ public BulkEditBar(BrowseViewer bv, XmlNode spec, Mediator mediator, FdoCache cache) : this() { m_mediator = mediator; m_bv = bv; m_bv.FilterChanged += BrowseViewFilterChanged; m_bv.RefreshCompleted += BrowseViewSorterChanged; m_cache = cache; m_configurationNode = spec; // (EricP) we should probably try find someway to get these classes from the RecordClerk/List string bulkEditListItemsClassesValue = XmlUtils.GetManditoryAttributeValue(spec, "bulkEditListItemsClasses"); string[] bulkEditListItemsClasses = bulkEditListItemsClassesValue.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); foreach (string className in bulkEditListItemsClasses) { int classId = cache.MetaDataCacheAccessor.GetClassId(className); m_bulkEditListItemsClasses.Add((int)classId); } // get any fields that have ghosts we may want to edit (see also "ghostListField" in columnSpecs) string bulkEditListItemsGhostFieldsValue = XmlUtils.GetOptionalAttributeValue(spec, "bulkEditListItemsGhostFields"); if (!String.IsNullOrEmpty(bulkEditListItemsGhostFieldsValue)) { string[] bulkEditListItemsGhostFields = bulkEditListItemsGhostFieldsValue.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); foreach (string classAndField in bulkEditListItemsGhostFields) m_bulkEditListItemsGhostFields.Add(GhostParentHelper.Create(m_cache.ServiceLocator, classAndField)); } MakeItems(); m_sBulkDeleteIfZero = XmlUtils.GetOptionalAttributeValue(spec, "bulkDeleteIfZero"); this.AccessibilityObject.Name = "BulkEditBar"; m_listChoiceTargetCombo.SelectedIndexChanged += new EventHandler(m_listChoiceTargetCombo_SelectedIndexChanged); // Finish init of the FwTextBox m_clickCopySepBox.WritingSystemFactory = m_cache.WritingSystemFactory; m_clickCopySepBox.WritingSystemCode = m_cache.ServiceLocator.WritingSystems.DefaultAnalysisWritingSystem.Handle; m_clickCopySepBox.Text = " "; // default (maybe should persist?) m_clickCopySepBox.GotFocus += new EventHandler(m_clickCopySepBox_GotFocus); // Add NonBlankTargetControl as needed. m_bcNonEmptyTargetControl = new NonEmptyTargetControl(); m_bcNonEmptyTargetControl.WritingSystemFactory = m_cache.WritingSystemFactory; m_bcNonEmptyTargetControl.Separator = " "; // persist? // Set WritingSystemCode when destination field is set m_bcNonEmptyTargetControl.Location = new Point(170, 50); m_bcNonEmptyTargetControl.Name = "m_bcNonEmptyTargetControl"; // Its size should be correctly preset. // todo: give it a tab stop. m_bulkCopyTab.Controls.Add(m_bcNonEmptyTargetControl); m_bulkCopyTargetCombo.SelectedIndexChanged += new EventHandler(m_bulkCopyTargetCombo_SelectedIndexChanged); // And for the transduce tab... (Process Tab) m_trdNonEmptyTargetControl = new NonEmptyTargetControl(); m_trdNonEmptyTargetControl.WritingSystemFactory = m_cache.WritingSystemFactory; m_trdNonEmptyTargetControl.Separator = " "; // persist? // Set WritingSystemCode when destination field is set m_trdNonEmptyTargetControl.Location = new Point(170, 50); m_trdNonEmptyTargetControl.Name = "m_trdNonEmptyTargetControl"; // Its size should be correctly preset. // todo: give it a tab stop. m_transduceTab.Controls.Add(m_trdNonEmptyTargetControl); m_transduceTargetCombo.SelectedIndexChanged += new EventHandler(m_transduceTargetCombo_SelectedIndexChanged); m_enableBulkEditTabsNode = XmlUtils.FindNode(spec, "enableBulkEditTabs"); if (m_enableBulkEditTabsNode != null) { m_bulkCopyTab.Enabled = XmlUtils.GetOptionalBooleanAttributeValue(m_enableBulkEditTabsNode, "enableBEBulkCopy", true); m_clickCopyTab.Enabled = XmlUtils.GetOptionalBooleanAttributeValue(m_enableBulkEditTabsNode, "enableBEClickCopy", true); m_transduceTab.Enabled = XmlUtils.GetOptionalBooleanAttributeValue(m_enableBulkEditTabsNode, "enableBEProcess", true); m_findReplaceTab.Enabled = XmlUtils.GetOptionalBooleanAttributeValue(m_enableBulkEditTabsNode, "enableBEFindReplace", true); m_deleteTab.Enabled = XmlUtils.GetOptionalBooleanAttributeValue(m_enableBulkEditTabsNode, "enableBEOther", true); } else { m_bulkCopyTab.Enabled = m_clickCopyTab.Enabled = m_transduceTab.Enabled = m_findReplaceTab.Enabled = m_deleteTab.Enabled = true; } m_operationsTabControl.SelectedIndexChanged += new EventHandler(m_operationsTabControl_SelectedIndexChanged); m_operationsTabControl.Deselecting += new TabControlCancelEventHandler(m_operationsTabControl_Deselecting); BulkCopyTabPageSettings.TrySwitchToLastSavedTab(this); // events like SelectedIndexChanged do not fire until after initialization, // so do it explicitly here now. m_operationsTabControl_SelectedIndexChanged(null, new EventArgs()); m_setupOrRestoredBulkEditBarTab = true; m_previewButton.Click += new EventHandler(m_previewButton_Click); m_ApplyButton.Click += new EventHandler(m_ApplyButton_Click); m_closeButton.Click += new EventHandler(m_closeButton_Click); m_findReplaceSummaryLabel.WritingSystemFactory = m_cache.WritingSystemFactory; }
private void CreateBrowseViewer(XmlNode configNode, IWritingSystem reversalWs) { m_listPublisher = new ObjectListPublisher(m_cache.DomainDataByFlid as ISilDataAccessManaged, ListFlid); m_bvMatches = new BrowseViewer(configNode, m_cache.LanguageProject.LexDbOA.Hvo, ListFlid, m_cache, m_mediator, null, m_listPublisher); m_bvMatches.SuspendLayout(); m_bvMatches.Location = new Point(0, 0); m_bvMatches.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right; m_bvMatches.Name = "m_bvMatches"; m_bvMatches.Sorter = null; m_bvMatches.TabStop = false; m_bvMatches.StyleSheet = m_stylesheet; m_bvMatches.Dock = DockStyle.Fill; if (reversalWs != null) m_bvMatches.BrowseView.Vc.ReversalWs = reversalWs.Handle; m_bvMatches.SelectionChanged += m_bvMatches_SelectionChanged; m_bvMatches.SelectionMade += m_bvMatches_SelectionMade; UpdateVisibleColumns(); Controls.Add(m_bvMatches); m_bvMatches.ResumeLayout(); m_bvMatches.ColumnsChanged += m_bvMatches_ColumnsChanged; }
//int flidAtomicProp, int hvoList, int ws, bool useAbbr public MorphTypeChooserBEditControl(int flid, int subflid, int hvoList, int ws, BrowseViewer viewer) : base(subflid, hvoList, ws, false) { m_flidParent = flid; m_containingViewer = viewer; }
/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose( bool disposing ) { Debug.WriteLineIf(!disposing, "****** Missing Dispose() call for " + GetType().Name + ". ****** "); // Must not be run more than once. if (IsDisposed) return; if (disposing) { if (m_helpProvider != null) m_helpProvider.Dispose(); } m_cache = null; m_fs = null; m_ctxt = null; m_mediator = null; m_cache = null; m_bvList = null; m_valuesCombo = null; base.Dispose( disposing ); }
/// <summary/> protected virtual void Dispose(bool fDisposing) { Debug.WriteLineIf(!fDisposing, "****** Missing Dispose() call for " + GetType() + " *******"); if (fDisposing && !IsDisposed) { // dispose managed and unmanaged objects var disposable = m_finder as IDisposable; if (disposable != null) disposable.Dispose(); } m_finder = null; m_cache = null; m_colSpec = null; m_bv = null; m_app = null; IsDisposed = true; }
/// ------------------------------------------------------------------------------------ /// <summary> /// Releases the unmanaged resources used by the <see cref="T:System.Windows.Forms.ListView"/> and optionally releases the managed resources. /// </summary> /// <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param> /// ------------------------------------------------------------------------------------ protected override void Dispose(bool disposing) { //Debug.WriteLineIf(!disposing, "****************** " + GetType().Name + " 'disposing' is false. ******************"); // Must not be run more than once. if (IsDisposed) return; if (disposing) { if (m_configDisplayTimer != null) { m_configDisplayTimer.Stop(); m_configDisplayTimer.Tick -= new EventHandler(m_configDisplayTimer_Tick); m_configDisplayTimer.Dispose(); } if (m_checkMarkButton != null) { m_checkMarkButton.Click -= new EventHandler(m_checkMarkButton_Click); if (!Controls.Contains(m_checkMarkButton)) m_checkMarkButton.Dispose(); } if (m_imgList != null) m_imgList.Dispose(); } m_configDisplayTimer = null; m_imgList = null; m_checkMarkButton = null; m_bv = null; base.Dispose (disposing); }
/// <summary/> public FakeDhListView(BrowseViewer bv) : base(bv) { }
/// <summary> /// /// </summary> /// <param name="bv"></param> /// <param name="spec"></param> /// <param name="mediator"></param> /// <param name="cache"></param> /// <returns></returns> protected override BulkEditBar CreateBulkEditBar(BrowseViewer bv, XmlNode spec, Mediator mediator, FdoCache cache) { return new BulkEditBarForTests(bv, spec, mediator, cache); }
/// <summary> /// Executes in two distinct scenarios. /// /// 1. If disposing is true, the method has been called directly /// or indirectly by a user's code via the Dispose method. /// Both managed and unmanaged resources can be disposed. /// /// 2. If disposing is false, the method has been called by the /// runtime from inside the finalizer and you should not reference (access) /// other managed objects, as they already have been garbage collected. /// Only unmanaged resources can be disposed. /// </summary> /// <param name="disposing"></param> /// <remarks> /// If any exceptions are thrown, that is fine. /// If the method is being done in a finalizer, it will be ignored. /// If it is thrown by client code calling Dispose, /// it needs to be handled by fixing the bug. /// /// If subclasses override this method, they should call the base implementation. /// </remarks> protected override void Dispose(bool disposing) { //Debug.WriteLineIf(!disposing, "****************** " + GetType().Name + " 'disposing' is false. ******************"); // Must not be run more than once. if (IsDisposed) return; if (disposing) { // Dispose managed resources here. foreach (Control ctl in Controls) { if (ctl is FwComboBox) { FwComboBox combo = ctl as FwComboBox; combo.SelectedIndexChanged -= new EventHandler(Combo_SelectedIndexChanged); foreach (Object obj in combo.Items) { if (obj is IDisposable) (obj as IDisposable).Dispose(); } combo.Items.Clear(); } } foreach (FilterSortItem fsi in m_items) { fsi.FilterChanged -= new FilterChangeHandler(this.FilterChangedHandler); fsi.Dispose(); } } // Dispose unmanaged resources here, whether disposing is true or false. m_bv = null; // Parent window. m_cache = null; m_columns = null; // Client needs to deal with the columns. m_items = null; m_mdc = null; m_sda = null; m_wsf = null; // This will handle any controls that are in the Controls property. base.Dispose(disposing); }
private void CreateBrowseViewer() { m_fakeFlid = Clerk.VirtualFlid; m_bvMatches = new SIL.FieldWorks.Common.Controls.BrowseViewer(m_configNode, m_cache.LangProject.LexDbOAHvo, m_fakeFlid, m_cache, m_mediator, Clerk.SortItemProvider); m_bvMatches.SuspendLayout(); m_bvMatches.Location = new Point(0, 0); m_bvMatches.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right; m_bvMatches.Name = "m_bv"; m_bvMatches.Sorter = null; m_bvMatches.TabStop = false; m_bvMatches.StyleSheet = m_stylesheet; m_bvMatches.Dock = DockStyle.Fill; m_bvMatches.SelectionChanged += new FwSelectionChangedEventHandler(m_bvMatches_SelectionChanged); m_bvMatches.SelectionMade += new FwSelectionChangedEventHandler(m_bvMatches_SelectionMade); m_bvMatches.BrowseView.KeyDown += new KeyEventHandler(BrowseView_KeyDown); this.Controls.Add(m_bvMatches); m_bvMatches.ResumeLayout(); }