Ejemplo n.º 1
0
        /// <summary>
        /// Trova tutti gli elementi selezionati o non selezionati
        /// </summary>
        /// <param name="selezionati">true per i selezionati</param>
        /// <returns></returns>
        public List <Elemento> GetSelezionati(bool selezionati = true, Def.Stat typ = Def.Stat.Tutti)
        {
            List <Elemento> l = new List <Elemento>();

            if ((typ & Def.Stat.Rami) != 0)
            {
                foreach (Ramo el in rami)
                {
                    if (el.Selected == selezionati)
                    {
                        l.Add(el);
                    }
                }
            }
            if ((typ & Def.Stat.Nodi) != 0)
            {
                foreach (Nodo el in nodi)
                {
                    if (el.Selected == selezionati)
                    {
                        l.Add(el);
                    }
                }
            }
            return(l);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Trova gli Elementi con l'ID richiesto
        /// </summary>
        /// <param name="id">ID</param>
        /// <param name="typ">Tipo di elemento o combinazione di flag</param>
        /// <returns>List<Elemento></returns>
        public List <Elemento> GetElementi(uint id, Def.Stat typ)
        {
            List <Elemento> el = new List <Elemento>();

            if (id != Elemento.UNASSIGNED)
            {
                if ((typ & Def.Stat.Nodi) != 0)
                {
                    foreach (Nodo x in nodi)
                    {
                        if (x.ID == id)
                        {
                            el.Add(x);
                            break;
                        }
                    }
                }
                else if ((typ & Def.Stat.Rami) != 0)
                {
                    foreach (Ramo x in rami)
                    {
                        if (x.ID == id)
                        {
                            el.Add(x);
                            break;
                        }
                    }
                }
            }
            return(el);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Trova l'Elemento con l'ID richiesto
        /// </summary>
        /// <param name="id">ID</param>
        /// <param name="typ">Tipo di elemento o combinazione di flag</param>
        /// <returns>Elemento</returns>
        public Elemento GetElemento(uint id, Def.Stat typ)
        {
            Elemento el = null;

            if (id != Elemento.UNASSIGNED)
            {
                if ((typ & Def.Stat.Nodi) != 0)
                {
                    foreach (Nodo x in nodi)
                    {
                        if (x.ID == id)
                        {
                            el = x;
                            break;
                        }
                    }
                }
                else if ((typ & Def.Stat.Rami) != 0)
                {
                    foreach (Ramo x in rami)
                    {
                        if (x.ID == id)
                        {
                            el = x;
                            break;
                        }
                    }
                }
            }
            return(el);
        }
Ejemplo n.º 4
0
        Def.TipoCircuito tipoCirc;                  // Tipo di circuito

#warning Aggiunta stato Disattivo (in futuro) agli elementi

        /// <summary>
        /// Costruttore
        /// </summary>
        public Dati()
        {
            nome = string.Empty;
            nodi = new List <Nodo>();                   // Scelta una collezione standard invece di una nuova classe (es.: DynArray<T>)
            rami = new List <Ramo>();                   // perché altrimenti difficilmente serializzabile con Newtonsoft.Json

            freeIDnodo = freeIDramo = 1;                // Inizializza contatori
            maxIDerror = false;                         //Azzera flag
            viewFilter = Def.Stat.Nodi | Def.Stat.Rami; // Filtro per IEnumerable<Elemento>
        }
Ejemplo n.º 5
0
 public StatoAttivo()
 {
     stat            = Def.Stat.Vista;
     dragging        = false;
     dragFromElement = null;
 }