docs: public static ScreenParent makeNewScreen(String componentType, ScreenLoc itsLocation, RecordOwnerParent screenParent, int iDisplayFieldDesc, Map<String, Object> properties, Rec mainRecord, boolean initScreen)
      {
          String screenClass = null;
          if (!componentType.contains("."))
              screenClass = ScreenModel.BASE_PACKAGE + componentType;
          else if (componentType.startsWith("."))
              screenClass = DBConstants.ROOT_PACKAGE + componentType.substring(1);
          else
              screenClass = componentType;
          ScreenParent screen = (ScreenParent)ClassServiceUtility.getClassService().makeObjectFromClassName(screenClass);
          if (screen == null)
          {
              Utility.getLogger().warning("Screen component not found " + componentType);
              screen = (ScreenParent)ClassServiceUtility.getClassService().makeObjectFromClassName(ScreenModel.BASE_PACKAGE + ScreenModel.SCREEN);
          }
          if (screen != null)
          {
              BaseAppletReference applet = null;
              if (screenParent.getTask() instanceof BaseAppletReference)
                  applet = (BaseAppletReference)screenParent.getTask();
              if (initScreen)
              {
                  Object oldCursor = null;
                  if (applet != null)
                      oldCursor = applet.setStatus(Constant.WAIT, applet, null);
                  Map<String,Object> screenProperties = new HashMap<String,Object>();
                  if (properties != null)
                      screenProperties.putAll(properties);
                  screenProperties.put(ScreenModel.DISPLAY, iDisplayFieldDesc);
                  if (itsLocation != null)
                      screenProperties.put(ScreenModel.LOCATION, itsLocation);
  
                  //if (((iDisplayFieldDesc & ScreenConstants.DETAIL_MODE) == ScreenConstants.DETAIL_MODE) && (screen instanceof DetailGridScreen))
                  //    ((DetailGridScreen)screen).init((Record)mainRecord, null, (ScreenLocation)itsLocation, (BasePanel)screenParent, null, iDisplayFieldDesc, properties);
                  //else
                      screen.init(screenParent, mainRecord, screenProperties);
  
                  if (applet != null)
                      applet.setStatus(0, applet, oldCursor);
              }
          }
          return screen;
      }