public virtual string ShowListSelectionDialog(IList <string> files, Point location) { Frame frame = new Frame(); //System.out.println(location); //frame.setLocation(location); JDialog dialog = new JDialog(frame, "Jar File Chooser", true); dialog.SetLocation(location); JList fileList = new JList(new Vector <string>(files)); fileList.SetSelectionMode(ListSelectionModelConstants.SingleSelection); IMouseListener mouseListener = new _MouseAdapter_68(dialog); // double clicked fileList.AddMouseListener(mouseListener); JScrollPane scroll = new JScrollPane(fileList); JButton okay = new JButton(); okay.SetText("Okay"); okay.SetToolTipText("Okay"); okay.AddActionListener(null); JButton cancel = new JButton(); cancel.SetText("Cancel"); cancel.SetToolTipText("Cancel"); cancel.AddActionListener(null); GridBagLayout gridbag = new GridBagLayout(); GridBagConstraints constraints = new GridBagConstraints(); dialog.SetLayout(gridbag); constraints.gridwidth = GridBagConstraints.Remainder; constraints.fill = GridBagConstraints.Both; constraints.weightx = 1.0; constraints.weighty = 1.0; gridbag.SetConstraints(scroll, constraints); dialog.Add(scroll); constraints.gridwidth = GridBagConstraints.Relative; constraints.fill = GridBagConstraints.None; constraints.weighty = 0.0; gridbag.SetConstraints(okay, constraints); dialog.Add(okay); constraints.gridwidth = GridBagConstraints.Remainder; gridbag.SetConstraints(cancel, constraints); dialog.Add(cancel); dialog.Pack(); dialog.SetSize(dialog.GetPreferredSize()); dialog.SetVisible(true); if (fileList.IsSelectionEmpty()) { return(null); } return(files[fileList.GetSelectedIndex()]); }