mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2024-12-23 10:09:43 +01:00
29e2b19698
Again, the RTL property controls whether textboxes will be right-aligned, and that kind of stuff. It can't be font-bound, since Space Station supports Hebrew characters and we want to be able to support, say, a Hebrew translation or Hebrew levels in the future without having to make a dedicated (or duplicated) font for it. Therefore it's a property of both the language pack as well as custom levels - like custom levels already had a <font> tag, they now also have an <rtl> tag that sets this property. Right now, we'll have to hardcode it so the menu option for the Arabic font sets the <rtl> property to 1, and all the other options set it to 0. But it's future-proof in that we can later decide to split the option for Space Station into an LTR option and an RTL option (so both "english/..." and "עברית" would select Space Station, but one sets the RTL property to 0 and the other sets it to 1).
18 lines
367 B
C++
18 lines
367 B
C++
#ifndef FONTBIDI_H
|
|
#define FONTBIDI_H
|
|
|
|
#include <stdint.h>
|
|
|
|
namespace font
|
|
{
|
|
|
|
void bidi_init(void);
|
|
void bidi_destroy(void);
|
|
bool is_directional_character(uint32_t codepoint);
|
|
bool is_joiner(uint32_t codepoint);
|
|
bool bidi_should_transform(bool rtl, const char* text);
|
|
const char* bidi_transform(bool rtl, const char* text);
|
|
|
|
} // namespace font
|
|
|
|
#endif // FONTBIDI_H
|