private void updateToolItem() { ToolItem item = (ToolItem) widget; final String text = model.getLocalizedLabel(); Image icon = item.getImage(); boolean mode = model.getTags().contains(FORCE_TEXT); if ((icon == null || mode) && text != null) { item.setText(text); } else { item.setText(""); //$NON-NLS-1$ } final String tooltip = model.getLocalizedTooltip(); item.setToolTipText(tooltip); item.setSelection(model.isSelected()); item.setEnabled(model.isEnabled()); }
private String getDisabledIconURI(MItem toolItem) { Object obj = toolItem.getTransientData().get(IPresentationEngine.DISABLED_ICON_IMAGE_KEY); return obj instanceof String ? (String) obj : ""; //$NON-NLS-1$ }
@Override public void setChecked(boolean checked) { item.setSelected(checked); } };
@Override public void run() throws Exception { boolean shouldEnable = canExecuteItem(null); if (shouldEnable != modelItem.isEnabled()) { modelItem.setEnabled(shouldEnable); update(); } }
private void updateMenuItem() { MenuItem item = (MenuItem) widget; String text = model.getLocalizedLabel(); if (text != null) { item.setText(text); } else { item.setText(""); //$NON-NLS-1$ } item.setSelection(model.isSelected()); item.setEnabled(model.isEnabled()); }
@Override public void fill(Menu menu, int index) { if (model == null) { return; } if (widget != null) { return; } int style = SWT.PUSH; if (model.getType() == ItemType.PUSH) style = SWT.PUSH; else if (model.getType() == ItemType.CHECK) style = SWT.CHECK; else if (model.getType() == ItemType.RADIO) style = SWT.RADIO; MenuItem item = null; if (index >= 0) { item = new MenuItem(menu, style, index); } else { item = new MenuItem(menu, style); } item.setData(this); item.addListener(SWT.Dispose, getItemListener()); item.addListener(SWT.Selection, getItemListener()); item.addListener(SWT.DefaultSelection, getItemListener()); widget = item; model.setWidget(widget); widget.setData(AbstractPartRenderer.OWNING_ME, model); update(null); }
private void handleWidgetDispose(Event event) { if (event.widget == widget) { if (infoContext != null) { infoContext.dispose(); infoContext = null; } widget.removeListener(SWT.Selection, getItemListener()); widget.removeListener(SWT.Dispose, getItemListener()); widget.removeListener(SWT.DefaultSelection, getItemListener()); widget = null; Object obj = model.getTransientData().get(DISPOSABLE); if (obj instanceof Runnable) { ((Runnable) obj).run(); } model.setWidget(null); disposeOldImages(); } }
protected void handleWidgetSelection(Event event) { if (widget != null && !widget.isDisposed()) { if (dropdownEvent(event)) { return; } if (modelItem.getType() == ItemType.CHECK || modelItem.getType() == ItemType.RADIO) { boolean selection = false; if (widget instanceof MenuItem) { selection = ((MenuItem) widget).getSelection(); } else if (widget instanceof ToolItem) { selection = ((ToolItem) widget).getSelection(); } modelItem.setSelected(selection); } if (canExecuteItem(event)) { executeItem(event); } } }
private void updateIcons() { if (!(widget instanceof Item)) { return; } Item item = (Item) widget; String iconURI = model.getIconURI() != null ? model.getIconURI() : ""; //$NON-NLS-1$ String disabledURI = getDisabledIconURI(model); if (!iconURI.equals(item.getData(ICON_URI)) || !disabledURI.equals(item.getData(DISABLED_URI))) { LocalResourceManager resourceManager = new LocalResourceManager( JFaceResources.getResources()); Image iconImage = getImage(iconURI, resourceManager); item.setImage(iconImage); item.setData(ICON_URI, iconURI); if (item instanceof ToolItem) { iconImage = getImage(disabledURI, resourceManager); ((ToolItem) item).setDisabledImage(iconImage); item.setData(DISABLED_URI, disabledURI); } disposeOldImages(); localResourceManager = resourceManager; } }
private String getToolTipText(MItem item) { String text = item.getLocalizedTooltip(); if (item instanceof MHandledItem) { MHandledItem handledItem = (MHandledItem) item; IEclipseContext context = getContext(item); EBindingService bs = (EBindingService) context .get(EBindingService.class.getName()); ParameterizedCommand cmd = handledItem.getWbCommand(); if (cmd == null) { cmd = generateParameterizedCommand(handledItem, context); } TriggerSequence sequence = bs.getBestSequenceFor(handledItem .getWbCommand()); if (sequence != null) { if (text == null) { try { text = cmd.getName(); } catch (NotDefinedException e) { return null; } } text = text + " (" + sequence.format() + ')'; //$NON-NLS-1$ } return text; } return text; }
public void setModel(MItem item) { model = item; setId(model.getElementId()); updateVisible(); }
protected ToolItemUpdater getUpdater() { if (modelItem != null) { Object obj = modelItem.getRenderer(); if (obj instanceof ToolBarManagerRenderer) { return ((ToolBarManagerRenderer) obj).getUpdater(); } } return null; }
@Override public void hookControllerLogic(MUIElement me) { // If the item is a CHECK or RADIO update the model's state to match if (me instanceof MItem) { final MItem item = (MItem) me; if (item.getType() == ItemType.CHECK || item.getType() == ItemType.RADIO) { MenuItem ti = (MenuItem) me.getWidget(); ti.addSelectionListener(new SelectionListener() { public void widgetSelected(SelectionEvent e) { item.setSelected(((MenuItem) e.widget).getSelection()); } public void widgetDefaultSelected(SelectionEvent e) { item.setSelected(((MenuItem) e.widget).getSelection()); } }); } } } }
if (modelItem.getType() == ItemType.PUSH) style = SWT.PUSH; else if (modelItem.getType() == ItemType.CHECK) style = SWT.CHECK; else if (modelItem.getType() == ItemType.RADIO) style = SWT.RADIO; MenuItem item = null; modelItem.setWidget(widget); widget.setData(AbstractPartRenderer.OWNING_ME, modelItem);
@Override protected void handleWidgetDispose(Event event) { if (event.widget == widget) { if (infoContext != null) { infoContext.dispose(); infoContext = null; } ToolItemUpdater updater = getUpdater(); if (updater != null) { updater.removeItem(this); } widget.removeListener(SWT.Selection, getItemListener()); widget.removeListener(SWT.Dispose, getItemListener()); widget.removeListener(SWT.DefaultSelection, getItemListener()); widget = null; Object obj = getModel().getTransientData().get(DISPOSABLE); if (obj instanceof Runnable) { ((Runnable) obj).run(); } getModel().setWidget(null); disposeOldImages(); } }
private void handleWidgetSelection(Event event) { if (widget != null && !widget.isDisposed()) { if (dropdownEvent(event)) { return; } if (model.getType() == ItemType.CHECK || model.getType() == ItemType.RADIO) { boolean selection = false; if (widget instanceof MenuItem) { selection = ((MenuItem) widget).getSelection(); } else if (widget instanceof ToolItem) { selection = ((ToolItem) widget).getSelection(); } model.setSelected(selection); } if (canExecuteItem(event)) { executeItem(event); } } }
protected void updateIcons() { if (!(widget instanceof Item)) { return; } Item item = (Item) widget; String iconURI = modelItem.getIconURI() != null ? modelItem.getIconURI() : ""; //$NON-NLS-1$ String disabledURI = getDisabledIconURI(modelItem); Object disabledData = item.getData(DISABLED_URI); if (disabledData == null) disabledData = ""; //$NON-NLS-1$ if (!iconURI.equals(item.getData(ICON_URI)) || !disabledURI.equals(disabledData)) { LocalResourceManager resourceManager = new LocalResourceManager(JFaceResources.getResources()); Image iconImage = getImage(iconURI, resourceManager); item.setImage(iconImage); item.setData(ICON_URI, iconURI); if (item instanceof ToolItem) { iconImage = getImage(disabledURI, resourceManager); ((ToolItem) item).setDisabledImage(iconImage); item.setData(DISABLED_URI, disabledURI); } disposeOldImages(); localResourceManager = resourceManager; } }
private String getToolTipText(MItem item) { String text = item.getLocalizedTooltip(); if (item instanceof MHandledItem) { MHandledItem handledItem = (MHandledItem) item;
/** * @param item * the model item */ public void setModel(MItem item) { modelItem = item; setId(modelItem.getElementId()); updateVisible(); }
void checkExecute(Selector selector) { if (skipEnablementCheck()) { return; } List<I> iterationCopy; // not ideal because we'll probably check items are already // removed // from the ui synchronized (BaseItemContainerRenderer.this.widgets) { iterationCopy = new ArrayList<>(BaseItemContainerRenderer.this.widgets); } for (I e : iterationCopy) { if (!isShowing(e)) { continue; } if (e instanceof MItem && e.getRenderer() instanceof BaseItemRenderer<?, ?> && selector.select(e)) { final MItem tmp = (MItem) e; @SuppressWarnings("unchecked") final BaseItemRenderer<MItem, ?> r = (BaseItemRenderer<MItem, ?>) tmp.getRenderer(); if (tmp.getRenderer() != null) { r.checkEnablement(tmp); } } } }