Package io.emmet.eclipse

Source Code of io.emmet.eclipse.EclipseEmmetPlugin

package io.emmet.eclipse;

import io.emmet.Emmet;
import io.emmet.eclipse.preferences.PreferenceConstants;

import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.util.IPropertyChangeListener;
import org.eclipse.jface.util.PropertyChangeEvent;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;


/**
* The activator class controls the plug-in life cycle
*/
public class EclipseEmmetPlugin extends AbstractUIPlugin {

  // The plug-in ID
  public static final String PLUGIN_ID = "io.emmet.eclipse"; //$NON-NLS-1$

  // The shared instance
  private static EclipseEmmetPlugin plugin;
 
  /**
   * The constructor
   */
  public EclipseEmmetPlugin() {
  }

  /*
   * (non-Javadoc)
   * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
   */
  public void start(BundleContext context) throws Exception {
    super.start(context);
    plugin = this;
   
    Emmet.setUserDataDelegate(new EclipseUserData());
   
    // XXX maybe there's a better place for such listener?
    getDefault().getPreferenceStore().addPropertyChangeListener(new IPropertyChangeListener() {
      @Override
      public void propertyChange(PropertyChangeEvent event) {
        if (event.getProperty() == PreferenceConstants.P_EXTENSIONS_PATH) {
          Emmet.reset();
        }
      }
    });
  }

  /*
   * (non-Javadoc)
   * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
   */
  public void stop(BundleContext context) throws Exception {
    plugin = null;
    super.stop(context);
  }

  /**
   * Returns the shared instance
   *
   * @return the shared instance
   */
  public static EclipseEmmetPlugin getDefault() {
    return plugin;
  }

  /**
   * Returns an image descriptor for the image file at the given
   * plug-in relative path
   *
   * @param path the path
   * @return the image descriptor
   */
  public static ImageDescriptor getImageDescriptor(String path) {
    return imageDescriptorFromPlugin(PLUGIN_ID, path);
  }
}
TOP

Related Classes of io.emmet.eclipse.EclipseEmmetPlugin

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.