List of usage examples for com.google.gwt.dom.client Style setTop
public void setTop(double value, Unit unit)
From source file:org.waveprotocol.wave.client.editor.sugg.InteractiveSuggestionsManager.java
License:Apache License
@Override public void setPopupPositionAndMakeVisible(Element reference, final Element popup) { Style popupStyle = popup.getStyle(); // TODO(danilatos): Do something more intelligent than arbitrary constants (which might be // susceptible to font size changes, etc) popupStyle.setLeft(popupAnchor.getAbsoluteLeft() - popup.getOffsetWidth() + 26, Unit.PX); popupStyle.setTop(popupAnchor.getAbsoluteBottom() + 5, Unit.PX); popupStyle.setVisibility(Visibility.VISIBLE); }
From source file:org.waveprotocol.wave.client.wavepanel.impl.edit.BlipMenuController.java
License:Apache License
private PopupMenu createPopupMenu() { final PopupMenu menu = new PopupMenu(menuContextElement, new RelativePopupPositioner() { @Override/* w w w . j ava 2 s .c o m*/ public void setPopupPositionAndMakeVisible(Element relative, Element popup) { int left, top; if (DomUtil.doesElementHaveType(menuContextElement, Type.BLIP_MENU_BUTTON)) { int popupWidth = popup.getOffsetWidth(); left = relative.getAbsoluteRight() - popupWidth; top = relative.getAbsoluteBottom(); } else { left = menuContextEvent.getClientX(); top = menuContextEvent.getClientY(); } Style popupStyle = popup.getStyle(); popupStyle.setLeft(left, Style.Unit.PX); popupStyle.setTop(top, Style.Unit.PX); popupStyle.setPosition(Style.Position.FIXED); popupStyle.setVisibility(Style.Visibility.VISIBLE); } }); BlipView blipView = getBlip(); final ConversationBlip blip = modelProvider.getBlip(blipView); boolean beingEdited = blipView.isBeingEdited(); boolean focused = blipView.isFocused(); // "Edit" popup menu item. if (!beingEdited) { menu.addItem( messages.edit(), ((focused && inited) ? KeyComboManager .getFirstKeyComboHintByTask(KeyComboContext.WAVE, KeyComboTask.EDIT_BLIP) : null), new Command() { @Override public void execute() { actions.startEditing(blip); menu.hide(); } }, true); } // "Add" popup menu item. if (!beingEdited) { String text = navigator.isBlipLastInParentThread(blip) ? messages.add() : messages.insert(); menu.addItem(text, ((focused && inited) ? KeyComboManager .getFirstKeyComboHintByTask(KeyComboContext.TEXT_EDITOR, KeyComboTask.CANCEL_EDITING) : null), new Command() { @Override public void execute() { actions.addBlipAfter(blip); menu.hide(); } }, true); } // "Reply" popup menu item. if (!beingEdited) { menu.addItem( messages.reply(), ((focused && inited) ? KeyComboManager .getFirstKeyComboHintByTask(KeyComboContext.WAVE, KeyComboTask.REPLY_TO_BLIP) : null), new Command() { @Override public void execute() { actions.reply(blip); menu.hide(); } }, true); } // "Done" popup menu item. if (beingEdited) { menu.addItem(messages.done(), ((focused && inited) ? KeyComboManager.getFirstKeyComboHintByTask(KeyComboContext.TEXT_EDITOR, KeyComboTask.DONE_WITH_EDITING) : null), new Command() { @Override public void execute() { actions.stopEditing(true); menu.hide(); } }, true); } // "Delete" popup menu item. menu.addItem(messages.delete(), ((focused && inited) ? KeyComboManager.getFirstKeyComboHintByTask(KeyComboContext.WAVE, KeyComboTask.DELETE_BLIP) : null), new Command() { @Override public void execute() { actions.deleteBlip(blip, Actions.DeleteOption.WITH_CONFIRMATION); menu.hide(); } }, true); // "Delete thread" popup menu item. ConversationThread thread = blip.getThread(); if (!thread.isRoot() && thread.getFirstBlip() == blip && navigator.getChildBlipCount(thread) > 1) { menu.addItem(messages.deleteThread(), null, new Command() { @Override public void execute() { actions.deleteParentThread(blip, Actions.DeleteOption.WITH_CONFIRMATION); menu.hide(); } }, true); } // "Link" popup menu item. if (!beingEdited) { menu.addItem( messages.link(), ((focused && inited) ? KeyComboManager .getFirstKeyComboHintByTask(KeyComboContext.WAVE, KeyComboTask.POPUP_LINK) : null), new Command() { @Override public void execute() { actions.popupLink(blip); menu.hide(); } }, true); } inited = true; return menu; }
From source file:org.waveprotocol.wave.client.wavepanel.view.dom.DomUtil.java
License:Apache License
/** * Puts cover element on the covered element. * The cover and covered elements have the same position and size. * //from ww w .j a v a2 s .c o m * @param cover the cover element * @param covered the covered element */ public static void putCover(Element cover, Element covered) { Element parent = covered.getParentElement(); Rect coveredRect = DomUtil.getElementAbsoluteRect(covered); Rect parentRect = DomUtil.getElementAbsoluteRect(parent); Style coverStyle = cover.getStyle(); coverStyle.setPosition(Style.Position.ABSOLUTE); coverStyle.setTop(coveredRect.getTop() - parentRect.getTop(), Style.Unit.PX); coverStyle.setLeft(coveredRect.getLeft() - parentRect.getLeft(), Style.Unit.PX); coverStyle.setRight(parentRect.getRight() - coveredRect.getRight(), Style.Unit.PX); coverStyle.setBottom(parentRect.getBottom() - coveredRect.getBottom(), Style.Unit.PX); parent.appendChild(cover); }
From source file:org.waveprotocol.wave.client.wavepanel.view.dom.DomUtil.java
License:Apache License
/** * Sets specified cursor to the element. * //from w w w . j a va 2 s.c o m * @param element * @param cursorName name of the cursor * * Walkaround of Chrome bug when cursor on the element needs mouse move to be actually changed. * http://code.google.com/p/chromium/issues/detail?id=26723#c87 */ private static void setCursor(Element element, String cursorName) { String currentCursorName = element.getStyle().getCursor(); if (!currentCursorName.equals(cursorName)) { Element wkch = Document.get().createDivElement(); com.google.gwt.dom.client.Style wkchStyle = wkch.getStyle(); wkchStyle.setOverflow(Style.Overflow.HIDDEN); wkchStyle.setPosition(Style.Position.ABSOLUTE); wkchStyle.setLeft(0, Style.Unit.PX); wkchStyle.setTop(0, Style.Unit.PX); wkchStyle.setWidth(100, Style.Unit.PCT); wkchStyle.setHeight(100, Style.Unit.PCT); Element wkch2 = Document.get().createDivElement(); com.google.gwt.dom.client.Style wkch2Style = wkch2.getStyle(); wkch2Style.setWidth(200, Style.Unit.PCT); wkch2Style.setHeight(200, Style.Unit.PCT); wkch.appendChild(wkch2); element.appendChild(wkch); element.getStyle().setProperty(STYLE_CURSOR_PROPERTY, cursorName); wkch.setScrollLeft(1); wkch.setScrollLeft(0); element.removeChild(wkch); } }
From source file:org.waveprotocol.wave.client.widget.popup.ListRelativePopupPositioner.java
License:Apache License
/** * {@inheritDoc}/*from w ww. j a v a 2s . c o m*/ */ public void setPopupPositionAndMakeVisible(final Element relative, final Element p) { ScheduleCommand.addCommand(new Scheduler.Task() { public void execute() { Style s = p.getStyle(); int horizontalCenter = RootPanel.get().getOffsetWidth() / 2; int verticalCenter = RootPanel.get().getOffsetHeight() / 2; int left = relative.getAbsoluteLeft(); int right = relative.getAbsoluteRight(); int top = relative.getAbsoluteTop(); int bottom = relative.getAbsoluteBottom(); if (inHorizontalList) { // Place popup above or below relative if (right > horizontalCenter) { // Place popup left of relative's right s.setRight(RootPanel.get().getOffsetWidth() - right + PIXEL_OFFSET, Unit.PX); if (top < verticalCenter) { // Place popup below bottom of relative s.setTop(bottom, Unit.PX); } else { // Place popup above top of relative s.setBottom(RootPanel.get().getOffsetHeight() - top, Unit.PX); } } else { // Place popup right of relative's left s.setLeft(left + PIXEL_OFFSET, Unit.PX); if (top < verticalCenter) { // Place popup below bottom of relative s.setTop(bottom, Unit.PX); } else { // Place popup above top of relative s.setBottom(RootPanel.get().getOffsetHeight() - top, Unit.PX); } } } else { // Place popup on left or right side of relative if (right > horizontalCenter) { // Place popup left of relative's left s.setRight(RootPanel.get().getOffsetWidth() - left, Unit.PX); if (top < verticalCenter) { // Place popup below top of relative s.setTop(top + PIXEL_OFFSET, Unit.PX); } else { // Place popup above bottom of relative s.setBottom(RootPanel.get().getOffsetHeight() - bottom + PIXEL_OFFSET, Unit.PX); } } else { // Place popup right of relative's right s.setLeft(right, Unit.PX); if (top < verticalCenter) { // Place popup below top of relative s.setTop(top + PIXEL_OFFSET, Unit.PX); } else { // Place popup above bottom of relative s.setBottom(RootPanel.get().getOffsetHeight() - bottom + PIXEL_OFFSET, Unit.PX); } } } p.getStyle().setVisibility(Visibility.VISIBLE); } }); }
From source file:org.workcraft.gwt.slidingscale.client.SlidingScale.java
public SlidingScale(final SlidingScaleDef definition, double limit, double initialLevel, final Function1<Double, String> labelfunc) { if (limit > 1.0) limit = 1.0;/*from w w w . ja v a 2s . c o m*/ if (limit < 0.0) limit = 0.0; this.limit = limit; HorizontalPanel p = new HorizontalPanel(); p.getElement().getStyle().setBackgroundColor("#eeeeee"); FlowPanel imageDiv = new FlowPanel(); Style s = imageDiv.getElement().getStyle(); s.setPosition(Position.RELATIVE); overlayDiv = new FlowPanel(); overlayDiv.getElement().setId("intake24-sliding-scale-overlay"); final Style overlayStyle = overlayDiv.getElement().getStyle(); overlayStyle.setPosition(Position.ABSOLUTE); overlayStyle.setOverflow(Overflow.HIDDEN); overlayStyle.setWidth(definition.imageWidth, Unit.PX); overlayStyle.setHeight(definition.imageHeight, Unit.PX); overlayStyle.setTop(0, Unit.PX); Image overlayImage = new Image(definition.overlayUrl); final Style overlayImageStyle = overlayImage.getElement().getStyle(); overlayImageStyle.setPosition(Position.ABSOLUTE); label = new Label(); label.addStyleName("intake24-as-served-image-label"); overlayDiv.add(overlayImage); image = new Image(definition.baseImageUrl); image.getElement().setId("intake24-sliding-scale-image"); imageDiv.add(image); imageDiv.add(overlayDiv); imageDiv.add(label); final int scaleHeight = (int) ((definition.fullLevel - definition.emptyLevel) * limit); final int limitOffset = (int) ((1.0 - limit) * (definition.fullLevel - definition.emptyLevel)); sliderBar = new SlidingScaleSlider(scaleHeight + "px"); sliderBar.getElement().setId("intake24-sliding-scale-slider"); sliderBar.getElement().getStyle() .setMarginTop(definition.imageHeight - (definition.fullLevel - limitOffset), Unit.PX); sliderBar.addBarValueChangedHandler(new BarValueChangedHandler() { @Override public void onBarValueChanged(BarValueChangedEvent event) { double v = event.getValue() / 1000.0; long offset = Math.round(v * scaleHeight) + definition.imageHeight - definition.fullLevel + limitOffset; overlayStyle.setTop(offset, Unit.PX); overlayStyle.setHeight(definition.imageHeight - offset, Unit.PX); overlayImageStyle.setTop(-offset, Unit.PX); label.setText(labelfunc.apply(getValue())); } }); setValue(initialLevel); p.add(imageDiv); p.add(sliderBar); initWidget(p); /* imageDiv = new FlowPanel(); imageDiv.getElement().getStyle().setPosition(Position.RELATIVE); imageDiv.getElement().setTabIndex(1); imageDiv.getElement().setTitle("Guide image: bananas"); final Image baseImage = new Image(definition.baseImageUrl); imageDiv.add(baseImage); mouseMoveHandler = new MouseMoveHandler() { @Override public void onMouseMove(MouseMoveEvent event) { int mouseX = event.getRelativeX(baseImage.getElement()); int mouseY = event.getRelativeY(baseImage.getElement()); int mouseOverArea = -1; for (int i = 0; i < definition.areas.length; i++) { if (definition.areas[i].shape.isInside(new Point(mouseX, mouseY))) { mouseOverArea = i; break; } } if (mouseOverArea != activeArea) { if (hasFocus && mouseOverArea == -1) { setActiveArea(lastActiveArea); } else setActiveArea(mouseOverArea); } } }; clickHandler = new ClickHandler() { @Override public void onClick(ClickEvent event) { handler.handleResult(definition.areas[activeArea].id); } }; baseImage.addMouseMoveHandler(mouseMoveHandler); addDomHandler(new KeyDownHandler() { @Override public void onKeyDown(KeyDownEvent event) { // System.out.println (event.getCharCode()); if (event.getNativeEvent().getKeyCode() == KeyCodes.KEY_ENTER) { handler.handleResult(activeArea); } if (event.getNativeEvent().getKeyCode() == KeyCodes.KEY_LEFT) { prev(); event.preventDefault(); } if (event.getNativeEvent().getKeyCode() == KeyCodes.KEY_RIGHT) { next(); event.preventDefault(); } if (event.getNativeEvent().getKeyCode() == KeyCodes.KEY_UP) { next(); event.preventDefault(); } if (event.getNativeEvent().getKeyCode() == KeyCodes.KEY_DOWN) { prev(); event.preventDefault(); } } }, KeyDownEvent.getType()); addDomHandler(new FocusHandler() { @Override public void onFocus(FocusEvent event) { hasFocus = true; if (activeArea == -1) setActiveArea(0); } }, FocusEvent.getType()); addDomHandler(new BlurHandler() { @Override public void onBlur(BlurEvent event) { hasFocus = false; setActiveArea(-1); } }, BlurEvent.getType()); initWidget(imageDiv); prefetchImages();*/ }
From source file:stroom.dashboard.client.vis.VisFrame.java
License:Apache License
public VisFrame() { super("vis.html");// + "?time=" + System.currentTimeMillis()); final Style style = getElement().getStyle(); style.setPosition(Position.ABSOLUTE); style.setLeft(0, Unit.PX);/*from w w w . j a va 2 s . c o m*/ style.setRight(0, Unit.PX); style.setTop(0, Unit.PX); style.setBottom(0, Unit.PX); style.setWidth(100, Unit.PCT); style.setHeight(100, Unit.PCT); style.setMargin(0, Unit.PX); style.setPadding(0, Unit.PX); style.setBorderWidth(0, Unit.PX); messageSupport = new MessageSupport(getElement()); }
From source file:stroom.dashboard.client.vis.VisViewImpl.java
License:Apache License
private void resize() { if (visPane != null) { final Style style = visPane.asWidget().getElement().getStyle(); style.setLeft(visContainer.getElement().getAbsoluteLeft(), Unit.PX); style.setTop(visContainer.getElement().getAbsoluteTop(), Unit.PX); style.setWidth(visContainer.getElement().getClientWidth(), Unit.PX); style.setHeight(visContainer.getElement().getClientHeight(), Unit.PX); if (visPane instanceof RequiresResize) { visPane.onResize();/*from w ww . j a v a2 s .c o m*/ } } }
From source file:stroom.data.grid.client.MoveHandle.java
License:Apache License
public void setHeading(final NativeEvent event, final Heading heading) { reset();// w ww.j a v a 2s . c om if (heading != null) { final int childIndex = heading.getColIndex(); final ColSettings settings = colSettings.get(childIndex); if (settings.isMovable()) { // See if we can move this column. final Style style = getElement().getStyle(); style.setLeft(heading.getElement().getAbsoluteLeft(), Unit.PX); style.setTop(heading.getElement().getAbsoluteTop(), Unit.PX); style.setWidth(heading.getElement().getOffsetWidth(), Unit.PX); offset = heading.getInitialX() - heading.getElement().getAbsoluteLeft(); this.heading = heading; } } }
From source file:stroom.data.grid.client.MoveHandle.java
License:Apache License
public void move(final NativeEvent event) { if (heading != null && moving) { final Style style = getElement().getStyle(); style.setVisibility(Visibility.VISIBLE); final int left = event.getClientX() - offset; style.setLeft(left, Unit.PX);// w w w .jav a2 s.c om style.setTop(heading.getElement().getAbsoluteTop(), Unit.PX); style.setWidth(heading.getElement().getOffsetWidth(), Unit.PX); style.setHeight(dataGrid.getElement().getOffsetHeight(), Unit.PX); final Element parent = heading.getElement().getParentElement(); insertPos = parent.getChildCount(); for (int i = 0; i < parent.getChildCount(); i++) { final Element child = parent.getChild(i).cast(); if (i == heading.getColIndex() + 1) { // Don't allow the user to insert an item after itself as // this doesn't make sense. if (child.getAbsoluteLeft() > event.getClientX()) { insertPos = i - 1; break; } } else if (i == parent.getChildCount() - 1 && heading.getColIndex() == parent.getChildCount() - 1) { // Don't allow the user to insert an item after itself as // this doesn't make sense. insertPos = i; break; } else if (child.getAbsoluteLeft() + (child.getScrollWidth() / 2) >= event.getClientX()) { insertPos = i; break; } } // Constrain to the first movable column. int firstMovableCol = 0; for (int i = 0; i < colSettings.size(); i++) { final ColSettings settings = colSettings.get(i); if (settings.isMovable()) { firstMovableCol = i; break; } } insertPos = Math.max(insertPos, firstMovableCol); // Show this handle if it isn't already showing. show(); // Show the target line. if (insertPos == 0) { showTargetLine(dataGrid.getAbsoluteLeft(), dataGrid.getAbsoluteTop(), dataGrid.getOffsetHeight()); } else { final Element child = parent.getChild(insertPos - 1).cast(); showTargetLine(child.getAbsoluteRight() - HALF_LINE_WIDTH, dataGrid.getAbsoluteTop(), dataGrid.getOffsetHeight()); } } }