/*
 
 Owner: Stefan Neumärker <stefan@boinx.com>
 Company: Boinx Software Ltd., Germany
 Projects: BXQuartzComposer, PhotoPresenter3
 
 Abstract: bunch of methods handling infos from Info.plist and InfoPlist.strings
 
 Related: non
 
 Documentation : non
 
 */

#define NSAPP_DEPRECATION_MESSAGE @"NSApplication+BXInfoPlist.h is Deperacated, use NSBundle+InfoPlist.h  instead of it."

// DEPRECATION of whole Category
//
// Use <BXFoundation/NSBundle+InfoPlist> instead of it follows the same interface

@interface NSApplication (BXInfoPlist)

#pragma mark Whole Dicitionary
- (NSDictionary *)infoDict DEPRECATED_ATTRIBUTE;
- (NSDictionary *)infoDictForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;
- (NSDictionary *)localizedInfoDict DEPRECATED_ATTRIBUTE;
- (NSDictionary *)localizedInfoDictForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;

#pragma mark CFBundleIdentifier
- (NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;

#pragma mark CFBundleName
- (NSString *)bundleName DEPRECATED_ATTRIBUTE;
- (NSString *)bundleNameForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;
- (NSString *)localizedBundleName DEPRECATED_ATTRIBUTE;
- (NSString *)localizedBundleNameForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;

#pragma mark CFBundleDisplayName
- (NSString *)bundleDisplayName DEPRECATED_ATTRIBUTE;
- (NSString *)bundleDisplayNameForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;
- (NSString *)localizedBundleDisplayName DEPRECATED_ATTRIBUTE;
- (NSString *)localizedBundleDisplayNameForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;

#pragma mark CFBundleExecutable
- (NSString *)bundleExecutable DEPRECATED_ATTRIBUTE;
- (NSString *)bundleExecutableForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;
   
#pragma mark CFVersion
- (NSString *)bundleVersion DEPRECATED_ATTRIBUTE;
- (NSString *)bundleVersionForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;
- (NSNumber *)bundleVersionAsNumber DEPRECATED_ATTRIBUTE;
- (NSNumber *)bundleVersionAsNumberForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;

#pragma mark CFShortVersionString
- (NSString *)shortVersionString DEPRECATED_ATTRIBUTE;
- (NSString *)shortVersionStringForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;

- (NSUInteger)majorVersion;

#pragma mark CFBundleIconFile
- (NSString *)bundleIconFile DEPRECATED_ATTRIBUTE;
- (NSString *)bundleIconFileForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;

#pragma mark NSHumanReadableCopyright

#pragma mark CFBundleGetInfoString

#pragma mark CFBundleHelpBookName
- (NSString *)bundleHelpBookName DEPRECATED_ATTRIBUTE;
- (NSString *)bundleHelpBookNameForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;

#pragma mark CFBundleHelpBookFolder

#pragma mark BXBuildStyle
- (NSString *)buildStyle DEPRECATED_ATTRIBUTE;
- (NSString *)buildStyleForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;

#pragma mark versionString
- (NSString *)versionString DEPRECATED_ATTRIBUTE;

#pragma mark fullProductName
- (NSString *)fullProductName DEPRECATED_ATTRIBUTE;

// Only for AppStore Versions - calculates the right values from other InfoDictionary keys
#pragma mark appStoreFullProductName
- (NSString *)appStoreFullProductName DEPRECATED_ATTRIBUTE;

#pragma mark appStoreProductName
- (NSString *)appStoreProductName DEPRECATED_ATTRIBUTE;
- (NSString *)appStoreProductNameForBundleWithIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;

#pragma mark appStoreLastBundleComponent
- (NSString *)appStoreLastBundleComponent DEPRECATED_ATTRIBUTE;
- (NSString *)appStoreLastBundleComponentForBundleIdentifier:(NSString *)bundleIdentifier DEPRECATED_ATTRIBUTE;

@end
