/* (non-Javadoc) * @see parser.CBMSElement#DoSemanticAnalysis(semantic.CBaseEntityFactory) */ public CBaseLanguageEntity DoSemanticAnalysis( CBaseLanguageEntity parent, CBaseEntityFactory factory) { CEntityResourceField ef; if (getName().equals("")) { ef = factory.NewEntityLabelField(getLine()); ef.m_csInitialValue = m_Value; } else { ef = factory.NewEntityEntryField(getLine(), getName()); if (!m_Value.equals("")) { ef.m_ResourceStrings = m_ResourceStrings; ef.m_csInitialValue = m_Value; } } ef.SetDisplayName(m_csDisplayName); ef.m_nPosCol = m_PosCol; ef.m_nPosLine = m_PosLine; ef.m_nLength = m_Length; if (m_HighLight != null) { ef.SetHighLight(m_HighLight.m_Name); } if (m_Color != null) { ef.SetColor(m_Color.m_Name); } for (int i = 0; i < m_arrATTRB.size(); i++) { String cs = m_arrATTRB.elementAt(i); if (cs.equals("ASKIP")) { ef.SetProtection("AUTOSKIP"); } else if (cs.equals("UNPROT")) { ef.SetProtection("UNPROTECTED"); } else if (cs.equals("NUM")) { ef.SetProtection("NUMERIC"); } else if (cs.equals("NORM")) { ef.SetBrightness("NORMAL"); } else if (cs.equals("DRK")) { ef.SetBrightness("DARK"); } else if (cs.equals("BRT")) { ef.SetBrightness("BRIGHT"); } else if (cs.equals("FSET")) { ef.SetModified(); } else if (cs.equals("IC")) { ef.SetCursor(); } } for (int i = 0; i < m_arrJustify.size(); i++) { String cs = m_arrJustify.elementAt(i); if (cs.equals("LEFT")) { ef.SetRightJustified(false); } else if (cs.equals("RIGHT")) { ef.SetRightJustified(true); } else if (cs.equals("BLANK")) { ef.SetFillValue("BLANK"); } else if (cs.equals("ZERO") || cs.equals("ZEROS") || cs.equals("ZEROES")) { ef.SetFillValue("ZERO"); } } return ef; }