Added utility ECollator to libedataserver.
authorTristan Van Berkom <tristanvb@openismus.com>
Tue, 30 Apr 2013 07:09:35 +0000 (16:09 +0900)
committerTristan Van Berkom <tristanvb@openismus.com>
Wed, 23 Oct 2013 18:39:38 +0000 (20:39 +0200)
commit252a29f8d278f1f1f3bce7f2126d7c1aceecfc14
tree2272a4953ab30fc83cd4c7a8bdab7182b5099589
parenta7b6a911486b24b72f33a391e76bad2186ce466f
Added utility ECollator to libedataserver.

The ECollator API wraps up the required ICU APIs into something more
convenient for usage in EDS. The provided features allow for rich
locale sensitive sorting as well as knowledge of the user's native
alphabet.

Some auxilary objects are needed to access features in ICU which are
available only in C++:

    EAlphabetIndex

    A private accessory used internally by ECollator to implement AlphabeticIndex
    features. This is in a separate file since we need to use C++ APIs to use
    the AlphabeticIndex, so we compile it into a separate archive to be statically
    linked in with libedataserver.la.

    ETransliterator

    Added this glue to call icu::Transliterator C++ APIs on behalf of ECollator.
configure.ac
libedataserver/Makefile.am
libedataserver/e-alphabet-index-private.cpp [new file with mode: 0644]
libedataserver/e-alphabet-index-private.h [new file with mode: 0644]
libedataserver/e-collator.c [new file with mode: 0644]
libedataserver/e-collator.h [new file with mode: 0644]
libedataserver/e-transliterator-private.cpp [new file with mode: 0644]
libedataserver/e-transliterator-private.h [new file with mode: 0644]
libedataserver/libedataserver.h