NSViewへのテキスト入力を実装してみた

NSViewにNSTextInputを実装してみた。

ことえりでしかテストしてないけど、一応日本語も可能。ATOK欲しいけど余裕無し。

実装したもの、してないもの:

まぁ、未実装なモノのほとんどが今回の件には不要だから、気にしない。 ことえちの変換リストの表示位置だけは必須かな。

あとあとのために、実装する際のメモ:

読んだら分かるように、キモとなるのはinsertText:とsetMarkedText:selectedRange:によるselectedRangeとmarkedRangeの取り扱い。半角英数字のみならmarkedRangeは不要なのかもしれないけど、日本語入力を可能にするためには必須。

ちなみに、このアーカイブに含まれる内容は、煮るなり焼くなり本当に好きにしてもらって構わない(NYSLの文章を添付すべきだったかな)。ってか、むしろより良いモノを作って公開してもらいたい。これは希望

参考にしたのは、Java-Cocoaだけど、みるくCocoaの文字列入力。これだけだと半角英数字しか使えないけど、とっかかりには十分。 あとは、マニュアルと、あとなんだろう?とにかく情報が少なかった気がする。

あとは、まぁ、追々。

そういやCaminoも参考にしたなぁ。nsChildView.mmにNSTextInputが実装されてたから。まぁC++で実装された関数を使ってばかりだし、流れぐらいしかわからなかったけど。今はBug 4586を参考に、候補ウィンドウ(変換パレットだったり、入力リストだったり)の表示位置制御にとりかかってる。