Example #1
0
 private void OnRemoveExtension()
 {
     if (!string.IsNullOrEmpty(ComboBoxText) && ExtensionList.Contains(ComboBoxText))
     {
         ExtensionList.Remove(ComboBoxText);
     }
 }
Example #2
0
 private void OnAddExtension()
 {
     if (!string.IsNullOrEmpty(ComboBoxText) && !ExtensionList.Contains(ComboBoxText))
     {
         ExtensionList.Add(ComboBoxText);
     }
 }
Example #3
0
    public override bool IsValid(object value)
    {
        //http://stackoverflow.com/questions/422090/in-c-sharp-check-that-filename-is-possibly-valid-not-that-it-exists
        var fileName = (string)value;

        if (string.IsNullOrEmpty(fileName))
        {
            return(true);
        }                                                         //responsibility of RequiredAttribute
        if (fileName.IndexOfAny(Path.GetInvalidFileNameChars()) > -1 ||
            (!AllowHidden && fileName[0] == '.') ||
            fileName[fileName.Length - 1] == '.')
        {
            return(false);
        }
        FileInfo fi = null;

        try
        {
            fi = new FileInfo(fileName);
        }
        catch (ArgumentException) { }
        catch (PathTooLongException) { }
        catch (NotSupportedException) { }
        return(fi != null &&
               (!RequireExtension || fi.Extension != string.Empty) &&
               (ExtensionList == null || ExtensionList.Contains(fi.Extension)));
    }
Example #4
0
    public override bool IsValid(object value)
    {
        var fileName = (string)value;

        if (string.IsNullOrEmpty(fileName))
        {
            return(true);
        }
        if (fileName.IndexOfAny(Path.GetInvalidFileNameChars()) > -1 ||
            (!AllowHidden && fileName[0] == '.') ||
            fileName[fileName.Length - 1] == '.' ||
            fileName.Length > _maxLength)
        {
            return(false);
        }
        string extension = Path.GetExtension(fileName);

        return((!RequireExtension || extension != string.Empty) &&
               (ExtensionList == null || ExtensionList.Contains(extension)));
    }
    public override bool IsValid(object value)
    {
        //http://stackoverflow.com/questions/422090/in-c-sharp-check-that-filename-is-possibly-valid-not-that-it-exists
        var fileName = (string)value;

        if (string.IsNullOrEmpty(fileName))
        {
            return(true);
        }
        if (fileName.IndexOfAny(Path.GetInvalidFileNameChars()) > -1 ||
            (!AllowHidden && fileName[0] == '.') ||
            fileName[fileName.Length - 1] == '.' ||
            fileName.Length > MaxLength)
        {
            return(false);
        }
        string extension = Path.GetExtension(fileName);

        return((!RequireExtension || extension != string.Empty) &&
               (ExtensionList == null || ExtensionList.Contains(extension)));
    }
Example #6
0
 protected bool IsFlash(string ext)
 {
     return(FlashFileTypes.Contains(ext));
 }
Example #7
0
 protected bool IsVideo(string ext)
 {
     return(VideoFileTypes.Contains(ext));
 }
Example #8
0
 protected bool IsAudio(string ext)
 {
     return(AudioFileTypes.Contains(ext));
 }
Example #9
0
 protected bool IsImage(string ext)
 {
     return(ImageFileTypes.Contains(ext));
 }
Example #10
0
 ///////////////////////////////////////////////////////////////////////
 /// <summary>Checks whether an attribute can be found in the element.
 /// This method looks for an attribute with the exact same name, type
 /// and content.</summary>
 /// <returns>true if the attribute exists</returns>
 ///////////////////////////////////////////////////////////////////////
 public bool Contains(GBaseAttribute value)
 {
     return(extensionElements.Contains(value));
 }
