//------------------------------------------------- private void AddNewByDragDrop(CBlocWorkflow bloc) { if (bloc != null) { CDonneeDragDropObjetGraphique data = new CDonneeDragDropObjetGraphique(Name, new CDummyObjetWorkflowPourCreation(bloc)); DoDragDrop(data, DragDropEffects.Copy); } }
//------------------------------------------------------------------ public CDummyObjetWorkflowPourCreation(CBlocWorkflow bloc) : base() { if (bloc != null) { m_typeBloc = bloc.GetType(); Size = bloc.DefaultSize; } }
//------------------------------------------------- void itemNewBloc_MouseDown(object sender, MouseEventArgs e) { ToolStripMenuItem item = sender as ToolStripMenuItem; CBlocWorkflow bloc = item != null ? item.Tag as CBlocWorkflow : null; if (bloc != null) { AddNewByDragDrop(bloc); } }
//------------------------------------------------------------------ private void EditeCurrentEtape() { if (m_gestionnaireModeEdition.ModeEdition) { CWorkflowEtapeDessin etape = m_panelWorkflow.EtapeSelectionnee; if (etape != null && etape.TypeEtape != null) { System.Console.WriteLine("Edition de " + etape.TypeEtape.Libelle); CBlocWorkflow bloc = etape.TypeEtape.Bloc; if (CAllocateurEditeurBlocWorkflow.EditeBloc(bloc)) { System.Console.WriteLine("Maj champ de " + etape.TypeEtape.Libelle); etape.TypeEtape.Bloc = bloc; } } } }
//---------------------------------------------------------------------- private void AddMenuBloc(Type tp) { try { CBlocWorkflow bloc = Activator.CreateInstance(tp, new object[0]) as CBlocWorkflow; if (bloc != null) { ToolStripMenuItem itemNewBloc = new ToolStripMenuItem(bloc.BlocName); itemNewBloc.Tag = bloc; itemNewBloc.Image = bloc.BlocImage; itemNewBloc.Height = bloc.BlocImage != null ? bloc.BlocImage.Height : itemNewBloc.Height; m_menuBlocs.Items.Add(itemNewBloc); itemNewBloc.MouseDown += new MouseEventHandler(itemNewBloc_MouseDown); } } catch { } }
public static bool EditeBloc(CBlocWorkflow bloc) { if (bloc == null) { return(false); } Type tpForm = null; if (m_dicTypeBlocToTypeEditeur.TryGetValue(bloc.GetType(), out tpForm)) { IEditeurBlocWorkflow editeur = Activator.CreateInstance(tpForm, new object[0]) as IEditeurBlocWorkflow; if (editeur != null) { return(editeur.EditeBloc(bloc)); } } return(false); }
//------------------------------------------------------------------ private void m_panelWorkflow_DoubleClicSurElement(object sender, EventArgs e) { if (!LockEdition) { EditeCurrentEtape(); } else { CWorkflowEtapeDessin etape = m_panelWorkflow.EtapeSelectionnee; if (etape == null) { return; } CBlocWorkflow bloc = etape.TypeEtape != null ? etape.TypeEtape.Bloc : null; CBlocWorkflowWorkflow blocWorkflow = bloc as CBlocWorkflowWorkflow; if (blocWorkflow != null && blocWorkflow.DbKeyTypeWorkflow != null) { CTypeWorkflow typeWorkflow = new CTypeWorkflow(CSc2iWin32DataClient.ContexteCourant); if (typeWorkflow.ReadIfExists(blocWorkflow.DbKeyTypeWorkflow)) { CFormNavigateur navigateur = CFormNavigateur.FindNavigateur(this); if (navigateur != null) { CReferenceTypeForm refFrm = CFormFinder.GetRefFormToEdit(typeof(CTypeWorkflow)); if (refFrm != null) { CFormEditionStandard frm = refFrm.GetForm(typeWorkflow) as CFormEditionStandard; if (frm != null) { navigateur.AffichePage(frm); } } } } } } }
//------------------------------------------------------- public bool EditeBloc(CBlocWorkflow bloc) { return(CFormEditionBlocWorkflowProjet.EditeBloc(bloc as CBlocWorkflowProjet)); }
//------------------------------------------------------- public bool EditeBloc(CBlocWorkflow bloc) { return(CFormEditionBlocWorkflowWorkflow.EditeBloc(bloc as CBlocWorkflowWorkflow)); }
//----------------------------------------------------------------------------- public CResultAErreur AfficheEtape(CEtapeWorkflow etape, bool bDansNouvelOnglet) { CResultAErreur result = CResultAErreur.True; if (etape == null || etape.TypeEtape == null) { return(result); } //Vérifie que l'étape est bien affectée à l'utilisateur string[] strCodes = CUtilSession.GetCodesAffectationsEtapeConcernant(etape.ContexteDonnee.ContexteDonnee); CAffectationsEtapeWorkflow affs = etape.Affectations; bool bIsAffectée = false; foreach (string strCode in strCodes) { if (affs.Contains(strCode)) { bIsAffectée = true; break; } } if (bIsAffectée) { CBlocWorkflow bloc = etape.TypeEtape.Bloc; if (bloc is CBlocWorkflowFormulaire) { result = AfficheEtapeFormulaire(etape, bDansNouvelOnglet); } else if (bloc is CBlocWorkflowProcess) { using (CContexteDonnee ctxt = new CContexteDonnee(etape.ContexteDonnee.IdSession, true, false)) { etape = etape.GetObjetInContexte(ctxt) as CEtapeWorkflow; result = ((CBlocWorkflowProcess)bloc).StartProcess(etape); } } if (!result) { EModeGestionErreurEtapeWorkflow mode = CFormErreurOnWorkflowStep.OnError(result, bloc.ModeGestionErreur); if (mode != EModeGestionErreurEtapeWorkflow.DoNothing) { using (CContexteDonnee ctx = new CContexteDonnee(etape.ContexteDonnee.IdSession, true, false)) { CEtapeWorkflow etapeInContexte = etape.GetObjetInContexte(ctx) as CEtapeWorkflow; switch (mode) { case EModeGestionErreurEtapeWorkflow.CancelStep: etapeInContexte.CancelStep(); break; case EModeGestionErreurEtapeWorkflow.EndStep: result = etapeInContexte.EndEtapeNoSave(); if (!result) { result.EmpileErreur(I.T("Can not end step|20766")); CFormAlerte.Afficher(result.Erreur); return(result); } break; case EModeGestionErreurEtapeWorkflow.SetError: etapeInContexte.EtatCode = (int)EEtatEtapeWorkflow.Erreur; etapeInContexte.LastError = result.Erreur.ToString(); etapeInContexte.DateFin = null; break; } result = ctx.SaveAll(true); } } } } else { CFormAlerte.Afficher(I.T("You are not allowed to display this step|20620")); } return(result); }
//------------------------------------------------------- public bool EditeBloc(CBlocWorkflow bloc) { return(CFormEditionBlocWorkflowStopStep.EditeBloc(bloc as CBlocWorkflowStopStep)); }
//------------------------------------------------------- public bool EditeBloc(CBlocWorkflow bloc) { return(CFormEditionBlocWorkflowAttente.EditeBloc(bloc as CBlocWorkflowAttente)); }
//------------------------------------------------------- public bool EditeBloc(CBlocWorkflow bloc) { return(CFormEditionBlocWorkflowFormulaire.EditeBloc(bloc as CBlocWorkflowFormulaire)); }