public void collectInfo(ExpressionInfo info) { ContributionsAnalyzer.collectInfo(info, menuContribution.getVisibleWhen()); for (MMenuElement item : generatedElements) { ContributionsAnalyzer.collectInfo(info, item.getVisibleWhen()); } for (MMenuElement item : sharedElements) { ContributionsAnalyzer.collectInfo(info, item.getVisibleWhen()); } }
public void collectInfo(ExpressionInfo info) { ContributionsAnalyzer.collectInfo(info, menuContribution.getVisibleWhen()); for (MMenuElement item : generatedElements) { ContributionsAnalyzer.collectInfo(info, item.getVisibleWhen()); } for (MMenuElement item : sharedElements) { ContributionsAnalyzer.collectInfo(info, item.getVisibleWhen()); } }
if (currentVisibility && item.getVisibleWhen() != null) { boolean val = ContributionsAnalyzer.isVisible(item.getVisibleWhen(), exprContext); currentVisibility = val;
&& item.getVisibleWhen() instanceof MCoreExpression) { boolean val = ContributionsAnalyzer.isVisible( (MCoreExpression) item.getVisibleWhen(), exprContext); currentVisibility = val;
/** * @param menuManager * @param element * @param evalContext */ public static void updateVisibility(MenuManager menuManager, MMenuElement element, ExpressionContext evalContext) { boolean current = element.isVisible(); boolean visible = true; boolean evaluated = false; if (element.getPersistedState().get(VISIBILITY_IDENTIFIER) != null) { evaluated = true; String identifier = element.getPersistedState().get(VISIBILITY_IDENTIFIER); Object rc = evalContext.eclipseContext.get(identifier); if (rc instanceof Boolean) { visible = ((Boolean) rc).booleanValue(); } } if (visible && element.getVisibleWhen() != null) { evaluated = true; visible = ContributionsAnalyzer.isVisible(element.getVisibleWhen(), evalContext); } if (evaluated && visible != current) { element.setVisible(visible); menuManager.markDirty(); } }
/** * @param menuManager * @param element * @param evalContext */ public static void updateVisibility(MenuManager menuManager, MMenuElement element, ExpressionContext evalContext) { boolean current = element.isVisible(); boolean visible = true; boolean evaluated = false; if (element.getPersistedState().get(VISIBILITY_IDENTIFIER) != null) { evaluated = true; String identifier = element.getPersistedState().get( VISIBILITY_IDENTIFIER); Object rc = evalContext.eclipseContext.get(identifier); if (rc instanceof Boolean) { visible = ((Boolean) rc).booleanValue(); } } if (visible && (element.getVisibleWhen() instanceof MCoreExpression)) { evaluated = true; visible = ContributionsAnalyzer.isVisible( (MCoreExpression) element.getVisibleWhen(), evalContext); } if (evaluated && visible != current) { element.setVisible(visible); menuManager.markDirty(); } }
/** * @param info * @param menuModel * @param renderer * @param evalContext * @param recurse */ public static void collectInfo(ExpressionInfo info, final MMenu menuModel, final MenuManagerRenderer renderer, final IEclipseContext evalContext, boolean recurse) { HashSet<ContributionRecord> records = new HashSet<>(); for (MMenuElement element : menuModel.getChildren()) { ContributionRecord record = renderer.getContributionRecord(element); if (record != null) { if (records.add(record)) { record.collectInfo(info); } } else { ContributionsAnalyzer.collectInfo(info, element.getVisibleWhen()); } if (recurse && element instanceof MMenu) { MMenu childMenu = (MMenu) element; collectInfo(info, childMenu, renderer, evalContext, false); } } }
/** * @param info * @param menuModel * @param renderer * @param evalContext * @param recurse */ public static void collectInfo(ExpressionInfo info, final MMenu menuModel, final MenuManagerRenderer renderer, final IEclipseContext evalContext, boolean recurse) { HashSet<ContributionRecord> records = new HashSet<ContributionRecord>(); for (MMenuElement element : menuModel.getChildren()) { ContributionRecord record = renderer.getContributionRecord(element); if (record != null) { if (records.add(record)) { record.collectInfo(info); } } else { ContributionsAnalyzer.collectInfo(info, element.getVisibleWhen()); } if (recurse && element instanceof MMenu) { MMenu childMenu = (MMenu) element; collectInfo(info, childMenu, renderer, evalContext, false); } } }
menuModel.getChildren().add(idx++, copy); } else { shared.setVisibleWhen(merge(copy.getVisibleWhen(), shared.getVisibleWhen())); copy = shared;
menuModel.getChildren().add(idx++, copy); } else { shared.setVisibleWhen(merge(copy.getVisibleWhen(), shared.getVisibleWhen())); copy = shared;