def newPositioner(self, context):
     
     # Use two widgets so that setPixelSize() consistently affects dimensions
     outer = SimplePanel() 
     outer.addStyleName(CSS_DRAGDROP_POSITIONER)
     
     # place off screen for border calculation
     RootPanel.get().add(outer, -500, -500) 
     
     # Ensure IE quirks mode returns valid outer.offsetHeight, and thus valid
     outer.setWidget(self.DUMMY_LABEL_IE_QUIRKS_MODE_OFFSET_HEIGHT)
     width = 0
     height = 0
     if isinstance(self.dropTarget,HorizontalPanel):
         for widget in context.selectedWidgets:
             width += widget.getOffsetWidth()
             height = Math.max(height, widget.getOffsetHeight())
     else:
         for widget in context.selectedWidgets:
             width = Math.max(width, widget.getOffsetWidth())
             height += widget.getOffsetHeight()
     inner = SimplePanel()
     inner.setPixelSize(
         width - DOMUtil.getHorizontalBorders(outer), height - DOMUtil.getVerticalBorders(outer))
     outer.setWidget(inner)
     return outer
 def makePositioner(self, reference):
     outer = SimplePanel() # Use two widgets so that setPixelSize() consistently affects dimensions
     outer.addStyleName(CSS_DRAGDROP_POSITIONER)
     outer.getElement().getStyle().setProperty("margin", "0px")
     RootPanel.get().add(outer, -500, -500) # place off screen for border calculation
     outer.setWidget(DUMMY_LABEL_IE_QUIRKS_MODE_OFFSET_HEIGHT) # Ensure IE quirks mode returns valid outer.offsetHeight, and thus valid
     inner = SimplePanel()
     inner.getElement().getStyle().setProperty("margin", "0px")
     inner.getElement().getStyle().setProperty("border", "none")
     offsetWidth = reference.getOffsetWidth() - DOMUtil.getHorizontalBorders(outer)
     offsetHeight = reference.getOffsetHeight() - DOMUtil.getVerticalBorders(outer)
     inner.setPixelSize(offsetWidth, offsetHeight)
     outer.setWidget(inner)
     return outer
Example #3
0
        # Ensure IE quirks mode returns valid outer.offsetHeight, and thus valid
        # DOMUtil.getVerticalBorders(outer)
        outer.setWidget(DUMMY_LABEL_IE_QUIRKS_MODE_OFFSET_HEIGHT)
        
        int width = 0
        int height = 0
        if dropTarget instanceof HorizontalPanel:
            for Iterator iterator = context.selectedWidgets.iterator(); iterator.hasNext();:
                Widget widget = (Widget) iterator.next()
                width += widget.getOffsetWidth()
                height = Math.max(height, widget.getOffsetHeight())
            
         else:
            for Iterator iterator = context.selectedWidgets.iterator(); iterator.hasNext();:
                Widget widget = (Widget) iterator.next()
                width = Math.max(width, widget.getOffsetWidth())
                height += widget.getOffsetHeight()
            
        
        
        SimplePanel inner = SimplePanel()
        inner.setPixelSize(width - DOMUtil.getHorizontalBorders(outer), height
        - DOMUtil.getVerticalBorders(outer))
        
        outer.setWidget(inner)
        
        return outer
    


Example #4
0
 * Called by {@link PickupDragController#dragStart(Widget)} to allow subclasses to
 * provide their own drag proxies.
 *
 * @param context the current drag context
 * @return a drag proxy
 """
 def newDragProxy(self, context):
     AbsolutePanel container = AbsolutePanel()
     DOM.setStyleAttribute(container.getElement(), "overflow", "visible")
     
     WidgetArea draggableArea = WidgetArea(context.draggable, None)
     for Iterator iterator = context.selectedWidgets.iterator(); iterator.hasNext();:
         Widget widget = (Widget) iterator.next()
         WidgetArea widgetArea = WidgetArea(widget, None)
         Widget proxy = SimplePanel()
         proxy.setPixelSize(widget.getOffsetWidth(), widget.getOffsetHeight())
         proxy.addStyleName(PRIVATE_CSS_PROXY)
         container.add(proxy, widgetArea.getLeft() - draggableArea.getLeft(), widgetArea.getTop()
         - draggableArea.getTop())
     
     
     return container
 
 
 """*
 * Restore the selected widgets to their original location.
 * @see #saveSelectedWidgetsLocationAndStyle()
 * @see #restoreSelectedWidgetsStyle()
 """
 def restoreSelectedWidgetsLocation(self):
     for Iterator iterator = context.selectedWidgets.iterator(); iterator.hasNext();: