Package com.google.gwt.user.client

Examples of com.google.gwt.user.client.Element


      return;
    }
   
    this.currentContext.path.append(PathElement.END);
   
    Element elem = cloneElement(shapePrototype, false);
   
    DOM.setElementAttribute(elem, "filled", "true");
    DOM.setElementAttribute(elem, "fillColor", this.currentContext.fillStyle);
    DOM.setElementAttribute(elem, "stroked", "false");
    DOM.setElementAttribute(elem, "coordsize",this.coordX + "," + this.coordY);
   
    // Default Style info
    DOM.setStyleAttribute(elem, "width", String.valueOf(this.cssWidth));
    DOM.setStyleAttribute(elem, "height", String.valueOf(this.cssHeight));
   
    DOM.setElementAttribute(elem, "path", this.currentContext.path.toString());
   
    Element fill = cloneElement(fillPrototype, false);
    DOM.setElementAttribute(fill, "opacity", String.valueOf(this.currentContext.globalAlpha));
   
    DOM.appendChild(elem, fill);
   
    DOM.appendChild(this.parentElement, elem);
View Full Code Here


      return;
    }
   
    this.currentContext.path.append(PathElement.END);
   
    Element elem = cloneElement(shapePrototype, false);
   
    DOM.setElementAttribute(elem, "strokecolor", this.currentContext.strokeStyle);
    DOM.setElementAttribute(elem,"strokeweight",String.valueOf(this.currentContext.lineWidth));
   
    DOM.setElementAttribute(elem, "coordsize",this.coordX + "," + this.coordY);
   
    // Default Style info
    DOM.setStyleAttribute(elem, "width", String.valueOf(this.cssWidth));
    DOM.setStyleAttribute(elem, "height", String.valueOf(this.cssHeight));   
    DOM.setElementAttribute(elem, "path", this.currentContext.path.toString());
    
    Element stroke = cloneElement(strokePrototype, false);
    DOM.setElementAttribute(stroke, "opacity", String.valueOf(this.currentContext.globalAlpha));
   
    DOM.appendChild(elem, stroke);
   
    DOM.appendChild(this.parentElement, elem)
