Making a JInternalFrame Modal
up vote
0
down vote
favorite
I have a JDialog that pulls a list of entries from a database.
It looks like this:
https://i.stack.imgur.com/KPC5c.png
I want to take the JDialog and make it into a JIntneralFrame so I can have it inside a desktop pane like this:
https://i.stack.imgur.com/4cBZd.png
The JDialog just contains a JPanel that contains all of the fields and buttons, so changing it to a JInternalFrame is a relatively simple task (just add the JPanel to a JInternalFrame).
The problem is that the JInternalFrame is not modal. I need the internal frame to be modal to the frame in the 2nd image.
EDIT
I've already tried using JOptionPane, and had some limited success
JOptionPane.showInternalDialog(null, panel,
JOptionPane.DEFAULT_OPTION,
JOptionPane.PLAIN_MESSAGE,
null,
new Object {},
null);
but it is not giving me the results I need. The buttons in my panel cannot close out the frame that the JOptionPane creates. The Cancel button should close the frame, while the Select button sets a value then closes the frame. Is there any way I could make the buttons work like this for a JOptionPane? I want to use my own buttons, not the buttons that the JOptionPane provides automatically.
So how would I go about making a JInternalFrame modal like a JDialog? Preferably, it would only be modal to the internal frame that called it and not to the others.
If it helps, here is the code for my JDialog:
public class RecordSelectMenu extends JDialog {
private JPanel contentPane;
private JTextField textField;
private JTable table;
private final String queryType;
private final String conditional;
private Object selectionID;
private int busy;
private JDatabase database;
/**
* Create the dialog.
*/
public RecordSelectMenu(String headerText, String searchKey, String
primaryKey, String query, String condition, JDatabase database) {
this.database = database;
this.queryType = query;
this.conditional = condition;
//Set dialog modal
setModal(true);
setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
setBounds(100, 100, 650, 360);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel tableQueryLabel = new JLabel(headerText);
tableQueryLabel.setBounds(10, 11, 269, 14);
tableQueryLabel.setFont(new Font("Yu Gothic UI Semibold", Font.BOLD,
16));
contentPane.add(tableQueryLabel);
JSeparator separator = new JSeparator();
separator.setBounds(0, 36, 634, 21);
contentPane.add(separator);
JButton searchButton = new JButton("Search");
searchButton.setBounds(212, 287, 89, 23);
searchButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
search();
}
});
contentPane.add(searchButton);
textField = new JTextField();
textField.setBounds(80, 288, 122, 20);
textField.addKeyListener(new KeyListener() {
@Override
public void keyPressed(KeyEvent arg0) {
if(arg0.getKeyCode() == KeyEvent.VK_ENTER) {
search();
}
}
@Override
public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent arg0) {
// TODO Auto-generated method stub
}
});
contentPane.add(textField);
textField.setColumns(10);
JLabel searchTermLabel = new JLabel(searchKey);
searchTermLabel.setBounds(10, 294, 89, 14);
contentPane.add(searchTermLabel);
JButton selectButton = new JButton("Select");
selectButton.setBounds(311, 287, 89, 23);
selectButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
select();
dispose();
}
});
contentPane.add(selectButton);
JButton cancelButton = new JButton("Cancel");
cancelButton.setBounds(521, 287, 89, 23);
cancelButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
dispose();
}
});
contentPane.add(cancelButton);
JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(10, 48, 607, 228);
contentPane.add(scrollPane);
table = new JTable();
scrollPane.setViewportView(table);
}
public int isBusy() {
return busy;
}
public Object getSelectionPK() {
return selectionID;
}
private void select() {
selectionID = table.getValueAt(table.getSelectedRow(), 0);
}
private void search() {
try {
Query query = new Query(database, (queryType + " " + conditional + "
'*" + textField.getText() + "*' "));
TableModel tableBuilder = new DefaultTableModel(query.getAll(),
query.getColumnNames());
this.table.setModel( tableBuilder);
repaint();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
java swing
add a comment |
up vote
0
down vote
favorite
I have a JDialog that pulls a list of entries from a database.
It looks like this:
https://i.stack.imgur.com/KPC5c.png
I want to take the JDialog and make it into a JIntneralFrame so I can have it inside a desktop pane like this:
https://i.stack.imgur.com/4cBZd.png
The JDialog just contains a JPanel that contains all of the fields and buttons, so changing it to a JInternalFrame is a relatively simple task (just add the JPanel to a JInternalFrame).
The problem is that the JInternalFrame is not modal. I need the internal frame to be modal to the frame in the 2nd image.
EDIT
I've already tried using JOptionPane, and had some limited success
JOptionPane.showInternalDialog(null, panel,
JOptionPane.DEFAULT_OPTION,
JOptionPane.PLAIN_MESSAGE,
null,
new Object {},
null);
but it is not giving me the results I need. The buttons in my panel cannot close out the frame that the JOptionPane creates. The Cancel button should close the frame, while the Select button sets a value then closes the frame. Is there any way I could make the buttons work like this for a JOptionPane? I want to use my own buttons, not the buttons that the JOptionPane provides automatically.
So how would I go about making a JInternalFrame modal like a JDialog? Preferably, it would only be modal to the internal frame that called it and not to the others.
If it helps, here is the code for my JDialog:
public class RecordSelectMenu extends JDialog {
private JPanel contentPane;
private JTextField textField;
private JTable table;
private final String queryType;
private final String conditional;
private Object selectionID;
private int busy;
private JDatabase database;
/**
* Create the dialog.
*/
public RecordSelectMenu(String headerText, String searchKey, String
primaryKey, String query, String condition, JDatabase database) {
this.database = database;
this.queryType = query;
this.conditional = condition;
//Set dialog modal
setModal(true);
setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
setBounds(100, 100, 650, 360);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel tableQueryLabel = new JLabel(headerText);
tableQueryLabel.setBounds(10, 11, 269, 14);
tableQueryLabel.setFont(new Font("Yu Gothic UI Semibold", Font.BOLD,
16));
contentPane.add(tableQueryLabel);
JSeparator separator = new JSeparator();
separator.setBounds(0, 36, 634, 21);
contentPane.add(separator);
JButton searchButton = new JButton("Search");
searchButton.setBounds(212, 287, 89, 23);
searchButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
search();
}
});
contentPane.add(searchButton);
textField = new JTextField();
textField.setBounds(80, 288, 122, 20);
textField.addKeyListener(new KeyListener() {
@Override
public void keyPressed(KeyEvent arg0) {
if(arg0.getKeyCode() == KeyEvent.VK_ENTER) {
search();
}
}
@Override
public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent arg0) {
// TODO Auto-generated method stub
}
});
contentPane.add(textField);
textField.setColumns(10);
JLabel searchTermLabel = new JLabel(searchKey);
searchTermLabel.setBounds(10, 294, 89, 14);
contentPane.add(searchTermLabel);
JButton selectButton = new JButton("Select");
selectButton.setBounds(311, 287, 89, 23);
selectButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
select();
dispose();
}
});
contentPane.add(selectButton);
JButton cancelButton = new JButton("Cancel");
cancelButton.setBounds(521, 287, 89, 23);
cancelButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
dispose();
}
});
contentPane.add(cancelButton);
JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(10, 48, 607, 228);
contentPane.add(scrollPane);
table = new JTable();
scrollPane.setViewportView(table);
}
public int isBusy() {
return busy;
}
public Object getSelectionPK() {
return selectionID;
}
private void select() {
selectionID = table.getValueAt(table.getSelectedRow(), 0);
}
private void search() {
try {
Query query = new Query(database, (queryType + " " + conditional + "
'*" + textField.getText() + "*' "));
TableModel tableBuilder = new DefaultTableModel(query.getAll(),
query.getColumnNames());
this.table.setModel( tableBuilder);
repaint();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
java swing
The showInternal* methods of JOptionPane are probably the easiest route, if you don’t mind a Close button at the bottom.
– VGR
Nov 7 at 17:22
I've tried using that, and had limited success. I added the JPanel from my dialog and had it so only my buttons would show. The problem is that the buttons in my panel cannot close out the JOptionPane. The Cancel button just closes the window, while the Select button returns a value then closes it.
– Danny
Nov 7 at 17:28
Try having your buttons’ action listeners do((JOptionPane) SwingUtilities.getAncestorOfClass(JOptionPane.class, button)).setValue(JOptionPane.CLOSED_OPTION);
. That should close it.
– VGR
Nov 7 at 17:33
Looks like that did the trick. Thanks!
– Danny
Nov 7 at 20:47
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I have a JDialog that pulls a list of entries from a database.
It looks like this:
https://i.stack.imgur.com/KPC5c.png
I want to take the JDialog and make it into a JIntneralFrame so I can have it inside a desktop pane like this:
https://i.stack.imgur.com/4cBZd.png
The JDialog just contains a JPanel that contains all of the fields and buttons, so changing it to a JInternalFrame is a relatively simple task (just add the JPanel to a JInternalFrame).
The problem is that the JInternalFrame is not modal. I need the internal frame to be modal to the frame in the 2nd image.
EDIT
I've already tried using JOptionPane, and had some limited success
JOptionPane.showInternalDialog(null, panel,
JOptionPane.DEFAULT_OPTION,
JOptionPane.PLAIN_MESSAGE,
null,
new Object {},
null);
but it is not giving me the results I need. The buttons in my panel cannot close out the frame that the JOptionPane creates. The Cancel button should close the frame, while the Select button sets a value then closes the frame. Is there any way I could make the buttons work like this for a JOptionPane? I want to use my own buttons, not the buttons that the JOptionPane provides automatically.
So how would I go about making a JInternalFrame modal like a JDialog? Preferably, it would only be modal to the internal frame that called it and not to the others.
If it helps, here is the code for my JDialog:
public class RecordSelectMenu extends JDialog {
private JPanel contentPane;
private JTextField textField;
private JTable table;
private final String queryType;
private final String conditional;
private Object selectionID;
private int busy;
private JDatabase database;
/**
* Create the dialog.
*/
public RecordSelectMenu(String headerText, String searchKey, String
primaryKey, String query, String condition, JDatabase database) {
this.database = database;
this.queryType = query;
this.conditional = condition;
//Set dialog modal
setModal(true);
setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
setBounds(100, 100, 650, 360);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel tableQueryLabel = new JLabel(headerText);
tableQueryLabel.setBounds(10, 11, 269, 14);
tableQueryLabel.setFont(new Font("Yu Gothic UI Semibold", Font.BOLD,
16));
contentPane.add(tableQueryLabel);
JSeparator separator = new JSeparator();
separator.setBounds(0, 36, 634, 21);
contentPane.add(separator);
JButton searchButton = new JButton("Search");
searchButton.setBounds(212, 287, 89, 23);
searchButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
search();
}
});
contentPane.add(searchButton);
textField = new JTextField();
textField.setBounds(80, 288, 122, 20);
textField.addKeyListener(new KeyListener() {
@Override
public void keyPressed(KeyEvent arg0) {
if(arg0.getKeyCode() == KeyEvent.VK_ENTER) {
search();
}
}
@Override
public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent arg0) {
// TODO Auto-generated method stub
}
});
contentPane.add(textField);
textField.setColumns(10);
JLabel searchTermLabel = new JLabel(searchKey);
searchTermLabel.setBounds(10, 294, 89, 14);
contentPane.add(searchTermLabel);
JButton selectButton = new JButton("Select");
selectButton.setBounds(311, 287, 89, 23);
selectButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
select();
dispose();
}
});
contentPane.add(selectButton);
JButton cancelButton = new JButton("Cancel");
cancelButton.setBounds(521, 287, 89, 23);
cancelButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
dispose();
}
});
contentPane.add(cancelButton);
JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(10, 48, 607, 228);
contentPane.add(scrollPane);
table = new JTable();
scrollPane.setViewportView(table);
}
public int isBusy() {
return busy;
}
public Object getSelectionPK() {
return selectionID;
}
private void select() {
selectionID = table.getValueAt(table.getSelectedRow(), 0);
}
private void search() {
try {
Query query = new Query(database, (queryType + " " + conditional + "
'*" + textField.getText() + "*' "));
TableModel tableBuilder = new DefaultTableModel(query.getAll(),
query.getColumnNames());
this.table.setModel( tableBuilder);
repaint();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
java swing
I have a JDialog that pulls a list of entries from a database.
It looks like this:
https://i.stack.imgur.com/KPC5c.png
I want to take the JDialog and make it into a JIntneralFrame so I can have it inside a desktop pane like this:
https://i.stack.imgur.com/4cBZd.png
The JDialog just contains a JPanel that contains all of the fields and buttons, so changing it to a JInternalFrame is a relatively simple task (just add the JPanel to a JInternalFrame).
The problem is that the JInternalFrame is not modal. I need the internal frame to be modal to the frame in the 2nd image.
EDIT
I've already tried using JOptionPane, and had some limited success
JOptionPane.showInternalDialog(null, panel,
JOptionPane.DEFAULT_OPTION,
JOptionPane.PLAIN_MESSAGE,
null,
new Object {},
null);
but it is not giving me the results I need. The buttons in my panel cannot close out the frame that the JOptionPane creates. The Cancel button should close the frame, while the Select button sets a value then closes the frame. Is there any way I could make the buttons work like this for a JOptionPane? I want to use my own buttons, not the buttons that the JOptionPane provides automatically.
So how would I go about making a JInternalFrame modal like a JDialog? Preferably, it would only be modal to the internal frame that called it and not to the others.
If it helps, here is the code for my JDialog:
public class RecordSelectMenu extends JDialog {
private JPanel contentPane;
private JTextField textField;
private JTable table;
private final String queryType;
private final String conditional;
private Object selectionID;
private int busy;
private JDatabase database;
/**
* Create the dialog.
*/
public RecordSelectMenu(String headerText, String searchKey, String
primaryKey, String query, String condition, JDatabase database) {
this.database = database;
this.queryType = query;
this.conditional = condition;
//Set dialog modal
setModal(true);
setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
setBounds(100, 100, 650, 360);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel tableQueryLabel = new JLabel(headerText);
tableQueryLabel.setBounds(10, 11, 269, 14);
tableQueryLabel.setFont(new Font("Yu Gothic UI Semibold", Font.BOLD,
16));
contentPane.add(tableQueryLabel);
JSeparator separator = new JSeparator();
separator.setBounds(0, 36, 634, 21);
contentPane.add(separator);
JButton searchButton = new JButton("Search");
searchButton.setBounds(212, 287, 89, 23);
searchButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
search();
}
});
contentPane.add(searchButton);
textField = new JTextField();
textField.setBounds(80, 288, 122, 20);
textField.addKeyListener(new KeyListener() {
@Override
public void keyPressed(KeyEvent arg0) {
if(arg0.getKeyCode() == KeyEvent.VK_ENTER) {
search();
}
}
@Override
public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent arg0) {
// TODO Auto-generated method stub
}
});
contentPane.add(textField);
textField.setColumns(10);
JLabel searchTermLabel = new JLabel(searchKey);
searchTermLabel.setBounds(10, 294, 89, 14);
contentPane.add(searchTermLabel);
JButton selectButton = new JButton("Select");
selectButton.setBounds(311, 287, 89, 23);
selectButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
select();
dispose();
}
});
contentPane.add(selectButton);
JButton cancelButton = new JButton("Cancel");
cancelButton.setBounds(521, 287, 89, 23);
cancelButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
dispose();
}
});
contentPane.add(cancelButton);
JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(10, 48, 607, 228);
contentPane.add(scrollPane);
table = new JTable();
scrollPane.setViewportView(table);
}
public int isBusy() {
return busy;
}
public Object getSelectionPK() {
return selectionID;
}
private void select() {
selectionID = table.getValueAt(table.getSelectedRow(), 0);
}
private void search() {
try {
Query query = new Query(database, (queryType + " " + conditional + "
'*" + textField.getText() + "*' "));
TableModel tableBuilder = new DefaultTableModel(query.getAll(),
query.getColumnNames());
this.table.setModel( tableBuilder);
repaint();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
java swing
java swing
edited Nov 7 at 17:38
asked Nov 7 at 17:08
Danny
11
11
The showInternal* methods of JOptionPane are probably the easiest route, if you don’t mind a Close button at the bottom.
– VGR
Nov 7 at 17:22
I've tried using that, and had limited success. I added the JPanel from my dialog and had it so only my buttons would show. The problem is that the buttons in my panel cannot close out the JOptionPane. The Cancel button just closes the window, while the Select button returns a value then closes it.
– Danny
Nov 7 at 17:28
Try having your buttons’ action listeners do((JOptionPane) SwingUtilities.getAncestorOfClass(JOptionPane.class, button)).setValue(JOptionPane.CLOSED_OPTION);
. That should close it.
– VGR
Nov 7 at 17:33
Looks like that did the trick. Thanks!
– Danny
Nov 7 at 20:47
add a comment |
The showInternal* methods of JOptionPane are probably the easiest route, if you don’t mind a Close button at the bottom.
– VGR
Nov 7 at 17:22
I've tried using that, and had limited success. I added the JPanel from my dialog and had it so only my buttons would show. The problem is that the buttons in my panel cannot close out the JOptionPane. The Cancel button just closes the window, while the Select button returns a value then closes it.
– Danny
Nov 7 at 17:28
Try having your buttons’ action listeners do((JOptionPane) SwingUtilities.getAncestorOfClass(JOptionPane.class, button)).setValue(JOptionPane.CLOSED_OPTION);
. That should close it.
– VGR
Nov 7 at 17:33
Looks like that did the trick. Thanks!
– Danny
Nov 7 at 20:47
The showInternal* methods of JOptionPane are probably the easiest route, if you don’t mind a Close button at the bottom.
– VGR
Nov 7 at 17:22
The showInternal* methods of JOptionPane are probably the easiest route, if you don’t mind a Close button at the bottom.
– VGR
Nov 7 at 17:22
I've tried using that, and had limited success. I added the JPanel from my dialog and had it so only my buttons would show. The problem is that the buttons in my panel cannot close out the JOptionPane. The Cancel button just closes the window, while the Select button returns a value then closes it.
– Danny
Nov 7 at 17:28
I've tried using that, and had limited success. I added the JPanel from my dialog and had it so only my buttons would show. The problem is that the buttons in my panel cannot close out the JOptionPane. The Cancel button just closes the window, while the Select button returns a value then closes it.
– Danny
Nov 7 at 17:28
Try having your buttons’ action listeners do
((JOptionPane) SwingUtilities.getAncestorOfClass(JOptionPane.class, button)).setValue(JOptionPane.CLOSED_OPTION);
. That should close it.– VGR
Nov 7 at 17:33
Try having your buttons’ action listeners do
((JOptionPane) SwingUtilities.getAncestorOfClass(JOptionPane.class, button)).setValue(JOptionPane.CLOSED_OPTION);
. That should close it.– VGR
Nov 7 at 17:33
Looks like that did the trick. Thanks!
– Danny
Nov 7 at 20:47
Looks like that did the trick. Thanks!
– Danny
Nov 7 at 20:47
add a comment |
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53194395%2fmaking-a-jinternalframe-modal%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
The showInternal* methods of JOptionPane are probably the easiest route, if you don’t mind a Close button at the bottom.
– VGR
Nov 7 at 17:22
I've tried using that, and had limited success. I added the JPanel from my dialog and had it so only my buttons would show. The problem is that the buttons in my panel cannot close out the JOptionPane. The Cancel button just closes the window, while the Select button returns a value then closes it.
– Danny
Nov 7 at 17:28
Try having your buttons’ action listeners do
((JOptionPane) SwingUtilities.getAncestorOfClass(JOptionPane.class, button)).setValue(JOptionPane.CLOSED_OPTION);
. That should close it.– VGR
Nov 7 at 17:33
Looks like that did the trick. Thanks!
– Danny
Nov 7 at 20:47