|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectorg.seasar.eclipse.common.util.ImageManager
public class ImageManager
Image
オブジェクトを管理するためのユーティリティクラスです。
本クラスは、クラスパス上のリソースとして存在するイメージファイルを読み込み、管理する機能を提供します。
また、本クラスのメソッドに対してリソースのパスを指定する場合、先頭にスラッシュ(/)がついていてもいなくても同じパスとして扱います。
たとえば、"org/seasar/uruma/images/xxxImage.png"
と
"/org/seasar/uruma/images/xxxImage.png"
は同じものとして扱います。
フィールドの概要 | |
---|---|
protected static Logger |
logger
|
メソッドの概要 | |
---|---|
protected static void |
checkKey(String key)
|
static void |
dispose()
ImageManager が管理する ImageRegistry を破棄します。 |
static Image |
getImage(String key)
指定されたキーで登録された画像の Image オブジェクトを返します。 |
static ImageDescriptor |
getImageDescriptor(String key)
指定されたキーで登録された画像の ImageDescriptor オブジェクトを返します。 |
static void |
init(Display display)
ImageManager を初期化します。 |
protected static void |
injectField(Class clazz,
Field field,
Object o)
|
static void |
injectImages(Class clazz)
指定されたクラスの定数フィールドに対して、 ImageManager が 管理するオブジェクトをインジェクションします。 |
protected static boolean |
isAssignableFrom(Class clazz,
Field target)
|
static Image |
loadImage(String path)
path で指定された Image オブジェクトを検索し、存在しなければクラスパスからロードします。 |
static ImageDescriptor |
loadImageDescriptor(String path)
path で指定された ImageDescriptor
オブジェクトを検索し、存在しなければクラスパスからロードします。 |
static void |
loadImages(ResourceBundle bundle)
ResourceBundle からイメージを読み込み、一括登録します。 |
static void |
loadImages(String baseName)
ResourceBundle からイメージを読み込み、一括登録します。 |
protected static String |
normalizePath(String path)
|
static Image |
putImage(String key,
ImageData imageData)
ImageData から生成した Image オブジェクトを登録します。 |
static Image |
putImage(String key,
String path)
Image オブジェクトを登録します。 |
static ImageDescriptor |
putImageDescriptor(String key,
String path)
ImageDescriptor オブジェクトを登録します。 |
protected static boolean |
validateMask(Field field)
|
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
protected static final Logger logger
メソッドの詳細 |
---|
public static void init(Display display)
ImageManager
を初期化します。
display
- 本クラスを使用する前に呼び出してください。public static Image getImage(String key)
Image
オブジェクトを返します。
key
- キー
Image
オブジェクト。見つからない場合は null
。public static ImageDescriptor getImageDescriptor(String key)
ImageDescriptor
オブジェクトを返します。
key
- キー
ImageDescriptor
オブジェクト。見つからない場合は null
。public static Image loadImage(String path)
path
で指定された Image
オブジェクトを検索し、存在しなければクラスパスからロードします。
本メソッドでは、まず path
をキーと見なしてレジストリから Image
オブジェクトを検索します。 Image
オブジェクトが見つからない場合、path
で示されるリソースをクラスパスからロードして path
をキーとしてレジストリに登録します。
この際、path
は /
(スラッシュ)で始まっていてもいなくても構いません。
icons/app.png
というキーで Image
オブジェクトを検索します。
icons/app.png
というリソースをロードします。
icons/app.png
というキーでレジストリに登録します。
ResourceNotFoundRuntimeException
をスローします。
path
- イメージのパス/キー
Image
オブジェクト
ResourceNotFoundRuntimeException
- 指定されたリソースが見つからなかった場合public static ImageDescriptor loadImageDescriptor(String path)
path
で指定された ImageDescriptor
オブジェクトを検索し、存在しなければクラスパスからロードします。
Image
オブジェクトではなく ImageDescriptor
オブジェクトを返すという点を除き、本メソッドは
loadImage(String)
メソッドと同じです。
詳細は loadImage(String)
メソッドの説明をご覧ください。
path
- イメージのパス/キー
ImageDescriptor
オブジェクト
ResourceNotFoundRuntimeException
- 指定されたリソースが見つからなかった場合public static Image putImage(String key, String path)
Image
オブジェクトを登録します。
path
で示されるリソースをクラスパス上から読み込み、key
で示されるキーでレジストリに登録します。
既に同じキーで Image
オブジェクトが登録されている場合、上書きします。
key
- キーpath
- イメージのパス
Image
オブジェクト
ResourceNotFoundRuntimeException
- 指定されたリソースが見つからなかった場合public static Image putImage(String key, ImageData imageData)
ImageData
から生成した Image
オブジェクトを登録します。
既に同じキーで Image
オブジェクトが登録されている場合、上書きします。
key
- キーimageData
- ImageData
オブジェクト
Image
オブジェクトpublic static ImageDescriptor putImageDescriptor(String key, String path)
ImageDescriptor
オブジェクトを登録します。
path
で示されるリソースをクラスパス上から読み込み、ImageDescriptor
オブジェクトとして key
で示されるキーでレジストリに登録します。
既に同じキーで ImageDescriptor
オブジェクトが登録されている場合、上書きします。
key
- キーpath
- リソースのパス
ImageDescriptor
オブジェクト
ResourceNotFoundRuntimeException
- 指定されたリソースが見つからなかった場合public static void loadImages(ResourceBundle bundle)
ResourceBundle
からイメージを読み込み、一括登録します。
「key=path」の形式で記述されたプロパティファイルを元にした ResourceBundle
から Image
オブジェクトを一括して読み込みます。
本メソッドではイメージを ImageDescriptor
として登録します。
コーディング例
ResourceBundle imageResources = ResourceBundle.getBundle("urumaImages"); ImageManager.loadImages(imageResources);
bundle
- リソースバンドルの参照public static void loadImages(String baseName)
ResourceBundle
からイメージを読み込み、一括登録します。
「key=path」の形式で記述されたプロパティファイルを元にした ResourceBundle
から Image
オブジェクトを一括して読み込みます。
本メソッドではイメージを ImageDescriptor
として登録します。
baseName
- リソースバンドルの基底名public static void injectImages(Class clazz)
ImageManager
が 管理するオブジェクトをインジェクションします。
インジェクション対象となるのは、以下の条件を満たすフィールドです。
public static
な定数フィールドであること
Image
または ImageDescriptor
型のフィールドであること
ImageManager
が登録する Image
または ImageDescriptor
を検索し、見つかればインジェクションを行います。
【例】
以下の例では、ImageHolder
クラスの フィールド、IMAGE_A
と
IMAGE_B
に対して、 ImageManager
が管理するオブジェクトの中から、IMAGE_A
、IMAGE_B
という名前のキーで登録されたオブジェクトをインジェクションします。
public class ImageHolder() { public static Image IMAGE_A; public static ImageDescriptor IMAGE_B; }
ImageManager.injectImages(ImageHolder.class);
clazz
- 対象クラスpublic static void dispose()
ImageManager
が管理する ImageRegistry
を破棄します。
再び ImageManager
を使用したい場合、init(Display)
メソッドを呼び出してください。
protected static void injectField(Class clazz, Field field, Object o)
protected static boolean validateMask(Field field)
protected static boolean isAssignableFrom(Class clazz, Field target)
protected static void checkKey(String key)
protected static String normalizePath(String path)
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |