私の Qt アプリは、Linux と Windows での入力言語の変更をサポートしています。Mac OSX での入力言語の変更にも対応したいと考えています。
残念ながら、Mac SDK に関する情報はありません。(私の OS X での最初で最後の作業は、Qt のコンパイルとアプリのコンパイルでした!)
この問題をグーグルで調べたところ、Text Input Source Servicesを使用する必要があることがわかり、次のコードも見つかりました。
TISInputSourceRef isref;
isref = TISCopyCurrentKeyboardInputSource();
CFDataRef uchr = (CFDataRef)TISGetInputSourceProperty(isref, kTISPropertyUnicodeKeyLayoutData);
UCKeyboardLayout * keyLayoutPtr=(UCKeyboardLayout*)CFDataGetBytePtr(uchr);
keyLayoutPtr
現在のキーボード レイアウトのポインタですか?
上記の質問に対する答えが「はい」の場合、何と比較すればよいkeyLayoutPtr
ですか?
つまり、現在のキーボード レイアウトが (たとえば) 「英語」であるかどうかを確認するにはどうすればよいですか? (またはLANG_ENGLISH
、Win API やus
XLib のようなもの。)