〔第一の実施形態〕
図1は、正面から見た場合の複合機1の外観および複合機1を含むネットワークの構成の例を示す図である。図2は、複合機1の全体的なハードウェア構成の例を示す図である。図3は、正面から見た場合のエンジン部1fの内部の構成の例を概略化して表した断面図である。図4は、操作部1hの構成の例を示す図である。
図1に示す複合機1は、一般にMFP(Multi Function Peripherals)などと呼ばれる画像処理装置であって、コピー、PCプリント(ネットワークプリンティング)、ファックス、スキャナ、およびドキュメントサーバなどの機能を集約した装置である。複合機1は、パーソナルコンピュータなどの他の装置TRと通信回線NWを介してデータのやり取りを行うことができる。
複合機1は、図2に示すように、コントローラ1a、RAM(Random Access Memory)1b、ROM(Read Only Memory)1c、大容量記憶装置1d、スキャナ1e、エンジン部1f、ネットワークインタフェース1g、操作部1h、モデム1j、および音声出力部1kなどによって構成される。
スキャナ1eは、用紙に記されている写真、文字、絵、図表などの画像を読み取って画像データを生成する装置である。
エンジン部1fは、スキャナ1eによって読み取られた画像または他の装置から受信した画像データに示される画像を印刷する印刷ユニットである。エンジン部1fとして、例えば、タンデム方式の印刷ユニットが用いられる。この場合は、エンジン部1fは、図3に示すように構成される。
図3において、エンジン部1fは、画像形成ユニット1u、転写ベルト1t、一次転写装置1s、二次転写装置1v、定着装置1wなどによって構成される。画像形成ユニット1uおよび一次転写装置1sは、1つずつ、黒(K)、イエロー(Y)、マゼンタ(M)、およびシアン(C)のそれぞれの色ごとに設けられている。
画像形成ユニット1uは、像担持体1ua、帯電装置1ub、像露光装置1uc、および現像装置1udなどによって構成され、各色の像を次のように形成する。
像担持体1uaは、感光体である。帯電装置1ubは、像担持体1uaの表面を一様な電位に帯電させる。像露光装置1ucは、表面が一様に帯電した像担持体1uaに、光を照射することによって静電潜像を形成する。現像装置1udは、像担持体1uaの、静電潜像が形成された部分に、トナーを静電吸着させる。
一次転写装置1sは、像担持体1uaの表面に吸着しているトナーを、転写ベルト1tに転写(1次転写)する。
二次転写装置1vは、転写ベルト1tに1次転写された各色のトナーを記録紙または樹脂フィルムなどの記録媒体MAに転写(二次転写)する。そして、定着装置1wは、二次転写されたトナーを記録媒体MAに定着させる。
図2に戻って、操作部1hは、図4に示すように、液晶ディスプレイ1h0、タッチパネル1h1、およびキーボード1h2などによって構成される。
液晶ディスプレイ1h0は、LED(Light Emitting Diode)、V−RAM(Video RAM)、バックライト、およびLCD(Liquid Crystal Display)コントローラなどによって構成される。液晶ディスプレイ1h0には、ユーザへメッセージを与えるための画面、処理の結果を示す画面、またはユーザが複合機1に対してジョブなどの指示を入力するための画面などが表示される。タッチパネル1h1は、液晶ディスプレイ1h0の表示面に設けられており、タッチされた(押された)位置を検知し、コントローラ1aにその位置を通知する。
キーボード1h2は、テンキー、スタートキー、ストップキー、およびファンクションキーなどのキーによって構成される入力装置である。
ユーザは、操作部1hを操作することによって、複合機1に対してコマンドを与えたりデータを入力したりすることができる。
図2に戻って、ネットワークインタフェース1gは、TCP/IP(Transmission Control Protocol/Internet Protocol)によって他の装置と通信を行う。ネットワークインタフェース1gとして、例えばNIC(Network Interface Card)が用いられる。
モデム1jは、固定電話網を介してG3のプロトコルによって他のファックス端末と通信を行う装置である。
音声出力部1kは、サウンドボードおよびスピーカなどによって構成され、ビープ音などの音声を出力する。
コントローラ1aは、複合機1の全体的な制御を行うCPU(Central Processing Unit)である。
ROM1cまたは大容量記憶装置1dには、オペレーティングシステム、ファームウェア、およびアプリケーションなどのプログラムが記憶されている。
オペレーティングシステムまたはファームウェアには、液晶ディスプレイ1h0に画面を表示するプログラムが含まれている。特に、本実施形態では、後述するバッジ選択画面2(図5参照)を表示するためのバッジ選択画面表示プログラム10が含まれている。
大容量記憶装置1dとして、ハードディスク、SSD(Solid State Drive)、またはフラッシュメモリなどの不揮発性の記録装置が用いられる。これらのプログラムは、必要に応じてRAM1bへロードされ、コントローラ1aによって実行される。
上述の通り、複合機1には、コピー、PCプリント、ファックス、スキャナ、およびドキュメントサーバなど様々な機能が備わっている。これらの機能は、使用の要否または設定値をユーザが任意に選択できるオプション機能と組み合わされて実現される。
例えば、コピー機能は、いわゆる裏写りなどを除去する「下地調整機能」、スキャンした画像を自動的に回転させる「自動回転機能」、原稿の用紙を複数枚連続してスキャンする「連続読込み機能」、いわゆるブック仕上げを行う「ブック原稿機能」などのオプション機能が適宜、組み合わされる。
図5は、バッジ選択画面2の例を示す図である。図6は、複合機1の機能的構成の例を示す図である。図7は、機能バッジ列とバッジ選択画面2との関係の例を示す図である。図8は、メニューボックス6の例を示す図である。図9〜図13は、バッジ選択画面2の例を示す図である。
次に、図5に示すバッジ選択画面2を、その表示方法および操作方法などとともに説明する。
ユーザが所定の操作を行うと、コントローラ1aは、バッジ選択画面表示プログラム10を起動させる。例えば、ユーザがキーボード1h2の中の、「copy」、「fax/scan」、および「box」の各ファンクションキーのうちのいずれかを押すと、バッジ選択画面表示プログラム10を起動させる。
バッジ選択画面表示プログラム10によると、図6に示すバッジ選択画面データ生成部101、バッジ選択画面表示制御部102、モーション種別等判別部103、スライドゲージ位置決定部104、バッジ位置決定部105、メニューボックス位置決定部106、および画面データ記憶部107などが実現される。
以下、「copy」のファンクションキーが押された場合を例に、バッジ選択画面データ生成部101ないし画面データ記憶部107の処理内容およびバッジ選択画面2などについて説明する。
まず、バッジ選択画面2について説明する。バッジ選択画面2には、図5の通り、機能バッジエリア2A、スクロールトラック2B、スライドゲージ移動エリア2C、および下位層メニューエリア2Dの4つのエリアがある。
機能バッジエリア2Aには、機能バッジ列300が表示される。機能バッジ列300は、横方向に一列に並んだ複数の機能バッジ3によって構成されるマップである。以下、33個の機能バッジ3が設けられている場合を例に説明する。また、各機能バッジ3を左から順に「機能バッジ301」、「機能バッジ302」、…、「機能バッジ333」、と区別して記載することがある。
図7に示すように、機能バッジ列300の高さ(縦方向の長さ)は、機能バッジエリア2Aの高さよりもずっと低い。しかし、機能バッジ列300の幅(横方向の長さ)は、機能バッジエリア2Aの幅よりもかなり長い。よって、機能バッジエリア2Aには、機能バッジ列300の一部分しか表れていない。
ただし、ユーザは、後述するように、機能バッジエリア2Aにおいて機能バッジ列300を横方向にスクロールさせることによって、機能バッジ列300の残りの部分を見ることができる。
機能バッジ3は、オプション機能を表わすアイコンであり、複合機1に備わっているオプション機能ごとに1つずつ用意されている。本実施形態では、「copy」のファンクションキーが押されたので、機能バッジ列300には、コピーの機能とともに用いられるオプション機能の機能バッジ3が並べられる。
なお、オプション機能の設定の内容に応じて機能バッジ3の絵柄が変更されることがある。ただし、図7においては、機能バッジ3の絵柄を省略している。
また、各オプション機能は、その内容に応じて、複数のカテゴリのうちのいずれか1つに分けられている。そして、同じカテゴリに属するオプション機能が、1つのグループにグループ化されている。同じグループに属する機能バッジ3は、連続して配置されている。
スクロールトラック2Bには、複数のマーカ4が横方向に並べられている。マーカ4は、アイコンである。マーカ4の個数は機能バッジ3の個数と同じである。そして、左のマーカ4から順に機能バッジ301、機能バッジ302、…、機能バッジ333に対応している。以下、各マーカ4を左から順に「マーカ401」、「マーカ402」、…、「マーカ433」と区別して記載することがある。したがって、マーカ401、マーカ402、…、マーカ433は、それぞれ、機能バッジ301、機能バッジ302、…、機能バッジ333に対応している。
スクロールトラック2Bの幅は、バッジ選択画面2の幅とほぼ同じである。よって、ユーザは、スクロールトラック2Bのすべての部分を一度に見ることができる。
スライドゲージ移動エリア2Cは、スクロールトラック2Bの直ぐ下に設けられている。スクロールトラック2Bの幅と同様に、スライドゲージ移動エリア2Cの幅もバッジ選択画面2の幅とほぼ同じである。
スライドゲージ5は、スライダ51およびウィンドウ52によって構成される(図5参照)。スライダ51は、ユーザの操作に応じて、スライドゲージ移動エリア2Cの中を左右方向(横方向、幅方向)に移動するアイコンである。したがって、スライダ51は、ユーザの操作に応じて、スクロールトラック2Bの下辺に沿って平行に移動する。なお、説明の簡単のため、本実施形態では、スライダ51は上下方向には移動しないものとする。
ウィンドウ52は、機能バッジエリア2Aを縮小したものに相当する。ウィンドウ52は、スライダ51の真上に設けられている。ウィンドウ52の高さは、スクロールトラック2Bの高さよりも若干高い。また、ウィンドウ52の幅は、スライダ51の幅より若干、長い。よって、ウィンドウ52は、スクロールトラック2Bの中の、スライダ51の真上にある幾つかのマーカ4を囲うことができる。
また、ウィンドウ52は、スライダ51に固定されている。よって、ウィンドウ52は、スライダ51が移動すると、一緒に移動する。ユーザは、ウィンドウ52で囲われるマーカ4を、スライダ51を操作することによって変えることができる。
機能バッジエリア2Aには、上述の通り、機能バッジ列300の一部分のみ、つまり、33個の機能バッジ3のうちの一部のみが、表示される。図5および図7に示す通り、ウィンドウ52によって囲われているマーカ4に対応する機能バッジ3のみが、機能バッジエリア2Aに表示される。そして、スライダ51の移動に伴って、ウィンドウ52で囲うマーカ4が変わり、機能バッジエリア2Aに表示される機能バッジ3も変わる。
このように、スライダ51の移動に伴って、機能バッジ列300が機能バッジエリア2Aにおいてスクロールする。
下位層メニューエリア2Dには、機能バッジエリア2Aに配置されているいずれかの機能バッジ3に対応するメニューボックス6がいわゆるポップアップウィンドウとして配置される。なお、第一ないし第五の実施形態では、どのメニューボックス6のサイズも同じであるものとする。
メニューボックス6には、それに対応する機能バッジ3に係るオプション機能についての情報が示される。例えば、そのオプション機能に関する設定のメニューおよび内容が示される。設定のメニューおよび内容は、階層化されている場合がある。
例えば、スタンプのオプション機能のメニューボックス6には、図8のように、スタンプについての2つの項目が示される。
1つ目の項目は、スタンプとして表すコンテンツである。ユーザは、文字列をスタンプのコンテンツとして用いる場合は、「文字列」ラジオボタンを選択し、「文字列」テキストボックスにその文字列を入力する。または、イラストまたは写真などの画像をスタンプのコンテンツとして用いる場合は、「イラスト」ラジオボタンを選択し、「イラスト」テキストボックスにそのイラストの画像ファイルのファイル名を入力する。
2つ目の項目は、コンテンツの色(カラー/白黒)である。ユーザは、スタンプを白黒で印刷したい場合は「白黒」ラジオボタンを選択し、「濃度」テキストボックスに黒色の濃度を入力する。または、スタンプをカラーで印刷したい場合は、「カラー」ラジオボタンを選択する。さらに、この項目の下位に、Red(赤色)、Green(緑色)、およびBlue(青色)の項目がある。ユーザは、各色のテキストボックスに、各色の混合の割合を入力する。
このように、メニューボックス6には、オプション機能に関する各項目の内容が示され、ユーザはメニューボックス6を用いて設定の内容を入力したり変更したりすることができる。また、項目によっては、さらに下位の詳細な項目が設けられている。ユーザは、下位の項目についても同様に、内容を入力したり変更したりすることができる。
そのほか、メニューボックス6に、オプション機能の使い方および設定の仕方などを説明する情報(いわゆる、ヘルプ情報)をも、載せるようにしてもよい。
メニューボックス6は、下位層メニューエリア2Dに複数、配置されることがある。どの機能バッジ3に対応するメニューボックス6が配置されるのかについては、後に詳細に説明する。
次に、図6に示すバッジ選択画面データ生成部101ないし画面データ記憶部107について説明する。バッジ選択画面2を液晶ディスプレイ1h0に表示する処理は、バッジ選択画面データ生成部101ないし画面データ記憶部107によって実現される。
画面データ記憶部107には、バッジ選択画面2を構成する各オブジェクトを表示するための画像データが記憶されている。これらの画像データは、バッジ選択画面データ生成部101によって用いられる。
バッジ選択画面データ生成部101は、ユーザによる操作に応じた状態のバッジ選択画面2のビットマップのデータを生成する。
ファンクションキーが押された場合は、このファンクションキーに係る機能に応じたバッジ選択画面2のビットマップのデータを生成する。ただし、この場合は、スライドゲージ5をデフォルトの位置に配置しておく。したがって、バッジ選択画面2に配置される機能バッジ3も自ずと決まる。
また、ユーザがスライダ51を移動させる操作を行うと、バッジ選択画面データ生成部101は、その操作に応じて変化したバッジ選択画面2のビットマップのデータを修正する。これについては、後述する。
バッジ選択画面表示制御部102は、バッジ選択画面データ生成部101によって生成されまたは修正されたビットマップのデータに基づいて、液晶ディスプレイ1h0にバッジ選択画面2を表示させる。
ユーザは、機能バッジ列300をスクロールさせるために、バッジ選択画面2を見ながら、タッチパネル1h1の上の、スライダ51が表示されている位置を指またはペンなどで触って右または左へスライドさせる。「スライド」という操作は、マウスでオブジェクトをドラッグする操作に相当する。
または、ユーザは、オプション機能を選択する場合は、そのオプション機能に対応する機能バッジ3をタップする。「タップ」という操作は、マウスでオブジェクトをクリックする操作に相当する。
ユーザは、スライダ51を操作しながら、自分が使用しまたは設定したいオプション機能の機能バッジ3を見つける。そして、その機能バッジ3をタップする。
すると、複合機1は、そのオプション機能の設定値の変更を行う。例えば、その機能バッジ3が、そのオプション機能を使用するか否かつまり「オン」および「オフ」を切り換えるためのものであれば、機能バッジ3がタップされるごとに、複合機1は、そのオプション機能を使用するか否かを示す設定値を変更する。なお、直近にタップされた機能バッジ3は、それ以外の機能バッジ3とは異なる形態で表示される。本実施形態では、直近にタップされた機能バッジ3は、背景色としてグレーが用いられて表示される。
または、複合機1は、そのオプション機能に関する幾つかの項目の設定値を入力するためのダイアログボックスをバッジ選択画面2の上に表示する。いわゆるポップアップ表示で行うのが望ましい。
ここで、ユーザは、各項目の値を入力する。すると、複合機1は、ダイアログボックスを閉じるとともに、各項目の設定値を、入力された値に変更する。または、ユーザは、メニューボックス6に各項目の値を入力することによって、設定値の変更を行わせることも、できる。
タッチパネル1h1は、各時刻における触れられた位置を検知する。そして、タッチパネル1h1は、各時刻における検知した位置をコントローラ1aへ通知する。以下、触れられた位置を「接触位置」と記載する。
モーション種別等判別部103は、タッチパネル1h1から通知された検知の結果に基づいて、ユーザが行った操作(モーション)の種類および対象を次のように判別する。
触れられている間の、最初の接触位置とその後の任意の接触位置との距離(以下、「接触変位距離」と記載する。)が所定の距離以上である場合は、モーション種別等判別部103は、その操作が「スライド」であると判別する。そして、最初の接触位置に配置されているオブジェクト(例えば、スライダ51)を、操作の対象であると判別する。
したがって、モーション種別等判別部103は、最初の接触位置から所定の距離以上離れた別の接触位置が検知された時点で、その操作が「スライド」であると、判別する。
一方、接触変位距離が所定の値未満である場合は、モーション種別等判別部103は、その操作が「タップ」であると判別する。そして、最初の接触位置に配置されているオブジェクト(例えば、いずれかの機能バッジ3)を、操作の対象であると判別する。
したがって、モーション種別等判別部103は、最初の接触位置から所定の距離以上離れた別の接触位置が検知されることなく指などがタッチパネル1h1から離れたら、その操作が「タップ」であると、判別する。
そのほか、モーション種別等判別部103は、ユーザがスライダ51をスライドさせる方向を接触位置の変化に基づいて判別することができる。
スライドゲージ位置決定部104は、タッチパネル1h1によって検知された結果に基づいて、触れられている間の各時刻におけるスライドゲージ5の位置を決定する。
例えば、ユーザがスライダ51の中心を触りながらスライドを行い、ある時刻Tcの接触位置のX座標の値としてXcが検知された場合は、スライダ51の中心が座標(Xc,Yo)になる位置を、スライドゲージ5の時刻Tcにおける位置に決定する。なお、上述の通り、スライドゲージ5は上下方向には移動しないので、「Yo」は、所定の値である。または、指の移動の量および向きに基づいてスライダ51の位置を決定してもよい。
バッジ位置決定部105は、スライドゲージ位置決定部104が決定したスライドゲージ5の位置に基づいて、機能バッジエリア2Aに表示させる機能バッジ3およびそれらの位置を次のように決定する。
スライドゲージ5の位置が決まると、ウィンドウ52の位置も自ずと決まる。バッジ位置決定部105は、機能バッジ列300の、ウィンドウ52に囲われている部分を特定する。特定した部分には、マーカ4が複数個、横一列に並んでいる。
ウィンドウ52は、上述の通り、機能バッジエリア2Aを縮小した領域に相当する。そこで、バッジ位置決定部105は、特定した部分に並んでいる各マーカ4に対応する機能バッジ3を、機能バッジエリア2Aに表示させる機能バッジ3に決定する。さらに、バッジ位置決定部105は、特定した部分を所定の倍率に(機能バッジエリア2Aと同じサイズになるように)拡大して機能バッジエリア2Aに配置したときの、特定した部分に含まれる各マーカ4の位置を算出する。そして、各マーカ4の算出した位置を、各マーカ4に対応する各機能バッジ3の位置に決定する。
例えば、図5のようにマーカ417、418、…、および424の全部分がウィンドウ52に囲われている場合は、バッジ位置決定部105は、左から順に機能バッジ317、318、…、および324の全部分を表示させると、決定する。
または、図9のように、マーカ416の右半分と、マーカ417、418、…、および423の全部分と、マーカ424の左半分とが、ウィンドウ52に囲われている場合は、バッジ位置決定部105は、左から順に機能バッジ316の右半分と、機能バッジ317、318、…、および323の全部分と、機能バッジ324の左半分を表示させると、決定する。
バッジ選択画面データ生成部101は、スライドゲージ位置決定部104およびバッジ位置決定部105が決定した通りにスライドゲージ5および機能バッジ3が配置されるようにバッジ選択画面2のビットマップのデータを修正する。
そして、バッジ選択画面表示制御部102は、バッジ選択画面データ生成部101によって修正されたビットマップのデータに基づいて、バッジ選択画面2を液晶ディスプレイ1h0に表示し直す。
メニューボックス位置決定部106は、機能バッジ列300のスクロールが停止すると、下位層メニューエリア2Dに表示させるメニューボックス6およびそれらの位置を、次のように決定する。
メニューボックス位置決定部106は、機能バッジ列300が停止する直前のスライダ51の進行方向をチェックする。そして、機能バッジエリア2Aに現在配置されている機能バッジ3の中から、所定の個数α1の機能バッジ3を進行方向側から順に選出する。
例えば、所定の個数α1が3個であり、かつ、図10のようにスライダ51の進行方向が右方向であり機能バッジ317〜324が配置されている場合は、メニューボックス位置決定部106は、右から順に機能バッジ324、323、および322を選出する。
そして、メニューボックス位置決定部106は、選出した機能バッジ3それぞれのオプション機能のメニューボックス6を下位層メニューエリア2Dに配置すると、決定する。また、各メニューボックス6の位置を、選出した機能バッジ3の並び順と同じになるように決定する。
ただし、進行方向側の先頭の機能バッジ3が機能バッジエリア2Aに一部分しか表れていない場合は、この機能バッジ3を選出しないようにしてもよい。例えば、所定の個数α1が3個であり、かつ、図11のようにスライダ51の進行方向が左方向であり機能バッジ316〜324が配置されている場合は、メニューボックス位置決定部106は、機能バッジ316を選出せず、機能バッジ317、318、および319を選出する。
そして、バッジ選択画面データ生成部101は、メニューボックス位置決定部106が決定した通りにメニューボックス6が配置されるようにバッジ選択画面2のビットマップのデータを修正する。バッジ選択画面表示制御部102は、バッジ選択画面データ生成部101によって修正されたビットマップのデータに基づいて、バッジ選択画面2を液晶ディスプレイ1h0に表示し直す。このようにして、メニューボックス6がポップアップ表示される。
例えば、所定の個数α1が3個であって、右方向へスライドされていたスライダ51が、図10のように機能バッジ3が配置された時点で停止した場合は、下位層メニューエリア2Dには、右から順に、機能バッジ324、323、および322に対応するオプション機能のメニューボックス624、623、および622を配置する。
または、所定の個数α1が3個であって、左方向へスライドされていたスライダ51が、図11のように機能バッジ3が配置された時点で停止した場合は、下位層メニューエリア2Dには、左から順に、機能バッジ317、318、および319に対応するオプション機能のメニューボックス617、618、および619を配置する。
なお、下位層メニューエリア2Dに配置するメニューボックス6の個数は、最も多くなるように決められている。具体的には、下位層メニューエリア2Dの幅を1つのメニューボックス6の幅で割ったときの商が、メニューボックス6の個数になる。
また、情報をメニューボックス6に一度に配置することができない場合は、いわゆるスクロール表示させることによって、情報を順次、表示させればよい。または、次のように情報を表示させてもよい。ここでは、CopyProtect機能のメニューボックス6を表示する場合を例に説明する。
複合機1は、CopyProtect機能のメニューボックス6として、メニューボックス627Aを下位層メニューエリア2Dに表示させる。メニューボックス627Aには、図12に示すように、このオプション機能の大きな項目に関する情報が示されている。さらに、詳細な項目を呼び出すためのボタンBT1およびヘルプを呼び出すためのボタンBT2が配置されている。
ボタンBT1がタップされると、複合機1は、図13のように、所定の位置に、このオプション機能のもう1つのメニューボックス6として、詳細な項目に関する情報を抜粋したメニューボックス627Bを、ポップアップ表示させる。または、ボタンBT2がタップされると、複合機1は、所定の位置に、このオプション機能のもう1つのメニューボックス6として、ヘルプ情報を抜粋したメニューボックス627Cを、ポップアップ表示させる。
後述するメニューボックス7についても同様に、ユーザの操作に応じて下位の階層の情報を順次ポップアップ表示するようにしてもよい。
図14は、バッジ選択画面2の表示に関する処理の流れの例を説明するフローチャートである。
次に、第一の実施形態におけるバッジ選択画面2の表示に関する全体的な処理の流れを、図14のフローチャートを参照しながら説明する。
複合機1は、ユーザが「copy」のファンクションキーを押すなど所定の操作を行うと、バッジ選択画面2を表示する(図14の#801)。そして、複合機1は、ユーザの操作に応じて、適宜、次の処理を実行する。
ユーザがスライダ51をスライドさせると(#802でYes)、複合機1は、機能バッジ列300をスクロールさせる(#803)。このとき、複合機1は、スライダ51の移動の方向(進行方向)を監視し記憶しておく(#804)。
または、ユーザが機能バッジ3をタップすると(#802でNo、#805でYes)、複合機1は、必要に応じて、その機能バッジ3に係るオプション機能の設定値を入力するためのダイアログボックスをバッジ選択画面2の上に表示する(#806)。そして、ユーザがダイアログボックスに入力した内容に応じて、オプション機能に関する設定の処理を行う(#807)。なお、機能バッジ3をタップするだけで設定値を変更できる場合は、複合機1は、ダイアログボックスを表示することなく、ステップ#807の設定の処理を行う。
または、ユーザがスライダ51を停止させるなどして機能バッジ列300のスクロールが停止すると(#808でYes)、複合機1は、スライダ51の進行方向およびスクロールの停止時に機能バッジエリア2Aに配置されている機能バッジ3に基づいて、メニューボックス6を選出する(#809)。そして、選出したメニューボックス6を下位層メニューエリア2Dに配置した状態で、バッジ選択画面2を表示し直す(#810)。
〔第二の実施形態〕
図15は、複合機1の機能的構成の例を示す図である。図16は、バッジ選択画面2の例を示す図である。
第一の実施形態では、複合機1は、メニューボックス6を下位層メニューエリア2Dに表示した。メニューボックス6は、オプション機能の単位で用意されている。第二の実施形態では、複合機1は、グループごとに用意されているメニューボックス7を下位層メニューエリア2Dに表示する。
メニューボックス7には、それに対応するグループに属するに係るオプション機能についての情報が示される。
メニューボックス7に示される情報の項目は、メニューボックス6の場合と基本的に同じである。ただし、グループに属する各オプション機能の情報が纏めて示されるので、情報の量は、メニューボックス6に示される情報の量よりも多くなる。また、グループに属する各オプション機能の情報は、階層的に示される。よって、メニューボックス6の場合よりも階層が1段多くなったと、言える。
ユーザは、メニューボックス7に値を入力するなどして、各オプション機能の設定値の変更を行わせることができる。
第二の実施形態における複合機1のハードウェア構成は、第一の実施形態の場合と基本的に同様であり、図2、図3、および図4などで説明した通りである。ROM1cまたは大容量記憶装置1dに記憶されているソフトウェアも、基本的に第一の実施形態の場合と同様である。ただし、バッジ選択画面表示プログラム10の代わりにバッジ選択画面表示プログラム12がインストールされている。バッジ選択画面表示プログラム12は、図15に示すバッジ選択画面データ生成部121、バッジ選択画面表示制御部122、モーション種別等判別部123、スライドゲージ位置決定部124、バッジ位置決定部125、メニューボックス位置決定部126、および画面データ記憶部127などを実現するためのプログラムである。
以下、図15に示す各部の処理内容を、第一の実施形態と相違する点を中心に説明する。第一の実施形態と共通する点については、説明を省略する。
バッジ選択画面データ生成部121ないし画面データ記憶部127は、それぞれ、基本的に図6に示す第一の実施形態のバッジ選択画面データ生成部101ないし画面データ記憶部107と同等の役割を果たす。
つまり、モーション種別等判別部123は、モーション種別等判別部103と同様に、タッチパネル1h1から通知された検知の結果に基づいて、ユーザが行った操作の種類および対象などを判別する。
スライドゲージ位置決定部124は、スライドゲージ位置決定部104と同様に、タッチパネル1h1が触れられている間の各時刻におけるスライドゲージ5の位置を決定する。
バッジ位置決定部125は、バッジ位置決定部105と同様に、スライドゲージ位置決定部124が決定したスライドゲージ5の位置に基づいて、機能バッジエリア2Aに表示させる機能バッジ3およびそれらの位置を決定する。
メニューボックス位置決定部126は、機能バッジ列300のスクロールが停止すると、下位層メニューエリア2Dに表示させるメニューボックス6およびそれらの位置を、次のように決定する。
メニューボックス位置決定部126は、機能バッジ列300が停止する直前のスライダ51の進行方向をチェックする。そして、機能バッジエリア2Aに現在配置されている機能バッジ3のオプション機能それぞれが属するグループの中から、所定の個数α2のグループを進行方向側から順に選出する。
例えば、所定の個数α2が2個であり、かつ、図16のようにスライダ51の進行方向が右方向であり右から順に「Layoutグループ」、「EditColorグループ」、および「Quolity/Densityグループ」それぞれのオプション機能の機能バッジ3が配置されている場合は、メニューボックス位置決定部106は、右から順にLayoutグループおよびEditColorグループを選出する。
そして、メニューボックス位置決定部106は、選出したグループそれぞれのメニューボックス7を下位層メニューエリア2Dに配置すると、決定する。また、各メニューボックス7の位置を、選出したグループの並び順と同じになるように決定する。
なお、進行方向側の先頭のグループの一部の機能の機能バッジ3しか機能バッジエリア2Aに表れていない場合は、このグループを選出しないようにしてもよい。または、所属するオプション機能の機能バッジ3が1つでも表れていれば、選出するようにしてもよい。図16は、後者の場合の例を示している。
そして、バッジ選択画面データ生成部121は、スライドゲージ位置決定部124およびバッジ位置決定部125が決定した通りにスライドゲージ5および機能バッジ3が配置されるように、かつ、メニューボックス位置決定部126がメニューボックス7の位置を決定した場合はその通りにメニューボックス7が配置されるように、バッジ選択画面2のビットマップのデータを修正する。
バッジ選択画面表示制御部122は、バッジ選択画面データ生成部121によって修正されたビットマップのデータに基づいて、バッジ選択画面2を液晶ディスプレイ1h0に表示し直す。
第二の実施形態におけるバッジ選択画面2の表示に関する全体的な処理の流れは、基本的に第一の実施形態の場合と同様であり、図14で説明した通りである。ただし、ステップ#809、#810の処理が、第一の実施形態の場合とは異なり、メニューボックス6の代わりにメニューボックス7を選出し下位層メニューエリア2Dに配置する。
〔第三の実施形態〕
図17は、メニューボックス配置処理の流れの例を説明するフローチャートである。図18は、バッジ選択画面2の例を示す図である。
第三の実施形態における複合機1のハードウェア構成は、第一の実施形態の場合と基本的に同様であり、図2、図3、および図4などで説明した通りである。機能的構成も、基本的に同様であり、図6に示した通りである。ただし、メニューボックス位置決定部106によるメニューボックス6の決定の方法が第一の実施形態の場合とは、相違する。以下、第一の実施形態との相違点を中心に説明する。第一の実施形態と共通する点については、説明を省略する。
第一の実施形態では、図6のメニューボックス位置決定部106は、所定の個数の機能バッジ3をスライダ51の進行方向側から順に選出した。
第三の実施形態では、メニューボックス位置決定部106は、スライダ51の進行方向側の端に、属するオプション機能の機能バッジ3が機能バッジエリア2Aに表れている1つのグループのみを、選出元とする。つまり、このグループに属するオプション機能の機能バッジ3のみを選出の対象とする。ただし、属するオプション機能の機能バッジ3がすべて表れていなくてもよい。
しかし、この選出方法によると、進行方向の端のグループに属するオプション機能の機能バッジ3が所定の個数未満しか表れていない場合は、下位層メニューエリア2Dのスペースが余ってしまう。
そこで、メニューボックス位置決定部106は、下位層メニューエリア2Dに配置するメニューボックス6を、例えば図17のフローチャートに示す手順で決定する。
バッジ選択画面2の表示に関する全体的な処理の手順は、第一の実施形態の場合と同様であり、図14で説明した通りである。ただし、第三の実施形態においては、図14のステップ#809、#810の処理の内容が第一の実施形態の場合とは異なる。
メニューボックス位置決定部106は、機能バッジ列300のスクロールが停止すると(図14の#808でYes)、進行方向側の先頭のグループを選出する(図17の#821)。機能バッジエリア2Aに機能バッジ3が現在配置されている、選出したグループのオプション機能の個数をチェックする(#822)。
チェックした個数が所定の個数α3以上である場合は(#823でNo)、メニューボックス位置決定部106は、第一の実施形態の場合と同様に、どのグループに属するのかに関わらず、進行方向側から順に所定の個数α3だけオプション機能を選出し(#824)、選出した各オプション機能のメニューボックス6を下位層メニューエリア2Dに配置し表示させる(#825)。
ただし、図12および図13で説明したように1つのオプション機能に複数のメニューボックス6が用意されている場合は、そのオプション機能については最上位のメニューボックス6(図13の例では、メニューボックス627A、627B、および627Cのうちのメニューボックス627A)のみを配置する。
一方、チェックした個数が所定の個数α3未満である場合は(#823でYes)、メニューボックス位置決定部106は、選出したグループの、機能バッジ3が機能バッジエリア2Aに表示されているオプション機能をすべて選出し(#826)、選出したオプション機能それぞれの最上位のメニューボックス6を下位層メニューエリア2Dに配置する(#827)。
下位層メニューエリア2Dにスペースが空いている場合は(#828でYes)、進行方向側のオプション機能から優先的に、2番目以降の層のメニューボックス6を1つ下位層メニューエリア2Dに配置し表示させる(#829)。スペースの空きがなくなるまで、下位のメニューボックス6を追加していく。
例えば、図18のように、スライダ51の進行方向が右方向であり右端のグループのオプション機能の機能バッジ3が1つしか配置されていない場合は、複合機1は、このオプション機能のメニューボックス6として、まずは、最上位のメニューボックス6を下位層メニューエリア2Dに表示する。さらに、このオプション機能の下位のメニューボックス6があれば、スペースがなくなるまで、それを順次、下位層メニューエリア2Dに表示させる。なお、図18の例は、オプション機能がCopyProtect機能の例である。
〔第四の実施形態〕
図19は、メニューボックス配置処理の流れの例を説明するフローチャートである。
第一の実施形態および第三の実施形態では、複合機1は、機能バッジ列300のスクロールが停止したら、スライダ51の進行方向側にある機能バッジ3に係るオプション機能から優先的にメニューボックス6を下位層メニューエリア2Dに表示させた。
第四ないし第七の実施形態では、その後に機能バッジ列300のスクロールが再開された場合の処理について、説明する。
第四ないし第七の実施形態においても、複合機1のハードウェア構成および機能的構成は、第一の実施形態の場合と基本的に同様であるが、メニューボックス位置決定部106によるメニューボックス6の決定の方法が第一の実施形態の場合と相違する。
第四ないし第七の実施形態では、メニューボックス6の決定の方法について詳細に説明する。第一の実施形態と共通する点については、説明を省略する。
第四の実施形態におけるバッジ選択画面2の表示に関する全体的な処理の流れは、基本的に第一の実施形態の場合と同様であり、図14で説明した通りである。ただし、第四の実施形態では、ステップ#809、#810の処理に、第一の実施形態とは異なる点がある。
以下、図19のフローチャートを参照しながら、第四の実施形態におけるメニューボックス6の配置の処理について説明する。
図6のメニューボックス位置決定部106は、機能バッジ列300のスクロールが停止すると(図14の#808でYes)、図19に示す手順でメニューボックス6の配置の処理を行う。
メニューボックス位置決定部106は、機能バッジ列300の今回の停止の直前の進行方向と前回の停止の直前の進行方向とを比較する(#831)。両者が一致する場合は(#832でYes)、第一の実施形態と同様の方法で、今回の停止の直前のスライダ51の進行方向およびスクロールの停止時に機能バッジエリア2Aに配置されている機能バッジ3に基づいて、メニューボックス6を選出する(#833)。そして、バッジ選択画面データ生成部101およびバッジ選択画面表示制御部102は、選出されたメニューボックス6を下位層メニューエリア2Dに配置した状態で、バッジ選択画面2を表示し直す(#834)。なお、ステップ#833では、第三の実施形態と同様の方法でメニューボックス6の配置を決定してもよい。
一方、両者が一致しない場合は(#832でNo)、メニューボックス位置決定部106は、機能バッジ列300の、前回停止してから今回停止するまでの移動量をチェックする(#835)。
移動量が所定の量βを超える場合は(#836でYes)、メニューボックス位置決定部106は、第一の実施形態の場合と同様の方法で、今回の停止の直前のスライダ51の進行方向などに基づいてメニューボックス6の配置を決定し(#833)、バッジ選択画面データ生成部101およびバッジ選択画面表示制御部102は、バッジ選択画面2を表示し直す(#834)。
移動量が所定の量β以下である場合は(#836でNo)、機能バッジ列300の今回のスクロールがユーザの意図したものではないと、考えられる。そこで、メニューボックス位置決定部106は、メニューボックス6の配置を前回の停止の際の状態のままにしておくと、決定する(#837)。所定の量βは、例えば、1つの機能バッジ3の幅未満の量である。
〔第五の実施形態〕
図20は、メニューボックス除外処理の流れの例を説明するフローチャートである。図21〜図23は、バッジ選択画面2の例を示す図である。
第五の実施形態におけるバッジ選択画面2の表示に関する全体的な処理の流れは、基本的に第一の実施形態の場合と同様であり、図14で説明した通りである。ただし、第五の実施形態では、複合機1は、ステップ#803、#804の処理と並行して、スクロールが停止するなど所定のイベントが発生するまでの間、図20に示すメニューボックス配置処理を実行する。
図6のメニューボックス位置決定部106は、機能バッジ列300が再びスクロールし始めると(図20の#841でYes)、機能バッジ列300の前回のスクロールの進行方向と今回のスクロールの進行方向とを比較する(#842)。
両者が一致する場合は(#843でYes)、機能バッジエリア2Aに新たに機能バッジ3が1つ、完全に表れたら(#844でYes)、メニューボックス位置決定部106は、下位層メニューエリア2Dに現在配置されているメニューボックス6のうちの、スライダ51の進行方向の反対側の端(つまり、最後尾)のメニューボックス6を、配置の対象から除外する(#845)。そして、バッジ選択画面データ生成部101およびバッジ選択画面表示制御部102は、メニューボックス6が1つ除外された状態でバッジ選択画面2を表示し直す(#846)。
例えば、図21に示すように、機能バッジ321〜323にそれぞれ対応するメニューボックス621〜623が下位層メニューエリア2Dに配置された状態で、再び機能バッジ列300が同じ方向にスクロールし始めたとする。その後、図22に示すように、機能バッジ324が新たに機能バッジエリア2Aに表れると、メニューボックス621〜623のうちの最後尾つまりメニューボックス621が下位層メニューエリア2Dから除外される。この際に、残りのメニューボックス6(622および623)を後ろの方へ移動させてもよい。
そして、機能バッジ列300のスクロールが止まると、第一の実施形態と同様の方法で、図23に示すように、下位層メニューエリア2Dにメニューボックス6が配置し直される。
〔第六の実施形態〕
図24は、メニューボックス配置処理の流れの例を説明するフローチャートである。図25〜図33は、バッジ選択画面2の例を示す図である。
第四の実施形態では、機能バッジ列300が停止した後、反対の方向へ所定の量β以下だけスクロールした場合の処理について、説明した。複合機1は、所定の量βを超えた場合は、第一の実施形態と同様の方法で、メニューボックス6を配置し直して表示した。
しかし、第六の実施形態では、所定の量βを超えた場合は、複合機1は、図24のフローチャートに示す手順でメニューボックス6を配置し直して表示する。
バッジ選択画面2の表示に関する全体的な処理の手順は、第一の実施形態および第四の実施形態などと同様であり、図14で説明した通りである。ただし、第六の実施形態においては、図14のステップ#809、#810の処理の内容が第一の実施形態および第四の実施形態の場合などとは異なる。
また、第一、第三、第四、および第五の実施形態では、メニューボックス6の幅が均一である場合を例に説明したが、第六の実施形態では、オプション機能ごとにメニューボックス6の幅が異なる。
図6のメニューボックス位置決定部106は、機能バッジ列300のスクロールが停止すると(図14の#808でYes)、図24のフローチャートに示す手順でメニューボックス6の配置の処理を行う。
メニューボックス位置決定部106は、機能バッジ列300の今回の停止の直前の進行方向と前回の停止の直前の進行方向とを比較する(#851)。両者が一致する場合は(#852でYes)、第一の実施形態と同様の方法で、今回の停止の直前のスライダ51の進行方向およびスクロールの停止時に機能バッジエリア2Aに配置されている機能バッジ3に基づいて、メニューボックス6を選出する(#853)。そして、バッジ選択画面データ生成部101およびバッジ選択画面表示制御部102は、選出されたメニューボックス6を下位層メニューエリア2Dに配置した状態で、バッジ選択画面2を表示し直す(#854)。なお、ステップ#833では、第三の実施形態と同様の方法でメニューボックス6の配置を決定してもよい。
一方、両者が一致しない場合は(#852でNo)、メニューボックス位置決定部106は、機能バッジエリア2Aに新たに機能バッジ3が1つも完全に表れていなければ(#855でNo)、メニューボックス位置決定部106は、メニューボックス6の配置をスクロールの再開の前の状態のままにしておくと、決定する。つまり、メニューボックス6の配置に変化は、ない。
または、機能バッジエリア2Aに新たに機能バッジ3が1つまたは複数、完全に表れていれば(#855でYes)、メニューボックス位置決定部106は、新たに表れた機能バッジ3に係るオプション機能のメニューボックス6を下位層メニューエリア2Dに現在配置されているメニューボックス6とともに、重ねることなく並べて表示することができるか否かを判別する。なお、この判別は、各メニューボックス6の幅の合計と下位層メニューエリア2Dの幅とを比較することによって行うことができる。
並べて表示することができると判別した場合は(#857でYes)、メニューボックス位置決定部106は、新たに表れた機能バッジ3に係るオプション機能のメニューボックス6と現在配置されているメニューボックス6とを配置すると、決定する。これらの位置は、対応する機能バッジ3の並び順に合わせればよい。
一方、並べて表示することができないと判別した場合は(#857でNo)、メニューボックス位置決定部106は、スライダ51の進行方向の逆側のメニューボックス6から1つずつ、重ねることなく配置ができるようになるまで、下位層メニューエリア2Dへの配置の候補から除外する(#859)。そして、除外後のメンバを下位層メニューエリア2Dに配置してバッジ選択画面2を表示し直させる(#860、#861)。
ここで、第六の実施形態における上述の処理によるバッジ選択画面2の遷移の具体例を、図25〜図33を参照しながら説明する。
スライダ51の進行方向が右方向であるときに機能バッジ列300のスクロールが止まり、図25に示すように、メニューボックス6としてメニューボックス620のみが下位層メニューエリア2Dに表示されたとする。その後、今度は左方向へスライダ51がスライドされ機能バッジ列300がスクロールし、図26に示すように、機能バッジエリア2Aの右端に新たに機能バッジ312が出現すると、機能バッジ312に係るオプション機能のメニューボックス6として、メニューボックス612が下位層メニューエリア2Dに追加される。この際に、メニューボックス620は除去されずに残る。なぜなら、メニューボックス612とメニューボックス620とを、重ねることなく並べて下位層メニューエリア2Dに配置することができるからである。
一方、スライダ51の進行方向が右方向であるときに機能バッジ列300のスクロールが止まり、図27に示すように、メニューボックス6としてメニューボックス625のみが下位層メニューエリア2Dに表示されたとする。その後、今度は左方向へスライダ51がスライドされ機能バッジ列300がスクロールし、図28に示すように、機能バッジエリア2Aの右端に新たに機能バッジ317が出現すると、機能バッジ317に係るオプション機能のメニューボックス6として、メニューボックス617が下位層メニューエリア2Dに追加される。ただし、ここでは、メニューボックス625を除去する。なぜなら、メニューボックス617とメニューボックス625とを同時に配置すると、図29に示すように両者が重なってしまうからである。
または、スライダ51の進行方向が右方向であるときに機能バッジ列300のスクロールが止まり、図30に示すように、メニューボックス6としてメニューボックス626および627が下位層メニューエリア2Dに表示されたとする。その後、今度は左方向へスライダ51がスライドされ機能バッジ列300がスクロールし、図31に示すように、機能バッジエリア2Aの右端に新たに機能バッジ319が出現すると、機能バッジ319に係るオプション機能のメニューボックス6として、メニューボックス619が下位層メニューエリア2Dに追加される。この際に、メニューボックス626および627は両方とも除去されずに残る。なぜなら、メニューボックス619、626、および627を、重ねることなく並べて下位層メニューエリア2Dに配置することができるからである。
さらにもう一度、スライダ51が左方向へスクロールされ、図32に示すように、新たに機能バッジ318が出現すると、機能バッジ318に係るオプション機能のメニューボックス6として、メニューボックス618が下位層メニューエリア2Dに追加される。ただし、ここでは、メニューボックス627を除去する。なぜなら、メニューボックス627を除去しなければ、図33に示すように、いずれかのメニューボックス6同士を重ねなければならないからである。
第一ないし第六の実施形態によると、ユーザの所望する機能のメニューボックスが従来よりも確実に表示される。
第一ないし第六の実施形態では、メニューボックス6または7を、主に下位層メニューエリア2Dにポップアップウィンドウとして表示した。下位層メニューエリア2Dには、メニューボックス6または7を表示しないときに、他のオブジェクトを表示させてもおいてもよい。そして、メニューボックス6または7を表示する際は、メニューボックス6または7を一番上に配置し、閉じられた際に他のオブジェクトを再び完全に表示させればよい。
第一ないし第五の実施形態では、メニューボックス6または7の幅を一定にしたが、機能ごとに幅が異なっていてもよい。この場合も、遅く機能バッジエリア2Aに表示された機能バッジ3に係るオプション機能のメニューボックス6または7から優先的に、下位層メニューエリア2Dへの配置を行えばよい。
第四ないし第六の実施形態では、下位層メニューエリア2Dに表示する対象がメニューボックス6である場合を例に説明したが、メニューボックス7である場合にも、本発明を適用することができる。
その他、複合機1の全体または各部の構成、処理内容、処理順序、画面の構成などは、本発明の趣旨に沿って適宜変更することができる。