(57)【要約】【課題】  簡単にかつ迅速に、ドラッグアンドドロップの操作が可能であるか否かをユーザに知らせる。【解決手段】  判定部５１は、所定の条件を満たしてアイコンがポインタで指示されたか否かを判定する。移動元移動先特定部５２は、条件を満たしてアイコンがポインタで指示されたと判定された場合、ポインタで指示されたアイコンで表される移動元と、移動元のアイコンがドラッグアンドドロップさせられる、ドラッグアンドドロップ先の画面上のオブジェクトで表される移動先とを特定する。表示制御部５３は、移動元のアイコンを移動先のオブジェクトにドラッグアンドドロップするアニメーションの表示を制御する。本発明は、パーソナルコンピュータに適用できる。【選択図】      図２
2007094763.tif 000002
【特許請求の範囲】
【請求項１】
所定の条件を満たしてアイコンがポインタで指示されたか否かを判定する判定手段と、
前記条件を満たして前記アイコンが前記ポインタで指示されたと判定された場合、前記ポインタで指示された前記アイコンで表される移動元と、前記移動元の前記アイコンがドラッグアンドドロップさせられる、ドラッグアンドドロップ先の画面上のオブジェクトで表される移動先とを特定する特定手段と、
前記移動元の前記アイコンを前記移動先の前記オブジェクトにドラッグアンドドロップするアニメーションの表示を制御する表示制御手段と
を備える情報処理装置。
【請求項２】
前記特定手段は、メソッドを備えるオブジェクトである前記移動元および前記移動先に問い合わせて、問い合わせの結果から、前記移動元と前記移動先とを特定する
請求項１に記載の情報処理装置。
【請求項３】
前記移動元および前記移動先であるオブジェクトの状態を保持する保持手段をさらに備え、
前記特定手段は、前記保持手段に保持されている、前記移動元および前記移動先であるオブジェクトの状態から、前記移動元と前記移動先とを特定する
請求項１に記載の情報処理装置。
【請求項４】
前記判定手段は、前記アイコンが予め定めた期間継続して前記ポインタで指示されたか否かを判定する
請求項１に記載の情報処理装置。
【請求項５】
前記判定手段は、特定のキーが押圧されると共に、前記アイコンが前記ポインタで指示されたか否かを判定する
請求項１に記載の情報処理装置。
【請求項６】
前記特定手段は、前記移動元と前記移動先との組み合わせの数が複数である場合、前記組み合わせを間引いて、さらに前記移動元と前記移動先とを特定する
請求項１に記載の情報処理装置。
【請求項７】
前記表示制御手段は、離散的か、または半透明のアニメーションの表示を制御する
請求項１に記載の情報処理装置。
【請求項８】
所定の条件を満たしてアイコンがポインタで指示されたか否かを判定し、
前記条件を満たして前記アイコンが前記ポインタで指示されたと判定された場合、前記ポインタで指示された前記アイコンで表される移動元と、前記移動元の前記アイコンがドラッグアンドドロップさせられる、ドラッグアンドドロップ先の画面上のオブジェクトで表される移動先とを特定し、
前記移動元の前記アイコンを前記移動先の前記オブジェクトにドラッグアンドドロップするアニメーションの表示を制御する
ステップを含む情報処理方法。
【請求項９】
所定の条件を満たしてアイコンがポインタで指示されたか否かを判定し、
前記条件を満たして前記アイコンが前記ポインタで指示されたと判定された場合、前記ポインタで指示された前記アイコンで表される移動元と、前記移動元の前記アイコンがドラッグアンドドロップさせられる、ドラッグアンドドロップ先の画面上のオブジェクトで表される移動先とを特定し、
前記移動元の前記アイコンを前記移動先の前記オブジェクトにドラッグアンドドロップするアニメーションの表示を制御する
ステップをコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置および方法、並びにプログラムに関し、特に、ドラッグアンドドロップによって対象を操作する情報処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来から、パーソナルコンピュータなどのユーザが直接操作できる機器において、GUI(Graphical User  Interface)が採用されている。GUIは、一般にコマンドベースのインターフェースに比較して、直感的に操作できるので、初心者にとって使いやすいと言われている。このようなGUIにおいて、ドラッグアンドドロップの操作ができる機器が多い。
【０００３】
ドラッグアンドドロップは、始点となる所定の対象（移動元）のアイコンおよび終点となる他の対象（移動先）のアイコンを特定し、マウスなどのポインティングデバイスを用いて、移動元のアイコンにポインタを重ねてマウスのボタンを押圧し、マウスのボタンを押圧したままポインタを移動先のアイコンまで移動させて、ポインタが移動先のアイコンに到達したときにマウスのボタンを離すという操作である。
【０００４】
ドラッグアンドドロップによって、移動元の対象と移動先の対象とにドラッグアンドドロップに応じた処理を適用させることができる。
【０００５】
ドラッグアンドドロップは、対象を直接操作するのと同様の操作なので、ドラッグアンドドロップには、ユーザが直感的に内容を理解しやすいという利点がある。ドラッグアンドドロップには、またユーザが一度理解してしまえば、簡単で使いやすいという特徴もある。
【０００６】
しかし、機器を初めて利用するユーザにとって、ドラッグアンドドロップすることができるのか、どれを移動先とすることができるのか、ドラッグアンドドロップするとどうなるのかということがわかりにくく、これを知ることも困難である。
【０００７】
これに対応するために、どこにドロップすることができ、ドロップできる場所にドロップするとどうなるかを文字のヘルプとして表示するものもある（例えば、特許文献１参照）。
【０００８】
【特許文献１】特開２００１−３０６２０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、ドラッグアンドドロップの文字のヘルプを表示しても、これだけでは、今の時点で、そもそもドラッグアンドドロップの操作が可能であるか否かを知ることはできない。例えば、ドラッグアンドドロップしたい対象が、現時点で、他のユーザに使われていて、その対象をドラッグアンドドロップできない場合もあり、ユーザは、所望の対象をドラッグアンドドロップできるか否かを知ることができない。
【００１０】
このような状況の下では、ユーザは、どの対象にドラッグアンドドロップできるか、またはドラッグアンドドロップによってどのような処理が実行されるかを推測する必要があり、利便性に欠ける。また、このような推測がはずれた場合、意図した処理と異なる処理が実行されてしまうことになる。
【００１１】
また、表示画面の制約から、ドラッグアンドドロップの操作の対象が多数ある場合には、文字のヘルプを画面内に一度に表示させることができなくなり、ヘルプを読むために煩雑な操作が要求される。
【００１２】
本発明は、このような状況に鑑みてなされたものであり、簡単にかつ迅速に、ドラッグアンドドロップの操作が可能であるか否かをユーザに知らせることができるようにするものである。
【課題を解決するための手段】
【００１３】
本発明の一側面の情報処理装置は、所定の条件を満たしてアイコンがポインタで指示されたか否かを判定する判定手段と、前記条件を満たして前記アイコンが前記ポインタで指示されたと判定された場合、前記ポインタで指示された前記アイコンで表される移動元と、前記移動元の前記アイコンがドラッグアンドドロップさせられる、ドラッグアンドドロップ先の画面上のオブジェクトで表される移動先とを特定する特定手段と、前記移動元の前記アイコンを前記移動先の前記オブジェクトにドラッグアンドドロップするアニメーションの表示を制御する表示制御手段とを備える。
【００１４】
前記特定手段は、メソッドを備えるオブジェクトである前記移動元および前記移動先に問い合わせて、問い合わせの結果から、前記移動元と前記移動先とを特定することができる。
【００１５】
前記移動元および前記移動先であるオブジェクトの状態を保持する保持手段をさらに設け、前記特定手段は、前記保持手段に保持されている、前記移動元および前記移動先であるオブジェクトの状態から、前記移動元と前記移動先とを特定することができる。
【００１６】
前記判定手段は、前記アイコンが予め定めた期間継続して前記ポインタで指示されたか否かを判定することができる。
【００１７】
前記判定手段は、特定のキーが押圧されると共に、前記アイコンが前記ポインタで指示されたか否かを判定することができる。
【００１８】
前記特定手段は、前記移動元と前記移動先との組み合わせの数が複数である場合、前記組み合わせを間引いて、さらに前記移動元と前記移動先とを特定することができる。
【００１９】
前記表示制御手段は、離散的か、または半透明のアニメーションの表示を制御することができる。
【００２０】
本発明の一側面の情報処理方法は、所定の条件を満たしてアイコンがポインタで指示されたか否かを判定し、前記条件を満たして前記アイコンが前記ポインタで指示されたと判定された場合、前記ポインタで指示された前記アイコンで表される移動元と、前記移動元の前記アイコンがドラッグアンドドロップさせられる、ドラッグアンドドロップ先の画面上のオブジェクトで表される移動先とを特定し、前記移動元の前記アイコンを前記移動先の前記オブジェクトにドラッグアンドドロップするアニメーションの表示を制御するステップを含む。
【００２１】
本発明の一側面のプログラムは、所定の条件を満たしてアイコンがポインタで指示されたか否かを判定し、前記条件を満たして前記アイコンが前記ポインタで指示されたと判定された場合、前記ポインタで指示された前記アイコンで表される移動元と、前記移動元の前記アイコンがドラッグアンドドロップさせられる、ドラッグアンドドロップ先の画面上のオブジェクトで表される移動先とを特定し、前記移動元の前記アイコンを前記移動先の前記オブジェクトにドラッグアンドドロップするアニメーションの表示を制御するステップをコンピュータに実行させる。
【００２２】
本発明の一側面においては、所定の条件を満たしてアイコンがポインタで指示されたか否かが判定され、前記条件を満たして前記アイコンが前記ポインタで指示されたと判定された場合、前記ポインタで指示された前記アイコンで表される移動元と、前記移動元の前記アイコンがドラッグアンドドロップさせられる、ドラッグアンドドロップ先の画面上のオブジェクトで表される移動先とが特定され、前記移動元の前記アイコンを前記移動先の前記オブジェクトにドラッグアンドドロップするアニメーションの表示が制御される。
【発明の効果】
【００２３】
以上のように、本発明の一側面によれば、ドラッグアンドドロップの操作に関する情報をユーザに知らせることがことができる。
【００２４】
また、本発明の一側面によれば、簡単にかつ迅速に、ドラッグアンドドロップの操作が可能であるか否かをユーザに知らせることができる。
【発明を実施するための最良の形態】
【００２５】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。従って、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２６】
本発明の一側面の情報処理装置は、所定の条件を満たしてアイコンがポインタで指示されたか否かを判定する判定手段（例えば、図２の判定部５１）と、前記条件を満たして前記アイコンが前記ポインタで指示されたと判定された場合、前記ポインタで指示された前記アイコンで表される移動元と、前記移動元の前記アイコンがドラッグアンドドロップさせられる、ドラッグアンドドロップ先の画面上のオブジェクトで表される移動先とを特定する特定手段（例えば、図２の移動元移動先特定部５２）と、前記移動元の前記アイコンを前記移動先の前記オブジェクトにドラッグアンドドロップするアニメーションの表示を制御する表示制御手段（例えば、図２の表示制御部５３）とを備える。
【００２７】
前記移動元および前記移動先であるオブジェクトの状態を保持する保持手段（例えば、図６のアイテムマネージャ１４２）をさらに備え、前記特定手段（例えば、図６の移動元移動先特定部１４１）は、前記保持手段に保持されている、前記移動元および前記移動先であるオブジェクトの状態から、前記移動元と前記移動先とを特定するようにすることができる。
【００２８】
本発明の一側面の情報処理方法またはプログラムは、所定の条件を満たしてアイコンがポインタで指示されたか否かを判定し（例えば、図３のステップＳ１２）、前記条件を満たして前記アイコンが前記ポインタで指示されたと判定された場合、前記ポインタで指示された前記アイコンで表される移動元と、前記移動元の前記アイコンがドラッグアンドドロップさせられる、ドラッグアンドドロップ先の画面上のオブジェクトで表される移動先とを特定し（例えば、図３のステップＳ１３乃至Ｓ１９）、前記移動元の前記アイコンを前記移動先の前記オブジェクトにドラッグアンドドロップするアニメーションの表示を制御する（例えば、図３のステップＳ２０およびＳ２１）ステップを含む。
【００２９】
図１は、本発明の一実施の形態のパーソナルコンピュータの構成の例を示すブロック図である。CPU（Central Processing Unit）１１は、ROM（Read Only Memory）１２、または記憶部１８に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）１３には、CPU１１が実行するプログラムやデータなどが適宜記憶される。これらのCPU１１、ROM１２、およびRAM１３は、バス１４により相互に接続されている。
【００３０】
なお、CPU１１として、”Ｃｅｌｌ誕生”、日経エレクトロニクス、日経BP社、２００５年２月２８日、８９頁乃至１１７頁に記載されているＣｅｌｌを採用することができる。
【００３１】
CPU１１にはまた、バス１４を介して入出力インターフェース１５が接続されている。入出力インターフェース１５には、キーボード、マウス、マイクロホンなどよりなる入力部１６、ディスプレイ、スピーカなどよりなる出力部１７が接続されている。CPU１１は、入力部１６から入力される指令に対応して各種の処理を実行する。そして、CPU１１は、処理の結果を出力部１７に出力する。
【００３２】
入出力インターフェース１５に接続されている記憶部１８は、例えばハードディスクからなり、CPU１１が実行するプログラムや各種のデータを記憶する。通信部１９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【００３３】
また、通信部１９を介してプログラムを取得し、記憶部１８に記憶してもよい。
【００３４】
入出力インターフェース１５に接続されているドライブ２０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア２１が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部１８に転送され、記憶される。
【００３５】
図２は、パーソナルコンピュータで実行されるプログラムの構成を示すブロック図である。パーソナルコンピュータにおいて、アプリケーションプログラム４１およびOS(Operating System)４２が実行される。
【００３６】
アプリケーションプログラム４１は、判定部５１、移動元移動先特定部５２、表示制御部５３、およびアイテム５４−１乃至５４−８を含む。
【００３７】
アプリケーションプログラム４１は、アイテム５４−１乃至５４−８に各種の処理を適用する。アプリケーションプログラム４１は、画面上の所定のアイコンがポインタで指示された場合、ドラッグアンドドロップの操作を示すアニメーションを表示させる。
【００３８】
OS４２は、例えば、Windows（登録商標）やMac OS（登録商標）Xなどのオペレーティングシステムであり、パーソナルコンピュータの基本的な動作を制御する。即ち、OS４２とは、基本制御ソフトウェアである。OS４２は、ポインタの画面上の位置を示す位置情報と、マウスなどの入力部１６への操作を示す操作情報とをアプリケーションプログラム４１に供給する。例えば、マウスである入力部１６のボタンが押圧された場合、OS４２は、ボタンが押圧されたことを示し、ボタンが押圧されたときのポインタの画面上の位置を示す情報をアプリケーションプログラム４１に供給する。例えば、ポインタでアイコンがポイントされた場合、OS４２は、ポイントされたアイコンを特定するIDをアプリケーションプログラム４１に供給する。
【００３９】
判定部５１は、所定の条件を満たしてアイコンがポインタで指示されたか否かを判定する。例えば、判定部５１は、OS４２からの位置情報および操作情報を基に、所定の条件を満たして、アイコンがポインタで指示されたか否かを判定する。
【００４０】
移動元移動先特定部５２は、条件を満たしてアイコンがポインタで指示されたと判定された場合、ポインタで指示されたアイコンで表される移動元と、移動元のアイコンがドラッグアンドドロップさせられる、ドラッグアンドドロップ先の画面上のオブジェクトで表される移動先とを特定する。
【００４１】
表示制御部５３は、移動元のアイコンを移動先のオブジェクトにドラッグアンドドロップするアニメーションの表示を制御する。
【００４２】
アイテム５４−１乃至５４−８はデータを含むか、あるいはデータとメソッドを含むオブジェクトである。アイテム５４−１乃至５４−８は、それぞれ画面上のオブジェクトに対応している。ここでいうオブジェクトとは、例えば、アイコンや領域である。
【００４３】
以下アイテム５４−１乃至５４−８を個々に区別する必要がない場合、単にアイテム５４と称する。
【００４４】
アイテム５４は、８個に限定されず、任意の数とすることができる。
【００４５】
次に、図３のフローチャートを参照して、ドラッグアンドドロップのアニメーションの表示の処理を説明する。ステップＳ１１において、判定部５１は、ポインタの指示の状態を示す情報を取得する。例えば、ステップＳ１１において、判定部５１は、ポインタの指示の状態を示す情報の一例としてディスプレイである出力部１７の画面上のポインタの位置を示す位置情報と、マウスなどの入力部１６への操作を示す操作情報とをOS４２から取得する。ステップＳ１２において、判定部５１は、ポインタの指示の状態を示す情報から、アイテムのアイコンが３秒間以上指示されたか否かを判定し、３秒間以上指示されたと判定した場合、ステップＳ１３に進む。
【００４６】
なお、ステップＳ１２において、判定部５１は３秒間に限らず、任意の長さの予め定めた期間継続してポインタでアイコンが指示されたか否かを判定するようにしても良い。または、例えば、ステップＳ１２において、判定部５１は、入力部１６を構成するキーボードの所定のキー、例えばShiftキーやCtrlキーやAltキーやスペースキー等のいずれかが押されつつポインタがアイコンを指示したか否かを判定するようにしても良い。
【００４７】
図４は、アプリケーションプログラム４１がディスプレイである出力部１７に表示させる画像の一例を示す図である。ウィンドウ８１は、アプリケーションプログラム４１への指示を入力し、また、アプリケーションプログラム４１の処理の結果を出力するための画像である。例えば、ウィンドウ８１は、３つの領域８２乃至８４からなる。
【００４８】
例えば、領域８２は、アプリケーションプログラム４１によって生成しようとするステートマシンのそれぞれの状態の定義の元になるアイテム５４のアイコンを表示する領域である。領域８３は、ステートマシンの状態のいずれかの具体的な記述を生成するための領域である。領域８４は、生成しようとするステートマシンの状態のそれぞれに対応するアイテム５４のアイコンを表示する領域である。
【００４９】
例えば、領域８２には、ドラッグアンドドロップの操作において、移動の対象（移動元）となるアイテム５４−１乃至アイテム５４−４のそれぞれに対応するアイコン８５−１乃至アイコン８５−４が表示される。例えば、アイテム５４−１乃至アイテム５４−４は、ステートマシンのそれぞれの状態の定義の元になるオブジェクトの集合であるライブラリを構成する。
【００５０】
例えば、領域８４には、移動元であるアイテム５４−１乃至５４−４のいずれかがドラッグアンドドロップされる他の対象（移動先）となるアイテム５４−５乃至アイテム５４−１０（アイテム５４−９および５４−１０は図示せず）のそれぞれに対応するアイコン８６−１乃至アイコン８６−６が表示される。アイテム５４−５乃至アイテム５４−１０は、それぞれ、ステートマシンの１つの状態を記述する。
【００５１】
アイテム５４などのリソースが占有されていない場合、ウィンドウ８１において、ユーザは、領域８２のアイコン８５−１乃至アイコン８５−４のいずれかを、領域８３にドラッグアンドドロップするか、または、領域８４のアイコン８６−１乃至アイコン８６−６のいずれかにドラッグアンドドロップすることができる。
【００５２】
すなわち、例えば、ユーザは、入力部１６のマウスを操作して、ポインタ８７を出力部１７のディスプレイの画面上を移動させ、領域８２のアイコン８５−１にポインタ８７を重ねた状態でマウスのボタンを押圧し、マウスのボタンを押圧したままポインタ８７を領域８４のアイコン８６−１まで移動させる。そして、ポインタ８７がアイコン８６−１に到達したとき、ユーザは、入力部１６のマウスのボタンを離す。このようにして、移動元の一例である領域８２のアイコン８５−１が、移動先の一例である、領域８４のアイコン８６−１にドラッグアンドドロップされる。
【００５３】
ステップＳ１１において、例えば、図４で示されるポインタ８７がアイコン８５−３を３秒間以上指示したか否かを判定部５１は判定する。判定部５１は、判定の結果を移動元移動先特定部５２に供給する。この場合、判定部５１はポインタで指示されたアイコンを特定するＩＤを移動元移動先特定部５２に供給する。
【００５４】
ステップＳ１３において、移動元移動先特定部５２は、アイコンが指示されたアイテム５４であるポイントアイテムに、ドラッグアンドドロップされる移動先のアイテム５４である移動先アイテムを問い合わせる。すなわち、ステップＳ１３において、移動元移動先特定部５２は、判定部５１から供給されたＩＤを基に、指示されたアイコンに対応するアイテム５４を特定する。そして、移動元移動先特定部５２は、特定したポイントされたアイテム５４であるポイントアイテムに、移動先アイテムを問い合わせる。
【００５５】
ステップＳ１４において、移動元移動先特定部５２は、ポイントアイテムから、移動先アイテムを特定するアイテムＩＤを取得する。
【００５６】
例えば、ステップＳ１３において移動元移動先特定部５２は、アイテム５４毎に予め登録されたコールバック関数を指定してポイントアイテムであるアイテム５４を呼び出す。すると、アイテム５４は、コールバック関数を呼び出して、移動先アイテムであるアイテム５４を特定するアイテムＩＤを移動元移動先特定部５２に通知してくるので、移動元移動先特定部５２はこのアイテムＩＤを取得する。
【００５７】
例えば、移動先アイテムを特定するアイテムＩＤは事前にアイテム５４に登録されている。
【００５８】
ステップＳ１５において、移動元移動先特定部５２は、選択したアイテムＩＤを基に、移動先アイテムに移動可能かを問い合わせる。
【００５９】
ステップＳ１６において、移動元移動先特定部５２は、移動先アイテムから、移動可能か否かを示す返答を取得する。
【００６０】
例えば、ステップＳ１５において、移動元移動先特定部５２は、アイテム５４毎に予め登録されたコールバック関数を指定して、選択したアイテムＩＤで特定される移動先アイテムであるアイテム５４を呼び出す。すると、移動先アイテムであるアイテム５４は、コールバック関数を呼び出して、移動可能か否かを示す返答を送信してくるので、ステップＳ１６において、移動元移動先特定部５２は、その返答を取得する。
【００６１】
例えば、選択したアイテムＩＤで特定される移動先アイテムが、その時点において、他のユーザによって編集されている場合、移動先アイテムであるアイテム５４は、移動可能でないことを示す返答を送信してくるので、ステップＳ１６において、移動元移動先特定部５２は、そのアイテム５４に移動可能でない（移動できない）ことを示す返答を取得する。
【００６２】
例えば、選択したアイテムＩＤで特定される移動先アイテムが、その時点において、他のユーザによって占有されていない場合、移動先アイテムであるアイテム５４は、移動可能であることを示す返答を送信してくるので、ステップＳ１６において、移動元移動先特定部５２は、そのアイテム５４に移動可能である（移動できる）ことを示す返答を取得する。
【００６３】
例えば、選択したアイテムＩＤで特定される移動先アイテムが、その時点において、所定の処理を実行するために占有されていたり、状態の変更が禁止されている場合など、そのアイテム５４は、移動元移動先特定部５２に、移動可能でないことを示す返答を送信する。
【００６４】
なお、ユーザが、選択したアイテムＩＤで特定される移動先アイテムにアクセスする権限がない場合には、移動先アイテムであるアイテム５４は、移動可能でないことを示す返答を送信するようにしてもよい。
【００６５】
ステップＳ１７において、移動元移動先特定部５２は、総ての移動先アイテムに問い合わせたか否かを判定し、総ての移動先アイテムに問い合わせていないと判定された場合、ステップＳ１５に戻り、次のアイテムＩＤを選択し、次の移動先アイテムについて、上述した処理を繰り返す。
【００６６】
ステップＳ１７において、総ての移動先アイテムに問い合わせたと判定された場合、手続きは、ステップＳ１８に進む。
【００６７】
ステップＳ１８において、移動元移動先特定部５２は、ポイントアイテムと移動先アイテムとの組み合わせを生成し、ステップＳ１９において、移動元移動先特定部５２は、組み合わせを間引く。
【００６８】
例えば、ステップＳ１９において、移動元移動先特定部５２は、移動先が複数の同一の種類のアイテム５４であった場合、同一の種類の移動先アイテムの組み合わせの中からひとつを残して、他の組み合わせを消去するように組み合わせを間引く。
【００６９】
ここで、同一の種類のアイテム５４とは、所定の属性が同じであるアイテム５４をいう。例えば、領域８４にアイコン８６−１乃至アイコン８６−６が表示されているアイテム５４−５乃至アイテム５４−１０は、それぞれ、ステートマシンの１つの状態に対応しているので、属性が同じであり、同一の種類のアイテム５４である。
【００７０】
例えば、ステップＳ１９において、移動元移動先特定部５２は、同一の種類の移動先アイテムの組み合わせのうち、アイテムＩＤの最も小さい移動先アイテムとポイントアイテムとの組み合わせだけを残すように、組み合わせを間引く。
【００７１】
また、例えば、移動元移動先特定部５２は、画面上のアイコンの位置を基に、同一の種類の移動先アイテムの組み合わせのうち、画面上でポイントアイテムのアイコンに最も近い位置のアイコンの移動先アイテムとポイントアイテムとの組み合わせだけを残すように、組み合わせを間引く。さらに、例えば、移動元移動先特定部５２は、同一の種類の移動先アイテムの組み合わせのうち、アイコンが画面に表示されている移動先アイテムとポイントアイテムとの組み合わせを残すように、組み合わせを間引く。
【００７２】
例えば、アイテム５４に予め優先順位を付しておき、移動元移動先特定部５２は、この優先順位を基に、組み合わせを間引くようにしてもよい。
【００７３】
なお、組み合わせを間引く具体的な手順は、いずれの手順であってもよい。
【００７４】
移動元移動先特定部５２は、間引いて残った組み合わせにおけるポイントアイテムと移動先アイテムとを特定するアイテムＩＤを表示制御部５３に供給する。
【００７５】
ステップＳ２０において、表示制御部５３は、組み合わせに応じたドラッグアンドドロップのアニメーションを表示するためのアニメーション表示データを生成する。例えば、ステップＳ２０において、表示制御部５３は、移動元移動先特定部５２から取得したアイテムＩＤから、ポイントアイテムに対応するアイコンを特定するＩＤと、移動先アイテムに対応するアイコンを特定するＩＤとを求める、そして表示制御部５３は、ポイントアイテムに対応するアイコンを特定するＩＤと、移動先アイテムに対応するアイコンを特定するＩＤとを基に、OS４２に問い合わせて、OS４２から、ポイントアイテムに対応するアイコンの画面上の位置およびポイントアイテムに対応するアイコンの画像データ、並びに移動先アイテムに対応するアイコンの画面上の位置および移動先アイテムに対応するアイコンの画像データを取得する。
【００７６】
表示制御部５３は、ポイントアイテムのアイコンを移動先アイテムのアイコンにドラッグアンドドロップするアニメーションを表示するためのアニメーション表示データを生成する。
【００７７】
すなわち、表示制御部５３は、ポイントアイテムに対応するアイコンの画面上の位置に、ポインタ８７の画像と共に、ポイントアイテムに対応するアイコンの画像データで示される画像を表示させるアニメーション表示データを生成する。さらに、表示制御部５３は、ポインタ８７の画像と共に、ポイントアイテムに対応するアイコンの画像データで示される画像を、移動先アイテムに対応するアイコンの画面上の位置に配置されている、移動先アイテムに対応するアイコンの画像データで示される画像まで移動させるアニメーション表示データを生成する。
【００７８】
ステップＳ２１において、表示制御部５３は、アニメーション表示データを用いて、ディスプレイである出力部１７に、ポイントアイテムのアイコンを移動先アイテムのアイコンにドラッグアンドドロップするアニメーションを表示させ、処理は終了する。
【００７９】
図５は、ディスプレイである出力部１７に表示されるアニメーションの例を説明する図である。アニメーション１０１は、ポイントアイテムに対応するアイコン８５−３を移動先アイテムに対応するアイコン８６−２にドラッグアンドドロップする動作を示す。アニメーション１０１は、ウィンドウ８１の上に表示される。
【００８０】
アニメーション１０１の最初に、ポインタ８７と同じ画像と共に、ポイントアイテムに対応するアイコン８５−３と同じ画像が、画面上のアイコン８５−３の上（アイコン８５−３の位置と同じ位置）に表示される。次に、ポインタ８７と同じ画像とアイコン８５−３と同じ画像が、移動先アイテムに対応するアイコン８６−２の上（アイコン８６−２の位置と同じ位置）に表示されているアイコン８６−２と同じ画像まで、移動させられる。
【００８１】
また、アニメーション１０１において、ポインタ８７と同じ画像とアイコン８５−３と同じ画像の動きを示す矢印１０２を表示するようにしてもよい。
【００８２】
なお、移動先アイテムは、オブジェクトであればよく、例えば、領域であってもよい。
【００８３】
アニメーション１０３は、ポイントアイテムに対応するアイコン８５−３を移動先アイテムに対応する領域８３にドラッグアンドドロップする動作を示す。アニメーション１０３は、ウィンドウ８１の上に表示される。
【００８４】
アニメーション１０３の最初に、ポインタ８７と同じ画像と共に、ポイントアイテムに対応するアイコン８５−３と同じ画像が、画面上のアイコン８５−３の上に表示される。次に、ポインタ８７と同じ画像とアイコン８５−３と同じ画像が、移動先アイテムに対応する領域８３の上に表示されている領域８３と同じ画像まで、移動させられる。
【００８５】
アニメーション１０３において、ポインタ８７と同じ画像とアイコン８５−３と同じ画像の動きを示す矢印１０４を表示するようにしてもよい。
【００８６】
なお、この場合、アニメーション１０１またはアニメーション１０３は、ウィンドウ８１と区別できるように表示される。例えば、ポインタ８７と同じ画像とアイコン８５−３と同じ画像が離散的に表示されたり（位置と時間とがとびとびに表示されたり）、または半透明で表示されたりする。
【００８７】
さらに、アニメーション１０１またはアニメーション１０３において、ドラッグアンドドロップの効果を示す画像を表示するようにしてもよい。例えば、領域８３には、インスタンスのアイコンが表示され、アイコン８５−３を領域８３にドラッグアンドドロップすると、アイテム５４−３に対応するインスタンスが生成される場合、アニメーション１０３の最後で、インスタンスのアイコンと同じ画像を領域８３に表示するようにしてもよい。
【００８８】
なお、アニメーションにおいて、移動先アイテムのアイコンと同じ画像の表示は省略してもよい。
【００８９】
このように、所定の条件を満たしてアイコンがポイントされると、ドラッグアンドドロップのアニメーションが表示される。これにより、簡単かつ迅速に、ドラッグアンドドロップの操作が可能であるか否かをユーザに知らせることができる。
【００９０】
ユーザは、表示されたアニメーションによって、ひと目で、そのとき、所望の対象をドラッグアンドドロップできるかを知ることができる。文字で表示されるヘルプ画面のように、スクロールなどの操作が要求されることもない。
【００９１】
アニメーションにおいて、ドラッグアンドドロップの効果を示す画像を表示するようにした場合は、実行される処理を推測する必要がなくなり、ユーザは、確実に、ドラッグアンドドロップの効果を知ることができる。
【００９２】
また、ポイントアイテムと移動先アイテムとの組み合わせを間引くようにしたので、代表的な組み合わせについてだけアニメーションが表示される。このようにすることで、同じような多数のアニメーションが表示されてしまうことが防止されて、アニメーションの表示が煩雑になることがない。その結果、ユーザは、より迅速により確実に、ドラッグアンドドロップの操作が可能であるか否かを知ることができる。
【００９３】
図６は、パーソナルコンピュータで実行されるプログラムの他の構成を示すブロック図である。パーソナルコンピュータにおいて、アプリケーションプログラム１２１およびOS４２が実行される。図６において、図２に示す場合と同様の部分には同一の符号を付してあり、その説明は省略する。
【００９４】
アプリケーションプログラム１２１は、判定部５１、表示制御部５３、移動元移動先特定部１４１、アイテムマネージャ１４２、およびアイテム１６１−１乃至１６１−８を含む。
【００９５】
アプリケーションプログラム１２１は、アイテム１６１−１乃至１６１−８に各種の処理を適用する。アプリケーションプログラム１２１は、画面上の所定のアイコンがポインタで指示された場合、ドラッグアンドドロップの操作を示すアニメーションを表示させる。
【００９６】
移動元移動先特定部１４１は、アイテムマネージャ１４２に保持されている、移動元および移動先であるオブジェクトの状態から、移動元と移動先を特定する。アイテムマネージャ１４２は、移動元および移動先であるオブジェクトの状態を保持する。
【００９７】
アイテム１６１−１乃至１６１−８はデータからなるオブジェクトである。アイテム１６１−１乃至１６１−８は、それぞれ画面上のオブジェクトに対応している。
【００９８】
以下アイテム１６１−１乃至１６１−８を個々に区別する必要がない場合、単にアイテム１６１と称する。
【００９９】
アイテム１６１は、８個に限定されず、任意の数とすることができる。
【０１００】
次に、図７のフローチャートを参照して、ドラッグアンドドロップのアニメーションの表示の他の処理を説明する。ステップＳ５１およびステップＳ５２のそれぞれは、図３のステップＳ１１およびステップＳ１２のそれぞれと同様なので、その説明は省略する。
【０１０１】
ステップＳ５３において、移動元移動先特定部１４１は、アイテムマネージャ１４２に、ドラッグアンドドロップされる移動先のアイテム１６１である移動先アイテムを問い合わせる。すなわち、ステップＳ５３において、移動元移動先特定部１４１は、判定部５１から供給されたＩＤを基に、アイテムマネージャ１４２に、移動先アイテムを問い合わせる。
【０１０２】
アイテムマネージャ１４２は、移動先アイテムを特定するアイテムＩＤなどの移動先アイテムの情報を保持している。
【０１０３】
アイテムマネージャ１４２は、移動先アイテムが問い合わせられると、移動先アイテムを特定するアイテムＩＤを通知してくるので、ステップＳ５４において、移動元移動先特定部１４１は、アイテムマネージャ１４２から、移動先アイテムを特定するアイテムＩＤを取得する。
【０１０４】
ステップＳ５５において、移動元移動先特定部１４１は、選択したアイテムＩＤを基に、アイテムマネージャ１４２に移動可能かを問い合わせる。
【０１０５】
ステップＳ５６において、移動元移動先特定部１４１は、アイテムマネージャ１４２から、移動可能か否かを示す返答を取得する。
【０１０６】
例えば、選択したアイテムＩＤで特定される移動先アイテムが、その時点において、他のユーザによって編集されている場合、アイテムマネージャ１４２は、移動可能でないことを示す返答を送信してくるので、ステップＳ５６において、移動元移動先特定部１４１は、選択したアイテムＩＤで特定される移動先アイテムに移動可能でない（移動できない）ことを示す返答を取得する。
【０１０７】
例えば、選択したアイテムＩＤで特定される移動先アイテムが、その時点において、他のユーザによって占有されていない場合、アイテムマネージャ１４２は、移動可能であることを示す返答を送信してくるので、ステップＳ５６において、移動元移動先特定部１４１は、選択したアイテムＩＤで特定される移動先アイテムに移動可能である（移動できる）ことを示す返答を取得する。
【０１０８】
例えば、選択したアイテムＩＤで特定される移動先アイテムが、その時点において、所定の処理を実行するために占有されていたり、状態の変更が禁止されている場合など、アイテムマネージャ１４２は、移動元移動先特定部１４１に、移動可能でないことを示す返答を送信する。
【０１０９】
なお、ユーザが、選択したアイテムＩＤで特定される移動先アイテムにアクセスする権限がない場合には、アイテムマネージャ１４２は、移動可能でないことを示す返答を送信するようにしてもよい。
【０１１０】
ステップＳ５７において、移動元移動先特定部１４１は、ステップＳ１８と同様の処理でポイントアイテムと移動先アイテムとの組み合わせを生成し、ステップＳ５８において、移動元移動先特定部１４１は、ステップＳ１９と同様の処理で、組み合わせを間引く。
【０１１１】
移動元移動先特定部１４１は、間引いて残った組み合わせにおけるポイントアイテムと移動先アイテムとを特定するアイテムＩＤを表示制御部５３に供給する。
【０１１２】
ステップＳ５９およびステップＳ６０のそれぞれは、図３のステップＳ２０およびステップＳ２１のそれぞれと同様なので、その説明は省略する。
【０１１３】
このように、データのみからなるオブジェクトのアイコンであっても、所定の条件を満たしてアイコンがポイントされると、ドラッグアンドドロップのアニメーションが表示される。これにより、簡単かつ迅速に、ドラッグアンドドロップの操作が可能であるか否かをユーザに知らせることができる。
【０１１４】
このように、ドラッグアンドドロップの操作に関する画像を表示させるようにした場合には、ドラッグアンドドロップの操作に関する情報をユーザに知らせることができる。また、所定の条件を満たしてアイコンがポインタで指示されたか否かを判定し、条件を満たしてアイコンがポインタで指示されたと判定された場合、ポインタで指示されたアイコンで表される移動元と、移動元のアイコンがドラッグアンドドロップさせられる、ドラッグアンドドロップ先の画面上のオブジェクトで表される移動先とを特定し、移動元のアイコンを移動先のオブジェクトにドラッグアンドドロップするアニメーションの表示を制御するようにした場合には、簡単にかつ迅速に、ドラッグアンドドロップの操作が可能であるか否かをユーザに知らせることができる。
【０１１５】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１１６】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図１に示すように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む）、光磁気ディスクを含む）、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア２１、または、プログラムが一時的もしくは永続的に格納されるROM１２や、記憶部１８を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインターフェースである通信部１９を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０１１７】
なお、本明細書において、プログラム記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１１８】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０１１９】
【図１】本発明の一実施の形態のパーソナルコンピュータの構成の例を示すブロック図である。
【図２】パーソナルコンピュータで実行されるプログラムの構成を示すブロック図である。
【図３】アニメーションの表示の処理を説明するフローチャートである。
【図４】アプリケーションプログラムがディスプレイである出力部に表示させる画像の一例を示す図である。
【図５】ディスプレイである出力部に表示されるアニメーションの例を説明する図である。
【図６】パーソナルコンピュータで実行されるプログラムの他の構成を示すブロック図である。
【図７】アニメーションの表示の他の処理を説明するフローチャートである。
【符号の説明】
【０１２０】
１１  ＣＰＵ，  １２  ＲＯＭ，  １３  ＲＡＭ，  １８  記憶部，  ２１  リムーバブルメディア，  ５１  判定部，  ５２  移動元移動先判定部，  ５３  表示制御部，  １４１  移動元移動先判定部，  １４２  アイテムマネージャ
【図１】
2007094763.tif 000003
【図２】
2007094763.tif 000004
【図３】
2007094763.tif 000005
【図４】
2007094763.tif 000006
【図５】
2007094763.tif 000007
【図６】
2007094763.tif 000008
【図７】
2007094763.tif 000009