JP2009211713A - ユーザインタフェース制御装置および方法 - Google Patents

ユーザインタフェース制御装置および方法 Download PDF

Info

Publication number
JP2009211713A
JP2009211713A JP2009122567A JP2009122567A JP2009211713A JP 2009211713 A JP2009211713 A JP 2009211713A JP 2009122567 A JP2009122567 A JP 2009122567A JP 2009122567 A JP2009122567 A JP 2009122567A JP 2009211713 A JP2009211713 A JP 2009211713A
Authority
JP
Japan
Prior art keywords
control
conflict
user interface
setting value
printer driver
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.)
Granted
Application number
JP2009122567A
Other languages
English (en)
Other versions
JP2009211713A5 (ja
JP5025684B2 (ja
Inventor
Tomonori Minagawa
智徳 皆川
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2009122567A priority Critical patent/JP5025684B2/ja
Publication of JP2009211713A publication Critical patent/JP2009211713A/ja
Publication of JP2009211713A5 publication Critical patent/JP2009211713A5/ja
Application granted granted Critical
Publication of JP5025684B2 publication Critical patent/JP5025684B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

【課題】 特定の項目が設定不可となった理由を表示する機能を、理由検知の漏れ等を起こすことなく実現し、開発者の作業工数や人為的ミスの低減が可能なユーザインタフェース制御装置および方法を提供すること。
【解決手段】 設定データ間に生じる不整合を回避するためのルールがコンフリクト処理ルール記述ファイル(301)に記述される。このコンフリクト処理ルール記述ファイル(301)には、特定のコンフリクト処理ルールの適用後、所定の設定項目の状態を直接変更不可とするよう指示するための命令が記述される。これに加えて、その命令によって前記直接変更不可とされた理由を示す識別子も記述することが可能である。推論エンジン(302)はこのコンフリクト処理ルール記述ファイル(301)を参照し、入力設定値がいずれかのコンフリクト処理ルールの適用対象となったときに当該ルールを適用する。
【選択図】 図3

Description

本発明は、ユーザインタフェースを介して入力される設定データの間に生じる不整合を回避するためのユーザインタフェース制御装置および方法に関する。
ユーザインタフェース(以下、「UI」ともいう。)を介してユーザから複数の設定値の入力を受け付け、それらの設定値に基づき制御される機器は、数多くある。ホストコンピュータに接続され、そのホストコンピュータにおいて設定された情報に基づき画像形成処理を行う画像形成システム(プリンタシステム)はその一例である。プリンタシステムのホストコンピュータは一般に、印刷動作を制御するいわゆるプリンタドライバ、およびユーザからの印刷設定等を受け付けるUIを含む印刷処理関連プログラムを有する。
印刷処理関連プログラムは、UIを介してユーザから設定値の入力を受け付ける度に、それまでに設定された複数の設定値の中で関連する設定値の値との関係を評価し、設定値間の不整合(コンフリクト)がないかどうかを判別する。コンフリクトの例としては、記録媒体としてセットされたOHPシートに対して両面印刷を行わせるような設定等のユーザにとって不都合と予想される設定や、プリンタに不可能な動作を行わせるような設定等がある。
コンフリクトがあった場合には、それを回避するためのコンフリクト処理を実施する必要がある。
従来より、コンフリクト処理が必要となる複数の設定値の条件(コンフリクト処理ルール)を一覧としてまとめてファイル等に保存しておき、このファイルをコンフリクト処理用プログラムに読み込ませることで、コンフリクト処理を行うものがある。かかる方式は、コンフリクト処理用プログラムが特定の設定値に依存することなく汎用的に利用できるという点で優れている。
ところで、コンフリクト処理によっては、データ構造体中の設定値の変更のみならず、UIのコントロール(以下、単に「コントロール」ともいう。)上の設定値の変更、コントロールをグレイアウト(設定項目を薄いグレイで表示すること)して当該項目は(マウス等によって)直接変更することができないことをユーザに知らしめる処理等を行うものもある。
このような処理を含むコンフリクト処理により、他の項目に依存して利用できなくなったコントロールは、上記したようにグレイアウトされることで直接変更できないことが分かるようになっている。しかし、直接変更できなくなった原因(すなわち、依存関係のある他の項目)が、複数のシートやダイアログボックスのうち別のシートまたはダイアログボックスにあるような場合には、ユーザにはその原因が分かりにくい。この問題を解消するために、グレイアウトされたコントロールの付近に、当該コントロールが直接変更できない理由を含むメッセージを表示するものもある。
特開2000−276010号公報 特開平11−126129号公報
ところで、従来、上記したような、コントロールがグレイアウトされて直接変更できない理由を表示するためには、コンフリクト処理の記述とは別に、理由検知専用のプログラムを作成する必要があった。理由検知を正確に行うためには、グレイアウトするための処理の各々に対応する理由検知処理のプログラムコードを必要とする。そして、このプログラムコードの作成には手間がかかるだけでなく、グレイアウト処理の追加/変更に伴って理由検知処理の漏れや食い違いが出やすいという問題があった。
また、例えば、特定のデバイスオプション(例えばステープル用のフィニッシャ)が装着されていないと当該コントロールが使用できず、なおかつ、他の項目とも排他関係にある等、当該コントロールがグレイアウトされる理由が複数存在する場合もある。そのような場合には、理由検知処理がさらに複雑になり、プログラムの作成に関する上記の問題はより顕著なものとなる。
本発明はこのような問題点に鑑みてなされたものである。すなわち、ユーザインタフェースにおいて特定の項目が設定不可となった理由を表示する機能を、理由検知の漏れや食い違いを起こすことなく実現し、これによって開発者の作業工数や人為的ミスを低減することを目的とする。
本発明の一側面によれば、印刷装置に対して送信するための印刷データを生成するプリンタドライバのユーザインタフェースを介して第1の設定値が入力された場合に、既に前記プリンタドライバが保持する第2の設定値を前記第1の設定値との間で競合を生じない値に設定することで競合を解消する競合解消手段と、前記競合解消手段により競合が解消された状態で、前記第2の設定値に係る、前記プリンタドライバのユーザインタフェースの指示部であるコントロールを設定不能にする制御手段と、前記制御手段により前記コントロールが設定不能にされた理由を前記プリンタドライバのユーザインタフェース上に表示することによりユーザに対して通知する通知手段とを有することを特徴とするユーザインタフェース制御装置が提供される。
本発明によれば、ユーザインタフェースにおいて特定の項目が設定不可となった理由を表示する機能を、理由検知の漏れや食い違いを起こすことなく実現でき、これによって開発者の作業工数や人為的ミスを低減することができる。
実施形態に係る印刷処理システムのブロック構成図である。 実施形態におけるRAM2のメモリマップを示す図である。 実施形態におけるプリンタドライバUI制御モジュールの概略構成図である。 実施形態におけるプリンタドライバUI制御モジュールで扱われるデータの関連を説明する模式図である。 実施形態におけるプリンタドライバUI制御モジュールの処理を示すフローチャートである。 実施形態におけるコンフリクト処理ルール記述ファイルの一例を示す図である。 実施形態における内部構造体の一例を示す図である。 実施形態におけるプリンタドライバUIによる印刷設定画面の一例を示す図である。 実施形態におけるプリンタドライバUIによる印刷設定画面の一例を示す図である。 実施形態におけるプリンタドライバUIによる印刷設定画面の一例を示す図である。 実施形態における状態変数リストの一例を示す図である。
以下、図面を参照して本発明の好適な実施形態について詳細に説明する。なお、本発明は以下の実施形態に限定されるものではなく、本発明の実施に有利な具体例を示すにすぎない。また、以下の実施形態の中で説明されている特徴の組み合わせの全てが本発明の課題解決手段として必須のものであるとは限らない。
(ハードウェア構成)
図1は本発明の一実施形態を示す印刷処理システムのブロック構成図である。印刷処理システムは、ホストコンピュータ3000と、プリンタ1500より構成される。
ホストコンピュータ3000において、1はシステムバス4に接続される各デバイスを総括的に制御するCPU、2はCPU1の主メモリ、ワークエリア等として機能するRAMである。3は各種プログラム、データを格納するROMであって、各種フォントを記憶するフォントROM3a、ブートプログラムやBIOS等を記憶するプログラムROM3b、および各種データを記憶するデータROM3cに区分けして構成されている。
5はキーボードコントローラ(KBC)で、キーボード9や不図示のポインティングデバイス(マウス)からのキー入力を制御する。6はCRTコントローラ(CRTC)であり、CRTディスプレイ(CRT)10の表示を制御する。
外部メモリ11(ディスクコントローラ(DKC)7によりアクセス制御される)は、ハードディスク(HD)やフロッピー(登録商標)ディスク(FD)(登録商標)等である。ここには、図示の如く、オペレーティングシステムプログラム(以下OS)205をはじめ各種アプリケーション(例えば、図形、イメージ、文字、表等が混在した文書処理を行う文書処理アプリケーションプログラム)201が記憶される。さらに、印刷処理関連プログラム204、ユーザファイル、編集ファイル等も記憶される。印刷処理関連プログラム204は、ページ記述言語を用いて記述される印刷データを生成するプログラムであって、同系列の複数のプリンタに対して共通に利用されうる。また、プリンタ制御コマンド生成モジュール(以下「プリンタドライバ」という)2041、プリンタドライバUI制御モジュール2042を含む。
8はプリンタコントローラ(PRTC)であり、双方向性インタフェース21を介してプリンタ1500に接続され、プリンタ1500との通信制御処理を行う。
外部メモリ11に記憶されたアプリケーションは、RAM2にロードされてCPU1により実行されることになる。また、CPU1は、例えばRAM2へのアウトラインフォントの展開(ラスタライズ)処理を実行し、CRT10上でのWYSIWYG(What you see is What you get)を可能としている。さらに、CPU1は、CRT10上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷設定設定画面(プリンタドライバUI制御モジュール2042により制御される)を開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバ2041に対する印刷処理の設定を行うことができる。
プリンタ1500において、12はプリンタ1500の全体を制御するCPUである。19はCPU12の主メモリ、ワークエリア等として機能するとともに、出力情報展開領域、環境データ格納領域、NVRAM等に用いられるRAMである。これは、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。13はROMであり、各種フォントを記憶するフォントROM13a、制御プログラム等を記憶するプログラムROM13b、および各種データを記憶するデータROM13cより構成される。
外部メモリ14(メモリコントローラ(MC)20によりアクセスを制御される)は、オプションとして接続されるハードディスク(HD)、フレキシブルディスク(FD)、ICカード等である。ここにはフォントデータ、エミュレーションプログラム、フォームデータ等が記憶される。ハードディスク等の外部メモリ14が接続されていない場合には、ROM13のデータROM13cに、ホストコンピュータ3000で利用される情報等を記憶することになる。なお、外部メモリ14は1個に限らず、複数備えるものであってもよく、例えば、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラム等を格納した外部メモリを複数接続できるように構成されていてもよい。
操作部1501にはユーザからの操作を受け付ける操作パネルが設けられ、その操作パネルには操作のためのスイッチおよびLED表示器等が配されている(図示は省略)。また、図示しないNVRAMを有し、操作パネル1501からのプリンタモード設定情報を記憶するようにしてもよい。
プリンタCPU12は、ROM13のプログラムROM13bに記憶された制御プログラム等に基づき、印刷部インタフェース16を介してシステムバス15に接続される印刷部(プリンタエンジン)17に出力情報としての画像信号を出力する。また、CPU12は入力部18を介してホストコンピュータ3000との通信処理が可能となっており、プリンタ1500内の情報等をホストコンピュータ3000に通知可能に構成されている。
(ソフトウェア構成)
図2は、所定のアプリケーションおよびプリンタ1500を制御対象とする印刷処理関連プログラムを起動して、ホストコンピュータ3000上のRAM2にロードされた状態のRAM2のメモリマップを示している。RAM2には、図示の如く、BIOS206、OS205をはじめ、アプリケーション201、印刷処理関連プログラム204、および関連データ203がロードされており、さらに空きメモリ領域202も確保されている。これにより、アプリケーション201および印刷処理関連プログラム204は実行可能状態にある。
印刷処理関連プログラム204におけるプリンタドライバUI制御モジュール2042は、ユーザによる印刷設定指令に応じてCRT10に印刷設定画面を表示しユーザからの設定を可能にする。
図8に、UIとしての印刷設定画面の表示例を示す。同図において、[Print Style]欄80は、印刷レイアウトを指定する欄であり、ユーザは例えば、片面印刷(1-Sided Printing)801、両面印刷(2-Sided Printing)802、および製本印刷(Booklet Printing)803のコントロールうちの、いずれかに対応するラジオボタンをマウスでクリックすることで指定することができる。
[Finishing]欄81は、印刷済み記録媒体の出力順序および仕上げについて指定する欄であり、ユーザは例えば、以下のいずれかから指定可能となっている。
[Collate] 811
部単位印刷。Nページの文書をM部印刷する場合に、第1ページ、第2ページ、…、第Nページの順に1枚ずつ出力し、これをM回繰り返す。
[Group] 812
ページ単位印刷。Nページの文書をM部印刷する場合に、第1ページをM枚、第2ページをM枚、…、第NページをM枚、の順に出力する。
[Staple] 813
ステープル仕上げ。上記[Collate] 811と同様に部単位で出力し、仕上げとして各部ごとにステープラで止める。
なお、本明細書では、上記したようなユーザ設定可能項目を「プリンタ機能」または単に「機能」ともよぶ。この他にも多くのプリンタ機能を有するが、説明を簡単にするため省略する。
ここで、「コンフリクト」は、プリンタドライバUI制御モジュール2042により、以下詳細に説明するコンフリクト処理として回避されるように設計される。「コンフリクト」とは、ユーザにとって不都合と思われる設定の組み合わせ、意味のない設定の組み合わせ、すなわち設定値間の不整合をいう。
図3は、実施形態における印刷処理関連プログラム204のプリンタドライバUI制御モジュール2042の概略構成を示している。303は、各モジュール間のデータの受け渡しやデータの更新等を管理してコンフリクト処理を統括するコンフリクトマネージャである。306が、上記した印刷設定画面表示制御を行い、本プリンタドライバUI制御モジュール2042におけるメインプログラムとしてのプリンタドライバUIである。301は、後述する記述形式で記述される不整合回避戦略を示すコンフリクト処理ルールを列記したコンフリクト処理ルール記述ファイルである。302は、コンフリクト処理ルール記述ファイル301をロードして、入力された設定値に対してコンフリクト処理ルールを適用し、各機能の状態を推論する推論エンジンである。304は、各プリンタ機能の状態をリスト形式で表示する状態変数リストであり、ユーザからの入力およびコンフリクト処理ルール記述ファイル301の内容に基づき更新されうる。305は、プリンタドライバUI306が提供する画面表示の基になる帳票としての内部構造体であり、状態変数リスト304と連動して各プリンタ機能の状態を所定の形式で表示する。
その後に、プリンタドライバUI306を介してユーザからの設定情報を受け取ったコンフリクトマネージャ303は、コンフリクト処理ルール記述ファイル301を参照する。このことは、図示の如くコンフリクト処理ルール記述ファイル301からコンフリクトマネージャ303に向かう矢印で、「R(Read)」として表示されている。参照の結果、設定情報がコンフリクト処理ルールに適合する場合、コンフリクト処理が適用される。そうして、コンフリクトマネージャ303は、状態変数リスト304および内部構造体305を更新してプリンタドライバUI306に反映させる。この更新作業は、図示の如くコンフリクトマネージャ303は、状態変数リスト304および内部構造体305とは各々双方向矢印で結ばれ、「R/W (Read/Write)」として表示されている。
図4は、図3に示した各モジュールで扱われるデータの関連を説明する模式図である。図4において、コンフリクト処理ルール記述ファイル301は、推論エンジン302にインクルード(ロード)されたかたちで参照される。このコンフリクト処理ルール記述ファイル301はコンフリクトマネージャ303にも参照され、状態変数リスト304はコンフリクト処理ルールに従った内容を有することになる。また、内部構造体305と状態変数リスト304とは先に述べたとおり連動表示されるものであるから、互いにマッピングされる関係にある。そしてこの状態がプリンタドライバUI306の制御によってユーザに見えるかたちで表現される。
状態変数リスト304について具体的に説明すると、同図に示すように、各プリンタ機能(同図中「キー」の欄A, B, C,...)毎に、状態値をはじめ、例えば、対応するコントロールの利用可否情報、利用不可の場合の理由(無効理由)情報、UI更新の要否情報等が記述される。
内部構造体305は、各プリンタ機能の状態を例えば、
データ型 機能名メンバ 状態メンバ
の構文で表し、プリンタ機能名A, B, C に対応する機能名メンバをそれぞれ cA, cB, cC のように表現する。そして、各機能に対する状態メンバは、状態変数リスト304における状態値がマッピングされている。
(コンフリクト処理ルールの記述形式)
次に、コンフリクト処理ルール記述ファイル301について説明する。
各ルールは、論理(ロジック)を用いて数学的に形式化される。述語は、
プリンタ機能名(引数)
の形で記述される。引数としては、ON/OFFの他、数値が入る場合もある(例えば、印刷部数等)。左辺には「プリンタ機能名(引数)」を、右辺には左辺が成り立つための論理条件を記述し、記号「←」で関係づける。例えば、
A(ON) ← B(ON).
は、「プリンタ機能Bの状態がONのときは、プリンタ機能Aの状態をONとする」という意味のルールになる。
また、式中の記号「,」は論理「かつ(AND)」の意味で用いられる。例えば、「プリンタ機能Bの状態がON、かつ、プリンタ機能Cの状態がOFFのときに、プリンタ機能Aの状態をONとする」というルールは、
A(ON) ←B(ON), C(OFF).
と記述される。
さらに、コンフリクト処理ルール記述ファイル301の中には、プリンタドライバUI306を更新するための処理を記述することが可能である。推論エンジン302がその記述を解釈した時点で、コンフリクトマネージャ303の状態変数リスト304を介して、プリンタドライバUI306の更新処理を直接行うことが可能になっている。
例えば、UI更新の処理として{disable}セットの記述を追加することにより、該当項目のコントロールをdisableする処理(グレイアウト表示するとともに設定不可の状態にする処理)を指示することができる。
また、{disable}セットの後に{Reason(X)}セットの記述を追加すると、disableとなった理由を表示するための理由識別子Xに応じたメッセージを表示させることが可能になる(詳細は後述する)。
次に、図8に表示されたプリンタ機能を例に、コンフリクト処理ルールに記述される機能名の具体例を示す。図8に示した[Collate] 811に対応する部単位印刷機能、[Group] 812に対応するページ単位印刷機能、および[Staple] 813に対応するステープル仕上げ機能の機能名はそれぞれ、Collate()、Group()、およびStaple()で示され、引数はONまたはOFFとなる。また、[PrintStyle]欄80に対応する印刷レイアウト機能は、Layout()で示され、引数は、1-Sided、2-Sided、Bookletのいずれかである。
この他、UIとは直接関連しない機能(例えば、特定のオプションの装着状態、セットされている記録用紙の種類等の属性を示す環境情報)を定義することができる。例えば、上記ステープル仕上げ機能に関連して、デバイスオプションとしてのステープル用フィニッシャが装着されているか否かを示すFinisher()を使用できる。引数はONまたはOFFであり、ONのときはフィニッシャが装着されている状態を示し、OFFのときは未装着の状態を示す。
また、セットされた記録用紙がステープル可能な紙であるか否かを示すStaplablePaper()が使用可能である。引数はONまたはOFFであり、ONのときはステープル可能な用紙がセットされている状態を示し、OFFのときはステープル可能な用紙がセットされていない状態を示す。
なお、上記した機能名はあくまでプリンタという制御対象に対する例であって、制御対象に応じてその他の機能名が定義することができることはいうまでもない。
図6は、以上の例に従って記述されたコンフリクト処理ルール記述ファイル301の一例である。
(1)は、フィニッシャが装着されていないときにはStaple(OFF)、すなわちステープル仕上げ不可、とするルールである。後続行には{disable}が記述されているので、このルールが適用されると、コントロール[Staple]813はグレイアウトされることになる。また、次の行には、{Reason(NO_FINISHER)}が記述されている。ここで、理由識別子NO_FINISHERは、フィニッシャが装着されていないことを示すものである。
(2)は、ステープル可能な記録用紙がセットされていないときはStaple(OFF)とするルールである。ここでも(1)と同様、後続行には{disable}が記述されているので、このルールが適用されると、コントロール[Staple]813はグレイアウトされることになる。また、次の行には、ステープル不可能な用紙がセットされていることを示すINVALID_PAPERを理由識別子に有する{Reason(INVALID_PAPER)}セットが記述されている。
(3)は、[Booklet Printing]803がチェックされたことでLayout(BOOKLET)となったときは、Staple(OFF)とするルールである。ここでも同様に、このルールが適用されると、{disable}の記述によってコントロール[Staple]813はグレイアウトされることになる。また、次の行には、適合しないプリントスタイル(レイアウト)が指定されていることを示すINVALID_LAYOUTを理由識別子に有する{Reason(INVALID_LAYOUT)}セットが記述されている。
(4)は、記録媒体としてOHPシートがセットされたときは、Staple(OFF)とするルールである。このルールが適用されると、{disable}の記述によってコントロール[Staple]813はグレイアウトされる。また、次の行には、適合しない用紙タイプが指定されていることを示すINVALID_PAPERTYPEを理由識別子に有する{Reason(INVALID_PAPERTYPE)}セットが記述されている。
(5)は、[Collate] 811がチェックされたことでCollate(ON)となったときにStaple(OFF)とするルール、(6)は、[Group] 812がチェックされたことでGroup(ON)となったときにStaple(OFF)とするルールである。
(7)は、[Booklet Printing]803がチェックされたことでLayout(BOOKLET)となったときにCollate(ON)とするルールである。このルールが適用されると、次の行の{disable}の記述によってコントロール[collate]811がグレイアウトされる。
(8)は、[Booklet Printing]803がチェックされたことでLayout(BOOKLET)となったときにGroup(OFF)とするルールである。このルールが適用されると、次の行の{disable}の記述によってコントロール[Group]812がグレイアウトされる。
このように、各機能の状態によって適用されるルールが記述されている。
(プリンタドライバUI制御モジュール2042の処理の内容)
以下、図5のフローチャートを用いて、コンフリクト処理を含むプリンタドライバUI制御モジュール2042の処理について、詳しく説明する。
プリンタドライバUI制御モジュール2042の処理は、ユーザがキーボードコントローラKBC5等を用いて、印刷設定画面を開く指示をすることで始まる。ユーザが印刷設定画面を開くよう指示すると、上記したとおり、OS205の管理の下、RAM2に印刷処理関連プログラム204がロードされる。
印刷処理関連プログラム204がRAM2にロードされると、まず、印刷設定画面を開くための初期化処理を行う。この初期化処理として推論エンジン302は、コンフリクト処理ルール記述ファイル301をコンフリクトマネージャ303を介して、RAM2に読み込む(ステップS501)。
続いて、コンフリクトマネージャ303が利用する状態変数リスト304を作成する(ステップS503)。
コンフリクト処理ルール記述ファイル301に記述されるすべてのプリンタ機能名は、コンフリクトマネージャ303の内部にインクルードされた状態変数リスト304にそれぞれ、状態変数を持っている。この状態変数の値は、プリンタドライバUI306で使用される内部構造体305の対応するメンバの値と連動している。各プリンタ機能名の状態変数の初期値は、その内部構造体305のメンバの値となる。
例えば、図4において、内部構造体305に記述されているint cAの初期値は0であるから、それに対応する状態変数リスト304におけるプリンタ機能Aの値はOFFとなっている。したがって、状態変数リスト304におけるプリンタ機能Aの状態の初期値はOFFとなる。同様に、プリンタ機能名Bの初期値はON、プリンタ機能名Cの初期値はOFFとなる。すなわち、
A OFF
B ON
C OFF
となる。
その後、推論エンジン302は、コンフリクト処理ルール記述ファイル301を参照することでコンフリクトチェックの推論を行う。例えば、図4に示すように、コンフリクト処理ルール記述ファイル301に記述されている、
A(ON) ← B(ON), C(OFF).
が成立した場合、推論エンジン302は、状態変数リスト304中のプリンタ機能Aの状態変数値を、初期値OFFからONに変更する。すなわち、
A ON
B ON
C OFF
となる。このように状態変数リスト304が初期化される。また、状態変数リスト304中の他の項目(コントロールの表示/非表示情報等)も同様に初期化される。
コンフリクトチェックの推論が終了した後、コンフリクトマネージャ303は、変更された状態変数の値を内部構造体305の対応するメンバ int cAに反映させる。すなわち、int cA は上記ルールが成立したことによって0から1に変更されることになる。
具体的に、図8に示したUIを開く際の初期化処理を例にとって説明する。図7は、図8のUIに対する内部構造体の一例を示している。同図から分かるように、例えば機能名メンバLayout、Collate、Group、およびStapleに対応する状態メンバは各々、1Sided、0、1、および0となっている。この状態から、図6に示したコンフリクト処理ルール記述ファイル301を参照してコンフリクトチェックを行う。内部構造体の内容が図7に示す状態である場合には、図6に示したコンフリクト処理ルール記述ファイル301のうち、いずれのルールも適用される場合はない。つまり、上記機能名の状態変数値は、ステップS503の初期化による初期値として、次のようになる。
Collate OFF
Group ON
Staple OFF
Layout 1-Sided
続いて、UIのオープンのために必要とされるその他の初期化処理を行い、図8に例示したようなUIをオープンする(ステップS504)。この場合、状態変数リスト304を参照して、設定値に応じた値を表示したり、コントロールの利用可否情報に応じた処理(able/disableの変更)等を行うことになる。
UIとしての印刷設定画面がオープンされた後は、OSより送られてくるイベントを取得し、そのイベントに対する処理を行う(ステップS505)。
次に、ステップS505で取得したイベントが、ユーザが印刷設定画面上の設定項目を変更したイベントであるか否かの判別を行う(ステップS506)。ここで、取得したイベントがユーザによる設定変更要求であった場合には、ステップS507に進み、コンフリクト処理ルール記述ファイル301を参照してコンフリクト処理ルールを適用する。
取得したイベントがユーザによる設定変更要求であった場合の一例として、図8に示す[Print Style]欄80における、片面印刷(1-Sided Printing)801から製本印刷(Booklet Printing)803に変更するものであった場合について説明する。ここでは、ステープル仕上げが可能なフィニッシャが装着され、用紙サイズおよび用紙タイプがステープル可能なものがセットされているものとする。
プリンタ機能名Collate、Group、Staple、Layoutの状態変数の設定変更要求前における値は、図7に示した状態、すなわち、以下のようになっていた。
Collate OFF
Group ON
Staple OFF
Layout 1-Sided
ユーザの変更要求がLayoutを1−SidedからBookletに変更するものであるので、Layoutの状態変数の内容が変更されて、各プリンタ機能名の状態変数の値は次のようになる。
Collate OFF
Group ON
Staple OFF
Layout Booklet
すると、プリンタドライバUI306はコンフリクトマネージャ303をコールし、続いて推論エンジン302がコールされて、コンフリクト処理ルール記述ファイル301を参照してLayoutを起点としたコンフリクトチェックが始まる。
推論エンジン302は、コンフリクト処理ルール記述ファイル301の各ルールの適用/不適用をチェックしていく。上記したとおり、この例ではステープル仕上げが可能なフィニッシャが装着され、用紙サイズおよび用紙タイプがステープル可能なものがセットされているので、ルール(1)、(2)が適用されることはない。
ルール(3)は適用されることになるから、StapleはOFFのままコントロールはdisable、すなわちグレイアウト表示によって設定不可の状態にされる。さらに、上記したように、グレイアウトされた理由として不適合なプリントスタイルが指定されていることを示すINVALID_LAYOUTがセットされる。
ルール(4)、(5)、(6)は適用されないが、ルール(7)、(8)が適用され、Collateの値はOFFからONへ、Groupの値はONからOFFへ変更され、次のように各コントロールはdisableとなる。
Collate ON (disable)
Group OFF (disable)
Staple OFF (disable, Reason=INVALID_LAYOUT)
Layout BOOKLET
また、同じコントロールをグレイアウトするものではあるがその理由が相違するルールが、重複して適用されうる場合もある。この場合、あらかじめ定めた優先順位が高い理由が採用される。実施形態では、コンフリクト処理ルール記述ファイル301に先に記述されたルールほど優先度が高いと定めておく。
例えば、上記した例に続いて、ステープル仕上げ不可能なサイズの用紙がセットされた場合を考える。この場合、ルール(3)とともに、ルール(2)が適用されることになる。実施形態によれば、優先順位の高いルール(2)を採用して、グレイアウトされた理由としては、不適合な記録用紙がセットされていることを示すINVALID_PAPERがセットされることになる。すなわち、各コントロールの状態は、次のようになる。
Collate ON (disable)
Group OFF (disable)
Staple OFF (disable, Reason=INVALID_PAPER)
Layout BOOKLET
以上で、ステップS507の、推論エンジン302でのコンフリクト処理ルールの適用が終了する。
コンフリクトマネージャ303は、上記ステップS507のコンフリクト処理ルールの適用結果に基づき状態変数リスト304を更新する(ステップS508)。すなわち、状態変数リストは図11に示すようになる。図11において、機能Stapleの状態がOFF、そのコントロールがdisableとなるとともに、その理由識別子INVALID_PAPERが記録されていることが分かる。
続いて、内部構造体305を更新する(ステップS509)。具体的には、状態変数リスト304中のUI更新情報が「要(yes)」となっているコントロールについてはUIの更新処理を行い、その後UI更新情報は「不要(no)」に変更される。上記の例では、Layoutが1-Sided PrintingからBooklet Printingに設定が変更されたことで、CollateがOFFからONへ、GroupがONからOFFへと変更され、Collate, Group, Staple がそれぞれdisableとなり、図8のUIは図9に示すとおりに更新される。
また、図9に示すように、コントロールがグレイアウトされた場合には、そのことを知らせるためのコンフリクトマーク91が表示される(詳細は後述する)。ステップS509の後はステップS505に戻って処理を繰り返す。
ステップS506において、ステップS505で取得したイベントがユーザが印刷設定画面上の設定項目を変更したイベントではなかったときは、ステップS512に進み、グレイアウトの理由表示のイベントであるかを判別する。このイベントは、例えばコンフリクトマーク91がクリックされたときやコンフリクトマーク91上にマウスカーソルが重なったときなどに発生する。
このイベントが発生した場合は、ステップS513に進み、プリンタドライバUI306は状態変数リスト304から該当するコントロールの無効理由情報を参照し、そこに登録されている識別子に対応する処理を行う。例えば、図10に示すようなコメントメッセージ92を表示することができる。いずれかのキーを押下したりマウスカーソルを移動するなどによりイベントが解除されると、メッセージは消え、ステップS505に戻って処理を繰り返す。
ステップS512の判別の結果、理由表示イベントではなかった場合には、ステップS514に進み、プリンタドライバUIのクローズ要求かどうかの判別を行う。クローズ要求であった場合には、状態変数の設定で内部構造体を更新し(ステップS515)、所定の終了処理を行い、プリンタドライバUIをクローズして、すべての処理を終了する(ステップS516)。一方、クローズ要求ではなかった場合には、ステップS505に戻って処理を繰り返す。
以上の処理は、プリンタドライバUIがクローズされるまで、繰り返し実行される。プリンタドライバUIがクローズされると処理は終了し、印刷処理関連プログラム204の処理も終了し、RAM2からはOS205の機能により消去される。
以上説明した実施形態によれば、コンフリクト処理ルール記述ファイルに、コンフリクト処理ルールの適用によってコントロールをdisableして当該コントロールをグレイアウトする場合にはその理由を記述することを可能である。これにより、グレイアウトされた理由情報の管理を容易にすることができるようになった。このため、理由検知のための専用プログラムコードを追加する煩わしさや、条件の漏れや食い違いを生ずるケースから解放され、品質の高い理由表示処理を実現することができる。
さらに他の発明によれば、理由表示処理をプリンタドライバUIからコンフリクトマネージャに移すことで両者の間で理由識別子の同期を取る必要がなくなり、その結果独立性が向上し、生産性が高くメンテナンス性に優れるという効果がある。
(他の実施形態)
上述した実施形態では、ステップS513の理由コメントの表示はプリンタドライバUI306が行うようにしたが、コンフリクトマネージャ303が行うようにすることもできる。すなわち、コンフリクトマネージャ303の内部に文字列リソースを持ち、理由表示イベント発生時にはコンフリクトマネージャ303を呼び出し、そこで状態変数の理由属性を参照して該当するメッセージを表示するようにしてもよい。
また、ステップS507では、最も優先順位の高い理由をひとつだけ保持しているが、該当する理由をすべて保持し、ステップS513にてすべて表示するようにしてもよい。
また、ステップS507では、ルールの記述順序によって優先順位を定めるようにしたが、もちろんこれに限定されるものではなく、別の基準を設けてもよい。状態値を変更するルールのみを適用することで、最新の理由を保持すると共に効率化を図ることもできる。
なお、上述した実施形態では、プリンタ装置に対して、コンフリクト処理を含むUI制御を行う例について説明した。しかし本発明は、プリンタ装置に限らず、ディジタルカメラ、ディジタルレコーダ、イメージスキャナ等の周辺装置、制御機器の他、モデムやルータといったネットワーク関連機器にも適用可能であることはいうまでもない。これらの複数の機器から構成されるシステムに適用することも可能である。
以上、本発明の実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
なお、本発明は、前述した実施形態の各機能を実現するプログラムを、システムまたは装置に直接または遠隔から供給し、そのシステムまたは装置に含まれるコンピュータがその供給されたプログラムコードを読み出して実行することによっても達成される。
従って、本発明の機能・処理をコンピュータで実現するために、そのコンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、記録媒体としては、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
また、プログラムは、クライアントコンピュータのブラウザを用いてインターネットのホームページからダウンロードしてもよい。すなわち、ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードしてもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードする形態も考えられる。つまり、本発明の機能・処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明の構成要件となる場合がある。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布してもよい。この場合、所定条件をクリアしたユーザにのみ、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報で暗号化されたプログラムを復号して実行し、プログラムをコンピュータにインストールしてもよい。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現されてもよい。なお、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ってもよい。もちろん、この場合も、前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ってもよい。このようにして、前述した実施形態の機能が実現されることもある。

Claims (8)

  1. 印刷装置に対して送信するための印刷データを生成するプリンタドライバのユーザインタフェースを介して第1の設定値が入力された場合に、既に前記プリンタドライバが保持する第2の設定値を前記第1の設定値との間で競合を生じない値に設定することで競合を解消する競合解消手段と、
    前記競合解消手段により競合が解消された状態で、前記第2の設定値に係る、前記プリンタドライバのユーザインタフェースの指示部であるコントロールを設定不能にする制御手段と、
    前記制御手段により前記コントロールが設定不能にされた理由を前記プリンタドライバのユーザインタフェース上に表示することによりユーザに対して通知する通知手段と、
    を有することを特徴とするユーザインタフェース制御装置。
  2. 前記通知手段は、
    前記制御手段により前記コントロールが設定不能にされたことを示すマークを前記ユーザインタフェース上に表示する第1の表示手段と、
    前記第1の表示手段により表示された前記マークに対応する特定のイベントを取得したことに応答して、前記コントロールが設定不能にされた理由を示すメッセージを前記ユーザインタフェース上に表示する第2の表示手段と、
    を含むことを特徴とする請求項1に記載のユーザインタフェース制御装置。
  3. 前記第2の設定値としてコレート印刷を無効にする設定値が前記プリンタドライバに既に保持されている状態で、前記第1の設定値として製本印刷を有効にする設定値が入力された場合において、
    前記競合解消手段は、前記第1の設定値が入力されたことに応答して、前記第2の設定値をコレート印刷を有効にする設定値に変更することで前記競合を解消し、
    前記制御手段は、前記第2の設定値がコレート印刷を有効にする設定値にされた状態で、コレート印刷のコントロールを設定不能にする
    ことを特徴とする請求項1または2に記載のユーザインタフェース制御装置。
  4. 前記制御手段により前記コントロールが設定不能にされた理由が複数ある場合には、1つの理由を選択する選択手段を更に有し、
    前記通知手段は、前記選択手段により選択された前記1つの理由を前記ユーザインタフェース上に表示することを特徴とする請求項1乃至3のいずれか1項に記載のユーザインタフェース制御装置。
  5. 前記通知手段は、前記競合解消手段により用いられるコンフリクト処理ルールと共に特定のファイルに格納されている理由情報を用いて前記理由を通知することを特徴とする請求項1乃至4のいずれか1項に記載のユーザインタフェース制御装置。
  6. 前記通知手段は、前記コントロールが設定不能にされるのに応じて表示される特定のマークが指示されるのに応答して、前記理由を前記ユーザインタフェース上に表示することを特徴とする請求項1乃至5のいずれか1項に記載のユーザインタフェース制御装置。
  7. 印刷装置に対して送信するための印刷データを生成するプリンタドライバのユーザインタフェースを介して第1の設定値が入力された場合に、既に前記プリンタドライバが保持する第2の設定値を前記第1の設定値との間で競合を生じない値に設定することで競合を解消する競合解消工程と、
    前記競合解消工程により競合が解消された状態で、前記第2の設定値に係る、前記プリンタドライバのユーザインタフェースの指示部であるコントロールを設定不能にする制御工程と、
    前記制御工程により前記コントロールが設定不能にされた理由を前記プリンタドライバのユーザインタフェース上に表示することによりユーザに対して通知する通知工程と、
    を有することを特徴とするユーザインタフェース制御方法。
  8. 印刷装置に対して送信するための印刷データを生成するプリンタドライバを有するコンピュータに、
    前記プリンタドライバのユーザインタフェースを介して第1の設定値が入力された場合に、既に前記プリンタドライバが保持する第2の設定値を前記第1の設定値との間で競合を生じない値に設定することで競合を解消する競合解消工程と、
    前記競合解消工程により競合が解消された状態で、前記第2の設定値に係る、前記プリンタドライバのユーザインタフェースの指示部であるコントロールを設定不能にする制御工程と、
    前記制御工程により前記コントロールが設定不能にされた理由を前記プリンタドライバのユーザインタフェース上に表示することによりユーザに対して通知する通知工程と、
    を実行させるためのプログラム。
JP2009122567A 2009-05-20 2009-05-20 制御装置及び方法、並びにプログラム Expired - Lifetime JP5025684B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009122567A JP5025684B2 (ja) 2009-05-20 2009-05-20 制御装置及び方法、並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009122567A JP5025684B2 (ja) 2009-05-20 2009-05-20 制御装置及び方法、並びにプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2006280598A Division JP4522398B2 (ja) 2006-10-13 2006-10-13 ユーザインタフェース制御装置および方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2011152337A Division JP5106660B2 (ja) 2011-07-08 2011-07-08 制御装置及び方法、並びにプログラム

Publications (3)

Publication Number Publication Date
JP2009211713A true JP2009211713A (ja) 2009-09-17
JP2009211713A5 JP2009211713A5 (ja) 2010-09-30
JP5025684B2 JP5025684B2 (ja) 2012-09-12

Family

ID=41184733

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009122567A Expired - Lifetime JP5025684B2 (ja) 2009-05-20 2009-05-20 制御装置及び方法、並びにプログラム

Country Status (1)

Country Link
JP (1) JP5025684B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015118588A (ja) * 2013-12-19 2015-06-25 コニカミノルタ株式会社 設定装置、プログラム及び設定方法
EP3086220A1 (en) 2015-04-20 2016-10-26 Konica Minolta, Inc. Print setting control program and print setting control method
JP2017004222A (ja) * 2015-06-09 2017-01-05 富士ゼロックス株式会社 サービス提供システム、利用者装置、及び、プログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7385377B2 (ja) 2019-05-30 2023-11-22 シャープ株式会社 情報処理装置、制御方法及びプログラム

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02197864A (ja) * 1989-01-26 1990-08-06 Fuji Xerox Co Ltd メッセージ表示方式
JPH03181958A (ja) * 1989-12-05 1991-08-07 Xerox Corp 複写システムにおける選択された機能の競合を解消する方法
JPH11180011A (ja) * 1997-12-19 1999-07-06 Fuji Xerox Co Ltd 画像形成装置
JPH11312067A (ja) * 1998-04-30 1999-11-09 Canon Inc データ処理装置および印刷制御装置およびデータ処理装置のデータ処理方法および印刷制御装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2000276010A (ja) * 1999-03-24 2000-10-06 Minolta Co Ltd 画像形成装置
JP2001022228A (ja) * 1999-07-12 2001-01-26 Fuji Xerox Co Ltd 操作支援システム
JP2001075755A (ja) * 1999-09-09 2001-03-23 Ricoh Co Ltd 機器選択装置、機器選択方法および記憶媒体

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02197864A (ja) * 1989-01-26 1990-08-06 Fuji Xerox Co Ltd メッセージ表示方式
JPH03181958A (ja) * 1989-12-05 1991-08-07 Xerox Corp 複写システムにおける選択された機能の競合を解消する方法
JPH11180011A (ja) * 1997-12-19 1999-07-06 Fuji Xerox Co Ltd 画像形成装置
JPH11312067A (ja) * 1998-04-30 1999-11-09 Canon Inc データ処理装置および印刷制御装置およびデータ処理装置のデータ処理方法および印刷制御装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2000276010A (ja) * 1999-03-24 2000-10-06 Minolta Co Ltd 画像形成装置
JP2001022228A (ja) * 1999-07-12 2001-01-26 Fuji Xerox Co Ltd 操作支援システム
JP2001075755A (ja) * 1999-09-09 2001-03-23 Ricoh Co Ltd 機器選択装置、機器選択方法および記憶媒体

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015118588A (ja) * 2013-12-19 2015-06-25 コニカミノルタ株式会社 設定装置、プログラム及び設定方法
EP3086220A1 (en) 2015-04-20 2016-10-26 Konica Minolta, Inc. Print setting control program and print setting control method
CN106067925A (zh) * 2015-04-20 2016-11-02 柯尼卡美能达株式会社 印刷设定控制程序以及印刷设定控制方法
US9841936B2 (en) 2015-04-20 2017-12-12 Konica Minolta, Inc. Print setting control program and print setting control method
CN106067925B (zh) * 2015-04-20 2019-05-31 柯尼卡美能达株式会社 印刷设定控制程序以及印刷设定控制方法
JP2017004222A (ja) * 2015-06-09 2017-01-05 富士ゼロックス株式会社 サービス提供システム、利用者装置、及び、プログラム

Also Published As

Publication number Publication date
JP5025684B2 (ja) 2012-09-12

Similar Documents

Publication Publication Date Title
US7218976B2 (en) User interface control apparatus and method
US7228314B2 (en) Apparatus and method for controlling user interface
JP4785579B2 (ja) 情報処理装置および情報処理装置における印刷設定反映方法とプログラム
JP6008657B2 (ja) 情報処理装置およびその制御方法、並びに情報処理プログラム
JP4574344B2 (ja) 情報処理装置及び方法
JP2006164240A (ja) データ処理装置および印刷設定処理方法およびコンピュータが読み取り可能な制御プログラムを格納した記憶媒体および制御プログラム
JP2004326603A (ja) 印刷制御システム、印刷制御装置、機能提供装置、印刷機能表示方法、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体
JP5527992B2 (ja) 印刷制御方法、印刷制御装置、及びコンピュータプログラム
JP4850739B2 (ja) 情報処理装置及びその制御方法、コンピュータプログラム、画像形成システム
JP5025684B2 (ja) 制御装置及び方法、並びにプログラム
JP5700938B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP5106660B2 (ja) 制御装置及び方法、並びにプログラム
JP5807460B2 (ja) 情報処理装置、プログラム、記憶媒体
JP4366027B2 (ja) ユーザインタフェース制御装置および方法
JP2009205694A (ja) 情報処理装置および方法とデバイスドライバ
JP3833067B2 (ja) ユーザインタフェース制御装置および方法ならびに記憶媒体
JP5062932B2 (ja) ユーザインタフェース制御装置及び方法及びコンピュータプログラム及び記憶媒体
JP4522398B2 (ja) ユーザインタフェース制御装置および方法
JP3697176B2 (ja) ユーザインタフェース制御装置および方法
JP2006236382A (ja) 情報処理装置及び情報処理方法
JP2002251268A (ja) 情報処理装置および該装置のデータ処理方法およびデータ処理プログラムおよび該プログラムを格納した記憶媒体
JP2002196905A (ja) 情報処理装置及び情報処理方法、画像形成装置、記憶媒体
JP2008059484A (ja) 情報処理装置、ドライバ処理方法、記憶媒体、プログラム
JP3673714B2 (ja) ユーザインタフェース制御装置および方法ならびに記憶媒体
JP6007015B2 (ja) 画像形成装置及び画像形成プログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100818

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110513

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110708

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120516

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20120523

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: 20120615

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120619

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150629

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 5025684

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

EXPY Cancellation because of completion of term