Ejemplo n.º 1
0
        /// <summary>
        /// 将PredefinedExt转换成FileExtFilter
        /// </summary>
        /// <param name="extType"></param>
        /// <returns></returns>
        private static FileExtFilter ToFileExtFilter(this PredefinedExt extType)
        {
            if (!PredefinedExtList.ContainsKey(extType))
            {
                return(null);
            }

            return(new FileExtFilter(extType.GetDesc(), PredefinedExtList[extType]));
        }
Ejemplo n.º 2
0
 /// <summary>
 /// 检查当前标志中是否包含目标标志组
 /// </summary>
 /// <param name="self"></param>
 /// <param name="flags">目标标志组</param>
 /// <param name="checkAll">检查全部或任意</param>
 /// <returns></returns>
 public static bool Contains(this PredefinedExt self, PredefinedExt flags, bool checkAll = true)
 {
     if (checkAll)
     {
         return(((uint)self).ContainsAll((uint)flags));
     }
     else
     {
         return(((uint)self).ContainsAny((uint)flags));
     }
 }
Ejemplo n.º 3
0
        /// <summary>
        /// 包含时添加
        /// </summary>
        /// <param name="extFilters"></param>
        /// <param name="extType"></param>
        /// <param name="toCheckExtType"></param>
        private static void CheckAdd(this List <FileExtFilter> extFilters, PredefinedExt extType, PredefinedExt toCheckExtType)
        {
            if (!extType.Contains(toCheckExtType))
            {
                return;
            }

            var extFilter = toCheckExtType.ToFileExtFilter();

            if (null == extFilter)
            {
                return;
            }

            extFilters.Add(extFilter);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 设置文件后缀
        /// </summary>
        /// <param name="extType">预定义的文件后缀类型</param>
        /// <returns></returns>
        public static List <FileExtFilter> SetFileExts(PredefinedExt extType)
        {
            var extFilters = new List <FileExtFilter>();

            extFilters.CheckAdd(extType, PredefinedExt.Image);
            extFilters.CheckAdd(extType, PredefinedExt.Zip);
            extFilters.CheckAdd(extType, PredefinedExt.Rar);
            extFilters.CheckAdd(extType, PredefinedExt.Word);
            extFilters.CheckAdd(extType, PredefinedExt.Word_2003);
            extFilters.CheckAdd(extType, PredefinedExt.Word_2007);
            extFilters.CheckAdd(extType, PredefinedExt.Excel);
            extFilters.CheckAdd(extType, PredefinedExt.Excel_2003);
            extFilters.CheckAdd(extType, PredefinedExt.Excel_2007);
            extFilters.CheckAdd(extType, PredefinedExt.PowerPoint);
            extFilters.CheckAdd(extType, PredefinedExt.PowerPoint_2003);
            extFilters.CheckAdd(extType, PredefinedExt.PowerPoint_2007);

            //“全部”放到最后添加
            extFilters.CheckAdd(extType, PredefinedExt.All);

            return(extFilters);
        }