Пример #1
0
 /// ------------------------------------------------------------------------------------
 /// <summary>
 /// Initializes a new instance of the <see cref="FilteredSequenceHandler"/> class.
 /// </summary>
 /// <param name="cache">The FDO cache</param>
 /// <param name="owningClassId">The ID of the class which will own this virtual
 /// property</param>
 /// <param name="filterInstance">Number used to make filters unique for each main
 /// window</param>
 /// <param name="filter">A CmFilter that specifies the details of how to filter the
 /// notes (can be null)</param>
 /// <param name="sortMethod">TODO (TE-3941): use this. A CmSortSpec that specifies the
 /// details of how to sort the notes (can be null)</param>
 /// <param name="flidProvider">The method that provides the flid that is used to
 /// retrieve all records.</param>
 /// ------------------------------------------------------------------------------------
 public FilteredSequenceHandler(FdoCache cache, int owningClassId, int filterInstance,
                                IFilter filter, ISortSpec sortMethod, IFlidProvider flidProvider)
 {
     m_cache        = cache;
     m_filter       = filter;
     m_flidProvider = flidProvider;
     if (m_filter != null)
     {
         m_filter.InitCriteria();
     }
     m_sortMethod     = sortMethod;
     ClassName        = m_cache.GetClassName((uint)owningClassId);
     FieldName        = GetVirtualPropertyName(filter, sortMethod, filterInstance);
     Type             = (int)CellarModuleDefns.kcptReferenceSequence;
     ComputeEveryTime = false;
     cache.InstallVirtualProperty(this);
 }
Пример #2
0
 /// ------------------------------------------------------------------------------------
 /// <summary>
 /// Gets the name of the virtual property.
 /// </summary>
 /// <param name="filter">The filter (can be null).</param>
 /// <param name="sortMethod">TODO (TE-3941): use this
 /// The sort method (can be null).</param>
 /// <param name="filterInstance">The filter instance.</param>
 /// ------------------------------------------------------------------------------------
 private static string GetVirtualPropertyName(IFilter filter, ISortSpec sortMethod,
                                              int filterInstance)
 {
     return(((filter == null || string.IsNullOrEmpty(filter.Name)) ?
             "NoFilter" : filter.Name) + "_" + filterInstance);
 }
Пример #3
0
		/// ------------------------------------------------------------------------------------
		/// <summary>
		/// Gets the name of the virtual property.
		/// </summary>
		/// <param name="filter">The filter (can be null).</param>
		/// <param name="sortMethod">TODO (TE-3941): use this
		/// The sort method (can be null).</param>
		/// <param name="filterInstance">The filter instance.</param>
		/// ------------------------------------------------------------------------------------
		private static string GetVirtualPropertyName(IFilter filter, ISortSpec sortMethod,
			int filterInstance)
		{
			return ((filter == null || string.IsNullOrEmpty(filter.Name)) ?
				"NoFilter" : filter.Name) + "_" + filterInstance;
		}
Пример #4
0
		/// ------------------------------------------------------------------------------------
		/// <summary>
		/// Initializes a new instance of the <see cref="FilteredSequenceHandler"/> class.
		/// </summary>
		/// <param name="cache">The FDO cache</param>
		/// <param name="owningClassId">The ID of the class which will own this virtual
		/// property</param>
		/// <param name="filterInstance">Number used to make filters unique for each main
		/// window</param>
		/// <param name="filter">A CmFilter that specifies the details of how to filter the
		/// notes (can be null)</param>
		/// <param name="sortMethod">TODO (TE-3941): use this. A CmSortSpec that specifies the
		/// details of how to sort the notes (can be null)</param>
		/// <param name="flidProvider">The method that provides the flid that is used to
		/// retrieve all records.</param>
		/// ------------------------------------------------------------------------------------
		public FilteredSequenceHandler(FdoCache cache, int owningClassId, int filterInstance,
			IFilter filter, ISortSpec sortMethod, IFlidProvider flidProvider)
		{
			m_cache = cache;
			m_filter = filter;
			m_flidProvider = flidProvider;
			if (m_filter != null)
				m_filter.InitCriteria();
			m_sortMethod = sortMethod;
			ClassName = m_cache.GetClassName((uint)owningClassId);
			FieldName = GetVirtualPropertyName(filter, sortMethod, filterInstance);
			Type = (int) CellarModuleDefns.kcptReferenceSequence;
			ComputeEveryTime = false;
			cache.InstallVirtualProperty(this);
		}