Java tutorial
/* * Copyright (c) 2012 Google Inc. * * All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse * Public License v1.0 which accompanies this distribution, and is available at * * http://www.eclipse.org/legal/epl-v10.html */ package com.google.eclipse.elt.view; import static org.eclipse.core.runtime.IStatus.*; import static com.google.eclipse.elt.view.ImageKeys.*; import java.net.URL; import org.eclipse.core.runtime.*; import org.eclipse.jface.preference.IPreferenceStore; import org.eclipse.jface.resource.*; import org.eclipse.ui.plugin.AbstractUIPlugin; import org.osgi.framework.BundleContext; /** * The activator class controls the plug-in life cycle. * * @author alruiz@google.com (Alex Ruiz) */ public class Activator extends AbstractUIPlugin { public static final String PLUGIN_ID = "com.google.eclipse.terminal.local"; private static Activator plugin; @Override public void start(BundleContext context) throws Exception { super.start(context); plugin = this; } @Override public void stop(BundleContext context) throws Exception { plugin = null; super.stop(context); } @Override protected void initializeImageRegistry(ImageRegistry registry) { addImage(registry, CHANGE_TITLE, "icons/change_title.gif"); addImage(registry, NEW_TERMINAL, "icons/new_terminal.gif"); addImage(registry, SCROLL_LOCK, "icons/scroll_lock.gif"); } private void addImage(ImageRegistry registry, String key, String path) { URL imageUrl = instance().getBundle().getEntry(path); registry.put(key, ImageDescriptor.createFromURL(imageUrl)); } public static void log(String message, Throwable cause) { log(new Status(ERROR, PLUGIN_ID, OK, message, cause)); } public static void log(IStatus status) { instance().getLog().log(status); } public static ImageDescriptor imageDescriptor(String key) { return instance().getImageRegistry().getDescriptor(key); } public static Activator instance() { return plugin; } public static IPreferenceStore preferenceStore() { return instance().getPreferenceStore(); } }