View Full Code Here

    // Prepare the header and data tables
    prepareTable(dataTable, "dataTable");
    prepareTable(headerTable, "headerTable");

    // Create the main div container
    Element mainElem = DOM.createDiv();
    setElement(mainElem);
    setStylePrimaryName(DEFAULT_STYLE_NAME);
    DOM.setStyleAttribute(mainElem, "padding", "0px");
    DOM.setStyleAttribute(mainElem, "overflow", "hidden");
    DOM.setStyleAttribute(mainElem, "position", "relative");

    // Create the table wrapper and spacer
    headerWrapper = createWrapper("headerWrapper");
    headerSpacer = createSpacer(headerWrapper);
    dataWrapper = createWrapper("dataWrapper");

    // Create image to fill width
    fillWidthImage = new Image() {
      @Override
      public void onBrowserEvent(Event event) {
        super.onBrowserEvent(event);
        if (DOM.eventGetType(event) == Event.ONCLICK) {
          fillWidth();
        }
      }
    };
    fillWidthImage.setTitle("Shrink/Expand to fill visible area");
    images.scrollTableFillWidth().applyTo(fillWidthImage);
    Element fillWidthImageElem = fillWidthImage.getElement();
    DOM.setStyleAttribute(fillWidthImageElem, "cursor", "pointer");
    DOM.setStyleAttribute(fillWidthImageElem, "position", "absolute");
    DOM.setStyleAttribute(fillWidthImageElem, "top", "0px");
    DOM.setStyleAttribute(fillWidthImageElem, "right", "0px");
    DOM.setStyleAttribute(fillWidthImageElem, "zIndex", "1");
    add(fillWidthImage, getElement());

    // Adopt the header and data tables into the panel
    adoptTable(headerTable, headerWrapper, 1);
    adoptTable(dataTable, dataWrapper, 2);

    // Create the sort indicator Image
    sortedColumnWrapper = DOM.createSpan();
    DOM.setInnerHTML(sortedColumnWrapper, " ");
    DOM.appendChild(sortedColumnWrapper, sortedColumnIndicator.getElement());

    // Add some event handling
    sinkEvents(Event.ONMOUSEOUT);
    DOM.setEventListener(dataWrapper, this);
    DOM.sinkEvents(dataWrapper, Event.ONSCROLL);
    DOM.setEventListener(headerWrapper, this);
    DOM.sinkEvents(headerWrapper, Event.ONMOUSEMOVE | Event.ONMOUSEDOWN
        | Event.ONMOUSEUP | Event.ONCLICK | Event.ONDBLCLICK);

    // Listen for sorting events in the data table
    dataTable.addSortableColumnsListener(new SortableColumnsListener() {
      public void onColumnSorted(ColumnSortList sortList) {
        // Get the primary column and sort order
        int column = -1;
        boolean ascending = true;
        if (sortList != null) {
          column = sortList.getPrimaryColumn();
          ascending = sortList.isPrimaryAscending();
        }

        // Remove the sorted column indicator
        if (isColumnSortable(column)) {
          Element parent = DOM.getParent(sortedColumnWrapper);
          if (parent != null) {
            DOM.removeChild(parent, sortedColumnWrapper);
          }

          // Re-add the sorted column indicator
View Full Code Here

   * @see Widget
   */
  @Override
  public void onBrowserEvent(Event event) {
    super.onBrowserEvent(event);
    Element target = DOM.eventGetTarget(event);
    switch (DOM.eventGetType(event)) {
      case Event.ONSCROLL:
        // Reposition the tables on scroll
        scrollTables(false);
        break;

      case Event.ONMOUSEDOWN:
        // Start resizing a header column
        if (DOM.eventGetButton(event) != Event.BUTTON_LEFT) {
          return;
        }
        if (resizeWorker.getCurrentCell() != null) {
          DOM.eventPreventDefault(event);
          DOM.eventCancelBubble(event, true);
          resizeWorker.startResizing(event);
        }
        break;
      case Event.ONMOUSEUP:
        // Stop resizing the header column
        if (DOM.eventGetButton(event) != Event.BUTTON_LEFT) {
          return;
        }
        if (resizeWorker.isResizing()) {
          resizeWorker.stopResizing(event);
        } else {
          // Scroll tables if needed
          if (DOM.isOrHasChild(headerWrapper, target)) {
            scrollTables(true);
          } else {
            scrollTables(false);
          }

          // Get the actual column index
          Element cellElem = headerTable.getEventTargetCell(event);
          if (cellElem != null) {
            int row = OverrideDOM.getRowIndex(DOM.getParent(cellElem)) - 1;
            int cell = OverrideDOM.getCellIndex(cellElem);
            int column = headerTable.getColumnIndex(row, cell);
            if (isColumnSortable(column)) {
              if (dataTable.getColumnCount() > column) {
                sortedColumnTrigger = cellElem;
                dataTable.sortColumn(column);
              }
            }
          }
        }
        break;
      case Event.ONMOUSEMOVE:
        // Resize the header column
        if (resizeWorker.isResizing()) {
          resizeWorker.resizeColumn(event);
        } else if (resizePolicy != ResizePolicy.DISABLED
            && resizePolicy != ResizePolicy.FILL_WIDTH_DISABLED) {
          resizeWorker.setCurrentCell(event);
        }
        break;
      case Event.ONMOUSEOUT:
        // Unhover if the mouse leaves the table
        Element toElem = DOM.eventGetToElement(event);
        if (toElem == null || !DOM.isOrHasChild(dataWrapper, toElem)) {
          // Check that the coordinates are not directly over the table
          int clientX = DOM.eventGetClientX(event);
          int clientY = DOM.eventGetClientY(event);
          int tableLeft = DOM.getAbsoluteLeft(dataWrapper);
View Full Code Here

   */
  public void setSortingEnabled(boolean sortingEnabled) {
    this.sortingEnabled = sortingEnabled;

    // Remove the sorted indicator image
    Element parent = DOM.getParent(sortedColumnWrapper);
    if (parent != null) {
      DOM.removeChild(parent, sortedColumnWrapper);
    }
  }
View Full Code Here

   *
   * @param wrapper the wrapper element
   * @return a new spacer element
   */
  private Element createSpacer(Element wrapper) {
    Element spacer = DOM.createDiv();
    DOM.setStyleAttribute(spacer, "height", "1px");
    DOM.setStyleAttribute(spacer, "width", "10000px");
    DOM.setStyleAttribute(spacer, "position", "absolute");
    DOM.setStyleAttribute(spacer, "top", "1px");
    DOM.setStyleAttribute(spacer, "left", "1px");
View Full Code Here

   *
   * @param cssName the style name added to the base name
   * @return a new wrapper element
   */
  private Element createWrapper(String cssName) {
    Element wrapper = DOM.createDiv();
    DOM.setStyleAttribute(wrapper, "width", "100%");
    DOM.setStyleAttribute(wrapper, "padding", "0px");
    DOM.setStyleAttribute(wrapper, "overflow", "hidden");
    DOM.setStyleAttribute(wrapper, "position", "relative");
    setStyleName(wrapper, cssName);
View Full Code Here

   *
   * @param table the table to prepare
   * @param cssName the style name added to the base name
   */
  private void prepareTable(Widget table, String cssName) {
    Element tableElem = table.getElement();
    DOM.setStyleAttribute(tableElem, "margin", "0px");
    DOM.setStyleAttribute(tableElem, "border", "0px");
    table.addStyleName(cssName);
  }
View Full Code Here

     * @param event the event that triggered the new cell
     * @return true if the cell was actually changed
     */
    public boolean setCurrentCell(Event event) {
      // See if we are near the edge of the cell
      Element cell = table.headerTable.getEventTargetCell(event);
      int clientX = DOM.eventGetClientX(event);
      if (cell != null) {
        int absRight = DOM.getAbsoluteLeft(cell)
            + DOM.getElementPropertyInt(cell, "offsetWidth");
        if (clientX < absRight - 15 || clientX > absRight) {
View Full Code Here

  }

  public void setBackgroundColor(String color) {
    super.setBackgroundColor(color);
    for (Integer index : clearRectIndices) {
      Element elem = DOM.getChild(element, index);
      DOM.setElementAttribute(elem, "fillcolor", color);
    }
  }
View Full Code Here

TOP

Related Classes of com.google.gwt.user.client.Element

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.