예제 #1
0
        /// <summary>
        /// inicializa o léxico
        /// </summary>
        /// <param name="dados"></param>
        ///  public Lexico(string dados, ref List<Token> tokens)
        public Lexico(string dados)
        {
            this.caminho = dados;
            this.linha = 1;
            this.coluna = 0;

            //this.tokens = tokens;
            this.token = new Token();
            this.arquivo = new Arquivo();

        }
예제 #2
0
        private void SalvarCodigoFonte(string conteudo)
        {
            Arquivo arquivoFonte = new Arquivo();

            //obtem a pasta de documentos do usuário ativo
            string caminho = Environment.GetFolderPath(Environment.SpecialFolder.Personal);

            //cria pasta e o arquivo para armazenar o codigo fonte
            string novoCaminho = arquivoFonte.CriarArquivoAssembly(caminho, Path.GetFileNameWithoutExtension(arquivoCompilado));

            //abre o arquivo no modo escrita
            arquivoFonte.AbrirModoEscrita(novoCaminho);

            arquivoFonte.EscreverTodoConteudo(conteudo);

            arquivoFonte.FechaArquivo();
        }
        /// <summary>
        /// Método usado para realizar a abertura do arquivo quando é realizado um MouseLeftButtonDown
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void AbrirArquivoMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            //cria a caixa de diálogo para abertura do arquivo fonte
            OpenFileDialog dialog = new OpenFileDialog();
            dialog.DefaultExt = "*.lpd";
            dialog.Filter = "Arquivos LPD (*.lpd)|*.lpd| Todos os arquivos (*.*)|*.*";

            //exibe a caixa de dialogo
            DialogResult result = dialog.ShowDialog();

            if (result.ToString() == "OK")
            {
                ResetarComponentes();

                //obtem diretório do arquivo
                caminhoArquivo = dialog.FileName;

                //mostra na aba o arquivo selecionado
                ((TabItem)tabComandos.Items[0]).Header = System.IO.Path.GetFileName(dialog.FileName);

                //carrega todo o arquivo
                Arquivo arquivo = new Arquivo();
                arquivo.AbrirModoLeitura(caminhoArquivo);
                textBoxComandos.Text = arquivo.LerTodoConteudo();
                arquivo.FechaArquivo();

                //exibe componentes
                image_fundo.Visibility = Visibility.Collapsed;
                label1.Visibility = Visibility.Collapsed;
                label2.Visibility = Visibility.Collapsed;
                tabComandos.Visibility = Visibility.Visible;

                //habilita funcionalidade de compilar
                HabilitarCompilarArquivo();

            }

        }
        /// <summary>
        /// método utilizado para o armazenamento físico do arquivo para poder ser executado
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void SalvarArquivoMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            Arquivo arquivo = new Arquivo();

            // entra nessa condição quando ocorrer a edição de um novo arquivo
            if (caminhoArquivo == "")
            {
                //cria uma caixa de dialogo
                SaveFileDialog arquivoDialog = new SaveFileDialog();
                arquivoDialog.FileName = ((TabItem)tabComandos.Items[0]).Header.ToString(); //preenche com o nome do arquivo sugerido
                arquivoDialog.DefaultExt = "*.lpd";
                arquivoDialog.Filter = "Arquivos LPD (*.lpd)|*.lpd| Todos os arquivos (*.*)|*.*";

                //Exibe a caixa de dialogo e verifica se o processo de salvamento foi confirmado
                if (arquivoDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK && arquivoDialog.FileName.Length > 0)
                {
                    //obtem o caminho do arquivo a ser salvo
                    caminhoArquivo = arquivoDialog.FileName;

                    // salva o arquivo no caminho escolhido pelo o usuário
                    arquivo.AbrirModoEscrita(arquivoDialog.FileName);
                    arquivo.EscreverTodoConteudo(textBoxComandos.Text);
                    arquivo.FechaArquivo();
                    
                    //mostra na aba o arquivo selecionado
                    ((TabItem)tabComandos.Items[0]).Header = System.IO.Path.GetFileName(caminhoArquivo);

                    //desabilita o salvar arquivo()
                    DesabilitarSalvarArquivo();

                    //habilita componentes para compilação
                    HabilitarCompilarArquivo();
                }
            }
            else
            { // entra neste caso, somente quando é a edição de um arquivo carregado

                // salva o arquivo no caminho escolhido pelo o usuário
                // salva o arquivo no caminho escolhido pelo o usuário
                arquivo.AbrirModoEscrita(caminhoArquivo);
                arquivo.EscreverTodoConteudo(textBoxComandos.Text);
                arquivo.FechaArquivo();

                //desabilita o salvar arquivo()
                DesabilitarSalvarArquivo();

                //habilita componentes para compilação
                HabilitarCompilarArquivo();
            }
        }