Add the screen controls to the second column of the grid.
@param parent The container to add the control(s) to.
@param fieldInfo the field to add a control for.
@param gridbag The screen layout.
@param c The constraint to use.
167259
public JComponent addScreenControl(Container parent, Converter fieldInfo)
    {
        JComponent component = this.createScreenComponent(fieldInfo);
        if (component instanceof ScreenComponent)
            if (((ScreenComponent)component).getConverter() != null)
                fieldInfo = (Converter)((ScreenComponent)component).getConverter();
        this.addScreenComponent(parent, fieldInfo, component);
        return component;
    }
279726
public void init(Object parent, Object record)
    {
        super.init(parent, record);
        if (record instanceof FieldList)
            this.addFieldList((FieldList)record, 0);
        else
            this.addFieldList(this.buildFieldList(), 0);
        if (this.getFieldList() != null)
        {
            boolean bAddCache = true;
            if (this instanceof JScreen)
                bAddCache = false;
            this.getBaseApplet().linkNewRemoteTable(this.getFieldList(), bAddCache);
            if (this.getFieldList().getTable() != null)
            {
                if (this.getFieldList().getEditMode() == Constants.EDIT_NONE)
                {
                    try   {
                        this.getFieldList().getTable().addNew();
                    } catch (DBException ex)    {
                        ex.printStackTrace(); // Never.
                    }
                }
            }
        }
    }
641649
public ScreenParent makeScreen(ScreenLoc itsLocation, ComponentParent parentScreen, int iDocMode, Map<String,Object> properties)
    {
        ScreenParent screen = null;
        if ((iDocMode & ScreenConstants.DOC_MODE_MASK) == PROCESS_DETAIL_MODE)
            screen = Record.makeNewScreen(MessageProcessInfo.MESSAGE_PROCESS_INFO_GRID_SCREEN_CLASS, itsLocation, parentScreen, iDocMode | ScreenConstants.DONT_DISPLAY_FIELD_DESC, properties, this, true);
        else if ((iDocMode & ScreenConstants.MAINT_MODE) == ScreenConstants.MAINT_MODE)
            screen = Record.makeNewScreen(MESSAGE_INFO_SCREEN_CLASS, itsLocation, parentScreen, iDocMode | ScreenConstants.DONT_DISPLAY_FIELD_DESC, properties, this, true);
        else if ((iDocMode & ScreenConstants.DISPLAY_MODE) != 0)
            screen = Record.makeNewScreen(MESSAGE_INFO_GRID_SCREEN_CLASS, itsLocation, parentScreen, iDocMode | ScreenConstants.DONT_DISPLAY_FIELD_DESC, properties, this, true);
        else if ((iDocMode & ScreenConstants.MENU_MODE) != 0)
            screen = Record.makeNewScreen(MenusModel.MENU_SCREEN_CLASS, itsLocation, parentScreen, iDocMode | ScreenConstants.DONT_DISPLAY_FIELD_DESC, properties, this, true);
        else
            screen = super.makeScreen(itsLocation, parentScreen, iDocMode, properties);
        return screen;
    }
157604
public void init(BaseField field, GridScreenParent gridScreen, Record recGrid, boolean bCreateSortOrder)
    {
        m_recGrid = recGrid;
        m_bCreateSortOrder = bCreateSortOrder;
        super.init(field, gridScreen, null);
        m_iKeyAreaArray = new String[MAX_ARRAY_SIZE];
        for (int i = 0; i < MAX_ARRAY_SIZE; i++)
            m_iKeyAreaArray[i] = null;
        m_iNextArrayIndex = 0;
    }
