/* Copyright 2012-2017 Jose Robson Mariano Alves This file is part of bgfinancas. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ package badernageral.bgfinancas.biblioteca.sistema; import badernageral.bgfinancas.biblioteca.contrato.ControladorFormulario; import badernageral.bgfinancas.idioma.Linguagem; import badernageral.bgfinancas.modulo.despesa.DespesaCadastroMultiploControlador; import javafx.event.ActionEvent; import javafx.scene.control.Button; import javafx.scene.control.Tooltip; import badernageral.bgfinancas.template.botao.BotaoFormulario; import badernageral.bgfinancas.template.botao.BotaoListaCategoria; import badernageral.bgfinancas.template.botao.BotaoListaItem; public final class Botao { private static final Linguagem idioma = Linguagem.getInstance(); private Botao(){ } private static void prepararBotaoCadastrar(Button[] cadastrar){ if(cadastrar != null){ for (int i=0; i<cadastrar.length; i++) { if(i==0){ cadastrar[i].setTooltip(new Tooltip(idioma.getMensagem("cadastrar")+" (CTRL+I)")); }else if(i==2){ cadastrar[i].setTooltip(new Tooltip(idioma.getMensagem("cadastrar")+" (CTRL+SHIFT+I)")); }else{ cadastrar[i].setTooltip(new Tooltip(idioma.getMensagem("cadastrar"))); } final int botao = i+1; cadastrar[i].setOnAction((ActionEvent e) -> { Kernel.controlador.acaoCadastrar(botao); }); } } } public static void prepararBotaoCadastrar(Button cadastrar, int botao){ if(cadastrar != null){ if(botao==1){ cadastrar.setTooltip(new Tooltip(idioma.getMensagem("cadastrar")+" (CTRL+I)")); }else if(botao==2){ cadastrar.setTooltip(new Tooltip(idioma.getMensagem("cadastrar")+" (CTRL+SHIFT+I)")); }else{ cadastrar.setTooltip(new Tooltip(idioma.getMensagem("cadastrar"))); } cadastrar.setOnAction((ActionEvent e) -> { Kernel.controlador.acaoCadastrar(botao); }); } } private static void prepararBotaoAlterar(Button alterar){ if(alterar != null){ alterar.setTooltip(new Tooltip(idioma.getMensagem("alterar")+" (CTRL+E)")); alterar.setOnAction((ActionEvent e) -> { Kernel.controlador.acaoAlterar(1); }); } } public static void prepararBotaoExcluir(Button excluir, int botao){ if(excluir != null){ excluir.setTooltip(new Tooltip(idioma.getMensagem("excluir")+" (DELETE)")); excluir.setOnAction((ActionEvent e) -> { Kernel.controlador.acaoExcluir(botao); }); } } public static void prepararBotaoVoltar(Button voltar){ if(voltar != null){ voltar.setTooltip(new Tooltip(idioma.getMensagem("voltar")+" (ALT+BACKSPACE)")); voltar.setOnAction((ActionEvent e) -> { Kernel.controlador.acaoVoltar(); }); } } public static void prepararBotaoGerenciar(Button[] gerenciar){ if(gerenciar != null){ for (int i=0; i<gerenciar.length; i++) { if(gerenciar[i]!=null){ if(i==0){ gerenciar[i].setTooltip(new Tooltip(idioma.getMensagem("gerenciar")+" (CTRL+M)")); }else{ gerenciar[i].setTooltip(new Tooltip(idioma.getMensagem("gerenciar"))); } final int botao = i+1; gerenciar[i].setOnAction((ActionEvent e) -> { Kernel.controlador.acaoGerenciar(botao); }); } } } } public static void prepararBotaoGerenciar(int indice, Button gerenciar, String descricao){ if(gerenciar != null){ gerenciar.setTooltip(new Tooltip(descricao)); gerenciar.setOnAction((ActionEvent e) -> { Kernel.controlador.acaoGerenciar(indice+1); }); } } public static void prepararBotaoFinalizar(Button finalizar, DespesaCadastroMultiploControlador controlador){ if(finalizar != null){ finalizar.setTooltip(new Tooltip("(ENTER)")); finalizar.setOnAction((ActionEvent e) -> { controlador.acaoFinalizar(); }); } } public static void prepararBotao(Button[] cadastrar, Button alterar, Button excluir, Button voltar){ Botao.prepararBotaoCadastrar(cadastrar); Botao.prepararBotaoAlterar(alterar); Botao.prepararBotaoExcluir(excluir, 1); Botao.prepararBotaoVoltar(voltar); } public static void prepararBotaoModal(ControladorFormulario controlador, Button finalizar, Button cancelar, Button[] cadastrar){ if(finalizar != null){ finalizar.setTooltip(new Tooltip("(ENTER)")); finalizar.setOnAction((ActionEvent e) -> { controlador.acaoFinalizar(); }); } if(cancelar != null){ cancelar.setText(idioma.getMensagem("cancelar")); cancelar.setTooltip(new Tooltip("(ESCAPE)")); cancelar.setOnAction((ActionEvent e) -> { controlador.acaoCancelar(); }); } if(cadastrar != null){ for (int i=0; i<cadastrar.length; i++) { if(i==0){ cadastrar[i].setTooltip(new Tooltip(idioma.getMensagem("cadastrar")+" (CTRL+I)")); }else if(i==1){ cadastrar[i].setTooltip(new Tooltip(idioma.getMensagem("cadastrar")+" (CTRL+SHIFT+I)")); }else{ cadastrar[i].setTooltip(new Tooltip(idioma.getMensagem("cadastrar"))); } final int botao = i+1; cadastrar[i].setOnAction((ActionEvent e) -> { controlador.acaoCadastrar(botao); }); } } } public static void prepararBotaoModal(ControladorFormulario controlador, BotaoFormulario botaoController){ Botao.prepararBotaoModal(controlador, botaoController.getBotaoFinalizar(), botaoController.getBotaoCancelar(), null); } public static void prepararBotaoModal(ControladorFormulario controlador, BotaoFormulario botaoController, BotaoListaCategoria categoriaController){ Botao.prepararBotaoModal(controlador, botaoController.getBotaoFinalizar(), botaoController.getBotaoCancelar(), new Button[]{categoriaController.getBotaoCadastrar()}); } public static void prepararBotaoModal(ControladorFormulario controlador, BotaoFormulario botaoController, BotaoListaItem itemController){ Botao.prepararBotaoModal(controlador, botaoController.getBotaoFinalizar(), botaoController.getBotaoCancelar(), new Button[]{itemController.getBotaoCadastrar()}); } public static void prepararBotaoModal(ControladorFormulario controlador, BotaoFormulario botaoController, BotaoListaCategoria categoriaController, BotaoListaCategoria categoriaSecundariaController){ Botao.prepararBotaoModal(controlador, botaoController.getBotaoFinalizar(), botaoController.getBotaoCancelar(), new Button[]{categoriaController.getBotaoCadastrar(), categoriaSecundariaController.getBotaoCadastrar()}); } public static void prepararBotaoModal(ControladorFormulario controlador, BotaoFormulario botaoController, Button botaoCadastrar, BotaoListaCategoria categoriaController){ Botao.prepararBotaoModal(controlador, botaoController.getBotaoFinalizar(), botaoController.getBotaoCancelar(), new Button[]{botaoCadastrar, categoriaController.getBotaoCadastrar()}); } public static void prepararBotaoModal(ControladorFormulario controlador, BotaoFormulario botaoController, BotaoListaItem itemController, BotaoListaCategoria categoriaController){ Botao.prepararBotaoModal(controlador, botaoController.getBotaoFinalizar(), botaoController.getBotaoCancelar(), new Button[]{itemController.getBotaoCadastrar(), categoriaController.getBotaoCadastrar()}); } }