(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022179614
(43)【公開日】2022-12-02
(54)【発明の名称】画面レイアウト作製装置、画面レイアウト作製方法、および、画面レイアウト作製プログラム
(51)【国際特許分類】
G06F 3/0486 20130101AFI20221125BHJP
G06F 8/34 20180101ALI20221125BHJP
G06F 3/14 20060101ALN20221125BHJP
【FI】
G06F3/0486
G06F8/34
G06F3/14 310C
【審査請求】有
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022160748
(22)【出願日】2022-10-05
(62)【分割の表示】P 2018206080の分割
【原出願日】2018-10-31
(71)【出願人】
【識別番号】398040527
【氏名又は名称】株式会社オービック
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】馬場 健人
(72)【発明者】
【氏名】吉井 聡
(72)【発明者】
【氏名】上野 剛光
(57)【要約】
【課題】ユーザが配置したいオブジェクトを最適な配置可能位置に誘導し、作製可能なレイアウトのプレビューイメージを確認しながら極小操作で直観的に画面レイアウトを作製することができる画面レイアウト作製装置、画面レイアウト作製方法、および、画面レイアウト作製プログラムを提供することを課題とする。
【解決手段】テンプレート画面を表示させテンプレート画面に配置されたオブジェクト上において、子オブジェクトの配置位置となるドロップポイントを配置し、テンプレート画面に配置されたオブジェクト上に、所定の子オブジェクトがドロップされた場合、ドロップポイントに従って当該所定の子オブジェクトを配置する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
記憶部と制御部とを備えた画面レイアウト作製装置であって、
前記記憶部は、
階層構造を形成するユーザインタフェース画面において、親階層として配置可能な親オブジェクトおよび子階層として配置可能な子オブジェクトが決まっているオブジェクトを記憶するオブジェクト記憶手段と、
前記ユーザインタフェース画面のベース階層となるパネルの前記オブジェクトであるベースパネル上に、前記パネルである子パネルを子階層として少なくとも一つ配置したテンプレート画面を記憶する画面記憶手段と、
を備え、
前記制御部は、
前記テンプレート画面を表示させる画面表示手段と、
前記テンプレート画面に配置された前記オブジェクト上において、前記子オブジェクトの配置位置となるドロップポイントを配置するドロップポイント配置手段と、
前記テンプレート画面に配置されたオブジェクト上に、所定の前記子オブジェクトがドロップされた場合、前記ドロップポイントに従って当該所定の子オブジェクトを配置するオブジェクト配置手段と、
を備えたことを特徴とする画面レイアウト作製装置。
【請求項2】
前記画面記憶手段は、
前記ユーザインタフェース画面の前記ベース階層となる前記ベースパネル上に、前記子パネルの子要素として配置可能な前記オブジェクトが配置された、複数種類の前記子パネルのうち少なくとも一つを前記子階層として配置した前記テンプレート画面を記憶することを特徴とする請求項1に記載の画面レイアウト作製装置。
【請求項3】
前記ドロップポイントは、
当該ドロップポイントが配置された前記オブジェクトに配置可能な前記子オブジェクトの種類に応じたドロップポイントタイプが設定され、
前記オブジェクト配置手段は、
前記テンプレート画面上に、前記所定の子オブジェクトがドラッグされた場合、当該所定の子オブジェクトの種類および前記ドロップポイントタイプに基づいて、当該テンプレート画面上の当該所定の子オブジェクトを配置可能な前記ドロップポイントのみを吸着可能にさせ、当該所定の子オブジェクトがドロップされた場合、吸着可能にされた前記ドロップポイントに吸着させて当該所定の子オブジェクトを配置することを特徴とする請求項1または2に記載の画面レイアウト作製装置。
【請求項4】
前記オブジェクト配置手段は、
前記テンプレート画面上に、前記所定の子オブジェクトがドラッグされた場合、当該所定の子オブジェクトの前記種類および前記ドロップポイントタイプに基づいて、当該テンプレート画面上の当該所定の子オブジェクトを配置可能な前記ドロップポイントのみを吸着可能にさせ、当該所定の子オブジェクトがドロップされた場合、当該所定の子オブジェクトから最短距離にある前記吸着可能にされたドロップポイントに吸着させて当該所定の子オブジェクトを配置することを特徴とする請求項3に記載の画面レイアウト作製装置。
【請求項5】
前記ドロップポイント配置手段は、
更に、前記テンプレート画面に配置された前記オブジェクトおよび/または前記所定の子オブジェクト上において、当該オブジェクトおよび/または当該所定の子オブジェクトの前記子オブジェクトの配置位置となる前記ドロップポイントを配置および/または削除することを特徴とする請求項1または2に記載の画面レイアウト作製装置。
【請求項6】
前記制御部は、
前記ユーザインタフェース画面の前記ベースパネル上に、前記子パネルを少なくとも一つ配置した前記テンプレート画面を作製する画面作製手段、
を更に備えたことを特徴とする請求項1に記載の画面レイアウト作製装置。
【請求項7】
前記画面表示手段は、
縮小テンプレート画面を選択可能に一覧表示させ、前記縮小テンプレート画面が選択された場合、当該縮小テンプレート画面に対応する前記テンプレート画面に展開表示させることを特徴とする請求項1または2に記載の画面レイアウト作製装置。
【請求項8】
記憶部と制御部とを備えた画面レイアウト作製装置に実行させるための画面レイアウト作製方法であって、
前記記憶部は、
階層構造を形成するユーザインタフェース画面において、親階層として配置可能な親オブジェクトおよび子階層として配置可能な子オブジェクトが決まっているオブジェクトを記憶するオブジェクト記憶手段と、
前記ユーザインタフェース画面のベース階層となるパネルの前記オブジェクトであるベースパネル上に、前記パネルである子パネルを子階層として少なくとも一つ配置したテンプレート画面を記憶する画面記憶手段と、
を備え、
前記制御部において実行される、
前記テンプレート画面が選択された場合、当該テンプレート画面を表示させる画面表示ステップと、
前記テンプレート画面に配置された前記オブジェクト上において、前記子オブジェクトの配置位置となるドロップポイントを配置するドロップポイント配置ステップと、
前記テンプレート画面に配置されたオブジェクト上に、所定の前記子オブジェクトがドロップされた場合、前記ドロップポイントに従って当該所定の子オブジェクトを配置するオブジェクト配置ステップと、
を含むことを特徴とする画面レイアウト作製方法。
【請求項9】
記憶部と制御部とを備えた画面レイアウト作製装置に実行させるための画面レイアウト作製プログラムであって、
前記記憶部は、
階層構造を形成するユーザインタフェース画面において、親階層として配置可能な親オブジェクトおよび子階層として配置可能な子オブジェクトが決まっているオブジェクトを記憶するオブジェクト記憶手段と、
前記ユーザインタフェース画面のベース階層となるパネルの前記オブジェクトであるベースパネル上に、前記パネルである子パネルを子階層として少なくとも一つ配置したテンプレート画面を記憶する画面記憶手段と、
を備え、
前記制御部において、
前記テンプレート画面が選択された場合、当該テンプレート画面を表示させる画面表示ステップと、
前記テンプレート画面に配置された前記オブジェクト上において、前記子オブジェクトの配置位置となるドロップポイントを配置するドロップポイント配置ステップと、
前記テンプレート画面に配置されたオブジェクト上に、所定の前記子オブジェクトがドロップされた場合、前記ドロップポイントに従って当該所定の子オブジェクトを配置するオブジェクト配置ステップと、
を実行させるための画面レイアウト作製プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画面レイアウト作製装置、画面レイアウト作製方法、および、画面レイアウト作製プログラムに関する。
【背景技術】
【0002】
特許文献1-2には、表示画面上に画面構成部品を多層化して配置することができる構成が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平6-282395号公報
【特許文献2】特開2002-073004号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記特許文献1-2記載の発明においては、ツリー構造を形成する画面レイアウトの作製において、親階層および子階層が予め設定されたパネル、セルおよびリーフの3つの要素を用いてユーザインタフェース画面を作製することができなかったという課題があった。
【0005】
本発明は、上記問題点に鑑みてなされたものであって、ユーザが配置したいオブジェクトを最適な配置可能位置に誘導し、作製可能なレイアウトのプレビューイメージを確認しながら極小操作で直観的に画面レイアウトを作製することができる画面レイアウト作製装置、画面レイアウト作製方法、および、画面レイアウト作製プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、本発明に係る画面レイアウト作製装置は、記憶部と制御部とを備えた画面レイアウト作製装置であって、前記記憶部は、階層構造を形成するユーザインタフェース画面において、親階層として配置可能な親オブジェクトおよび子階層として配置可能な子オブジェクトが決まっているオブジェクトを記憶するオブジェクト記憶手段と、前記ユーザインタフェース画面のベース階層となるパネルの前記オブジェクトであるベースパネル上に、前記パネルであるタイトルバーパネル、コマンドバーパネル、および/または、前記親オブジェクトを縦横の直線で分割した格子状レイアウトを実現するグリッドパネルを子階層として配置したテンプレート画面を記憶する画面記憶手段と、を備え、前記制御部は、前記テンプレート画面を表示させる画面表示手段と、前記テンプレート画面に配置された前記オブジェクト上において、前記子オブジェクトの配置位置となるドロップポイントを配置するドロップポイント配置手段と、前記テンプレート画面に配置されたオブジェクト上に、所定の前記子オブジェクトがドロップされた場合、前記ドロップポイントに従って当該所定の子オブジェクトを配置するオブジェクト配置手段と、を備えたことを特徴とする。
【0007】
また、本発明に係る画面レイアウト作製装置において、前記ドロップポイントは、当該ドロップポイントが配置された前記オブジェクトに配置可能な前記子オブジェクトの種類に応じたドロップポイントタイプが設定され、前記オブジェクト配置手段は、前記テンプレート画面上に、前記所定の子オブジェクトがドラッグされた場合、当該所定の子オブジェクトの種類および前記ドロップポイントタイプに基づいて、当該テンプレート画面上の当該所定の子オブジェクトを配置可能な前記ドロップポイントのみを吸着可能にさせ、当該所定の子オブジェクトがドロップされた場合、吸着可能にされた前記ドロップポイントに吸着させて当該所定の子オブジェクトを配置することを特徴とする。
【0008】
また、本発明に係る画面レイアウト作製装置において、前記オブジェクト配置手段は、前記テンプレート画面上に、前記所定の子オブジェクトがドラッグされた場合、当該所定の子オブジェクトの前記種類および前記ドロップポイントタイプに基づいて、当該テンプレート画面上の当該所定の子オブジェクトを配置可能な前記ドロップポイントのみを吸着可能にさせ、当該所定の子オブジェクトがドロップされた場合、当該所定の子オブジェクトから最短距離にある前記吸着可能にされたドロップポイントに吸着させて当該所定の子オブジェクトを配置することを特徴とする。
【0009】
また、本発明に係る画面レイアウト作製装置において、前記ドロップポイント配置手段は、更に、前記テンプレート画面に配置された前記オブジェクトおよび/または前記所定の子オブジェクト上において、当該オブジェクトおよび/または当該所定の子オブジェクトの前記子オブジェクトの配置位置となる前記ドロップポイントを配置および/または削除することを特徴とする。
【0010】
また、本発明に係る画面レイアウト作製装置において、前記テンプレート画面は、前記ベースパネル上に、前記タイトルバーパネル、前記コマンドバーパネル、および、前記グリッドパネルを子階層として配置した空レイアウト画面であることを特徴とする。
【0011】
また、本発明に係る画面レイアウト作製装置において、前記テンプレート画面は、前記空レイアウト画面において、前記コマンドバーパネル上に、リーフの前記オブジェクトであるコマンドバーボタンを子階層として配置し、前記グリッドパネル上に、前記親オブジェクトを縦横の直線で分割した前記格子状レイアウトを実現するセルであるグリッドセルを子階層として配置し、当該グリッドセル上に、前記グリッドパネルを継承した前記リーフをまとめて扱うことができる前記パネルである入力パネルを子階層として配置し、当該入力パネル上に、グリッドセルを子階層として配置し、当該グリッドセル上に、前記リーフを横方向に並べて配置できる前記パネルであるスタックパネルを子階層として配置し、当該スタックパネル上に、前記リーフであるテキストボックス、ラベル、チェックボックス、ラジオボタンおよび/またはセレクトボックスを子階層として配置した基本入力レイアウト画面であることを特徴とする。
【0012】
また、本発明に係る画面レイアウト作製装置において、前記テンプレート画面は、前記基本入力レイアウト画面において、前記グリッドセル上に、前記パネルであるテーブルパネルを子階層として配置し、当該テーブルパネル上に、前記セルであるテーブルセルを子階層として配置したテーブルレイアウト画面であることを特徴とする。
【0013】
また、本発明に係る画面レイアウト作製装置において、前記テンプレート画面は、前記基本入力レイアウト画面において、前記グリッドセル上に、前記パネルであるタブパネルを子階層として配置し、当該タブパネル上に、グリッドパネルを子階層として配置したタブレイアウト画面であることを特徴とする。
【0014】
また、本発明に係る画面レイアウト作製装置において、前記制御部は、前記ユーザインタフェース画面の前記ベースパネル上に、前記タイトルバーパネル、前記コマンドバーパネル、および/または、前記グリッドパネルを配置した前記テンプレート画面を作製する画面作製手段、を更に備えたことを特徴とする。
【0015】
また、本発明に係る画面レイアウト作製装置において、前記画面表示手段は、縮小テンプレート画面を選択可能に一覧表示させ、前記縮小テンプレート画面が選択された場合、当該縮小テンプレート画面に対応する前記テンプレート画面に展開表示させることを特徴とする。
【0016】
また、本発明に係る画面レイアウト作製方法は、記憶部と制御部とを備えた画面レイアウト作製装置に実行させるための画面レイアウト作製方法であって、前記記憶部は、階層構造を形成するユーザインタフェース画面において、親階層として配置可能な親オブジェクトおよび子階層として配置可能な子オブジェクトが決まっているオブジェクトを記憶するオブジェクト記憶手段と、前記ユーザインタフェース画面のベース階層となるパネルの前記オブジェクトであるベースパネル上に、前記パネルであるタイトルバーパネル、コマンドバーパネル、および/または、前記親オブジェクトを縦横の直線で分割した格子状レイアウトを実現するグリッドパネルを子階層として配置したテンプレート画面を記憶する画面記憶手段と、を備え、前記制御部において実行される、前記テンプレート画面が選択された場合、当該テンプレート画面を表示させる画面表示ステップと、前記テンプレート画面に配置された前記オブジェクト上において、前記子オブジェクトの配置位置となるドロップポイントを配置するドロップポイント配置ステップと、前記テンプレート画面に配置されたオブジェクト上に、所定の前記子オブジェクトがドロップされた場合、前記ドロップポイントに従って当該所定の子オブジェクトを配置するオブジェクト配置ステップと、を含むことを特徴とする。
【0017】
また、本発明に係る画面レイアウト作製プログラムは、記憶部と制御部とを備えた画面レイアウト作製装置に実行させるための画面レイアウト作製プログラムであって、前記記憶部は、階層構造を形成するユーザインタフェース画面において、親階層として配置可能な親オブジェクトおよび子階層として配置可能な子オブジェクトが決まっているオブジェクトを記憶するオブジェクト記憶手段と、前記ユーザインタフェース画面のベース階層となるパネルの前記オブジェクトであるベースパネル上に、前記パネルであるタイトルバーパネル、コマンドバーパネル、および/または、前記親オブジェクトを縦横の直線で分割した格子状レイアウトを実現するグリッドパネルを子階層として配置したテンプレート画面を記憶する画面記憶手段と、を備え、前記制御部において、前記テンプレート画面が選択された場合、当該テンプレート画面を表示させる画面表示ステップと、前記テンプレート画面に配置された前記オブジェクト上において、前記子オブジェクトの配置位置となるドロップポイントを配置するドロップポイント配置ステップと、前記テンプレート画面に配置されたオブジェクト上に、所定の前記子オブジェクトがドロップされた場合、前記ドロップポイントに従って当該所定の子オブジェクトを配置するオブジェクト配置ステップと、を実行させることを特徴とする。
【発明の効果】
【0018】
本発明によれば、ドラッグオブジェクトのタイプに応じて配置対象を絞り込むことで、高度な画面レイアウトを簡単に実現できるという効果を奏する。
【図面の簡単な説明】
【0019】
【
図1】
図1は、本実施形態における画面レイアウト作製装置の構成の一例を示すブロック図である。
【
図2】
図2は、本実施形態におけるオブジェクトの一例を示す図である。
【
図3】
図3は、本実施形態における画面レイアウト作製装置の処理の一例を示すフローチャートである。
【
図4】
図4は、本実施形態におけるテンプレート一覧の一例を示す図である。
【
図5】
図5は、本実施形態におけるテンプレート画面および階層構造の一例を示す図である。
【
図6】
図6は、本実施形態におけるテンプレート画面および階層構造の一例を示す図である。
【
図7】
図7は、本実施形態におけるテンプレート画面および階層構造の一例を示す図である。
【
図8】
図8は、本実施形態におけるテンプレート画面および階層構造の一例を示す図である。
【
図9】
図9は、本実施形態におけるドロップポイント配置の一例を示す図である。
【
図10】
図10は、本実施形態におけるドロップポイント配置の一例を示す図である。
【
図11】
図11は、本実施形態におけるドロップポイント配置の一例を示す図である。
【
図12】
図12は、本実施形態におけるドロップポイント配置の一例を示す図である。
【
図13】
図13は、本実施形態におけるオブジェクト配置処理の一例を示すフローチャートである。
【
図14】
図14は、本実施形態におけるツールアイテムの一例を示す図である。
【発明を実施するための形態】
【0020】
本発明の実施形態を図面に基づいて詳細に説明する。なお、本発明は本実施形態により限定されるものではない。
【0021】
[1.概要]
まず、本発明の概要を説明する。
【0022】
従来から、ユーザライクにアプリケーション画面を開発できるツールが存在しているが、マウスカーソルを対象の場所まで移動させないとレイアウトが作製できなかったり、単純なレイアウトしか作製できず、グリッド形式等の複雑な画面レイアウトを作製できなかったりしていた。
【0023】
そこで、本実施形態においては、ドラッグオブジェクトのタイプに応じて配置対象を変化させ、直感的なオブジェクト配置を可能とすることで、整然かつ高度な画面レイアウトを簡単に実現できるようにしている。
【0024】
[2.構成]
本実施形態に係る画面レイアウト作製装置100の構成の一例について、
図1を参照して説明する。
図1は、本実施形態における画面レイアウト作製装置100の構成の一例を示すブロック図である。
【0025】
画面レイアウト作製装置100は、市販のデスクトップ型パーソナルコンピュータである。なお、画面レイアウト作製装置100は、デスクトップ型パーソナルコンピュータのような据置型情報処理装置に限らず、市販されているノート型パーソナルコンピュータ、PDA(Personal Digital Assistants)、スマートフォン、タブレット型パーソナルコンピュータなどの携帯型情報処理装置であってもよい。
【0026】
画面レイアウト作製装置100は、制御部102と通信インターフェース部104と記憶部106と入出力インターフェース部108と、を備えている。画面レイアウト作製装置100が備えている各部は、任意の通信路を介して通信可能に接続されている。
【0027】
通信インターフェース部104は、ルータ等の通信装置および専用線等の有線または無線の通信回線を介して、画面レイアウト作製装置100をネットワーク300に通信可能に接続する。通信インターフェース部104は、他の装置と通信回線を介してデータを通信する機能を有する。ここで、ネットワーク300は、画面レイアウト作製装置100とサーバ200とを相互に通信可能に接続する機能を有し、例えばインターネットやLAN(Local Area Network)等である。
【0028】
記憶部106には、各種のデータベース、テーブル、およびファイルなどが格納される。記憶部106には、OS(Operating System)と協働してCPU(Central Processing Unit)に命令を与えて各種処理を行うためのコンピュータプログラムが記録される。記憶部106として、例えば、RAM(Random Access Memory)・ROM(Read Only Memory)等のメモリ装置、ハードディスクのような固定ディスク装置、フレキシブルディスク、および光ディスク等を用いることができる。記憶部106は、オブジェクトファイル106aと、画面ファイル106bとを備えている。
【0029】
オブジェクトファイル106aは、階層構造を形成するユーザインタフェース画面において、親階層として配置可能な親オブジェクトおよび子階層として配置可能な子オブジェクトが決まっているオブジェクトを記憶する。ここで、オブジェクトは、セル、パネル、リーフ、または、テーブルセル等であってもよい。また、オブジェクトファイル106aは、オブジェクトに紐付けてオブジェクト識別子(例えば、ID等)およびオブジェクト位置データ等を記憶してもよい。
【0030】
ここで、
図2を参照して、本実施形態におけるオブジェクトの一例について説明する。
図2は、本実施形態におけるオブジェクトの一例を示す図である。
【0031】
図2に示すように、セルは、ルートセル、グリッドセル、および/または、タブセル等を含んでいてもよい。また、
図2に示すように、パネルは、ベースパネル、タイトルバーパネル、コマンドバーパネル、グリッドパネル、スタックパネル、入力パネル、タブパネル、および/または、テーブルパネル等を含んでいてもよい。また、
図2に示すように、リーフは、ボタン、コマンドバーボタン、テキストボックス、ラベル、チェックボックス、ラジオボタン、および/または、セレクトボックス等を含んでいてもよい。また、
図2に示すように、テーブルセルは、カラムセル、ボタンセル、テキストボックスセル、ラベルセル、チェックボックスセル、および/または、セレクトボックスセル等を含んでいてもよい。
【0032】
図1に戻り、画面ファイル106bは、ユーザインタフェース画面を記憶する。ここで、画面ファイル106bは、ユーザインタフェース画面のベース階層となるパネルのオブジェクトであるベースパネル上に、パネルであるタイトルバーパネル、コマンドバーパネル、および/または、親オブジェクトを縦横の直線で分割した格子状レイアウトを実現するグリッドパネルを子階層として配置したテンプレート画面を記憶していてもよい。ここで、ユーザインタフェース画面のベース階層となるベースパネルは、セルのオブジェクトであるルートセルに重畳されていてもよい。また、テンプレート画面は、ベースパネル上に、タイトルバーパネル、コマンドバーパネル、および、グリッドパネルを子階層として配置した空レイアウト画面であってもよい。また、テンプレート画面は、空レイアウト画面において、コマンドバーパネル上に、リーフのオブジェクトであるコマンドバーボタンを子階層として配置し、グリッドパネル上に、親オブジェクトを縦横の直線で分割した格子状レイアウトを実現するセルであるグリッドセルを子階層として配置し、当該グリッドセル上に、グリッドパネルを継承したリーフをまとめて扱うことができるパネルである入力パネルを子階層として配置し、当該入力パネル上に、グリッドセルを子階層として配置し、当該グリッドセル上に、リーフを横方向に並べて配置できるパネルであるスタックパネルを子階層として配置し、当該スタックパネル上に、リーフであるテキストボックス、ラベル、チェックボックス、ラジオボタンおよび/またはセレクトボックスを子階層として配置した基本入力レイアウト画面であってもよい。また、テンプレート画面は、基本入力レイアウト画面において、グリッドセル上に、パネルであるテーブルパネルを子階層として配置し、当該テーブルパネル上に、セルであるテーブルセルを子階層として配置したテーブルレイアウト画面であってもよい。また、テンプレート画面は、基本入力レイアウト画面において、グリッドセル上に、パネルであるタブパネルを子階層として配置し、当該タブパネル上に、グリッドパネルを子階層として配置したタブレイアウト画面であってもよい。また、画面ファイル106bは、ユーザインタフェース画面上に子オブジェクトが配置されたユーザ配置画面を記憶してもよい。また、画面ファイル106bは、ユーザインタフェース画面上に配置されたドロップポイントに紐付けてドロップポイント識別子(例えば、ID等)、ドロップポイントタイプおよびドロップポイント配置データ(例えば、列番号および行番号等)等を記憶してもよい。
【0033】
入出力インターフェース部108には、入力装置112および出力装置114が接続されている。出力装置114には、モニタ(タッチパネルを含む)の他、スピーカやプリンタを用いることができる。入力装置112には、キーボード、マウス、およびマイクの他、マウスと協働してポインティングデバイス機能を実現するモニタを用いることができる。なお、以下では、出力装置114をモニタ114またはプリンタ114とし、入力装置112をキーボード112またはマウス112として記載する場合がある。
【0034】
制御部102は、画面レイアウト作製装置100を統括的に制御するCPU等である。制御部102は、OS等の制御プログラム・各種の処理手順等を規定したプログラム・所要データなどを格納するための内部メモリを有し、格納されているこれらのプログラムに基づいて種々の情報処理を実行する。制御部102は、機能概念的に、画面作製部102aと、画面表示部102bと、ドロップポイント配置部102cと、オブジェクト配置部102dとを備えている。
【0035】
画面作製部102aは、ユーザインタフェース画面を作製する。ここで、画面作製部102aは、ユーザインタフェース画面のベースパネル上に、タイトルバーパネル、コマンドバーパネル、および/または、グリッドパネルを配置したテンプレート画面を作製してもよい。画面作製部102aは、ユーザインタフェース画面を画面ファイル106bに格納してもよい。
【0036】
画面表示部102bは、ユーザインタフェース画面(テンプレート画面)を表示させる。ここで、画面表示部102bは、縮小テンプレート画面を選択可能に一覧表示させ、縮小テンプレート画面が選択された場合、当該縮小テンプレート画面に対応するテンプレート画面に展開表示させてもよい。
【0037】
ドロップポイント配置部102cは、ユーザインタフェース画面(テンプレート画面)に配置されたオブジェクト上において、子オブジェクトの配置位置となるドロップポイントを配置する。ここで、ドロップポイントは、当該ドロップポイントが配置されたオブジェクトに配置可能な子オブジェクトの種類に応じたドロップポイントタイプが設定されてもよい。また、ドロップポイント配置部102cは、ユーザインタフェース画面(テンプレート画面)に配置されたオブジェクトおよび/または所定の子オブジェクト上において、当該オブジェクトおよび/または当該所定の子オブジェクトの子オブジェクトの配置位置となるドロップポイントを配置および/または削除してもよい。また、ドロップポイント配置部102cは、ドロップポイントが配置されたユーザインタフェース画面を画面ファイル106bに格納してもよい。
【0038】
オブジェクト配置部102dは、ユーザインタフェース画面(テンプレート画面)に配置されたオブジェクト上に、所定の子オブジェクトがドロップされた場合、ドロップポイントに従って当該所定の子オブジェクトを配置する。ここで、オブジェクト配置部102dは、ユーザインタフェース画面(テンプレート画面)上に、所定の子オブジェクトがドラッグされた場合、当該所定の子オブジェクトの種類およびドロップポイントタイプに基づいて、当該ユーザインタフェース画面(テンプレート画面)上の当該所定の子オブジェクトを配置可能なドロップポイントのみを吸着可能にさせ、当該所定の子オブジェクトがドロップされた場合、吸着可能にされたドロップポイントに吸着させて当該所定の子オブジェクトを配置してもよい。また、オブジェクト配置部102dは、ユーザインタフェース画面(テンプレート画面)上に、所定の子オブジェクトがドラッグされた場合、当該所定の子オブジェクトの種類およびドロップポイントタイプに基づいて、当該ユーザインタフェース画面(テンプレート画面)上の当該所定の子オブジェクトを配置可能なドロップポイントのみを吸着可能にさせ、当該所定の子オブジェクトがドロップされた場合、当該所定の子オブジェクトから最短距離にある吸着可能にされたドロップポイントに吸着させて当該所定の子オブジェクトを配置してもよい。また、オブジェクト配置部102dは、ユーザインタフェース画面(テンプレート画面)上に所定の子オブジェクトが配置されたユーザ配置画面を取得してもよい。また、オブジェクト配置部102dは、ユーザ配置画面を画面ファイル106bに格納してもよい。
【0039】
[3.具体例]
本実施形態の具体例について、
図3から
図14を参照して説明する。
【0040】
[画面レイアウト作製処理]
ここで、
図3から
図14を参照して、本実施形態における画面レイアウト作製処理の一例について説明する。
図3は、本実施形態における画面レイアウト作製装置100の処理の一例を示すフローチャートである。
【0041】
図3に示すように、画面表示部102bは、縮小テンプレート画面を選択可能に出力装置114に一覧表示させる(ステップSA-1)。
【0042】
そして、画面表示部102bは、ユーザにより入力装置112を介して縮小テンプレート画面が選択された場合、当該縮小テンプレート画面に対応するテンプレート画面に展開して出力装置114に表示させる(ステップSA-2)。
【0043】
そして、ドロップポイント配置部102cは、テンプレート画面に配置されたオブジェクト上において、当該オブジェクトに配置可能な子オブジェクトの種類に応じたドロップポイントタイプが設定された、子オブジェクトの配置位置となるドロップポイントを配置する(ステップSA-3)。
【0044】
そして、オブジェクト配置部102dは、テンプレート画面上に、追加または移動を目的として、ユーザにより入力装置112を介して所定の子オブジェクトがドラッグされた場合、当該所定の子オブジェクトの種類およびドロップポイントタイプに基づいて、当該テンプレート画面上の当該所定の子オブジェクトを配置可能なドロップポイントのみを吸着可能にさせ、ユーザにより入力装置112を介して当該所定の子オブジェクトがドロップされた場合、当該所定の子オブジェクトから最短距離にある吸着可能にされたドロップポイントに吸着させて当該所定の子オブジェクトを配置したユーザ配置画面を取得する(ステップSA-4)。
【0045】
そして、ドロップポイント配置部102cは、ユーザ配置画面に配置されたオブジェクトおよび/または所定の子オブジェクト上において、当該オブジェクトおよび/または当該所定の子オブジェクトの子オブジェクトの配置位置となるドロップポイントを配置および/または削除し、ドロップポイントが再配置されたユーザ配置画面を画面ファイル106bに格納し(ステップSA-5)、処理を終了する。
【0046】
ここで、
図4を参照して、本実施形態におけるテンプレート一覧の一例について説明する。
図4は、本実施形態におけるテンプレート一覧の一例を示す図である。
【0047】
図4に示すように、本実施形態においては、基本入力レイアウト画面、一覧レイアウト画面、ヘッダ・明細レイアウト画面(テーブルレイアウト画面またはタブレイアウト画面等)、および、空レイアウト画面の縮小テンプレート画面を選択可能に一覧表示させたテンプレート一覧を表示させる。
【0048】
また、
図5から
図8を参照して、本実施形態におけるテンプレート画面および階層構造の一例について説明する。
図5から
図8は、本実施形態におけるテンプレート画面および階層構造の一例を示す図である。
【0049】
図5は、本実施形態における空レイアウト画面を示しており、ルートセルに重畳されたベースパネル上に、タイトルバーパネル、コマンドバーパネル、および、グリッドパネルが子階層として画面上から並列に配置されている。
【0050】
また、
図6は、本実施形態における基本入力レイアウト画面を示しており、
図5に示す空レイアウト画面において、コマンドバーパネル上に、コマンドバーボタンが子階層として配置され、グリッドパネル上に、グリッドセルが子階層として配置され、当該グリッドセル上に、入力パネルが子階層として配置され、当該入力パネル上に、グリッドセルが子階層として配置され、当該グリッドセル上に、スタックパネルが子階層として配置され、当該スタックパネル上に、テキストボックスまたはラベルが子階層として配置されている。
【0051】
また、
図7は、本実施形態におけるテーブルレイアウト画面を示しており、
図6に示す基本入力レイアウト画面において、グリッドセル上に、テーブルパネルが子階層として配置され、当該テーブルパネル上に、カラムセルおよびテキストボックスセルが子階層として配置されている。
【0052】
また、
図8は、本実施形態におけるタブレイアウト画面を示しており、
図6に示す基本入力レイアウト画面において、グリッドセル上に、タブパネルが子階層として配置され、当該タブパネル上に、グリッドパネルが子階層として配置され、当該グリッドパネル上に、グリッドセルが子階層として配置され、当該グリッドセル上に、入力パネルが子階層として配置され、当該入力パネル上に、グリッドセルが子階層として配置され、当該グリッドセル上に、スタックパネルが子階層として配置され、当該スタックパネル上に、テキストボックスまたはラベルが子階層として配置されている。
【0053】
また、
図9から
図12を参照して、本実施形態におけるドロップポイント配置の一例について説明する。
図9から
図12は、本実施形態におけるドロップポイント配置の一例を示す図である。
【0054】
図9に示すように、本実施形態においては、空レイアウト画面に配置されたコマンドバーパネルおよびグリッドパネル上において、ID(例えば、コントロールID等)、列番号および行番号が設定された、子オブジェクトの配置位置となるドロップポイントが配置されている。
【0055】
また、
図10に示すように、本実施形態においては、基本入力レイアウト画面に配置されたスタックパネル、コマンドバーパネルおよびグリッドパネル上において、ID、列番号および行番号が設定された、子オブジェクトの配置位置となるドロップポイントが配置されている。
【0056】
また、
図11に示すように、本実施形態においては、テーブルレイアウト画面に配置されたスタックパネル、テーブルパネル、コマンドバーパネルおよびグリッドパネル上において、ID、列番号および行番号が設定された、子オブジェクトの配置位置となるドロップポイントが配置されている。ここで、本実施形態においては、テーブルパネルにオブジェクトが配置された場合、セルが置き換わってもよい。例えば、本実施形態においては、「列2行0」にラベルセルが配置されている際に、「列2行0」にテキストボックスがドロップされた場合、「列2行0」がテキストボックスセルに置き換わってもよい。
【0057】
また、
図12に示すように、本実施形態においては、タブレイアウト画面に配置されたスタックパネル、コマンドバーパネルおよびグリッドパネル上において、ID、列番号および行番号が設定された、子オブジェクトの配置位置となるドロップポイントが配置されている。
【0058】
また、
図13および
図14を参照して、本実施形態におけるオブジェクト配置処理の一例について説明する。
図13は、本実施形態におけるオブジェクト配置処理の一例を示すフローチャートである。
【0059】
図13に示すように、本実施形態においては、表示されたユーザインタフェース画面に新たに追加するためのオブジェクト(ツールアイテム)、または、配置済のオブジェクト(コントロール)がユーザによりドラッグされた場合(ステップSB-1)、ドラッグされたオブジェクトがユーザインタフェース画面に配置済のオブジェクトであるか否かを判定する(ステップSB-2)。
【0060】
そして、
図13に示すように、本実施形態においては、ドラッグされたオブジェクトがユーザインタフェース画面に配置済のオブジェクトであると判定した場合(ステップSB-2:Yes)、ドラッグされたオブジェクトに設定されたオブジェクトID(ドラッグアイテムID)およびドロップポイントタイプを記録し(ステップSB-3)、処理をステップSB-5に移行させる。
【0061】
一方、
図13に示すように、本実施形態においては、ドラッグされたオブジェクトがユーザインタフェース画面に配置済のオブジェクトではないと判定した場合(ステップSB-2:No)、ツールアイテムのツールアイテムID(ドラッグアイテムID)およびドロップポイントタイプ(複数の場合もあり)を記録する(ステップSB-4)。
【0062】
そして、
図13に示すように、本実施形態においては、記録しているドロップポイントタイプに対応した、ユーザインタフェース画面上のドロップポイントを有効化し(ステップSB-5)、有効化されているドロップポイントから最小距離にあるドロップポイントをアクティブ化する(ステップSB-6)。
【0063】
そして、
図13に示すように、本実施形態においては、ユーザによりドラッグされたオブジェクトがリリース(ドロップ)された場合(ステップSB-7)、アクティブ状態のドロップポイントのドロップポイントID、列番号および行番号を特定して記録し(ステップSB-8)、ドロップされたオブジェクトが配置済のものを移動したものであるか否かを判定する(ステップSB-9)。
【0064】
そして、
図13に示すように、本実施形態においては、ドロップされたオブジェクトが配置済のものを移動したものであると判定した場合(ステップSB-9:Yes)、ドロップされたオブジェクトのドラッグアイテムIDに対応するオブジェクトを記録し(ステップSB-10)、処理をステップSB-12に移行させる。
【0065】
一方、
図13に示すように、本実施形態においては、ドロップされたオブジェクトが新たに追加したものであると判定した場合(ステップSB-9:No)、記録されたドラッグアイテムIDおよびドロップポイントIDに基づいて生成インスタンス(生成オブジェクト)を決定して生成する(ステップSB-11)。
【0066】
ここで、
図14を参照して、本実施形態におけるツールアイテムの一例について説明する。
図14は、本実施形態におけるツールアイテムの一例を示す図である。
【0067】
図14に示すように、ユーザインタフェース画面に新たに追加するツールアイテムは、ユーザインタフェース画面上へのドロップ時に配置される場所(パネル)に応じて、生成されるインスタンスが変化する。
【0068】
図13に戻り、本実施形態においては、ドロップポイントIDに対応する配置済のオブジェクト(コントロール)の子階層としてオブジェクトを追加し(ステップSB-12)、追加したオブジェクトが配置済のものを移動したものであるか否かを判定する(ステップSB-13)。なお、本実施形態において、子階層としてどこに追加するかは、記録されている列番号および行番号を使用する。
【0069】
そして、
図13に示すように、本実施形態においては、追加したオブジェクトが配置済のものを移動したものであると判定した場合(ステップSB-13:Yes)、追加したオブジェクトの親階層が記録している子階層のデータから、追加したオブジェクトのドラッグアイテムIDを削除し(ステップSB-14)、処理を終了する。
【0070】
一方、
図13に示すように、本実施形態においては、追加したオブジェクトが配置済のものを移動したものではないと判定した場合(ステップSB-13:No)、処理を終了する。
【0071】
[4.他の実施形態]
本発明は、上述した実施形態以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施形態にて実施されてよいものである。
【0072】
例えば、実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。
【0073】
また、本明細書中や図面中で示した処理手順、制御手順、具体的名称、各処理の登録データや検索条件等のパラメータを含む情報、画面例、データベース構成については、特記する場合を除いて任意に変更することができる。
【0074】
また、画面レイアウト作製装置100に関して、図示の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。
【0075】
例えば、画面レイアウト作製装置100が備える処理機能、特に制御部102にて行われる各処理機能については、その全部または任意の一部を、CPUおよび当該CPUにて解釈実行されるプログラムにて実現してもよく、また、ワイヤードロジックによるハードウェアとして実現してもよい。尚、プログラムは、本実施形態で説明した処理を情報処理装置に実行させるためのプログラム化された命令を含む一時的でないコンピュータ読み取り可能な記録媒体に記録されており、必要に応じて画面レイアウト作製装置100に機械的に読み取られる。すなわち、ROMまたはHDD(Hard Disk Drive)などの記憶部などには、OSと協働してCPUに命令を与え、各種処理を行うためのコンピュータプログラムが記録されている。このコンピュータプログラムは、RAMにロードされることによって実行され、CPUと協働して制御部を構成する。
【0076】
また、このコンピュータプログラムは、画面レイアウト作製装置100に対して任意のネットワークを介して接続されたアプリケーションプログラムサーバに記憶されていてもよく、必要に応じてその全部または一部をダウンロードすることも可能である。
【0077】
また、本実施形態で説明した処理を実行するためのプログラムを、一時的でないコンピュータ読み取り可能な記録媒体に格納してもよく、また、プログラム製品として構成することもできる。ここで、この「記録媒体」とは、メモリーカード、USB(Universal Serial Bus)メモリ、SD(Secure Digital)カード、フレキシブルディスク、光磁気ディスク、ROM、EPROM(Erasable Programmable Read Only Memory)、EEPROM(登録商標)(Electrically Erasable and Programmable Read Only Memory)、CD-ROM(Compact Disk Read Only Memory)、MO(Magneto-Optical disk)、DVD(Digital Versatile Disk)、および、Blu-ray(登録商標) Disc等の任意の「可搬用の物理媒体」を含むものとする。
【0078】
また、「プログラム」とは、任意の言語または記述方法にて記述されたデータ処理方法であり、ソースコードまたはバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、OSに代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、本実施形態に示した各装置において記録媒体を読み取るための具体的な構成および読み取り手順ならびに読み取り後のインストール手順等については、周知の構成や手順を用いることができる。
【0079】
記憶部106に格納される各種のデータベース等は、RAM、ROM等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、および、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラム、テーブル、データベース、および、ウェブページ用ファイル等を格納する。
【0080】
また、画面レイアウト作製装置100は、既知のパーソナルコンピュータまたはワークステーション等の情報処理装置として構成してもよく、また、任意の周辺装置が接続された当該情報処理装置として構成してもよい。また、画面レイアウト作製装置100は、当該装置に本実施形態で説明した処理を実現させるソフトウェア(プログラムまたはデータ等を含む)を実装することにより実現してもよい。
【0081】
更に、装置の分散・統合の具体的形態は図示するものに限られず、その全部または一部を、各種の付加等に応じてまたは機能負荷に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。すなわち、上述した実施形態を任意に組み合わせて実施してもよく、実施形態を選択的に実施してもよい。
【産業上の利用可能性】
【0082】
本発明は、アプリケーション画面を利用・開発する様々な業界において有用である。
【符号の説明】
【0083】
100 画面レイアウト作製装置
102 制御部
102a 画面作製部
102b 画面表示部
102c ドロップポイント配置部
102d オブジェクト配置部
104 通信インターフェース部
106 記憶部
106a オブジェクトファイル
106b 画面ファイル
108 入出力インターフェース部
112 入力装置
114 出力装置
200 サーバ
300 ネットワーク