カスタム HTML ウィジェット (widget)の作成

ZIETrans は「ウィジェットの作成 (Create Widget)」ウィザードを提供しており、カスタム・ウィジェットの作成を支援します。いくつかの方法でウィザードを開始できます。
  • 「ファイル」>「新規」>「ZIETrans ウィジェット」メニューからZIETrans Toolkit
  • ZIETrans Toolkit「ZIETrans」>「新規」>「ウィジェット」メニューから
  • ZIETrans プロジェクトのコンテキスト・メニュー (右クリック) から「新規 ZIETrans 」>「ウィジェット」を選択

「ウィジェットの作成」ウィザードには 2 つのパネルがあります。最初のパネルでは、プロジェクト名、新規ウィジェット名、ウィジェットの Java™ パッケージ名を入力します。オプションで、新規ウィジェットによって使用される設定の構成用の GUI パネルを定義できるスタブ・メソッドを組み込むためのチェック・ボックスを選択することができます (詳しくは、ZIETrans Toolkit のカスタム・コンポーネントおよびウィジェットの設定に対するサポートを参照)。2 番目のパネルでは、ZIETrans Toolkit で新規ウィジェット名として表示する名前を入力し、そのウィジェットに関連付けるコンポーネントを選択します。

このウィザードにより、以下のカスタム・ウィジェットの必須エレメントが提供されます。
  • ウィジェットの抽象クラスを拡張し、HTMLRenderer インターフェースを実装。public class MyCustomWidget extends Widget implements HTMLRenderer.

    詳しくは、ウィジェット・クラスの拡張を参照してください。

  • コンストラクター・メソッドを追加。
    public MyCustomWidget(ComponentElement[] arg0, Properties arg1) {
    		super(arg0, arg1);
    }
  • 以下のメソッドを追加して、Web プロジェクト用の HTML 出力を生成。
    public StringBuffer drawHTML() {
     		StringBuffer buffer = new StringBuffer(256);
     		HTMLElementFactory factory = HTMLElementFactory.newInstance(
     				contextAttributes, settings);
     		return (buffer);
     	}
    

    HTMLElementFactory クラスは、ウィジェットの表示に必要な JavaScript をすべて自動的に生成します。HTMLElementFactory クラスの詳細およびその他の使用例については、「ZIETrans API リファレンス (Javadoc)」を参照してください。『API 資料の使用 (Javadoc)』を参照してください。

  • プロジェクトのソース ・フォルダーにウィジェットのソース・コードを追加。
  • Eclipse ワークベンチのプリファレンス (「ウィンドウ」>「設定」>「一般」>「ワークスペース」) またはプロジェクト・メニューで、「自動的にビルド」を選択している場合は、新規ウィジェット .java ファイルをコンパイルします。ウィジェットが .class ファイルにコンパイルされていない場合、ZIETrans Toolkit では使用できません。
  • ComponentWidget.xml ファイルに新規ウィジェットを登録。ウィジェットの登録の詳細については、コンポーネントまたはウィジェットの登録を参照してください。
チェック・ボックスを選択し ZIETrans Toolkit グラフィカル・ユーザー・インターフェースのサポート・メソッドを組み込んだ場合は、ウィジェットの設定変更が可能になるとともに、「ウィジェットの作成」ウィザードで以下のメソッドが追加されます。
  • プロパティー設定でページ番号を戻すメソッド。
    public int getPropertyPageCount() {
    		return (1);
    }
  • カスタマイズ可能な設定を戻すメソッド。
    public Vector getCustomProperties(int iPageNumber, Properties properties,
    			ResourceBundle bundle) {
    		return (null);
    }
  • カスタマイズ可能な設定のデフォルト値を戻すメソッド。
    public Properties getDefaultValues(int iPageNumber) {
    		return (super.getDefaultValues(iPageNumber));
    	}

カスタム・ウィジェットのサポートに必要なメソッドの詳細については、ZIETrans Toolkit のカスタム・コンポーネントおよびウィジェットの設定に対するサポートを参照してください。