private static void InitVariablesDeForm(CFormSelectUnObjetDonnee form, Type tp) { if (typeof(IObjetHierarchiqueACodeHierarchique).IsAssignableFrom(tp)) { form.m_arbre.Dock = DockStyle.Fill; form.m_arbre.Visible = true; IObjetDonneeAutoReference obj = (IObjetDonneeAutoReference)Activator.CreateInstance(tp, CSc2iWin32DataClient.ContexteCourant); form.m_strProprieteListeFils = obj.ProprieteListeFils; form.m_strChampParent = obj.ChampParent; form.m_wndListeElements.Visible = false; } else { form.m_wndListeElements.Visible = true; form.m_wndListeElements.Dock = DockStyle.Fill; form.m_arbre.Visible = false; } }
public static CObjetDonnee SelectionRechercheRapide( string strInstructions, Type type, CFiltreData filtreDeBase, string strTexteRechercheRapide, string strChampAffiche, string strContexte) { if (type == null || !type.IsSubclassOf(typeof(CObjetDonnee))) { CFormAlerte.Afficher(I.T("Can not select an element from this type|30035"), EFormAlerteType.Erreur); return(null); } CFormSelectUnObjetDonnee form = new CFormSelectUnObjetDonnee(); form.m_filtre = filtreDeBase; form.m_strInstructions = strInstructions; InitVariablesDeForm(form, type); form.m_txtRecherche.Text = strTexteRechercheRapide; form.TypeObjets = type; form.m_filtreRechercheRapide = CFournisseurFiltreRapide.GetFiltreRapideForType(type); if (strChampAffiche == "") { strChampAffiche = DescriptionFieldAttribute.GetDescriptionField(type, "Libelle", true); } form.m_strProprieteAffichee = strChampAffiche; form.m_wndListeElements.Columns[0].Propriete = form.m_strProprieteAffichee; CObjetDonnee objet = null; form.RefreshListe(); bool bOk = true; if (form.m_listeObjets == null || form.m_listeObjets.Count != 1) { bOk = form.ShowDialog() == DialogResult.OK; } if (bOk) { objet = form.ObjetDonnee; } form.Dispose(); return(objet); }
public static CObjetDonnee SelectObjetDonnee(string strInstructions, CListeObjetsDonnees liste, string strPropriete) { CFormSelectUnObjetDonnee form = new CFormSelectUnObjetDonnee(); form.m_listeObjets = liste; form.m_strInstructions = strInstructions; form.m_filtre = liste.Filtre; form.TypeObjets = liste.TypeObjets; form.m_strProprieteAffichee = strPropriete; InitVariablesDeForm(form, form.TypeObjets); form.m_wndListeElements.Columns[0].Propriete = strPropriete; CObjetDonnee objet = null; if (form.ShowDialog() == DialogResult.OK) { objet = form.ObjetDonnee; } form.Dispose(); return(objet); }
public static CObjetDonnee SelectObjetDonnee(string strInstructions, Type type, CFiltreData filtre, string strPropriete) { if (!type.IsSubclassOf(typeof(CObjetDonnee))) { CFormAlerte.Afficher(I.T("Impossible to select an element from this type|30035"), EFormAlerteType.Erreur); return(null); } CFormSelectUnObjetDonnee form = new CFormSelectUnObjetDonnee(); form.m_filtre = filtre; form.m_strInstructions = strInstructions; form.TypeObjets = type; form.m_strProprieteAffichee = strPropriete; InitVariablesDeForm(form, type); form.m_wndListeElements.Columns[0].Propriete = strPropriete; CObjetDonnee objet = null; if (form.ShowDialog() == DialogResult.OK) { objet = form.ObjetDonnee; } form.Dispose(); return(objet); }
//------------------------------------------------- private void SelectObject(CConfigTextBoxFiltreRapide config) { if (config != null) { m_configDefaut = config; } CObjetDonnee obj = null; bool bSelectPriseEnChargeParDelegue = false; if (m_mySelectObjetDelegate != null) { obj = m_mySelectObjetDelegate.Invoke(config.TypeObjets, config.FiltreDeBase, m_textBox.Text, ref bSelectPriseEnChargeParDelegue); } if (m_globalSelectObjetDelegate != null && !bSelectPriseEnChargeParDelegue) { obj = m_globalSelectObjetDelegate.Invoke(config.TypeObjets, config.FiltreDeBase, m_textBox.Text, ref bSelectPriseEnChargeParDelegue); } if (!bSelectPriseEnChargeParDelegue) { obj = CFormSelectUnObjetDonnee.SelectionRechercheRapide( "", config.TypeObjets, config.FiltreDeBase, m_textBox.Text, config.ProprieteAffichee, ""); } if (obj != null) { SelectedObject = obj; } else { SynchroniseTextEtObjet(); } }