286573
public ScreenParent makeScreen(ScreenLoc itsLocation, ComponentParent parentScreen, int iDocMode, Map<String,Object> properties)
    {
        ScreenParent screen = null;
        if ((iDocMode & ClassProject.CLASS_DETAIL_MODE) == ClassProject.CLASS_DETAIL_MODE)
            screen = Record.makeNewScreen(ClassInfo.CLASS_INFO_GRID_SCREEN_CLASS, itsLocation, parentScreen, iDocMode | ScreenConstants.DONT_DISPLAY_FIELD_DESC, properties, this, true);
        else if ((iDocMode & ClassProject.RESOURCE_DETAIL_MODE) == ClassProject.RESOURCE_DETAIL_MODE)
            screen = Record.makeNewScreen(Resource.RESOURCE_GRID_SCREEN_CLASS, itsLocation, parentScreen, iDocMode | ScreenConstants.DONT_DISPLAY_FIELD_DESC, properties, this, true);
        else if ((iDocMode & ScreenConstants.DETAIL_MODE) == ScreenConstants.DETAIL_MODE)
            screen = Record.makeNewScreen(CLASS_PROJECT_GRID_SCREEN_CLASS, itsLocation, parentScreen, iDocMode | ScreenConstants.DONT_DISPLAY_FIELD_DESC, properties, this, true);
        else if ((iDocMode & ScreenConstants.MAINT_MODE) == ScreenConstants.MAINT_MODE)
            screen = Record.makeNewScreen(CLASS_PROJECT_SCREEN_CLASS, itsLocation, parentScreen, iDocMode | ScreenConstants.DONT_DISPLAY_FIELD_DESC, properties, this, true);
        else if ((iDocMode & ScreenConstants.DISPLAY_MODE) != 0)
            screen = Record.makeNewScreen(CLASS_PROJECT_GRID_SCREEN_CLASS, itsLocation, parentScreen, iDocMode | ScreenConstants.DONT_DISPLAY_FIELD_DESC, properties, this, true);
        else if ((iDocMode & ScreenConstants.MENU_MODE) != 0)
            screen = Record.makeNewScreen(CLASS_PROJECT_SCREEN_CLASS, itsLocation, parentScreen, iDocMode | ScreenConstants.DONT_DISPLAY_FIELD_DESC, properties, this, true);
        else
            screen = super.makeScreen(itsLocation, parentScreen, iDocMode, properties);
        return screen;
    }
746032
@UiThread
    protected void parentCollapsedFromViewHolder(int flatParentPosition) {
        ExpandableWrapper<P, C> parentWrapper = mFlatItemList.get(flatParentPosition);
        updateCollapsedParent(parentWrapper, flatParentPosition, true);
    }
976640
public void addLabel(JPanel panel, int x, int pickerRow, String labelText) {

        ((GridBagLayout) panel.getLayout()).rowHeights[(pickerRow - 3)] = 6;
        JLabel label = new JLabel();
        label.setText(labelText);
        panel.add(label, new GridBagConstraints(x, (pickerRow - 2), 1, 1, 0.0, 0.0,
                GridBagConstraints.WEST, GridBagConstraints.VERTICAL,
                new Insets(0, 0, 0, 0), 0, 0));
        ((GridBagLayout) panel.getLayout()).rowHeights[(pickerRow - 1)] = 3;
    }
1202193
public boolean addSubPanels(Container parent, int options)
    {
        if (parent == null)
            parent = m_parent;
        String strScreen = this.getProperty(Params.SCREEN);
        JBasePanel baseScreen = (JBasePanel)ClassServiceUtility.getClassService().makeObjectFromClassName(strScreen);
        if (baseScreen != null)
        {
            FieldList record = null;
            baseScreen.init(this, record);  // test
            return this.changeSubScreen(parent, baseScreen, null, options);   // You must manually push the history command
        }
        else
            Util.getLogger().warning("Screen class not found " + strScreen);
        return false;	// Nothing happened
    }
55289
public void init(BaseScreen gridScreen, int iIconField, int iStartDateTimeField, int iEndDateTimeField, int iDescriptionField, int iStatusField)
    {
        super.init(gridScreen, iIconField, iStartDateTimeField, iEndDateTimeField, iDescriptionField, iStatusField);
    }
1279859
public void init(Object parent, Object record)
    {
        super.init(parent, record);

        this.addSubPanels(this);
        
        if (this.getBaseApplet() != null)
            if (this.getBaseApplet().getProperty(Constants.OBJECT_ID) != null)
                if (this.getFieldList() != null)
                    if ((this.getFieldList().getEditMode() == Constants.EDIT_NONE) || (this.getFieldList().getEditMode() == Constants.EDIT_ADD))
        {
            FieldInfo field = this.getFieldList().getCounterField();
            field.setString(this.getBaseApplet().getProperty(Constants.OBJECT_ID));
            this.readKeyed(field);
        }
        this.fieldsToControls();
    }
402806
public void setupSFields()
    {
        if (this.getParentScreen() instanceof GridScreen)
        {
            Record recHeader = ((GridScreen)this.getParentScreen()).getHeaderRecord();
            recHeader.getField(Folder.NAME).setupDefaultView(this.getNextLocation(ScreenConstants.NEXT_LOGICAL, ScreenConstants.ANCHOR_DEFAULT), this, ScreenConstants.DEFAULT_DISPLAY);
        }
    }
