import java.awt.BorderLayout;
import java.awt.Component;
-import java.awt.Container;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Hashtable;
@Override
public void actionPerformed(ActionEvent arg0)
{
- showDialog(null);
+ showDialog();
}
});
return viewdbs;
_setSelectionState();
}
});
+ dbviews.addMouseListener(new MouseAdapter()
+ {
+
+ @Override
+ public void mousePressed(MouseEvent e)
+ {
+ if (e.getClickCount() == 2)
+ {
+ okPressed();
+ closeDialog();
+ }
+ }
+ });
JPanel jc = new JPanel(new BorderLayout()), j = new JPanel(
new FlowLayout());
jc.add(svp, BorderLayout.CENTER);
jc.validate();
// j.setPreferredSize(new Dimension(300,50));
add(jc, BorderLayout.CENTER);
+ ok.setEnabled(false);
j.add(ok);
j.add(cancel);
add(j, BorderLayout.SOUTH);
protected void okPressed()
{
_setSelectionState();
- closeDialog();
}
@Override
closeDialog();
}
- private void showDialog(Container parent)
+ void showDialog()
{
oldselection = selection;
oldtsel = tsel;
{
return;
}
+ ok.setEnabled(false);
if (dbviews.getSelectionCount() == 0)
{
selection = null;
}
+
tsel = dbviews.getSelectionPaths();
boolean forcedFirstChild = false;
List<DbSourceProxy> srcs = new ArrayList<DbSourceProxy>();
.getLastPathComponent();
if (dmt.getUserObject() != null)
{
+ /*
+ * enable OK button once a selection has been made
+ */
+ ok.setEnabled(true);
if (dmt.getUserObject() instanceof DbSourceProxy)
{
srcs.add((DbSourceProxy) dmt.getUserObject());
}
}
+ dbstatex.setText(" ");
if (allowMultiSelections)
{
dbstatus.setText(MessageManager.formatMessage(
(srcs.size() == 1 ? "" : "s"),
(srcs.size() > 0 ? " with " + x + " test quer"
+ (x == 1 ? "y" : "ies") : ".") }));
- dbstatex.setText(" ");
}
else
{
dbstatex.setText(MessageManager.formatMessage(
"label.example_param", new String[] { qr }));
}
- else
- {
- dbstatex.setText(" ");
- }
}
else
{
{
action = arg0.getKeyCode();
okPressed();
+ closeDialog();
}
if (!arg0.isConsumed() && arg0.getKeyChar() == KeyEvent.VK_ESCAPE)
{