List of usage examples for com.google.gwt.dom.client Element getAbsoluteBottom
@Override
public int getAbsoluteBottom()
From source file:com.alkacon.acacia.client.ui.ChoiceSubmenu.java
License:Open Source License
/** * Checks whether the submenu should be opened above instead of below.<p> * //from w ww . j ava 2 s. com * @param referenceElement the reference element * @return true if the new submenu should be opened above */ public boolean openAbove(Element referenceElement) { int windowTop = Window.getScrollTop(); int windowBottom = Window.getScrollTop() + Window.getClientHeight(); int spaceAbove = referenceElement.getAbsoluteTop() - windowTop; int spaceBelow = windowBottom - referenceElement.getAbsoluteBottom(); return spaceAbove > spaceBelow; }
From source file:com.bearsoft.gwt.ui.containers.window.WindowPanel.java
@Override public void maximize() { if (!maximized) { restoreSnapshot();/*from ww w . j a va2 s .c o m*/ maximized = true; updateDecorCursors(); snapshotMetrics(); // editing Element movableElement = getMovableTarget().getElement(); Style targetStyle = getWidget().getElement().getStyle(); // content int leftInset = getWidget().getElement().getAbsoluteLeft() - movableElement.getAbsoluteLeft(); int rightInset = movableElement.getAbsoluteRight() - getWidget().getElement().getAbsoluteRight(); int hInsets = leftInset + rightInset; int topInset = getWidget().getElement().getAbsoluteTop() - movableElement.getAbsoluteTop(); int bottomInset = movableElement.getAbsoluteBottom() - getWidget().getElement().getAbsoluteBottom(); int vInsets = topInset + bottomInset; Element parentElement = getMovableTarget().getParent().getElement(); int parentScrollWidth = parentElement.getScrollWidth(); int parentScrollHeight; if (parentElement == Document.get().getBody())// Some browsers // return incorrect // height for body // element { parentScrollHeight = Document.get().getClientHeight(); } else { parentScrollHeight = parentElement.getScrollHeight(); } targetStyle.setWidth(parentScrollWidth - hInsets, Style.Unit.PX); targetStyle.setHeight(parentScrollHeight - vInsets, Style.Unit.PX); // editing targetStyle = movableElement.getStyle(); // window targetStyle.setLeft(0, Style.Unit.PX); targetStyle.setTop(0, Style.Unit.PX); onResize(); MaximizeEvent.<WindowUI>fire(this, this); } }
From source file:com.bfr.client.selection.RangeEndPoint.java
License:Apache License
private static boolean contains(Element ele, int relX, int relY) { /*/*w w w.j a va 2 s .co m*/ int l = ele.getAbsoluteLeft(); int r = ele.getAbsoluteRight(); int t = ele.getAbsoluteTop(); int b = ele.getAbsoluteBottom(); */ return ((ele.getAbsoluteLeft() <= relX) && (ele.getAbsoluteRight() >= relX) && (ele.getAbsoluteTop() <= relY) && (ele.getAbsoluteBottom() >= relY)); }
From source file:com.bfr.client.selection.RangeEndPoint.java
License:Apache License
private static int getLocDistance(Element ele, int relX, int relY) { int top = ele.getAbsoluteTop(); int bot = ele.getAbsoluteBottom(); int res = 0;/*from w w w. java2 s .c o m*/ if (relY < bot) { res = bot - relY; } else if (relY > top) { res = relY - top; } int left = ele.getAbsoluteLeft(); int right = ele.getAbsoluteRight(); if (relX < left) { res += left - relX; } else if (relX > right) { res += right - relX; } return res; }
From source file:com.ephesoft.gxt.core.client.ui.widget.Grid.java
License:Open Source License
private GridInlineEditing<T> getGridEditing() { return new GridInlineEditing<T>(this) { @Override/*ww w .j ava 2 s . c o m*/ protected <N, O> void doStartEditing(com.sencha.gxt.widget.core.client.grid.Grid.GridCell cell) { super.doStartEditing(cell); ColumnModel<T> columnModel = getColumnModel(); if (null != columnModel) { ColumnConfig<T, ?> columnConfig = columnModel.getColumn(cell.getCol()); if (null != columnConfig) { IsField<T> editor = getEditor(columnConfig); Element cellElement = Grid.this.getView().getCell(cell.getRow(), cell.getCol()); if (editor instanceof Field) { Field<T> field = (Field<T>) editor; Widget editorWidget = editor.asWidget(); int client_y = cellElement.getOffsetTop(); int client_x = cellElement.getOffsetLeft(); int width = cellElement.getAbsoluteRight() - cellElement.getAbsoluteLeft(); int height = cellElement.getAbsoluteBottom() - cellElement.getAbsoluteTop() + 3; field.setPixelSize(width, height); editorWidget.getElement().getStyle().setTop(client_y, Unit.PX); editorWidget.getElement().getStyle().setLeft(client_x, Unit.PX); } } } } }; }
From source file:com.smartgwt.mobile.client.widgets.tableview.TableView.java
License:Open Source License
@Override public void onBrowserEvent(Event event) { super.onBrowserEvent(event); if (!isEnabled()) return;/*from w w w. jav a 2 s. c o m*/ final Element targetElem = EventUtil.getTargetElem(event); if (targetElem != null) { final Element element; final JsArray<Touch> touches; final int clientX, clientY; final boolean wasContextClickFired; switch (event.getTypeInt()) { case Event.ONMOUSEDOWN: onStart(event, null); break; case Event.ONTOUCHSTART: touches = event.getTouches(); if (touches.length() == 1 && touchIdentifier == null) { onStart(event, touches.get(0)); } else { // Another finger is touching the screen. onEnd(event); } break; case Event.ONMOUSEMOVE: if (touchActive) { clientX = event.getClientX(); clientY = event.getClientY(); if (Math.abs(touchPointX - clientX) >= 10 || Math.abs(touchPointY - clientY) >= 10) { onEnd(event); } } break; case Event.ONTOUCHMOVE: if (touchActive) { touches = event.getTouches(); if (touches.length() == 1 && touchIdentifier != null) { final Touch touch = touches.get(0); if (touch.getIdentifier() == touchIdentifier.intValue()) { clientX = touch.getClientX(); clientY = touch.getClientY(); if (Math.abs(touchPointX - clientX) >= 10 || Math.abs(touchPointY - clientY) >= 10) { onEnd(event); } } } } break; case Event.ONMOUSEUP: case Event.ONMOUSEOUT: case Event.ONTOUCHEND: case Event.ONTOUCHCANCEL: element = activeElement; wasContextClickFired = contextClickFired; onEnd(event); if (element != null && wasContextClickFired) { onClick(element, null); } break; case Event.ONCLICK: if (!isEnabled()) return; element = _findElement(event); onClick(element, targetElem); break; case Event.ONCONTEXTMENU: if (!isEnabled()) return; element = _findElement(event); if (element != null) { // Find the "context clickable element". // The context clickable element is the title element, unless there // is no title element, in which case it is the <li>. Element contextClickableElement = element; final NodeList<Node> children = element.getChildNodes(); final int children_length = children.getLength(); for (int i = 0; i < children_length; ++i) { final Node child = children.getItem(i); if (child.getNodeType() != Node.ELEMENT_NODE) continue; final Element childElem = (Element) child; if (ElementUtil.hasClassName(childElem, TableView.RECORD_TITLE_CLASS_NAME)) { contextClickableElement = childElem; if (touchActive) contextClickFired = true; break; } } if (contextClickableElement.isOrHasChild(targetElem)) { final Integer recordIndex = _findRecordIndex(element); if (recordIndex != null) { final Record record = _getData().get(recordIndex.intValue()); final boolean cancelled = RowContextClickEvent._fire(this, -1, record, recordIndex.intValue()); if (!cancelled) { final Menu contextMenu = getContextMenu(); if (contextMenu != null) { contextClickableElement.addClassName(_CSS.contextClickedElementClass()); final Object recordID = getRecordId(record); final Element li = elementMap.get(recordID); assert li != null; final Element finalContextClickableElement = contextClickableElement; new BeforeMenuHiddenHandler() { private HandlerRegistration beforeMenuHiddenRegistration = contextMenu ._addBeforeMenuHiddenHandler(this); @Override public void _onBeforeMenuHidden(BeforeMenuHiddenEvent event) { beforeMenuHiddenRegistration.removeHandler(); finalContextClickableElement .removeClassName(_CSS.contextClickedElementClass()); } }; contextMenu._showAt(this, event.getClientX(), event.getClientY(), contextClickableElement.getAbsoluteLeft(), contextClickableElement.getAbsoluteRight(), contextClickableElement.getAbsoluteTop(), contextClickableElement.getAbsoluteBottom()); if (touchActive) contextClickFired = true; break; } } } } } break; } } }
From source file:com.vaadin.addon.spreadsheet.client.SheetWidget.java
protected Cell getRealEventTargetCell(final int clientX, final int clientY, final Cell cell) { Cell mergedCell = getMergedCell(toKey(cell.getCol(), cell.getRow())); if (mergedCell == null) { Element target = cell.getElement(); int newX = cell.getCol(); int newY = cell.getRow(); boolean changed = false; if (clientX < target.getAbsoluteLeft() && cell.getCol() > firstColumnIndex) { newX = cell.getCol() - 1;// w w w .j av a2 s .co m changed = true; } else if (clientX > target.getAbsoluteRight() && cell.getCol() < lastColumnIndex) { newX = cell.getCol() + 1; changed = true; } if (clientY < target.getAbsoluteTop() && cell.getRow() > firstRowIndex) { newY = cell.getRow() - 1; changed = true; } else if (clientY > target.getAbsoluteBottom() && cell.getRow() < lastRowIndex) { newY = cell.getRow() + 1; changed = true; } if (changed) { return getRealEventTargetCell(clientX, clientY, getCell(newX, newY)); } return cell; } else { return mergedCell; } }
From source file:com.vaadin.client.widgets.Grid.java
License:Apache License
private int getFirstVisibleRowIndex() { int firstRowIndex = escalator.getVisibleRowRange().getStart(); int headerBottom = escalator.getHeader().getElement().getAbsoluteBottom(); Element firstRow = escalator.getBody().getRowElement(firstRowIndex); while (firstRow.getAbsoluteBottom() < headerBottom) { firstRow = escalator.getBody().getRowElement(++firstRowIndex); }//from www . j a v a2 s .c o m return firstRowIndex; }
From source file:de.catma.ui.client.ui.tagger.editor.TaggerEditor.java
License:Open Source License
private Element findClosestSibling(Element start) { Element curSibling = start; while ((curSibling != null) && !((lastClientX > curSibling.getAbsoluteLeft()) && (lastClientX < curSibling.getAbsoluteRight()) && (lastClientY > curSibling.getAbsoluteTop()) && (lastClientY < curSibling.getAbsoluteBottom()))) { curSibling = curSibling.getNextSiblingElement(); }//from ww w. j a v a 2s .co m return curSibling; }
From source file:jetbrains.jetpad.cell.toDom.Tooltip.java
License:Apache License
static int height(Element popup) { int height = popup.getAbsoluteBottom() - popup.getAbsoluteTop(); return isTooltip(popup) ? height + PSEUDO_ELEMENT_HEIGHT : height; }