public void setPressed(boolean b) { if ((isPressed() == b) || !isEnabled()) { return; } if (b == false && isArmed()) { if (this.isSelected()) { if (label.isUnderline()) { label.setUnderline(false); setSelected(false); } else { label.setUnderline(true); } } else { setSelected(true); } } if (b) { stateMask |= PRESSED; } else { stateMask &= ~PRESSED; } fireStateChanged(); if (!isPressed() && isArmed()) { int modifiers = 0; AWTEvent currentEvent = EventQueue.getCurrentEvent(); if (currentEvent instanceof InputEvent) { modifiers = ((InputEvent) currentEvent).getModifiers(); } else if (currentEvent instanceof ActionEvent) { modifiers = ((ActionEvent) currentEvent).getModifiers(); } fireActionPerformed( new ActionEvent( this, ActionEvent.ACTION_PERFORMED, getActionCommand(), EventQueue.getMostRecentEventTime(), modifiers)); } }
public IkenshoUndelineIntegerCheckBox() { super(); check.setModel(new IkensyoUndelineIntegerCheckBoxButtonModel(text)); try { jbInit(); } catch (Exception e) { e.printStackTrace(); } text.addMouseListener( new MouseAdapter() { int flag = FREE; static final int FREE = 0; static final int PRESS = 1; static final int ENTER = 2; public void mousePressed(MouseEvent e) { flag |= PRESS; if (!check.hasFocus()) { check.requestFocus(); } } public void mouseReleased(MouseEvent e) { if ((flag & (PRESS | ENTER)) != (PRESS | ENTER)) { return; } if (check.isSelected()) { if (text.isUnderline()) { check.setSelected(false); text.setUnderline(false); } else { text.setUnderline(true); } } else { // 未選択ならば選択 check.setSelected(true); } if (!check.hasFocus()) { check.requestFocus(); } flag &= ~PRESS; } public void mouseEntered(MouseEvent e) { flag |= ENTER; } public void mouseExited(MouseEvent e) { flag &= ~ENTER; } }); }
public void setUnderlineBindPath(String underlineBindPath) { text.setBindPath(underlineBindPath); }
public String getText() { return text.getText(); }
public String getUnderlineBindPath() { return text.getBindPath(); }