Exemple #1
0
        public void ImportarDiretorio(int nAba, int nCodDirRaiz,
                                      string sNomeDirRaiz, string sDiretorio, List <Diretorio> listaLocal,
                                      DiretorioOrdem dirOrdem, IProgressoLog progressoLog)
        {
            FileInfo dirPesquisado;
            string   sCaminho, sSeparador;

            if (Rotinas.SubString(sDiretorio,
                                  sDiretorio.Length, 1).Equals(Path.DirectorySeparatorChar))
            {
                sSeparador = "";
            }
            else
            {
                sSeparador = Path.DirectorySeparatorChar.ToString();
            }

            sCaminho = sDiretorio + sSeparador;

            dirPesquisado = new FileInfo(sCaminho);
            if (dirPesquisado.Directory.Exists)
            {
                foreach (FileInfo dirPesquisado2 in Rotinas.listFiles(dirPesquisado.FullName))
                {
                    sCaminho = sDiretorio + sSeparador + dirPesquisado2.Name;
                    atribuiListaDiretorio(nAba, nCodDirRaiz, sNomeDirRaiz,
                                          sCaminho, listaLocal, dirPesquisado2, dirOrdem,
                                          progressoLog);
                }
            }
        }
Exemple #2
0
        public Catalogador(FrmPrincipal form)
        {
            this.form = form;

            diretorioOrdem = new DiretorioOrdem();

            listaAbas           = new List <Aba>();
            listaExtensoes      = new List <Extensao>();
            listaDiretorioPai   = new List <Diretorio>();
            listaDiretorioFilho = new List <Diretorio>();
            listaArquivos       = new List <Diretorio>();

            form.SPPesquisa.Child2.Visible = false;

            form.GdkWindow.Cursor = new Gdk.Cursor(Gdk.CursorType.Watch);
            FrmSplash          frmSplash          = new FrmSplash();
            FrmSplashProgresso frmSplashProgresso = new FrmSplashProgresso(frmSplash);

            frmSplash.Show();

            CarregarDados(frmSplashProgresso, true, true);
            CarregarAbas();
            tabPanelMudou();

            frmSplash.Hide();
            frmSplash.Destroy();

            form.GdkWindow.Cursor = new Gdk.Cursor(Gdk.CursorType.Arrow);
        }
        public void CarregarListaDiretorios(Importar importar,
                                            DiretorioOrdem dirOrdem, List <Diretorio> listaDiretorio,
                                            IProgressoLog progressoLog)
        {
            Arquivo   arquivo;
            Diretorio diretorio;
            Progresso pb = new Progresso();

            arquivo            = new Arquivo();
            arquivo.Nome       = importar.RotuloRaiz;
            arquivo.Tamanho    = 0;
            arquivo.Modificado = DateTime.Now;
            arquivo.Atributos  = "[DIR]";

            diretorio = DiretorioBO.Instancia.atribuiDiretorio(
                importar.Aba, importar.CodDirRaiz,
                importar.NomeDirRaiz, "", true, listaDiretorio,
                arquivo, dirOrdem);

            listaDiretorio.Add(diretorio);
            pb.Log = importar.Caminho;

            DiretorioBO.Instancia.ImportarDiretorio(importar.Aba,
                                                    importar.CodDirRaiz, importar.NomeDirRaiz,
                                                    importar.Caminho, listaDiretorio, dirOrdem, progressoLog);

            if (progressoLog != null)
            {
                progressoLog.ProgressoLog(pb);
            }
        }
        public Catalogador(FrmPrincipal form)
        {
            this.form = form;

            diretorioOrdem = new DiretorioOrdem();

            listaAbas           = new List <Aba>();
            listaExtensoes      = new List <Extensao>();
            listaDiretorioPai   = new List <Diretorio>();
            listaDiretorioFilho = new List <Diretorio>();
            listaArquivos       = new List <Diretorio>();

            form.spPesquisa.Panel2Collapsed = true;

            form.Cursor = Cursors.WaitCursor;
            FrmSplash          frmSplash          = new FrmSplash();
            FrmSplashProgresso frmSplashProgresso = new FrmSplashProgresso(frmSplash);

            frmSplash.Show();
            frmSplash.Update();
            CarregarDados(frmSplashProgresso, true, true);
            CarregarAbas();
            tabPanelMudou();

            frmSplash.Close();
            frmSplash.Dispose();

            form.Cursor = Cursors.Default;
        }
