1 33 34 package edu.rice.cs.util.swing; 35 36 import edu.rice.cs.drjava.ui.MainFrame; 37 import javax.swing.*; 38 39 43 public class ConfirmCheckBoxDialog { 44 private JDialog _dialog; 45 private JOptionPane _optionPane; 46 private JCheckBox _checkBox; 47 48 54 public ConfirmCheckBoxDialog(JFrame parent, String title, Object message) { 55 this(parent, title, message, "Do not show this message again"); 56 } 57 58 65 public ConfirmCheckBoxDialog(JFrame parent, String title, Object message, String checkBoxText) { 66 this(parent, title, message, checkBoxText, JOptionPane.QUESTION_MESSAGE, JOptionPane.YES_NO_OPTION); } 67 68 77 public ConfirmCheckBoxDialog(JFrame parent, String title, Object message, String checkBoxText, int messageType, 78 int optionType) { 79 _optionPane = new JOptionPane(message, messageType, optionType); 80 JPanel checkBoxPane = new JPanel(); 81 checkBoxPane.add(_initCheckBox(checkBoxText)); 82 _optionPane.add(checkBoxPane, 1); 83 _dialog = _optionPane.createDialog(parent, title); 84 } 85 86 87 private JCheckBox _initCheckBox(String text) { 88 _checkBox = new JCheckBox(text); 89 return _checkBox; 90 } 91 92 95 public int show() { 96 MainFrame.setPopupLoc(_dialog, _dialog.getOwner()); 97 _dialog.setVisible(true); 98 99 Object val = _optionPane.getValue(); 100 if (val == null || !(val instanceof Integer )) { 101 return JOptionPane.CLOSED_OPTION; 102 } 103 return ((Integer )val).intValue(); 104 } 105 106 111 public boolean getCheckBoxValue() { 112 return _checkBox.isSelected(); 113 } 114 } | Popular Tags |