示例#1
0
        public virtual void restore(Element original)
        {
            naziv               = original.naziv;
            engleskiNaziv       = original.engleskiNaziv;
            nazivPoGimnasticaru = original.nazivPoGimnasticaru;
            sprava              = original.sprava;
            isTablicniElement   = original.isTablicniElement;
            grupa               = original.grupa;
            tezina              = original.tezina;
            broj      = original.broj;
            podBroj   = original.podBroj;
            grupaBroj = original.grupaBroj;
            //parentId = original.parentId;
            parent = original.parent;

            videoKlipovi.Clear();
            foreach (Video v in original.VideoKlipovi)
            {
                dodajVideo((Video)v.Copy());
            }

            slike.Clear();
            foreach (Slika s in original.Slike)
            {
                dodajSliku((Slika)s.Copy());
            }

            varijante.Clear();
            foreach (Element e in original.Varijante)
            {
                dodajVarijantu((Element)e.Copy());
            }
        }
示例#2
0
 public Element(string naziv, string engleskiNaziv, string nazivPoGimnasticaru,
                Sprava sprava)
 {
     this.naziv               = naziv;
     this.engleskiNaziv       = engleskiNaziv;
     this.nazivPoGimnasticaru = nazivPoGimnasticaru;
     this.sprava              = sprava;
     this.isTablicniElement   = false;
     this.grupa               = GrupaElementa.Undefined;
     this.tezina              = TezinaElementa.Undefined;
     this.broj      = 0;
     this.podBroj   = 0;
     this.grupaBroj = new GrupaBrojClass(this);
     this.parent    = null;
 }
示例#3
0
 public Element(string naziv, string engleskiNaziv, string nazivPoGimnasticaru,
                Sprava sprava, GrupaElementa grupa, TezinaElementa tezina, short broj,
                byte podBroj)
 {
     this.naziv               = naziv;
     this.engleskiNaziv       = engleskiNaziv;
     this.nazivPoGimnasticaru = nazivPoGimnasticaru;
     this.sprava              = sprava;
     this.isTablicniElement   = true;
     this.grupa               = grupa;
     this.tezina              = tezina;
     this.broj      = broj;
     this.podBroj   = podBroj;
     this.grupaBroj = new GrupaBrojClass(this);
     this.parent    = null;
 }
示例#4
0
        public int CompareTo(object obj)
        {
            if (obj is GrupaBrojClass)
            {
                GrupaBrojClass other = (GrupaBrojClass)obj;

                int grupaOrder   = this.element.Grupa.CompareTo(other.element.Grupa);
                int brojOrder    = this.element.Broj.CompareTo(other.element.Broj);
                int podBrojOrder = this.element.PodBroj.CompareTo(other.element.PodBroj);
                if (grupaOrder != 0)
                {
                    return(grupaOrder);
                }
                else if (brojOrder != 0)
                {
                    return(brojOrder);
                }
                else
                {
                    return(podBrojOrder);
                }
            }
            throw new ArgumentException("object is not a GrupaBrojClass");
        }
示例#5
0
        protected override void deepCopy(DomainObject domainObject)
        {
            base.deepCopy(domainObject);

            Element element = (Element)domainObject;

            naziv               = element.naziv;
            engleskiNaziv       = element.engleskiNaziv;
            nazivPoGimnasticaru = element.nazivPoGimnasticaru;
            sprava              = element.sprava;
            isTablicniElement   = element.isTablicniElement;
            grupa               = element.grupa;
            tezina              = element.tezina;
            broj      = element.broj;
            podBroj   = element.podBroj;
            grupaBroj = element.grupaBroj;
            //parentId = element.parentId;
            if (shouldClone(new TypeAsocijacijaPair(typeof(Video))))
            {
                foreach (Video v in element.VideoKlipovi)
                {
                    videoKlipovi.Add((Video)v.Clone());
                }
            }
            else
            {
                foreach (Video v in element.VideoKlipovi)
                {
                    videoKlipovi.Add(v);
                }
            }
            if (shouldClone(new TypeAsocijacijaPair(typeof(Slika))))
            {
                foreach (Slika s in element.Slike)
                {
                    slike.Add((Slika)s.Clone());
                }
            }
            else
            {
                foreach (Slika s in element.Slike)
                {
                    slike.Add(s);
                }
            }
            // TODO: Ovo je error prone, zato sto ako kasnije promenim (refaktorisem)
            // ime promenljive 'varijante', kod nece raditi. Vidi da li moze nekako
            // drugacije

            //varijante = new List<Element>();
            if (shouldClone(new TypeAsocijacijaPair(typeof(Element), "varijante")))
            {
                foreach (Element e in element.Varijante)
                {
                    varijante.Add((Element)e.Clone());
                }
            }
            else
            {
                foreach (Element e in element.Varijante)
                {
                    varijante.Add(e);
                }
            }
            parent = element.parent;
            if (parent != null && shouldClone(new TypeAsocijacijaPair(
                                                  typeof(Element), "parent")))
            {
                parent = (Element)element.Clone();
            }
        }
示例#6
0
 public Element()
 {
     grupaBroj = new GrupaBrojClass(this);
 }