&& item.getPersistedState().get( MenuManagerRenderer.VISIBILITY_IDENTIFIER) != null) { String identifier = item.getPersistedState().get( MenuManagerRenderer.VISIBILITY_IDENTIFIER); Object rc = exprContext.eclipseContext.get(identifier);
&& item.getPersistedState().get( MenuManagerRenderer.VISIBILITY_IDENTIFIER) != null) { String identifier = item.getPersistedState().get( MenuManagerRenderer.VISIBILITY_IDENTIFIER); Object rc = exprContext.eclipseContext.get(identifier);
/** * @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 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(); } }