/** * Add image to a widget or window * * @param parent * @param image * @throws JellyTagException */ protected void setImage(Object parent, Image image) throws GroovyException { if (parent instanceof Label) { Label label = (Label) parent; label.setImage(image); } else if (parent instanceof Button) { Button button = (Button) parent; button.setImage(image); } else if (parent instanceof Item) { Item item = (Item) parent; item.setImage(image); } else if (parent instanceof Decorations) { Decorations item = (Decorations) parent; item.setImage(image); } else if (parent instanceof Form) { Form form = (Form) parent; form.setBackgroundImage(image); } else if (parent instanceof ScrolledForm) { ScrolledForm form = (ScrolledForm) parent; form.setBackgroundImage(image); } else if (parent instanceof Window) { Window window = (Window) parent; window.getShell().setImage(image); } else { throw new GroovyException("This tag must be nested inside a <label>, <button> or <item> tag"); } }