Package org.apache.myfaces.tobago.layout

Examples of org.apache.myfaces.tobago.layout.LayoutComponent


      } else if (column instanceof ColumnEvent) {
        // ignore
      } else if (column instanceof AbstractUIColumnNode) {
        layoutComponents.add((AbstractUIColumnNode) column);
      } else if (column instanceof UIColumn) {
        LayoutComponent layoutComponent = null;
        for (UIComponent component : column.getChildren()) {
          if (component instanceof LayoutComponent) {
            if (layoutComponent == null) {
              layoutComponent = (LayoutComponent) component;
            } else {
View Full Code Here


    final Grid grid = new Grid(columns, rows);

    for(UIComponent child : header.getChildren()) {
      if (child instanceof LayoutComponent) {
        if (child.isRendered()) {
          final LayoutComponent c = (LayoutComponent) child;
          grid.add(new OriginCell(c), c.getColumnSpan(), c.getRowSpan());
        }
      } else {
        if (LOG.isDebugEnabled()) {
          LOG.debug("Found unknown component in header.");
        }
View Full Code Here

      } else if (column instanceof ColumnEvent) {
        // ignore
      } else if (column instanceof AbstractUIColumnNode) {
        layoutComponents.add((AbstractUIColumnNode) column);
      } else if (column instanceof UIColumn) {
        LayoutComponent layoutComponent = null;
        for (UIComponent component : (List<UIComponent>) column.getChildren()) {
          if (component instanceof LayoutComponent) {
            if (layoutComponent == null) {
              layoutComponent = (LayoutComponent) component;
            } else {
View Full Code Here

      } else if (column instanceof ColumnEvent) {
        // ignore
      } else if (column instanceof AbstractUIColumnNode) {
        layoutComponents.add((AbstractUIColumnNode) column);
      } else if (column instanceof UIColumn) {
        LayoutComponent layoutComponent = null;
        for (final UIComponent component : column.getChildren()) {
          if (component instanceof LayoutComponent) {
            if (layoutComponent == null) {
              layoutComponent = (LayoutComponent) component;
            } else {
View Full Code Here

          neitherRendered = false;
        }
        // recursion
        if (cell instanceof OriginCell) {
          final OriginCell origin = (OriginCell) cell;
          final LayoutComponent component = cell.getComponent();
          if (component instanceof LayoutContainer && component.isRendered()) {
            final LayoutManager layoutManager = ((LayoutContainer) component).getLayoutManager();
            // TODO: may be improved
            final boolean childAuto
                = origin.getSpan(orientation) == 1 && heads[i].getToken() instanceof AutoLayoutToken;
            layoutManager.fixRelativeInsideAuto(orientation, childAuto);
View Full Code Here

      final IntervalList intervalList = new IntervalList();
      for (int j = 0; j < heads2.length; j++) {
        final Cell cell = grid.getCell(i, j, orientation);
        if (cell instanceof OriginCell) {
          final OriginCell origin = (OriginCell) cell;
          final LayoutComponent component = cell.getComponent();

          if (component instanceof LayoutContainer && (component.isRendered() || isRigid())) {
            ((LayoutContainer) component).getLayoutManager().preProcessing(orientation);
          }

          if (token instanceof AutoLayoutToken || token instanceof RelativeLayoutToken) {
            if ((component.isRendered() || isRigid())) {
              if (origin.getSpan(orientation) == 1) {
                intervalList.add(new Interval(component, orientation));
              } else {
                if (LOG.isDebugEnabled()) {
                  LOG.debug("Components with span > 1 will be ignored in 'auto' layout rows/columns.");
View Full Code Here

    // call manage sizes for all sub-layout-managers
    for (int i = 0; i < heads.length; i++) {
      for (int j = 0; j < heads2.length; j++) {
        final Cell cell = grid.getCell(i, j, orientation);
        if (cell instanceof OriginCell) {
          final LayoutComponent component = cell.getComponent();

          component.setDisplay(Display.BLOCK); // TODO: use CSS via classes and tobago.css

          final Integer span = ((OriginCell) cell).getSpan(orientation);

          // compute the size of the cell
          Measure size = Measure.ZERO;
          for (int k = 0; k < span; k++) {
            size = size.add(heads[i + k].getCurrent());
          }
          size = size.add(computeSpacing(orientation, i, span));
          final Measure current = LayoutUtils.getCurrentSize(orientation, component);
          if (current == null) {
            LayoutUtils.setCurrentSize(orientation, component, size);
          }

          // call sub layout manager
          if (component instanceof LayoutContainer && (component.isRendered() || isRigid())) {
            ((LayoutContainer) component).getLayoutManager().mainProcessing(orientation);
          }
        }
      }
    }
View Full Code Here

    // call manage sizes for all sub-layout-managers
    for (int i = 0; i < heads.length; i++) {
      for (int j = 0; j < heads2.length; j++) {
        final Cell cell = grid.getCell(i, j, orientation);
        if (cell instanceof OriginCell) {
          final LayoutComponent component = cell.getComponent();

          component.setDisplay(Display.BLOCK);

          // compute the position of the cell
          Measure position = Measure.ZERO;
          position = position.add(LayoutUtils.getPaddingBegin(orientation, getLayoutContainer()));
          position = position.add(getMarginBegin(orientation));
          for (int k = 0; k < i; k++) {
            if (heads[k] != null
                && heads[k].getCurrent() != null
                && heads[k].isRendered()
                && heads[k].getCurrent().greaterThan(Measure.ZERO)) {
              position = position.add(heads[k].getCurrent());
              position = position.add(getSpacing(orientation));
            }
          }
          if (orientation == Orientation.HORIZONTAL) {
            component.setLeft(position);
          } else {
            component.setTop(position);
          }

          // call sub layout manager
          if (component instanceof LayoutContainer && (component.isRendered() || isRigid())) {
            ((LayoutContainer) component).getLayoutManager().postProcessing(orientation);
          }

          // set scrolling type
          final boolean scroll = grid.isOverflow(orientation);
View Full Code Here

    final Grid grid = new Grid(columns, rows);

    for(final UIComponent child : header.getChildren()) {
      if (child instanceof LayoutComponent) {
        if (child.isRendered()) {
          final LayoutComponent c = (LayoutComponent) child;
          grid.add(new OriginCell(c), c.getColumnSpan(), c.getRowSpan());
        }
      } else {
        if (LOG.isDebugEnabled()) {
          LOG.debug("Found unknown component in header.");
        }
View Full Code Here

  }

  private String createDraggableContainment(final AbstractUISplitLayout layout) {
    final LayoutContainer container = (LayoutContainer) ((AbstractUISplitLayout) layout).getParent();
    final LayoutComponent firstComponent = container.getComponents().get(0);
    final LayoutComponent secondComponent = container.getComponents().get(1);

    if (AbstractUISplitLayout.HORIZONTAL.equals(layout.getOrientation())) {
      final int minimumSize1 = firstComponent.getMinimumWidth().getPixel();
      final int minimumSize2 = secondComponent.getMinimumWidth().getPixel();
      final int totalSize = container.getCurrentWidth().getPixel();
      return new StringBuilder("[").append(minimumSize1).append(", 0, ").append(totalSize-minimumSize2).append(", 0]")
          .toString();
    } else {
      final int minimumSize1 = firstComponent.getMinimumHeight().getPixel();
      final int minimumSize2 = secondComponent.getMinimumHeight().getPixel();
      final int totalSize = container.getCurrentHeight().getPixel();
      return new StringBuilder("[0, ").append(minimumSize1).append(", 0, ").append(totalSize-minimumSize2).append("]")
          .toString();
    }
  }
View Full Code Here

TOP

Related Classes of org.apache.myfaces.tobago.layout.LayoutComponent

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.