diff --git a/ide/src/main/java/br/univali/ps/nucleo/Configuracoes.java b/ide/src/main/java/br/univali/ps/nucleo/Configuracoes.java index 8d45dcc9c..1b3d112b4 100644 --- a/ide/src/main/java/br/univali/ps/nucleo/Configuracoes.java +++ b/ide/src/main/java/br/univali/ps/nucleo/Configuracoes.java @@ -1,5 +1,6 @@ package br.univali.ps.nucleo; +import br.univali.ps.ui.swing.weblaf.jOptionPane.QuestionDialog; import br.univali.ps.ui.telas.TelaPrincipal; import java.beans.PropertyChangeListener; import java.beans.PropertyChangeSupport; @@ -355,7 +356,7 @@ public void restartApplication() } else { - JOptionPane.showMessageDialog(telaPrincipal, "Você deve fechar todas as abas de código antes de reiniciar", "Portugol Studio", JOptionPane.INFORMATION_MESSAGE); + QuestionDialog.getInstance().showMessage("Você deve fechar todas as abas de código antes de reiniciar"); if(temaPortugol.equals("Dark")) { setTemaPortugol("Portugol"); @@ -370,7 +371,7 @@ public void restartApplication() private boolean confirmouReinicializacao() { - int resp = JOptionPane.showConfirmDialog(null, "Para trocar de tema o Portugol Studio precisa reinicializar! Confirma?", "Confirmar", JOptionPane.YES_NO_CANCEL_OPTION); + int resp = QuestionDialog.getInstance().showConfirmMessage("Para trocar de tema o Portugol Studio precisa reinicializar! Confirma?"); if (resp == JOptionPane.YES_OPTION) { return true; diff --git a/ide/src/main/java/br/univali/ps/nucleo/PortugolStudio.java b/ide/src/main/java/br/univali/ps/nucleo/PortugolStudio.java index cd3b8ceb6..0bf67a95d 100644 --- a/ide/src/main/java/br/univali/ps/nucleo/PortugolStudio.java +++ b/ide/src/main/java/br/univali/ps/nucleo/PortugolStudio.java @@ -17,6 +17,7 @@ import br.univali.ps.ui.telas.TelaCustomBorder; import br.univali.ps.ui.utils.FabricaDicasInterface; import br.univali.ps.ui.swing.weblaf.WeblafUtils; +import br.univali.ps.ui.swing.weblaf.jOptionPane.QuestionDialog; import br.univali.ps.ui.telas.Sobre; import br.univali.ps.ui.telas.TelaAtalhos; import br.univali.ps.ui.telas.TelaRelatarBug; @@ -466,7 +467,7 @@ private boolean versaoJavaCorreta() if (Double.valueOf(property) < 1.7) { - JOptionPane.showMessageDialog(null, "Para executar o Portugol Studio é preciso utilizar o Java 1.7 ou superior.", "Portugol Studio", JOptionPane.ERROR_MESSAGE); + QuestionDialog.getInstance().showMessage("Para executar o Portugol Studio é preciso utilizar o Java 1.7 ou superior.", JOptionPane.ERROR_MESSAGE); return false; } @@ -474,7 +475,7 @@ private boolean versaoJavaCorreta() } catch (HeadlessException | NumberFormatException excecao) { - JOptionPane.showMessageDialog(null, "Não foi possível determinar a versão do Java. O Portugol Studio será encerrado!", "Portugol Studio", JOptionPane.ERROR_MESSAGE); + QuestionDialog.getInstance().showMessage("Não foi possível determinar a versão do Java. O Portugol Studio será encerrado!", JOptionPane.ERROR_MESSAGE); return false; } } diff --git a/ide/src/main/java/br/univali/ps/nucleo/TratadorExcecoes.java b/ide/src/main/java/br/univali/ps/nucleo/TratadorExcecoes.java index fd27e05ba..ffb0abe6a 100644 --- a/ide/src/main/java/br/univali/ps/nucleo/TratadorExcecoes.java +++ b/ide/src/main/java/br/univali/ps/nucleo/TratadorExcecoes.java @@ -12,6 +12,7 @@ import javax.swing.JOptionPane; import javax.swing.SwingUtilities; import static br.univali.ps.nucleo.ExcecaoAplicacao.Tipo.ERRO_PROGRAMA; +import br.univali.ps.ui.swing.weblaf.jOptionPane.QuestionDialog; /** * @@ -85,7 +86,7 @@ private void exibir(final ExcecaoAplicacao excecaoAplicacao) private void exibirExcecaoSimples(ExcecaoAplicacao excecaoAplicacao, int tipoDialogo) { - JOptionPane.showMessageDialog(null, excecaoAplicacao.getMessage(), "Portugol Studio", tipoDialogo); + QuestionDialog.getInstance().showMessage(excecaoAplicacao.getMessage(), tipoDialogo); if (encerrarAplicacao) { diff --git a/ide/src/main/java/br/univali/ps/ui/abas/AbaCodigoFonte.java b/ide/src/main/java/br/univali/ps/ui/abas/AbaCodigoFonte.java index 7715c592d..15d679861 100644 --- a/ide/src/main/java/br/univali/ps/ui/abas/AbaCodigoFonte.java +++ b/ide/src/main/java/br/univali/ps/ui/abas/AbaCodigoFonte.java @@ -46,6 +46,7 @@ import br.univali.ps.ui.utils.IconFactory; import br.univali.ps.ui.swing.weblaf.BarraDeBotoesExpansivel; import br.univali.ps.ui.swing.weblaf.WeblafUtils; +import br.univali.ps.ui.swing.weblaf.jOptionPane.QuestionDialog; import br.univali.ps.ui.telas.TelaPrincipal; import com.alee.laf.button.WebButton; import java.awt.*; @@ -806,7 +807,7 @@ public void actionPerformed(ActionEvent e) } else { - JOptionPane.showMessageDialog(AbaCodigoFonte.this, "Este arquivo já está aberto em outra aba.\nPor favor feche o arquivo aberto antes de sobrescrevê-lo.", "Portugol Studio", JOptionPane.WARNING_MESSAGE); + QuestionDialog.getInstance().showMessage("Este arquivo já está aberto em outra aba.\nPor favor feche o arquivo aberto antes de sobrescrevê-lo.", JOptionPane.WARNING_MESSAGE); usuarioCancelouSalvamento = true; } Configuracoes.getInstancia().setCaminhoUltimoDiretorio(dialogoSelecaoArquivo.getCurrentDirectory()); @@ -1162,7 +1163,7 @@ public void componentShown(final ComponentEvent e) editor.getTextArea().requestFocusInWindow(); if (Configuracoes.getInstancia().isExibirAvisoRenomear()) { - JOptionPane.showMessageDialog(AbaCodigoFonte.this, "" + QuestionDialog.getInstance().showMessage("" + "O Portugol Studio tem uma novidade! Agora você pode renomear elementos do seu programa\n" + "como, por exemplo, variáveis e funções." + "\n\n" @@ -1172,7 +1173,7 @@ public void componentShown(final ComponentEvent e) + "Você também pode renomear através do editor de código fonte, posicionando o cursor do teclado\n" + "sobre o nome do elemento e pressionando a combinação de teclas: Ctrl + R." + "\n\n" - + "Que a força esteja com você!!!", "Portugol Studio", JOptionPane.INFORMATION_MESSAGE); + + "Que a força esteja com você!!!", JOptionPane.INFORMATION_MESSAGE); Configuracoes.getInstancia().setExibirAvisoRenomear(false); } }); @@ -1217,7 +1218,7 @@ public void mousePressed(MouseEvent e) { if ((programaCompilado != null && programaCompilado.isExecutando())) { - JOptionPane.showMessageDialog(AbaCodigoFonte.this, "Não é possível renomear enquanto o programa está executando. Interrompa o programa e tente novamente"); + QuestionDialog.getInstance().showMessage("Não é possível renomear enquanto o programa está executando. Interrompa o programa e tente novamente"); editor.getTextArea().requestFocusInWindow(); } else @@ -1861,9 +1862,8 @@ public boolean fechandoAba(Aba aba) } if (arquivoModificado()) - { - int resp = JOptionPane.showConfirmDialog(this, String.format("O documento '%s' possui modificações, deseja Salvá-las?", getCabecalho().getTitulo()), "Confirmar", JOptionPane.YES_NO_CANCEL_OPTION); - + { + int resp = QuestionDialog.getInstance().showConfirmMessage(String.format("O documento '%s' possui modificações, deseja Salvá-las?", getCabecalho().getTitulo())); if (resp == JOptionPane.YES_OPTION) { acaoSalvarArquivo.actionPerformed(null); diff --git a/ide/src/main/java/br/univali/ps/ui/abas/AbaInicial.java b/ide/src/main/java/br/univali/ps/ui/abas/AbaInicial.java index 39179b358..9cd579127 100644 --- a/ide/src/main/java/br/univali/ps/ui/abas/AbaInicial.java +++ b/ide/src/main/java/br/univali/ps/ui/abas/AbaInicial.java @@ -6,6 +6,7 @@ import br.univali.ps.ui.swing.Themeable; import br.univali.ps.ui.utils.WebConnectionUtils; import br.univali.ps.ui.paineis.PainelTabuladoPrincipal; +import br.univali.ps.ui.swing.weblaf.jOptionPane.QuestionDialog; import br.univali.ps.ui.telas.TelaPrincipal; import br.univali.ps.ui.utils.IconFactory; import java.awt.Cursor; @@ -146,7 +147,7 @@ public void actionPerformed(ActionEvent e) rotuloAssistirVideoAulas.setIcon(gif); rotuloConhecerBibliotecas.setIcon(gif); rotuloConhecerLinguagem.setIcon(gif); - JOptionPane.showMessageDialog(null, gif, "Never gonna", JOptionPane.PLAIN_MESSAGE); + QuestionDialog.getInstance().showMessage("Eita!!!"); } } catch (Exception ex) @@ -155,6 +156,7 @@ public void actionPerformed(ActionEvent e) } } }); + } private void configurarResolucao() diff --git a/ide/src/main/java/br/univali/ps/ui/abas/abaBibliotecas/AbaDocumentacaoBiblioteca.java b/ide/src/main/java/br/univali/ps/ui/abas/abaBibliotecas/AbaDocumentacaoBiblioteca.java index 98084af51..2458f9ae2 100644 --- a/ide/src/main/java/br/univali/ps/ui/abas/abaBibliotecas/AbaDocumentacaoBiblioteca.java +++ b/ide/src/main/java/br/univali/ps/ui/abas/abaBibliotecas/AbaDocumentacaoBiblioteca.java @@ -17,6 +17,7 @@ import br.univali.ps.ui.utils.IconFactory; import br.univali.ps.ui.swing.weblaf.PSTreeUI; import br.univali.ps.ui.swing.weblaf.WeblafUtils; +import br.univali.ps.ui.swing.weblaf.jOptionPane.QuestionDialog; import java.awt.Component; import java.awt.Desktop; import java.io.BufferedReader; @@ -470,7 +471,7 @@ public void hyperlinkUpdate(HyperlinkEvent evt) String urlString = evt.getURL().toExternalForm(); if (urlString == null) { - JOptionPane.showMessageDialog(this, "Erro: Link inválido", "Erro", JOptionPane.ERROR_MESSAGE); + QuestionDialog.getInstance().showMessage("Erro: Link inválido", JOptionPane.ERROR_MESSAGE); } try @@ -482,12 +483,12 @@ public void hyperlinkUpdate(HyperlinkEvent evt) } else { - JOptionPane.showMessageDialog(this, "Erro: Não foi possível abrir o navegador Web", "Erro", JOptionPane.ERROR_MESSAGE); + QuestionDialog.getInstance().showMessage("Erro: Não foi possível abrir o navegador Web", JOptionPane.ERROR_MESSAGE); } } catch (Throwable excep) { - JOptionPane.showMessageDialog(this, "Erro: Não foi possível abrir o navegador Web", "Erro", JOptionPane.ERROR_MESSAGE); + QuestionDialog.getInstance().showMessage("Erro: Não foi possível abrir o navegador Web", JOptionPane.ERROR_MESSAGE); } } } diff --git a/ide/src/main/java/br/univali/ps/ui/editor/Editor.java b/ide/src/main/java/br/univali/ps/ui/editor/Editor.java index 6a74daeab..34bd40505 100644 --- a/ide/src/main/java/br/univali/ps/ui/editor/Editor.java +++ b/ide/src/main/java/br/univali/ps/ui/editor/Editor.java @@ -24,6 +24,7 @@ import br.univali.ps.ui.rstautil.SuportePortugolImpl; import br.univali.ps.ui.utils.IconFactory; import br.univali.ps.ui.swing.weblaf.WeblafUtils; +import br.univali.ps.ui.swing.weblaf.jOptionPane.QuestionDialog; import com.alee.laf.WebLookAndFeel; import java.awt.BorderLayout; import java.awt.Color; @@ -432,7 +433,7 @@ public void actionPerformed(ActionEvent e) } else { - JOptionPane.showMessageDialog(Editor.this, "Não é possível renomear enquanto o programa está executando. Interrompa o programa e tente novamente"); + QuestionDialog.getInstance().showMessage("Não é possível renomear enquanto o programa está executando. Interrompa o programa e tente novamente"); textArea.requestFocusInWindow(); } } @@ -1656,7 +1657,7 @@ public void searchEvent(SearchEvent e) break; case REPLACE_ALL: result = SearchEngine.replaceAll(textArea, context); - JOptionPane.showMessageDialog(null, result.getCount() + QuestionDialog.getInstance().showMessage(result.getCount() + " ocorrências substituídas."); break; } @@ -1708,7 +1709,7 @@ private void reiniciar(SearchContext context, RSyntaxTextArea textArea, SearchEv s = "A pesquisa chegou no final do arquivo, deseja recomeçar do início?"; } - if (JOptionPane.showConfirmDialog(getParent(), s, "Pesquisar", JOptionPane.YES_OPTION) == JOptionPane.YES_OPTION) + if (QuestionDialog.getInstance().showConfirmMessage(s, JOptionPane.YES_OPTION) == JOptionPane.YES_OPTION) { if (context.getSearchForward()) { diff --git a/ide/src/main/java/br/univali/ps/ui/swing/weblaf/jOptionPane/QuestionDialog.form b/ide/src/main/java/br/univali/ps/ui/swing/weblaf/jOptionPane/QuestionDialog.form index c0db6ac66..2ca92bbd8 100644 --- a/ide/src/main/java/br/univali/ps/ui/swing/weblaf/jOptionPane/QuestionDialog.form +++ b/ide/src/main/java/br/univali/ps/ui/swing/weblaf/jOptionPane/QuestionDialog.form @@ -1,9 +1,32 @@