/* * (non-Javadoc) * * @see org.eclipse.draw2d.Figure#repaint() */ @Override public void repaint() { int x = getLocation().x; int y = getLocation().y; if (collapsing) { width = Constants.SIZE_16; height = Constants.SIZE_18; getBounds().height = height; getBounds().width = width; } else { if (hideButton != null) { if (hide) { super.setSize(width, 18); } else { super.setSize(width, height); } textFigure.setSize(width, 10); text.setSize(width, 15); text.setLocation(new Point(x, y)); if (getChildren().size() > 1) { if (!textFigure.getChildren().contains(hideButton)) { textFigure.add(hideButton); } hideButton.setLocation(new Point(x + width - 11, y + 1)); } else { if (textFigure.getChildren().contains(hideButton)) { textFigure.remove(hideButton); } } } for (int i = 0; i < getChildren().size(); i++) { IFigure figure = (IFigure) getChildren().get(i); if (figure == textFigure || hide) { figure.setSize(width, 16); figure.setLocation(new Point(x, y)); } else { figure.setSize(width - 5, 15); figure.setLocation(new Point(x + 5, y + 16 + 15 * i)); } } } super.repaint(); }
/** * initialize the figure * * @param figure */ protected void initFigure(final IFigure figure) { if (figure == null) throw new IllegalArgumentException("Editpart does not provide a figure!"); // $NON-NLS-1$ Set<String> allPropIds = getWidgetModel().getAllPropertyIDs(); if (allPropIds.contains(AbstractWidgetModel.PROP_COLOR_BACKGROUND)) figure.setBackgroundColor( CustomMediaFactory.getInstance().getColor(getWidgetModel().getBackgroundColor())); if (allPropIds.contains(AbstractWidgetModel.PROP_COLOR_FOREGROUND)) figure.setForegroundColor( CustomMediaFactory.getInstance().getColor(getWidgetModel().getForegroundColor())); if (allPropIds.contains(AbstractWidgetModel.PROP_FONT)) figure.setFont(getWidgetModel().getFont().getSWTFont()); if (allPropIds.contains(AbstractWidgetModel.PROP_VISIBLE)) figure.setVisible( getExecutionMode() == ExecutionMode.RUN_MODE ? getWidgetModel().isVisible() : true); if (allPropIds.contains(AbstractWidgetModel.PROP_ENABLED)) figure.setEnabled(getWidgetModel().isEnabled()); if (allPropIds.contains(AbstractWidgetModel.PROP_WIDTH) && allPropIds.contains(AbstractWidgetModel.PROP_HEIGHT)) figure.setSize(getWidgetModel().getSize()); if (allPropIds.contains(AbstractWidgetModel.PROP_BORDER_COLOR) && allPropIds.contains(AbstractWidgetModel.PROP_BORDER_STYLE) && allPropIds.contains(AbstractWidgetModel.PROP_BORDER_WIDTH)) figure.setBorder( BorderFactory.createBorder( getWidgetModel().getBorderStyle(), getWidgetModel().getBorderWidth(), getWidgetModel().getBorderColor(), getWidgetModel().getName())); if (allPropIds.contains(AbstractWidgetModel.PROP_TOOLTIP)) { if (!getWidgetModel().getTooltip().equals("")) { // $NON-NLS-1$ tooltipLabel = new TooltipLabel(getWidgetModel()); figure.setToolTip(tooltipLabel); } } }
public void pack() { IFigure figure = branch.getFigure(); figure.setSize(figure.getPreferredSize()); }