コード例 #1
0
ファイル: Diretorios.cs プロジェクト: gelsongilmar/codando
 public static void CriarEstruturaPasta(IList <Pasta> pastas, string local, ShowProgresso showProgresso)
 {
     foreach (var pasta in pastas)
     {
         CriarPasta(pasta, local, showProgresso);
     }
 }
コード例 #2
0
 private void CriarArquivoProjeto(Projeto projeto, ShowProgresso showProgresso)
 {
     foreach (var pasta in projeto.Pastas)
     {
         this.CriarArquivosDaPasta(_solucao.GetDiretorioSolucao(), pasta, showProgresso);
     }
 }
コード例 #3
0
ファイル: Gerador.cs プロジェクト: gelsongilmar/codando
        public void Gerar(ShowProgresso showProgresso)
        {
            new GeradorSolution(_solucao).Gerar(showProgresso);
            new GeradorProject(_solucao).Gerar(showProgresso);

            showProgresso("Abrindo " + _solucao.GetCaminhoCompletoSolucao());
            System.Diagnostics.Process.Start((_solucao.GetCaminhoCompletoSolucao()).Replace("\\", "/"));
        }
コード例 #4
0
 public void Gerar(ShowProgresso showProgresso)
 {
     foreach (var projeto in _solucao.Projetos)
     {
         this.CriarEstruturaProjeto(projeto, showProgresso);
         this.CriarArquivoProjeto(projeto, showProgresso);
     }
 }
コード例 #5
0
ファイル: Diretorios.cs プロジェクト: gelsongilmar/codando
 private static void SalvarArquivo(ShowProgresso showProgresso, string pathArquivo, string conteudo)
 {
     using (var sw = new StreamWriter(pathArquivo, false))
     {
         sw.WriteLine(conteudo);
     }
     showProgresso("Arquivo " + pathArquivo + " gerado.");
 }
コード例 #6
0
ファイル: Diretorios.cs プロジェクト: gelsongilmar/codando
 public static void CriarPastaSeNaoExiste(string folder, ShowProgresso showProgresso)
 {
     if (!System.IO.Directory.Exists(folder))
     {
         System.IO.Directory.CreateDirectory(folder);
         showProgresso("Diretório " + folder + " gerado");
     }
 }
コード例 #7
0
        private void CriarArquivosDaPasta(String local, Pasta pasta, ShowProgresso showProgresso)
        {
            var localCompleto = local + "\\" + pasta.Nome;

            foreach (var subPasta in pasta.SubPastas)
            {
                CriarArquivosDaPasta(localCompleto, subPasta, showProgresso);
            }

            Diretorios.CriarArquivos(pasta.Arquivos, localCompleto, showProgresso);
        }
コード例 #8
0
ファイル: Diretorios.cs プロジェクト: gelsongilmar/codando
        private static void GerarArquivoRegeravel(string local, ShowProgresso showProgresso, Arquivo arquivo)
        {
            var pathArquivo = local + "\\" + arquivo.GetNomeParaSalvarRegeravel();
            var conteudo    = arquivo.GetConteudoRegerado();

            if (conteudo.Trim() != "")
            {
                arquivo.GerouConteudoRegerado = true;
                SalvarArquivo(showProgresso, pathArquivo, conteudo);
            }
        }
コード例 #9
0
ファイル: Diretorios.cs プロジェクト: gelsongilmar/codando
        public static void CriarPasta(Pasta pasta, string local, ShowProgresso showProgresso)
        {
            var localCompleto = $"{local}\\{pasta.Nome}";

            CriarPastaSeNaoExiste(localCompleto, showProgresso);

            foreach (var subPasta in pasta.SubPastas)
            {
                CriarPasta(subPasta, localCompleto, showProgresso);
            }
        }
コード例 #10
0
ファイル: Diretorios.cs プロジェクト: gelsongilmar/codando
        private static void GerarArquivoNaoRegeravel(string local, ShowProgresso showProgresso, Arquivo arquivo)
        {
            var pathArquivo = local + "\\" + arquivo.GetNomeParaSalvarGeradoUmaVEz();
            var conteudo    = arquivo.GetConteudoGeradoApenasUmaVez();

            if (conteudo.Trim() != "")
            {
                arquivo.GerouConteudoGeradoApenasUmaVez = true;
                if (!File.Exists(pathArquivo))
                {
                    SalvarArquivo(showProgresso, pathArquivo, conteudo);
                }
            }
        }