Exemple #5
0
        public void atribuiListaDiretorio(int nAba, int nCodDirRaiz,
                                          string sNomeDirRaiz, string sDiretorio, List <Diretorio> listaLocal,
                                          FileInfo dirPesquisado, DiretorioOrdem dirOrdem, IProgressoLog progressoLog)
        {
            Diretorio diretorio;
            Progresso pb = new Progresso();

            if (Rotinas.FileExists(sDiretorio))
            {
                diretorio = atribuiDiretorio(nAba, nCodDirRaiz, sNomeDirRaiz,
                                             sDiretorio, false, listaLocal, dirPesquisadoToArquivo(dirPesquisado),
                                             dirOrdem);
                listaLocal.Add(diretorio);

                if (progressoLog != null)
                {
                    pb.Log = sDiretorio;
                    progressoLog.ProgressoLog(pb);
                }
            }
            else if (Rotinas.DirectoryExists(sDiretorio))
            {
                if ((!dirPesquisado.Name.Equals(".")) && (!dirPesquisado.Name.Equals("..")))
                {
                    diretorio = atribuiDiretorio(nAba, nCodDirRaiz, sNomeDirRaiz,
                                                 sDiretorio, true, listaLocal, dirPesquisadoToArquivo(dirPesquisado),
                                                 dirOrdem);
                    listaLocal.Add(diretorio);

                    if (progressoLog != null)
                    {
                        pb.Log = sDiretorio;
                        progressoLog.ProgressoLog(pb);
                    }

                    ImportarDiretorio(nAba, nCodDirRaiz, sNomeDirRaiz, sDiretorio,
                                      listaLocal, dirOrdem, progressoLog);
                }
            }
        }
        public void ImportacaoCompleta(Importar importar, DiretorioOrdem dirOrdem,
                                       List <Extensao> listaExtensao,
                                       IProgressoLog progressoLog)
        {
            List <Diretorio> listaDiretorio = new List <Diretorio>();

            try {
                CarregarListaDiretorios(importar, dirOrdem, listaDiretorio, progressoLog);

                /*
                 * //Por ser multiplataforma nao tem funcao para pegar icone de arquivo
                 * ExtensaoBO.Instancia.salvarExtensoes(listaDiretorio,
                 *      listaExtensao, progressoLog);
                 */
                DiretorioBO.Instancia.salvarDiretorio(listaDiretorio,
                                                      progressoLog);

                listaDiretorio.Clear();
            } catch (Exception) {
                throw;
            }
        }
Exemple #7
0
        public Diretorio atribuiDiretorio(int nAba, int nCodDirRaiz,
                                          string sNomeDirRaiz, string sDiretorio, bool bDiretorio,
                                          List <Diretorio> listaLocal, Arquivo arquivo,
                                          DiretorioOrdem dirOrdem)
        {
            int       nOrdem = dirOrdem.Ordem;
            Diretorio diretorio;
            string    sCaminho, sDir;
            FileInfo  fCaminho = null;

            sCaminho = removerDrive(sDiretorio);
            if (sDiretorio.Length > 0)
            {
                fCaminho = new FileInfo(sDiretorio);
            }

            if ((sCaminho.Length > 0) && (sNomeDirRaiz.Length > 0))
            {
                if (Rotinas.StartsStr(sNomeDirRaiz, sCaminho))
                {
                    sCaminho = Rotinas.SubString(sCaminho, sNomeDirRaiz.Length + 2,
                                                 sCaminho.Length);
                    sDir = Rotinas.SubString(sDiretorio, sNomeDirRaiz.Length + 2,
                                             sDiretorio.Length);
                    fCaminho = new FileInfo(sDir);
                }
                else
                {
                    sCaminho = sNomeDirRaiz + Rotinas.BARRA_INVERTIDA + sCaminho;
                    sDir     = sNomeDirRaiz + Rotinas.BARRA_INVERTIDA + sDiretorio;
                    fCaminho = new FileInfo(sDir);
                }
            }

            diretorio = new Diretorio();
            Aba  abaLocal  = new Aba();
            Tipo tipoLocal = new Tipo();

            abaLocal.Codigo      = nAba;
            diretorio.Codigo     = nCodDirRaiz;
            diretorio.Ordem      = nOrdem;
            diretorio.Nome       = arquivo.Nome;
            diretorio.Tamanho    = arquivo.Tamanho;
            diretorio.Modificado = arquivo.Modificado;
            diretorio.Atributos  = arquivoAtributos(fCaminho, bDiretorio);

            if (sDiretorio.Length == 0)
            {
                diretorio.Caminho    = arquivo.Nome;
                diretorio.CaminhoPai = "";
            }
            else
            {
                diretorio.Caminho    = sCaminho;
                diretorio.CaminhoPai = Rotinas.SubString(diretorio.Caminho, 1,
                                                         Rotinas.LastDelimiter(Rotinas.BARRA_INVERTIDA,
                                                                               diretorio.Caminho) - 1);
            }

            if (bDiretorio)
            {
                tipoLocal.Codigo = 'D';
                if (nOrdem == 1)
                {
                    diretorio.CodDirPai = 0;
                }
                else
                {
                    diretorio.CodDirPai = retCodDirPai(abaLocal.Codigo,
                                                       diretorio.CaminhoPai, listaLocal);
                }
            }
            else
            {
                tipoLocal.Codigo    = 'A';
                diretorio.CodDirPai = retCodDirPai(abaLocal.Codigo,
                                                   diretorio.CaminhoPai, listaLocal);
            }
            abaLocal.Nome              = "";
            diretorio.Aba              = abaLocal;
            diretorio.NomePai          = "";
            diretorio.TamanhoFormatado = MontaTamanho(diretorio.Tamanho);
            if (tipoLocal.Codigo == 'D')
            {
                tipoLocal.Nome = "Diretório";
            }
            else
            {
                tipoLocal.Nome = "Arquivo";
            }
            diretorio.Tipo = tipoLocal;
            diretorio.ModificadoFormatado = Rotinas.formataDate(
                Rotinas.FORMATO_DATAHORA, diretorio.Modificado);
            diretorio.CaminhoOriginal = sDiretorio;

            nOrdem++;

            dirOrdem.Ordem = nOrdem;

            return(diretorio);
        }