Example usage for org.eclipse.jface.util IPropertyChangeListener propertyChange

List of usage examples for org.eclipse.jface.util IPropertyChangeListener propertyChange

Introduction

In this page you can find the example usage for org.eclipse.jface.util IPropertyChangeListener propertyChange.

Prototype

public void propertyChange(PropertyChangeEvent event);

Source Link

Document

Notification that a property has changed.

Usage

From source file:com.agynamix.platform.impl.PreferenceConfigAdapterImpl.java

License:Open Source License

/**
 * Forward this event to other registered listeners
 * //ww  w.  j  a v  a2  s  .  c o m
 * @param event
 *          PropertyChangeEvent
 */
void propagatePropertyChangeEvent(PropertyChangeEvent event) {
    final Object[] finalListeners = this.listeners.getListeners();
    for (int i = 0; i < finalListeners.length; ++i) {
        IPropertyChangeListener l = (IPropertyChangeListener) finalListeners[i];
        l.propertyChange(event);
    }
}

From source file:com.amalto.workbench.compare.Utilities.java

License:Open Source License

public static void firePropertyChange(final ListenerList listenerList, final PropertyChangeEvent event) {
    if (listenerList == null || listenerList.isEmpty())
        return;/*from   w w  w .  jav  a  2s.  co  m*/
    // Legacy listeners may expect to get notified in the UI thread
    Runnable runnable = new Runnable() {

        public void run() {
            if (listenerList != null) {
                Object[] listeners = listenerList.getListeners();
                for (int i = 0; i < listeners.length; i++) {
                    final IPropertyChangeListener listener = (IPropertyChangeListener) listeners[i];
                    SafeRunner.run(new ISafeRunnable() {

                        public void run() throws Exception {
                            listener.propertyChange(event);
                        }

                        public void handleException(Throwable exception) {
                            // Logged by SafeRunner
                        }
                    });
                }
            }
        }
    };
    if (Display.getCurrent() == null) {
        Display.getDefault().syncExec(runnable);
    } else {
        runnable.run();
    }
}

From source file:com.archimatetool.editor.ui.components.ColorChooser.java

License:Open Source License

/**
 * Fire the given event to listeners/*from  ww  w. ja v  a 2  s .  c o m*/
 * @param propertyName
 * @param oldValue
 * @param newValue
 */
private void fireActionListenerEvent(String propertyName, Object oldValue, Object newValue) {
    final Object[] finalListeners = getListeners();
    if (finalListeners.length > 0) {
        PropertyChangeEvent pEvent = new PropertyChangeEvent(this, propertyName, oldValue, newValue);
        for (int i = 0; i < finalListeners.length; ++i) {
            IPropertyChangeListener listener = (IPropertyChangeListener) finalListeners[i];
            listener.propertyChange(pEvent);
        }
    }
}

From source file:com.github.jennybrown8.wicketsourceopener.preferences.SecurePreferenceStore.java

License:GNU General Public License

@Override
public void firePropertyChangeEvent(String name, Object oldValue, Object newValue) {
    final Object[] finalListeners = getListeners();
    // Do we need to fire an event.
    if (finalListeners.length > 0 && (oldValue == null || !oldValue.equals(newValue))) {
        final PropertyChangeEvent pe = new PropertyChangeEvent(this, name, oldValue, newValue);
        for (int i = 0; i < finalListeners.length; ++i) {
            final IPropertyChangeListener l = (IPropertyChangeListener) finalListeners[i];
            SafeRunnable.run(new SafeRunnable(JFaceResources.getString("PreferenceStore.changeError")) { //$NON-NLS-1$
                public void run() {
                    l.propertyChange(pe);
                }//from www . j a v  a  2  s.  c om
            });
        }
    }
}

From source file:com.github.sdbg.debug.ui.internal.util.PreferencesAdapter.java

License:Open Source License

/**
 * {@inheritDoc}/* w w  w.j a va2 s. c  om*/
 */
@Override
public void firePropertyChangeEvent(String name, Object oldValue, Object newValue) {
    if (!fSilent) {
        final PropertyChangeEvent event = new PropertyChangeEvent(this, name, oldValue, newValue);
        Object[] listeners = fListeners.getListeners();
        for (int i = 0; i < listeners.length; i++) {
            final IPropertyChangeListener listener = (IPropertyChangeListener) listeners[i];
            Runnable runnable = new Runnable() {
                @Override
                public void run() {
                    listener.propertyChange(event);
                }
            };

            if (Display.getCurrent() != null) {
                runnable.run();
            } else {
                // Post runnable into UI thread
                Shell shell = UIUtils.getActiveWorkbenchShell();
                Display display;
                if (shell != null) {
                    display = shell.getDisplay();
                } else {
                    display = Display.getDefault();
                }
                display.asyncExec(runnable);
            }
        }
    }
}

From source file:com.google.dart.tools.ui.internal.text.functions.PreferencesAdapter.java

License:Open Source License

/**
 * {@inheritDoc}//from  w w  w.j a v  a  2  s. co m
 */
@Override
public void firePropertyChangeEvent(String name, Object oldValue, Object newValue) {
    if (!fSilent) {
        final PropertyChangeEvent event = new PropertyChangeEvent(this, name, oldValue, newValue);
        Object[] listeners = fListeners.getListeners();
        for (int i = 0; i < listeners.length; i++) {
            final IPropertyChangeListener listener = (IPropertyChangeListener) listeners[i];
            Runnable runnable = new Runnable() {
                @Override
                public void run() {
                    listener.propertyChange(event);
                }
            };

            if (Display.getCurrent() != null) {
                runnable.run();
            } else {
                // Post runnable into UI thread
                Shell shell = DartToolsPlugin.getActiveWorkbenchShell();
                Display display;
                if (shell != null) {
                    display = shell.getDisplay();
                } else {
                    display = Display.getDefault();
                }
                display.asyncExec(runnable);
            }
        }
    }
}