コード例 #11
0
        public void Gerar(ShowProgresso showProgresso)
        {
            var _str = new StringBuilder();

            _str.AppendLine("");
            _str.AppendLine("Microsoft Visual Studio Solution File, Format Version 12.00");
            _str.AppendLine("# Visual Studio Version 16");
            _str.AppendLine("VisualStudioVersion = 16.0.30002.166");
            _str.AppendLine("MinimumVisualStudioVersion = 10.0.40219.1");

            foreach (Projeto proj in _solucao.Projetos)
            {
                _str.AppendLine("Project(\"{" + proj.GuIdTipoProjeto + "}\") = \"" + proj.NomeProjeto + "\", \"" + proj.NomeProjeto + "\\" + proj.NomeProjeto + proj.ExtensaoProjeto + "\", \"{" + proj.GuIdProjeto + "}\"");
                _str.AppendLine("EndProject");
            }

            _str.AppendLine("Global");
            _str.AppendLine("	GlobalSection(SolutionConfigurationPlatforms) = preSolution");
            _str.AppendLine("		Debug|Any CPU = Debug|Any CPU");
            _str.AppendLine("		Release|Any CPU = Release|Any CPU");
            _str.AppendLine("	EndGlobalSection");
            _str.AppendLine("	GlobalSection(ProjectConfigurationPlatforms) = postSolution");

            foreach (Projeto proj in _solucao.Projetos)
            {
                _str.AppendLine("		{"+ proj.GuIdProjeto + "}.Debug|Any CPU.ActiveCfg = Debug|Any CPU");
                _str.AppendLine("		{"+ proj.GuIdProjeto + "}.Debug|Any CPU.Build.0 = Debug|Any CPU");
                _str.AppendLine("		{"+ proj.GuIdProjeto + "}.Release|Any CPU.ActiveCfg = Release|Any CPU");
                _str.AppendLine("		{"+ proj.GuIdProjeto + "}.Release|Any CPU.Build.0 = Release|Any CPU");
            }

            _str.AppendLine("	EndGlobalSection");
            _str.AppendLine("	GlobalSection(SolutionProperties) = preSolution");
            _str.AppendLine("		HideSolutionNode = FALSE");
            _str.AppendLine("	EndGlobalSection");
            _str.AppendLine("	GlobalSection(ExtensibilityGlobals) = postSolution");
            _str.AppendLine("		SolutionGuid = {7FCB79FD-6ADE-4BA0-849D-53B4718D1052}");
            _str.AppendLine("	EndGlobalSection");
            _str.AppendLine("EndGlobal");
            _str.AppendLine("");

            using (var sw = new StreamWriter(_solucao.GetCaminhoCompletoSolucao(), false))
            {
                sw.WriteLine(_str.ToString());
            }
            showProgresso("Arquivo gerado " + _solucao.GetCaminhoCompletoSolucao());
        }
コード例 #12
0
 private void CriarEstruturaProjeto(Projeto projeto, ShowProgresso showProgresso)
 {
     Diretorios.CriarEstruturaPasta(projeto.Pastas, _solucao.GetDiretorioSolucao(), showProgresso);
 }
コード例 #13
0
ファイル: Diretorios.cs プロジェクト: gelsongilmar/codando
 public static void CriarArquivos(IReadOnlyCollection <Arquivo> arquivos, string local, ShowProgresso showProgresso)
 {
     foreach (var arquivo in arquivos)
     {
         if (arquivo.UsarArquivoSeparadoParaRegerar)
         {
             GerarArquivoRegeravel(local, showProgresso, arquivo);
             GerarArquivoNaoRegeravel(local, showProgresso, arquivo);
         }
         else
         {
             GerarArquivoNaoRegeravel(local, showProgresso, arquivo);
             GerarArquivoRegeravel(local, showProgresso, arquivo);
         }
     }
 }