/** * Adds a painter to the queue of painters * @param painter the painter that is added */ public void addPainter(Painter<T> painter) { Collection<Painter<T>> old = new ArrayList<Painter<T>>(getPainters()); this.painters.add(painter); if (painter instanceof AbstractPainter) { ((AbstractPainter<?>) painter).addPropertyChangeListener(handler); } setDirty(true); firePropertyChange("painters", old, getPainters()); }
/** * Installs a listener to the painter if appropriate. * This implementation registers its painterListener if * the Painter is of type AbstractPainter. */ protected void installPainterListener() { if (getPainter() instanceof AbstractPainter) { ((AbstractPainter) getPainter()).addPropertyChangeListener(getPainterListener()); } }
/** * Installs a listener to the painter if appropriate. * This implementation registers its painterListener if * the Painter is of type AbstractPainter. */ protected void installPainterListener() { if (getPainter() instanceof AbstractPainter) { ((AbstractPainter) getPainter()).addPropertyChangeListener(getPainterListener()); } }
/** * Installs a listener to the painter if appropriate. * This implementation registers its painterListener if * the Painter is of type AbstractPainter. */ protected void installPainterListener() { if (getPainter() instanceof AbstractPainter) { ((AbstractPainter) getPainter()).addPropertyChangeListener(getPainterListener()); } }
/** * Installs a listener to the painter if appropriate. * This implementation registers its painterListener if * the Painter is of type AbstractPainter. */ protected void installPainterListener() { if (getPainter() instanceof AbstractPainter) { ((AbstractPainter) getPainter()).addPropertyChangeListener(getPainterListener()); } }
/** * Installs a listener to the painter if appropriate. * This implementation registers its painterListener if * the Painter is of type AbstractPainter. */ protected void installPainterListener() { if (getPainter() instanceof AbstractPainter) { ((AbstractPainter) getPainter()).addPropertyChangeListener(getPainterListener()); } }
/** * Sets the array of Painters to use. These painters will be executed in * order. A null value will be treated as an empty array. To prevent unexpected * behavior all values in provided array are copied to internally held array. * Any changes to the original array will not be reflected. * * @param painters array of painters, which will be painted in order */ public void setPainters(List<? extends Painter<T>> painters) { Collection<Painter<T>> old = new ArrayList<Painter<T>>(getPainters()); for (Painter<T> p : old) { if (p instanceof AbstractPainter) { ((AbstractPainter<?>) p).removePropertyChangeListener(handler); } } this.painters.clear(); this.painters.addAll(painters); for (Painter<T> p : this.painters) { if (p instanceof AbstractPainter) { ((AbstractPainter<?>) p).addPropertyChangeListener(handler); } } setDirty(true); firePropertyChange("painters", old, getPainters()); }
((AbstractPainter<?>) p).addPropertyChangeListener(handler);
((AbstractPainter<?>) p).addPropertyChangeListener(handler);
((AbstractPainter<?>) p).addPropertyChangeListener(handler);
/** * Issue #1218-swingx: must fire property change if contained painter * changed. */ public void testDirtyNotification() { AbstractPainter<Object> child = spy(new DummyPainter()); ((CompoundPainter<?>) p).setPainters(child); assertThat(p.isDirty(), is(true)); verify(child, never()).setDirty(true); p.paint(g, null, 10, 10); assertThat(p.isDirty(), is(false)); PropertyChangeListener pcl = mock(PropertyChangeListener.class); p.addPropertyChangeListener(pcl); child.setDirty(true); assertThat(p.isDirty(), is(true)); ArgumentCaptor<PropertyChangeEvent> captor = ArgumentCaptor.forClass(PropertyChangeEvent.class); verify(pcl).propertyChange(captor.capture()); assertThat(captor.getValue().getSource(), CoreMatchers.<Object>is(sameInstance(p))); assertThat(captor.getValue().getPropertyName(), is("dirty")); assertThat(captor.getAllValues().size(), is(1)); } }
/** * Sets a Painter to use to paint the background of this JXPanel. * * @param p the new painter * @see #getBackgroundPainter() */ @Override public void setBackgroundPainter(Painter p) { Painter old = getBackgroundPainter(); if (old instanceof AbstractPainter) { ((AbstractPainter<?>) old).removePropertyChangeListener(painterChangeListener); } backgroundPainter = p; if (backgroundPainter instanceof AbstractPainter) { ((AbstractPainter<?>) backgroundPainter).addPropertyChangeListener(getPainterChangeListener()); } firePropertyChange("backgroundPainter", old, getBackgroundPainter()); repaint(); }
/** * Sets a Painter to use to paint the background of this JXPanel. * * @param p the new painter * @see #getBackgroundPainter() */ @Override public void setBackgroundPainter(Painter p) { Painter old = getBackgroundPainter(); if (old instanceof AbstractPainter) { ((AbstractPainter<?>) old).removePropertyChangeListener(painterChangeListener); } backgroundPainter = p; if (backgroundPainter instanceof AbstractPainter) { ((AbstractPainter<?>) backgroundPainter).addPropertyChangeListener(getPainterChangeListener()); } firePropertyChange("backgroundPainter", old, getBackgroundPainter()); repaint(); }
ap.addPropertyChangeListener("dirty", listener);
/** * Sets a Painter to use to paint the background of this JXPanel. * * @param p the new painter * @see #getBackgroundPainter() */ @Override public void setBackgroundPainter(Painter p) { Painter old = getBackgroundPainter(); if (old instanceof AbstractPainter) { ((AbstractPainter<?>) old).removePropertyChangeListener(painterChangeListener); } backgroundPainter = p; if (backgroundPainter instanceof AbstractPainter) { ((AbstractPainter<?>) backgroundPainter).addPropertyChangeListener(getPainterChangeListener()); } firePropertyChange("backgroundPainter", old, getBackgroundPainter()); repaint(); }
/** * Sets a Painter to use to paint the background of this JXPanel. * * @param p the new painter * @see #getBackgroundPainter() */ @Override public void setBackgroundPainter(Painter p) { Painter old = getBackgroundPainter(); if (old instanceof AbstractPainter) { ((AbstractPainter<?>) old).removePropertyChangeListener(painterChangeListener); } backgroundPainter = p; if (backgroundPainter instanceof AbstractPainter) { ((AbstractPainter<?>) backgroundPainter).addPropertyChangeListener(getPainterChangeListener()); } firePropertyChange("backgroundPainter", old, getBackgroundPainter()); repaint(); }