Name table iterator.
https://codereview.appspot.com/8180043/


git-svn-id: http://skia.googlecode.com/svn/trunk@8480 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/tools/win_lcid.cpp b/tools/win_lcid.cpp
new file mode 100644
index 0000000..b1f8237
--- /dev/null
+++ b/tools/win_lcid.cpp
@@ -0,0 +1,31 @@
+#include "windows.h"
+#include "stdio.h"
+
+#define BUFFER_SIZE 512
+BOOL CALLBACK MyFuncLocaleEx(LPWSTR pStr, DWORD dwFlags, LPARAM lparam) {
+    WCHAR wcBuffer[BUFFER_SIZE];
+    int bufferSize;
+
+    bufferSize = GetLocaleInfoEx(pStr, LOCALE_SENGLANGUAGE, wcBuffer, BUFFER_SIZE);
+    if (bufferSize == 0) {
+        wprintf(L"Locale %s had error %d\n", pStr, GetLastError());
+        return (TRUE);
+    }
+
+    LCID lcid = LocaleNameToLCID(pStr, NULL);
+    if (lcid == 0) {
+        wprintf(L"Error %d getting LCID\n", GetLastError());
+        return (TRUE);
+    }
+    
+    if (lcid > 0x8000) {
+        wprintf(L"//");
+    }
+    wprintf(L"    { 0x%.4x, \"%s\" }, //%s\n", lcid, pStr, wcBuffer);
+
+    return (TRUE);
+}
+
+int main(int argc, wchar_t* argv[]) {
+    EnumSystemLocalesEx(MyFuncLocaleEx, LOCALE_ALL, NULL, NULL);
+}