wizarddialog.java
来自「优秀的打印控件全源代码,类似水晶表的设计器!」· Java 代码 · 共 1,696 行 · 第 1/5 页
JAVA
1,696 行
/* * WizardDialog.java * * iReport -- Visual designer for generating JasperReports Documents * Copyright (C) 2002-2003 Giulio Toffoli gt@businesslogic.it * * 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. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * Giulio Toffoli * Via T.Aspetti, 233 * 35100 Padova ITALY * gt@businesslogic.it * * * How this window work. * This form has an attribute that rappresents the JReportForm active. * If the jrf is null, this frame hides. * When something changes, the program can call "updateSelection". This * class retrive from jrf the selected elements and update all * interface. * * Created on 30 giugno 2003, 18.26 */package it.businesslogic.ireport.gui;import it.businesslogic.ireport.util.*;import it.businesslogic.ireport.*;import it.businesslogic.ireport.connection.*;import java.sql.*;import java.util.*;import java.io.*;/** * * @author Administrator */public class WizardDialog extends javax.swing.JDialog implements Runnable { Thread t = null; File[] templates = null; org.syntax.jedit.JEditTextArea jRSQLExpressionArea1 = null; /** Creates new form WizardDialog */ public WizardDialog(java.awt.Frame parent, boolean modal) { super(parent, modal); initComponents(); jRSQLExpressionArea1 = new org.syntax.jedit.JEditTextArea(); jRSQLExpressionArea1.getPainter().setLineHighlightColor(java.awt.Color.WHITE); jRSQLExpressionArea1.setDocument(new org.syntax.jedit.SyntaxDocument()); jRSQLExpressionArea1.setTokenMarker(new org.syntax.jedit.tokenmarker.TSQLTokenMarker()); jRSQLExpressionArea1.setAutoscrolls(true); java.awt.GridBagConstraints gridBagConstraints= null; gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; //gridBagConstraints.insets = new java.awt.Insets(2, 2, 2, 2); gridBagConstraints.weightx = 1.0; gridBagConstraints.weighty = 1.0; jPanel1.add(jRSQLExpressionArea1, gridBagConstraints); wzStep = 1; this.setStep(wzStep,wzStep); this.setSize(470, 340); Misc.centerFrame(this); this.jRSQLExpressionArea1.getDocument().addDocumentListener( new javax.swing.event.DocumentListener() { public void changedUpdate(javax.swing.event.DocumentEvent evt) { jRSQLExpressionArea1TextConnectionExpressionTextChanged(); } public void insertUpdate(javax.swing.event.DocumentEvent evt) { jRSQLExpressionArea1TextConnectionExpressionTextChanged(); } public void removeUpdate(javax.swing.event.DocumentEvent evt) { jRSQLExpressionArea1TextConnectionExpressionTextChanged(); } }); this.jRSQLExpressionArea1.requestFocusInWindow(); jList1.setModel(new javax.swing.DefaultListModel()); jList2.setModel(new javax.swing.DefaultListModel()); jList3.setModel(new javax.swing.DefaultListModel()); jComboBoxTemplates.addItem("Columnar"); jComboBoxTemplates.addItem("Tabular"); String templates_dir = MainFrame.IREPORT_HOME_DIR; //System.getProperty("ireport.home","."); templates_dir += File.separator + "templates"; //System.out.println("Templates: " + templates_dir); //C:\\documenti\\progetti\\ireport\\iReport2\\templates File f = new File(templates_dir); if (f.exists() && f.isDirectory()) { templates = f.listFiles(new FilenameFilter() { public boolean accept(File dir, String name) { if (name.endsWith("T.xml") || name.endsWith("C.xml")) { return true; } return false; } }); } else { templates_dir = MainFrame.IREPORT_HOME_DIR; //System.getProperty("ireport.home","."); templates_dir += File.separator + "etc" + File.separator + "templates"; f = new File(templates_dir); if (f.exists() && f.isDirectory()) { templates = f.listFiles(new FilenameFilter() { public boolean accept(File dir, String name) { if (name.endsWith("T.xml") || name.endsWith("C.xml")) { return true; } return false; } }); } } if (templates == null) { templates = new File[0]; } jComboBoxTemplates.setSelectedIndex(0); //jRSQLExpressionArea1.setText("00000000000000000000000000000000000000000000000000000\n\r"); //this.pack(); } private int wzStep=0; public void updateTemplatesList() { if (templates == null) return; ((javax.swing.DefaultListModel)jList3.getModel()).removeAllElements(); for (int i=0; i<templates.length; ++i) { if (jComboBoxTemplates.getItemCount()<2 || (jComboBoxTemplates.getSelectedIndex() == 0 && !templates[i].getName().endsWith("C.xml")) ) continue; if (jComboBoxTemplates.getSelectedIndex() == 1 && !templates[i].getName().endsWith("T.xml") ) continue; TemplateFile tf = new TemplateFile(); tf.file = templates[i]; tf.name = templates[i].getName().substring(0, templates[i].getName().length()-4); ((javax.swing.DefaultListModel)jList3.getModel()).addElement(tf); } if ( ((javax.swing.DefaultListModel)jList3.getModel()).getSize()>0) jList3.setSelectedIndex(0); jList3.updateUI(); } public void jRSQLExpressionArea1TextConnectionExpressionTextChanged() { if (this.jRSQLExpressionArea1.getText().trim().length() == 0) { jButtonNext.setEnabled(false); } else jButtonNext.setEnabled( true ); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ private void initComponents() {//GEN-BEGIN:initComponents jSeparator1 = new javax.swing.JSeparator(); jSeparator2 = new javax.swing.JSeparator(); jLabel1 = new javax.swing.JLabel(); jLabelStep1 = new javax.swing.JLabel(); jLabelStep2 = new javax.swing.JLabel(); jLabelStep3 = new javax.swing.JLabel(); jLabelStep4 = new javax.swing.JLabel(); jLabelStep5 = new javax.swing.JLabel(); jLabel7 = new javax.swing.JLabel(); jButtonCancel = new javax.swing.JButton(); jButtonNext = new javax.swing.JButton(); jButtonPrev = new javax.swing.JButton(); jPanelRoot = new javax.swing.JPanel(); jPanelStep1 = new javax.swing.JPanel(); jLabel2 = new javax.swing.JLabel(); jLabel3 = new javax.swing.JLabel(); jSeparator3 = new javax.swing.JSeparator(); jPanel1 = new javax.swing.JPanel(); jPanelStep3 = new javax.swing.JPanel(); jLabel6 = new javax.swing.JLabel(); jSeparator5 = new javax.swing.JSeparator(); jComboBox1 = new javax.swing.JComboBox(); jLabelG1 = new javax.swing.JLabel(); jLabelG2 = new javax.swing.JLabel(); jComboBox2 = new javax.swing.JComboBox(); jLabelG3 = new javax.swing.JLabel(); jComboBox3 = new javax.swing.JComboBox(); jLabelG4 = new javax.swing.JLabel(); jComboBox4 = new javax.swing.JComboBox(); jPanelStep5 = new javax.swing.JPanel(); jLabel9 = new javax.swing.JLabel(); jSeparator7 = new javax.swing.JSeparator(); jLabel4 = new javax.swing.JLabel(); jLabel10 = new javax.swing.JLabel(); jLabel11 = new javax.swing.JLabel(); jPanelStep2 = new javax.swing.JPanel(); jLabel5 = new javax.swing.JLabel(); jSeparator4 = new javax.swing.JSeparator(); jScrollPane1 = new javax.swing.JScrollPane(); jList2 = new javax.swing.JList(); jScrollPane2 = new javax.swing.JScrollPane(); jList1 = new javax.swing.JList(); jButton4 = new javax.swing.JButton(); jButton5 = new javax.swing.JButton(); jButton6 = new javax.swing.JButton(); jButton7 = new javax.swing.JButton(); jPanelStep4 = new javax.swing.JPanel(); jLabel8 = new javax.swing.JLabel(); jSeparator6 = new javax.swing.JSeparator(); jComboBoxTemplates = new javax.swing.JComboBox(); jScrollPane3 = new javax.swing.JScrollPane(); jList3 = new javax.swing.JList(); jLabelImage = new javax.swing.JLabel(); getContentPane().setLayout(null); setTitle("iReport Wizard"); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); setResizable(false); addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent evt) { closeDialog(evt); } }); getContentPane().add(jSeparator1); jSeparator1.setBounds(2, 280, 460, 4); jSeparator2.setBackground(new java.awt.Color(204, 204, 255)); jSeparator2.setForeground(new java.awt.Color(0, 0, 0)); jSeparator2.setMaximumSize(new java.awt.Dimension(32767, 1)); jSeparator2.setMinimumSize(new java.awt.Dimension(98, 1)); jSeparator2.setPreferredSize(new java.awt.Dimension(1, 1)); getContentPane().add(jSeparator2); jSeparator2.setBounds(8, 28, 98, 2); jLabel1.setFont(new java.awt.Font("Dialog", 1, 11)); jLabel1.setText("Steps"); getContentPane().add(jLabel1); jLabel1.setBounds(8, 10, 84, 16); jLabelStep1.setFont(new java.awt.Font("Dialog", 1, 11)); jLabelStep1.setText("1. Query"); getContentPane().add(jLabelStep1); jLabelStep1.setBounds(8, 34, 110, 16); jLabelStep2.setFont(new java.awt.Font("Dialog", 0, 11)); jLabelStep2.setText("2. Fields selection"); getContentPane().add(jLabelStep2); jLabelStep2.setBounds(8, 52, 110, 16); jLabelStep3.setFont(new java.awt.Font("Dialog", 0, 11)); jLabelStep3.setText("3. Group by ..."); getContentPane().add(jLabelStep3); jLabelStep3.setBounds(8, 70, 110, 16); jLabelStep4.setFont(new java.awt.Font("Dialog", 0, 11)); jLabelStep4.setText("4. Layout"); getContentPane().add(jLabelStep4); jLabelStep4.setBounds(8, 88, 110, 16); jLabelStep5.setFont(new java.awt.Font("Dialog", 0, 11)); jLabelStep5.setText("5. Finish"); getContentPane().add(jLabelStep5); jLabelStep5.setBounds(8, 106, 110, 16); jLabel7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/it/businesslogic/ireport/icons/wizard.jpg"))); getContentPane().add(jLabel7); jLabel7.setBounds(0, 0, 132, 284); jButtonCancel.setFont(new java.awt.Font("Dialog", 0, 11)); jButtonCancel.setMnemonic('f'); jButtonCancel.setText("Cancel"); jButtonCancel.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonCancelActionPerformed(evt); } }); getContentPane().add(jButtonCancel); jButtonCancel.setBounds(384, 286, 76, 24); jButtonNext.setFont(new java.awt.Font("Dialog", 0, 11)); jButtonNext.setText("Next >"); jButtonNext.setMnemonic('n'); jButtonNext.setEnabled(false); jButtonNext.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonNextActionPerformed(evt); } }); getContentPane().add(jButtonNext); jButtonNext.setBounds(302, 286, 76, 24); jButtonPrev.setFont(new java.awt.Font("Dialog", 0, 11)); jButtonPrev.setText("< Prev"); jButtonPrev.setMnemonic('p'); jButtonPrev.setEnabled(false); jButtonPrev.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonPrevActionPerformed(evt); } }); getContentPane().add(jButtonPrev); jButtonPrev.setBounds(220, 286, 76, 24);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?