docs: public static CmsPositionBean getEditablePosition(Element editable) {
  
          CmsPositionBean result = new CmsPositionBean();
          int dummy = -999;
          // setting minimum height
          result.setHeight(20);
          result.setWidth(60);
          result.setLeft(dummy);
          result.setTop(dummy);
          Element sibling = editable.getNextSiblingElement();
          while ((sibling != null)
              && !CmsDomUtil.hasClass(CmsGwtConstants.CLASS_EDITABLE, sibling)
              && !CmsDomUtil.hasClass(CmsGwtConstants.CLASS_EDITABLE_END, sibling)) {
              // only consider element nodes
  
              if ((sibling.getNodeType() == Node.ELEMENT_NODE)
                  && !sibling.getTagName().equalsIgnoreCase(Tag.script.name())) {
                  if (!CmsDomUtil.hasClass(CmsGwtConstants.CLASS_EDITABLE_SKIP, sibling)) {
                      CmsPositionBean siblingPos = CmsPositionBean.generatePositionInfo(sibling);
                      result.setLeft(
                          ((result.getLeft() == dummy) || (siblingPos.getLeft() < result.getLeft()))
                          ? siblingPos.getLeft()
                          : result.getLeft());
                      result.setTop(
                          ((result.getTop() == dummy) || (siblingPos.getTop() < result.getTop()))
                          ? siblingPos.getTop()
                          : result.getTop());
                      result.setHeight(
                          ((result.getTop() + result.getHeight()) > (siblingPos.getTop() + siblingPos.getHeight()))
                          ? result.getHeight()
                          : (siblingPos.getTop() + siblingPos.getHeight()) - result.getTop());
                      result.setWidth(
                          ((result.getLeft() + result.getWidth()) > (siblingPos.getLeft() + siblingPos.getWidth()))
                          ? result.getWidth()
                          : (siblingPos.getLeft() + siblingPos.getWidth()) - result.getLeft());
                  }
              }
  
              sibling = sibling.getNextSiblingElement();
          }
          if ((result.getTop() == dummy) && (result.getLeft() == dummy)) {
              result = CmsPositionBean.generatePositionInfo(editable);
          }
          if (result.getHeight() == -1) {
              // in case no height was set
              result = CmsPositionBean.generatePositionInfo(editable);
              result.setHeight(20);
              result.setWidth((result.getWidth() < 60) ? 60 : result.getWidth());
          }
  
          return result;
      }