Example #11
0
        /// <summary>
        /// ȡ�ø�Ŀ¼�ļ�����һ��Ŀ¼�������ļ����ļ��С�
        /// </summary>
        /// <param name="userID">��ǰ�û���ID��</param>
        /// <param name="directoryID">���ļ��е�ID��</param>
        /// <param name="directories">������ļ���ʵ��<see cref="DiskDirectory"/>���б��</param>
        /// <param name="files">������ļ�ʵ��<see cref="DiskFile"/>�б��</param>
        /// <param name="totalSize">��ǰ��Ŀ¼���������ļ��Ĵ�С��</param>
        /// <returns>����ɹ�ȡ���򷵻�<c>true</c>,���򷵻�<c>false</c>��</returns>
        public List <IFile> GetDiskFiles(int userID, int directoryID, out DiskDirectoryCollection directories, out DiskFileCollection files, FileOrderBy orderBy, bool isDesc, ExtensionList fileTypes)
        {
            List <IFile> dirAndFiles;
            int          fileTypeKey          = fileTypes == null || fileTypes.Count == 0?0: fileTypes.ToString("").GetHashCode();
            string       cachekeyOfDirectorys = string.Format(cacheKey_directoryList, userID, directoryID);
            string       cacheKeyOfFiles      = string.Format(cacheKey_fileList, userID, directoryID, fileTypeKey);

            if (!CacheUtil.TryGetValue <DiskFileCollection>(cacheKey_fileList, out files) ||
                CacheUtil.TryGetValue <DiskDirectoryCollection>(cachekeyOfDirectorys, out directories))
            {
                DiskDao.Instance.GetDiskFiles(userID, directoryID, out directories, out files);
                CacheUtil.Set <DiskFileCollection>(cacheKeyOfFiles, files);
                CacheUtil.Set <DiskDirectoryCollection>(cachekeyOfDirectorys, directories);
            }

            /*���´������ܺܲ ԭ����3.0��BO������Ӧ�����ܣ� ��ʱ��Ӧ����������ѭ������*/

            string cacheKeyOfAllFiles = string.Format(cacheKey_directoryList, userID, directoryID, orderBy, isDesc);

            if (!CacheUtil.TryGetValue <List <IFile> >(cacheKeyOfAllFiles, out dirAndFiles))
            {
                dirAndFiles = new List <IFile>(directories.Count + files.Count);


                if (orderBy != FileOrderBy.None)
                {
                    DiskFile temp;
                    int      v;
                    for (int i = 0; i < files.Count - 1; i++)
                    {
                        for (int j = i + 1; j < files.Count; j++)
                        {
                            v = CompareFile(files[i], files[j], orderBy);
                            if (isDesc)
                            {
                                if (v > 0)
                                {
                                    temp     = files[i];
                                    files[i] = files[j];
                                    files[j] = temp;
                                }
                            }
                            else
                            {
                                if (v < 0)
                                {
                                    temp     = files[j];
                                    files[j] = files[i];
                                    files[i] = temp;
                                }
                            }
                        }
                    }

                    DiskDirectory tempDir;

                    for (int i = 0; i < directories.Count - 1; i++)
                    {
                        for (int j = i + 1; j < directories.Count; j++)
                        {
                            v = CompareFile(directories[i], directories[j], orderBy);
                            if (isDesc)
                            {
                                if (v > 0)
                                {
                                    tempDir        = directories[i];
                                    directories[i] = directories[j];
                                    directories[j] = tempDir;
                                }
                            }
                            else
                            {
                                if (v < 0)
                                {
                                    tempDir        = directories[j];
                                    directories[j] = directories[i];
                                    directories[i] = tempDir;
                                }
                            }
                        }
                    }
                }

                if (orderBy == FileOrderBy.Type && isDesc == false)
                {
                    foreach (DiskFile file in files)
                    {
                        if (fileTypes != null && fileTypes.Count > 0 && !fileTypes.Contains(file.ExtensionName))
                        {
                            continue;
                        }
                        dirAndFiles.Add(file);
                    }
                    foreach (IFile dir in directories)
                    {
                        dirAndFiles.Add(dir);
                    }
                }
                else
                {
                    foreach (IFile dir in directories)
                    {
                        dirAndFiles.Add(dir);
                    }

                    foreach (DiskFile file in files)
                    {
                        if (fileTypes != null && fileTypes.Count > 0 && !fileTypes.Contains(file.ExtensionName))
                        {
                            continue;
                        }

                        dirAndFiles.Add(file);
                    }
                }

                CacheUtil.RemoveBySearch(string.Format(cacheKey_allFileListRoot, userID, directoryID));
                CacheUtil.Set <List <IFile> >(cacheKeyOfAllFiles, dirAndFiles);
            }
            return(dirAndFiles);
        }
Example #12
0
        //Scan Method
        private void Scan()
        {
            //Enable Analyze Button
            this.Button_Analyze.Enabled = true;

            //Clear Global Files List
            GlobalFilesList.Clear();

            //Set Flag
            RecursiveFlag = false;

            //Init Labels
            this.Label_Selection_Extensions.Text = "Extensions ";
            this.Label_Selection_Files.Text      = "Files ";

            //Scanning
            this.Label_Folder_Files.Text = "Files Scanning...";
            this.Label_Extensions.Text   = "Extensions Scanning...";
            this.Label_Folders.Text      = "Folders 1";
            this.Label_Mode.Text         = "Mode: Scan";

            //Clear CheckList
            this.Checklist_Types.Items.Clear();
            ExtensionList.Clear();

            //Scan
            string[] Files = Directory.GetFiles(SelectedFolderPath);

            //Unique Extensions Added to Extenstion List
            try
            {
                foreach (string File in Files)
                {
                    GlobalFilesList.Add(File);
                    string FileExtension = Path.GetExtension(File);
                    if (ExtensionList.Contains(FileExtension) == false)
                    {
                        ExtensionList.Add(FileExtension);
                    }
                }
            }

            catch { }

            //Add to CheckList
            foreach (string Extension in ExtensionList)
            {
                this.Checklist_Types.Items.Add(Extension);
            }

            //Set Folder Information
            Label_Folder_Files.Text = "Files " + (Files.Count()).ToString();
            Label_Extensions.Text   = "Extensions " + (ExtensionList.Count()).ToString();
            if (RecursiveFlag == false)
            {
                this.Label_Mode.Text = "Mode Non Recursive";
            }
            else
            {
                this.Label_Mode.Text = "Mode Recursive";
            }

            //Enable Remove Button
            this.Label_Remove.Enabled = true;

            //Init Mode
            this.Label_Mode.Text = "Mode ";
        }