package ru.dbotthepony.kstarbound.client.freetype.struct;

import com.sun.jna.NativeLong;

public enum FT_Encoding {
	FT_ENCODING_NONE(CMacros.makeEnumValue( 0, 0, 0, 0 )),
	FT_ENCODING_MS_SYMBOL(CMacros.makeEnumValue( 's', 'y', 'm', 'b' )),
	FT_ENCODING_UNICODE(CMacros.makeEnumValue(   'u', 'n', 'i', 'c' )),
	FT_ENCODING_SJIS(CMacros.makeEnumValue(    's', 'j', 'i', 's' )),
	FT_ENCODING_PRC(CMacros.makeEnumValue(     'g', 'b', ' ', ' ' )),
	FT_ENCODING_BIG5(CMacros.makeEnumValue(    'b', 'i', 'g', '5' )),
	FT_ENCODING_WANSUNG(CMacros.makeEnumValue( 'w', 'a', 'n', 's' )),
	FT_ENCODING_JOHAB(CMacros.makeEnumValue(   'j', 'o', 'h', 'a' )),

	FT_ENCODING_ADOBE_STANDARD(CMacros.makeEnumValue( 'A', 'D', 'O', 'B' )),
	FT_ENCODING_ADOBE_EXPERT(CMacros.makeEnumValue(   'A', 'D', 'B', 'E' )),
	FT_ENCODING_ADOBE_CUSTOM(CMacros.makeEnumValue(   'A', 'D', 'B', 'C' )),
	FT_ENCODING_ADOBE_LATIN_1(CMacros.makeEnumValue(  'l', 'a', 't', '1' )),

	FT_ENCODING_OLD_LATIN_2(CMacros.makeEnumValue( 'l', 'a', 't', '2' )),

	FT_ENCODING_APPLE_ROMAN(CMacros.makeEnumValue( 'a', 'r', 'm', 'n' ));

	public final NativeLong value;

	/* for backward compatibility */
	public static final FT_Encoding FT_ENCODING_GB2312     = FT_ENCODING_PRC;
	public static final FT_Encoding FT_ENCODING_MS_SJIS    = FT_ENCODING_SJIS;
	public static final FT_Encoding FT_ENCODING_MS_GB2312  = FT_ENCODING_PRC;
	public static final FT_Encoding FT_ENCODING_MS_BIG5    = FT_ENCODING_BIG5;
	public static final FT_Encoding FT_ENCODING_MS_WANSUNG = FT_ENCODING_WANSUNG;
	public static final FT_Encoding FT_ENCODING_MS_JOHAB   = FT_ENCODING_JOHAB;

	FT_Encoding(NativeLong value) {
		this.value = value;
	}
}