From source file:com.iw.plugins.spindle.core.eclipse.ProjectPreferenceStore.java

License:Open Source License

public void firePropertyChangeEvent(String name, Object oldValue, Object newValue) {
    final Object[] finalListeners = this.listeners.getListeners();
    // Do we need to fire an event.
    if (finalListeners.length > 0 && (oldValue == null || !oldValue.equals(newValue))) {
        final PropertyChangeEvent pe = new PropertyChangeEvent(this, name, oldValue, newValue);
        //   FIXME: need to do this without dependency on
        // org.eclipse.core.runtime
        //      Platform.run(new
        // SafeRunnable(JFaceResources.getString("PreferenceStore.changeError"))
        // { //$NON-NLS-1$
        //         public void run() {
        for (int i = 0; i < finalListeners.length; ++i) {
            IPropertyChangeListener l = (IPropertyChangeListener) finalListeners[i];
            l.propertyChange(pe);
        }/*from   w w  w.  j av a  2 s .c  o m*/
        //         }
        //      });
    }
}

From source file:com.nokia.tools.media.utils.editor.frameanimation.FrameAnimationContainer.java

License:Open Source License

protected void notityPropertyChangedListeners(final String propertyName, final Object oldValue,
        final Object newValue) {
    if (listeners.size() == 0) {
        return;//from w w w  .jav a  2s.co  m
    }

    ExecutionThread.INSTANCE.execute(new Runnable() {
        public void run() {
            synchronized (listeners) {
                for (IPropertyChangeListener listener : listeners) {
                    listener.propertyChange(new org.eclipse.jface.util.PropertyChangeEvent(this, propertyName,
                            oldValue, newValue));
                }
            }
        };
    });
}

From source file:com.nokia.tools.media.utils.tooltip.TitlebarComposite.java

License:Open Source License

public void addTitleAction(final IAction action, EActionLocation location) {
    final Canvas canvas = new Canvas(titlebar, SWT.NONE);
    switch (location) {
    case BEGINNING:
        canvas.moveAbove(null);//from  ww w  .  j  a va 2s  . c o m
        break;
    case END:
        canvas.moveBelow(null);
        break;
    case ABOVE_TITLE:
        canvas.moveAbove(title);
        break;
    case BELOV_TITLE:
    default:
        canvas.moveBelow(title);
        break;
    }

    ((GridLayout) titlebar.getLayout()).numColumns++;

    if (resourcesToDispose == null) {
        resourcesToDispose = new ArrayList<Resource>();
    }

    final CanvasListener canvasListener = new CanvasListener(action, canvas);

    final IPropertyChangeListener propertyChangeListener = new IPropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent event) {
            if (IAction.IMAGE == event.getProperty()) {
                ImageDescriptor imgDesc = action.getImageDescriptor();
                ImageDescriptor hoverImgDesc = action.getHoverImageDescriptor();
                ImageDescriptor disabledImgDesc = action.getDisabledImageDescriptor();

                canvasListener.setImg(imgDesc);
                canvasListener.setHoverImg(hoverImgDesc);
                canvasListener.setDisabledImg(disabledImgDesc);
            }

            if (IAction.TEXT == event.getProperty() || IAction.TOOL_TIP_TEXT == event.getProperty()) {
                if (action.getToolTipText() != null) {
                    canvas.setToolTipText(action.getToolTipText());
                } else if (action.getText() != null) {
                    canvas.setToolTipText(action.getText());
                }
            }

            canvas.redraw();
            canvas.update();
        }
    };

    action.addPropertyChangeListener(propertyChangeListener);

    canvas.addDisposeListener(new DisposeListener() {
        public void widgetDisposed(DisposeEvent e) {
            action.removePropertyChangeListener(propertyChangeListener);
        }
    });

    propertyChangeListener.propertyChange(new PropertyChangeEvent(this, IAction.IMAGE, null, null));
    propertyChangeListener.propertyChange(new PropertyChangeEvent(this, IAction.TEXT, null, null));

    Rectangle bounds = canvasListener.img.getBounds();

    GridData gd = new GridData(bounds.width, bounds.height);
    canvas.setLayoutData(gd);

    canvas.addListener(SWT.Paint, canvasListener);
    canvas.addListener(SWT.MouseEnter, canvasListener);
    canvas.addListener(SWT.MouseExit, canvasListener);
    canvas.addListener(SWT.MouseUp, canvasListener);
}

From source file:com.nokia.tools.theme.s60.ui.animation.controls.EffectAnimationUI.java

License:Open Source License

protected void notityPropertyChangedListeners(final String propertyName, final Object oldValue,
        final Object newValue) {

    final List<IPropertyChangeListener> listeners = new ArrayList<IPropertyChangeListener>(this.listeners);

    if (listeners.size() == 0) {
        return;//from   w w  w .j a  v  a2 s. c om
    }

    if (Thread.currentThread().getName().startsWith(ExecutionThread.NAME)) {
        synchronized (listeners) {
            for (IPropertyChangeListener listener : listeners) {
                listener.propertyChange(
                        new org.eclipse.jface.util.PropertyChangeEvent(this, propertyName, oldValue, newValue));
            }
        }
    } else {
        ExecutionThread.INSTANCE.execute(new Runnable() {
            public void run() {
                synchronized (listeners) {
                    for (IPropertyChangeListener listener : listeners) {
                        listener.propertyChange(new org.eclipse.jface.util.PropertyChangeEvent(this,
                                propertyName, oldValue, newValue));
                    }
                }
            };
        });
    }
}