Release 980517
[wine] / include / options.h
1 /*
2  * Command-line options.
3  *
4  * Copyright 1994 Alexandre Julliard
5  */
6
7 #ifndef __WINE_OPTIONS_H
8 #define __WINE_OPTIONS_H
9
10 #include "wintypes.h"
11
12   /* Supported languages */
13 typedef enum
14 {
15     LANG_En,  /* English */
16     LANG_Es,  /* Spanish */
17     LANG_De,  /* German */
18     LANG_No,  /* Norwegian */
19     LANG_Fr,  /* French */
20     LANG_Fi,  /* Finnish */
21     LANG_Da,  /* Danish */
22     LANG_Cz,  /* Czech */
23     LANG_Eo,  /* Esperanto */
24     LANG_It,  /* Italian */
25     LANG_Ko,  /* Korean */
26     LANG_Hu,  /* Hungarian */
27     LANG_Pl,  /* Polish */
28     LANG_Po,  /* Portuguese */
29     LANG_Sw,  /* Swedish */
30     LANG_Ca   /* Catalan */
31 } WINE_LANGUAGE;
32
33 typedef struct
34 {
35     const char *name;
36     WORD        langid;
37 } WINE_LANGUAGE_DEF;
38
39 extern const WINE_LANGUAGE_DEF Languages[];
40
41 /* Supported modes */
42 typedef enum
43 {
44     MODE_STANDARD,
45     MODE_ENHANCED
46 } WINE_MODE;
47
48 struct options
49 {
50     char * desktopGeometry; /* NULL when no desktop */
51     char * programName;     /* To use when loading resources */
52     char * argv0;           /* argv[0] of Wine process */
53     char  *dllFlags;        /* -dll flags (hack for Winelib support) */
54     int    usePrivateMap;
55     int    useFixedMap;
56     int    synchronous;     /* X synchronous mode */
57     int    backingstore;    /* Use backing store */
58     short  cmdShow;
59     int    debug;
60     int    failReadOnly;    /* Opening a read only file will fail
61                                if write access is requested */
62     WINE_MODE mode;         /* Start Wine in selected mode
63                                (standard/enhanced) */
64     WINE_LANGUAGE language; /* Current language */
65     int    managed;         /* Managed windows */
66     int    perfectGraphics; /* Favor correctness over speed for graphics */
67 };
68
69 extern struct options Options;
70
71 /* Profile functions */
72
73 extern int PROFILE_LoadWineIni(void);
74 extern int PROFILE_GetWineIniString( const char *section, const char *key_name,
75                                      const char *def, char *buffer, int len );
76 extern int PROFILE_GetWineIniInt( const char *section, const char *key_name,
77                                   int def );
78 extern int PROFILE_EnumerateWineIniSection(
79     char const *section,
80     void (*callback)(char const *key, char const *name, void *user),
81     void *userptr );                 
82 extern int PROFILE_GetWineIniBool( char const *section, char const *key_name,
83                                    int def );
84 extern char* PROFILE_GetStringItem( char* );
85
86 /* Version functions */
87 extern void VERSION_ParseVersion( char *arg );
88
89 #endif  /* __WINE_OPTIONS_H */