mp3mplugin.java

来自「eclise rcp 项目,是非常好的学习源码」· Java 代码 · 共 91 行

JAVA
91
字号
/*******************************************************************************
 * Copyright (c) 2007 Siemens AG
 * 
 * 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
 *
 * Contributors:
 *    Kai T鰀ter - initial API and implementation
 *******************************************************************************/

package com.siemens.ct.mp3m;

import org.eclipse.core.runtime.Platform;
import org.eclipse.jface.preference.IPersistentPreferenceStore;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;

import com.siemens.ct.mp3m.model.physical.MusicFolders;

/**
 * The main plugin class to be used in the desktop.
 */
public class Mp3mPlugin extends AbstractUIPlugin {

	//The shared instance.
	private static Mp3mPlugin plugin;

    // the music folder preference
    private static final String PREF_MUSIC_FOLDERS = "musicFolders"; //$NON-NLS-1$

	/**
	 * The constructor.
	 */
	public Mp3mPlugin() {
		plugin = this;
	}

	/**
	 * This method is called upon plug-in activation
	 */
	public void start(BundleContext context) throws Exception {
		super.start(context);
		if ( isDebugging() ) {
			if ( Boolean.parseBoolean(Platform.getDebugOption("com.siemens.ct.mp3m/start"))== true) {
				System.out.println("Mp3 manager started");
			}
		}
        
        // Loading preferences
        getStateLocation(); // workaround for bug #86750
        IPersistentPreferenceStore store = (IPersistentPreferenceStore) getPreferenceStore();
        
        String musicFolders = store.getString(PREF_MUSIC_FOLDERS);
        MusicFolders.setMusicFolders(musicFolders);
	}

	/**
	 * This method is called when the plug-in is stopped
	 */
	public void stop(BundleContext context) throws Exception {
        // Saving preferences
        IPersistentPreferenceStore store = (IPersistentPreferenceStore) getPreferenceStore();
        store.setValue(PREF_MUSIC_FOLDERS,MusicFolders.getMusicFoldersString());
        store.save();

		super.stop(context);
		plugin = null;
	}

	/**
	 * Returns the shared instance.
	 */
	public static Mp3mPlugin 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 AbstractUIPlugin.imageDescriptorFromPlugin("com.siemens.ct.mp3m", path);
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?