List of usage examples for com.google.gwt.user.client Element getOffsetHeight
@Override
public int getOffsetHeight()
From source file:cc.kune.events.client.viewer.CalendarViewerPanel.java
License:GNU Affero Public License
/** * Instantiates a new calendar viewer panel. * * @param gsArmor/*w w w .ja v a 2 s.c o m*/ * the gs armor * @param eventBus * the event bus * @param i18n * the i18n * @param guiProvider * the gui provider * @param res * the res * @param capabilitiesRegistry * the capabilities registry * @param dragController * the drag controller * @param contentDropControllerProv * the content drop controller prov * @param containerDropControllerProv * the container drop controller prov */ @Inject public CalendarViewerPanel(final GSpaceArmor gsArmor, final EventBus eventBus, final I18nTranslationService i18n, final GuiProvider guiProvider, final CoreResources res, final ContentCapabilitiesRegistry capabilitiesRegistry, final KuneDragController dragController, final Provider<FolderContentDropController> contentDropControllerProv, final Provider<FolderContainerDropController> containerDropControllerProv, final InboxToContainerDropController inbDropController) { super(gsArmor, eventBus, i18n, capabilitiesRegistry, dragController, contentDropControllerProv, containerDropControllerProv, inbDropController); calendar = new Calendar(); calendar.setSettings(setCalendarSettings()); widget = calendar; calendar.sinkEvents( Event.ONMOUSEDOWN | Event.ONDBLCLICK | Event.KEYEVENTS | Event.ONMOUSEOVER | Event.ONCLICK); Event.addNativePreviewHandler(new NativePreviewHandler() { @Override public void onPreviewNativeEvent(final NativePreviewEvent eventPrev) { // We store click position in onder to show the menu final NativeEvent natEvent = eventPrev.getNativeEvent(); if (Event.getTypeInt(natEvent.getType()) != Event.ONCLICK) { clientX = natEvent.getClientX(); clientY = natEvent.getClientY(); return; } } }); contentTitle = new ContentTitleWidget(i18n, gsArmor, capabilitiesRegistry.getIconsRegistry()); Window.addResizeHandler(new ResizeHandler() { @Override public void onResize(final ResizeEvent event) { resizeCalendar(); } }); tooltipPanel = new PopupPanel(); Tooltip.to(tooltipPanel, "FIXME"); addMouseOverHandler(new MouseOverHandler<Appointment>() { @Override public void onMouseOver(final MouseOverEvent<Appointment> event) { final Element element = (Element) event.getElement(); tooltipPanel.setPopupPosition(DOM.getAbsoluteLeft(element), DOM.getAbsoluteTop(element) + element.getOffsetHeight()); tooltipPanel.show(); if (Tooltip.getTip().isShowing()) { tooltipPanel.hide(); Tooltip.getTip().hide(); } else { Tooltip.getTip().showTemporally(tooltipPanel, tooltipText); } // NotifyUser.info("On mouse"); } }); }
From source file:com.extjs.gxt.ui.client.dnd.GridDropTarget.java
License:sencha.com license
@Override protected void showFeedback(DNDEvent event) { event.getStatus().setStatus(true);/*from w w w.jav a 2 s .c om*/ if (feedback == Feedback.INSERT) { Element row = grid.getView().findRow(event.getTarget()).cast(); if (row == null && grid.getStore().getCount() > 0) { row = grid.getView().getRow(grid.getStore().getCount() - 1).cast(); } if (row != null) { int height = row.getOffsetHeight(); int mid = height / 2; mid += row.getAbsoluteTop(); int y = event.getClientY(); before = y < mid; int idx = grid.getView().findRowIndex(row); activeItem = grid.getStore().getAt(idx); insertIndex = adjustIndex(event, idx); showInsert(event, row); } else { insertIndex = 0; } } }
From source file:com.extjs.gxt.ui.client.dnd.ListViewDropTarget.java
License:sencha.com license
@Override protected void showFeedback(DNDEvent event) { event.getStatus().setStatus(true);/*from ww w .ja va2s .c om*/ if (feedback == Feedback.INSERT) { event.getStatus().setStatus(true); Element row = listView.findElement(event.getTarget()).cast(); if (row == null && listView.getStore().getCount() > 0) { row = listView.getElement(listView.getStore().getCount() - 1).cast(); } if (row != null) { int height = row.getOffsetHeight(); int mid = height / 2; mid += row.getAbsoluteTop(); int y = event.getClientY(); before = y < mid; int idx = listView.findElementIndex(row); activeItem = listView.getStore().getAt(idx); insertIndex = adjustIndex(event, idx); showInsert(event, row); } else { insertIndex = 0; } } }
From source file:com.extjs.gxt.ui.client.widget.grid.ColumnHeader.java
License:sencha.com license
protected void adjustCellWidth(Element cell, int width) { cell.getStyle().setPropertyPx("width", width); int adj = fly(cell).getFrameWidth("lr"); Element inner = cell.getFirstChildElement().cast(); fly(inner).setWidth(width - adj, true); if (isAttached()) { int before = cell.getOffsetHeight(); fly(inner).setHeight(before, true); int after = cell.getOffsetHeight(); // getting different values when some browsers are zoomed which is // causing the column heights to grow if (after != before) { fly(inner).setHeight(before + (before - after), true); }//from w w w. j av a 2s . c om } }
From source file:com.extjs.gxt.ui.client.widget.treepanel.TreePanel.java
License:sencha.com license
protected void moveFocus(Element selectedElem) { if (selectedElem == null) return;/*from ww w. j a v a2 s . c o m*/ int containerLeft = getAbsoluteLeft(); int containerTop = getAbsoluteTop(); int left = selectedElem.getAbsoluteLeft() - containerLeft; int top = selectedElem.getAbsoluteTop() - containerTop; int width = selectedElem.getOffsetWidth(); int height = selectedElem.getOffsetHeight(); if (width == 0 || height == 0) { focusEl.setLeftTop(0, 0); return; } focusEl.setLeftTop(left, top); }
From source file:com.google.gerrit.client.ui.FancyFlexTable.java
License:Apache License
protected void scrollIntoView(final int topRow, final int endRow) { final CellFormatter fmt = table.getCellFormatter(); final Element top = DOM.getParent(fmt.getElement(topRow, C_ARROW)); final Element end = DOM.getParent(fmt.getElement(endRow, C_ARROW)); final int rTop = top.getAbsoluteTop(); final int rEnd = end.getAbsoluteTop() + end.getOffsetHeight(); final int rHeight = rEnd - rTop; final int sTop = Document.get().getScrollTop(); final int sHeight = Document.get().getClientHeight(); final int sEnd = sTop + sHeight; final int nTop; if (sHeight <= rHeight) { // The region is larger than the visible area, make the top // exactly the top of the region, its the most visible area. ///*from ww w . j a va2 s . c o m*/ nTop = rTop; } else if (sTop <= rTop && rTop <= sEnd) { // At least part of the region is already visible. // if (rEnd <= sEnd) { // ... actually its all visible. Don't scroll. // return; } // Move only enough to make the end visible. // nTop = sTop + (rHeight - (sEnd - rTop)); } else { // None of the region is visible. Make it visible. // nTop = rTop; } Document.get().setScrollTop(nTop); }
From source file:com.google.gerrit.client.ui.NavigationTable.java
License:Apache License
protected void ensurePointerVisible() { final int max = table.getRowCount(); int row = currentRow; final int init = row; if (row < 0) { row = 0;// w ww . j av a 2s .c o m } else if (max <= row) { row = max - 1; } final CellFormatter fmt = table.getCellFormatter(); final int sTop = Document.get().getScrollTop(); final int sEnd = sTop + Document.get().getClientHeight(); while (0 <= row && row < max) { final Element cur = DOM.getParent(fmt.getElement(row, C_ARROW)); final int cTop = cur.getAbsoluteTop(); final int cEnd = cTop + cur.getOffsetHeight(); if (cEnd < sTop) { row++; } else if (sEnd < cTop) { row--; } else { break; } } if (init != row) { movePointerTo(row, false); } }
From source file:com.gwtm.ui.client.widgets.ScrollPanel.java
License:Apache License
private static void adjustScrollbar(ScrollPanel panel, double scrollPannerPos) { if (panel.scrollbar == null) return;/*from w w w .jav a 2 s . co m*/ Element widgetEle = panel.getWidget().getElement(); int scrollPannelHeight = widgetEle.getOffsetHeight(); int scrollHeight = Utils.Html.getHeight(panel.scrollbar); double scrollbarHeight = (scrollHeight * scrollHeight) / scrollPannelHeight; if (scrollbarHeight >= scrollHeight) { panel.hideScrollBar(); return; } else { panel.showScrollBar(); } double scrollbarPos = -scrollHeight * scrollPannerPos / scrollPannelHeight; if (scrollPannerPos > 0) { scrollbarHeight = (scrollbarHeight - scrollPannerPos); scrollbarPos = 0; if (scrollbarHeight < 8) scrollbarHeight = 8; } else if ((-scrollPannerPos + scrollHeight) > (scrollPannelHeight)) { double outScroll = (-scrollPannerPos + scrollHeight) - scrollPannelHeight; scrollbarHeight = scrollbarHeight - outScroll; if (scrollbarHeight < 8) { scrollbarHeight = 8; } else { scrollbarPos = scrollbarPos + outScroll; } scrollbarPos = (scrollbarPos + scrollHeight) > scrollHeight ? scrollHeight - scrollbarHeight : scrollbarPos; } Utils.Html.setHeight(panel.scrollbar.getFirstChildElement(), scrollbarHeight); Utils.Fx.setTranslateY(panel.scrollbar.getFirstChildElement(), scrollbarPos); }
From source file:com.gwtmobile.ui.client.widgets.ScrollPanel.java
License:Apache License
private void adjustScrollbar(double scrollPannerPos) { Element widgetEle = getWidget().getElement(); int scrollPannelHeight = widgetEle.getOffsetHeight(); double scrollHeight = Utils.getHeight(this._scrollbar); double scrollbarHeight = (scrollHeight * scrollHeight) / scrollPannelHeight; if (scrollbarHeight >= scrollHeight) { this.hideScrollBar(); return;/*ww w. jav a 2s. c o m*/ } else { this.showScrollBar(); } double scrollbarPos = -scrollHeight * scrollPannerPos / scrollPannelHeight; if (scrollPannerPos > 0) { scrollbarHeight = (scrollbarHeight - scrollPannerPos); scrollbarPos = 0; if (scrollbarHeight < 8) scrollbarHeight = 8; } else if ((-scrollPannerPos + scrollHeight) > (scrollPannelHeight)) { double outScroll = (-scrollPannerPos + scrollHeight) - scrollPannelHeight; scrollbarHeight = scrollbarHeight - outScroll; if (scrollbarHeight < 8) { scrollbarHeight = 8; } else { scrollbarPos = scrollbarPos + outScroll; } scrollbarPos = (scrollbarPos + scrollHeight) > scrollHeight ? scrollHeight - scrollbarHeight : scrollbarPos; } Utils.setHeight(this._scrollbar.getFirstChildElement(), scrollbarHeight); Utils.setTranslateY(this._scrollbar.getFirstChildElement(), scrollbarPos); }
From source file:com.gwtmobile.ui.client.widgets.ScrollPanel.java
License:Apache License
@Override public void onDragMove(DragEvent e) { Element widgetEle = getWidget().getElement(); int panelHeight = Utils.getHeight(this.getElement()); int widgetHeight = widgetEle.getOffsetHeight(); int current = getScrollPosition(); if (current > 0) {//exceed top boundary if (e.OffsetY > 0) { //resist scroll down. current += (int) (e.OffsetY / 2); // need the cast for production mode. } else {/* w w w . j a v a 2 s. com*/ current += e.OffsetY * 2; } } else if (-current + panelHeight > widgetHeight) { //exceed bottom boundary if (e.OffsetY < 0) { //resist scroll up. current += (int) (e.OffsetY / 2); } else { current += e.OffsetY * 2; } } else { current += e.OffsetY; } setScrollPosition(current); }