public PersonControl(Person person, MainForm form)
 {
     InitializeComponent();
     p = person;
     f = form;
     updateControlContent();
 }
Example #2
0
        public Guid AddPerson(string ime, string prezime)
        {
            Guid ID = Guid.NewGuid();

            var osoba = new Person(ID, ime, prezime);

            osobe.Add(osoba);

            return ID;
        }
Example #3
0
        public void ChangePerson(Person osoba)
        {
            if (PersonExists(osoba.personID)) // pazi da bude isti ID
            {
                Person mijenjamo = GetPersonByID(osoba.personID);
                // makni staru osobu
                DeletePerson(mijenjamo.personID);

                // dodaj novu
                osobe.Add(osoba);
            }
            else
                throw new System.InvalidOperationException("ChangePerson: ID se ne smije dirati.");
        }
        public void AddGrandsomething(string[] parametri, Person.Sex spol = Person.Sex.Unknown)
        {
            if (parametri.Length != 4)
                throw new System.ArgumentException();

            string unuk_ime = parametri[0];
            string unuk_prezime = parametri[1];

            string baka_ime = parametri[2];
            string baka_prezime = parametri[3];

            Guid unuk = FindPersonByName(unuk_ime, unuk_prezime, "Na kojeg unuka mislite ?");
            IEnumerable<Person> roditelji = Drvo.GetParents(unuk);
            Guid roditelj;

            if (roditelji.Count() == 0)
            {
                roditelj = Drvo.AddPerson("N", "N");
                Drvo.AddParent(unuk, roditelj);
            }
            else if (roditelji.Count() > 1)
            {
                roditelj = QueryDisambiguator(roditelji, "Baka po kojem roditelju ?").ID;
            }
            else // if (roditelji.Count() == 1)
            {
                roditelj = roditelji.First().ID;
            }

            // ok, sada kada znamo na kojeg roditelja se misli

            Guid baka = Drvo.AddParent(roditelj, baka_ime, baka_prezime);
            Person nona = Drvo.GetPersonByID(baka);
            nona.sex = spol;
            Drvo.ChangePerson(nona);
        }
Example #5
0
        public Guid AddPerson(string ime, string prezime, DateTime datumRodjenja, DateTime datumSmrti)
        {
            Guid ID = Guid.NewGuid();

            var osoba = new Person(ID, ime, prezime, datumRodjenja, datumSmrti);

            osobe.Add(osoba);

            return ID;
        }
Example #6
0
 public bool Equals(Person p)
 {
     return ID == p.ID && name == p.name && surname == p.surname && photo == p.photo && sex == p.sex && birthDate == p.birthDate && address == p.address
         && positionX==p.positionX && positionY==p.positionY;
 }
        public void GetSibling(string[] parametri, Person.Sex spol = Person.Sex.Unknown)
        {
            // napravi da vraca sve koji matchaju uvjet

            if (parametri.Length != 2)
                throw new System.ArgumentException();

            string osoba_ime = parametri[0];
            string osoba_prezime = parametri[1];

            Guid osoba = FindPersonByName(osoba_ime, osoba_prezime, "Na koga mislite ?");
            IEnumerable<Guid> roditelji = Drvo.GetParent(osoba);

            List<Guid> brat = new List<Guid>();

            foreach (var roditelj in roditelji)
            {
                foreach (var djete in Drvo.GetChildren(roditelj))
                {
                    if (!osoba.Equals(djete) && !brat.Contains(djete.ID))
                    {
                        brat.Add(djete.ID);
                    }
                }
            }

            PrintPersons(brat);
        }
        public void GetGrandsomething(string[] parametri, Person.Sex spol = Person.Sex.Unknown)
        {
            // napravi da vraca sve koji matchaju uvjet

            if (parametri.Length != 2)
                throw new System.ArgumentException();

            string unuk_ime = parametri[0];
            string unuk_prezime = parametri[1];

            Guid unuk = FindPersonByName(unuk_ime, unuk_prezime, "Na kojeg unuka mislite ?");
            IEnumerable<Guid> roditelji = Drvo.GetParent(unuk);

            var baka = new List<Guid>();

            foreach (var roditelj in roditelji)
                baka = baka.Concat(Drvo.GetParent(roditelj)).ToList();

            baka = baka.FindAll(b => Drvo.GetPersonByID(b).sex == spol);

            PrintPersons(baka);
        }
        public void AddSibling(string[] parametri, Person.Sex spol = Person.Sex.Unknown)
        {
            if (parametri.Length != 4)
                throw new System.ArgumentException();

            string osoba_ime = parametri[0];
            string osoba_prezime = parametri[1];

            string brat_ime = parametri[2];
            string brat_prezime = parametri[3];

            Guid osoba = FindPersonByName(osoba_ime, osoba_prezime, "Na koga mislite ?");
            IEnumerable<Person> roditelji = Drvo.GetParents(osoba);
            Guid roditelj;

            if (roditelji.Count() == 0)
            {
                roditelj = Drvo.AddPerson("N", "N");
                Drvo.AddParent(osoba, roditelj);
            }
            else if (roditelji.Count() > 1)
            {
                roditelj = QueryDisambiguator(roditelji, "Po kojem roditelju ?").ID;
            }
            else // if (roditelji.Count() == 1)
            {
                roditelj = roditelji.First().ID;
            }

            // ok, sada kada znamo na kojeg roditelja se misli

            Guid brat;
            try
            {
                brat = FindPersonByName(brat_ime, brat_prezime);
                Drvo.AddChild(roditelj, brat);
            }
            catch (Exception)
            {
                brat = Drvo.AddPerson(brat_ime, brat_prezime);
                Drvo.AddChild(roditelj, brat);
            }
        }
Example #10
0
 private void setPerson(Person per)
 {
     p = per;
 }
 public void PrintPerson(Person osoba)
 {
     System.Console.WriteLine(osoba);
 }