def ImportarDiretorios(self, listaCaminho, bSubDiretorio, frmImportarDiretorio): sRotuloRaiz = RotuloRaiz() importar = Importar() nAba = self.getAbaAtual().Codigo nCodDirRaiz = DiretorioBO.Instancia.retMaxCodDir(nAba, self._listaDiretorioPai) enumerator = listaCaminho.GetEnumerator() while enumerator.MoveNext(): sCaminho = enumerator.Current nRotuloRaiz = self.verificaNomeDiretorio(sCaminho, sRotuloRaiz) if nRotuloRaiz > 0: importar = Importar() importar.Aba = nAba importar.CodDirRaiz = nCodDirRaiz importar.RotuloRaiz = sRotuloRaiz.Rotulo if nRotuloRaiz == 1: importar.NomeDirRaiz = sRotuloRaiz.Rotulo elif nRotuloRaiz == 2: sCaminhoSemDrive = DiretorioBO.Instancia.removerDrive(sCaminho) importar.NomeDirRaiz = Rotinas.SubString(sCaminhoSemDrive, 1, Rotinas.LastDelimiter(Rotinas.BARRA_INVERTIDA, sCaminhoSemDrive) - 1) elif nRotuloRaiz == 3: importar.NomeDirRaiz = "" importar.Caminho = sCaminho frmImportarDiretorio.listaImportar.Add(importar) nCodDirRaiz += 1 frmImportarDiretorio.bSubDiretorio = bSubDiretorio if bSubDiretorio: frmImportarDiretorio.ShowDialog() return True else: if not DiretorioBO.Instancia.verificaCodDir(importar.Aba, importar.RotuloRaiz, self._listaDiretorioPai): frmImportarDiretorio.ShowDialog() return True else: Dialogo.mensagemErro("Este diretório já existe no catálogo!") return False
def iniciarSistema(): sBanco = Rotinas().ExtractFilePath(Application.ExecutablePath) + Path.DirectorySeparatorChar + "GuardaDir.db" cp = ConexaoParams() cp.Nome = sBanco if not Rotinas.FileExists(sBanco): Rotinas.Conectar(cp) AbaBO.Instancia.criarTabelaAbas() aba = Aba(1, "DISCO1", 0) AbaBO.Instancia.incluirAba(aba) ExtensaoBO.Instancia.criarTabelaExtensoes() DiretorioBO.Instancia.criarTabelaDiretorios() VisaoDAO.Instancia.criarVisao("consultadirpai") VisaoDAO.Instancia.criarVisao("consultadirfilho") VisaoDAO.Instancia.criarVisao("consultaarquivo") else: Rotinas.Conectar(cp)
def AlterarNomeAbaAtiva(self, pLog): aba = self.getAbaAtual() sAba = Dialogo.entrada("Digite o Novo Nome da Aba Ativa?", aba.Nome) if (sAba != None) and (sAba.Trim().Length > 0): aba.Nome = Rotinas.SubString(sAba, 1, 10) AbaBO.Instancia.alterarAba(aba) self._form.tabControl1.SelectedTab.Text = sAba self.CarregarDados(pLog, False, True)
def verificaNomeDiretorio(self, sCaminho, sRotuloRaiz): sRotuloRaiz.Rotulo = DiretorioBO.Instancia.removerDrive(sCaminho) if sRotuloRaiz.Rotulo.Length == 0: sRotuloRaiz.Rotulo = Dialogo.entrada("Este diretório não possui um nome.\nDigite o nome do diretório!") if (sRotuloRaiz.Rotulo != None) and (sRotuloRaiz.Rotulo.Trim().Length > 0): sRotuloRaiz.Rotulo = sRotuloRaiz.Rotulo.Trim() if sRotuloRaiz.Rotulo.Length > 0: return 1 else: Dialogo.mensagemInfo("Nenhum nome de diretório informado!") return 0 else: return 0 elif Rotinas.Pos(Rotinas.BARRA_INVERTIDA, sRotuloRaiz.Rotulo) > 0: sRotuloRaiz.Rotulo = Rotinas.SubString(sRotuloRaiz.Rotulo, Rotinas.LastDelimiter(Rotinas.BARRA_INVERTIDA, sRotuloRaiz.Rotulo) + 1, sRotuloRaiz.Rotulo.Length) return 2 else: return 3
def IncluirNovaAba(self): sAba = Dialogo.entrada("Digite o Nome da Nova Aba?") if (sAba != None) and (sAba.Trim().Length > 0): aba = Aba() aba.Codigo = AbaBO.Instancia.retMaxCodAba(self._listaAbas) aba.Nome = Rotinas.SubString(sAba, 1, 10) aba.Ordem = self._listaAbas.Count + 1 AbaBO.Instancia.incluirAba(aba) self.IncluirNovaAba(aba.Nome) self._listaAbas.Add(aba)
def TamTotalDiretorio(self, sCaminho): conta = 0 soma = 0 enumerator = listaArquivos.GetEnumerator() while enumerator.MoveNext(): diretorio = enumerator.Current nAba = self.getAbaAtual().Codigo if diretorio.Aba.Codigo == nAba: if diretorio.Tipo.Codigo != 'D': if sCaminho.Trim().Length > 0: if Rotinas.StartsStr(sCaminho, diretorio.Caminho): conta += 1 tam = diretorio.Tamanho soma = soma + tam else: conta += 1 tam = diretorio.Tamanho soma = soma + tam self._form.barraStatus.Items[0].Text = "Quantidade Total: " + Rotinas.FormatLong("0000", conta) + ", Tamanho Total: " + DiretorioBO.Instancia.MontaTamanho(soma)
def LerArvoreDiretorio(self, node, barraStatus): sCaminho = node.Text NodeAnterior = node.Parent while NodeAnterior != None: if Rotinas.SubString(NodeAnterior.Text, NodeAnterior.Text.Length, 1) == Rotinas.BARRA_INVERTIDA: sSep = "" else: sSep = Rotinas.BARRA_INVERTIDA sCaminho = NodeAnterior.Text + sSep + sCaminho NodeAnterior = NodeAnterior.Parent self._form.barraStatus.Items[1].Text = sCaminho
def CarregarArquivosLista(self, bLista1, lvArquivos, sCaminho): listaLocal = List[Diretorio]() lvArquivos.Items.Clear() if bLista1: sPaiCaminho = sCaminho if not Rotinas.SubString(sCaminho, sCaminho.Length, 1).Equals(Rotinas.BARRA_INVERTIDA): sCaminho = sCaminho + Rotinas.BARRA_INVERTIDA nAba = self.getAbaAtual().Codigo enumerator = listaArquivos.GetEnumerator() while enumerator.MoveNext(): diretorio = enumerator.Current if diretorio.Aba.Codigo == nAba: if diretorio.CaminhoPai.Equals(sPaiCaminho): if Rotinas.StartsStr(sCaminho, diretorio.Caminho): listaLocal.Add(diretorio) else: enumerator = listaArquivos.GetEnumerator() while enumerator.MoveNext(): diretorio = enumerator.Current if Rotinas.ContainsStr(diretorio.Caminho.ToUpper(), sCaminho.ToUpper()): listaLocal.Add(diretorio) Tabela.Instancia.Carregar(bLista1, lvArquivos, listaLocal, self._listaExtensoes, self._form.pb.ProgressBar)
def ExportarArquivo(self, tipo, pLog): sExtensao = "" if tipo == TipoExportar.teTXT: sExtensao = "txt" elif tipo == TipoExportar.teCSV: sExtensao = "csv" elif tipo == TipoExportar.teHTML: sExtensao = "html" elif tipo == TipoExportar.teXML: sExtensao = "xml" elif tipo == TipoExportar.teSQL: sExtensao = "sql" aba = self.getAbaAtual() self._form.sdExportar.InitialDirectory = Rotinas.ExtractFilePath(Application.ExecutablePath) self._form.sdExportar.FileName = aba.Nome + '.' + sExtensao self._form.sdExportar.Filter = Rotinas.FILTRO_EXPORTAR retval = self._form.sdExportar.ShowDialog() if retval == DialogResult.OK: arquivo = FileInfo(self._form.sdExportar.FileName) if not arquivo.Exists: self._form.Cursor = Cursors.WaitCursor DiretorioBO.Instancia.exportarDiretorio(tipo, self.getAbaAtual(), arquivo.FullName, pLog) self._form.Cursor = Cursors.Default Dialogo.mensagemErro("Exportação realizada com sucesso!")
def testaSeparadorArquivo(self, sDir): sDir = Rotinas.SubString(sDir, sDir.Length, 1) if sDir.Equals(Rotinas.BARRA_INVERTIDA) or sDir.Equals(Rotinas.BARRA_NORMAL) or sDir.Equals(Rotinas.BARRA_INVERTIDA): return True else: return False