Esempio n. 1
0
        public void FillListView()
        {
            listView1.Items.Clear();

            m_currentDirListing.dirNames.Sort();
            m_currentDirListing.fileNames.Sort();

            m_dirs.Clear();
            m_files.Clear();

            for (int i = 0; i < m_currentDirListing.dirNames.Count; i++)
            {
                ListViewItem lvi     = new ListViewItem();
                string       dirName = m_currentDirListing.dirNames[i];
                lvi.Text = dirName;
                // closed folder icon
                lvi.ImageIndex = 0;
                listView1.Items.Add(lvi);
                m_dirs.Add(dirName);
            }

            if (m_openMode && m_folderMode)
            {
                return;
            }

            List <string> currentFilterExtensions = m_fileExtensionList[m_currentFilterIndex];

            if (currentFilterExtensions.Count == 0)
            {
                return;
            }

            int currentFileIconIndex = 0;

            for (int i = 0; i < m_currentDirListing.fileNames.Count; i++)
            {
                FilePath currentFile      = new FilePath(m_currentDirListing.fileNames[i], PathFormat.Unix);
                string   currentExtension = currentFile.Extension;

                if (currentFilterExtensions[0] == "*.*" ||
                    currentFilterExtensions.IndexOf(currentExtension.ToLower()) != -1)
                {
                    string filename = currentFile.FullName;
                    m_files.Add(filename);
                    currentFileIconIndex = m_iconManager.GetFileIcon("." + currentExtension);

                    ListViewItem lvi = new ListViewItem();
                    lvi.Text       = filename;
                    lvi.ImageIndex = currentFileIconIndex;
                    listView1.Items.Add(lvi);
                }
            }
        }