| 1 19 20 package com.sshtools.ui.swing; 21 22 import java.beans.PropertyChangeEvent ; 23 import java.beans.PropertyChangeListener ; 24 25 import javax.swing.Icon ; 26 import javax.swing.JCheckBoxMenuItem ; 27 28 public class ActionCheckBoxMenuItem extends JCheckBoxMenuItem { 29 public ActionCheckBoxMenuItem(ToggleableAction action) { 30 super(action); 31 Icon i = (Icon ) action.getValue(AppAction.SMALL_ICON); 32 if (i != null) { 33 setIcon(i); 34 } 35 action.addPropertyChangeListener(new PropertyChangeListener () { 36 public void propertyChange(PropertyChangeEvent evt) { 37 if (evt.getPropertyName().equals("selected")) { 38 boolean sel = ((Boolean ) evt.getNewValue()).booleanValue(); 39 setSelected(sel); 40 setIcon((Icon ) getAction().getValue(AppAction.SMALL_ICON)); 41 } 42 } 43 }); 44 setSelected(action.isSelected()); 45 } 46 } | Popular Tags |