1022466
protected static SpringLayout.Constraints getConstraintsForCell (
        int row, int col, Container parent, int cols)
    {
        SpringLayout layout = (SpringLayout)parent.getLayout();
        Component c = parent.getComponent(row * cols + col);
        return layout.getConstraints(c);
    }
1224657
public void init(ScreenLocation itsLocation, BasePanel parentScreen, String strDisplay)
    {
        m_StaticString = strDisplay;
        super.init(itsLocation, parentScreen, null, ScreenConstants.DONT_DISPLAY_DESC, null);
    }
748084
public void init(ScreenLocation itsLocation, BasePanel parentScreen, Converter fieldConverter, int iDisplayFieldDesc, String strValue, String strDesc, String strImage, String strCommand, String strToolTip)
    {
        m_strImageButton = strImage;        // Image for this button
        m_strToolTip = strToolTip;
        Converter converter = null;
        if (strValue != null)
            converter = new CheckConverter(fieldConverter, strValue, strDesc, true);
        else if (strDesc != null)
            converter = new FieldDescConverter(fieldConverter, strDesc);
        if (converter != null)
        {
            if (fieldConverter == null)
                m_DependentConverter = converter; // Remember to remove this
            fieldConverter = converter;
        }
        super.init(itsLocation, parentScreen, fieldConverter, iDisplayFieldDesc, null);
    }
203521
public void init(Record record, ScreenLocation itsLocation, BasePanel parentScreen, Converter fieldConverter, int iDisplayFieldDesc, Map<String,Object> properties)
    {
        oldProperties = null;
        String databaseName = parentScreen.getProperty("main" + BaseDatabase.DBSHARED_PARAM_SUFFIX);
        if ((databaseName == null) || (!databaseName.equalsIgnoreCase(Utility.addToPath("main", Utility.getSystemSuffix(parentScreen.getProperty(DBConstants.SYSTEM_NAME), parentScreen.getProperty(DBConstants.DEFAULT_SYSTEM_NAME)), BaseDatabase.DB_NAME_SEPARATOR))))
        {
            Task task = parentScreen.getTask();
            oldProperties = Utility.copyAppProperties(null, task.getProperties());
            Map<String,Object> prop = Utility.copyAppProperties(null, task.getApplication().getProperties());
            prop = Utility.copyAppProperties(prop, task.getProperties());
            BaseDatabase.addDBProperties(prop, parentScreen, null);
            prop.put("main" + BaseDatabase.DBSHARED_PARAM_SUFFIX, Utility.addToPath("main", Utility.getSystemSuffix(parentScreen.getProperty(DBConstants.SYSTEM_NAME), parentScreen.getProperty(DBConstants.DEFAULT_SYSTEM_NAME)), BaseDatabase.DB_NAME_SEPARATOR));
            prop.put(DBConstants.MODE, BaseDatabase.RUN_MODE);
            prop.put(SQLParams.AUTO_COMMIT_PARAM, DBConstants.FALSE);
            if (record != null)
                if (record.getTable().getDatabase().getDatabaseOwner() != null)
            {
                record.free();
                record = null;
            }
            parentScreen.setProperties(prop);
        }
        super.init(record, itsLocation, parentScreen, fieldConverter, iDisplayFieldDesc, properties);
        this.getTask().setProperties(oldProperties);
    }
1180421
private void registerParentType(final Map<String, SchemaNode> schemaNodes, final SchemaNode parentSchemaNode, final Map<String, GraphQLType> graphQLTypes, final Map<String, GraphQLFieldDefinition> fields, final Set<String> blacklist) throws FrameworkException {

		if (parentSchemaNode != null && !parentSchemaNode.equals(this)) {

			final String parentName = parentSchemaNode.getClassName();
			if (parentName != null && !blacklist.contains(parentName)) {

				if (!graphQLTypes.containsKey(parentName)) {

					// initialize parent type
					parentSchemaNode.initializeGraphQL(schemaNodes, graphQLTypes, blacklist);
				}

				// second try: add fields from parent type
				if (graphQLTypes.containsKey(parentName)) {

					final GraphQLObjectType parentType = (GraphQLObjectType)graphQLTypes.get(parentName);
					if (parentType != null) {

						for (final GraphQLFieldDefinition field : parentType.getFieldDefinitions()) {

							fields.put(field.getName(), field);
						}
					}
				}
			}
		}

	}
30961
public void addFieldInfo(final FieldInfo fieldInfo) {
        ArgUtils.notNull(fieldInfo, "fieldInfo");
        
        removeFieldInfo(fieldInfo.getFieldName());
        this.fieldInfos.add(fieldInfo);
    }