Ejemplo n.º 1
0
  Rectangle getClientBounds() {
    XToolkit.awtLock();
    try {
      XWindowAttributes wattr = new XWindowAttributes();
      try {
        XToolkit.WITH_XERROR_HANDLER(XErrorHandler.IgnoreBadWindowHandler.getInstance());
        int status =
            XlibWrapper.XGetWindowAttributes(XToolkit.getDisplay(), xembed.handle, wattr.pData);

        XToolkit.RESTORE_XERROR_HANDLER();

        if (status == 0
            || (XToolkit.saved_error != null
                && XToolkit.saved_error.get_error_code() != XConstants.Success)) {
          return null;
        }

        return new Rectangle(wattr.get_x(), wattr.get_y(), wattr.get_width(), wattr.get_height());
      } finally {
        wattr.dispose();
      }
    } finally {
      XToolkit.awtUnlock();
    }
  }
  public Rectangle getBoundsPrivate() {
    int x = 0, y = 0;
    int w = 0, h = 0;
    XWindowAttributes attr = new XWindowAttributes();

    XToolkit.awtLock();
    try {
      XlibWrapper.XGetWindowAttributes(XToolkit.getDisplay(), getWindow(), attr.pData);
      x = attr.get_x();
      y = attr.get_y();
      w = attr.get_width();
      h = attr.get_height();
    } finally {
      XToolkit.awtUnlock();
    }
    attr.dispose();

    return new Rectangle(x, y, w, h);
  }
Ejemplo n.º 3
0
 final void dumpWindow(String id, long window) {
   XWindowAttributes pattr = new XWindowAttributes();
   try {
     XToolkit.awtLock();
     try {
       int status = XlibWrapper.XGetWindowAttributes(XToolkit.getDisplay(), window, pattr.pData);
     } finally {
       XToolkit.awtUnlock();
     }
     System.err.println(
         ">>>> "
             + id
             + ": "
             + pattr.get_x()
             + ", "
             + pattr.get_y()
             + ", "
             + pattr.get_width()
             + ", "
             + pattr.get_height());
   } finally {
     pattr.dispose();
   }
 }