⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 musicfolders.java

📁 eclise rcp 项目,是非常好的学习源码
💻 JAVA
字号:
/*******************************************************************************
 * 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.model.physical;

import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;
import java.util.Vector;

public class MusicFolders {
	private static final String PATH_SEPERATOR = ";";//$NON-NLS-1$

	private static List<String> musicFolders;

	private static List<MusicFoldersChangeListener> changeListeners;

	private static Mp3Directory root = new Mp3Directory("Root");

	/**
	 * Gets the root.
	 * 
	 * @return Returns the root.
	 */
	public static Mp3Directory getRoot() {
		return root;
	}

	public static void addMusicFolder(String folder) {
		if (musicFolders == null) {
			musicFolders = new ArrayList<String>();
		}
		for (String testFolder : musicFolders) {
			if (testFolder.equals(folder))
				return;
		}
		musicFolders.add(folder);
		notifyChangeListeners();
	}

	public static void removeMusicFolder(String folder) {
		if (musicFolders == null) {
			return;
		}
		
		boolean removed = musicFolders.remove(folder);
		if (removed) {
			notifyChangeListeners();
		}
	}

	public static void notifyChangeListeners() {
		if (changeListeners != null) {
			for (MusicFoldersChangeListener changeListener : changeListeners) {
				changeListener.musicFoldersChanged(musicFolders);
			}
		}
	}

	public static List<String> getMusicFolders() {
		return musicFolders;
	}

	public static String getMusicFoldersString() {
		String folderString = "";//$NON-NLS-1$
		for (String folder : musicFolders) {
			folderString += (folder + MusicFolders.PATH_SEPERATOR);
		}
		return folderString;
	}

	public static void setMusicFolders(String folders) {
		musicFolders = new Vector<String>();
		StringTokenizer tokenizer = new StringTokenizer(folders, MusicFolders.PATH_SEPERATOR);
		while (tokenizer.hasMoreElements()) {
			String folder = tokenizer.nextToken();
			musicFolders.add(folder);
		}
	}

	public static void addChangeListener(MusicFoldersChangeListener listener) {
		if (changeListeners == null) {
			changeListeners = new Vector<MusicFoldersChangeListener>();
		}
		changeListeners.add(listener);
	}

	public static boolean contains(String string) {
		return musicFolders.contains(string);
	}

	public static void setRoot(Mp3Directory newRoot) {
		root = newRoot;
	}

}

⌨️ 快捷键说明

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