Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ CallEnumCalendarInfo()

static unsafe bool System.Globalization.CalendarData.CallEnumCalendarInfo ( string localeName,
CalendarId calendar,
uint calType,
uint lcType,
out string[] data )
inlinestaticprivate

Definition at line 905 of file CalendarData.cs.

906 {
907 EnumData value = default(EnumData);
908 value.userOverride = null;
909 value.strings = new List<string>();
910 if (lcType != 0 && (lcType & 0x80000000u) == 0)
911 {
912 CalendarId calendarId = (CalendarId)CultureData.GetLocaleInfoExInt(localeName, 4105u);
913 if (calendarId == calendar)
914 {
915 string localeInfoEx = CultureData.GetLocaleInfoEx(localeName, lcType);
916 if (localeInfoEx != null)
917 {
918 value.userOverride = localeInfoEx;
919 value.strings.Add(localeInfoEx);
920 }
921 }
922 }
924 if (value.strings.Count == 0)
925 {
926 data = null;
927 return false;
928 }
929 string[] array = value.strings.ToArray();
930 if (calType == 57 || calType == 4)
931 {
932 Array.Reverse(array, 0, array.Length);
933 }
934 data = array;
935 return true;
936 }
static unsafe bool EnumCalendarInfoExEx(delegate *unmanaged< char *, uint, IntPtr, void *, BOOL > pCalInfoEnumProcExEx, string lpLocaleName, uint Calendar, string lpReserved, uint CalType, void *lParam)
void Add(TKey key, TValue value)
static unsafe void EnumCalendarInfoCallback(char *calendarStringPtr, IntPtr context)

References System.Collections.Generic.Dictionary< TKey, TValue >.Add(), System.array, System.Globalization.CalendarData.EnumCalendarInfoCallback(), Interop.Kernel32.EnumCalendarInfoExEx(), System.Globalization.CultureData.GetLocaleInfoEx(), System.Globalization.CultureData.GetLocaleInfoExInt(), System.Array.Reverse(), and System.value.

Referenced by System.Globalization.CalendarData.NlsLoadCalendarDataFromSystem().