wxString FracCell::ToString(bool all) { wxString s; if (!m_isBroken) { if (m_fracStyle == FC_NORMAL) { if (m_num->IsCompound()) s += wxT("(") + m_num->ToString(true) + wxT(")/"); else s += m_num->ToString(true) + wxT("/"); if (m_denom->IsCompound()) s += wxT("(") + m_denom->ToString(true) + wxT(")"); else s += m_denom->ToString(true); } else if (m_fracStyle == FC_CHOOSE) { s = wxT("binomial(") + m_num->ToString(true) + wxT(",") + m_denom->ToString(true) + wxT(")"); } else { MathCell* tmp = m_denom; while (tmp != NULL) { tmp = tmp->m_next; // Skip the d if (tmp == NULL) break; tmp = tmp->m_next; // Skip the * if (tmp == NULL) break; s += tmp->GetDiffPart(); tmp = tmp->m_next; // Skip the * if (tmp == NULL) break; tmp = tmp->m_next; } } } if (m_fracStyle == FC_NORMAL) s += MathCell::ToString(all); return s; }