From e996b41be1edb343ed907c6264c44c6742f2ad9a Mon Sep 17 00:00:00 2001 From: Oleg Krasilnikov Date: Tue, 13 Mar 2007 14:20:59 +0000 Subject: [PATCH] Data hierarchy tab added --- .../icons/obj16/hierarchy.gif | Bin 0 -> 200 bytes .../plugin.properties | 2 + .../plugin.xml | 6 + .../cdt/ui/newui/PluginResources.properties | 12 + .../cdt/ui/newui/StructureTreeTab.java | 712 +++++++++--------- 5 files changed, 375 insertions(+), 357 deletions(-) create mode 100644 build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/hierarchy.gif diff --git a/build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/hierarchy.gif b/build/org.eclipse.cdt.managedbuilder.ui/icons/obj16/hierarchy.gif new file mode 100644 index 0000000000000000000000000000000000000000..17f927e9a4e24ec37908bdde84d7525cd3207bb1 GIT binary patch literal 200 zcmZ?wbhEHb6krfwIKse?U)G}5;9=Pwq{}~7Y#h)yU3=AR+Iv|B0I~iDA6;y*b z7WQOh*-Q>zQovvu$grGQS@-Z + 0) { ti = ti.getParentItem(); if (ti == null) return true; } - tiSaved.setText(2, "Maximal tree nesting"); + tiSaved.setText(2, NewUIMessages.getResourceString("StructureTreeTab.1")); //$NON-NLS-1$ tiSaved.setImage(IMG); return false; } @@ -147,94 +148,93 @@ public class StructureTreeTab extends AbstractCPropertyTab { } private TreeItem create(TreeItem ti0, String text, long val) { TreeItem t = create(ti0, text, String.valueOf(val)); - t.setText(2, "Long"); + t.setText(2, NewUIMessages.getResourceString("StructureTreeTab.2")); //$NON-NLS-1$ return t; } private TreeItem create(TreeItem ti0, String text, String val) { TreeItem ti = ti0 == null ? new TreeItem(tree, 0) : new TreeItem(ti0, 0); - ti.setText(0, text == null ? "" : text); - ti.setText(1, val == null ? "" : val ); - ti.setText(2, "String"); + ti.setText(0, text == null ? NULL : text); + ti.setText(1, val == null ? NULL : val ); + ti.setText(2, NewUIMessages.getResourceString("StructureTreeTab.3")); //$NON-NLS-1$ return ti; } public void createControls(Composite parent) { super.createControls(parent); - usercomp.setLayout(new GridLayout(2, false)); + usercomp.setLayout(new GridLayout(5, false)); - r_prj = new Button(usercomp, SWT.RADIO); - r_prj.setLayoutData(new GridData(GridData.BEGINNING)); - r_prj.setText(NewUIMessages.getResourceString("ConfigDescriptionTab.0")); //$NON-NLS-1$ - r_prj.setSelection(true); - r_prj.addSelectionListener(new SelectionAdapter() { + Label lb = new Label(usercomp, 0); + lb.setText(NewUIMessages.getResourceString("StructureTreeTab.4")); //$NON-NLS-1$ + lb.setLayoutData(new GridData(GridData.BEGINNING)); + + combo = new Combo(usercomp, SWT.BORDER); + combo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + combo.add(NewUIMessages.getResourceString("ConfigDescriptionTab.0")); //$NON-NLS-1$ + combo.add(NewUIMessages.getResourceString("ConfigDescriptionTab.1")); //$NON-NLS-1$ + if (page.isForFolder() || page.isForFile()) { + combo.add(NewUIMessages.getResourceString("ConfigDescriptionTab.2")); //$NON-NLS-1$ + combo.select(2); // ResourceDescription + } else + combo.select(1); // ConfigurationDescription + combo.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { - updateData(getResDesc()); + updateData(cfg); }}); Button b1 = new Button(usercomp, SWT.PUSH); GridData gd = new GridData(GridData.END); - gd.widthHint = BUTTON_SIZE; + gd.minimumWidth = BUTTON_WIDTH; b1.setLayoutData(gd); - b1.setText("Expand all"); + b1.setText(NewUIMessages.getResourceString("StructureTreeTab.5")); //$NON-NLS-1$ b1.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { + tree.setRedraw(false); expandAll(tree.getItem(0), true, -1); - }}); - - r_cfg = new Button(usercomp, SWT.RADIO); - r_cfg.setLayoutData(new GridData(GridData.BEGINNING)); - r_cfg.setText(NewUIMessages.getResourceString("ConfigDescriptionTab.1")); //$NON-NLS-1$ - r_cfg.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent e) { - updateData(getResDesc()); + tree.setRedraw(true); }}); Button b2 = new Button(usercomp, SWT.PUSH); gd = new GridData(GridData.END); - gd.widthHint = BUTTON_SIZE; + gd.minimumWidth = BUTTON_WIDTH; b2.setLayoutData(gd); - b2.setText("Expand level..."); + b2.setText(NewUIMessages.getResourceString("StructureTreeTab.6")); //$NON-NLS-1$ b2.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { LevelDialog ld = new LevelDialog(); if (ld.open() == Window.OK) { + tree.setRedraw(false); expandAll(tree.getItem(0), true, 0); + tree.setRedraw(true); } }}); - r_res = new Button(usercomp, SWT.RADIO); - r_res.setLayoutData(new GridData(GridData.BEGINNING)); - r_res.setText(NewUIMessages.getResourceString("ConfigDescriptionTab.2")); //$NON-NLS-1$ - r_res.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent e) { - updateData(getResDesc()); - }}); - Button b3 = new Button(usercomp, SWT.PUSH); gd = new GridData(GridData.END); - gd.widthHint = BUTTON_SIZE; + gd.minimumWidth = BUTTON_WIDTH; b3.setLayoutData(gd); - b3.setText("Collapse all"); + b3.setText(NewUIMessages.getResourceString("StructureTreeTab.7")); //$NON-NLS-1$ b3.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { + tree.setRedraw(false); expandAll(tree.getItem(0), false, -1); + tree.setRedraw(true); }}); tree = new Tree(usercomp, SWT.BORDER); gd = new GridData(GridData.FILL_BOTH); - gd.horizontalSpan = 2; + gd.horizontalSpan = 5; tree.setLayoutData(gd); TreeColumn tc = new TreeColumn(tree, 0); - tc.setText("Property"); + tc.setText(NewUIMessages.getResourceString("StructureTreeTab.8")); //$NON-NLS-1$ + tc.setWidth(300); + tc = new TreeColumn(tree, 0); + tc.setText(NewUIMessages.getResourceString("StructureTreeTab.9")); //$NON-NLS-1$ + tc.setWidth(100); + tc = new TreeColumn(tree, 0); + tc.setText(NewUIMessages.getResourceString("StructureTreeTab.10")); //$NON-NLS-1$ tc.setWidth(200); - tc = new TreeColumn(tree, 0); - tc.setText("Value"); - tc.setWidth(100); - tc = new TreeColumn(tree, 0); - tc.setText("Class"); - tc.setWidth(100); tree.setHeaderVisible(true); tree.setLinesVisible(true); @@ -246,19 +246,8 @@ public class StructureTreeTab extends AbstractCPropertyTab { }}); } - private TreeItem createObj(TreeItem ti0, String text, Object obj) { -// String s = EMPTY_STR; -// if (obj != null) try { -// Class c = obj.getClass(); -// Method m = c.getMethod("getName", NOCLASS); -// s = (String)m.invoke(obj, null); -// } catch (NoSuchMethodException e) {} -// catch(IllegalAccessException e) {} -// catch(IllegalArgumentException e) {} -// catch(InvocationTargetException e) {} -// catch(ClassCastException e) {} -// - TreeItem t = create(ti0, text, EMPTY_STR); + private TreeItem createObj(TreeItem ti0, String text, String name, Object obj) { + TreeItem t = create(ti0, text, BL+name+BR); if (obj != null) t.setText(2, obj.getClass().getName()); return t; } @@ -285,14 +274,7 @@ public class StructureTreeTab extends AbstractCPropertyTab { else update(ti, s, obs[i]); } } -/* - private void expand(TreeItem ti0, String text, ICSettingObject[] obs) { - TreeItem ti = create(ti0, text, obs == null ? 0 : obs.length); - if (!check(ti, obs)) return; - return; -// for (int i=0; i NESTING_CFG) return ti; - update(ti, "getBuildSetting()", cfg.getBuildSetting()); - create(ti, "getBuildSystemId()", cfg.getBuildSystemId()); - createObj(ti, "getBuildVariablesContributor()", cfg.getBuildVariablesContributor()); - expand(ti, "getChildSettings()", cfg.getChildSettings()); - update(ti, "getConfigurationData()", cfg.getConfigurationData()); - create(ti, "getDescription()", cfg.getDescription()); - expand(ti, "getExternalSettings()", cfg.getExternalSettings()); - expand(ti, "getFileDescriptions()", cfg.getFileDescriptions()); - expand(ti, "getFolderDescriptions()", cfg.getFolderDescriptions()); - create(ti, "getId()", cfg.getId()); - create(ti, "getName()", cfg.getName()); - update(ti, "getParent()", cfg.getParent()); - update(ti, "getReferenceInfo()", cfg.getReferenceInfo()); - expand(ti, "getResourceDescriptions()", cfg.getResourceDescriptions()); - update(ti, "getRootFolderDescription()", cfg.getRootFolderDescription()); - expand(ti, "getSourceEntries()", cfg.getSourceEntries()); - update(ti, "getTargetPlatformSetting()", cfg.getTargetPlatformSetting()); - create(ti,"getType()",cfg.getType()); - create(ti,"isActive()",cfg.isActive()); - create(ti,"isModified()",cfg.isModified()); - create(ti,"isPreferenceConfiguration()",cfg.isPreferenceConfiguration()); - create(ti,"isReadOnly()",cfg.isReadOnly()); - create(ti,"isValid()",cfg.isValid()); - return ti; + update(ti, "getBuildSetting()", cfg.getBuildSetting()); //$NON-NLS-1$ + create(ti, "getBuildSystemId()", cfg.getBuildSystemId()); //$NON-NLS-1$ + createObj(ti, "getBuildVariablesContributor()", EMPTY_STR, cfg.getBuildVariablesContributor()); //$NON-NLS-1$ + update(ti, "getConfigurationData()", cfg.getConfigurationData()); //$NON-NLS-1$ + create(ti, "getDescription()", cfg.getDescription()); //$NON-NLS-1$ + expand(ti, "getExternalSettings()", cfg.getExternalSettings()); //$NON-NLS-1$ + expand(ti, "getFileDescriptions()", cfg.getFileDescriptions()); //$NON-NLS-1$ + expand(ti, "getFolderDescriptions()", cfg.getFolderDescriptions()); //$NON-NLS-1$ + create(ti, "getId()", cfg.getId()); //$NON-NLS-1$ + create(ti, "getName()", cfg.getName()); //$NON-NLS-1$ + update(ti, "getParent()", cfg.getParent()); //$NON-NLS-1$ + update(ti, "getReferenceInfo()", cfg.getReferenceInfo()); //$NON-NLS-1$ + expand(ti, "getResourceDescriptions()", cfg.getResourceDescriptions()); //$NON-NLS-1$ + update(ti, "getRootFolderDescription()", cfg.getRootFolderDescription()); //$NON-NLS-1$ + expand(ti, "getSourceEntries()", cfg.getSourceEntries()); //$NON-NLS-1$ + update(ti, "getTargetPlatformSetting()", cfg.getTargetPlatformSetting()); //$NON-NLS-1$ + create(ti,"getType()",cfg.getType()); //$NON-NLS-1$ + create(ti,"isActive()",cfg.isActive()); //$NON-NLS-1$ + create(ti,"isModified()",cfg.isModified()); //$NON-NLS-1$ + create(ti,"isPreferenceConfiguration()",cfg.isPreferenceConfiguration()); //$NON-NLS-1$ + create(ti,"isReadOnly()",cfg.isReadOnly()); //$NON-NLS-1$ + create(ti,"isValid()",cfg.isValid()); //$NON-NLS-1$ + return ti; } private TreeItem update(TreeItem ti0, String text, ICExclusionPatternPathEntry s) { - TreeItem ti = createObj(ti0, text, s); + TreeItem ti = createObj(ti0, text, s.getName(), s); if (!check(ti, s)) return ti; char[][] chrs = s.fullExclusionPatternChars(); - TreeItem ti1 = create(ti, "fullExclusionPatternChars()", chrs.length); + TreeItem ti1 = create(ti, "fullExclusionPatternChars()", chrs.length); //$NON-NLS-1$ for (int j=0; j NESTING_CFG) + create(ti, "getNestedResourceDescriptions()", rds.length); //$NON-NLS-1$ + else + expand(ti, "getNestedResourceDescriptions()", rds); //$NON-NLS-1$ } - update(ti, "getParent()", rcfg.getParent()); - update(ti, "getParentFolderDescription()", rcfg.getParentFolderDescription()); - update(ti, "getPath()", rcfg.getPath()); - create(ti, "getType()", rcfg.getType()); - create(ti,"isExcluded()", rcfg.isExcluded()); - create(ti,"isReadOnly()", rcfg.isReadOnly()); - if (rcfg instanceof ICFolderDescription) - create(ti,"isRoot()",((ICFolderDescription)rcfg).isRoot()); - create(ti,"isValid()",rcfg.isValid()); + update(ti, "getParent()", rcfg.getParent()); //$NON-NLS-1$ + update(ti, "getParentFolderDescription()", rcfg.getParentFolderDescription()); //$NON-NLS-1$ + update(ti, "getPath()", rcfg.getPath()); //$NON-NLS-1$ + create(ti, "getType()", rcfg.getType()); //$NON-NLS-1$ + create(ti,"isExcluded()", rcfg.isExcluded()); //$NON-NLS-1$ + create(ti,"isReadOnly()", rcfg.isReadOnly()); //$NON-NLS-1$ + if (rcfg instanceof ICFolderDescription) + create(ti,"isRoot()",((ICFolderDescription)rcfg).isRoot()); //$NON-NLS-1$ + create(ti,"isValid()",rcfg.isValid()); //$NON-NLS-1$ return ti; } private TreeItem update(TreeItem ti0, String text, ICLanguageSetting ls) { - TreeItem ti = new TreeItem(tree, 0); + TreeItem ti = createObj(ti0, text, ls == null ? NULL : ls.getName(), ls); if (!check(ti, ls)) return ti; - update(ti, "getConfiguration()", ls.getConfiguration()); - create(ti, "getId()", ls.getId()); - create(ti, "getLanguageId()", ls.getLanguageId()); - create(ti, "getName()", ls.getName()); - update(ti, "getParent()", ls.getParent()); - expand(ti, "getSourceContentTypeIds()", ls.getSourceContentTypeIds()); - expand(ti, "getSourceExtensions()", ls.getSourceExtensions()); - create(ti,"getType()",ls.getType()); - int k = ls.getSupportedEntryKinds(); - TreeItem ti1 = create(ti, "getSupportedEntryKinds()", k); + update(ti, "getConfiguration()", ls.getConfiguration()); //$NON-NLS-1$ + create(ti, "getId()", ls.getId()); //$NON-NLS-1$ + create(ti, "getLanguageId()", ls.getLanguageId()); //$NON-NLS-1$ + create(ti, "getName()", ls.getName()); //$NON-NLS-1$ + update(ti, "getParent()", ls.getParent()); //$NON-NLS-1$ + expand(ti, "getSourceContentTypeIds()", ls.getSourceContentTypeIds()); //$NON-NLS-1$ + expand(ti, "getSourceExtensions()", ls.getSourceExtensions()); //$NON-NLS-1$ + create(ti,"getType()",ls.getType()); //$NON-NLS-1$ + int k = ls.getSupportedEntryKinds(); + TreeItem ti1 = create(ti, "getSupportedEntryKinds()", k); //$NON-NLS-1$ int[] kind = flagsToArray(k); for (int j=0; j NESTING_CFG) return ti; - expand(ti, "getChildSettings()", c.getChildSettings()); + expand(ti, "getChildSettings()", c.getChildSettings()); //$NON-NLS-1$ return ti; } private TreeItem update(TreeItem ti0, String text, ICSettingObject obj) { - TreeItem ti = createObj(ti0, text, obj); + TreeItem ti = createObj(ti0, text, obj == null ? NULL : obj.getName(), obj); if (!check(ti, obj)) return ti; if (obj instanceof ICTargetPlatformSetting) - expand(ti, "getBinaryParserIds()", ((ICTargetPlatformSetting)obj).getBinaryParserIds()); - update(ti, "getConfiguration()", obj.getConfiguration()); - create(ti, "getId()", obj.getId()); - create(ti, "getName()", obj.getName()); - createObj(ti, "getParent()", obj.getParent()); - create(ti, "getType()", obj.getType()); - create(ti,"isReadOnly()", obj.isReadOnly()); - create(ti,"isValid()",obj.isValid()); + expand(ti, "getBinaryParserIds()", ((ICTargetPlatformSetting)obj).getBinaryParserIds()); //$NON-NLS-1$ + update(ti, "getConfiguration()", obj.getConfiguration()); //$NON-NLS-1$ + create(ti, "getId()", obj.getId()); //$NON-NLS-1$ + create(ti, "getName()", obj.getName()); //$NON-NLS-1$ + createObj(ti, "getParent()", EMPTY_STR, obj.getParent()); //$NON-NLS-1$ + create(ti, "getType()", obj.getType()); //$NON-NLS-1$ + create(ti,"isReadOnly()", obj.isReadOnly()); //$NON-NLS-1$ + create(ti,"isValid()",obj.isValid()); //$NON-NLS-1$ return ti; } private TreeItem update(TreeItem ti0, String text, ICTargetPlatformSetting obj) { - TreeItem ti = createObj(ti0, text, obj); + TreeItem ti = createObj(ti0, text, obj == null ? NULL : obj.getName(), obj); if (!check(ti, obj)) return ti; - update(ti, "getConfiguration()", obj.getConfiguration()); - create(ti, "getId()", obj.getId()); - create(ti, "getName()", obj.getName()); - update(ti, "getParent()", obj.getParent()); - create(ti, "getType()", obj.getType()); - create(ti,"isReadOnly()", obj.isReadOnly()); - create(ti,"isValid()",obj.isValid()); + update(ti, "getConfiguration()", obj.getConfiguration()); //$NON-NLS-1$ + create(ti, "getId()", obj.getId()); //$NON-NLS-1$ + create(ti, "getName()", obj.getName()); //$NON-NLS-1$ + update(ti, "getParent()", obj.getParent()); //$NON-NLS-1$ + create(ti, "getType()", obj.getType()); //$NON-NLS-1$ + create(ti,"isReadOnly()", obj.isReadOnly()); //$NON-NLS-1$ + create(ti,"isValid()",obj.isValid()); //$NON-NLS-1$ return ti; } private TreeItem update(TreeItem ti0, String text, IPath p) { - TreeItem ti = createObj(ti0, text, p); + TreeItem ti = createObj(ti0, text, p == null ? NULL : p.toString(), p); if (!check(ti, p)) return ti; - create(ti, "getDevice()", p.getDevice()); - create(ti, "getFileExtension()", p.getFileExtension()); - create(ti, "hasTrailingSeparator()", p.hasTrailingSeparator()); - create(ti, "isAbsolute()", p.isAbsolute()); - create(ti, "isEmpty()", p.isEmpty()); - create(ti, "isRoot()", p.isRoot()); - create(ti, "isUNC()", p.isUNC()); - TreeItem ti1 = create(ti, "segmentCount()", p.segmentCount()); + create(ti, "getDevice()", p.getDevice()); //$NON-NLS-1$ + create(ti, "getFileExtension()", p.getFileExtension()); //$NON-NLS-1$ + create(ti, "hasTrailingSeparator()", p.hasTrailingSeparator()); //$NON-NLS-1$ + create(ti, "isAbsolute()", p.isAbsolute()); //$NON-NLS-1$ + create(ti, "isEmpty()", p.isEmpty()); //$NON-NLS-1$ + create(ti, "isRoot()", p.isRoot()); //$NON-NLS-1$ + create(ti, "isUNC()", p.isUNC()); //$NON-NLS-1$ + TreeItem ti1 = create(ti, "segmentCount()", p.segmentCount()); //$NON-NLS-1$ for (int i=0; i NESTING_CFG) return ti; if (c instanceof IContainer) try { - create(ti, "getDefaultCharset()", ((IContainer)c).getDefaultCharset()); + create(ti, "getDefaultCharset()", ((IContainer)c).getDefaultCharset()); //$NON-NLS-1$ } catch (CoreException e) {} - create(ti, "getFileExtension()", c.getFileExtension()); - update(ti, "getFullPath()", c.getFullPath()); + create(ti, "getFileExtension()", c.getFileExtension()); //$NON-NLS-1$ + update(ti, "getFullPath()", c.getFullPath()); //$NON-NLS-1$ // TODO: // c.getLocalTimeStamp()); - update(ti, "getLocation()", c.getLocation()); - update(ti, "getLocationURI()", c.getLocationURI()); + update(ti, "getLocation()", c.getLocation()); //$NON-NLS-1$ + update(ti, "getLocationURI()", c.getLocationURI()); //$NON-NLS-1$ // c.getModificationStamp()); - create(ti, "getName()", c.getName()); - update(ti, "getParent()", c.getParent()); - update(ti, "getProject()", c.getProject()); + create(ti, "getName()", c.getName()); //$NON-NLS-1$ + update(ti, "getParent()", c.getParent()); //$NON-NLS-1$ + update(ti, "getProject()", c.getProject()); //$NON-NLS-1$ if (c instanceof IWorkspaceRoot) - expand(ti, "getProjects()", ((IWorkspaceRoot)c).getProjects()); - update(ti, "getProjectRelativePath()", c.getProjectRelativePath()); - update(ti, "getRawLocation()", c.getRawLocation()); - update(ti, "getRawLocationURI()", c.getRawLocationURI()); - update(ti, "getResourceAttributes()", c.getResourceAttributes()); - create(ti, "getType()", c.getType()); - createObj(ti, "getWorkspace()", c.getWorkspace()); - create(ti, "isAccessible()", c.isAccessible()); - create(ti, "isDerived()", c.isDerived()); - create(ti, "isLinked()", c.isLinked()); - create(ti, "isLocal(ZERO)", c.isLocal(0)); - create(ti, "isLocal(INIFINITE)", c.isLocal(2)); - create(ti, "isPhantom()", c.isPhantom()); - create(ti, "isReadOnly()", c.isReadOnly()); - create(ti, "isSynchronized(ZERO)", c.isSynchronized(0)); - create(ti, "isSynchronized(INFINITE)", c.isSynchronized(2)); - create(ti, "isTeamPrivateMember()", c.isTeamPrivateMember()); + expand(ti, "getProjects()", ((IWorkspaceRoot)c).getProjects()); //$NON-NLS-1$ + update(ti, "getProjectRelativePath()", c.getProjectRelativePath()); //$NON-NLS-1$ + update(ti, "getRawLocation()", c.getRawLocation()); //$NON-NLS-1$ + update(ti, "getRawLocationURI()", c.getRawLocationURI()); //$NON-NLS-1$ + update(ti, "getResourceAttributes()", c.getResourceAttributes()); //$NON-NLS-1$ + create(ti, "getType()", c.getType()); //$NON-NLS-1$ + createObj(ti, "getWorkspace()", EMPTY_STR, c.getWorkspace()); //$NON-NLS-1$ + create(ti, "isAccessible()", c.isAccessible()); //$NON-NLS-1$ + create(ti, "isDerived()", c.isDerived()); //$NON-NLS-1$ + create(ti, "isLinked()", c.isLinked()); //$NON-NLS-1$ + // create(ti, "isLocal(ZERO)", c.isLocal(0)); //$NON-NLS-1$ + // create(ti, "isLocal(INIFINITE)", c.isLocal(2)); //$NON-NLS-1$ + create(ti, "isPhantom()", c.isPhantom()); //$NON-NLS-1$ + // create(ti, "isReadOnly()", c.isReadOnly()); //$NON-NLS-1$ + create(ti, "isSynchronized(ZERO)", c.isSynchronized(0)); //$NON-NLS-1$ + create(ti, "isSynchronized(INFINITE)", c.isSynchronized(2)); //$NON-NLS-1$ + create(ti, "isTeamPrivateMember()", c.isTeamPrivateMember()); //$NON-NLS-1$ if (c instanceof IContainer) try { - expand(ti, "members()", ((IContainer)c).members()); + expand(ti, "members()", ((IContainer)c).members()); //$NON-NLS-1$ } catch (CoreException e) {} return ti; } private TreeItem update(TreeItem ti0, String text, IWorkspace w) { - TreeItem ti = createObj(ti0, text, w); + TreeItem ti = createObj(ti0, text, EMPTY_STR, w); if (!check(ti, w)) return ti; - update(ti, "getDescription()", w.getDescription()); - expand(ti, "getNatureDescriptors()", w.getNatureDescriptors()); - createObj(ti, "getPathVariableManager()", w.getPathVariableManager()); - update(ti, "getRoot()", w.getRoot()); - createObj(ti, "getSynchronizer()", w.getSynchronizer()); - create(ti, "isAutoBuilding()", w.isAutoBuilding()); - create(ti, "isTreeLocked()", w.isTreeLocked()); + update(ti, "getDescription()", w.getDescription()); //$NON-NLS-1$ + expand(ti, "getNatureDescriptors()", w.getNatureDescriptors()); //$NON-NLS-1$ + createObj(ti, "getPathVariableManager()", EMPTY_STR, w.getPathVariableManager()); //$NON-NLS-1$ + update(ti, "getRoot()", w.getRoot()); //$NON-NLS-1$ + createObj(ti, "getSynchronizer()", EMPTY_STR, w.getSynchronizer()); //$NON-NLS-1$ + create(ti, "isAutoBuilding()", w.isAutoBuilding()); //$NON-NLS-1$ + create(ti, "isTreeLocked()", w.isTreeLocked()); //$NON-NLS-1$ return ti; } private TreeItem update(TreeItem ti0, String text, IWorkspaceDescription w) { - TreeItem ti = createObj(ti0, text, w); + TreeItem ti = createObj(ti0, text, EMPTY_STR, w); if (!check(ti, w)) return ti; - expand(ti, "getBuildOrder()", w.getBuildOrder()); - create(ti, "getFileStateLongevity()", w.getFileStateLongevity()); - create(ti, "getMaxBuildIterations()", w.getMaxBuildIterations()); - create(ti, "getMaxFileStates()", w.getMaxFileStates()); - create(ti, "getMaxFileStateSize()", w.getMaxFileStateSize()); - create(ti, "getSnapshotInterval()", w.getSnapshotInterval()); - create(ti, "isAutoBuilding()", w.isAutoBuilding()); + expand(ti, "getBuildOrder()", w.getBuildOrder()); //$NON-NLS-1$ + create(ti, "getFileStateLongevity()", w.getFileStateLongevity()); //$NON-NLS-1$ + create(ti, "getMaxBuildIterations()", w.getMaxBuildIterations()); //$NON-NLS-1$ + create(ti, "getMaxFileStates()", w.getMaxFileStates()); //$NON-NLS-1$ + create(ti, "getMaxFileStateSize()", w.getMaxFileStateSize()); //$NON-NLS-1$ + create(ti, "getSnapshotInterval()", w.getSnapshotInterval()); //$NON-NLS-1$ + create(ti, "isAutoBuilding()", w.isAutoBuilding()); //$NON-NLS-1$ return ti; } @@ -721,61 +706,74 @@ public class StructureTreeTab extends AbstractCPropertyTab { * Default method to display unknown classes */ private TreeItem update(TreeItem ti0, String text, Object ob) { - TreeItem ti = createObj(ti0, BL+text+BR, ob); + TreeItem ti = createObj(ti0, BL+text+BR, "???", ob); //$NON-NLS-1$ check(ti, ob); return ti; } private TreeItem update(TreeItem ti0, String text, Map m) { - TreeItem ti = createObj(ti0, text, m); + String s = (m == null) ? NULL : String.valueOf(m.size()); + TreeItem ti = createObj(ti0, text, s, m); if (!check(ti, m)) return ti; Iterator it = m.keySet().iterator(); while (it.hasNext()) { - String s = (String)it.next(); - create(ti, s + " =", (String)m.get(s)); + s = (String)it.next(); + create(ti, s + " =", (String)m.get(s)); //$NON-NLS-1$ } return ti; } private TreeItem update(TreeItem ti0, String text, ResourceAttributes ra) { - TreeItem ti = createObj(ti0, text, ra); + TreeItem ti = createObj(ti0, text, EMPTY_STR, ra); if (!check(ti, ra)) return ti; - create(ti, "isArchive()", ra.isArchive()); - create(ti, "isExecutable()", ra.isExecutable()); - create(ti, "isHidden()", ra.isHidden()); - create(ti, "isReadOnly()", ra.isReadOnly()); + create(ti, "isArchive()", ra.isArchive()); //$NON-NLS-1$ + create(ti, "isExecutable()", ra.isExecutable()); //$NON-NLS-1$ + create(ti, "isHidden()", ra.isHidden()); //$NON-NLS-1$ + create(ti, "isReadOnly()", ra.isReadOnly()); //$NON-NLS-1$ return ti; } private TreeItem update(TreeItem ti0, String text, URI uri) { - TreeItem ti = createObj(ti0, text, uri); + TreeItem ti = createObj(ti0, text, uri == null ? NULL : uri.toString(), uri); if (!check(ti, uri)) return ti; - create(ti, "getAuthority()", uri.getAuthority()); - create(ti, "getFragment()", uri.getFragment()); - create(ti, "getHost()", uri.getHost()); - create(ti, "getPath()", uri.getPath()); - create(ti, "getPort()", uri.getPort()); - create(ti, "getQuery()", uri.getQuery()); -/* - create(ti, "getRawAuthority()", uri.getRawAuthority()); - create(ti, "getRawFragment()", uri.getRawFragment()); - create(ti, "getRawHost()", uri.getRawHost()); - create(ti, "getRawPath()", uri.getRawPath()); - create(ti, "getRawQuery()", uri.getRawQuery()); - create(ti, "getRawSchemeSpecificPart()", uri.getRawSchemeSpecificPart()); - create(ti, "getRawUserInfo()", uri.getRawUserInfo()); -*/ - create(ti, "isAbsolute()", uri.isAbsolute()); - create(ti, "isOpaque()", uri.isOpaque()); - create(ti, "toASCIIString()", uri.toASCIIString()); -// create(ti, "uri.toIRIString()", uri.toIRIString()); + create(ti, "getAuthority()", uri.getAuthority()); //$NON-NLS-1$ + create(ti, "getFragment()", uri.getFragment()); //$NON-NLS-1$ + create(ti, "getHost()", uri.getHost()); //$NON-NLS-1$ + create(ti, "getPath()", uri.getPath()); //$NON-NLS-1$ + create(ti, "getPort()", uri.getPort()); //$NON-NLS-1$ + create(ti, "getQuery()", uri.getQuery()); //$NON-NLS-1$ + create(ti, "isAbsolute()", uri.isAbsolute()); //$NON-NLS-1$ + create(ti, "isOpaque()", uri.isOpaque()); //$NON-NLS-1$ + create(ti, "toASCIIString()", uri.toASCIIString()); //$NON-NLS-1$ return ti; } public void updateData(ICResourceDescription rcfg) { - tree.removeAll(); - if (r_prj.getSelection()) update(rcfg.getConfiguration().getProjectDescription()); - if (r_cfg.getSelection()) update(null, "ICConfigurationDescription", rcfg.getConfiguration()); - if (r_res.getSelection()) update(null, "ICResourceDescription", rcfg); + cfg = rcfg; + tree.getDisplay().asyncExec(new Runnable() { + public void run() { + try { + tree.removeAll(); + TreeItem ti = new TreeItem(tree, 0); + ti.setText(0, NewUIMessages.getResourceString("StructureTreeTab.11")); //$NON-NLS-1$ + tree.update(); + tree.setRedraw(false); + tree.removeAll(); + switch (combo.getSelectionIndex()) { + case 0: + update(cfg.getConfiguration().getProjectDescription()); + break; + case 1: + update(null, "ICConfigurationDescription", cfg.getConfiguration()); //$NON-NLS-1$ + break; + case 2: + update(null, "ICResourceDescription", cfg); //$NON-NLS-1$ + break; + } + } finally { + tree.setRedraw(true); + } + } + }); } }