/*
	IKApplicationIconProvider.h

	IKIconProvider subclass which offers when needed special facilities like on 
	the fly composited applications, documents and plugins icons (with its own
	cache mechanism)

	Copyright (C) 2004 Nicolas Roard <nicolas@roard.com>
	                   Quentin Mathe <qmathe@club-internet.fr>	                   

	Author:   Nicolas Roard <nicolas@roard.com>
	          Quentin Mathe <qmathe@club-internet.fr>
	Date:  August 2004

	This library is free software; you can redistribute it and/or
	modify it under the terms of the GNU Lesser General Public
	License as published by the Free Software Foundation; either
	version 2.1 of the License, or (at your option) any later version.

	This library is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
	Lesser General Public License for more details.

	You should have received a copy of the GNU Lesser General Public
	License along with this library; if not, write to the Free Software
	Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
*/

// FIXME: Must be renamed IKApplication may be and tweaked to fit this new scheme

#import <Foundation/Foundation.h>
#import <AppKit/AppKit.h>

@protocol UKTest;


@interface IKApplicationIconProvider : NSObject <UKTest>
{
  NSString *_path;
  NSString *_identifier;
}

- (id) initWithBundlePath: (NSString *)path;
- (id) initWithBundleIdentifier: (NSString *)identifier;

- (NSImage *) applicationIcon;
- (NSImage *) documentIconForExtension: (NSString *)extension;
- (NSImage *) pluginIcon;

- (void) invalidateCache;
- (void) invalidateCacheAll;
- (void) recache;

@end
