Example #1
0
        public static CObjetDonnee SelectObjectQuickSearch(
            CFormListeStandard formListe,
            CObjetDonnee objetPreSelectionnee,
            string strTextQuick,
            string strContexteUtilisation,
            OnNewObjetDonneeEventHandler onNewObjetDonnee)
        {
            if (strTextQuick != null)
            {
                formListe.ModeQuickSearch = true;
                formListe.QuickSearchText = strTextQuick;
            }

            CObjetDonnee objetUnique = formListe.GetObjetQuickSearchSiUnique();

            /*CObjetDonnee objetUnique = CPanelFiltreRapide.GetObjetSiUnique(
             *      formListe.ListeObjets,
             *      formListe.FiltreRapide,
             *      strTextQuick);*/
            if (objetUnique != null)
            {
                formListe.Dispose();
                return(objetUnique);
            }

            formListe.ContexteUtilisation = strContexteUtilisation;

            CFormNavigateur oldNavigateur = CSc2iWin32DataNavigation.Navigateur;

            CFormNavigateurPopupListe navigateur = new CFormNavigateurPopupListe(formListe);

            CSc2iWin32DataNavigation.PushNavigateur(navigateur);

            formListe.ModeSelection             = true;
            formListe.OnObjetDoubleClicked     += new EventHandler(navigateur.OnDoubleClickFormList);
            formListe.AfterValideCreationObjet += new ObjetDonneeEventHandler(navigateur.AfterValideCreationObjet);
            formListe.OnNewObjetDonnee         += onNewObjetDonnee;

            DialogResult result = navigateur.ShowDialog();


            CObjetDonnee objetSelectionne = null;

            if (result == DialogResult.OK)
            {
                objetSelectionne = navigateur.m_objetSelectionne;
            }
            CSc2iWin32DataNavigation.PopNavigateur();
            return(objetSelectionne);
        }