JP5700020B2 - 画像処理装置、プログラム及び操作イベント判別方法 - Google Patents

画像処理装置、プログラム及び操作イベント判別方法 Download PDF

Info

Publication number
JP5700020B2
JP5700020B2 JP2012224891A JP2012224891A JP5700020B2 JP 5700020 B2 JP5700020 B2 JP 5700020B2 JP 2012224891 A JP2012224891 A JP 2012224891A JP 2012224891 A JP2012224891 A JP 2012224891A JP 5700020 B2 JP5700020 B2 JP 5700020B2
Authority
JP
Japan
Prior art keywords
operation event
display
display screen
tap
detected
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012224891A
Other languages
English (en)
Other versions
JP2014078097A (ja
Inventor
健一 駒場
健一 駒場
英之 松田
英之 松田
洋一 来正
洋一 来正
英一 成松
英一 成松
岡田 卓也
岡田  卓也
和弘 冨安
和弘 冨安
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2012224891A priority Critical patent/JP5700020B2/ja
Priority to EP13187671.6A priority patent/EP2720131B1/en
Priority to US14/049,975 priority patent/US9088678B2/en
Priority to CN201310466819.2A priority patent/CN103731578B/zh
Publication of JP2014078097A publication Critical patent/JP2014078097A/ja
Application granted granted Critical
Publication of JP5700020B2 publication Critical patent/JP5700020B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00352Input means
    • H04N1/00381Input by recognition or interpretation of visible user gestures
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03GELECTROGRAPHY; ELECTROPHOTOGRAPHY; MAGNETOGRAPHY
    • G03G15/00Apparatus for electrographic processes using a charge pattern
    • G03G15/50Machine control of apparatus for electrographic processes using a charge pattern, e.g. regulating differents parts of the machine, multimode copiers, microprocessor control
    • G03G15/5016User-machine interface; Display panels; Control console
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • User Interface Of Digital Computer (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Control Or Security For Electrophotography (AREA)
  • Position Input By Displaying (AREA)

Description

本発明は、画像処理装置、プログラム及び操作イベント判別方法に関する。
従来、スマートフォンやタブレット端末などの表示デバイスは、シングルタッチ操作やマルチタッチ操作など、ユーザーによって行われる複雑なジェスチャ操作を検知することができるようになっている(特許文献1,2参照)。例えば、特許文献1には、表示デバイスのマルチタッチ感知エリアに対してジェスチャセットを定義しておき、マルチタッチ感知エリアにおいて操作が検知されると、そのジェスチャセットに含まれる1又はそれ以上のジェスチャイベントを特定するデバイスが開示されている。また特許文献2には、表示デバイスの領域に対してマルチタッチフラグを設定しておくことにより、その領域に対してユーザーがマルチタッチ操作を行えるようにした技術が開示されている。
近年では、ネットワークプリンタやMFP(Multifunction Peripheral)などの画像処理装置においても、ユーザーによって行われる複雑なジェスチャ操作を検知してジョブの設定操作などを行えるようにしたものが普及しつつある。そのため、ユーザーは、画像処理装置の操作パネルに対し、シングルタップやダブルタップ、ロングタップ、フリック、ドラッグ、ピンチイン、ピンチアウトといった様々なジェスチャ操作を行うことにより、ジョブの設定操作や画像データの確認操作などを効率的に行うことができるようになってきている。
上記のような画像処理装置は、ユーザーによって行われるジェスチャ操作を正確に検知する必要があるため、シングルタップ、ダブルタップ、ロングタップ、フリック、ドラッグ、ピンチイン、ピンチアウトといった検知対象となる操作イベントごとに、複数の操作イベント判定ルーチンを予め搭載している。そして操作パネルに対するユーザーの入力操作が検知されると、それら複数の操作イベント判定ルーチンを順に全て起動していくことにより、ユーザーによって行われた入力操作に対応する操作イベントを特定し、その操作イベントに対応する処理を行うように構成されている。
特表2009−525538号公報 特開2009−211704号公報
ところで、画像処理装置の操作パネルに表示される表示画面には様々な画面があり、表示画面ごとにユーザーが行うことができるジェスチャ操作が異なる。つまり、操作パネルに表示される表示画面によって、フリック操作に対応する処理やピンチ操作に対応する処理など、特定の操作イベントに対応する処理が定義されていないこともある。
しかしながら、上述した従来の画像処理装置は、ユーザーの入力操作が検知されると、複数の操作イベント判定ルーチンを順に全て起動していくため、フリック操作に対応する処理が定義されていない表示画面に対する操作であっても、フリック操作を検知するための操作イベント判定ルーチンが起動されることになる。それ故、従来の画像処理装置は、操作パネルに表示される表示画面によっては、無駄な操作イベント判定ルーチンが実行されることとなり、CPUのリソースが占有されてしまうという問題がある。
特にこの種の画像処理装置は、スキャンジョブやコピージョブ、プリントジョブ、データ送受信ジョブの実行中においても、ユーザーによる入力操作を受け付け可能な状態であり、ジョブの実行中にユーザーによる入力操作が検知されると、その入力操作に対応する操作イベントを特定するために、ジョブの実行と並行して全ての操作イベント判定ルーチンが順次起動される。そのため、仮にジョブの実行中に表示されている表示画面がフリック操作に対応する処理の定義されていない画面であったとしても、ユーザーが誤操作としてフリック操作を行ってしまうと、CPUは、ジョブの実行のバックグランドで全ての操作イベント判定ルーチンを順次起動し、ユーザーによって入力された操作イベントがフリックであることを特定する。しかし、表示画面にはフリック操作に対応する処理が何ら定義されていないため、操作イベントがフリックであることを特定できたとしても、CPUはその後特別な処理は何も行わない。
またジョブの実行中にユーザーによって行われる操作が誤操作でない場合であっても、ユーザーによる入力操作が検知されることによって全ての操作イベント判定ルーチンを順次起動していくと、ユーザーの入力操作に対応した操作イベントを効率的に特定することができず、CPUの占有率が必要以上に上昇する。
上記のようにユーザーによる入力操作が検知されることに伴って全ての操作イベント判定ルーチンを順に起動する構成では、特にジョブの実行中において多数ページの画像データを処理することが必要な場合、或いは高解像度の画像データを処理することが必要な場合に、CPUにおいて無駄な操作イベント判定ルーチンが実行されることによって画像処理が遅延し、画像処理装置の生産性が低下するという問題を生じさせていた。
そこで本発明は、上記のような従来の問題点を解決すべく、ユーザーの入力操作を検知した場合に、全ての操作イベント判定ルーチンを順に起動するのではなく、表示画面に応じて必要な操作イベント判定ルーチンだけを起動するようにして効率的にユーザーの入力操作に対応する操作イベントを特定できるようにした画像処理装置、プログラム及び操作イベント判別方法を提供することを、その目的とするものである。
上記目的を達成するため、請求項1に係る発明は、画像処理装置であって、各種表示画面を表示する表示手段と、前記表示手段の表示画面に対するユーザーの入力操作を検知する入力検知手段と、前記表示手段に表示される表示画面ごとに、複数の操作イベントの中から、ユーザーの入力操作に基づいて検知対象となる操作イベントを関連付けて設定する設定手段と、前記入力検知手段によってユーザーの入力操作が検知されることに伴い、前記複数の操作イベントのそれぞれに対応する複数の操作イベント判定ルーチンの中から、前記表示手段に表示されている表示画面に対して前記設定手段によって関連付けられている操作イベントに対応する操作イベント判定ルーチンだけを起動して、ユーザーの入力操作に対応する操作イベントを特定する操作イベント判定手段と、前記操作イベント判定手段によって特定された操作イベントに基づく制御を行う制御手段と、を備え、前記設定手段は、前記表示手段に表示される一の表示画面に対して検知対象となる複数の操作イベントを関連付けるとき、当該一の表示画面に基づいて複数の操作イベントのそれぞれに対して優先順位を設定し、前記操作イベント判定手段は、前記一の表示画面が表示されている状態で前記入力検知手段によってユーザーの入力操作が検知されることに伴い、前記優先順位の高い順に前記操作イベント判定ルーチンを起動していくことを特徴とする構成である。
請求項2に係る発明は、請求項1に記載の画像処理装置において、前記設定手段は、電源投入時に、前記表示手段に表示可能な各種表示画面を解析することにより、各表示画面において検知対象となる操作イベントを特定し、各表示画面に対して特定した操作イベントを関連付けることを特徴とする構成である。
請求項3に係る発明は、請求項1又は2に記載の画像処理装置において、前記設定手段は、フリック、ドラッグ、シングルタップ、ダブルタップ、ロングタップ及びピンチの中から、前記表示手段に表示される各表示画面において検知対象となる操作イベントを選択して関連付けることを特徴とする構成である。
請求項4に係る発明は、請求項3に記載の画像処理装置において、前記表示手段に表示される各種表示画面には、リスト形式で表示される複数の情報をスクロール移動させて表示可能なスクロール画面が含まれており、前記設定手段は、前記スクロール画面において検知対象となる操作イベントとして、フリック、ドラッグ、シングルタップ及びダブルタップを関連付けることを特徴とする構成である。
請求項5に係る発明は、請求項3又は4に記載の画像処理装置において、前記表示手段に表示される各種表示画面には、複数のサムネイル画像をスクロール移動させて表示可能なサムネイル画像表示画面が含まれており、前記設定手段は、前記サムネイル画像表示画面において検知対象となる操作イベントとして、フリック、ドラッグ、シングルタップ、ダブルタップ及びロングタップを関連付けることを特徴とする構成である。
請求項6に係る発明は、請求項3乃至5のいずれかに記載の画像処理装置において、前記表示手段に表示される各種表示画面には、複数の操作キーをスクロール移動させて表示可能な操作キー表示画面が含まれており、前記設定手段は、前記操作キー表示画面において検知対象となる操作イベントとして、フリック、ドラッグ及びシングルタップを関連付けることを特徴とする構成である。
請求項7に係る発明は、請求項3乃至6のいずれかに記載の画像処理装置において、前記表示手段に表示される各種表示画面には、プレビュー画像を表示すると共に、当該プレビュー画像の拡大表示又は縮小表示が可能なプレビュー画像表示画面が含まれており、前記設定手段は、前記プレビュー画像表示画面において検知対象となる操作イベントとして、ドラッグ、ダブルタップ及びピンチを関連付けることを特徴とする構成である。
請求項8に係る発明は、請求項3乃至7のいずれかに記載の画像処理装置において、前記表示手段に表示される各種表示画面には、複数のグループに分類された複数の操作キーをグループ単位で切り替えて表示可能なグループ切替表示画面が含まれており、前記設定手段は、前記グループ切替表示画面において検知対象となる操作イベントとして、フリック及びシングルタップを関連付けることを特徴とする構成である。
請求項に係る発明は、請求項1乃至8のいずれかに記載の画像処理装置において、前記設定手段は、前記一の表示画面が、表示情報の数に応じてスクロール移動させることが可能となる画面である場合、スクロール移動のための操作イベントに関する優先順位を他の操作イベントよりも低く設定することを特徴とする構成である。
請求項10に係る発明は、請求項1乃至9のいずれかに記載の画像処理装置において、前記設定手段は、前記一の表示画面が、デフォルトでスクロール移動させることが可能な画面である場合、スクロール移動のための操作イベントに関する優先順位を他の操作イベントよりも高く設定することを特徴とする構成である。
請求項11に係る発明は、請求項1乃至10のいずれかに記載の画像処理装置において、前記設定手段は、前記一の表示画面が、プレビュー画像の拡大表示を行っているときにプレビュー画像の表示位置を移動させることが可能となる画面である場合、プレビュー画像の表示位置を移動させるための操作イベントに関する優先順位を他の操作イベントよりも低く設定することを特徴とする構成である。
請求項12に係る発明は、請求項1乃至11のいずれかに記載の画像処理装置において、前記操作イベント判定手段は、ダブルタップに対応する操作イベント判定ルーチンを起動した場合には、前記入力検知手段によって最初のタップ操作が検知されてから第1ダブルタップ判定時間が経過しても最初のタップ操作のリリースが検知されないとき、又は、最初のタップ操作のリリースが検知されてから第2ダブルタップ判定時間内に2回目のタップ操作が検知されないときに、ダブルタップに対応する操作イベント判定ルーチンの実行を終了し、次の操作イベント判定ルーチンを起動することを特徴とする構成である。
請求項13に係る発明は、請求項1乃至12のいずれかに記載の画像処理装置において、前記操作イベント判定手段は、ロングタップに対応する操作イベント判定ルーチンを起動した場合には、前記入力検知手段によってタップ操作が検知されてからロングタップ判定時間内にタップ操作のリリースが検知されたとき、又は、前記入力検知手段によってタップ操作が検知されてからタップ位置が所定距離以上移動したことが検知されたときに、ロングタップに対応する操作イベント判定ルーチンの実行を終了し、次の操作イベント判定ルーチンを起動することを特徴とする構成である。
請求項14に係る発明は、請求項1乃至13のいずれかに記載の画像処理装置において、前記操作イベント判定手段は、フリックに対応する操作イベント判定ルーチンを起動した場合には、前記入力検知手段によってタップ操作が検知されてからフリック判定速度以下でタップ位置の移動が検知されたとき、又は、前記入力検知手段によってタップ操作が検知されてからタップ位置の移動距離が所定距離以下であることが検知されたときに、フリックに対応する操作イベント判定ルーチンの実行を終了し、次の操作イベント判定ルーチンを起動することを特徴とする構成である。
請求項15に係る発明は、各種表示画面を表示する表示手段と、前記表示手段の表示画面に対するユーザーの入力操作を検知する入力検知手段とを有するコンピュータにおいて実行されるプログラムであって、前記コンピュータを、前記表示手段に表示される表示画面ごとに、複数の操作イベントの中から、ユーザーの入力操作に基づいて検知対象となる操作イベントを関連付けて設定する設定手段、前記入力検知手段によってユーザーの入力操作が検知されることに伴い、前記複数の操作イベントのそれぞれに対応する複数の操作イベント判定ルーチンの中から、前記表示手段に表示されている表示画面に対して前記設定手段によって関連付けられている操作イベントに対応する操作イベント判定ルーチンだけを起動して、ユーザーの入力操作に対応する操作イベントを特定する操作イベント判定手段、および、前記操作イベント判定手段によって特定された操作イベントに基づく制御を行う制御手段、として機能させ、前記設定手段は、前記表示手段に表示される一の表示画面に対して検知対象となる複数の操作イベントを関連付けるとき、当該一の表示画面に基づいて複数の操作イベントのそれぞれに対して優先順位を設定し、前記操作イベント判定手段は、前記一の表示画面が表示されている状態で前記入力検知手段によってユーザーの入力操作が検知されることに伴い、前記優先順位の高い順に前記操作イベント判定ルーチンを起動していくことを特徴とする構成である。
請求項16に係る発明は、各種表示画面を表示する表示手段に対して行われるユーザーの入力操作に基づき、該入力操作に対応する操作イベントを判別する操作イベント判別方法であって、(a) 前記表示手段に表示される表示画面ごとに、複数の操作イベントの中から、ユーザーの入力操作に基づいて検知対象となる操作イベントを関連付けて設定するステップと、(b) 前記表示手段に一の表示画面が表示されている状態でユーザーによって行われる入力操作を検知するステップと、(c) 前記複数の操作イベントのそれぞれに対応する複数の操作イベント判定ルーチンの中から、前記一の表示画面に対して関連付けられている操作イベントに対応する操作イベント判定ルーチンだけを起動することにより、ユーザーの入力操作に対応する操作イベントを判別するステップと、を有し、前記ステップ(a)は、前記表示手段に表示される一の表示画面に対して検知対象となる複数の操作イベントを関連付けるとき、当該一の表示画面に基づいて複数の操作イベントのそれぞれに対して優先順位を設定し、前記ステップ(c)は、前記一の表示画面が表示されている状態で前記ステップ(b)によってユーザーの入力操作が検知されることに伴い、前記優先順位の高い順に前記操作イベント判定ルーチンを起動していくことを特徴とする構成である。
本発明によれば、ユーザーの入力操作を検知した場合に、複数の操作イベント判定ルーチンの全てを順に起動することなく、表示中の表示画面に応じて必要な操作イベント判定ルーチンだけを起動するため、ユーザーの入力操作に対応する操作イベントを効率的に特定することができるようになる。
画像処理装置の外観構成の一例を示す図である。 画像処理装置のハードウェア構成の一例を示すブロック図である。 CPUによって実行されるプログラムの概念的構成を示す図である。 CPUがメインプログラムを起動することによって実現される機能ブロックの一例を示す図である。 画像処理装置のCPUによって行われる処理手順の一例を示すフローチャートである。 機能選択画面の一例を示す図である。 複数の情報をリスト形式で表示可能なリスト表示画面の一例を示す図である。 サムネイル画像を表示するサムネイル画像表示画面の一例を示す図である。 画像のプレビュー表示を行うプレビュー画像表示画面の一例を示す図である。 コピー機能に関する応用設定画面の一例を示す図である。 コピー機能に関する基本設定画面の一例を示す図である。 各表示画面と、各表示画面において受付可能な操作イベントとの関係を示す図である。 リスト表示領域をスクロール移動させる必要がない場合のリスト表示画面の一例を示す図である。 ダブルタップ判定ルーチンを起動する場合の処理手順の一例を示すフローチャートである。 ロングタップ判定ルーチンを起動する場合の処理手順の一例を示すフローチャートである。 フリック判定ルーチンを起動する場合の処理手順の一例を示すフローチャートである。 ループ処理において複数の操作イベント判定ルーチンが順に起動される場合の処理シーケンスの一例を示す図である。
以下、本発明に関する好ましい実施形態について図面を参照しつつ詳細に説明する。尚、以下に説明する実施形態において互いに共通する部材には同一符号を付しており、それらについての重複する説明は省略する。
図1は、本実施形態における画像処理装置1の外観構成の一例を示す図である。この画像処理装置1は、MFP(Multifunction Peripheral)によって構成され、スキャン機能やプリント機能、コピー機能、FAX機能、ネットワーク機能、電子メール送受信機能などの様々な機能を備えており、ユーザーによって指定されたジョブを実行する。この画像処理装置1は、装置本体の上部に、スキャンジョブを実行するときに動作するスキャナ部2を備えている。スキャナ部2は、原稿の画像を光学的に読み取る画像読取部2aと、画像読取部2aに対して原稿を1枚ずつ自動搬送する原稿搬送部2bとを備えて構成され、ユーザーによってセットされた原稿を読み取って画像データを生成する。また画像処理装置1は、装置本体の中央下部に、プリントジョブを実行するときに動作するプリンタ部3を備えている。プリンタ部3は、入力する画像データに基づいて電子写真方式などによる画像形成を行って出力する画像形成部3aと、その画像形成部3aに対して印刷用紙などのシート材を1枚ずつ給紙搬送する給紙搬送部3bとを備えて構成され、ユーザーによって指定された画像データに基づいて印刷出力を行う。
また画像処理装置1の正面側には、ユーザーが画像処理装置1を使用する際にユーザーインタフェースとして機能する操作パネル4が設けられている。この操作パネル4は、ユーザーに対して各種情報を表示する表示部5と、ユーザーが操作入力を行うための操作部6とを備えている。表示部5は、例えば所定の画面サイズを有するカラー液晶ディスプレイなどで構成され、様々な画像を表示することができる。操作部6は、表示部5の画面上に配置されるタッチセンサ6aと、表示部5の画面周囲に配置される複数の押しボタン式の操作キー6bとを備えて構成される。したがって、ユーザーは、表示部5に表示される表示画面を参照しながら、操作部6に対して様々な入力操作を行うことにより、画像処理装置1に対してジョブの実行のための設定操作を行ったり、或いはジョブの実行を指示したりすることができる。
表示部5の画面上に配置されるタッチセンサ6aは、ユーザーによるシングルタッチ操作だけでなく、マルチタッチ操作も検知することができるものである。シングルタッチ操作とは、表示部5の表示画面上の1点をタッチする操作であり、例えばシングルタップやダブルタップ、ロングタップ、フリック、ドラッグなどの操作が含まれる。マルチタッチ操作は、表示部5の表示画面上の複数点を同時にタッチする操作であり、例えばピンチインやピントアウト、回転などのピンチ操作が含まれる。このタッチセンサ6aは、表示部5の表示画面上における少なくとも1点がタップされると、そのタップ位置を特定することができると共に、その後、そのタップ状態のリリースや、タップ位置の移動を検知することができるようになっている。そのため、ユーザーは、表示部5の表示画面に対して様々なジェスチャ操作を行いながらジョブの設定などを行うことが可能である。
尚、表示部5の画面周囲に配置される操作キー6bは、0から9の数字が付されたテンキーなどで構成される。それらの操作キー6bは、単にユーザーによる押し込み操作だけを検知するものである。
図2は、画像処理装置1のハードウェア構成の一例を示すブロック図である。画像処理装置1は、上述したスキャナ部2、プリンタ部3、操作パネル4の他、図2に示すように、制御部10と、FAX部20と、ネットワークインタフェース21と、無線インタフェース22と、記憶装置23とを備えており、それら各部がデータバス19を介して相互にデータの入出力を行うことができる構成である。
制御部10は、図2に示す操作パネル4、スキャナ部2、プリンタ部3、FAX部20、ネットワークインタフェース21、無線インタフェース22および記憶装置23のそれぞれを統括的に制御するものである。FAX部20は、図示を省略する公衆電話回線を介してFAXデータの送受信を行うものである。ネットワークインタフェース21は、画像処理装置1をLAN(Local Area Network)などのネットワークに接続するためのインタフェースである。無線インタフェース22は、外部の装置とNFC(Near Field Communication)などによる無線通信を行うためのインタフェースである。記憶装置23は、例えばハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)などで構成される不揮発性の記憶手段であり、ネットワークを介して受信する画像データや、スキャナ部2によって生成された画像データなどを一時的に保存しておくことができる。
また図2に示すように、制御部10は、CPU11と、ROM12と、SRAM14と、NVRAM15と、RTC17とを備えて構成される。CPU11は、画像処理装置1に電源が投入されることに伴い、ROM12に格納されているプログラム13を読み出して実行する。これにより、制御部10は、上述したように各部の制御動作を開始する。特に、CPU11は、画像処理装置1における動作を制御する主要部であり、ジョブの実行動作だけでなく、ユーザーインタフェースとして機能する操作パネル4の動作も制御する。すなわち、CPU11は、操作パネル4の表示部5に表示する表示画面を切り替える制御を行うと共に、タッチセンサ6a及び操作キー6bによってユーザーの入力操作が検知された場合に、その入力操作がどのような操作イベントであるかを特定し、その特定した操作イベントに対応する制御を実行する。操作イベントとは、ユーザーの入力操作によって発生するイベントであり、例えばタッチセンサ6aに対する入力操作ではシングルタップ、ダブルタップ、ロングタップ、フリック、ドラッグ、ピンチといった複数の操作イベントが存在する。また操作イベントに対応する制御には、例えば表示画面を切り替える制御や、ジョブの実行を開始する制御、ジョブの実行を停止する制御などが含まれる。尚、このようなCPU11の動作については後に詳しく説明する。
SRAM14は、CPU11による作業用の記憶領域を提供するメモリであり、例えばCPU11がプログラム13を実行することによって発生する一時的なデータなどを記憶する。
NVRAM15は、バッテリバックアップされた不揮発性メモリであり、画像処理装置1における各種設定値や情報などを記憶しておくものである。このNVRAM15には、図2に示すように画面情報16が予め記憶されている。画面情報16は、操作パネル4の表示部5に表示する複数の表示画面に関する情報から成る。各表示画面の画面情報16には、ユーザーがタップ操作可能なアイコン画像やボタン画像など、様々な画像が含まれており、ユーザーがジェスチャ操作を行うことができる画面構成が定義されている。表示部5に表示される複数の表示画面はそれぞれ画面構成が異なるため、ユーザーがタッチセンサ6aに対してジェスチャ操作を行った場合でも受付可能な操作イベントはそれぞれ異なったものとなっている。
RTC17は、リアルタイムクロックであり、時刻をカウントし続ける時計回路である。
次に図3は、CPU11によって実行されるプログラム13の概念的構成を示す図である。プログラム13は、画像処理装置1への電源時にCPU11によって自動的に読み出されて起動されるメインプログラム13aと、そのメインプログラム13aのサブルーチンとして予め用意されている複数の操作イベント判定ルーチン13b,13c,13d,13e,13f,13gとを備えて構成される。複数の操作イベント判定ルーチン13b〜13gは、タッチセンサ6aがユーザーによる入力操作(ジェスチャ操作)を検知した場合に、その入力操作がシングルタップ、ダブルタップ、ロングタップ、フリック、ドラッグ及びピンチのいずれの操作イベントに該当するかを特定するためのサブルーチンであり、特定対象となる操作イベントごとに具体的な判定処理の中身又は手順が異なるため、個別のサブルーチンとして予め用意されている。そして本実施形態では、タッチセンサ6aがユーザーによる入力操作を検知すると、CPU11が複数の操作イベント判定ルーチン13b〜13gの中から必要な操作イベント判定ルーチンだけを起動することにより、入力操作に対応する操作イベントを効率的に特定するように構成される。以下、このようなCPU11の具体的な処理内容について説明する。
図4は、CPU11がメインプログラム13aを起動することによって実現される機能ブロックの一例を示す図である。図4に示すように、CPU11は、メインプログラム13aを実行することにより、設定部31、表示制御部32、操作イベント判定部33、制御実行部34及びジョブ実行部35として機能する。
設定部31は、表示部5に表示する表示画面ごとに、複数の操作イベントの中から、ユーザーの入力操作に基づいて検知対象となる操作イベントを関連付けて設定する処理部である。すなわち、設定部31は、NVRAM15に格納されている画面情報16を読み出して解析することにより、各表示画面において受付可能な操作イベントを特定し、その特定した操作イベントを各表示画面に予め関連付ける。例えば設定部31は、各表示画面の画面情報16に対して特定した操作イベントに関する情報を付加することにより、各表示画面に対して操作イベントを関連付けて設定する。尚、設定部31は、1つの表示画面に対し、シングルタップ、ダブルタップ、ロングタップ、フリック、ドラッグ及びピンチといった複数の操作イベントのうちの少なくとも1つを関連付けるようになっており、例えば全ての操作イベントを受付可能な表示画面の場合には複数の操作イベントの全てを関連付ける。
操作イベントを関連付けた情報は、画像処理装置1の出荷時においてNVRAM15に画面情報16が格納されるタイミングで予め付加されるようにしても良い。しかし、NVRAM15に格納された画面情報16は、画像処理装置1の出荷後においてもオプション機能の追加や、新たなアプリケーションプログラムのインストール、表示画面のカスタマイズなどによって更新されることもある。画面情報16が更新されると、各表示画面の画面構成が変化するため、それ以前においては受付可能でなかった操作イベントが、画面情報16の更新後に受付可能となることもある。そのため、設定部31は、CPU11がメインプログラム13aを起動することに伴ってはじめに機能し、画像処理装置1の起動処理が行われている間に、各表示画面に対し、複数の操作イベントの中からユーザーの入力操作に基づいて検知対象となる操作イベントを関連付けて設定する。
表示制御部32は、NVRAM15に格納されている画面情報16を読み出し、複数の表示画面の中から一の表示画面を選択して表示部5へ出力することにより、その選択した表示画面を表示部5に表示するものである。この表示制御部32は、画像処理装置1の起動処理が完了すると、複数の表示画面の中から初期画面を選択して表示部5に表示する。その後、表示制御部32は、制御実行部34からの画面更新指示に基づいて表示部5の表示画面を逐次更新していく。
操作イベント判定部33は、操作パネル4のタッチセンサ6aが表示画面に対するユーザーの入力操作を検知した場合に、その入力操作に対応する操作イベントを特定する処理部である。この操作イベント判定部33は、メインプログラム13aによって実現される機能の1つであり、タッチセンサ6aによってユーザーの入力操作が検知されると、そのタイミングで表示部5に表示中である表示画面に対して予め関連付けられている操作イベントを特定し、その特定した操作イベントに対応する操作イベント判定ルーチンだけを起動することにより、ユーザーの入力操作に対応する操作イベントを特定する。すなわち、表示画面に対するユーザーの入力操作が検知されると、その表示画面で受付可能な操作イベントだけを判定するために、複数の操作イベント判定ルーチン13b〜13gの中から、設定部31によってその表示画面に関連付けられている操作イベントに対応した操作イベント判定ルーチンだけを起動するのである。このとき、表示画面に対して複数の操作イベントが関連付けられていることもある。例えば、表示部5に表示されている表示画面がシングルタップ、ダブルタップ、フリックの3つの操作イベントを受付可能な場合である。そのような場合、操作イベント判定部33は、各操作イベントに対応する操作イベント判定ルーチンを順次起動していくことにより、ユーザーの入力操作に対応する操作イベントを特定する。このように操作イベント判定部33は、ユーザーによってタッチセンサ6aに対する何らかの入力操作が行われた場合、毎回全ての操作イベント判定ルーチン13b〜13gを起動するのではなく、そのタイミングで表示部5に表示されている表示画面が受付可能な操作イベントに対応する操作イベント判定ルーチンだけを起動することにより、無駄な判定ルーチンを起動することなく、効率的にユーザーの入力操作に対応する操作イベントを特定できるように構成されている。
そして操作イベント判定部33は、必要な操作イベント判定ルーチンだけを起動することにより、ユーザーの入力操作に対応する操作イベントを特定することができると、その特定した操作イベントを制御実行部34へ出力する。一方、上記のように必要な操作イベント判定ルーチンだけを起動しても、ユーザーの入力操作に対応する操作イベントを特定することができないこともある。例えば、シングルタップ、ダブルタップ、フリックの3つの操作イベントを受付可能な表示画面に対してユーザーがロングタップやドラッグ、ピンチなどの操作を行った場合には、シングルタップ、ダブルタップ、フリックの3つの操作イベントのそれぞれに対応する操作イベント判定ルーチン13b,13c,13eを起動してもユーザーの入力操作に対応する操作イベントを特定することができない。そのような場合、操作イベント判定部33は、制御実行部34に対する出力処理は行わない。
制御実行部34は、ユーザーが操作パネル4に対する操作を行った場合に、その操作に基づく制御を実行する処理部である。この制御実行部34は、ユーザーによってタッチセンサ6aに対するジェスチャ操作が行われた場合には、上述した操作イベント判定部33によって特定された操作イベントを入力し、その操作イベントに基づく制御を実行する。これに対し、ユーザーによって操作キー6bに対する操作が行われた場合には、制御実行部34がその操作キー6bから直接操作信号を受信し、その操作信号に基づいてユーザーによって行われた操作(操作イベント)を特定し、その操作に基づく制御を実行する。制御実行部34がユーザーによる入力操作に基づいて実行する制御には、例えば表示部5に表示している表示画面を更新する制御や、ジョブの実行開始や停止の制御などがある。そのため、制御実行部34は、図4に示すように、表示制御部32とジョブ実行部35とを制御するようになっている。すなわち、制御実行部34は、ユーザーによる入力操作に基づいて表示画面を更新するときには表示制御部32に画面更新を指示し、ジョブの実行開始や停止を行うときにはジョブ実行部35にジョブの実行開始又は停止を指示する。これにより、表示制御部32は、表示部5に表示している表示画面を制御実行部34からの指示に基づいて更新するようになる。またジョブ実行部35は、制御実行部34からの指示に基づいてジョブの実行を開始したり、或いは既に実行中のジョブを停止したりする。ただし、制御実行部34が実行する制御には、上記以外の制御が含まれていても構わない。
ジョブ実行部35は、画像処理装置1に設けられた各部の動作を制御することにより、ユーザーによって指定されたジョブの実行を制御する。このジョブ実行部35は、画像処理装置1においてジョブの実行が行われている間、CPU11に常駐して各部の動作を統括的に制御するようになっている。
次に上記のような機能構成を有するCPU11において行われる具体的な処理手順について説明する。図5は、画像処理装置1のCPU11によって行われる処理手順の一例を示すフローチャートである。この処理は、画像処理装置1に電源が投入され、CPU11がプログラム13に含まれるメインプログラム13aを起動することによって開始される処理である。
まずCPU11は、メインプログラム13aを起動すると、画面情報16を読み出し(ステップS1)、その画面情報16に基づいて各表示画面に対する操作イベントの関連付けを行う(ステップS2)。そして各表示画面に対する操作イベントの関連付けが全て完了すると、CPU11は、操作パネル4の表示部5に、初期画面を表示する(ステップS3)。このようにして表示部5に表示画面が表示されると、CPU11は、その表示画面に関連付けられている操作イベントに対応する操作イベント判定ルーチンをセットする(ステップS4)。これにより、表示部5において表示中の表示画面が受付可能な操作イベントに対応する操作イベント判定ルーチンが予め用意された状態となる。
そしてCPU11は、タッチセンサ6a及び操作キー6bのいずれかによって入力操作が検知されるまで待機する状態となる(ステップS5)。そしてユーザーによる入力操作が検知されると(ステップS5でYES)、CPU11は、その入力操作がタッチセンサ6aによって検知されたものであるか否かを判断し(ステップS6)、タッチセンサ6aで検知されたものであれば(ステップS6でYES)、ステップS4で予めセットされている操作イベント判定ルーチンを順次起動してユーザーの入力操作に対応する操作イベントを特定するためのループ処理を実行する(ステップS7,S8,S9)。このループ処理(ステップS7,S8,S9)では、プログラム13に含まれる全ての操作イベント判定ルーチン13b〜13gが順に起動されるのではなく、ステップS4でセットされた操作イベント判定ルーチンであって、現在表示中の表示画面において受付可能な操作イベントに対応する操作イベント判定ルーチンだけが起動されるようになる。また複数の操作イベント判定ルーチンをループ処理で順次起動する場合は、いずれか1つの操作イベント判定ルーチンによってユーザーの入力操作に対応する操作イベントが特定されると、そのタイミングでループ処理を終了する。つまり、このループ処理(ステップS7,S8,S9)では、ステップS4でセットされた複数の操作イベント判定ルーチンの全てを常に起動させるのではなく、全てを起動するまでに途中でユーザーの入力操作に対応した操作イベントを特定することができれば、それ以降に起動が予定されている操作イベント判定ルーチンを起動することなく、ループ処理を終了する。
そしてループ処理(ステップS7,S8,S9)が終了すると、CPU11は、ループ処理(ステップS7,S8,S9)によって操作イベントが特定できたか否かを判断する(ステップS10)。ユーザーによって表示中の表示画面で受付可能でないジェスチャ操作が行われてしまうこともあるため、ステップS10の判断が必要となる。そしてユーザーの入力操作に対応する操作イベントを特定することができなかった場合(ステップS10でNO)、CPU11は、その後の処理(ステップS11)へと進むことなく、再びユーザーによる入力操作が検知されるまで待機する状態へと戻る(ステップS5)。これに対し、ループ処理(ステップS7,S8,S9)においてユーザーの入力操作に対応する操作イベントを特定することができた場合(ステップS10でYES)、CPU11による処理は次のステップS11へと進む。
また、ユーザーによる入力操作が検知され(ステップS5でYES)、その入力操作が操作キー6bによって検知されたものであった場合(ステップS6でNO)も、CPU11による処理はステップS11へと進む。すなわち、ユーザーが操作キー6bを操作した場合には、その操作信号によって操作イベントを特定することができるため、操作イベントを特定できた場合の処理(ステップS11)へと進む。
CPU11は、ユーザーの入力操作に対応する操作イベントが特定されると、その入力操作に対応した制御を実行する(ステップS11)。すなわち、上述したように、表示部5の表示画面を更新する制御、ジョブの実行制御、その他の制御などが行われる。そしてCPU11は、ステップS11の制御実行により、表示部5に表示される表示画面が更新されたか否かを判断する(ステップS12)。その結果、表示画面が更新された場合(ステップS12でYES)、CPU11による処理は、ステップS4へと戻り、その更新後の表示画面に関連付けられている操作イベントに対応した操作イベント判定ルーチンをセットする(ステップS4)。これに対し、表示画面が更新されていない場合(ステップS12でNO)、CPU11による処理は、ステップS5に戻り、再びユーザーによる入力操作が検知されるまで待機する状態となる(ステップS5)。そしてCPU11は、その後、上述した処理を繰り返す。
CPU11は上記のような処理を行うことにより、ユーザーが操作パネル4に対する操作を行った場合にはその操作に対応した処理を行うことができる。特に上記のような処理はジョブの実行中に並行して行われることもあるが、ユーザーによって表示画面に対するジェスチャ操作が行われたときには、その表示画面において受付可能な操作イベントだけを特定するために、必要最小限の操作イベント判定ルーチンだけを起動するようにしているため、ジョブの実行においても無駄な操作イベント判定ルーチンを起動することがなく、効率的にユーザーのジェスチャ操作に対応する操作イベントを特定することが可能である。
次に本実施形態において表示部5に表示される幾つかの表示画面を例示しつつ、それら各表示画面に関連付けられる操作イベントについて説明する。図6は、機能選択画面G10の一例を示す図である。この機能選択画面G10は、ユーザーが選択可能な機能に対応するアイコン画像B1が操作キーとして画面内に配置された操作キー表示画面としての画面構成を有している。この機能選択画面G10内に表示されるアイコン画像B1は、オプション機能の追加や、新たなアプリケーションプログラムのインストール、表示画面のカスタマイズなどによって追加されることもある。例えば表示画面のカスタマイズには、本来別の表示画面において表示されるアイコン画像を機能選択画面G10においてショートカットキーとして追加登録するカスタマイズなどがある。図6の画面例では、機能選択画面G10のアイコン画像表示領域において1度に表示可能なアイコン画像の数が12個であるのに対し、表示登録されているアイコン画像B1の数が22個あるため、アイコン画像表示領域をスクロール移動させることによってそれら22個のアイコン画像B1を表示するようになっている。
このような機能選択画面G10に対してユーザーが行うことができる操作としては、例えば、アイコン画像表示領域をスクロール移動させるためのフリック操作と、機能選択操作であるアイコン画像B1のシングルタップ操作と、アイコン画像B1の表示位置を変更するためのドラッグ操作との3つの操作である。フリック操作は、図6に示すように、例えば指先で画面上の一点P1をタップした状態のままそのタップ位置をスクロール移動方向F1に素早く移動させながら画面上からリリースする操作である。機能選択画面G10に対してユーザーによるフリック操作が行われることにより、図6に示すように、アイコン画像表示領域が横方向にスクロール移動し、全てのアイコン画像B1が表示されるようになる。またシングルタップ操作は、指先で画面上の一点をタップした直後に素早く指先を画面上からリリースする操作である。シングルタップ操作をアイコン画像B1の表示位置に対して行うことにより、複数のアイコン画像B1の中から一のアイコン画像B1を選択することができる。またドラッグ操作は、フリック操作と同様に、指先で画面上の一点P1をタップした状態のままそのタップ位置を移動させて別の位置でリリースする操作であるが、移動方向は直線方向でなくても良く、また移動速度も比較的遅い速度であっても良い操作である。ドラッグ操作をアイコン画像B1に対して行うことにより、そのアイコン画像B1の表示位置を任意の位置に移動させることができる。このように、図6に示す機能選択画面G10では、シングルタップ、ドラッグ及びフリックの3つの操作イベントが受付可能となっており、それ以外の操作イベントを受け付けない画面構成となっている。それ故、設定部31は、図6に示す機能選択画面G10に対し、シングルタップ、ドラッグ及びフリックの3つの操作イベントを関連付けて設定する。
図7は、複数の情報をリスト形式で表示可能なリスト表示画面G13の一例を示す図である。このリスト表示画面G13は、図7(a)に示すように、ユーザーが選択可能な複数の宛先に関する情報をリスト形式で表示するリスト表示領域R1を含む画面構成となっている。このリスト表示画面G13は、リスト表示領域R1に表示すべき情報量が多いとき、リスト表示領域R1をスクロール移動させて全ての情報を表示するようになる。
このようなリスト表示画面G13に対してユーザーが行うことができる操作としては、例えば図7(b)に示すように、リスト形式で表示された複数の情報の中から一の情報を選択するシングルタップ操作がある。また情報量が多いときにはリスト表示領域R1をスクロール移動させるためのフリック操作を行うことも可能である。例えば図7(c)に示すように、ユーザーはリスト表示領域R1の一点をタップした状態でスクロール移動方向F2又はF3にフリック操作を行うことにより、リスト表示領域R1に表示される情報をスクロールさせることができる。またこの他にも、リスト形式で表示された宛先情報の表示位置を移動させるためのドラッグ操作や、一の宛先情報を選択してその宛先の詳細設定画面へ遷移させるためのダブルタップ操作なども行うことができる。ダブルタップ操作とは、シングルタップ操作と同様の操作を所定時間内に2回行う操作である。このように、図7に示すリスト表示画面G13では、シングルタップ、ドラッグ、フリック及びダブルタップの4つの操作イベントが受付可能となっており、それ以外の操作イベントを受け付けない画面構成となっている。それ故、設定部31は、図7に示すリスト表示画面G13に対し、シングルタップ、ドラッグ、フリック及びダブルタップの4つの操作イベントを関連付けて設定する。
図8は、スキャナ部2が読み取った画像又は記憶装置23に保存されている画像のサムネイル画像を表示するサムネイル画像表示画面G14の一例を示す図である。このサムネイル画像表示画面G14は、複数のサムネイル画像を表示可能なサムネイル画像表示領域R2を有すると共に、そのサムネイル画像表示領域R2の右側にサムネイル画像をドラッグして移動させることによって様々なジョブの実行を開始するためのアイコン画像B2が表示される画面構成となっている。このサムネイル画像表示画面G14は、図8(a)に示すように、サムネイル画像表示領域R2に表示するサムネイル画像の数が所定数よりも多いとき、サムネイル画像表示領域R2をスクロール移動させることにより全てのサムネイル画像を表示することができるようになっている。
このようなサムネイル画像表示画面G14に対してユーザーが行うことができる操作としては、例えばサムネイル画像を選択するためのシングルタップ操作やダブルタップ操作がある。またサムネイル画像表示領域R2をスクロール移動させることが可能なときには、フリック操作を行ってスクロール移動させることができる。また図8(b)に示すように、一のサムネイル画像に対してロングタップ操作を行うこともできる。ロングタップ操作は、画面上の一点をタップした状態のまま、そのタップ位置を移動させることなく一定時間以上タップ状態を保持し続ける操作である。一のサムネイル画像に対してロングタップ操作が行われると、図8(b)に示すようにそのサムネイル画像の周囲にメニューアイコンM1が表示されるようになる。さらに、ユーザーが行うことができる操作としては、図8(c)において矢印F4で示すように、一のサムネイル画像をアイコン画像B2の表示位置まで移動させるドラッグ操作がある。このように、図8に示すサムネイル画像表示画面G14は、シングルタップ、ドラッグ、フリック、ダブルタップ、ロングタップの5つの操作イベントを受付可能となっており、それ以外の操作イベントを受け付けない画面構成となっている。それ故、設定部31は、図8に示すサムネイル画像表示画面G14に対し、シングルタップ、ドラッグ、フリック、ダブルタップ及びロングタップの5つの操作イベントを関連付けて設定する。
図9は、画像のプレビュー表示を行うプレビュー画像表示画面G15の一例を示す図である。このプレビュー画像表示画面G15は、ユーザーによって選択された画像をプレビュー表示するためのプレビュー領域R3が含まれる画面構成となっている。このプレビュー画像表示画面G15に対してユーザーが行うことができる操作としては、プレビュー画像を縮小、拡大又は回転するためのピンチ操作がある。ピンチ操作には、プレビュー画像を縮小するためのピンチイン操作と、拡大するためのピンチアウト操作と、回転するための回転操作とが含まれる。ピンチイン操作は、図9(a)において矢印F5で示すように、プレビュー領域R3に表示されるプレビュー画像の2点を2本の指先でタップした状態でそれら2点間の距離を縮めるように移動させる操作である。このようなピンチイン操作により、プレビュー領域R3に表示されるプレビュー画像が縮小表示されるようになる。またピンチアウト操作は、図9(b)において矢印F6で示すように、プレビュー領域R3に表示されるプレビュー画像の2点を2本の指先でタップした状態でそれら2点間の距離を拡大していくように移動させる操作である。このようなピンチアウト操作により、プレビュー領域R3に表示されるプレビュー画像が拡大表示されるようになる。さらに回転操作は、図9(c)において矢印F7で示すように、プレビュー領域R3に表示されるプレビュー画像の2点を2本の指先でタップした状態でそれら2点間の位置を回転させていくように移動させる操作である。このような回転操作により、プレビュー領域R3に表示されるプレビュー画像が回転表示されるようになる。
またプレビュー画像表示画面G15では、ピンチアウト操作に限らず、プレビュー領域R3に表示されているプレビュー画像の1点に対してダブルタップ操作が行われた場合にも、その1点を中心にプレビュー画像を拡大して表示する処理が行われる。さらにプレビュー画像表示画面G15では、プレビュー画像が拡大表示されており、その画像全体をプレビュー領域R3に表示できていないときにドラッグ操作を受け付け可能となっており、ドラッグ操作が行われると、拡大表示部分を移動させて表示する。
このように、図9に示すプレビュー画像表示画面G15は、ドラッグ、ダブルタップ、ピンチの3つの操作イベントを受付可能となっており、それ以外の操作イベントを受け付けない画面構成となっている。それ故、設定部31は、図9に示すプレビュー画像表示画面G15に対し、ドラッグ、ダブルタップ及びピンチの3つの操作イベントを関連付けて設定する。
図10は、コピー機能に関する応用設定画面G16の一例を示す図である。この応用設定画面G16は、コピー機能に関する様々な応用設定を行うために予め登録されている複数のアイコン画像B3を横方向に配列して表示するアイコン画像表示領域R4を有すると共に、そのアイコン画像表示領域R4を横方向にスクロール移動させるためのスクロールバーB4が表示される画面構成となっている。すなわち、この応用設定画面G16では、予め登録されているアイコン画像B3の数が一画面内で表示可能なアイコン画像の数を越えているため、デフォルト状態でアイコン画像表示領域R4が横方向にスクロール移動可能となっている。尚、図例では、コピー機能に関する応用設定画面G16を示しているが、他の機能についてもこれと同様である。
このような応用設定画面G16に対してユーザーが行うことができる操作としては、例えばアイコン画像B3を選択するためのシングルタップ操作と、アイコン画像表示領域R4をスクロール移動させるためにアイコン画像表示領域R4に対して行われるフリック操作と、同様にアイコン画像表示領域R4をスクロール移動させるためにスクロールバーB4に対して行われるドラッグ操作との3つの操作がある。つまり、図10に示す応用設定画面G16は、シングルタップ、フリック及びドラッグの3つの操作イベントを受付可能となっており、それ以外の操作イベントを受け付けない画面構成となっている。それ故、設定部31は、図10に示す応用設定画面G16に対し、シングルタップ、フリック及びドラッグの3つの操作イベントを関連付けて設定する。
図11は、コピー機能に関する基本設定画面G17の一例を示す図である。この基本設定画面G17は、コピー機能に関する様々な基本的な設定を行うために予め登録されている複数のアイコン画像B5をグループ単位で表示するアイコン画像表示領域R5を有すると共に、そのアイコン画像表示領域R5に表示されるアイコン画像B5のグループを別のグループに切り替えるための表示切替ボタンB6が表示される画面構成となっている。すなわち、この基本設定画面G17は、複数のグループに分類された複数の操作キーをグループ単位で切り替えて表示可能なグループ切替表示画面となっている。つまり、この基本設定画面G17は、デフォルト状態でアイコン画像表示領域R5を別の表示状態に切り替え可能となっている。尚、図例では、コピー機能に関する基本設定画面G17を示しているが、他の機能についてもこれと同様である。
このような基本設定画面G17に対してユーザーが行うことができる操作としては、例えばアイコン画像B5及び表示切替ボタンB6に対するシングルタップ操作と、表示切替ボタンB6を操作することなくアイコン画像表示領域R5を別のグループの表示状態に切り替えるためのフリック操作との2つの操作がある。つまり、図11に示す基本設定画面G16は、シングルタップ及びフリックの2つの操作イベントを受付可能となっており、それ以外の操作イベントを受け付けない画面構成となっている。それ故、設定部31は、図11に示す基本設定画面G17に対し、シングルタップ及びフリックの2つの操作イベントを関連付けて設定する。
図12は、上述した各表示画面と、各表示画面において受付可能な操作イベントとの関係を示す図である。尚、図12では、各表示画面において受付可能な操作イベントには「YES」と表記され、受付可能でない操作イベントには斜線が施されている。図12に示すように、操作パネル4の表示部5に表示される表示画面には、様々な種類の表示画面があり、それぞれの表示画面ごとに受付可能な操作イベントが異なっている。そして上述したように設定部31は、これらの表示画面ごとに、受付可能な操作イベントを特定してユーザーの入力操作に基づいて検知対象となる操作イベントを関連付けて設定する。つまり、設定部31によって各表示画面に関連付けられる操作イベントは、図12に示すものと同様である。
したがって、例えば、機能選択画面G10が表示されている状態のときにユーザーによってジェスチャ操作が行われると、それに対応する操作イベントを特定するためのループ処理(ステップS7,S8,S9)において、フリック判定用と、ドラッグ用と、シングルタップ用の3つの操作イベント判定ルーチン13e,13f,13bだけが順次起動されるようになる。また、他の表示画面が表示部5に表示されている状態であっても同様である。このように本実施形態では、操作パネル4の表示部5に図12に示す複数の表示画面のうちのいずれが表示されている場合であっても、複数の操作イベント判定ルーチン13b〜13gの全てが順に実行されることはなく、表示画面に関連付けられた操作イベントに対応するものだけが実行されるようになっている。
また図12においては、機能選択画面、リスト表示画面及びサムネイル画像表示画面のそれぞれにおいてフリック操作が条件付きで受付可能となっている。すなわち、これらの表示画面では、フリック操作は常に受付可能な操作イベントではなく、特定の条件が満たされたときに受付可能な操作イベントとなっている。例えば図7のように、リスト表示画面G13のリスト表示領域R1に表示される情報量が所定量よりも多いときには、一度に全ての情報を表示することができないため、リスト表示領域R1をスクロール移動させて情報を表示することが必要となる。しかし、リスト表示領域R1に表示される情報量が所定量よりも少なく、全ての情報を一画面内で表示可能な場合には、リスト表示領域R1をスクロール移動させる必要がない。図13は、リスト表示領域R1をスクロール移動させる必要がない場合のリスト表示画面G13の一例を示す図である。図13に示すように、リスト表示領域R1に表示される宛先の数が所定数よりも少ない場合にはリスト表示領域R1をスクロール移動させる必要がないため、このようなケースではリスト表示画面G13においてスクロール移動させるためのフリック操作を受け付けない状態となる。同様に、図6に示した機能選択画面G10においても、例えばアイコン画像B1の数が所定数(12個)以下である場合にはアイコン画像表示領域をスクロール移動させる必要がなくなるため、そのような状態ではスクロール移動させるためのフリック操作を受け付けない状態となる。さらに、図8に示したサムネイル画像表示画面G14においても、例えばサムネイル画像表示領域R2に表示するサムネイル画像の数が所定数以下であるときには、サムネイル画像表示領域R2をスクロール移動させる必要がなくなるため、そのような状態ではスクロール移動させるためのフリック操作を受け付けない状態となる。
これに対し、図12に示すように、応用設定画面及び基本設定画面は、デフォルトでスクロール移動させることが可能な画面構成であるため、スクロール移動のためのフリック操作は常に受付可能な操作イベントとなっている。
また図12においては、プレビュー画像においてドラッグ操作が条件付きで受付可能となっている。すなわち、この表示画面では、ドラッグ操作は常に受付可能な操作イベントではなく、特定の条件が満たされたときに受付可能な操作イベントとなっている。例えば上述の図9(b)に示したように、プレビュー画像表示画面G15のプレビュー領域R3においてプレビュー画像が拡大表示されているとき、その拡大表示部分を移動させるためにドラッグ操作が受付可能となる。しかし、プレビュー画像が拡大表示されていないときには、拡大表示部分を移動させる必要がないため、そのような状態ではプレビュー画像表示画面G15において拡大表示部分を移動させるためのドラッグ操作を受け付けない状態となる。
上記のように表示部5に表示される各表示画面において、特定の操作イベントが条件付きで受付可能となっているような場合、その特定の操作イベントに対応する操作イベント判定ルーチンを最初に起動してしまうと、最初に無駄な判定処理が実行されてしまうという可能性がある。そこで、本実施形態の設定部31は、表示部5に表示される各表示画面に対して検知対象となる複数の操作イベントを関連付けるとき、それら複数の操作イベントの中に条件付きで受付可能となる操作イベントが含まれていれば、それら複数の操作イベントのそれぞれに対して優先順位を設定する。すなわち、条件付きで受付可能となる操作イベントの優先順位を低く設定すると共に、条件が付されておらず常に受付可能な操作イベントの優先順位を高く設定する。例えば、機能選択画面G10、リスト表示画面G13及びサムネイル画像表示画面G14では、フリック操作に対応する操作イベントの優先順位を低く設定し、フリック操作以外の操作イベントの優先順位を高く設定する。また、プレビュー画像表示画面G15では、拡大表示された表示位置を移動させるためのドラッグ操作に対応する操作イベントの優先順位を低く設定し、ドラッグ操作以外の操作イベントの優先順位を高く設定する。
また、図10及び図11に示した応用設定画面や基本設定画面では、ユーザーが設定操作を行う際に画面スクロールや画面切り替えなどが頻繁に行われる。そのような状況の下では、ユーザーによる入力操作に対応する操作イベントを判定する際、画面スクロールや画面切り替えを行うための操作イベントであるか否かを優先的に判定することが好ましい。そのため、設定部31は、応用設定画面や基本設定画面のように、デフォルトでスクロール移動や画面切り替えを行うことが可能な画面である場合には、スクロール移動や画面切り替えのための操作イベントに関する優先順位を高く設定し、それ以外の操作イベントの優先順位を低く設定する。
そして操作イベント判定部33は、ユーザーによる入力操作が行われ、その表示画面に関連付けられている複数の操作イベント判定ルーチンを、上述したループ処理(ステップS7,S8,S9)で順次起動するとき、優先順位の高い操作イベントに対応する操作イベント判定ルーチンから順に起動していく。そのため、例えば、機能選択画面G10、リスト表示画面G13及びサムネイル画像表示画面G14に対してユーザーがジェスチャ操作を行ったときには、フリック判定用以外の他の操作イベント判定ルーチンが優先的に起動され、フリック判定ルーチン13eは最後に起動される。また、プレビュー画像表示画面G15に対してユーザーがジェスチャ操作を行ったときには、ドラッグ判定用以外の他の操作イベント判定ルーチンが優先的に起動され、ドラッグ判定ルーチン13fは最後に起動される。さらに、応用設定画面G16や基本設定画面G17に対してユーザーがジェスチャ操作をおこなったときには、フリック判定ルーチン13eが優先的に起動され、フリック判定用以外の他の操作イベント判定ルーチンがその後に順次起動されるようになる。これにより、ユーザーの入力操作に基づいて複数の操作イベント判定ルーチンを順次起動するときでも、無駄な判定処理が最初に実行されてしまうことを防止することができ、効率的にユーザーの入力操作に対応する操作イベントを特定することができるようになる。
また、操作イベント判定部33は、上述したループ処理(ステップS7,S8,S9)において複数の操作イベント判定ルーチンを順次起動していく際、ユーザーによる入力操作が各判定ルーチンに定義されている様々な条件を満たしているか否かを逐次判定していく。そして一の判定ルーチンに定義されている全ての条件が満たされていれば、それによってユーザーの入力操作に対応する操作イベントを特定することができる。一方、一の判定ルーチンに定義されている一の条件が満たされてないことが判明した場合、その時点でユーザーの入力操作に対応する操作イベントが当該判定ルーチンによって特定可能な操作イベントでないことがわかる。そこで本実施形態の操作イベント判定部33は、一の操作イベント判定ルーチンの起動中、その一の操作イベント判定ルーチンに定義されている複数の条件のうちの一の条件が満たされていないことを判定した時点で当該一の操作イベント判定ルーチンの起動処理を終了し、次の操作イベント判定ルーチンを起動する。以下、これについての具体例を幾つか説明する。
図14は、CPU11(操作イベント判定部33)が上述したループ処理(ステップS7,S8,S9)においてダブルタップ判定ルーチン13cを起動する場合の処理手順の一例を示すフローチャートである。CPU11は、この処理を開始すると、複数の操作イベント判定ルーチン13b〜13gの中からダブルタップ判定ルーチン13cを選択して起動する(ステップS20)。
このダブルタップ判定ルーチン13cには、タッチセンサ6aから入力する情報に基づいてダブルタップを判定するための第1ダブルタップ判定時間と第2ダブルタップ判定時間との2つの条件に関する情報が定義されている。第1ダブルタップ判定時間は、最初のタップ操作が検知されてからその最初のタップ操作が画面上からリリースされるまでの時間であり、第2ダブルタップ判定時間は、最初のタップ操作のリリースが検知されてから2回目のタップ操作が検知されるまでの時間である。つまり、最初のタップ操作が検知されてから第1ダブルタップ判定時間内にリリースが検知され、且つ、最初のタップ操作のリリースが検知されてから第2ダブルタップ判定時間内に2回目のタップ操作が検知されると、ユーザーによる入力操作がダブルタップであると特定できるようになっている。
そのため、CPU11は、ステップS20でダブルタップ判定ルーチン13cを起動すると、まず第1の条件として、第1ダブルタップ判定時間内にリリースが検知されたか否かを判断する(ステップS21)。その結果、第1ダブルタップ判定時間を経過しても最初のタップ操作のリリースが検知されていないとき(ステップS21でNO)、CPU11は、次の条件の判定を行うことなく、ダブルタップ判定ルーチン13cの起動を終了し(ステップS22)、次の操作イベント判定ルーチンを起動する処理を行う(ステップS23)。
一方、第1ダブルタップ判定時間内にリリースが検知された場合(ステップS21でYES)、CPU11は、第2の条件として、最初のタップ操作のリリースが検知されてから第2ダブルタップ判定時間内に2回目のタップ操作が検知されたか否かを判断する(ステップS24)。その結果、第2ダブルタップ判定時間を経過しても2回目のタップ操作が検知されていないとき(ステップS24でNO)、CPU11は、ダブルタップ判定ルーチン13cの起動を終了し(ステップS22)、次の操作イベント判定ルーチンを起動する処理を行う(ステップS23)。また、第2ダブルタップ判定時間内に2回目のタップ操作が検知された場合(ステップS24でYES)、CPU11は、ユーザーによる入力操作に対応する操作イベントとしてダブルタップを特定する(ステップS25)。このようにして操作イベントが特定されると、ステップS7,S8,S9のループ処理を抜ける。
次に図15は、CPU11(操作イベント判定部33)が上述したループ処理(ステップS7,S8,S9)においてロングタップ判定ルーチン13dを起動する場合の処理手順の一例を示すフローチャートである。CPU11は、この処理を開始すると、複数の操作イベント判定ルーチン13b〜13gの中からロングタップ判定ルーチン13dを選択して起動する(ステップS30)。
このロングタップ判定ルーチン13dには、タッチセンサ6aから入力する情報に基づいてロングタップを判定するためのロングタップ判定時間とロングタップ判定距離との2つの条件に関する情報が定義されている。ロングタップ判定時間は、タップ操作が検知されてからそのタップ操作が画面上からリリースされるまでの時間であり、ロングタップ判定距離は、タップ操作が検知されてからそのタップ位置の移動距離である。つまり、タップ操作が検知されてからロングタップ判定時間内にリリースが検知されることなく、しかもタップ位置の移動距離がロングタップ判定距離の範囲内であれば、ユーザーによる入力操作がロングタップであると特定できるようになっている。
そのため、CPU11は、ステップS30でロングタップ判定ルーチン13dを起動すると、まず第1の条件として、ロングタップ判定時間内にリリースが検知されたか否かを判断する(ステップS31)。その結果、ロングタップ判定時間内にタップ操作がリリースされているとき(ステップS31でYES)、CPU11は、次の条件の判定を行うことなく、ロングタップ判定ルーチン13dの起動を終了し(ステップS32)、次の操作イベント判定ルーチンを起動する処理を行う(ステップS33)。
一方、ロングタップ判定時間内にリリースが検知されていない場合(ステップS31でNO)、CPU11は、第2の条件として、タップ位置の移動距離がロングタップ判定距離で定められた所定距離以上であるか否かを判断する(ステップS34)。その結果、タップ位置が所定距離以上移動しているとき(ステップS34でYES)、CPU11は、ロングタップ判定ルーチン13dの起動を終了し(ステップS32)、次の操作イベント判定ルーチンを起動する処理を行う(ステップS33)。また、タップ位置の移動距離が所定距離の範囲内であるとき(ステップS34でNO)、CPU11は、ユーザーによる入力操作に対応する操作イベントとしてロングタップを特定する(ステップS35)。そしてこの場合も、ステップS7,S8,S9のループ処理を抜けることになる。
次に図16は、CPU11(操作イベント判定部33)が上述したループ処理(ステップS7,S8,S9)においてフリック判定ルーチン13eを起動する場合の処理手順の一例を示すフローチャートである。CPU11は、この処理を開始すると、複数の操作イベント判定ルーチン13b〜13gの中からフリック判定ルーチン13eを選択して起動する(ステップS40)。
このフリック判定ルーチン13eには、タッチセンサ6aから入力する情報に基づいてフリックを判定するためのフリック判定速度とフリック判定距離との2つの条件に関する情報が定義されている。フリック判定速度は、タップ操作が検知されてからそのタップ位置の移動する速度であり、フリック判定距離は、タップ操作が検知されてからそのタップ位置が移動する距離である。つまり、タップ操作が検知されてからそのタップ位置がフリック判定速度以上で移動し、且つ、タップ位置の移動距離がフリック判定距離以上であれば、ユーザーによる入力操作がフリックであると特定できるようになっている。
そのため、CPU11は、ステップS40でフリック判定ルーチン13eを起動すると、まず第1の条件として、タップ位置の移動速度がフリック判定速度以下であるか否かを判断する(ステップS41)。その結果、移動速度がフリック判定速度以下であれば(ステップS41でYES)、CPU11は、次の条件の判定を行うことなく、フリック判定ルーチン13eの起動を終了し(ステップS42)、次の操作イベント判定ルーチンを起動する処理を行う(ステップS43)。
一方、タップ位置の移動速度がフリック判定速度を越えていれば(ステップS41でNO)、CPU11は、第2の条件として、タップ位置の移動距離がフリック判定距離で定められた所定距離以下であるか否かを判断する(ステップS44)。その結果、タップ位置の移動距離が所定距離以下であるとき(ステップS44でYES)、CPU11は、フリック判定ルーチン13eの起動を終了し(ステップS42)、次の操作イベント判定ルーチンを起動する処理を行う(ステップS43)。また、タップ位置の移動距離が所定距離を越えているとき(ステップS44でNO)、CPU11は、ユーザーによる入力操作に対応する操作イベントとしてフリックを特定する(ステップS45)。そしてこの場合も、ステップS7,S8,S9のループ処理を抜けることになる。
上記のようにループ処理(ステップS7,S8,S9)では、一の操作イベント判定ルーチンに定義されている複数の条件のうちの一の条件が満たされていないことを判定した時点で当該一の操作イベント判定ルーチンの起動処理を終了して次の操作イベント判定ルーチンを起動することによって、処理効率を向上させることができる。
図17は、一例として、ループ処理(ステップS7,S8,S9)において、ダブルタップ判定ルーチン13c、ロングタップ判定ルーチン13d、フリック判定ルーチン13e及びドラッグ判定ルーチン13fが順に起動される場合の処理シーケンスを示す図である。例えばユーザーの入力操作がドラッグ操作である場合、最初に起動されるダブルタップ判定ルーチン13cでは、第3ステップにおいてリリースが検知されないため、そのタイミングでダブルタップ判定ルーチン13cによる判定が終了し、次のロングタップ判定ルーチン13dが起動される。そしてダブルタップ判定ルーチン13cでは、第4ステップにおいてタップ位置が所定距離以上移動していることが検知されるため、そのタイミングでロングタップ判定ルーチン13dによる判定が終了し、次のフリック判定ルーチン13eが起動される。そしてフリック判定ルーチン13eでは、第3ステップにおいてタップ位置の移動速度が所定速度に満たないが検知されるため、そのタイミングでフリック判定ルーチン13eによる判定が終了し、次のドラッグ判定ルーチン13fが起動される。そしてドラッグ判定ルーチン13fでは、第1ステップから第5ステップまでの処理が全て行われ、最終的にユーザーの入力操作に対応する操作イベントがドラッグに特定される。
このような場合、最初に起動されるダブルタップ判定ルーチン13cでは、第4ステップと第5ステップとが行われない。また2番目に起動されるロングタップ判定ルーチン13dでは、第5ステップが行われない。さらに3番目に起動されるフリック判定ルーチン13eでは、第4ステップと第5ステップとが行われない。したがって、効率的に次の操作イベント判定ルーチンを起動していくことができるようになり、ユーザーの入力操作に対応する操作イベントを特定するまでの時間を短縮することができるという利点がある。
以上のように本実施形態の画像処理装置1は、表示部5に表示される表示画面ごとに、複数の操作イベントの中から、ユーザーの入力操作に基づいて検知対象となる操作イベントを予め関連付けて設定しておき、表示画面に対するユーザーの入力操作が検知されることに伴い、複数の操作イベントのそれぞれに対応する複数の操作イベント判定ルーチン13b〜13gの中から、その表示画面に予め関連付けられている操作イベントに対応する操作イベント判定ルーチンだけを起動して、ユーザーの入力操作に対応する操作イベントを特定する構成である。つまり、このような構成により、表示画面に対するユーザーの入力操作を検知した場合でも、全ての操作イベント判定ルーチン13b〜13gを順に起動する必要がなくなり、表示部5に表示されている表示画面に応じて必要な操作イベント判定ルーチンだけを起動することができるので、CPU11にかかる負荷を低減し、効率的にユーザーの入力操作に対応する操作イベントを特定することが可能になる。そして、その結果、画像処理装置1の生産性が低下するという問題を解消することができるようになる。
また本実施形態の画像処理装置1は、電源投入時に、表示部5に表示可能な各種表示画面を解析することにより、各表示画面において検知対象となる操作イベントを特定し、各表示画面に対して特定した操作イベントを関連付けることができる構成となっている。そのため、例えば表示部5に表示される表示画面がカスタマイズされた場合であっても、画像処理装置1を再起動することにより、そのカスタマイズされた表示画面に対応する操作イベントを再起動時に関連付けることができるという利点がある。
また本実施形態の画像処理装置1は、表示部5に表示される各表示画面に対して検知対象となる複数の操作イベントを関連付けるとき、各表示画面に関連付ける複数の操作イベントのそれぞれに対して優先順位を設定する。そして一の表示画面が表示されている状態でユーザーの入力操作が検知されることに伴い、その一の表示画面に関連付けられた複数の操作イベントの優先順位に基づき、優先順位の高い順に操作イベント判定ルーチンを起動していく構成である。このような構成によれば、ユーザーの入力操作に対応する操作イベントをより一層効率的に特定することができるようになる。
以上、本発明に関する一実施形態について説明したが、本発明は上記実施形態において説明した内容のものに限られるものではなく、種々の変形例が適用可能である。
例えば上記実施形態では、画像処理装置1がMFPによって構成される場合を例示した。しかし、画像処理装置1は、MFPに限られるものではなく、プリンタ専用機、FAX専用機、コピー専用機、スキャナ専用機などであっても構わない。また画像処理装置1は、必ずしも上述したようなジョブを実行する装置に限られず、携帯端末装置などであっても構わない。
また上記実施形態では、主として、設定部31が、電源投入時に、表示部5に表示可能な各種表示画面を解析することにより、各表示画面において検知対象となる操作イベントを特定し、各表示画面に対してそれらの特定した操作イベントを関連付けておくことを例示した。しかし、これに限らず、設定部31は、表示制御部32によって表示部5に表示画面が表示されるタイミングでその表示画面を解析し、その表示画面に対して操作イベントを関連付けるものであっても構わない。この場合、表示画面が実際に表示部5に表示されるタイミングで検知対象となる操作イベントを関連付けることができる。そのため、例えば図13に示したようにリスト表示画面G13においてリスト表示領域R1に表示される情報量が所定量よりも少ないときには、リスト表示領域R1をスクロール移動させるためのフリック操作に対応する操作イベントを予め関連付けないようにしておくも可能となり、より一層処理効率を向上させることが可能になる。
1 画像処理装置
4 操作パネル
5 表示部(表示手段)
6a タッチセンサ(入力検知手段)
11 CPU
13 プログラム
31 設定部(設定手段)
32 表示制御部
33 操作イベント判定部(操作イベント判定手段)
34 制御実行部(制御手段)

Claims (16)

  1. 各種表示画面を表示する表示手段と、
    前記表示手段の表示画面に対するユーザーの入力操作を検知する入力検知手段と、
    前記表示手段に表示される表示画面ごとに、複数の操作イベントの中から、ユーザーの入力操作に基づいて検知対象となる操作イベントを関連付けて設定する設定手段と、
    前記入力検知手段によってユーザーの入力操作が検知されることに伴い、前記複数の操作イベントのそれぞれに対応する複数の操作イベント判定ルーチンの中から、前記表示手段に表示されている表示画面に対して前記設定手段によって関連付けられている操作イベントに対応する操作イベント判定ルーチンだけを起動して、ユーザーの入力操作に対応する操作イベントを特定する操作イベント判定手段と、
    前記操作イベント判定手段によって特定された操作イベントに基づく制御を行う制御手段と、
    を備え
    前記設定手段は、前記表示手段に表示される一の表示画面に対して検知対象となる複数の操作イベントを関連付けるとき、当該一の表示画面に基づいて複数の操作イベントのそれぞれに対して優先順位を設定し、
    前記操作イベント判定手段は、前記一の表示画面が表示されている状態で前記入力検知手段によってユーザーの入力操作が検知されることに伴い、前記優先順位の高い順に前記操作イベント判定ルーチンを起動していくことを特徴とする画像処理装置。
  2. 前記設定手段は、電源投入時に、前記表示手段に表示可能な各種表示画面を解析することにより、各表示画面において検知対象となる操作イベントを特定し、各表示画面に対して特定した操作イベントを関連付けることを特徴とする請求項1に記載の画像処理装置。
  3. 前記設定手段は、フリック、ドラッグ、シングルタップ、ダブルタップ、ロングタップ及びピンチの中から、前記表示手段に表示される各表示画面において検知対象となる操作イベントを選択して関連付けることを特徴とする請求項1又は2に記載の画像処理装置。
  4. 前記表示手段に表示される各種表示画面には、リスト形式で表示される複数の情報をスクロール移動させて表示可能なスクロール画面が含まれており、
    前記設定手段は、前記スクロール画面において検知対象となる操作イベントとして、フリック、ドラッグ、シングルタップ及びダブルタップを関連付けることを特徴とする請求項3に記載の画像処理装置。
  5. 前記表示手段に表示される各種表示画面には、複数のサムネイル画像をスクロール移動させて表示可能なサムネイル画像表示画面が含まれており、
    前記設定手段は、前記サムネイル画像表示画面において検知対象となる操作イベントとして、フリック、ドラッグ、シングルタップ、ダブルタップ及びロングタップを関連付けることを特徴とする請求項3又は4に記載の画像処理装置。
  6. 前記表示手段に表示される各種表示画面には、複数の操作キーをスクロール移動させて表示可能な操作キー表示画面が含まれており、
    前記設定手段は、前記操作キー表示画面において検知対象となる操作イベントとして、フリック、ドラッグ及びシングルタップを関連付けることを特徴とする請求項3乃至5のいずれかに記載の画像処理装置。
  7. 前記表示手段に表示される各種表示画面には、プレビュー画像を表示すると共に、当該プレビュー画像の拡大表示又は縮小表示が可能なプレビュー画像表示画面が含まれており、
    前記設定手段は、前記プレビュー画像表示画面において検知対象となる操作イベントとして、ドラッグ、ダブルタップ及びピンチを関連付けることを特徴とする請求項3乃至6のいずれかに記載の画像処理装置。
  8. 前記表示手段に表示される各種表示画面には、複数のグループに分類された複数の操作キーをグループ単位で切り替えて表示可能なグループ切替表示画面が含まれており、
    前記設定手段は、前記グループ切替表示画面において検知対象となる操作イベントとして、フリック及びシングルタップを関連付けることを特徴とする請求項3乃至7のいずれかに記載の画像処理装置。
  9. 前記設定手段は、前記一の表示画面が、表示情報の数に応じてスクロール移動させることが可能となる画面である場合、スクロール移動のための操作イベントに関する優先順位を他の操作イベントよりも低く設定することを特徴とする請求項1乃至8のいずれかに記載の画像処理装置。
  10. 前記設定手段は、前記一の表示画面が、デフォルトでスクロール移動させることが可能な画面である場合、スクロール移動のための操作イベントに関する優先順位を他の操作イベントよりも高く設定することを特徴とする請求項1乃至9のいずれかに記載の画像処理装置。
  11. 前記設定手段は、前記一の表示画面が、プレビュー画像の拡大表示を行っているときにプレビュー画像の表示位置を移動させることが可能となる画面である場合、プレビュー画像の表示位置を移動させるための操作イベントに関する優先順位を他の操作イベントよりも低く設定することを特徴とする請求項1乃至10のいずれかに記載の画像処理装置。
  12. 前記操作イベント判定手段は、ダブルタップに対応する操作イベント判定ルーチンを起動した場合には、前記入力検知手段によって最初のタップ操作が検知されてから第1ダブルタップ判定時間が経過しても最初のタップ操作のリリースが検知されないとき、又は、最初のタップ操作のリリースが検知されてから第2ダブルタップ判定時間内に2回目のタップ操作が検知されないときに、ダブルタップに対応する操作イベント判定ルーチンの実行を終了し、次の操作イベント判定ルーチンを起動することを特徴とする請求項1乃至11のいずれかに記載の画像処理装置。
  13. 前記操作イベント判定手段は、ロングタップに対応する操作イベント判定ルーチンを起動した場合には、前記入力検知手段によってタップ操作が検知されてからロングタップ判定時間内にタップ操作のリリースが検知されたとき、又は、前記入力検知手段によってタップ操作が検知されてからタップ位置が所定距離以上移動したことが検知されたときに、ロングタップに対応する操作イベント判定ルーチンの実行を終了し、次の操作イベント判定ルーチンを起動することを特徴とする請求項1乃至12のいずれかに記載の画像処理装置。
  14. 前記操作イベント判定手段は、フリックに対応する操作イベント判定ルーチンを起動した場合には、前記入力検知手段によってタップ操作が検知されてからフリック判定速度以下でタップ位置の移動が検知されたとき、又は、前記入力検知手段によってタップ操作が検知されてからタップ位置の移動距離が所定距離以下であることが検知されたときに、フリックに対応する操作イベント判定ルーチンの実行を終了し、次の操作イベント判定ルーチンを起動することを特徴とする請求項1乃至13のいずれかに記載の画像処理装置。
  15. 各種表示画面を表示する表示手段と、前記表示手段の表示画面に対するユーザーの入力操作を検知する入力検知手段とを有するコンピュータにおいて実行されるプログラムであって、前記コンピュータを、
    前記表示手段に表示される表示画面ごとに、複数の操作イベントの中から、ユーザーの入力操作に基づいて検知対象となる操作イベントを関連付けて設定する設定手段、
    前記入力検知手段によってユーザーの入力操作が検知されることに伴い、前記複数の操作イベントのそれぞれに対応する複数の操作イベント判定ルーチンの中から、前記表示手段に表示されている表示画面に対して前記設定手段によって関連付けられている操作イベントに対応する操作イベント判定ルーチンだけを起動して、ユーザーの入力操作に対応する操作イベントを特定する操作イベント判定手段、および、
    前記操作イベント判定手段によって特定された操作イベントに基づく制御を行う制御手段、
    として機能させ
    前記設定手段は、前記表示手段に表示される一の表示画面に対して検知対象となる複数の操作イベントを関連付けるとき、当該一の表示画面に基づいて複数の操作イベントのそれぞれに対して優先順位を設定し、
    前記操作イベント判定手段は、前記一の表示画面が表示されている状態で前記入力検知手段によってユーザーの入力操作が検知されることに伴い、前記優先順位の高い順に前記操作イベント判定ルーチンを起動していくことを特徴とするプログラム。
  16. 各種表示画面を表示する表示手段に対して行われるユーザーの入力操作に基づき、該入力操作に対応する操作イベントを判別する操作イベント判別方法であって、
    (a) 前記表示手段に表示される表示画面ごとに、複数の操作イベントの中から、ユーザーの入力操作に基づいて検知対象となる操作イベントを関連付けて設定するステップと、
    (b) 前記表示手段に一の表示画面が表示されている状態でユーザーによって行われる入力操作を検知するステップと、
    (c) 前記複数の操作イベントのそれぞれに対応する複数の操作イベント判定ルーチンの中から、前記一の表示画面に対して関連付けられている操作イベントに対応する操作イベント判定ルーチンだけを起動することにより、ユーザーの入力操作に対応する操作イベントを判別するステップと、
    を有し、
    前記ステップ(a)は、前記表示手段に表示される一の表示画面に対して検知対象となる複数の操作イベントを関連付けるとき、当該一の表示画面に基づいて複数の操作イベントのそれぞれに対して優先順位を設定し、
    前記ステップ(c)は、前記一の表示画面が表示されている状態で前記ステップ(b)によってユーザーの入力操作が検知されることに伴い、前記優先順位の高い順に前記操作イベント判定ルーチンを起動していくことを特徴とする操作イベント判別方法。
JP2012224891A 2012-10-10 2012-10-10 画像処理装置、プログラム及び操作イベント判別方法 Expired - Fee Related JP5700020B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2012224891A JP5700020B2 (ja) 2012-10-10 2012-10-10 画像処理装置、プログラム及び操作イベント判別方法
EP13187671.6A EP2720131B1 (en) 2012-10-10 2013-10-08 Image processing device, non-transitory computer readable recording medium and operational event determining method
US14/049,975 US9088678B2 (en) 2012-10-10 2013-10-09 Image processing device, non-transitory computer readable recording medium and operational event determining method
CN201310466819.2A CN103731578B (zh) 2012-10-10 2013-10-09 图像处理装置以及操作事件判别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012224891A JP5700020B2 (ja) 2012-10-10 2012-10-10 画像処理装置、プログラム及び操作イベント判別方法

Publications (2)

Publication Number Publication Date
JP2014078097A JP2014078097A (ja) 2014-05-01
JP5700020B2 true JP5700020B2 (ja) 2015-04-15

Family

ID=49474198

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012224891A Expired - Fee Related JP5700020B2 (ja) 2012-10-10 2012-10-10 画像処理装置、プログラム及び操作イベント判別方法

Country Status (4)

Country Link
US (1) US9088678B2 (ja)
EP (1) EP2720131B1 (ja)
JP (1) JP5700020B2 (ja)
CN (1) CN103731578B (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6025493B2 (ja) * 2012-10-15 2016-11-16 キヤノン株式会社 表示処理装置、制御方法およびコンピュータプログラム
JP5768799B2 (ja) * 2012-10-29 2015-08-26 コニカミノルタ株式会社 表示装置、画像形成装置、表示装置の制御方法、および表示装置の制御プログラム
JP6125467B2 (ja) * 2014-06-16 2017-05-10 富士フイルム株式会社 プリント注文受付機とその作動方法および作動プログラム
JP6365293B2 (ja) * 2014-12-22 2018-08-01 京セラドキュメントソリューションズ株式会社 表示装置、画像形成装置、及び表示方法
JP6530186B2 (ja) * 2014-12-25 2019-06-12 株式会社コロプラ ゲームプログラム
JP6601042B2 (ja) * 2015-07-29 2019-11-06 セイコーエプソン株式会社 電子機器、電子機器の制御プログラム
WO2017057629A1 (ja) 2015-09-30 2017-04-06 株式会社リコー 電子黒板、記憶媒体、及び情報表示方法
KR102136526B1 (ko) * 2017-03-15 2020-07-22 미쓰비시덴키 가부시키가이샤 터치 제스처 판정 장치, 터치 제스처 판정 방법, 터치 제스처 판정 프로그램, 및 터치 패널 입력 장치
JP6848591B2 (ja) * 2017-03-28 2021-03-24 ブラザー工業株式会社 画像処理装置
JP6677213B2 (ja) * 2017-04-26 2020-04-08 京セラドキュメントソリューションズ株式会社 情報処理装置、画像形成装置、および情報処理プログラム
JP2019160102A (ja) * 2018-03-16 2019-09-19 富士ゼロックス株式会社 情報表示装置及びプログラム
JP2021018777A (ja) * 2019-07-24 2021-02-15 キヤノン株式会社 電子機器
US20230359973A1 (en) * 2022-05-04 2023-11-09 Kyndryl, Inc. Ad-hoc application development

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3546337B2 (ja) * 1993-12-21 2004-07-28 ゼロックス コーポレイション 計算システム用ユーザ・インタフェース装置及びグラフィック・キーボード使用方法
US7840912B2 (en) 2006-01-30 2010-11-23 Apple Inc. Multi-touch gesture dictionary
US20070177804A1 (en) 2006-01-30 2007-08-02 Apple Computer, Inc. Multi-touch gesture dictionary
JP5116371B2 (ja) 2007-06-07 2013-01-09 キヤノン株式会社 画像表示制御装置
US8645827B2 (en) 2008-03-04 2014-02-04 Apple Inc. Touch event model
US8526767B2 (en) * 2008-05-01 2013-09-03 Atmel Corporation Gesture recognition
US8566045B2 (en) 2009-03-16 2013-10-22 Apple Inc. Event recognition
US8566044B2 (en) 2009-03-16 2013-10-22 Apple Inc. Event recognition
US9311112B2 (en) 2009-03-16 2016-04-12 Apple Inc. Event recognition
US8285499B2 (en) * 2009-03-16 2012-10-09 Apple Inc. Event recognition
US9684521B2 (en) * 2010-01-26 2017-06-20 Apple Inc. Systems having discrete and continuous gesture recognizers
JP2011138237A (ja) * 2009-12-26 2011-07-14 Canon Inc 画像処理装置、画像処理装置の制御方法及びプログラム
JP5091267B2 (ja) * 2010-02-18 2012-12-05 シャープ株式会社 操作機器、その操作機器を備えた電子機器および画像処理装置ならびに操作方法
JP2011197603A (ja) * 2010-03-24 2011-10-06 Sharp Corp 操作設定装置及びそれを備えた画像形成装置
JP5482407B2 (ja) * 2010-04-28 2014-05-07 株式会社リコー 情報処理装置、画像処理装置、画像処理システム、画面カスタマイズ方法、画面カスタマイズプログラム、及びそのプログラムを記録した記録媒体
CN102939578A (zh) * 2010-06-01 2013-02-20 诺基亚公司 用于接收用户输入的方法、设备和系统
JP2012085126A (ja) * 2010-10-12 2012-04-26 Canon Inc 画像処理装置及びその制御方法とプログラム
US20120131490A1 (en) * 2010-11-22 2012-05-24 Shao-Chieh Lin Touch-controlled device and method for displaying a virtual keyboard on the touch-controlled device thereof
US9244606B2 (en) 2010-12-20 2016-01-26 Apple Inc. Device, method, and graphical user interface for navigation of concurrently open software applications
EP3258366B1 (en) * 2010-12-20 2021-12-08 Apple Inc. Event recognition
JP5711595B2 (ja) 2011-04-18 2015-05-07 新日鉄住金エンジニアリング株式会社 錫充填方法

Also Published As

Publication number Publication date
JP2014078097A (ja) 2014-05-01
US9088678B2 (en) 2015-07-21
CN103731578A (zh) 2014-04-16
EP2720131A2 (en) 2014-04-16
CN103731578B (zh) 2017-01-04
US20140098402A1 (en) 2014-04-10
EP2720131A3 (en) 2017-04-05
EP2720131B1 (en) 2019-09-11

Similar Documents

Publication Publication Date Title
JP5700020B2 (ja) 画像処理装置、プログラム及び操作イベント判別方法
JP5936381B2 (ja) 画像処理装置及びその制御方法とプログラム
JP4778830B2 (ja) 表示制御システム、画像処理装置、表示制御方法
JP6410584B2 (ja) 画像処理装置、画像処理装置の制御方法、並びにプログラム
JP5772802B2 (ja) 情報処理装置、情報処理装置の制御方法、及び情報処理装置の制御プログラム
JP5765366B2 (ja) 画像処理装置、携帯端末装置、リモート画面データの作成プログラム及び表示制御プログラム
JP5894454B2 (ja) 画像形成装置、その制御方法、及びプログラム
JP6035985B2 (ja) 画像処理装置、画像処理装置の制御プログラム、および画像処理システム
JP7172276B2 (ja) 情報処理装置およびプログラム
JP7187286B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP6624046B2 (ja) 画像処理装置
JP6003939B2 (ja) 画像処理連携システムと連携方法、携帯端末装置及び画像処理連携プログラム
JP2011234264A (ja) 画像形成装置
US8982397B2 (en) Image processing device, non-transitory computer readable recording medium and operational event determining method
US10496240B2 (en) Display controlling device, method of controlling display controlling device, and non-transitory computer-readable recording medium storing instructions therefor
JP2012179862A (ja) 印刷装置、および、印刷方法
JP6822063B2 (ja) プログラム及び機器
US20140040827A1 (en) Information terminal having touch screens, control method therefor, and storage medium
JP6569381B2 (ja) 情報処理装置、画像処理装置及びプログラム
JP6191470B2 (ja) 画像処理システム、画像処理装置及び携帯端末装置
JP6011318B2 (ja) 画像形成装置およびプログラム
JP7052842B2 (ja) 情報処理装置およびプログラム
JP6798580B2 (ja) 複合機、情報処理システムおよび情報処理方法
JP2024090150A (ja) 画像処理装置及びジョブ履歴の呼び出し方法
JP6784953B2 (ja) 情報処理装置およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140625

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141216

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150120

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150202

R150 Certificate of patent or registration of utility model

Ref document number: 5700020

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees