Rational Developer for System z


レッスン 3 CustomLabelProvider クラス用のコードの作成

このレッスンでは、「CARMA 開発者 (CARMA Developer)」ビューの項目がどのように表示されるかを制御する CustomLabelProvider クラスのコードを作成します。

このコードを作成するには、次のようにします。

  1. ContextLabelProvider クラスを開きます。「パッケージ・エクスプローラー」ビューから、com.ibm.carma.plugin.view > src > view にナビゲートして、CustomLabelProvider クラスをダブルクリックします。
  2. 最初に、getText() メソッドをオーバーライドします。 このメソッドは、リポジトリー・マネージャーが接続されているかどうかを確認して、接続/切断の状態を表すラベルをリポジトリー・マネージャーに追加します。

    getText() メソッドの疑似コードを次の例に示します。

    if(the element passed to getText is a repository manager)
    {
       if(the repository manager is connected)
       {
          add connected label to the repository manager;
       }
       else
       {
          add disconnected label to the repository manager;
       }
    }

    次のサンプル・ソースを使用して、getText() メソッドをオーバーライドします。

    public String getText(Object element)
    {
       String textLabel = super.getText(element);
       if(element instanceof RepositoryManager)
       {
          if( ((RepositoryManager)element).isConnected())
          {
             textLabel += " - (Connected)";
          }
          else
          {
             textLabel += " - (Disconnected)";
          }
    	}
    
      return textLabel;
    }
  3. 次にオーバーライドするメソッドは、getImage() メソッドです。 このメソッドは、COBOL メンバーのアイコンの表示を変更します。

    getImage() メソッドの疑似コードを次に示します。

    if( the element passed getImage is a CARMA Member)
    {
       if( the CARMA Member's extension is "cbl" )
       {
          decorate the CARMA Member;
       }
    }

    getImage() メソッドのソース・コードを次の例に示します。

    public Image getImage(Object element)
    {
       if(element instanceof CARMAMember)
       {
          if(((CARMAMember) element).getLocalExtension().equalsIgnoreCase("cbl"))
          {
             //replace the parameter of getImageDescriptor() with the path to your particular icon
             ImageDescriptor myDescriptor = Activator.getImageDescriptor("icons/cobol.gif");
             return myDescriptor.createImage();
          }
       }
       return super.getImage(element);
    }
    注: getImageDescriptor メソッドにパラメーターとして渡されるパス名は、ディレクトリーとイメージ名に一致している必要があります。
  4. 最後に、Java クラスの先頭にあるインポート・ステートメントに、次のパッケージがリストされていることを確認します。欠落しているものがあれば追加します。
    import com.ibm.carma.plugin.view.Activator;
    
    import org.eclipse.jface.resource.ImageDescriptor;
    import org.eclipse.swt.graphics.Image;
    
    import com.ibm.carma.model.*;
    import com.ibm.carma.ui.view.*;
  5. ソースを保存し、すべてのエラーをデバッグします。

ご利用条件 | フィードバック



このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)