2017-05-02 48 views
1

我已經使用org.eclipse.ui.newWizard擴展點創建了一個新嚮導。 它在選定的包下創建一個新文件。有條件地停止顯示org.eclipse.ui.newWizard

現在我需要顯示一條錯誤消息,並且如果用戶沒有選擇包,則不顯示嚮導。如果選擇了我的getSelectedPackage()方法,則會返回currunt程序包,如果不返回null

performCancel()之外,所有內容均按預期工作。它顯示錯誤消息,然後顯示嚮導對話框。

任何人都可以建議我如何有條件地停止顯示嚮導?

public class NewTestScriptWizard extends Wizard implements INewWizard { 

public NewTestScriptWizard() { 
    super(); 
    setNeedsProgressMonitor(true); 
    if(getSelectedPackage()== null){ 
     MessageDialog 
       .openError(getShell(), "Error","You must select a package to create a new file"); 
    performCancel(); 
    } 
} 

回答

1

此時無法停止嚮導的創建。當這樣調用時,performCancel什麼也不做。

到唯一要做的是在嚮導的第一頁顯示一個錯誤消息(具有setMessagesetErrorMessage),並設置頁是不完整的(與setPageComplete(false)使得僅取消可被按壓。

+0

感謝@格雷格一如既往的評論! –