ホーム : 実験室 : TableDragBinding

TableDragBinding(2008/04/19)

 carbonのデータブラウザでドラッグ&ドロップをすると行間に挿入するのではなく、 別の行を置き換えるようなイメージになってしまいますが、cocoaならできるということででテストしてみました。 NSTableView内の行をドラッグ&ドロップで移動する処理を、cocoa bindingで実装しています。
 MyArrayController は NSArrayController のサブクラスで、これにドラッグ& ドロップの処理を組み込んでいます。4つのメソッドだけで、何をしているかはソー スの中にコメントを入れてあります。ドラッグ&ドロップに関してはこれだけです。

 MyControllerは初期データを作って、MyArrayControllerに渡しているだけです。結果は無視しています。結果が欲しければ、MyControllerの中にルーチンを用意して、「Quit」ボタンのクリックで呼び出し、MyArrayControllerからArrayを取り出 すことができます。

 Xcode 3 を使用してください。2.5以前ではリソースを編集できません。
 cocoaに入門したばかりの者が作成したサンプルですが、ご自由にご利用ください。もっとスマートにできるよと言うことがあれば、ご指摘いただけるとありがたいです。

 ダウンロード TableDragBinding.zip(104kB)

(C)Copyright 2008, Yoshiaki Katayanagi.