code: public XWindowPeer createWindowPeer(XWindowPeer _xWindowParentPeer) throws com.sun.star.script.BasicErrorException{
          try{
              if (_xWindowParentPeer == null){
                  XWindow xWindow = (XWindow) UnoRuntime.queryInterface(XWindow.class, m_xDlgContainer);
                  xWindow.setVisible(false);
                  Object tk = m_xMCF.createInstanceWithContext("com.sun.star.awt.Toolkit", m_xContext);
                  XToolkit xToolkit = (XToolkit) UnoRuntime.queryInterface(XToolkit.class, tk);
                  mxReschedule = (XReschedule) UnoRuntime.queryInterface(XReschedule.class, xToolkit);
                  m_xDialogControl.createPeer(xToolkit, _xWindowParentPeer);
                  m_xWindowPeer = m_xDialogControl.getPeer();
                  return m_xWindowPeer;
              }
          } catch (com.sun.star.uno.Exception exception) {
              exception.printStackTrace(System.out);
          }
          return null;
      }
docs: create a peer for this
  dialog, using the given
  peer as a parent.
  @param parentPeer
  @return
  @throws java.lang.Exception