1 |
|
2007-04-11 Bram de Greve <[email protected]> |
2 |
|
|
3 |
|
* dbflibmodule.c, pyshapelib_common.h, setup.py: attempt to add support for |
4 |
|
Unicode and Language Driver ID (LDID) support in dbflib. Before the strings |
5 |
|
are send to the underlying shapelib, they are encoded using the code page |
6 |
|
specified by the database's LDID if present. To know this LDID requires |
7 |
|
some unofficial modifications to maptools' shapelib. Backwards |
8 |
|
compatibility is ensured by detecting if this field is present and setting |
9 |
|
HAVE_LANGUAGE_DRIVER accordingly in setup.py. In absence of the LDID, |
10 |
|
dbflib assumes a Windows ANSI codepage (cp1252). |
11 |
|
New or modified functions/attributes of the DBFFile class: |
12 |
|
- read_record(...), DBFFile.read_attribute(...): modified, now return |
13 |
|
Unicode strings. |
14 |
|
- write_record(...) and write_field(...): modified, now accept both regular |
15 |
|
and Unicode strings but both are encoded. |
16 |
|
- language_driver (read-only): new, the numerical value of the LDID |
17 |
|
(exists only if HAVE_LANGUAGE_DRIVER == 1) |
18 |
|
New or modified functions/constants of the dbflib module: |
19 |
|
- language_driver_codec(...): added, translates a numerical LDID into the |
20 |
|
string name of the Python codec used to encode/decode the strings. |
21 |
|
(exists only if HAVE_LANGUAGE_DRIVER == 1) |
22 |
|
- language_driver_name(...): added, translates a numerical LDID into a string |
23 |
|
representing the corresponding constant. |
24 |
|
(exists only if HAVE_LANGUAGE_DRIVER == 1) |
25 |
|
- LDID_NOT_SET, LDID_DOS_USA, ...: constants representing language drivers. |
26 |
|
(existsonly if HAVE_LANGUAGE_DRIVER == 1) |
27 |
|
|
28 |
2007-03-29 Bram de Greve <[email protected]> |
2007-03-29 Bram de Greve <[email protected]> |
29 |
|
|
30 |
* shapelibmodule.c, dbflibmodule.c, pyshapelib_common.h: added support for |
* shapelibmodule.c, dbflibmodule.c, pyshapelib_common.h: added support for |