KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > jimm > datavision > gui > sql > SQLQueryWin


1 package jimm.datavision.gui.sql;
2 import java.awt.Frame JavaDoc;
3 import java.awt.Dimension JavaDoc;
4 import java.awt.BorderLayout JavaDoc;
5 import java.awt.event.ActionListener JavaDoc;
6 import java.awt.event.ActionEvent JavaDoc;
7 import jimm.util.I18N;
8 import javax.swing.*;
9
10 public class SQLQueryWin extends JDialog {
11
12 protected static final int PREFERRED_COLUMNS = 40;
13 protected static final Dimension JavaDoc PREFERRED_SIZE = new Dimension JavaDoc(340, 275);
14
15 public SQLQueryWin(Frame JavaDoc owner, String JavaDoc queryString) {
16     super(owner, I18N.get("SQLQueryWin.title"));
17     buildWindow(queryString);
18     pack();
19     show();
20 }
21
22 protected void buildWindow(String JavaDoc queryString) {
23     getContentPane().setLayout(new BorderLayout JavaDoc());
24
25     // Copy the string and add some newlines
26
char[] queryChars = queryString.toCharArray();
27
28     int pos = queryString.indexOf(" from ");
29     if (pos >= 0) queryChars[pos] = '\n';
30     else pos = 0;
31
32     pos = queryString.indexOf(" where ", pos);
33     if (pos >= 0) queryChars[pos] = '\n';
34     else pos = 0;
35
36     pos = queryString.indexOf(" order by ", pos);
37     if (pos >= 0) queryChars[pos] = '\n';
38
39     JTextArea text = new JTextArea(new String JavaDoc(queryChars), 0,
40                    PREFERRED_COLUMNS);
41     text.setEditable(false);
42     text.setLineWrap(true);
43     text.setWrapStyleWord(true);
44
45     JScrollPane scroller = new JScrollPane(text);
46     scroller.setPreferredSize(PREFERRED_SIZE);
47     getContentPane().add(scroller, BorderLayout.CENTER);
48
49     JPanel buttonPanel = new JPanel();
50     JButton button = new JButton(I18N.get("GUI.ok"));
51     button.addActionListener(new ActionListener JavaDoc() {
52     public void actionPerformed(ActionEvent JavaDoc e) { dispose(); }
53     });
54     buttonPanel.add(button);
55     getContentPane().add(buttonPanel, BorderLayout.SOUTH);
56 }
57
58 }
59
Popular Tags