1// 2// FileSettings.h 3// PythonLauncher 4// 5// Created by Jack Jansen on Sun Jul 21 2002. 6// Copyright (c) 2002 __MyCompanyName__. All rights reserved. 7// 8 9#import <Foundation/Foundation.h> 10 11@protocol FileSettingsSource 12- (NSString *) interpreter; 13- (BOOL) honourhashbang; 14- (BOOL) debug; 15- (BOOL) verbose; 16- (BOOL) inspect; 17- (BOOL) optimize; 18- (BOOL) nosite; 19- (BOOL) tabs; 20- (NSString *) others; 21- (BOOL) with_terminal; 22- (NSString *) scriptargs; 23@end 24 25@interface FileSettings : NSObject <FileSettingsSource> 26{ 27 NSString *interpreter; // The pathname of the interpreter to use 28 NSArray *interpreters; // List of known interpreters 29 BOOL honourhashbang; // #! line overrides interpreter 30 BOOL debug; // -d option: debug parser 31 BOOL verbose; // -v option: verbose import 32 BOOL inspect; // -i option: interactive mode after script 33 BOOL optimize; // -O option: optimize bytecode 34 BOOL nosite; // -S option: don't import site.py 35 BOOL tabs; // -t option: warn about inconsistent tabs 36 NSString *others; // other options 37 NSString *scriptargs; // script arguments (not for preferences) 38 BOOL with_terminal; // Run in terminal window 39 40 FileSettings *origsource; 41 NSString *prefskey; 42} 43 44+ (id)getDefaultsForFileType: (NSString *)filetype; 45+ (id)getFactorySettingsForFileType: (NSString *)filetype; 46+ (id)newSettingsForFileType: (NSString *)filetype; 47 48- (id)initForFileType: (NSString *)filetype; 49- (id)initForFSDefaultFileType: (NSString *)filetype; 50- (id)initForDefaultFileType: (NSString *)filetype; 51 52- (void)updateFromSource: (id <FileSettingsSource>)source; 53- (NSString *)commandLineForScript: (NSString *)script; 54 55- (void)applyValuesFromDict: (NSDictionary *)dict; 56- (void)reset; 57- (NSArray *) interpreters; 58 59@end 60