51TCodePages::TCodePages()
56 static auto CALLBACK AddSupported(LPTSTR codePageString) -> BOOL
58 auto idCodePage =
static_cast<const TCodePages::TCodePageId
>(
_ttol(codePageString));
59 auto s =
tstring{TCodePages::GetCodePageInfoEx(idCodePage).CodePageName};
61 CodePageList_.push_back({idCodePage,
false, s});
65 static auto CALLBACK InitInstalled(LPTSTR codePageString) -> BOOL
67 auto idCodePage =
static_cast<const TCodePages::TCodePageId
>(
_ttol(codePageString));
68 auto found = FindCodePage_(idCodePage);
69 if (found != end(CodePageList_)) found->Installed =
true;
77 ::EnumSystemCodePages(&TLocal::AddSupported, CP_SUPPORTED);
78 sort(begin(CodePageList_), end(CodePageList_));
82 ::EnumSystemCodePages(&TLocal::InitInstalled, CP_INSTALLED);
95 auto found = FindCodePage_(idCodePage);
96 return (found != end(CodePageList_)) ?
static_cast<int>(distance(begin(CodePageList_), found)) : -1;
107 return CodePageList_;
114{
return lhs.CodePageId == rhs.CodePageId; }
117{
return lhs.CodePageId != rhs.CodePageId; }
120{
return lhs.CodePageId <= rhs.CodePageId; }
123{
return lhs.CodePageId >= rhs.CodePageId; }
126{
return lhs.CodePageId < rhs.CodePageId; }
129{
return lhs.CodePageId > rhs.CodePageId; }
static auto GetIndex(TCodePageId idCodePage) -> int
Searches the code page list for a code page identifier.
struct { TCodePageId CodePageId;bool Installed;tstring Name;} TCodePage
std::vector< TCodePage > TCodePageList
static auto GetCodePageList() -> const TCodePageList &
Retrieves the code page list.
uint TCodePageId
Define the code page, code page object, and container types.
Utilities for accessing and setting code page information.
int operator!=(const TBitSet< T > &bs1, const TBitSet< T > &bs2)
int operator==(const TBitSet< T > &bs1, const TBitSet< T > &bs2)
Object Windows Library (OWLNext Core).
auto operator<(const TCodePages::TCodePage &lhs, const TCodePages::TCodePage &rhs) -> bool
auto operator>=(const TCodePages::TCodePage &lhs, const TCodePages::TCodePage &rhs) -> bool
auto operator>(const TCodePages::TCodePage &lhs, const TCodePages::TCodePage &rhs) -> bool
auto to_tstring(const T &v) -> tstring
auto operator<=(const TCodePages::TCodePage &lhs, const TCodePages::TCodePage &rhs) -> bool