CommonNavigator を拡張するビューを持っています。
CustomProjectCreation ウィザードを使用してカスタム プロジェクトを作成しています。
以下のように更新するだけで機能しますが、新しいプロジェクトが作成されるたびにすべてのプロジェクトが更新されますが、これは避けるべきです。
CommonNavigator resNav;
try {
resNav = (CommonNavigator)activePage.findView("view id");
resNav.getCommonViewer().refresh();
//resNav.getCommonViewer().refresh(newProject); //doesn't work
} catch (PartInitException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
ContentProvider looks as below
if(parentElement instanceof IWorkspaceRoot){
List customProjects = getCustomProjects();
return customProjects.toArray(new CustomProject[customProjects.size()]);
}
デバッグでは、getCommonViewer().refresh() がコンテンツ プロバイダの getChildren() メソッドを呼び出します。getCommonViewer().refresh(newProject) は ContentProvider を呼び出しません
expandtolevel と setExpandedState が機能していません...
特に新しく作成されたプロジェクトを更新するにはどうすればよいですか? 作成したプロジェクトを展開するには?
よろしく、 アラヴィンド