/* * Projecte Fressa a JAVA * TFormParametres.java * Created on 13 / novembre / 2008, 09:15 * * @author Jordi Lagares Roset "jlagares@xtec.cat - www.lagares.org" * amb el suport del Departament d'Educacio de la Generalitat de Catalunya * * 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 2 of the License, or * (at your option) any later version. * * This program 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 (see the LICENSE file). */ import java.awt.*; import java.awt.event.*; import javax.swing.*; public class TFormParametres extends javax.swing.JDialog { public javax.swing.JButton jButtonDAcord; public javax.swing.JButton jButtonCancelar; private javax.swing.JButton jButtonDefault; public javax.swing.JLabel jLabel1; public javax.swing.JLabel jLabel2; public javax.swing.JLabel jLabel3; public javax.swing.JLabel jLabel4; public javax.swing.JTextField EditIntervalEntreClics; public javax.swing.JTextField EditNumeroCasellesXMissatge; public javax.swing.JTextField EditTimerEscaneigInterval; public javax.swing.JTextField EditGruixudariaMarc; public int resultat = 0; public int IntervalEntreClics = 0; public int NumeroCasellesXMissatge = 6; public int TimerEscaneigInterval = 1500; public int GruixudariaMarc = 2; private Tools tool; public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new TFormParametres(new javax.swing.JFrame(), true).setVisible(true); } }); } public TFormParametres(java.awt.Frame parent, boolean modal) { super(parent, modal); initComponents(); } private void initComponents() { tool = new Tools(); setSize(387,280); getContentPane().setLayout(null); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); setTitle("Par\u00e0metres"); setResizable(false); jButtonDAcord = new javax.swing.JButton(); //jButtonDAcord.setText("D'acord"); jButtonDAcord.setIcon(new javax.swing.ImageIcon(this.getClass().getResource("dibuixos/catala/ok.gif"))); jButtonDAcord.setBounds(280,175,90,33); jButtonDAcord.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); getContentPane().add(jButtonDAcord); jButtonDAcord.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonDAcordClick(); } }); jButtonCancelar = new javax.swing.JButton(); //jButtonCancelar.setText("Cancel.lar"); jButtonCancelar.setIcon(new javax.swing.ImageIcon(this.getClass().getResource("dibuixos/catala/cancel.gif"))); jButtonCancelar.setBounds(280,215,90,33); jButtonCancelar.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); getContentPane().add(jButtonCancelar); jButtonCancelar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonCancelarClick(); } }); jButtonDefault = new javax.swing.JButton(); jButtonDefault.setText("Default"); jButtonDefault.setBounds(180,175,90,33); jButtonDefault.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); getContentPane().add(jButtonDefault); jButtonDefault.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonDefaultClick(); } }); jLabel1 = new javax.swing.JLabel(); jLabel1.setFont(new Font("sansserif",0,11)); jLabel1.setText("D\u00e8cimes de segon que dura el pas d'escaneig:"); jLabel1.setBounds(16,22,240,13); getContentPane().add(jLabel1); jLabel2 = new javax.swing.JLabel(); jLabel2.setFont(new Font("sansserif",0,11)); jLabel2.setText("N\u00famero de fitxes visibles al panell missatges:"); jLabel2.setBounds(16,52,240,13); getContentPane().add(jLabel2); jLabel3 = new javax.swing.JLabel(); jLabel3.setFont(new Font("sansserif",0,11)); jLabel3.setText("Interval entre clics (milisegons):"); jLabel3.setBounds(16,82,240,13); getContentPane().add(jLabel3); jLabel4 = new javax.swing.JLabel(); jLabel4.setFont(new Font("sansserif",0,11)); jLabel4.setText("Gruixud\u00e0ria marcs:"); jLabel4.setBounds(16,112,240,13); getContentPane().add(jLabel4); EditTimerEscaneigInterval = new javax.swing.JTextField(); EditTimerEscaneigInterval.setBounds(300,16,50,21); getContentPane().add(EditTimerEscaneigInterval); EditNumeroCasellesXMissatge = new javax.swing.JTextField(); EditNumeroCasellesXMissatge.setBounds(300,46,50,21); getContentPane().add(EditNumeroCasellesXMissatge); EditIntervalEntreClics = new javax.swing.JTextField(); EditIntervalEntreClics.setBounds(300,76,50,21); getContentPane().add(EditIntervalEntreClics); EditGruixudariaMarc = new javax.swing.JTextField(); EditGruixudariaMarc.setBounds(300,106,50,21); getContentPane().add(EditGruixudariaMarc); //Toolkit.getDefaultToolkit().addAWTEventListener(ListenerReturnEsc,AWTEvent.KEY_EVENT_MASK); addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(WindowEvent e) { Toolkit.getDefaultToolkit().removeAWTEventListener(ListenerReturnEsc); } }); } private AWTEventListener ListenerReturnEsc = new AWTEventListener() { public void eventDispatched(AWTEvent event) { KeyEvent ke = (KeyEvent)event; if (ke.getID() == KeyEvent.KEY_TYPED) { if (ke.getKeyChar() == KeyEvent.VK_ESCAPE) { jButtonCancelarClick(); } else if (ke.getKeyChar() == KeyEvent.VK_ENTER) { if (Global.EsWindowsLookAndFeel==1) { if (jButtonDefault.isFocusOwner()) { } else if (jButtonCancelar.isFocusOwner()) { } else { jButtonDAcordClick(); } } else { if (jButtonDefault.isFocusOwner()) { jButtonDefaultClick(); } else if (jButtonCancelar.isFocusOwner()) { jButtonCancelarClick() ; } else { jButtonDAcordClick(); } } } } } }; public void ShowModalCentered() { Toolkit.getDefaultToolkit().addAWTEventListener(ListenerReturnEsc,AWTEvent.KEY_EVENT_MASK); EditTimerEscaneigInterval.setText(tool.IntToStr(TimerEscaneigInterval)); EditNumeroCasellesXMissatge.setText(tool.IntToStr(NumeroCasellesXMissatge)); EditIntervalEntreClics.setText(tool.IntToStr(IntervalEntreClics)); EditGruixudariaMarc.setText(tool.IntToStr(GruixudariaMarc)); Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = this.getSize(); if (frameSize.height > screenSize.height) frameSize.height = screenSize.height; if (frameSize.width > screenSize.width) frameSize.width = screenSize.width; this.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2); EditTimerEscaneigInterval.requestFocus(); this.setVisible(true); } private void jButtonDAcordClick() { Toolkit.getDefaultToolkit().removeAWTEventListener(ListenerReturnEsc); if ((tool.StrToInt(EditTimerEscaneigInterval.getText())<1) || (tool.StrToInt(EditTimerEscaneigInterval.getText())>100)) { Llengua.MessageBox(101); EditTimerEscaneigInterval.requestFocus(); return; } if ((tool.StrToInt(EditNumeroCasellesXMissatge.getText())<1) || (tool.StrToInt(EditNumeroCasellesXMissatge.getText())>Global.MaximDeCaselles)) { Llengua.MessageBox(102); JOptionPane.showMessageDialog(null,Llengua.missatges[101]+tool.IntToStr(Global.MaximDeCaselles),"JAVA PLAPHOONS",JOptionPane.INFORMATION_MESSAGE); EditNumeroCasellesXMissatge.requestFocus(); return; } if ((tool.StrToInt(EditIntervalEntreClics.getText())<0) || (tool.StrToInt(EditIntervalEntreClics.getText())>5000)) { Llengua.MessageBox(103); EditIntervalEntreClics.requestFocus(); return; } if ((tool.StrToInt(EditGruixudariaMarc.getText())<1) || (tool.StrToInt(EditGruixudariaMarc.getText())>100)) { Llengua.MessageBox(104); EditTimerEscaneigInterval.requestFocus(); return; } TimerEscaneigInterval=tool.StrToInt(EditTimerEscaneigInterval.getText()); NumeroCasellesXMissatge=tool.StrToInt(EditNumeroCasellesXMissatge.getText()); IntervalEntreClics=tool.StrToInt(EditIntervalEntreClics.getText()); GruixudariaMarc=tool.StrToInt(EditGruixudariaMarc.getText()); resultat=1; setVisible(false); } private void jButtonCancelarClick() { Toolkit.getDefaultToolkit().removeAWTEventListener(ListenerReturnEsc); resultat=0; setVisible(false); } private void jButtonDefaultClick() { EditTimerEscaneigInterval.setText("15"); EditNumeroCasellesXMissatge.setText("6"); EditIntervalEntreClics.setText("0"); EditGruixudariaMarc.setText("2"); } }