/** * Adds a ItemListener to the button. * * @see #removeItemListener(ItemListener) */ @Override public void addItemListener(ItemListener il) { addEventListener(ItemListener.class, il); }
@Override public void fireIntermediateEvents() { super.fireIntermediateEvents(); if (buttonGroup != null) { buttonGroup.fireDelayedIntermediateEvents(); } }
/** * Set the font. * * @param font the new font */ public void setSelectionFont(SFont font) { SFont oldVal = this.getFont(); setAttributes(SELECTOR_SELECTED, CSSStyleSheet.getAttributes(font)); propertyChangeSupport.firePropertyChange("font", oldVal, this.getSelectionFont()); }
SAbstractIconTextCompound c = (SAbstractIconTextCompound) comp; if (name.equals("TEXT")) c.setText(value); else if (name.startsWith("ICON")) { switch (name) { case "ICON": c.setIcon(new SURLIcon(value)); break; case "ICONWIDTH": try { int width = Integer.parseInt(value); if (c.getIcon() != null) { c.getIcon().setIconWidth(width); if (c.getDisabledIcon() != null) { c.getDisabledIcon().setIconWidth(width); if (c.getSelectedIcon() != null) { c.getSelectedIcon().setIconWidth(width); if (c.getRolloverIcon() != null) { c.getRolloverIcon().setIconWidth(width); if (c.getRolloverSelectedIcon() != null) { c.getRolloverSelectedIcon().setIconWidth(width); if (c.getPressedIcon() != null) { c.getPressedIcon().setIconWidth(width);
/** * Sets the label of the button. */ public void setText(String t) { if (isDifferent(text, t)) { String oldVal = this.text; // do reload if previous text was null if (isUpdatePossible() && text != null) { if (SButton.class.isAssignableFrom(getClass())) update(((ButtonCG) getCG()).getTextUpdate((SButton) this, t)); else if (SCheckBox.class.isAssignableFrom(getClass())) update(((CheckBoxCG) getCG()).getTextUpdate((SCheckBox) this, t)); else if (SRadioButton.class.isAssignableFrom(getClass())) update(((RadioButtonCG) getCG()).getTextUpdate((SRadioButton) this, t)); else if (SToggleButton.class.isAssignableFrom(getClass())) update(((ToggleButtonCG) getCG()).getTextUpdate((SToggleButton) this, t)); else if (SClickable.class.isAssignableFrom(getClass())) update(((ClickableCG) getCG()).getTextUpdate((SClickable) this, t)); else reload(); } else { reload(); } text = t; propertyChangeSupport.firePropertyChange("text", oldVal, this.text); } }
/** * Toggle the selection. If the new selection * is different to the old selection * an {@link ItemEvent} is raised. */ public void setSelected(boolean selected) { if (model.isSelected() != selected) { boolean oldVal = model.isSelected(); model.setSelected(selected); propertyChangeSupport.firePropertyChange("selected", oldVal, model.isSelected()); if (!delayEvents) { fireStateChanged(); fireItemStateChanged(new ItemEvent(this, ItemEvent.ITEM_STATE_CHANGED, this, model.isSelected() ? ItemEvent.SELECTED : ItemEvent.DESELECTED)); delayedEvent = false; } else delayedEvent = true; reload(); } }
@Override public void fireFinalEvents() { super.fireFinalEvents(); if (delayedEvent) { fireStateChanged(); fireItemStateChanged(new ItemEvent(this, ItemEvent.ITEM_STATE_CHANGED, this, model.isSelected() ? ItemEvent.SELECTED : ItemEvent.DESELECTED)); delayedEvent = false; } } }
iterator = buttonEvents.iterator(); while (iterator.hasNext()) { ((SAbstractIconTextCompound) iterator.next()).fireIntermediateEvents(); iterator = buttonEvents.iterator(); while (iterator.hasNext()) { ((SAbstractIconTextCompound) iterator.next()).fireFinalEvents();
/** * Notifies all listeners that have registered interest for * notification on this event type. The event instance * is lazily created using the parameters passed into * the fire method. * * @see EventListenerList */ protected void fireStateChanged() { // Guaranteed to return a non-null array Object[] listeners = getListenerList(); // Process the listeners last to first, notifying // those that are interested in this event for (int i = listeners.length - 2; i >= 0; i -= 2) { if (listeners[i] == ChangeListener.class) { // Lazily create the event: if (changeEvent == null) changeEvent = new ChangeEvent(this); ((ChangeListener) listeners[i + 1]).stateChanged(changeEvent); } } }
@Override public void fireFinalEvents() { super.fireFinalEvents(); fireActionPerformed(new ActionEvent(this, ActionEvent.ACTION_PERFORMED, actionCommand)); if (buttonGroup != null) buttonGroup.fireDelayedFinalEvents(); }
/** * Sets the icon for the compound. * * @param i the icon. */ public void setIcon(SIcon i) { SIcon oldVal = this.icon; if (isDifferent(icon, i)) { // do reload if previous icon was null if (isUpdatePossible() && icon != null) { if (SButton.class.isAssignableFrom(getClass())) update(((ButtonCG) getCG()).getIconUpdate((SButton) this, i)); else if (SCheckBox.class.isAssignableFrom(getClass())) update(((CheckBoxCG) getCG()).getIconUpdate((SCheckBox) this, i)); else if (SRadioButton.class.isAssignableFrom(getClass())) update(((RadioButtonCG) getCG()).getIconUpdate((SRadioButton) this, i)); else if (SToggleButton.class.isAssignableFrom(getClass())) update(((ToggleButtonCG) getCG()).getIconUpdate((SToggleButton) this, i)); else if (SClickable.class.isAssignableFrom(getClass())) update(((ClickableCG) getCG()).getIconUpdate((SClickable) this, i)); else reload(); } else { reload(); } icon = i; } propertyChangeSupport.firePropertyChange("icon", oldVal, this.icon); }
/** * Reports a selection change. * * @param ie report this event to all listeners * @see java.awt.event.ItemListener * @see java.awt.ItemSelectable */ protected void fireItemStateChanged(ItemEvent ie) { if (ie == null) return; // Guaranteed to return a non-null array Object[] listeners = getListenerList(); // Process the listeners last to first, notifying // those that are interested in this event for (int i = listeners.length - 2; i >= 0; i -= 2) { if (listeners[i] == ItemListener.class) { ((ItemListener) listeners[i + 1]).itemStateChanged(ie); } } }
/** * Adds a <code>ChangeListener</code> to the button. * * @param l the listener to be added */ public void addChangeListener(ChangeListener l) { addEventListener(ChangeListener.class, l); }