(57)【要約】【課題】画像の一覧から目的の画像を容易に探し出せる電子機器を実現する。【解決手段】電子機器は処理手段を具備する。処理手段は、複数の画像の一覧表示が要求された場合、前記複数の画像に対応する複数のサムネイル画像を、前記複数の画像に関連付けられた複数の属性に基づいて画面に表示し、前記複数のサムネイル画像の内の、第１位置に配置された第１サムネイル画像上に重ねて、当該第１サムネイル画像に対応する第１画像に関連付けられた第１属性を示す第１要素を表示し、前記第１要素が選択された場合、前記複数の画像に関連付けられた複数の属性の内の、前記第１属性に先行又は後続する複数の属性を示す複数の要素を表示し、前記複数の要素の内の第２要素が選択された場合、当該第２要素に示される第２属性が関連付けられた第２画像に対応する第２サムネイル画像が前記第１位置に配置された前記複数のサムネイル画像を前記画面に表示する。【選択図】図４
2017097407.tif 000002
【特許請求の範囲】
【請求項１】
複数の画像に関するデータが格納される外部ストレージデバイスと通信する通信デバイスと、
ディスプレイと、
処理手段であって、
前記外部ストレージデバイスに格納された前記複数の画像に関するデータに基づく複数の画像の一覧表示が要求された場合、前記複数の画像に対応する複数のサムネイル画像を、前記複数の画像に関連付けられた複数の属性に基づいて前記ディスプレイの画面に表示し、
前記表示された複数のサムネイル画像の内の、第１位置に配置された第１サムネイル画像上に重ねて、当該第１サムネイル画像に対応する第１画像に関連付けられた第１属性を示す第１要素を表示し、
前記第１要素が選択された場合、前記複数の画像に関連付けられた複数の属性の内の、前記第１属性に先行又は後続する複数の属性を示す複数の要素を表示し、
前記複数の要素の内の第２要素が選択された場合、当該第２要素に示される第２属性が関連付けられた第２画像に対応する第２サムネイル画像が前記第１位置に配置された前記複数のサムネイル画像を、前記画面に表示する処理手段と、を具備する電子機器。
【請求項２】
前記複数の画像に関連付けられた属性に関する第１データと、前記複数の画像に対応する複数のサムネイル画像に関する第２データとを格納するメモリをさらに具備し、
前記処理手段は、前記外部ストレージデバイスに格納された複数の画像の一覧表示が要求された場合、前記メモリから、前記第１データと前記第２データとを読み出し、前記読み出された第２データに基づく複数のサムネイル画像を、前記読み出された第１データを用いて、前記複数の画像に関連付けられた複数の属性に基づいて前記画面に表示する請求項１記載の電子機器。
【請求項３】
前記処理手段は、さらに、
前記表示された複数の要素をスクロールする操作が検出された場合、当該操作に応じてスクロールされた前記複数の要素を表示し、
前記スクロールされた複数の要素の内の、前記第１位置に配置されるサムネイル画像に対応する領域内の第３要素を検出し、
前記第３要素に示される第３属性が関連付けられた第３画像に対応する第３サムネイル画像が前記第１位置に配置された前記複数のサムネイル画像を、前記画面に表示する請求項１記載の電子機器。
【請求項４】
前記処理手段は、さらに、
前記表示された複数のサムネイル画像をスクロールする操作が検出された場合、当該操作に応じてスクロールされた前記複数のサムネイル画像を表示し、
前記スクロールされた複数のサムネイル画像の内の、前記第１位置に配置された第４サムネイル画像上に重ねて、当該第４サムネイル画像に対応する第４画像に関連付けられた第４属性を示す第４要素を表示する請求項１記載の電子機器。
【請求項５】
画像に関するデータを格納するメモリをさらに具備し、
前記処理手段は、さらに、前記メモリに格納された前記画像に関するデータを、前記通信デバイスを介して、前記外部ストレージデバイスに送信する請求項１記載の電子機器。
【請求項６】
前記複数の属性は、前記複数の画像が作成又は更新された日付を含み、
前記処理手段は、前記サムネイル画像に対応する画像が作成又は更新された日付の降順又は昇順で、前記複数のサムネイル画像を前記画面に表示する、請求項１記載の電子機器。
【請求項７】
通信デバイスを介して、複数の画像に関するデータが格納される外部ストレージデバイスと通信することと、
前記外部ストレージデバイスに格納された前記複数の画像に関するデータに基づく複数の画像の一覧表示が要求された場合、前記複数の画像に対応する複数のサムネイル画像を、前記複数の画像に関連付けられた複数の属性に基づいてディスプレイの画面に表示することと、
前記表示された複数のサムネイル画像の内の、第１位置に配置された第１サムネイル画像上に重ねて、当該第１サムネイル画像に対応する第１画像に関連付けられた第１属性を示す第１要素を表示することと、
前記第１要素が選択された場合、前記複数の画像に関連付けられた複数の属性の内の、前記第１属性に先行又は後続する複数の属性を示す複数の要素を表示することと、
前記複数の要素の内の第２要素が選択された場合、当該第２要素に示される第２属性が関連付けられた第２画像に対応する第２サムネイル画像が前記第１位置に配置された前記複数のサムネイル画像を、前記画面に表示することと、を含む表示制御方法。
【請求項８】
外部装置と通信する通信デバイスと、
前記通信デバイスを介して通信されたデータを記憶するメモリと、
前記メモリに記憶されたデータに基づく画像を表示するディスプレイと、
処理手段であって、
外部ストレージデバイスに、前記通信デバイスを介して、複数の画像に関するデータを送信し、
前記外部ストレージデバイスから、前記通信デバイスを介して、前記複数の画像に関連付けられた複数の属性に関する第１データと前記複数の画像に対応する複数のサムネイル画像に関する第２データとを受信し、前記第１データと前記第２データとを前記メモリに格納し、
前記外部ストレージデバイスに送信された前記複数の画像に関するデータに基づく複数の画像の一覧表示が要求された場合、前記メモリから前記第１データと前記第２データとを読み出し、前記読み出された第２データに基づく複数のサムネイル画像を、前記読み出された第１データを用いて、前記複数の画像に関連付けられた複数の属性に基づいて前記ディスプレイの画面に表示する処理手段と、を具備する電子機器。
【請求項９】
前記処理手段は、
前記表示された複数のサムネイル画像の内の、第１位置に配置された第１サムネイル画像上に重ねて、当該第１サムネイル画像に対応する第１画像に関連付けられた第１属性を示す第１要素を表示し、
前記第１要素が選択された場合、前記複数の画像に関連付けられた複数の属性の内の、前記第１属性に先行又は後続する複数の属性を示す複数の要素を表示し、
前記複数の要素の内の第２要素が選択された場合、当該第２要素に示される第２属性が関連付けられた第２画像に対応する第２サムネイル画像が前記第１位置に配置された前記複数のサムネイル画像を、前記画面に表示する請求項８記載の電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、外部ストレージ内のデータを画面に表示する電子機器及び該機器に適用される表示制御方法に関する。
【背景技術】
【０００２】
近年、デジタルカメラやカメラ機能を有するモバイル機器（例えば、スマートフォン、タブレット）の普及によって、一般のユーザであっても、多数の画像（写真）を扱う機会が増えている。
【０００３】
このような画像は、例えば、バックアップやモバイル機器内の記憶領域の確保のために、外部ストレージデバイスに保存されることがある。モバイル機器は、この外部ストレージデバイスにアクセスすることによって、保存された画像を表示することができる。
【０００４】
また、ユーザが多数の画像から目的の画像を探し出すことを支援できる様々な画像表示アプリケーションが提案されている。これら画像表示アプリケーションの代表的な機能の一つとして、画像の一覧を表示する機能がある。ユーザは、この一覧で画像を閲覧したり、この一覧から注目する画像を選択したりすることができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第５２６８５９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、例えば、スマートフォンの小さな画面に一度に表示できる画像の数は限られているので、画像の一覧から目的の画像を探し出すためには、ユーザは、その画像の一覧を何度もスクロールしなければならない可能性がある。したがって、ユーザが目的の画像を容易に探し出すことを可能とする画像の一覧を提供する新たな技術の実現が要求される。
【０００７】
本発明は、画像の一覧から目的の画像を容易に探し出せる電子機器及び表示制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
実施形態によれば、電子機器は、通信デバイスと、ディスプレイと、処理手段とを具備する。通信デバイスは、複数の画像に関するデータが格納される外部ストレージデバイスと通信する。処理手段は、前記外部ストレージデバイスに格納された前記複数の画像に関するデータに基づく複数の画像の一覧表示が要求された場合、前記複数の画像に対応する複数のサムネイル画像を、前記複数の画像に関連付けられた複数の属性に基づいて前記ディスプレイの画面に表示し、前記表示された複数のサムネイル画像の内の、第１位置に配置された第１サムネイル画像上に重ねて、当該第１サムネイル画像に対応する第１画像に関連付けられた第１属性を示す第１要素を表示し、前記第１要素が選択された場合、前記複数の画像に関連付けられた複数の属性の内の、前記第１属性に先行又は後続する複数の属性を示す複数の要素を表示し、前記複数の要素の内の第２要素が選択された場合、当該第２要素に示される第２属性が関連付けられた第２画像に対応する第２サムネイル画像が前記第１位置に配置された前記複数のサムネイル画像を、前記画面に表示する。
【図面の簡単な説明】
【０００９】
【図１】実施形態に係る電子機器の外観と、当該電子機器に接続される外部ストレージを示す図。
【図２】画像のサムネイル一覧の例を示す図。
【図３】同実施形態の電子機器のシステム構成を示すブロック図。
【図４】同実施形態の電子機器によって実行される画像表示アプリケーションプログラムの機能構成を示すブロック図。
【図５】同実施形態の電子機器によって使用されるファイル属性データの一構成例を示す図。
【図６】同実施形態の電子機器によって、サムネイル画像一覧上に日付を示す要素が表示される画面の例を説明するための図。
【図７】図６のサムネイル画像一覧上に、日付を示す要素の一覧が表示される画面の例を説明するための図。
【図８】図７の日付を示す要素の一覧がスクロールされる場合の画面の例を説明するための図。
【図９】同実施形態の電子機器によって実行される表示制御処理の手順の例を示すフローチャート。
【図１０】同実施形態の電子機器によって実行されるサムネイル画像スクロール処理の手順の例を示すフローチャート。
【図１１】同実施形態の電子機器によって実行される日付選択処理の手順の例を示すフローチャート。
【発明を実施するための形態】
【００１０】
以下、実施の形態について図面を参照して説明する。
【００１１】
本実施形態の電子機器は、例えば、スマートフォン、タブレットコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、デジタルカメラ、等として実現され得る。ここでは、本電子機器が、スマートフォン１０として実現される場合を例示する。
【００１２】
図１は、スマートフォン１０の外観と、当該スマートフォン１０と接続される外部ストレージデバイス（以下、外部ストレージとも称する）５０の一例を示す図である。
【００１３】
図１に示すように、スマートフォン１０は、本体１１とタッチスクリーンディスプレイ２０とを含む。本体１１の所定の位置、例えば本体１１の前面の上端の中央位置には、カメラ（カメラユニット）２１が配置されている。なお、カメラ２１は、本体の１１の背面に設けられてもよいし、本体１１の前面と背面の両方に２つのカメラが設けられてもよい。
【００１４】
タッチスクリーンディスプレイ２０は、液晶ディスプレイ（ＬＣＤ）２０Ａとタッチパネル２０Ｂとを含む。タッチパネル２０Ｂは、ＬＣＤ２０Ａの画面を覆うように本体１１の表面に取り付けられている。タッチスクリーンディスプレイ２０は、タッチスクリーンディスプレイ２０の画面上の、外部オブジェクト（スタイラス又は指）の接触位置を検知する。
【００１５】
スマートフォン１０は外部ストレージ５０と接続され、データをやり取りする。スマートフォン１０と外部ストレージ５０とは、例えば、無線ＬＡＮ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、３Ｇ／４Ｇ／ＬＴＥ、等のような通信規格に基づいて無線接続される。以下では、スマートフォン１０と外部ストレージ５０とが無線ＬＡＮで接続されている場合を例示する。
【００１６】
スマートフォン１０は、この無線接続を介して、スマートフォン１０に格納されているデータを外部ストレージ５０に移動（又はコピー）し、また外部ストレージ５０に格納されているデータをスマートフォン１０に移動（又はコピー）することができる。スマートフォン１０は、例えば、スマートフォン１０に格納されている画像を、無線ＬＡＮを介して外部ストレージ５０に格納する。この画像は、例えば、静止画像、動画、等である。これにより、例えば、スマートフォン１０内の画像を外部ストレージ５０にバックアップしたり、スマートフォン１０の記憶容量を圧迫する画像を外部ストレージ５０に移動したりすることができる。画像には、その画像が表示される表示サイズ（オリジナルの画像が表示されるサイズ）を小さくしたサムネイル画像が含まれ得る。このサムネイル画像は、オリジナルの画像が作成又は更新された場合に、作成又は更新される。
【００１７】
なお、外部ストレージ５０に画像を保存するスマートフォン等の電子機器は複数であってもよい。その場合、それら複数の電子機器間で、外部ストレージ５０を利用して画像を共有することができる。
【００１８】
外部ストレージ５０に格納された画像は、スマートフォン１０に表示することができる。例えば、図２に示すように、外部ストレージ５０に格納されている画像の一覧（サムネイル画像の一覧）が画面に表示される。このような画像の一覧では、例えば、作成日のような画像に関連付けられた属性に基づく順序で、画像が表示される。例えば、撮影日を示すテキスト８１，８２が表示された下部に、それぞれの撮影日に撮影された画像６０１〜６０４及び画像６０６〜６０８が表示されている。
【００１９】
外部ストレージ５０に保存される画像の数は膨大な数になる可能性がある。そのため、図２に示すような画面では、目的の画像を探し出すために、撮影日に基づく順序で配置された複数の画像を何度もスクロールしなければならない場合があり、その操作はユーザにとって非常に煩雑である。
【００２０】
一般に小さな画面が設けられるスマートフォンでは、スマートフォンよりも大きな画面が設けられるデスクトップ型のコンピュータやタブレット型コンピュータと比較して、画面に一度に表示できる画像（サムネイル画像）の数が少なくなる。そのため、スマートフォンでは、より大きな画面が設けられるコンピュータよりも、目的の画像を探し出すために必要なスクロール操作の回数が増加する可能性がある。したがって、小さな画面が設けられるスマートフォン等の電子機器では、スクロール操作により目的の画像を探し出すことがより煩雑になる。
【００２１】
そのため本実施形態では、表示されている画像に関連付けられた属性（例えば、画像の作成日や更新日のような日付）を示す要素（例えば、ボタン）を表示し、この要素を用いた操作で指定された属性（日付）に応じて、表示される画像の一覧を変更する。画像に関連付けられた属性を示す要素を用いて目的の画像の属性を容易に指定できることにより、その目的の画像が素早く画面に表示されるので、目的の画像を短時間で探し出すことができる。
【００２２】
図３は、本実施形態のスマートフォン１０のシステム構成を示す。
【００２３】
図３に示すように、スマートフォン１０は、ＣＰＵ１０１、システムコントローラ１０２、主メモリ１０３、不揮発性メモリ１０４、ＢＩＯＳ−ＲＯＭ１０５、グラフィクスコントローラ１０６、ビデオＲＡＭ（ＶＲＡＭ）１０６Ａ、サウンドコーデック１０７、３Ｇ／４Ｇ／ＬＴＥコントローラ１０８、無線ＬＡＮコントローラ１０９、Ｂｌｕｅｔｏｏｔｈ（ＢＴ）コントローラ１１０、エンベデッドコントローラ（ＥＣ）１１１、等を備える。
【００２４】
ＣＰＵ１０１は、スマートフォン１０内のコンポーネントの動作を制御するように構成されたプロセッサである。このプロセッサは回路（処理回路）を含む。ＣＰＵ１０１は、不揮発性メモリ１０４から主メモリ１０３にロードされる各種プログラムを実行する。これらプログラムは、オペレーティングシステム（ＯＳ）２０１及び様々なアプリケーションプログラムを含む。これらアプリケーションプログラムには、画像表示アプリケーションプログラム２０２が含まれる。
【００２５】
画像表示アプリケーションプログラム２０２のいくつかの特徴を説明する。
【００２６】
画像表示アプリケーションプログラム２０２は、例えば、３Ｇ／４Ｇ／ＬＴＥコントローラ１０８や無線ＬＡＮコントローラ１０９を介して、インターネット上のサーバからダウンロードされ、不揮発性メモリ１０４内に格納される（すなわち、スマートフォン１０にインストールされる）。画像表示アプリケーションプログラム２０２は、スマートフォン１０の出荷時に不揮発性メモリ１０４内にプリインストールされていてもよい。
【００２７】
画像表示アプリケーションプログラム２０２は、外部ストレージ５０に格納されている画像を表示するための表示機能を有している。この表示機能により、外部ストレージ５０に格納されている複数の画像ファイルに基づく複数の画像をＬＣＤ２０Ａの画面に表示することや、それら複数の画像の一覧をＬＣＤ２０Ａの画面に表示することができる。画像の一覧には、例えば、外部ストレージ５０に格納されている画像ファイルに基づく画像自体の代わりに、当該画像の表示サイズが小さく（簡略化）されたサムネイル画像が表示される。
【００２８】
この表示機能は、画像の一覧（サムネイル画像の一覧）が表示されている場合に、表示されている画像に関連付けられた属性（例えば、画像の作成日や更新日のような日付）を示す要素を表示し、この要素を用いた操作で指定された属性に応じて、表示される画像の一覧を変更する機能も含む。
【００２９】
画像表示アプリケーションプログラム２０２の機能はプロセッサのような回路によって実現することができる。あるいは、この機能は、専用の回路によって実現することもできる。
【００３０】
ＣＰＵ１０１は、ＢＩＯＳ−ＲＯＭ１０５に格納された基本入出力システム（ＢＩＯＳ）も実行する。ＢＩＯＳは、ハードウェア制御のためのプログラムである。
【００３１】
システムコントローラ１０２は、ＣＰＵ１０１のローカルバスと各種コンポーネントとの間を接続するデバイスである。システムコントローラ１０２には、主メモリ１０３をアクセス制御するメモリコントローラも内蔵されている。また、システムコントローラ１０２は、ＰＣＩ  ＥＸＰＲＥＳＳ規格のシリアルバスなどを介してグラフィクスコントローラ１０６との通信を実行する機能も有している。
【００３２】
システムコントローラ１０２は、また、不揮発性メモリ１０４を制御するためのＳＡＴＡコントローラを内蔵している。また、システムコントローラ１０２は、グラフィックスコントローラ１０６及びサウンドコーデック１０７との通信を実行する機能も有している。
【００３３】
グラフィクスコントローラ１０６は、タッチスクリーンディスプレイ２０のＬＣＤ２０Ａを制御するように構成された表示コントローラである。表示コントローラは回路（表示制御回路）を含む。グラフィクスコントローラ１０６は、ＣＰＵ１０１からＬＣＤ２０Ａの表示のためのデータを受け取り、ＶＲＡＭ１０６Ａに転送する。グラフィクスコントローラ１０６は、ＶＲＡＭ１０６Ａに格納されたデータを用いて、ＬＣＤ２０Ａに出力する表示信号を生成する。グラフィクスコントローラ１０６は、生成された表示信号をＬＣＤ２０Ａに送出する。
【００３４】
ＬＣＤ２０Ａは、表示信号に基づいて画面イメージを表示する。ＬＣＤ２０Ａを覆うタッチパネル２０Ｂは、ＬＣＤ２０Ａの画面と外部オブジェクトとの間の接触位置を検知するように構成されたセンサとして機能する。
【００３５】
サウンドコーデック１０７は音源デバイスである。サウンドコーデック１０７は、再生対象のオーディオデータをアナログ信号に変換し、このアナログ信号を音響スピーカ２３Ｌ，２３Ｒに供給する。また、サウンドコーデック１０７は、マイクロフォン２２Ｌ，２２Ｒを介して入力される音をアナログ／デジタル変換し、この音に対応するデジタル信号を出力する。
【００３６】
３Ｇ／４Ｇ／ＬＴＥコントローラ１０８は、例えば３Ｇ／４Ｇ／ＬＴＥ規格の無線通信を実行するように構成された無線通信デバイスである。３Ｇ／４Ｇ／ＬＴＥコントローラ１０８は信号を送信するように構成された送信回路と、信号を受信するように構成された受信回路とを含む。
【００３７】
無線ＬＡＮコントローラ１０９は、例えばＩＥＥＥ  ８０２．１１規格の無線通信を実行するように構成された無線通信デバイスである。無線ＬＡＮコントローラ１０９は、信号を無線送信するように構成された送信回路と、信号を無線受信するように構成された受信回路とを含む。
【００３８】
ＢＴコントローラ１１０は、Ｂｌｕｅｔｏｏｔｈ規格の無線通信を実行するように構成された無線通信デバイスである。ＢＴコントローラ１１０は信号を送信するように構成された送信回路と、信号を受信するように構成された受信回路とを含む。
【００３９】
なお、スマートフォン１０には、例えばＩＥＥＥ  ８０２．３規格の有線通信を実行するように構成された有線通信デバイスであるＬＡＮコントローラがさらに設けられてもよい。
【００４０】
３Ｇ／４Ｇ／ＬＴＥコントローラ１０８、無線ＬＡＮコントローラ１０９及びＢＴコントローラ１１０の少なくとも１つは、上述した外部ストレージ５０と無線通信するために用いられる。以下では、外部ストレージデバイス５０との通信に、無線ＬＡＮコントローラ１０９が用いられる場合を例示する。
【００４１】
ＥＣ１１１は、電力管理のためのエンベデッドコントローラを含む１チップマイクロコンピュータである。ＥＣ１１１は、また、ユーザによるパワーボタンの操作に応じて、スマートフォン１０をパワーオン又はパワーオフする。
【００４２】
図４は、画像表示アプリケーションプログラム２０２の機能構成を示す。
【００４３】
画像表示アプリケーションプログラム２０２は、同プログラムの機能モジュールとして、制御モジュール３１、通信制御部３２、データベース処理部３３、及び表示処理部３４を含む。制御モジュール３１は、画像表示アプリケーションプログラム２０２内の各部３２，３３，３４の動作を制御する。
【００４４】
制御モジュール３１は、ＯＳ２０１に設けられるタッチパネルドライバ等を介して、タッチパネル２０Ｂから様々なイベントを受信する。これらイベントは、タッチイベント、移動イベント、リリースイベントを含む。タッチイベントは、ＬＣＤ２０Ａの画面に外部オブジェクトが接触したことを示すイベントである。このタッチイベントは、画面と外部オブジェクトとの間の接触位置を示す座標を含む。移動イベントは、外部オブジェクトが画面に接触されたまま、接触位置が移動されたことを示すイベントである。この移動イベントは、移動先の接触位置の座標を含む。リリースイベントは、外部オブジェクトと画面との間の接触がリリースされたことを示すイベントである。このリリースイベントは、接触がリリースされたリリース位置を示す座標を含む。
【００４５】
制御モジュール３１は、受信される様々なイベントに基づいて、画面上のどこで、どの操作（タップ、スワイプ、等）が行われたかを、検出することができる。制御モジュール３１は、検出された操作に応じた処理を実行する。
【００４６】
また、制御モジュール３１は、記憶領域（例えば、不揮発性メモリ）１０４内に保存された様々なファイルを管理する。不揮発性メモリ１０４には、ユーザによって作成された画像（静止画像、動画像）のファイル１０４Ａが保存される。なお、不揮発性メモリ１０４には、ドキュメントやテキストのようなファイルが保存されていてもよい。
【００４７】
制御モジュール３１は、不揮発性メモリ１０４内の画像ファイル１０４Ａを、外部ストレージ５０に保存するための操作又はイベントを検出する。この操作又はイベントは、例えば、画面に表示されている保存のための所定のボタンをタップする操作や、不揮発性メモリ１０４に新たな画像ファイルが保存されたことを示すイベント、等である。制御モジュール３１は、この操作又はイベントに応じて、不揮発性メモリ１０４から画像ファイル１０４Ａを読み出す。
【００４８】
通信制御部３２は、読み出された画像ファイル１０４Ａを、無線ＬＡＮコントローラ１０９を介して外部ストレージ５０に送信する。外部ストレージ５０は、無線ＬＡＮコントローラ５１を介して、スマートフォン１０から送信された画像ファイル１０４Ａを受信し、受信されたファイル１０４Ａを不揮発性メモリ５２に格納する。
【００４９】
また、制御モジュール３１は、不揮発性メモリ１０４（データベース１０４Ｂ）内のファイル属性データ１０４Ｃ（第１データの一例）を更新するための操作又はイベントを検出する。この操作又はイベントは、例えば、画像表示アプリケーションプログラム２０２が起動されたことを示すイベント、スマートフォン１０が起動されたことを示すイベント、またはデータベース１０４Ｂを更新するための所定の操作、等である。制御モジュール３１は、この操作又はイベントに応じて、通信制御部３２に対して、外部ストレージ５０の不揮発性メモリ５２内に格納された画像ファイル５２Ａの属性データの取得を要求する。
【００５０】
通信制御部３２は、この要求に応じて、外部ストレージ５０の不揮発性メモリ５２内に格納された画像ファイル５２Ａの属性データを取得する。すなわち、通信制御部３２は、無線ＬＡＮコントローラ１０９を介して外部ストレージ５０にアクセスすることによって、不揮発性メモリ５２内に格納されている画像ファイル５２Ａの属性データを読み出す。この属性データは、例えば、複数の画像ファイル５２Ａが作成又は更新された日付を示す日付データを含む。
【００５１】
データベース処理部３３は、その読み出された属性データを用いて、データベース１０４Ｂ内のファイル属性データ１０４Ｃを更新する。データベース処理部３３は、読み出された属性データの内、ファイル属性データ１０４Ｃに含まれていない画像ファイルの属性データを検出し、その属性データに対応するレコードをファイル属性データ１０４Ｃに追加する。また、データベース処理部３３は、読み出された属性データの内、ファイル属性データ１０４Ｃに含まれている画像ファイルのレコードから、内容が変更されている属性データを検出し、そのレコードを読み出された属性データで更新する。さらに、データベース処理部３３は、読み出された属性データに含まれていない、画像ファイルのレコードをファイル属性データ１０４Ｃから削除してもよい、すなわち、外部ストレージ５０内に既に存在しない画像ファイルに対応するファイル属性データ１０４Ｃのレコードを削除してもよい。
【００５２】
図５は、ファイル属性データ１０４Ｃの一構成例を示す。図５に示すように、ファイル属性データ１０４Ｃはテーブル形式で管理されてもよいが、この態様に限定されない。ファイル属性データ１０４Ｃは、外部ストレージ５０に格納されている複数の画像ファイル５２Ａに対応する複数のレコードを含む。各レコードは、例えば、「ファイル名」フィールド、「作成日」フィールド、「更新日」フィールド、「種類」フィールド、「サイズ」フィールド、「撮影場所」フィールド、「内容」フィールド、等を含む。
【００５３】
ある画像に対応するレコードにおいて、「ファイル名」フィールドは、その画像のファイル名（又は、ファイルパス）を示す。「作成日」フィールドは、その画像が作成（撮影）された日付（年、月、日）を示す。「更新日」フィールドは、その画像が更新された日付を示す。「作成日」フィールド及び「更新日」フィールドは、それぞれ、時間（時、分、秒）に関する情報を含んでもよい。「種類」フィールドは、その画像のファイル形式（例えば、ＪＰＥＧ、ＭＰＥＧ、等）を示す。「サイズ」フィールドは、その画像のファイルサイズを示す。「撮影場所」フィールドは、その画像が撮影された場所（例えば、ＧＰＳ情報）を示す。「内容」フィールドは、その画像の内容（例えば、画像に含まれる人物の名前、画像に含まれる物体の名称、画像特徴量、等）を示す。
【００５４】
また、制御モジュール３１は、不揮発性メモリ１０４（データベース１０４Ｂ）内のサムネイル画像ファイル１０４Ｄ（第２データの一例）を更新するための操作又はイベントを検出する。この操作又はイベントは、例えば、データベース１０４Ｂに格納されていないサムネイル画像ファイルに基づくサムネイル画像が画面に表示されるイベント、等である。制御モジュール３１は、この操作又はイベントに応じて、通信制御部３２に対して、外部ストレージ５０（不揮発性メモリ５２）内に格納された画像ファイル５２Ａに対応するサムネイル画像ファイルの取得を要求する。
【００５５】
通信制御部３２は、この要求に応じて、外部ストレージ５０（不揮発性メモリ５２）内に格納された画像ファイル５２Ａに対応するサムネイル画像ファイルを取得する。すなわち、通信制御部３２は、無線ＬＡＮコントローラ１０９を介して外部ストレージ５０にアクセスすることによって、不揮発性メモリ５２内に格納されている画像ファイル５２Ａに対応するサムネイル画像ファイル（サムネイル画像データ）を読み出す。
【００５６】
データベース処理部３３は、その読み出されたサムネイル画像ファイルをデータベース１０４Ｂに追加する。
【００５７】
また、制御モジュール３１は、外部ストレージ５０に格納された複数の画像ファイル５２Ａに基づく複数の画像を一覧表示するための操作又はイベントを検出する。この操作又はイベントは、例えば、画像表示アプリケーションプログラム２０２の起動を示すイベント、等である。制御モジュール３１は、この操作又はイベントに応じて、データベース処理部３３及び表示処理部３４に、画像の一覧表示の処理実行を要求する。
【００５８】
表示処理部３４は、外部ストレージ５０に格納された複数の画像ファイル５２Ａに基づく複数の画像の一覧表示が要求された場合、それら複数の画像に対応する複数のサムネイル画像を、複数の画像に関連付けられた複数の属性に基づいてＬＣＤ２０Ａの画面に表示する。表示処理部３４は、表示された複数のサムネイル画像の内の、第１位置（例えば、左上端）に配置された第１サムネイル画像上に重ねて、当該第１サムネイル画像に対応する第１画像に関連付けられた第１属性を示す第１要素を表示する。表示処理部３４は、その第１要素が選択された場合、複数の画像に関連付けられた複数の属性の内の、第１属性に先行又は後続する複数の属性を示す複数の要素を表示する。そして、表示処理部３４は、表示された複数の要素の内の第２要素が選択された場合、当該第２要素に示される第２属性に関連付けられた第２画像に対応する第２サムネイル画像が第１位置に配置された複数のサムネイル画像を画面に表示する。上述の複数の画像に関連付けられた複数の属性のひとつは、例えば、各画像が作成又は更新された日付である。したがって、属性が日付である場合、第１属性に先行する属性は第１属性である日付に先行する日付を含み、また第１属性に後続する複数の属性は第１属性である日付に後続する日付を含むものである。
【００５９】
より具体的には、データベース処理部３３は、制御モジュール３１による画像の一覧表示の処理実行の要求に応じて、不揮発性メモリ１０４内のデータベース１０４Ｂに格納されたファイル属性データ１０４Ｃとサムネイル画像ファイル１０４Ｄとを読み出す。なお、データベース処理部３３は、データベース１０４Ｂから、画像が作成又は更新された日付を示す日付データ、すなわち、ファイル属性データ１０４Ｃの「作成日」フィールドのデータ又は「更新日」フィールドのデータと、サムネイル画像ファイル１０４Ｄとを読み出してもよい。
【００６０】
表示処理部３４は、読み出されたサムネイル画像ファイル１０４Ｄに基づくサムネイル画像を、読み出されたファイル属性データ１０４Ｃ（日付データ）を用いて、対応する複数の画像（画像ファイル５２Ａ）に関連付けられた複数の属性に基づいてＬＣＤ２０Ａの画面に表示する。例えば、表示処理部３４は、サムネイル画像を、対応する画像が作成又は更新された日付に基づく第１の順序（例えば、日付の降順）で画面に表示する。そして、表示されたサムネイル画像の内の、第１位置（例えば、左上端）に配置されたサムネイル画像上に重ねて、そのサムネイル画像に対応する画像に関連付けられた日付（例えば、作成日又は更新日）を示す要素を表示する。サムネイル画像に対応する画像は、そのサムネイル画像のオリジナルの画像である。
【００６１】
上述したように、サムネイル画像の一覧及び日付を示す要素を表示するために用いられるファイル属性データ１０４Ｃは、データベース１０４Ｂに予め格納され、例えば、画像表示アプリケーションプログラム２０２が起動される毎に更新されることにより、外部ストレージ５０内に格納された画像ファイル５２Ａの最新の状態が反映されている。また、既に画面に表示されたことがあるサムネイル画像ファイル１０４Ｄもデータベース１０４Ｂに格納されている。このようなデータベース１０４Ｂに格納されたファイル属性データ１０４Ｃとサムネイル画像ファイル１０４Ｄとを用いることにより、例えば、サムネイル画像の一覧の表示が要求された後に外部ストレージ５０にアクセスしてデータを取得する場合と比較して、サムネイル画像の一覧及び日付を示す要素を短時間で画面に表示することができる。
【００６２】
さらに、制御モジュール３１は、表示されたサムネイル画像の一覧や日付を示す要素に対する操作を検出することもできる。制御モジュール３１は、この操作に応じて、表示処理部３４、通信制御部３２及びデータベース処理部３３に、画面の表示を更新するための処理を実行させる。
【００６３】
図６から図８は、サムネイル画像の一覧や日付を示す要素に対する操作に応じて遷移する画面の例を示す。
【００６４】
まず、図６を参照して、サムネイル画像の一覧と画像の属性を示す要素とが表示される画面上で、サムネイル画像の一覧がスクロール操作される例を説明する。この画像の属性は、例えば、画像の作成日又は更新日のような日付である。なお、画像の作成日又は更新日は、画像に対応する画像ファイル（画像データ）の作成日又は更新日と同一の日付を示すものである。以下では、この画像の属性として作成日が用いられる場合を例示する。
【００６５】
図６に示す画面７１，７２，７３それぞれには、サムネイル画像６０１〜６２１の一部が表示されている。例えば、サムネイル画像６０１〜６０５は、２０１５年８月２７日に作成された画像に対応するサムネイル画像である。サムネイル画像６０６〜６１２は、２０１５年８月２６日に作成された画像に対応するサムネイル画像である。サムネイル画像６１３，６１４は、２０１５年８月２４日に作成された画像に対応するサムネイル画像である。また、サムネイル画像６１５〜６２１は、２０１５年８月２３日に作成された画像に対応するサムネイル画像である。なお、サムネイル画像６０１〜６２１には、２０１５年８月２５日に作成された画像に対応するサムネイル画像が含まれていない。つまり、２０１５年８月２５日には画像が作成されておらず、したがって、外部ストレージ５０には２０１５年８月２５日に作成された画像が格納されていない。
【００６６】
画面７１には、サムネイル画像６０１〜６１１の一覧と、サムネイル画像６０１に対応する画像の作成日を示す要素７１１とが表示されている。サムネイル画像６０１〜６１１は、ＬＣＤ２０Ａの画面サイズ（解像度）等を考慮して決定される画像の配置パターン（ここでは、４行×３列）に従って、作成日（作成日時）に基づく所定の順序（ここでは、降順）で配置されている。サムネイル画像６０１〜６１１は、作成日毎にまとめて配置されるので、例えば、２０１５年８月２７日に作成された５枚の画像のサムネイル画像６０１〜６０５が、左上端から順に配置される。すなわち、第１行にサムネイル画像６０１，６０２，６０３が配置され、第２行にサムネイル画像６０４，６０５が配置されている。
【００６７】
最後のサムネイル画像６０５の右側にはサムネイル画像が配置されておらず、別の日に作成された画像のサムネイル画像は次の行以降に配置されている。例えば、２０１５年８月２７日の前日である２０１５年８月２６日に作成された６枚の画像のサムネイル画像６０６〜６１１は、第３行の左端から順に配置される。すなわち、第３行にサムネイル画像６０６，６０７，６０８が配置され、第４行にサムネイル画像６０９，６１０，６１１が配置されている。なお、サムネイル画像６０１〜６１１は、作成日（作成日時）の昇順、または、他の属性を示す要素の昇順または降順、に配置されてもよい。
【００６８】
要素７１１は、画面７１に配置されるサムネイル画像６０１〜６１１の内の、第１位置（ここでも、左上端）に配置されるサムネイル画像６０１に対応する画像の作成日を示す。したがって、要素７１１には、サムネイル画像６０１に対応する画像の作成日を示す“2015 August 27”というテキストが含まれている。
【００６９】
ユーザが、この画面７１上でサムネイル画像６０１〜６１１をスクロールする操作（例えば、スワイプ）を行った場合、表示処理部３４は、その操作（すなわち、スクロール量及びスクロールの向き）に応じて、スクロールされたサムネイル画像６０１〜６１１を表示する。表示処理部３４は、このスクロール操作により、画面の端部に到達したサムネイル画像６０１〜６１１の一部を順次画面から消去すると共に、サムネイル画像６０１〜６１１に先行又は後続するサムネイル画像が、スクロールによって空いた領域に順次表示されるように制御する。
【００７０】
また、表示処理部３４は、このサムネイル画像のスクロール操作に連動して、作成日を示す要素７１１も更新する。表示処理部３４は、スクロールされた複数のサムネイル画像６０１〜６１１の内の、第１位置（例えば、左上端）に新たに配置されたサムネイル画像（第４サムネイル画像の一例）上に重ねて、当該サムネイル画像に対応する画像（第４画像の一例）に関連付けられた属性（第４属性）を示す要素７１１（第４要素の一例）を表示する。第４属性は、例えば、画像が作成された日付である。つまり、作成日を示す要素７１１は、スクロール操作によって第１位置に新たに配置されたサムネイル画像に対応する画像の作成日を示す要素に動的に更新される。
【００７１】
例えば、画面７２に示すように、画面７１上でサムネイル画像６０１〜６１１を下から上へスクロールする操作により、画面の上端に到達したサムネイル画像６０１〜６０５が表示されなくなり、またサムネイル画像６０６〜６１１が上方に移動されることによって画面７２の第１行及び第２行に配置されている。そして、サムネイル画像６１１に対応する画像よりも前に作成された画像のサムネイル画像６１２〜６１４が、サムネイル画像６０６〜６１１が上方に移動されることによって空いた領域である第３行及び第４行に新たに配置されている。
【００７２】
また、画面７２に配置されるサムネイル画像６０６〜６１４の内の、第１位置（ここでも、左上端）に配置されるサムネイル画像６０６に対応する画像の作成日を示す要素７２１が、そのサムネイル画像６０６上に表示されている。この要素７２１には、サムネイル画像６０６に対応する画像の作成日を示す“2015 August 26”というテキストが含まれている。
【００７３】
さらに、画面７３に示すように、画面７２上でサムネイル画像６０６〜６１４を下から上へスクロールする操作により、画面の上端に到達したサムネイル画像６０６〜６１２が表示されなくなり、サムネイル画像６１３，６１４が上方に移動されることによって画面７３の第１行に配置されている。そして、サムネイル画像６１４に対応する画像よりも前に作成された画像のサムネイル画像６１５〜６２１が、サムネイル画像６１３，６１４が上方に移動されることによって空いた領域である第２行から第４行に新たに配置されている。
【００７４】
また、画面７３に配置されるサムネイル画像６１３〜６２１の内の、第１位置（ここでも、左上端）に配置されるサムネイル画像６１３に対応する画像の作成日を示す要素７３１が、そのサムネイル画像６１３上に表示されている。この要素７３１には、サムネイル画像６１３に対応する画像の作成日を示す“2015 August 24”というテキストが含まれている。
【００７５】
同様にして、ユーザが、画面７１，７２，７３上でサムネイル画像６０１〜６２１を上から下へスクロールする操作に応じて、表示処理部３４は、画面の下端に到達したサムネイル画像の一部を順次消去すると共に、表示されていたサムネイル画像に対応する画像よりも後に作成された画像のサムネイル画像が、スクロールにより空いた上方の領域に順次表示されるように制御する。また、表示処理部３４は、作成日を示す要素７１１，７２１，７３１を、スクロール操作により第１位置（例えば、左上端）に新たに配置されたサムネイル画像に対応する画像の作成日を示す要素に更新する。
【００７６】
以上のように、画面上のサムネイル画像の一覧のスクロールと連動して、第１位置（例えば、画面の左上端）に配置されるサムネイル画像に対応する画像の作成日を示す要素が更新されることにより、ユーザは、いずれの日付の画像（サムネイル画像）が画面に表示されているのかを容易に把握することができる。
【００７７】
また、図７に示すように、ユーザがこの日付を示す要素を選択する操作（例えば、タップ）に応じて、日付を示す要素の一覧を表示することもできる。
【００７８】
表示処理部３４は、画面７１上の作成日を示す要素７１１が選択された場合、画面７４に示すように、外部ストレージ５０内の複数の画像ファイル５２Ａが作成された日付の内の、選択された要素７１１に示される第１の日付（２０１５年８月２７日）に先行する複数の日付を示す複数の要素７４１〜７４６を表示する。
【００７９】
画面７４には、画面７１と同様に、サムネイル画像６０１〜６１１の一覧が表示されている。そして、要素７１１に示されていた作成日（２０１５年８月２７日）を先頭とする日付の要素７４１〜７４６の一覧が表示されている。この要素７４１〜７４６は、外部ストレージ５０に格納されている画像ファイル５２Ａの作成日の内の、要素７１１に示されていた作成日（２０１５年８月２７日）に先行する作成日を示す。なお、サムネイル画像６０１〜６１１が作成日の昇順に配置されている場合には、外部ストレージ５０に格納されている画像ファイル５２Ａの作成日の内の、要素７１１に示されていた作成日（２０１５年８月２７日）に後続する作成日を示す要素を含む一覧が表示されるようにしてもよい。
【００８０】
ユーザは、作成日を示す要素７４１〜７４６の一覧が表示されることによって、要素７１１に示されていた作成日よりも前の画像の作成日を容易に把握することができる。そして、ユーザは、この要素７４１〜７４６の一覧から、例えば１つの要素７４６を選択（タップ）する操作を行うことによって、その要素７４６に示される作成日の画像（サムネイル画像）の表示を指示することができる。
【００８１】
表示処理部３４は、要素７４１〜７４６の内の、例えば要素７４３が選択された場合、画面７５に示すように、選択された要素７４３に示される第２の日付に作成された画像に対応するサムネイル画像が先頭に配置された複数のサムネイル画像ファイル１０４Ｄに基づく複数のサムネイル画像を、第１の順序（例えば、作成日の降順）で画面に表示する。この画面７５には、要素７４３に示されていた作成日である２０１５年８月２４日に作成された画像のサムネイル画像６１３，６１４が先頭に配置されたサムネイル画像６１３〜６２１の一覧が表示されている。サムネイル画像６１３，６１４は、サムネイル画像６１３〜６２１の一覧の先頭の行（第１行）に配置されている。そして、サムネイル画像６１３〜６２１の内の、第１位置（ここでは、左上端）に配置されるサムネイル画像６１３に対応する画像の作成日（すなわち、選択された要素７４３に示されていた作成日）を示す要素７５１が、そのサムネイル画像６１３上に表示されている。
【００８２】
以上のように、画面７１上の１つの作成日を示す要素７１１を選択する操作に応じて、その作成日を先頭とする要素７４１〜７４６の一覧が表示される。さらに、それら要素７４１〜７４６の内の１つの要素７４３を選択する操作に応じて、その要素７４３に示される作成日の画像に対応するサムネイル画像６１３，６１４が先頭に配置されたサムネイル画像６１３〜６２１の一覧を画面に表示することができる。このように、ユーザが目的の画像の作成日を容易に選択できることにより、その目的の画像（サムネイル画像）を素早く画面に表示させることができる。
【００８３】
次いで、図８は、ユーザが日付の要素の一覧をスクロールする操作（例えば、スワイプ）に応じて表示される画面の例を示す。画面７４上には、要素７４１に示される作成日（２０１５年８月２７日）に作成された画像のサムネイル画像６０１〜６０５が先頭に配置されたサムネイル画像６０１〜６１１の一覧が表示されている。
【００８４】
表示処理部３４は、ユーザが、画面７４上で作成日を示す要素７４１〜７４６をスクロールする操作を行った場合、画面７６に示すように、その操作（すなわち、スクロール量及びスクロールの向き）に応じて、スクロールされた要素７４１〜７４７を表示する。表示処理部３４は、このスクロール操作により、画面の端部に到達した要素７４１〜７４６の一部を順次画面から消去すると共に、要素７４１〜７４６に先行又は後続する要素７４７がスクロールによって空いた領域に順次表示されるように制御する。
【００８５】
画面７６では、画面７４上で要素７４１〜７４６を下から上へスクロールする操作により、画面の上端に達した要素７４１の一部が表示されなくなり、要素７４２〜７４６が上方に移動されることによって、これにより空いた領域に、要素７４６よりも前の作成日を示す要素７４７が新たに表示されている。
【００８６】
そして、表示処理部３４は、この作成日を示す要素７４１〜７４６のスクロール操作に連動して、サムネイル画像６０１〜６１１の一覧もスクロール表示する。表示処理部３４は、例えば、スクロール表示された複数の要素７４１〜７４７の内の、第１位置（例えば、左上端）に配置されるサムネイル画像に対応する領域内の要素７４２（第３要素の一例）を検出する。表示処理部３４は、この検出された要素７４２に示される属性（第３属性）が関連付けられたサムネイル画像（第３サムネイル画像）が第１位置（例えば、左上端）に配置された複数のサムネイル画像を画面に表示する。この第３属性は、例えば、画像が作成された日付である。画面７６に示すように、表示処理部３４は、検出された要素７４２に示される作成日である２０１５年８月２６日に作成された画像のサムネイル画像６０６が第１位置に配置されたサムネイル画像６０６〜６１２を、第１の順序（例えば、降順）で画面に表示する。
【００８７】
さらに、画面７７に示すように、画面７６上で要素７４１〜７４７を下から上へスクロールする操作により、画面の上端に達した要素７４１と要素７４２の一部とが表示されなくなり、要素７４２〜７４７が上方に移動されることによって、これにより空いた領域に、要素７４７よりも前の作成日を示す要素７４８が新たに表示されている。
【００８８】
また、スクロール操作により、第１位置（ここでは、左上端）に配置されるサムネイル画像に対応する領域内に新たに表示（配置）された要素７４３が検出され、この要素に示される作成日（２０１５年８月２４日）に基づいて、画面７７内に配置されるサムネイル画像の一覧が更新されている。すなわち、要素７４３に示される作成日である２０１５年８月２４日に作成された画像のサムネイル画像６１３が先頭に配置されたサムネイル画像６１３〜６１４の一覧が表示されている。
【００８９】
同様にして、ユーザが、画面７４，７６，７７上で作成日を示す要素７４１〜７４８を上から下へスクロールする操作により、表示処理部３４は、画面の下端に到達した要素の一部を順次画面から消去すると共に、表示されていた要素よりも後の作成日を示す要素がスクロールにより空いた上方の領域に順次表示されるように制御する。また、表示処理部３４は、スクロール操作により第１位置のサムネイル画像に対応する領域内に新たに表示された要素を検出し、表示されていたサムネイル画像の一覧を、その要素に示される作成日に作成された画像のサムネイル画像が先頭に配置されたサムネイル画像の一覧に更新する。
【００９０】
以上のように、ユーザは、表示されている作成日を示す要素の一覧をスクロールする操作によって、選択したい作成日の要素を素早く表示させることができる。
【００９１】
次いで、図９のフローチャートを参照して、スマートフォン１０によって実行される表示制御処理の手順の例を説明する。
【００９２】
ＣＰＵ１０１は、外部ストレージ５０内に格納されている画像の一覧を表示することが要求されたか否かを判定する（Ｂ１０１）。ＣＰＵ１０１は、例えば、画像表示アプリケーションプログラム２０２が起動された場合に、画像の一覧を表示することが要求されたと判定する。画像の一覧を表示することが要求されていない場合（Ｂ１０１のＮｏ）、Ｂ１０１に戻り、再度、画像の一覧を表示することが要求されたか否かが判定される。
【００９３】
画像の一覧を表示することが要求されている場合（Ｂ１０１のＹｅｓ）、ＣＰＵ１０１は、データベース１０４Ｂ内のファイル属性データ１０４Ｃを読み出す（Ｂ１０２）。ＣＰＵ１０１は、ＬＣＤ２０Ａの画面に表示できるサムネイル画像の数に基づいて、必要なファイル属性データ１０４Ｃのレコードを読み出してもよい。例えば、図６から図８の画面例に示したように、画面に１２個（＝４行×３列）のサムネイル画像が表示できる場合、ＣＰＵ１０１は、作成日又は更新日毎のグループで表示されることによりサムネイル画像が配置されない領域があることも考慮して、画面に実際に表示されるサムネイル画像に対応するファイル属性データ１０４Ｃのレコードを読み出すようにしてもよい。
【００９４】
そして、ＣＰＵ１０１は、表示対象のサムネイル画像のファイルがデータベース１０４Ｂ内に格納されているか否かを判定する（Ｂ１０３）。表示対象のサムネイル画像のファイルは、読み出されたファイル属性データ１０４Ｃのレコードの各々に対応するサムネイル画像のファイルの一部である。表示対象のサムネイル画像のファイルがデータベース１０４Ｂ内に格納されている場合（Ｂ１０３のＹｅｓ）、ＣＰＵ１０１は、データベース１０４Ｂから表示対象のサムネイル画像のファイル１０４Ｄを読み出す（Ｂ１０４）。
【００９５】
表示対象のサムネイル画像のファイルがデータベース１０４Ｂ内に格納されていない場合（Ｂ１０３のＮｏ）、ＣＰＵ１０１は、外部ストレージ５０からそのサムネイル画像のファイル（データ）を読み出し（Ｂ１０５）、読み出されたサムネイル画像のファイルをデータベース１０４Ｂに保存する（Ｂ１０６）。
【００９６】
次いで、ＣＰＵ１０１は、読み出されたファイル属性データ１０４Ｃを用いて、日付毎に配置されたサムネイル画像の一覧と、その一覧内の第１位置（例えば、左上端）に配置されたサムネイル画像に対応する画像に関連付けられた日付を示す要素とを含むビューをＬＣＤ２０Ａの画面に表示する（Ｂ１０７）。画像に関連付けられた日付は、例えば、その画像の作成日又は更新日である。サムネイル画像は、例えば、対応する画像の作成日又は更新日の降順に配置される。また、日付を示す要素は、その第１位置のサムネイル画像上に重ねて表示される。
【００９７】
ＣＰＵ１０１は、表示されたサムネイル画像の一覧から、１つのサムネイル画像が選択（例えば、タップ）されたか否かを判定する（Ｂ１０８）。サムネイル画像が選択された場合（Ｂ１０８のＹｅｓ）、ＣＰＵ１０１は、選択されたサムネイル画像に対応する画像の画像ファイル５２Ａを外部ストレージ５０から読み出し（Ｂ１０９）、読み出された画像ファイル５２Ａに基づく画像を画面に表示する（Ｂ１１０）。この画像はサムネイル画像よりも大きなサイズで画面に表示されるので、ユーザは、その大きなサイズの画像を閲覧することができる。
【００９８】
サムネイル画像が選択されていない場合（Ｂ１０８のＮｏ）、ＣＰＵ１０１は、表示されているサムネイル画像の一覧がスクロールされたか否かを判定する（Ｂ１１１）。すなわち、ＣＰＵ１０１は、サムネイル画像の一覧をスクロールする操作（例えば、スワイプ）が検出されたか否かを判定する。サムネイル画像の一覧がスクロールされている場合（Ｂ１１１のＹｅｓ）、ＣＰＵ１０１は、サムネイル画像スクロール処理を実行する（Ｂ１１２）。このサムネイル画像スクロール処理では、サムネイル画像がスクロール表示されると共に、そのスクロール表示に応じて、日付を示す要素の表示が更新される。サムネイル画像スクロール処理の手順は、図１０のフローチャートを参照して後述する。
【００９９】
サムネイル画像の一覧がスクロールされていない場合（Ｂ１１１のＮｏ）、ＣＰＵ１０１は、日付を示す要素が選択（例えば、タップ）されたか否かを判定する（Ｂ１１３）。日付を示す要素が選択されている場合（Ｂ１１３のＹｅｓ）、ＣＰＵ１０１は日付選択処理を実行する（Ｂ１１４）。この日付選択処理では、日付を示す要素に対する操作に応じて、サムネイル画像や日付を示す要素の表示が更新される。日付選択処理の手順は、図１１のフローチャートを参照して後述する。
【０１００】
Ｂ１１２のサムネイル画像スクロール処理、Ｂ１１４の日付選択処理の後、又はＢ１１３のＮｏの後、Ｂ１０８に戻り、表示されているサムネイル画像や日付を示す要素に対する操作に応じた処理が続行される。
【０１０１】
次いで、図１０のフローチャートを参照して、サムネイル画像スクロール処理の手順の例を説明する。この処理は、画面に表示されているサムネイル画像の一覧をスクロールする操作が検出されたことに応じて実行される。
【０１０２】
ＣＰＵ１０１は、検出されたスクロール操作によるスクロール量及びスクロール方向に応じて、表示中のサムネイル画像一覧をスクロールして表示する（Ｂ２１）。なお、ＣＰＵ１０１は、スクロール操作によって、表示されている一覧内のサムネイル画像に先行又は後続するサムネイル画像を表示する必要がある場合、図９のＢ１０２からＢ１０６までの手順と同様にして、必要なファイル属性データ１０４Ｃとサムネイル画像とを読み出す。つまり、ＣＰＵ１０１は、データベース１０４Ｂから必要なファイル属性データ１０４Ｃのレコードを読み出し、データベース１０４Ｂから必要なサムネイル画像ファイル１０４Ｄを読み出す。そして、ＣＰＵ１０１は、読み出されたファイル属性データ１０４Ｃのレコードとサムネイル画像ファイル１０４Ｄとを用いて、サムネイル画像の一覧をスクロール表示する。
【０１０３】
次いで、ＣＰＵ１０１は、表示されているサムネイル画像の一覧の第１位置（例えば、左上端）に配置されたサムネイル画像に対応する画像に関連付けられた第１の日付を検出する（Ｂ２２）。ＣＰＵ１０１は、例えば、その第１位置に配置されたサムネイル画像に対応するファイル属性データ１０４Ｃのレコードから、日付の情報（例えば、作成日又は更新日）を読み出すことにより、当該サムネイル画像に対応する画像に関連付けられた第１の日付を検出する。
【０１０４】
そして、ＣＰＵ１０１は、その第１位置に配置されたサムネイル画像上に重ねて、検出された第１の日付を示す第１要素を表示する（Ｂ２３）。
【０１０５】
以上により、サムネイル画像の一覧をスクロールする操作が入力された場合に、サムネイル画像のスクロール表示と連動して、日付を示す要素の表示を更新することができる。
【０１０６】
図１１のフローチャートは、日付選択処理の手順の例を示す。この日付選択処理は、画面に表示されている第１の日付を示す第１要素が選択されたことに応じて実行される。
【０１０７】
ＣＰＵ１０１は、その表示されている第１の日付を示す第１要素と、この第１の日付に先行または後続する日付を示す要素とを含む日付一覧を表示する（Ｂ３１）。
【０１０８】
ＣＰＵ１０１は、第１の日付に先行する日付として、ファイル属性データ１０４Ｃのレコードに含まれる第１の日付よりも前の日付（作成日又は更新日）を、第１の日付に近い順に読み出す。そして、ＣＰＵ１０１は、第１の日付を示す第１要素と、読み出された第１の日付に先行する日付を示す要素とが、例えば、日付の降順に、垂直方向に一列に配置された日付一覧を、サムネイル画像の一覧上に表示する。
【０１０９】
また、ＣＰＵ１０１は、第１の日付に後続する日付として、ファイル属性データ１０４Ｃのレコードに含まれる第１の日付よりも後の日付（作成日又は更新日）を、第１の日付に近い順に読み出す。そして、ＣＰＵ１０１は、第１の日付を示す第１要素と、読み出された第１の日付に後続する日付を示す要素とが、例えば、日付の昇順に、垂直方向に一列に配置された日付一覧を、サムネイル画像の一覧上に表示する。
【０１１０】
次いで、ＣＰＵ１０１は、表示された日付一覧から第２の日付を示す第２要素が選択されたか否かを判定する（Ｂ３２）。第２の日付を示す第２要素が選択された場合（Ｂ３２のＹｅｓ）、その第２の日付が作成日又は更新日である画像のサムネイル画像を先頭とするサムネイル画像の一覧と、選択された第２日付を示す第２要素とを含むビューを画面に表示し（Ｂ３３）、処理を終了する。
【０１１１】
第２の日付を示す第２要素が選択されていない場合（Ｂ３２のＮｏ）、ＣＰＵ１０１は、日付一覧がスクロールされたか否かを判定する（Ｂ３４）。すなわち、ＣＰＵ１０１は、日付一覧をスクロールする操作（例えば、スワイプ）が検出されたか否かを判定する。日付一覧がスクロールされている場合（Ｂ３４のＹｅｓ）、検出されたスクロール操作によるスクロール量及びスクロール方向に応じて、表示中の日付一覧をスクロールして表示する（Ｂ３５）。なお、ＣＰＵ１０１は、スクロール操作によって、表示されている一覧内の要素に先行又は後続する要素を表示する必要がある場合、データベース１０４Ｂから必要なファイル属性データ１０４Ｃのレコードを読み出す。そして、ＣＰＵ１０１は、読み出されたファイル属性データ１０４Ｃのレコードを用いて、日付一覧をスクロール表示する。
【０１１２】
次いで、ＣＰＵ１０１は、サムネイル画像一覧の第１位置（例えば、左上端）のサムネイル画像に対応する領域内に配置された要素を検出する（Ｂ３６）。そして、ＣＰＵ１０１は、検出された要素に示される日付が作成日又は更新日である画像のサムネイル画像を先頭とするサムネイル画像一覧を画面に表示する（Ｂ３７）。Ｂ３５で表示される日付一覧は、このサムネイル画像一覧上に重ねて表示される。なお、ＣＰＵ１０１は、日付一覧のスクロール操作によって、表示中のサムネイル画像に先行又は後続するサムネイル画像を表示する必要がある場合、データベース１０４Ｂから必要なサムネイル画像ファイル１０４Ｄを読み出す。そして、ＣＰＵ１０１は、読み出されたサムネイル画像ファイル１０４Ｄと日付一覧を表示するために読み出されたファイル属性データ１０４Ｃのレコードとを用いて、サムネイル画像の一覧をスクロール表示する。
【０１１３】
以上により、日付を示す要素に対する操作に応じて、表示されているサムネイル画像や日付を示す要素を更新することができる。
【０１１４】
なお、ユーザは、日付一覧が表示されている場合に、サムネイル画像の一覧をスクロールする操作を入力することもできる。その場合、ＣＰＵ１０１は、Ｂ３４からＢ３７までの手順における日付一覧とサムネイル画像一覧とを置き換えた手順により、スクロール操作によるスクロール量及びスクロール方向に応じてサムネイル画像の一覧をスクロール表示し、これと連動して日付一覧をスクロール表示する。
【０１１５】
以上説明したように、本実施形態にかかる電子機器および方法によれば、画像の一覧から目的の画像を容易に探し出すことができる。ＣＰＵ１０１は、外部ストレージデバイス５０に格納された複数の画像ファイル５２Ａに基づく複数の画像の一覧表示が要求された場合、それら複数の画像に対応する複数のサムネイル画像を、複数の画像に関連付けられた複数の属性に基づいてＬＣＤ２０Ａの画面に表示する。ＣＰＵ１０１は、表示された複数のサムネイル画像の内の、第１位置に配置された第１サムネイル画像上に重ねて、当該第１サムネイル画像に対応する第１画像に関連付けられた第１属性を示す第１要素を表示する。ＣＰＵ１０１は、その第１要素が選択された場合、複数の画像に関連付けられた複数の属性の内の、第１属性に先行又は後続する複数の属性を示す複数の要素を表示する。ＣＰＵ１０１は、それら複数の要素の内の第２要素が選択された場合、その第２要素に示される第２属性が関連付けられた第２画像に対応する第２サムネイル画像が第１位置に配置された複数のサムネイル画像を画面に表示する。
【０１１６】
これにより、ユーザが、画像に関連付けられた属性を示す要素の１つを選択する操作に応じて、選択された要素の属性に対応する画像の一覧が表示されるので、目的の画像を容易に探し出すことができる。
【０１１７】
なお、上述した例では、静止画や動画のような画像に対応するサムネイル画像の一覧が画面に表示される場合について説明したが、本実施形態は、画像ファイル以外のファイル（例えば、ドキュメントファイル、テキストファイル、等）にも適用可能である。例えば、ドキュメントが作成又は更新された日付を示す要素の１つを選択する操作に応じて、選択された要素の日付に対応するドキュメントの一覧（例えば、サムネイル画像の一覧やアイコンの一覧）が表示されるので、目的のドキュメントを容易に探し出すことができる。
【０１１８】
また、サムネイル画像上に表示される属性を示す要素は、日付（作成日又は更新日）に限らず、画像（ファイル）の他の属性を示す要素であってもよい。この属性には、例えば、ファイルの種類、サイズ、内容、作成場所、等が含まれ得る。したがって、日付以外の要素に基づいて、表示されるサムネイル画像の一覧を変更することもできる。
【０１１９】
なお、本実施形態のスマートフォン１０と外部ストレージ５０とは、無線ＬＡＮに限らず、Ｂｌｕｅｔｏｏｔｈ、各種の通信網、有線ＬＡＮ、ＵＳＢ、等の各種の伝送（通信）規格に基づいて接続され得る。スマートフォン１０と外部ストレージ５０とは、その伝送規格に基づく接続を介して、画像ファイルやファイルの属性データのような種々のデータをやり取りすることができる。
【０１２０】
また、本実施形態に記載された様々な機能の各々は、回路（処理回路）によって実現されてもよい。処理回路の例には、中央処理装置（ＣＰＵ）のような、プログラムされたプロセッサが含まれる。このプロセッサは、メモリに格納されたコンピュータプログラム（命令群）を実行することによって、記載された機能それぞれを実行する。このプロセッサは、電気回路を含むマイクロプロセッサであってもよい。処理回路の例には、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、マイクロコントローラ、コントローラ、ＦＰＧＡ、他の電気回路部品も含まれる。本実施形態に記載されたＣＰＵ以外の他のコンポーネントの各々もまた処理回路によって実現されてもよい。
【０１２１】
また、本実施形態の各種処理はコンピュータプログラムによって実現することができるので、このコンピュータプログラムを格納したコンピュータにより読み取り可能な記憶媒体、またはインターネット網、通信網、放送網、等を通じてこのコンピュータプログラムをコンピュータにインストールして実行するだけで、本実施形態と同様の効果を容易に実現することができる。
【０１２２】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１２３】
１０…スマートフォン、１０４…不揮発性メモリ、１０４Ａ…画像ファイル、１０４Ｂ…データベース、１０４Ｃ…ファイル属性データ、１０４Ｄ…サムネイル画像ファイル、１０９…無線ＬＡＮコントローラ、２０Ａ…ＬＣＤ、２０２…画像表示アプリケーションプログラム、３１…制御モジュール、３２…通信制御部、３３…データベース処理部、３４…表示処理部、５０…外部ストレージ、５１…無線ＬＡＮコントローラ、５２…不揮発性メモリ、５２Ａ…画像ファイル。
【図１】
2017097407.tif 000003
【図２】
2017097407.tif 000004
【図３】
2017097407.tif 000005
【図４】
2017097407.tif 000006
【図５】
2017097407.tif 000007
【図６】
2017097407.tif 000008
【図７】
2017097407.tif 000009
【図８】
2017097407.tif 000010
【図９】
2017097407.tif 000011
【図１０】
2017097407.tif 000012
【図１１】
2017097407.tif 000013