author | tron |
Mon, 14 Nov 2005 08:09:57 +0000 | |
changeset 2635 | 88b8b74c01ac |
parent 2468 | 15753a8438ba |
child 3596 | 443a7377c67e |
permissions | -rw-r--r-- |
2292 | 1 |
/* $Id$ */ |
2 |
||
2291
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
3 |
#ifndef CURRENCY_H |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
4 |
#define CURRENCY_H |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
5 |
|
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
6 |
enum { |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
7 |
CF_NOEURO = 0, |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
8 |
CF_ISEURO = 1, |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
9 |
}; |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
10 |
|
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
11 |
typedef struct { |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
12 |
uint16 rate; |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
13 |
char separator; |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
14 |
uint16 to_euro; |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
15 |
char prefix[16]; |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
16 |
char suffix[16]; |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
17 |
} CurrencySpec; |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
18 |
|
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
19 |
extern CurrencySpec _currency_specs[]; |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
20 |
extern const StringID _currency_string_list[]; |
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
21 |
|
2306
3d4efe849dd9
(svn r2830) Move CheckSwitchToEuro() to currency.[ch] and hide the truth about the custom currency behind a #define
tron
parents:
2292
diff
changeset
|
22 |
// XXX small hack, but makes the rest of the code a bit nicer to read |
3d4efe849dd9
(svn r2830) Move CheckSwitchToEuro() to currency.[ch] and hide the truth about the custom currency behind a #define
tron
parents:
2292
diff
changeset
|
23 |
#define _custom_currency (_currency_specs[23]) |
2468
15753a8438ba
(svn r2994) Another small hack regarding currencies: add a #define to emulate a variable, that holds the current currency; again this should increase readability
tron
parents:
2436
diff
changeset
|
24 |
#define _currency ((const CurrencySpec*)&_currency_specs[_opt_ptr->currency]) |
2306
3d4efe849dd9
(svn r2830) Move CheckSwitchToEuro() to currency.[ch] and hide the truth about the custom currency behind a #define
tron
parents:
2292
diff
changeset
|
25 |
|
2291
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
26 |
uint GetMaskOfAllowedCurrencies(void); |
2306
3d4efe849dd9
(svn r2830) Move CheckSwitchToEuro() to currency.[ch] and hide the truth about the custom currency behind a #define
tron
parents:
2292
diff
changeset
|
27 |
void CheckSwitchToEuro(void); |
2291
2b064aa97f91
(svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files
tron
parents:
diff
changeset
|
28 |
|
2436
177cb6a8339f
(svn r2962) - const correctness for all Get* functions and most Draw* functions that don't change their pointer parameters
Darkvater
parents:
2306
diff
changeset
|
29 |
#endif /* CURRENCY_H */ |