예제 #1
0
 private void setDdlStatiAutomatici(SAAdminTool.DocsPaWR.Passo step)
 {
     for (int i = 0; i < ddl_statiAutomatici.Items.Count; i++)
     {
         if (step.DESCRIZIONE_STATO_AUTOMATICO == ddl_statiAutomatici.Items[i].Text)
         {
             ddl_statiAutomatici.SelectedIndex = i;
         }
     }
 }
예제 #2
0
        private void btn_addStep_Click(object sender, System.EventArgs e)
        {
            if (lbox_stati2.Items.Count == 0)
            {
                RegisterStartupScript("statiSuccessivi", "<script>alert('Selezionare uno stato iniziale e uno o più stati successivi !');</script>");
                return;
            }

            if (verificaStatoPadre(ddl_stati.SelectedItem.Text))
            {
                RegisterStartupScript("statiSuccessivi", "<script>alert('Spiacente, esiste già un passo con questo stato iniziale !');</script>");
                return;
            }

            DocsPaWR.Stato st_1 = new SAAdminTool.DocsPaWR.Stato();
            DocsPaWR.Passo step = new SAAdminTool.DocsPaWR.Passo();
            st_1.DESCRIZIONE = ddl_stati.SelectedItem.Text;
            step.STATO_PADRE = st_1;
            if (ddl_statiAutomatici.SelectedItem.Text != "")
            {
                step.DESCRIZIONE_STATO_AUTOMATICO = ddl_statiAutomatici.SelectedItem.Text;
            }
            else
            {
                step.DESCRIZIONE_STATO_AUTOMATICO = "";
                step.ID_STATO_AUTOMATICO          = "";
            }

            ArrayList successivi = new ArrayList();

            for (int i = 0; i < lbox_stati2.Items.Count; i++)
            {
                DocsPaWR.Stato st_2 = new SAAdminTool.DocsPaWR.Stato();
                st_2.DESCRIZIONE = lbox_stati2.Items[i].Text;

                successivi.Add(st_2);
                step.SUCCESSIVI = new SAAdminTool.DocsPaWR.Stato[successivi.Count];
                successivi.CopyTo(step.SUCCESSIVI);
            }

            aggiungiPasso(step);

            lbox_stati1.Items.Clear();
            lbox_stati2.Items.Clear();
            ddl_stati.SelectedIndex = -1;
            ddl_statiAutomatici.Items.Clear();

            caricaDgListaPassi();
            dg_listaPassi.Columns[2].Visible = true;
            dg_listaPassi.Columns[3].Visible = true;

            settaStatiFinali(trovaStatiFinali());
        }
예제 #3
0
        private void aggiungiPasso(SAAdminTool.DocsPaWR.Passo step)
        {
            ArrayList passi;

            if (((SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]).PASSI != null)
            {
                passi = new ArrayList(((SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]).PASSI);
                passi.Add(step);
            }
            else
            {
                passi = new ArrayList();
                passi.Add(step);
            }
            ((SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]).PASSI = new SAAdminTool.DocsPaWR.Passo[passi.Count];
            passi.CopyTo(((SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]).PASSI);
        }
예제 #4
0
        private void btn_modPasso_Click(object sender, System.EventArgs e)
        {
            if (lbox_stati2.Items.Count == 0)
            {
                RegisterStartupScript("statiSuccessivi", "<script>alert('Selezionare uno stato iniziale e uno o più stati successivi !');</script>");
                return;
            }

            int elSelezionato = (dg_listaPassi.CurrentPageIndex * dg_listaPassi.PageSize) + dg_listaPassi.SelectedIndex;

            rimuoviPasso(elSelezionato);

            if (verificaStatoPadre(ddl_stati.SelectedItem.Text))
            {
                RegisterStartupScript("statiSuccessivi", "<script>alert('Spiacente, esiste già un passo con questo stato iniziale !');</script>");
                return;
            }

            DocsPaWR.Passo newStep = new SAAdminTool.DocsPaWR.Passo();
            DocsPaWR.Stato st_1    = new SAAdminTool.DocsPaWR.Stato();
            st_1.DESCRIZIONE    = ddl_stati.SelectedItem.Text;
            newStep.STATO_PADRE = st_1;
            if (ddl_statiAutomatici.SelectedItem.Text != "")
            {
                newStep.DESCRIZIONE_STATO_AUTOMATICO = ddl_statiAutomatici.SelectedItem.Text;
            }
            else
            {
                newStep.DESCRIZIONE_STATO_AUTOMATICO = "";
                newStep.ID_STATO_AUTOMATICO          = "";
            }

            ArrayList successivi = new ArrayList();

            for (int i = 0; i < lbox_stati2.Items.Count; i++)
            {
                DocsPaWR.Stato st_2 = new SAAdminTool.DocsPaWR.Stato();
                st_2.DESCRIZIONE = lbox_stati2.Items[i].Text;

                successivi.Add(st_2);
                newStep.SUCCESSIVI = new SAAdminTool.DocsPaWR.Stato[successivi.Count];
                successivi.CopyTo(newStep.SUCCESSIVI);
            }

            ArrayList passi_1 = new ArrayList(((SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]).PASSI);

            passi_1.Insert(elSelezionato, newStep);
            ((SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]).PASSI = new SAAdminTool.DocsPaWR.Passo[passi_1.Count];
            passi_1.CopyTo(((SAAdminTool.DocsPaWR.DiagrammaStato)Session["DiagrammaStato"]).PASSI);

            caricaDgListaPassi();
            dg_listaPassi.Columns[2].Visible = true;
            dg_listaPassi.Columns[3].Visible = true;
            btn_modPasso.Visible             = false;
            btn_addStep.Visible = true;
            lbox_stati1.Items.Clear();
            lbox_stati2.Items.Clear();
            ddl_statiAutomatici.Items.Clear();
            ddl_stati.SelectedIndex = -1;


            //Imposta le label che indicano istantaneamente quali sono gli stati iniziali e finali
            //del diagramma che si sta costruendo, avvalendosi delle funzioni:
            //"trovaStatoIniziale" - "trovaStatoFinale"

            settaStatiFinali(trovaStatiFinali());
        }