resourcemanager.java
来自「mywork是rcp开发的很好的例子」· Java 代码 · 共 117 行
JAVA
117 行
/************************************************************
*
* Copyright (c) 2001 Chemi. All rights reserved.
*
* This program and the accompanying materials
* are made available under the terms of the MIT License
* which accompanies this distribution, and is available at
* http://www.opensource.org/licenses/mit-license.html
*
************************************************************/
package es.org.chemi.games.util;
import java.applet.AudioClip;
import java.net.URL;
import java.util.HashMap;
import java.util.Iterator;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.graphics.Image;
import es.org.chemi.games.GamesPlugin;
public class ResourceManager
{
private HashMap colors = null;
private HashMap images = null;
private HashMap fonts = null;
private HashMap sounds = null;
private HashMap urls = null;
private String owner = null;
public ResourceManager(String owner)
{
GamesPlugin.trace(this.getClass().getName(),"Creating a Resource Manager. (" + owner + ")"); //$NON-NLS-1$ //$NON-NLS-2$
colors = new HashMap();
images = new HashMap();
fonts = new HashMap();
sounds = new HashMap();
urls = new HashMap();
this.owner = owner;
}
public void putImage(String param1, Image param2)
{
images.put(param1, param2);
}
public Image getImage(String param1)
{
return (Image)images.get(param1);
}
public void putFont(String param1, Font param2)
{
fonts.put(param1, param2);
}
public Font getFont(String param1)
{
return (Font)fonts.get(param1);
}
public void putColor(int param1, Color param2)
{
colors.put(new Integer(param1), param2);
}
public Color getColor(int param1)
{
return (Color)colors.get(new Integer(param1));
}
public void putSound(String param1, AudioClip param2)
{
sounds.put(param1, param2);
}
public AudioClip getSound(String param1)
{
return (AudioClip)sounds.get(param1);
}
public void putURL(String param1, URL param2)
{
urls.put(param1, param2);
}
public URL getURL(String param1)
{
return (URL)urls.get(param1);
}
// Free resources
public void dispose()
{
GamesPlugin.trace(this.getClass().getName(),"Disposing colors. (" + owner + ")"); //$NON-NLS-1$ //$NON-NLS-2$
Iterator i = colors.values().iterator();
while(i.hasNext())
((Color)i.next()).dispose();
GamesPlugin.trace(this.getClass().getName(),"Disposing fonts. (" + owner + ")"); //$NON-NLS-1$ //$NON-NLS-2$
i = fonts.values().iterator();
while(i.hasNext())
((Font)i.next()).dispose();
GamesPlugin.trace(this.getClass().getName(),"Disposing images. (" + owner + ")"); //$NON-NLS-1$ //$NON-NLS-2$
i = images.values().iterator();
while(i.hasNext())
((Image)i.next()).dispose();
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?