Rational Developer for System z


第 3 課:開發 CustomLabelProvider 類別的程式碼

在本課程中,您將開發 CustomLabelProvider 類別的程式碼,此程式碼將控制如何在「CARMA 開發人員」視圖中顯示項目。

若要開發此程式碼:

  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 陳述式中。新增任何遺漏的套件:
    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)