MathCell* MathParser::ParseSubSupTag(wxXmlNode* node) { SubSupCell *subsup = new SubSupCell; wxXmlNode* child = node->GetChildren(); if (child) { subsup->SetBase(ParseTag(child, false)); child = child->GetNext(); if (child) { MathCell* index = ParseTag(child, false); index->SetExponentFlag(); subsup->SetIndex(index); child = child->GetNext(); if (child) { MathCell* power = ParseTag(child, false); power->SetExponentFlag(); subsup->SetExponent(power); subsup->SetType(m_ParserStyle); subsup->SetStyle(TS_VARIABLE); return subsup; } } } delete subsup; return NULL; }
MathCell* MathParser::ParseSupTag(wxXmlNode* node) { ExptCell *expt = new ExptCell; #if wxCHECK_VERSION(2,9,0) if (node->GetAttributes() != NULL) #else if (node->GetProperties() != NULL) #endif expt->IsMatrix(true); wxXmlNode* child = node->GetChildren(); if (child) { expt->SetBase(ParseTag(child, false)); child = child->GetNext(); if (child) { MathCell* power = ParseTag(child, false); power->SetExponentFlag(); expt->SetPower(power); expt->SetType(m_ParserStyle); expt->SetStyle(TS_VARIABLE); return expt; } } delete expt; return NULL; }