/** * Moves the position of the splitter with given position and unit. * * @param pos * the new size of the first region. Fractions are only allowed * when unit is percentage. * @param unit * the unit (from {@link Sizeable}) in which the size is given. */ public void setSplitPosition(float pos, Unit unit) { setSplitPosition(pos, unit, false); }
@Override public void replaceComponent(Component oldComponent, Component newComponent) { if (oldComponent == getFirstComponent()) { setFirstComponent(newComponent); } else if (oldComponent == getSecondComponent()) { setSecondComponent(newComponent); } }
if (getSplitPosition() != def.getSplitPosition() || !def.getSplitPositionUnit().equals(getSplitPositionUnit())) { String splitPositionString = asString(getSplitPosition()) + getSplitPositionUnit(); design.attr("split-position", splitPositionString); if (getMinSplitPosition() != def.getMinSplitPosition() || !def .getMinSplitPositionUnit().equals(getMinSplitPositionUnit())) { design.attr("min-split-position", asString(getMinSplitPosition()) + getMinSplitPositionUnit()); if (getMaxSplitPosition() != def.getMaxSplitPosition() || !def .getMaxSplitPositionUnit().equals(getMaxSplitPositionUnit())) { design.attr("max-split-position", asString(getMaxSplitPosition()) + getMaxSplitPositionUnit()); if (getSplitterState().positionReversed) { design.attr("reversed", true); return; Component firstComponent = getFirstComponent(); Component secondComponent = getSecondComponent(); if (firstComponent != null) { Element childElement = designContext.createElement(firstComponent);
public AbstractSplitPanel() { registerRpc(rpc); setSplitPosition(50, Unit.PERCENTAGE, false); setSplitPositionLimits(0, Unit.PERCENTAGE, 100, Unit.PERCENTAGE); }
@Override public void remove() { if (i == 1) { if (getFirstComponent() != null) { setFirstComponent(null); i = 0; } else { setSecondComponent(null); } } else if (i == 2) { setSecondComponent(null); } } }
private AbstractSplitPanel initMainPanel(Tree first, Component second) { AbstractSplitPanel splitPanel = new HorizontalSplitPanel(); splitPanel.setSizeFull(); splitPanel.setLocked(false); splitPanel.setSplitPosition(25, Unit.PERCENTAGE); splitPanel.setFirstComponent(first); splitPanel.setSecondComponent(second); splitPanel.setCaption(first.getCaption()); return splitPanel; }
reversed = DesignAttributeHandler.readAttribute("reversed", design.attributes(), Boolean.class); setSplitPosition(getSplitPosition(), reversed); setSplitPosition(splitPosition.getSize(), splitPosition.getUnit(), reversed); SizeWithUnit minSplitPosition = SizeWithUnit.parseStringSize( design.attr("min-split-position"), Unit.PERCENTAGE); setMinSplitPosition(minSplitPosition.getSize(), minSplitPosition.getUnit()); SizeWithUnit maxSplitPosition = SizeWithUnit.parseStringSize( design.attr("max-split-position"), Unit.PERCENTAGE); setMaxSplitPosition(maxSplitPosition.getSize(), maxSplitPosition.getUnit()); Component childComponent = designContext.readDesign(childElement); if (childElement.hasAttr(":second")) { setSecondComponent(childComponent); } else { addComponent(childComponent);
float[] s = parseStringSize(a); if (s[0] >=0) ((AbstractSplitPanel)layout).setMinSplitPosition(s[0],(int)s[1]); float[] s = parseStringSize(a); if (s[0] >=0) ((AbstractSplitPanel)layout).setMaxSplitPosition(s[0],(int)s[1]); float[] s = parseStringSize(a); if (s[0] >=0) ((AbstractSplitPanel)layout).setSplitPosition(s[0],(int)s[1]);
pos = Math.round(pos); float oldPosition = getSplitPosition(); Unit oldUnit = getSplitPositionUnit(); SplitterState splitterState = getSplitterState(); splitterState.position = pos; splitterState.positionUnit = unit.getSymbol(); splitterState.positionReversed = reverse; posUnit = unit; fireEvent(new SplitPositionChangeEvent(AbstractSplitPanel.this, false, oldPosition, oldUnit, pos, posUnit));
@Override public void applySettings(Element element) { if (!isSettingsEnabled()) { return; } Element e = element.element("position"); if (e != null) { String value = e.attributeValue("value"); String unit = e.attributeValue("unit"); if (!StringUtils.isBlank(value) && !StringUtils.isBlank(unit)) { Unit convertedUnit; if (NumberUtils.isNumber(unit)) { convertedUnit = convertLegacyUnit(Integer.parseInt(unit)); } else { convertedUnit = Unit.getUnitFromSymbol(unit); } component.setSplitPosition(Float.parseFloat(value), convertedUnit, component.isSplitPositionReversed()); } } }
@Override public void setSplitterPosition(float position) { float oldPosition = getSplitPosition(); getSplitterState().position = position; fireEvent(new SplitPositionChangeEvent(AbstractSplitPanel.this, true, oldPosition, getSplitPositionUnit(), position, getSplitPositionUnit())); } };
@Override public void setMinSplitPosition(int pos, SizeUnit unit) { component.setMinSplitPosition(pos, WebWrapperUtils.toVaadinUnit(unit)); }
@Override public void setMaxSplitPosition(int pos, SizeUnit unit) { component.setMaxSplitPosition(pos, WebWrapperUtils.toVaadinUnit(unit)); }
@Override public void setLocked(boolean locked) { component.setLocked(locked); }
@Override public float getSplitPosition() { return component.getSplitPosition(); }
@Override public SizeUnit getSplitPositionSizeUnit() { return WebWrapperUtils.toSizeUnit(component.getSplitPositionUnit()); }
@Override public void add(Component childComponent) { if (childComponent.getParent() != null && childComponent.getParent() != this) { throw new IllegalStateException("Component already has parent"); } if (component == null) { createComponentImpl(); } com.vaadin.ui.Component vComponent = childComponent.unwrapComposition(com.vaadin.ui.Component.class); component.addComponent(vComponent); if (frame != null) { if (childComponent instanceof BelongToFrame && ((BelongToFrame) childComponent).getFrame() == null) { ((BelongToFrame) childComponent).setFrame(frame); } else { ((FrameImplementation) frame).registerComponent(childComponent); } } ownComponents.add(childComponent); childComponent.setParent(this); }
private AbstractSplitPanel initMainPanel(Tree first, Component second) { AbstractSplitPanel splitPanel = new HorizontalSplitPanel(); splitPanel.setSizeFull(); splitPanel.setLocked(false); splitPanel.setSplitPosition(25, Unit.PERCENTAGE); splitPanel.setFirstComponent(first); splitPanel.setSecondComponent(second); splitPanel.setCaption(first.getCaption()); return splitPanel; }
float[] s = parseStringSize(a); if (s[0] >=0) ((AbstractSplitPanel)layout).setMinSplitPosition(s[0],Unit.values()[(int)s[1]]); float[] s = parseStringSize(a); if (s[0] >=0) ((AbstractSplitPanel)layout).setMaxSplitPosition(s[0],Unit.values()[(int)s[1]]); float[] s = parseStringSize(a); if (s[0] >=0) ((AbstractSplitPanel)layout).setSplitPosition(s[0],Unit.values()[(int)s[1]]);
@Override public boolean saveSettings(Element element) { if (!isSettingsEnabled()) { return false; } if (!settingsChanged) { return false; } Element e = element.element("position"); if (e == null) { e = element.addElement("position"); } e.addAttribute("value", String.valueOf(component.getSplitPosition())); e.addAttribute("unit", String.valueOf(component.getSplitPositionUnit())); return true; }