誰にでも「これだけは譲れんなあ」と言うお気に入りアプリケーションはあると思うんだけど、TAM的なそれはこれ。yakuake。
ボタン一つで飛び出すシェル。ちょうどquakeのコンソールみたいなのを想像していただければ。
シェルは手放せないけどデスクトップにコンソールが常駐してるのはちょっとなんか違うんだよなあ…と言う中途半端な俺には最適なものでございます。まずこいつをインストールすることからはじまるよ。
皆様も是非。
一日を変え、一生を変えるコードを!
Maverickで入ってきたutouch。マルチタッチとかジェスチャとかなんかそんな感じのもの。
ざっと手順。
んでコールバックに送られるジェスチャはTapやDrag、RotateにPinch等々。それぞれにGeisGestureAttrの配列が渡されてそっから値を取り出していく感じ。シンプルですね。
指が触れてから完全に離れるまでが1つのジェスチャと取られるわけで、最初に触れたところがstart、途中の動作がupdate、最後がfinishつうコールバックになると。わかりやすいと言えばわかりやすいですね。実装もそんなに難しくないです。
で。
感想としてはシンプルで分かりやすくていいなーと言う反面、やや面倒くさいなーと言うのもあったりとか。start/update/finishのコールバックが別々なのは何かしら意味があるのかなと思ったり。ある意味startやfinishもupdateと言えなくもないような気もします。
こいつを使ってガリガリとgtkやQt使ってプログラム書いていくのもいいのですが、正直なところツールキット上での対応があると楽だよねこれ。QtにはQGestureEventなんてクラスも既にあるわけで、普通にタッチイベントを処理できるようになると楽しそうです。既存のプログラムのタッチ対応なんかも楽だろうしね。
さて。
で、マルチタッチに対応して何が面白いのー?って根本的な話なわけですが、正直俺も当初は疑問でございました。小型デバイスならまだしも、ノート型とかでマルチタッチとか誰得…と思ってたわけです。画像ビューアとか以外に使い道思いつかない的なね。
ところが冷静に考えてみたら、ソフトウエアキーボードとかでこれその性能を発揮するんじゃないの?と思ったり。マウスのようなシングルポイントでは不可能な「キーリリース前のキープレス」を正しく認識してくれるようなものができる気がします。アニメとかでぺぺぺぺっと画面をキーボードのように叩いてる感じで。
問題は対応するデバイスを用意しないといけないとこでしょうか。開発やるにしても試すにしても。まあそれは何でも同じですが。