/**
* controles
* 04/04/2008
* InterfacesDeConfiguracao.java
*/
package controller.operating;
import java.util.ArrayList;
import javax.swing.JInternalFrame;
import view.FormPrincipal;
import javax.swing.JOptionPane;
import model.Usuario;
import view.FormPesquisa;
import view.FormSplash;
import view.LoginView;
/**
* @author William
*
*/
public abstract class GerenciadorOperacional {
private static FormPrincipal janela = null;
private static FormSplash splash = null;
private static Usuario usuario = new Usuario();
private static LoginView login = null;
private static String codigo;
private static String descricao;
private static String codigoEmpresa;
private static String descricaoEmpresa;
private static boolean visibleFramePrincipal;
private static ArrayList<String> listaDeFrames = new ArrayList<String>();
private static void encerrarAplicacao() {
if (GerenciadorDeConfiguracoesDoSistema.isMinimizarTray()) {
janela.setVisible(false);
} else {
janela.close();
System.exit(0);
}
}
/*
* Controles da Janela Principal
*/
// Inicia o FormPrincipal
public static void beginFramePrincipal() {
if (GerenciadorDeConfiguracoesDoSistema.isIniciarMaximizado()) {
janela = new FormPrincipal(true);
} else {
janela = new FormPrincipal(false);
}
visibleFramePrincipal = true;
}
// Inicia o FormPrincipal
public static void setVisibleFramePrincipal(boolean visible) {
janela.setVisible(visible);
GerenciadorOperacional.visibleFramePrincipal = visible;
}
// Encerra o FormPrincipal
public static void closeFramePrincipal() {
if (GerenciadorDeConfiguracoesDoSistema.getUsarConfirmarSaida()) {
GerenciadorOperacional.encerrarPrograma();
} else {
/*
* Encerra as atividades do programa
*/
encerrarAplicacao();
}
}
/*
* Controles da janela de Splash
*/
// Inicia o FormSplash
public static void exibeFrameSplash() {
if (GerenciadorDeConfiguracoesDoSistema.getFazerSplash()) {
splash = new FormSplash();
}
}
/*
* Controles Gerais
*/
public static void encerrarPrograma() {
Object[] options = {"Sim", "Não"};
int option = 0;
option = JOptionPane.showOptionDialog(null,
"Deseja fechar o aplicativo?",
"Finalizando", JOptionPane.DEFAULT_OPTION,
JOptionPane.WARNING_MESSAGE, null, options, options[0]);
/*
* Encerra as atividades do programa
*/
if (option == 0) {
System.exit(option);
}
}
public static String getCodigo() {
return codigo;
}
public static void setCodigo(String codigo) {
GerenciadorOperacional.codigo = codigo;
}
public static String getDescricao() {
return descricao;
}
public static void setDescricao(String descricao) {
GerenciadorOperacional.descricao = descricao;
}
public static FormPrincipal getJanela() {
return janela;
}
public static void setJanela(FormPrincipal janela) {
GerenciadorOperacional.janela = janela;
}
public static FormSplash getSplash() {
return splash;
}
public static void setSplash(FormSplash splash) {
GerenciadorOperacional.splash = splash;
}
public static Usuario getUsuario() {
return usuario;
}
public static void setUsuario(Usuario usuario) {
GerenciadorOperacional.usuario = new Usuario();
GerenciadorOperacional.usuario = usuario;
}
public static void getPesquisa(String tipo) {
new FormPesquisa(janela.getJFrame(), true, tipo);
}
public static String getCodigoEmpresa() {
return codigoEmpresa;
}
public static void setCodigoEmpresa(String codigoEmpresa) {
GerenciadorOperacional.codigoEmpresa = codigoEmpresa;
}
public static String getDescricaoEmpresa() {
return descricaoEmpresa;
}
public static void setDescricaoEmpresa(String descricaoEmpresa) {
GerenciadorOperacional.descricaoEmpresa = descricaoEmpresa;
}
public static void removeFrame() {
GerenciadorOperacional.janela.removeFrame();
}
public static void removeFrameDaLista(String titulo) {
GerenciadorOperacional.listaDeFrames.remove(titulo);
}
public static void addFrame(JInternalFrame jInternalFrame){
boolean adicionar = true;
for(int i = 0; i < GerenciadorOperacional.listaDeFrames.size(); i++){
if(GerenciadorOperacional.listaDeFrames.get(i).equals(jInternalFrame.getTitle())){
adicionar = false;
jInternalFrame.dispose();
}
}
if(adicionar){
GerenciadorOperacional.janela.addFrame(jInternalFrame);
}
}
public static boolean isVisibleFramePrincipal() {
return visibleFramePrincipal;
}
public static void setIsVisibleFramerincipal(boolean visibleFormPrincipal) {
GerenciadorOperacional.visibleFramePrincipal = visibleFormPrincipal;
}
public static LoginView getLogin() {
login = new LoginView(new javax.swing.JFrame(), true);
login.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent e) {
System.exit(0);
}
});
login.setLocationRelativeTo(null);
login.setVisible(true);
return login;
}
public static void setLogin(LoginView login) {
GerenciadorOperacional.login = login;
}
public static ArrayList<String> getListaDeFrames() {
return listaDeFrames;
}
public static void setListaDeFrames(JInternalFrame[] listaDeFrames) {
GerenciadorOperacional.listaDeFrames = new ArrayList<String>();
for(int i = 0; i < listaDeFrames.length; i++){
GerenciadorOperacional.listaDeFrames.add(listaDeFrames[i].getTitle());
}
}
}