Example usage for com.google.gwt.user.client.ui FlexTable insertCell

List of usage examples for com.google.gwt.user.client.ui FlexTable insertCell

Introduction

In this page you can find the example usage for com.google.gwt.user.client.ui FlexTable insertCell.

Prototype

@Override
public void insertCell(int beforeRow, int beforeColumn) 

Source Link

Document

Inserts a cell into the FlexTable.

Usage

From source file:com.google.gwt.gears.sample.workerpool.client.WorkerPoolDemo.java

License:Apache License

/**
 * Utility routine to construct one row of the user interface control panel.
 * //from  w  w  w.j av a2  s  .c o m
 * @param table the table to add to.
 * @param text HTML text to add in the first column
 * @param w a widget in the control panel to add in the second column.
 */
private void buildControlPanelRow(FlexTable table, String text, Widget w) {
    table.insertRow(currentRow);
    table.insertCell(currentRow, 0);
    table.setWidget(currentRow, 0, new HTML(text));
    table.insertCell(currentRow, 1);
    table.setWidget(currentRow, 1, w);
    currentRow++;
}

From source file:org.pentaho.pat.client.util.dnd.impl.SimplePanelDropControllerImpl.java

License:Open Source License

@Override
public void onDrop(final DragContext context) {
    MeasureLabel originalLabel = ((MeasureLabel) context.draggable.getParent().getParent());
    DimensionTreeWidget dtw = (DimensionTreeWidget) originalLabel.getParentNode().getTree().getParent()
            .getParent().getParent();/*from ww  w  . j  a va 2  s  .co  m*/
    /*
     * If the widget is dropped on the trash can.
     * 
     */
    if (trash) {
        DimensionSimplePanel panel = (DimensionSimplePanel) originalLabel.getParent();
        context.draggable.removeFromParent();

        originalLabel.makeDraggable();

        /*
         * Remove the widget.
         */
        if (originalLabel.getType() == ObjectType.DIMENSION) {
            SimplePanelUtil.clearDimension(context, originalLabel, panel.getCoord(), panel.getAxis());
        } else if (originalLabel.getType() == ObjectType.HIERARCHY) {
            SimplePanelUtil.clearHierarchy(context, originalLabel, panel.getCoord(), panel.getAxis());
        } else if (originalLabel.getType() == ObjectType.LEVEL) {
            SimplePanelUtil.clearLevel(context, originalLabel, panel.getCoord(), panel.getAxis());
        } else if (originalLabel.getType() == ObjectType.MEMBER) {
            SimplePanelUtil.clearMember(context, originalLabel, panel.getCoord(), panel.getAxis());
        } else if (originalLabel.getType() == ObjectType.MEASURE) {
            SimplePanelUtil.clearMember(context, originalLabel, panel.getCoord(), panel.getAxis());
        }

        dtw.setDimensionLocation(dropTarget.getAxis(), originalLabel.getDimensionName());
    }
    /*
     * If the widget is dropped and the target axis != the widgets current axis. IE move dimension from rows to columns.
     */
    else if (originalLabel.getParent() instanceof DimensionSimplePanel
            && (((MeasureLabel) context.draggable.getParent().getParent())
                    .getAxis() != ((DimensionSimplePanel) this.dropTarget).getAxis())) {
        DimensionSimplePanel dp = null;
        boolean createdrop = true;
        DimensionSimplePanel panel = (DimensionSimplePanel) originalLabel.getParent();
        /*
         * If the drop target does not contain a widget then add the original label.
         */
        if (dropTarget.getWidget() == null) {
            dropTarget.setWidget(originalLabel);
        }
        /*
         * Else create a new drop target.
         */
        else {
            FlexTable ft = ((FlexTable) ((DimensionSimplePanel) context.finalDropController.getDropTarget())
                    .getParent());
            int row = dropTarget.getCoord()[0];
            int col = dropTarget.getCoord()[1];

            if (dropTarget.getAxis().equals(IAxis.ROWS) || dropTarget.getAxis().equals(IAxis.FILTER)) {
                for (int i = 0; i < ft.getRowCount(); i++) {
                    ft.insertCell(i, col);
                }
                dp = new DimensionSimplePanel(false, dropTarget.getAxis());
                dp.setWidget(originalLabel);
                ft.setWidget(row, col, dp);
                createdrop = false;
            } else if (dropTarget.getAxis().equals(IAxis.COLUMNS)) {
                ft.insertRow(row);
                dp = new DimensionSimplePanel(false, dropTarget.getAxis());
                dp.setWidget(originalLabel);
                ft.setWidget(row, col, dp);
                createdrop = false;
            }
        }

        /*
         * If the widget is a Dimension.
         */
        if (originalLabel.getType() == ObjectType.DIMENSION) {
            originalLabel.setAxis(((DimensionSimplePanel) this.dropTarget).getAxis());
            SimplePanelUtil.moveDimension(context, originalLabel, originalLabel, false, panel.getCoord(),
                    panel.getAxis(), createdrop);
            if (dp != null) {
                if (dp.getCoord()[0] < dropTarget.getCoord()[0]
                        || dp.getCoord()[1] < dropTarget.getCoord()[1]) {
                    SimplePanelUtil.pullUp(context, originalLabel, dropTarget.getCoord(), dp.getCoord(),
                            dropTarget.getAxis(), false);
                } else {
                    SimplePanelUtil.pushDown(context, originalLabel, dropTarget.getCoord(), dp.getCoord(),
                            dropTarget.getAxis(), false);
                }
            }
        }
        /*
         * If the widget is a hierarchy.
         */
        else if (originalLabel.getType() == ObjectType.HIERARCHY) {
            originalLabel.setAxis(((DimensionSimplePanel) this.dropTarget).getAxis());
            SimplePanelUtil.moveHierarchy(context, originalLabel, false, panel.getCoord(), panel.getAxis(),
                    createdrop);
            if (dp != null) {
                if (dp.getCoord()[0] < dropTarget.getCoord()[0]
                        || dp.getCoord()[1] < dropTarget.getCoord()[1]) {
                    SimplePanelUtil.pullUp(context, originalLabel, dropTarget.getCoord(), dp.getCoord(),
                            dropTarget.getAxis(), false);
                } else {
                    SimplePanelUtil.pushDown(context, originalLabel, dropTarget.getCoord(), dp.getCoord(),
                            dropTarget.getAxis(), false);
                }
            }
        }
        /*
         * If the widget is a level.
         */
        else if (originalLabel.getType() == ObjectType.LEVEL) {
            originalLabel.setAxis(((DimensionSimplePanel) this.dropTarget).getAxis());
            SimplePanelUtil.moveLevel(context, originalLabel, false, panel.getCoord(), panel.getAxis(), false);
            if (dp != null) {
                if (dp.getCoord()[0] < dropTarget.getCoord()[0]
                        || dp.getCoord()[1] < dropTarget.getCoord()[1]) {
                    SimplePanelUtil.pullUp(context, originalLabel, dropTarget.getCoord(), dp.getCoord(),
                            dropTarget.getAxis(), false);
                } else {
                    SimplePanelUtil.pushDown(context, originalLabel, dropTarget.getCoord(), dp.getCoord(),
                            dropTarget.getAxis(), false);
                }
            }
        }
        /*
         * If the widget is a Member.
         */
        else if (originalLabel.getType() == ObjectType.MEMBER) {
            originalLabel.setAxis(((DimensionSimplePanel) this.dropTarget).getAxis());
            SimplePanelUtil.moveMember(context, originalLabel, false, panel.getCoord(), panel.getAxis(),
                    createdrop);
            if (dp != null) {
                if (dp.getCoord()[0] < dropTarget.getCoord()[0]
                        || dp.getCoord()[1] < dropTarget.getCoord()[1]) {
                    SimplePanelUtil.pullUpMeasember(context, originalLabel, dropTarget.getCoord(),
                            dp.getCoord(), dropTarget.getAxis(), false);
                } else {
                    SimplePanelUtil.pushdownMeasember(context, originalLabel, dropTarget.getCoord(),
                            dp.getCoord(), dropTarget.getAxis(), false);
                }
            }
        }
        /*
         * if the widget is a measure.
         */
        else if (originalLabel.getType() == ObjectType.MEASURE) {
            originalLabel.setAxis(((DimensionSimplePanel) this.dropTarget).getAxis());
            //dtw.setMeasureAxis(dropTarget.getAxis());
            SimplePanelUtil.moveMeasure(context, originalLabel, false, panel.getCoord(), panel.getAxis(),
                    createdrop);
            if (dp != null) {
                if (dp.getCoord()[0] < dropTarget.getCoord()[0]
                        || dp.getCoord()[1] < dropTarget.getCoord()[1]) {
                    SimplePanelUtil.pullUpMeasember(context, originalLabel, dropTarget.getCoord(),
                            dp.getCoord(), dropTarget.getAxis(), false);
                } else {
                    SimplePanelUtil.pushdownMeasember(context, originalLabel, dropTarget.getCoord(),
                            dp.getCoord(), dropTarget.getAxis(), false);
                }
            }
        }

        dtw.setDimensionLocation(dropTarget.getAxis(), originalLabel.getDimensionName());

    }
    /*
     * If the drop is on the same axis, then pushdown or pull up.
     */
    else if (originalLabel.getParent() instanceof DimensionSimplePanel
            && (((MeasureLabel) context.draggable.getParent().getParent()).getAxis() == this.dropTarget
                    .getAxis())) {
        DimensionSimplePanel panel = ((DimensionSimplePanel) originalLabel.getParent());
        /*
         * For Columns.
         */
        if (panel.getAxis().equals(IAxis.COLUMNS)) {
            if (panel.getCoord()[0] > ((DimensionSimplePanel) this.dropTarget).getCoord()[0]) {
                if (originalLabel.getType().equals(ObjectType.MEASURE)
                        || originalLabel.getType().equals(ObjectType.MEMBER)) {
                    SimplePanelUtil.pullUpMeasember(context, originalLabel, panel.getCoord(),
                            this.dropTarget.getCoord(), IAxis.COLUMNS, true);
                } else {
                    //pushup
                    SimplePanelUtil.pullUp(context, originalLabel, panel.getCoord(), this.dropTarget.getCoord(),
                            IAxis.COLUMNS, true);
                }
            } else {
                if (originalLabel.getType().equals(ObjectType.MEASURE)
                        || originalLabel.getType().equals(ObjectType.MEMBER)) {
                    SimplePanelUtil.pushdownMeasember(context, originalLabel, panel.getCoord(),
                            this.dropTarget.getCoord(), IAxis.COLUMNS, true);
                } else {
                    //pulldown
                    SimplePanelUtil.pushDown(context, originalLabel, panel.getCoord(),
                            this.dropTarget.getCoord(), IAxis.COLUMNS, true);
                }
            }
        }
        /*
         * For Rows.
         */
        else if (panel.getAxis().equals(IAxis.ROWS)) {
            if (panel.getCoord()[0] > ((DimensionSimplePanel) this.dropTarget).getCoord()[0]) {
                if (originalLabel.getType().equals(ObjectType.MEASURE)
                        || originalLabel.getType().equals(ObjectType.MEMBER)) {
                    SimplePanelUtil.pullUpMeasember(context, originalLabel, panel.getCoord(),
                            this.dropTarget.getCoord(), IAxis.ROWS, true);
                } else {
                    //pushup
                    SimplePanelUtil.pullUp(context, originalLabel, panel.getCoord(), this.dropTarget.getCoord(),
                            IAxis.ROWS, true);
                }
            } else {
                if (originalLabel.getType().equals(ObjectType.MEASURE)
                        || originalLabel.getType().equals(ObjectType.MEMBER)) {
                    SimplePanelUtil.pushdownMeasember(context, originalLabel, panel.getCoord(),
                            this.dropTarget.getCoord(), IAxis.ROWS, true);
                } else {
                    //pulldown
                    SimplePanelUtil.pushDown(context, originalLabel, panel.getCoord(),
                            this.dropTarget.getCoord(), IAxis.ROWS, true);
                }
            }
        }
    }
    /*
     * If a standard widget is dropped on an empty drop target.
     */
    else {

        MeasureLabel label = new MeasureLabel(originalLabel.getActualName(), originalLabel.getText(),
                originalLabel.getType(), originalLabel.getParentNode(), originalLabel.isUniqueName());
        label.setDragController(originalLabel.getDragController());
        label.makeDraggable();
        label.setDownButtonVisible(true);
        dropTarget.setWidget(label);

        originalLabel.makeNotDraggable();

        if (originalLabel.getType() == ObjectType.DIMENSION) {
            SimplePanelUtil.moveDimension(context, label, originalLabel, true, null, null, true);
        } else if (originalLabel.getType() == ObjectType.HIERARCHY) {
            SimplePanelUtil.moveHierarchy(context, label, true, null, null, true);
        } else if (originalLabel.getType() == ObjectType.LEVEL) {
            SimplePanelUtil.moveLevel(context, label, true, null, null, true);
        } else if (originalLabel.getType() == ObjectType.MEMBER) {
            SimplePanelUtil.moveMember(context, label, true, null, null, true);
        } else if (originalLabel.getType() == ObjectType.MEASURE) {

            //dtw.setMeasureAxis(dropTarget.getAxis());
            SimplePanelUtil.moveMeasure(context, label, true, null, null, true);
        }

        dtw.setDimensionLocation(dropTarget.getAxis(), originalLabel.getDimensionName());
    }
    super.onDrop(context);
}