Ejemplo n.º 1
0
        public virtual bool canSelektujElement(byte redBroj)
        {
            ElementVezbe elem = Elementi[redBroj - 1];

            return(elem.IsTablicniElement && getBrojBodujeSe() < Pravilo.BrojBodovanihElemenata &&
                   getBrojBodujeSe(elem.Grupa) < Pravilo.MaxIstaGrupa);
        }
Ejemplo n.º 2
0
 public virtual void DodajElement(ElementVezbe element)
 {
     if (element == null)
     {
         return;
     }
     Elementi.Add(element);
     renumberElements();
 }
Ejemplo n.º 3
0
 public virtual int CompareTo(object obj)
 {
     if (obj is ElementVezbe)
     {
         ElementVezbe other = (ElementVezbe)obj;
         return(this.RedBroj.CompareTo(other.RedBroj));
     }
     throw new ArgumentException("object is not a ElementVezbe");
 }
Ejemplo n.º 4
0
 public virtual void UkloniElement(ElementVezbe element)
 {
     if (element == null)
     {
         return;
     }
     if (Elementi.Remove(element))
     {
         renumberElements();
     }
 }
Ejemplo n.º 5
0
 public virtual void DodajElement(int index, ElementVezbe element)
 {
     if (index < 0 || index > elementi.Count)
     {
         return;
     }
     if (element == null)
     {
         return;
     }
     Elementi.Insert(index, element);
     renumberElements();
 }
Ejemplo n.º 6
0
        public virtual bool moveElementUp(byte redBroj)
        {
            if (redBroj < 1 || redBroj > Elementi.Count)
            {
                return(false);
            }
            if (Elementi.Count < 2 || redBroj == Elementi.Count)
            {
                return(false);
            }

            ElementVezbe e = Elementi[redBroj - 1];

            Elementi.RemoveAt(redBroj - 1);
            Elementi.Insert(redBroj, e);
            renumberElements();
            // TODO: Kao za moveElementUp
            return(true);
        }
Ejemplo n.º 7
0
        public virtual bool moveElementDown(byte redBroj)
        {
            if (redBroj < 1 || redBroj > Elementi.Count)
            {
                return(false);
            }
            if (Elementi.Count < 2 || redBroj < 2)
            {
                return(false);
            }

            ElementVezbe e = Elementi[redBroj - 1];

            Elementi.RemoveAt(redBroj - 1);
            Elementi.Insert(redBroj - 2, e);
            renumberElements();
            // TODO: Proveriti da li treba da se menja jos nesto u vezbi (osim sto su
            // prenumerisani redni brojevi)
            return(true);
        }
Ejemplo n.º 8
0
        protected override void deepCopy(DomainObject domainObject)
        {
            base.deepCopy(domainObject);

            ElementVezbe ev = (ElementVezbe)domainObject;

            redBroj          = ev.redBroj;
            bodujeSe         = ev.bodujeSe;
            vezaSaPrethodnim = ev.vezaSaPrethodnim;
            zahtev           = ev.zahtev;
            odbitak          = ev.odbitak;
            penalizacija     = ev.penalizacija;


            naziv             = ev.naziv;
            engleskiNaziv     = ev.engleskiNaziv;
            isTablicniElement = ev.isTablicniElement;
            grupa             = ev.grupa;
            tezina            = ev.tezina;
            broj    = ev.broj;
            podBroj = ev.podBroj;
        }
Ejemplo n.º 9
0
        public virtual List <int> getVeze()
        {
            List <int> result = new List <int>();
            int        i      = 0;

            while (i < Elementi.Count)
            {
                ElementVezbe e = Elementi[i];
                if (e.VezaSaPrethodnim != null)
                {
                    result.Add(i - 1);  // prvi element veze
                    while (i < Elementi.Count && Elementi[i].VezaSaPrethodnim != null)
                    {
                        i++;
                    }
                    result.Add(i - 1); // poslednji element veze
                }
                else
                {
                    i++;
                }
            }
            return(result);
        }
Ejemplo n.º 10
0
 public virtual void insertElementRow(ElementVezbe e)
 {
     throw new Exception("The method or operation should be implemented in inherited class.");
 }
Ejemplo n.º 11
0
 public virtual void UkloniElement(ElementVezbe element)
 {
     if (element == null)
         return;
     if (Elementi.Remove(element))
     {
         renumberElements();
     }
 }
Ejemplo n.º 12
0
        private void dodajElemente(List<Element> elementi)
        {
            bool dodajNaTrenutnuPoziciju = true;
            int index = vezba.Elementi.Count;
            if (dodajNaTrenutnuPoziciju)
            {
                ElementVezbe selectedElement = view.SelectedElement;
                if (selectedElement != null)
                    index = selectedElement.RedBroj - 1;
            }

            view.startBatchUpdate();
            foreach (Element elem in elementi)
            {
                ElementVezbe ev = new ElementVezbe(elem.Naziv, elem.EngleskiNaziv,
                    elem.IsTablicniElement, elem.Grupa, elem.Tezina, elem.Broj,
                    elem.PodBroj);
                vezba.DodajElement(index++, ev);
                view.insertElementRow(ev);
            }
            if (dodajNaTrenutnuPoziciju)
                view.updateRedBrojColumn();

            // selektuj zadnji dodat element
            view.selectElementCell(index, view.getSelectedColumn());
            view.endBatchUpdate();

            modified = true;
        }
Ejemplo n.º 13
0
 public virtual void DodajElement(int index, ElementVezbe element)
 {
     if (index < 0 || index > elementi.Count)
         return;
     if (element == null)
         return;
     Elementi.Insert(index, element);
     renumberElements();
 }
Ejemplo n.º 14
0
 public override void updateElementRow(int redBroj, ElementVezbe element)
 {
     throw new Exception("The method or operation should be implemented in inherited class.");
 }
Ejemplo n.º 15
0
 public override void insertElementRow(ElementVezbe e)
 {
     // ovo ne generise CellValueChanged event
     gridElementi.Rows.Insert(e.RedBroj - 1, getRowValues(e));
 }
Ejemplo n.º 16
0
 private object[] getRowValues(ElementVezbe e)
 {
     if (e.Tezina != TezinaElementa.Undefined)
         return new object[] { e.RedBroj, e.NazivElementa, e.Tezina,
             e.GrupaBroj, e.Vrednost, e.VezaSaPrethodnim,
             e.Zahtev, e.Odbitak, e.Penalizacija };
     else
         return new object[] { e.RedBroj, e.NazivElementa, null,
             e.GrupaBroj, e.Vrednost, e.VezaSaPrethodnim,
             e.Zahtev, e.Odbitak, e.Penalizacija };
 }
Ejemplo n.º 17
0
 public override void updateElementRow(int redBroj, ElementVezbe element)
 {
     disableAutomaticGridFooterUpdate();
     gridElementi.Rows[redBroj - 1].SetValues(getRowValues(element));
     enableAutomaticGridFooterUpdate();
 }
Ejemplo n.º 18
0
 public override void insertElementRow(ElementVezbe e)
 {
     vezbaTabela = null;
     if (!batchUpdate)
         updateGrid();
 }
Ejemplo n.º 19
0
 public virtual void DodajElement(ElementVezbe element)
 {
     if (element == null)
         return;
     Elementi.Add(element);
     renumberElements();
 }