/// <summary> /// feltetelinfo hozzaadas, teljes vagy csak az ArrayList Add-ja /// </summary> /// <param name="info"> /// a feltetelinfo /// </param> /// <param name="csakbase"> /// true: csak az ArrayList Add /// false: teljes /// </param> public void Add(Feltetelinfo info, bool csakbase) { object[] zarojelek = null; if (csakbase) base.Add(info); else { Feltetelinfo elozoinfo = null; Tablainfo elozotabinfo = null; if (this.Count != 0) { elozoinfo = this[this.Count - 1]; elozotabinfo = elozoinfo.Tabinfo; } info.ElozoFeltetelInfo = elozoinfo; if (elozoinfo != null) info.ElozoFeltetelInfo.KovetkezoFeltetelInfo = info; Tablainfo tabinfo = info.Tabinfo; Tablainfok.Add(info.Tabinfo); int i = base.Add(info); if (info.NyitoZarojel != "") { nyitozarojelek.Add(i); zarojelek = new object[2]; zarojelek[0] = i; zarojelpoziciok.Add(zarojelek); } if (info.ZaroZarojel != "") { zarozarojelek.Add(i); int minusz = 0; bool kellmeg = true; do { minusz++; zarojelek = (object[])zarojelpoziciok[zarojelpoziciok.Count - minusz]; if (zarojelek[1] == null) { zarojelek[1] = i; zarojelpoziciok[zarojelpoziciok.Count - minusz] = zarojelek; kellmeg = false; } } while (kellmeg); } if (info.EsVagy != "") { if (info.EsVagy == "VAGY") vagypoziciok.Add(i); else espoziciok.Add(i); } else urespoziciok.Add(i); info.Feltetelinfok = this; if (tabinfo != null) { switch (tipus) { case "feltetel": tabinfo.Feltetelek.Add(info, true); break; case "sor": tabinfo.SorFeltetelek.Add(info, true); break; case "oszlop": tabinfo.OszlopFeltetelek.Add(info, true); break; } } } }
/// <summary> /// uj feltetelinfo hozzaadas /// </summary> /// <param name="info"> /// feltetelinfo /// </param> public void Add(Feltetelinfo info) { Add(info, false); }