[前回] Cocoaの日々: SimpleCap - Selection History Expose [12] アイディア
一旦考えを整理することにした。
そもそも履歴が多くてゴチャゴチャする状況は履歴が多いからこうなる。当たり前のようだが、履歴が少なければゴチャゴチャになる可能性は低い。例えば5つくらい。多くても7〜10個。だったら何故履歴を多くしてしまうのか?それは過去使った範囲をできるだけ再利用したいから。履歴が多く残っていればそれだけ再利用の可能性が高まる。ただその分探すのに時間がかかる。再利用の為の時間がかかったら新しく範囲を定義し直した方がいいという本末転倒なことになる。検索性が上がればいいのか?そうでもない。あまり意識せずに使った過去の範囲の再利用というのは直近数個なら記憶があるので意味があるが、それよりも多く、それよりも過去(昨日〜)のものは残っていてもゴミでしかない。前回試行錯誤していた利用回数によるフィルタはこのゴミを取り去ることだが、それでも完全ではない。このアプローチでの自動化ではユーザが求めるものを提供するのは難しいだろう。昔の履歴で再利用したいものはむしろユーザに選ばせる方が自然だろう。
そこで履歴を次の2種類のものがあると捉えてみた。
(1)ユーザが明示的に指定するもの
(2)自動的に残るもの
(1)は範囲選択キャプチャで、ユーザが残しておきたいと判断したらボタンなどを押して明示的に記録しておく。そしてユーザからの指示でこれを呼び出して再利用できるようにする。削除もユーザ自身に行わせる。これはルーチンワークなど定期的・長期にわたって使用する目的で使用する。
一方 (2)はキャプチャの度に自動的に記録され、必要に応じて再利用ができる。これは今までやってきた Selection History Expose にあたる。これは直近に使った履歴を再利用したい場合に使う。時間が過ぎればあまり使うことはなくなる(使い捨て)。履歴は5つ、多くても 7〜10あれば十分。
これまでのこの2種類の履歴を1つの方法でやろうとしていたから無理が出てきた。この2種類を別々の性質と捉え、ユーザインターフェイスを再考してみることにしよう。
(1)(2) を別々のモードとして捉え、記録の方法、再利用の方法、記録場所、それぞれを分けてしまう。ベタだがこのほうが実用的。なお (2)はもともとプリファレンス画面で5つまでプリセット範囲として登録することができた。このままでもいいのだが、せっかくなのでこれを改良して画面上で登録できるようにする。そうすると使い勝手が上がると思う(今のプリファレンス形態だとあまり使われていないと思う)。
仮で範囲選択のイメージを考えてみた。
左下のアイコンおよびサイズ表示部を押すと SHE発動〜(1)の履歴モード。(2)のユーザ範囲モードは右上に新たにアイコンを追加してそこから起動させる。ユーザ範囲の保存はどうやるか。だんだんごちゃごちゃしてきた。悪いサインだ。
- - - -
再考は続く...
とりあえず他の事も並行してやっていこう。
SimpleCap - Selection History Expose [13] 再考
2010年11月12日金曜日 | Published in Mac OS X 10.6, SimpleCap | 0 コメント
登録:
コメントの投稿 (Atom)
人気の投稿(過去 30日間)
-
先日投稿した記事のソースコードに @griffin_stewie さんから pull request をいただいた。 Cocoaの日々: CAGradientLayer を使ったグラデーション付きボタンの試作 GradientButton at 2011-10-22 f...
-
iOS3.2 からメニューのカスタマイズが可能になった。少し試してみた。 UIMenuController メニューは UIMenuController を使ってカスタマイズする。 UIMenuController Class Reference 使い方は次の通り。...
-
NSUserDefaultsにはアプリケーション出荷時設定を登録することができる。 -アプリケーション出荷時設定 -[NSUserDefaults registerDefaults:] を使う。 User Defaults Programming Topics: Usi...
-
locationInView: の引数に安易に nil を渡していたら画面回転時に痛い目にあったのでメモしておく。 タッチ位置の座標系 -[UITouch locationInView:] の引数を nil とすると Windowの座標系でタッチ位置が取得できる。 [参考...
-
[関連] Cocoaの日々: UIKit コントロールの View構成と retainCount (追記)前提条件が抜けていました。UIViewController での話です。 (追記 6/29)assign はやめて retain にしました。下記を参照のこと。 C...





Responses
Leave a Response