Skip to content

Commit

Permalink
[mondrian] added mdx query window; initial jdbc connection support
Browse files Browse the repository at this point in the history
[git-p4: depot-paths = "//open/mondrian/": change = 197]
  • Loading branch information
banksean committed Oct 11, 2002
1 parent 1f64d35 commit 28747a4
Show file tree
Hide file tree
Showing 3 changed files with 360 additions and 6 deletions.
184 changes: 184 additions & 0 deletions src/main/mondrian/gui/PreferencesDialog.java
@@ -0,0 +1,184 @@
/*
* PreferencesDialog.java
*
* Created on October 11, 2002, 12:21 AM
*/

package mondrian.gui;

/**
*
* @author sean
*/
public class PreferencesDialog extends javax.swing.JDialog {
boolean accepted = false;

/** Creates new form PreferencesDialog */
public PreferencesDialog(java.awt.Frame parent, boolean modal) {
super(parent, modal);
initComponents();
}

public boolean accepted() {
return accepted;
}

public void setJDBCConnectionUrl(String s) {
this.urlTextField.setText(s);
}

public String getJDBCConnectionUrl() {
return urlTextField.getText();
}

public void setJDBCDriverClassName(String s) {
this.driverClassTextField.setText(s);
}

public String getJDBCDriverClassName() {
return driverClassTextField.getText();
}

/** 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
java.awt.GridBagConstraints gridBagConstraints;

jTabbedPane1 = new javax.swing.JTabbedPane();
jPanel1 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
urlTextField = new javax.swing.JTextField();
driverClassTextField = new javax.swing.JTextField();
acceptButton = new javax.swing.JButton();
cancelButton = new javax.swing.JButton();

getContentPane().setLayout(new java.awt.GridBagLayout());

setTitle("Workbench Preferences");
addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent evt) {
closeDialog(evt);
}
});

jPanel1.setLayout(new java.awt.GridBagLayout());

jLabel1.setText("Driver Class Name");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.insets = new java.awt.Insets(4, 4, 4, 4);
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
jPanel1.add(jLabel1, gridBagConstraints);

jLabel2.setText("Connection URL");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.insets = new java.awt.Insets(4, 4, 4, 4);
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.weighty = 1.0;
jPanel1.add(jLabel2, gridBagConstraints);

urlTextField.setText("jdbc:");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 1;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.insets = new java.awt.Insets(4, 4, 4, 4);
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.weighty = 1.0;
jPanel1.add(urlTextField, gridBagConstraints);

driverClassTextField.setText("org.gjt.mm.mysql.Driver");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 0;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.insets = new java.awt.Insets(4, 4, 4, 4);
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
gridBagConstraints.weightx = 1.0;
jPanel1.add(driverClassTextField, gridBagConstraints);

jTabbedPane1.addTab("JDBC", jPanel1);

gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.weighty = 1.0;
getContentPane().add(jTabbedPane1, gridBagConstraints);

acceptButton.setText("Accept");
acceptButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
acceptButtonActionPerformed(evt);
}
});

gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 1;
gridBagConstraints.insets = new java.awt.Insets(4, 4, 4, 4);
gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHEAST;
getContentPane().add(acceptButton, gridBagConstraints);

cancelButton.setText("Cancel");
cancelButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cancelButtonActionPerformed(evt);
}
});

gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.insets = new java.awt.Insets(4, 4, 4, 4);
gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHEAST;
gridBagConstraints.weightx = 1.0;
getContentPane().add(cancelButton, gridBagConstraints);

pack();
}//GEN-END:initComponents

private void acceptButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_acceptButtonActionPerformed
accepted = true;
hide();
}//GEN-LAST:event_acceptButtonActionPerformed

private void cancelButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cancelButtonActionPerformed
accepted = false;
hide();
}//GEN-LAST:event_cancelButtonActionPerformed

/** Closes the dialog */
private void closeDialog(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_closeDialog
setVisible(false);
dispose();
}//GEN-LAST:event_closeDialog

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
new PreferencesDialog(new javax.swing.JFrame(), true).show();
}


// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JTextField driverClassTextField;
private javax.swing.JPanel jPanel1;
private javax.swing.JTextField urlTextField;
private javax.swing.JButton acceptButton;
private javax.swing.JTabbedPane jTabbedPane1;
private javax.swing.JButton cancelButton;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel1;
// End of variables declaration//GEN-END:variables

}
104 changes: 104 additions & 0 deletions src/main/mondrian/gui/QueryPanel.java
@@ -0,0 +1,104 @@
/*
* QueryPanel.java
*
* Created on October 10, 2002, 11:11 PM
*/

package mondrian.gui;

import mondrian.olap.*;

/**
*
* @author sean
*/
public class QueryPanel extends javax.swing.JPanel {
Connection connection;

/** Creates new form QueryPanel */
public QueryPanel() {
initComponents();
}

public void setConnection(Connection c) {
connection = c;
}

public Connection getConnection() {
return connection;
}

/** 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
jScrollPane3 = new javax.swing.JScrollPane();
executeButton = new javax.swing.JButton();
jSplitPane1 = new javax.swing.JSplitPane();
jScrollPane1 = new javax.swing.JScrollPane();
queryTextPane = new javax.swing.JTextPane();
jScrollPane2 = new javax.swing.JScrollPane();
resultTextPane = new javax.swing.JTextPane();

setLayout(new java.awt.BorderLayout());

executeButton.setText("Execute");
executeButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
executeButtonActionPerformed(evt);
}
});

add(executeButton, java.awt.BorderLayout.SOUTH);

jSplitPane1.setDividerLocation(100);
jSplitPane1.setOrientation(javax.swing.JSplitPane.VERTICAL_SPLIT);
queryTextPane.setFont(new java.awt.Font("Courier New", 0, 12));
queryTextPane.setText("select {[Measures].[Unit Sales]} on columns from Sales\n");
jScrollPane1.setViewportView(queryTextPane);

jSplitPane1.setTopComponent(jScrollPane1);

resultTextPane.setEditable(false);
resultTextPane.setFont(new java.awt.Font("Courier New", 0, 12));
jScrollPane2.setViewportView(resultTextPane);

jSplitPane1.setBottomComponent(jScrollPane2);

add(jSplitPane1, java.awt.BorderLayout.CENTER);

}//GEN-END:initComponents

private void executeButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_executeButtonActionPerformed
//run the query, and show the results.
try {
Query q = connection.parseQuery(queryTextPane.getText());
Result r = connection.execute(q);

//document = DOMBuilder.build(getResult());
java.io.StringWriter sw = new java.io.StringWriter();
java.io.PrintWriter pw = new java.io.PrintWriter(sw);

r.print(pw);

resultTextPane.setText(sw.getBuffer().toString());
} catch (Exception ex) {
resultTextPane.setText(ex.getMessage());
}

}//GEN-LAST:event_executeButtonActionPerformed


// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JScrollPane jScrollPane3;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTextPane resultTextPane;
private javax.swing.JTextPane queryTextPane;
private javax.swing.JSplitPane jSplitPane1;
private javax.swing.JButton executeButton;
// End of variables declaration//GEN-END:variables

}

0 comments on commit 28747a4

Please sign in to comment.