30日間の無料評価版をお試しいただけます。

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

 

PanelCollection APIは、いくつかのヘルパーオブジェクトを使用し、これは、オプションの受け渡し、検証、依存設定に使用することもできます。詳細を以下に示します。

GeneralPanelOptions:一般的なユーザーインターフェイス表示を定義します。

CssRule:スタイリングルールを定義します。

ListOptions:一覧として表示されるパラメーターを定義します。

ParameterValidation:基礎的なユーザーインターフェイスの検証を網羅します。

ParameterDisplayRule:ユーザーインプットに基づき、パラメーターを表示するかどうかを判断します。

ParameterValueLoader:イベントに基づき値を動的に読み込むために使用するclassです。

DynamicParameterOptions:ParameterValueLoaderの返答オブジェクトです。

FieldObject:フィールドを表現するclassです。

 

 

GeneralPanel Options

GeneralPanelOptions classは、パラメーターパネルとセクションレベルで、一般的なユーザーインターフェイスの表示オプション定義するために使用します。重要なメソッドを以下に示します。

メソッド説明

public void setSaveButton(boolean saveButton)

public void setSaveButtonOptions(Map<String, Object> opts)

public void setSaveText(String saveText)

setSaveButtonオプションをtrueに設定することで、パネルやセクションに保存ボタンを表示します。表示オプションは、setSaveButtonOptionsを使用して設定することもできます。利用可能なオプションの一覧は、インプットタイプのtype BUTTON項目に示されています。ボタン上のテキストは、setSaveTextを使用してカスタマイズすることができます。

public void setExpandable(boolean expandable)

public void setExpanded(boolean expandable)

これらは、セクションを展開可能にし、それを表示するために使用します。

 

public void setShowName(boolean showTitle)こちらをtrueに設定した場合、パネルやセクションの名前は、コンテナのトップに表示されます。
public void setCssRules(Set<CssRule> cssRules)こちらのメソッドは、セクションやパネル、そのhtmlコンテナ内のすべてをスタイリングするカスタムCSSルールを設定するために使用します。

 

 

CSSRule

こちらのインターフェイスは、PanelCollection APIのいくつかのレベルのスタイリングルールを定義するために使用します。これをサポートするレベルは、CssRuleオブジェクトのセットを受付ます。Yellowfinには、CssRulelmplという実装があり、以下のような単一のCSSルールを定義します。

 

div.styleExampleCell {
    border: none;
    color: #666666;
}

 

インスタンスはひとつのセレクターと、ひとつ以上のCSSの宣言を持ちます。セレクターが定義されていない場合、Yellowfinは自動的にこれを生成します。

CssDeclarationインターフィスは、以下のような、単一の宣言を記述します。

 

border: none;

 

Yellowfinには、CssDeclarationlmplという実装があり、プロパティと値を受け付けます。

 

Parameter inputField = new ParameterImpl();
inputField.setName("Example Param");
inputField.setProperty("PARAM_PROPERTY");
inputField.setInputType(InputType.TEXTBOX);
  
CssRule cssRule = new CssRuleImpl("input", false);
cssRule.addDeclaration(new CssDeclarationImpl("height", "21px"));
cssRule.addDeclaration(new CssDeclarationImpl("padding", "5px"));
cssRule.addDeclaration(new CssDeclarationImpl("font-size", "16px"));
cssRule.addDeclaration(new CssDeclarationImpl("resize", "none"));
cssRule.addDeclaration(new CssDeclarationImpl("color", "#666666"));
cssRule.addDeclaration(new CssDeclarationImpl("border", "1px solid #e4e4e4"));
Set<CssRule> cssRules = new HashSet<>();
cssRules.add(cssRule);
inputField.setCssRules(cssRules);

 

これにより、以下のCSSルールが作成されます。

 

input {
    height: 21px;
    padding: 5px;
    font-size: 16px;
    resize: none;
    color: #666666;
    border: 1px solid #e4e4e4;
}

 

 

 

ListOptions

こちらのclassは、パラメーターが一覧として表示される場合のユーザーインターフェイスオプションを定義します。例えば、TEXTBOXパラメーターは、いくつかのテキスト値を受け付けることができ、テキストボックスの一覧を表示します。

 

利用可能なすべてのオプションは、javadocを参照してください。

 

 

 

ParameterValidation

こちらのclassは、基礎的なユーザーインターフェイスの検証ルールを定義するために使用します。最も有効なルールは、パラメーター値が空であるかどうかを確認するものです。その他のルールは、数値パラメーターに対して関係演算を実行します。

 

利用可能なすべてのオプションは、javadocを参照してください。

 

 

 

ParameterDisplayRule

ユーザーインプットは、必要に応じて、表示/非表示にしなくては行けません。これは、パラメーターがリッスンする必要のあるパラメーターを定義し、値を指定して表示、非表示にする、ParameterDisplayRuleのインスタンスを使用して実行します。以下の例を参照してください。

 

例1

以下は、SOURCEに0、またはnull以外の値が設定されている場合に、TABLE_NAMEを表示します。

Parameter p = new ParameterImpl();
p.setName("Table Name");
p.setProperty("TABLE_NAME");
p.InputType(InputType.SELECT);
p.addDisplayRule(new ParameterDisplayRule("AND", "SOURCE", new Object[] { null, 0 }, true, null));

 

この表示ルールは基本的に、以下のコード行を作成します。

 

if(SOURCE != null && SOURCE != 0) showParameter();

 

 

例2

SOURCEがnull、または0の時に、TABLE_NAMEを表示するためには、負のbooleanをfalseに変更しなくては行けません。

 

p.addDisplayRule(new ParameterDisplayRule("AND", "SOURCE", new Object[] { null, 0 }, false, null));

 

これは、以下のようなものを作成します。

 

if(SOURCE == null || SOURCE == 0) showParameter();

 

これらの表示ルールは、任意のレベルのパネルコレクションに適用することが可能で、パネルやセクション全体を非表示にすることもできます。

 

 

コンストラクター

このclassは、便宜のためにオーバーロードされたコンストラクターと、各プロパティのセッターを提供します。最も記述的なコンスタクラーは、以下の通りです。

 

public ParameterDisplayRule(String logic, String property, Object[] vals, boolean negative, PropertyLocation location)

 

以下は、その属性の説明です。

logicは、このインスタンスのParameterDisplayRule内に複数の「子」表示ルールがある場合に、オペレーターを指定するために使用します。Logicは、AND、またはORになります。3つの子ルールがあり、logicがANDの場合、各ルールは個別に検証され、結果は以下のように結合されます。

Rule1Result && Rule2Result && Rule3Result

「子」表示ルールが無い場合、Logicは無視されます。子ルールがある場合、「親」ルールは検証されません。これは、子ルールのコンテナとしてのみ使用されます。

propertyは、この表示ルールに検証される「その他」のパラメーターを指定します。各パラメーターインスタンスは、その値の識別子を持ちます。例えば、

 

 

 

 

 

 

  • No labels