示例#1
0
        private void m_cmbArbreHierarchique_SelectedValueChanged(object sender, EventArgs e)
        {
            CConsultationHierarchique consultation = m_cmbArbreHierarchique.ElementSelectionne as CConsultationHierarchique;

            if (consultation != null)
            {
                CFolderConsultationHierarchique racine = consultation.FolderRacine;
                if (m_elementEdite != null)
                {
                    CFolderConsultationRacineFromElement racineElt = racine as CFolderConsultationRacineFromElement;
                    racineElt.InitConsultation(m_elementEdite);
                }
                CTreeViewNodeKeeper keeper = new CTreeViewNodeKeeper(m_arbreConsultation);
                m_arbreConsultation.InitChamps(racine, CSc2iWin32DataClient.ContexteCourant, true);
                keeper.Apply(m_arbreConsultation);
                if (m_bCmbArbreInitialisee)
                {
                    Type typeConsulte = null;
                    if (m_elementEdite != null)
                    {
                        typeConsulte = m_elementEdite.GetType();
                    }
                    new CTimosAppRegistre().SetLastIdConsultationHierarchiqueForGED(typeConsulte, consultation.Id);
                }
            }
        }
示例#2
0
        private void RefreshListeAlarmes()
        {
            CTreeViewNodeKeeper keeper = new CTreeViewNodeKeeper(m_arbreAlarmes);

            m_arbreAlarmes.BeginUpdate();
            m_arbreAlarmes.Nodes.Clear();
            IEnumerable <IAlarme> lst = from a in m_gestionnaireAlarmes.CurrentAlarms where a.Parent == null orderby a.DateDebut descending select a;

            foreach (IAlarme alrm in lst)
            {
                TreeNode node = new TreeNode();
                FillNode(node, alrm);
                m_arbreAlarmes.Nodes.Add(node);
            }
            if (m_chkAvecAlarmesRetombées.Checked)
            {
                IEnumerable <IAlarme> lstTombées = from a in m_gestionnaireAlarmes.EndedAlarms where a.Parent == null orderby a.DateDebut descending select a;
                foreach (IAlarme alrm in lstTombées)
                {
                    TreeNode node = new TreeNode();
                    FillNode(node, alrm);
                    m_arbreAlarmes.Nodes.Add(node);
                }
            }
            keeper.Apply(m_arbreAlarmes);
            m_arbreAlarmes.EndUpdate();
        }
示例#3
0
        public void Init(IBaseGantt gantt, DateTime dateDebut, DateTime dateFin)
        {
            DateTime            dt        = DateTime.Now;
            CTreeViewNodeKeeper keepNodes = new CTreeViewNodeKeeper(this);

            m_baseGantt = gantt;
            m_dicNodes.Clear();
            m_bIsFilling = true;
            Nodes.Clear();

            foreach (IElementDeGantt elt in from elt in gantt.GetElements()
                     where elt.ElementParent == null
                     select elt)
            {
                TreeNode node = CreateNode(elt);
                Nodes.Add(node);
            }

            foreach (TreeNode node in Nodes)
            {
                if (node.Tag is CElementDeGanttProjet)
                {
                    CProjet projet = ((CElementDeGanttProjet)node.Tag).ProjetAssocie;
                    if (projet != null && projet.TypeProjet.DefaultExpand)
                    {
                        node.Expand();
                    }
                }
            }

            keepNodes.Apply(this);
            m_bIsFilling = false;
            TimeSpan sp = DateTime.Now - dt;
            //Console.WriteLine("Fill tree : " + sp.TotalMilliseconds);
        }
示例#4
0
        //---------------------------------------
        public void InitForModule(CModuleParametrage module, CContexteDonnee contexte)
        {
            CTreeViewNodeKeeper keeper = new CTreeViewNodeKeeper(this);

            m_contexte      = contexte;
            m_moduleAffiche = module;
            BeginUpdate();
            Nodes.Clear();
            Dictionary <string, List <CRelationElement_ModuleParametrage> > dicTypeToObjets = new Dictionary <string, List <CRelationElement_ModuleParametrage> >();
            List <string> lstTypes = new List <string>();

            if (m_moduleAffiche != null)
            {
                foreach (CRelationElement_ModuleParametrage rel in m_moduleAffiche.RelationsElements)
                {
                    if (rel.ElementLie != null)
                    {
                        string strType = DynamicClassAttribute.GetNomConvivial(rel.ElementLie.GetType());
                        List <CRelationElement_ModuleParametrage> lst = null;
                        if (!dicTypeToObjets.TryGetValue(strType, out lst))
                        {
                            lstTypes.Add(strType);
                            lst = new List <CRelationElement_ModuleParametrage>();
                            dicTypeToObjets[strType] = lst;
                        }
                        lst.Add(rel);
                    }
                }
                lstTypes.Sort();
                foreach (string strType in lstTypes)
                {
                    TreeNode nodeType = new TreeNode(strType);
                    nodeType.SelectedImageIndex = 0;
                    nodeType.ImageIndex         = 0;
                    nodeType.Tag = null;
                    Nodes.Add(nodeType);
                    List <CRelationElement_ModuleParametrage> lst = null;
                    if (dicTypeToObjets.TryGetValue(strType, out lst))
                    {
                        foreach (CRelationElement_ModuleParametrage rel in lst)
                        {
                            CObjetDonnee obj     = rel.ElementLie;
                            string       strDesc = DescriptionFieldAttribute.GetDescription(obj);
                            if (strDesc.Trim().Length == 0)
                            {
                                strDesc = obj.DescriptionElement;
                            }
                            TreeNode node = new TreeNode(strDesc);
                            node.Tag                = rel;
                            node.ImageIndex         = 1;
                            node.SelectedImageIndex = 1;
                            nodeType.Nodes.Add(node);
                        }
                    }
                }
            }
            EndUpdate();
            keeper.Apply(this);
        }
        //-------------------------------------------------------------
        private void RefreshGestionnaire()
        {
            CGestionnaireUnites.Refresh();
            CTreeViewNodeKeeper keeper = new CTreeViewNodeKeeper(m_arbreUnits);

            Init();
            keeper.Apply(m_arbreUnits.Nodes);
        }
示例#6
0
        private void RemplirArbre()
        {
            CTreeViewNodeKeeper keeper         = new CTreeViewNodeKeeper();
            HashSet <Type>      setOpenedTypes = new HashSet <Type>();

            foreach (TreeNode node in m_arbre.Nodes)
            {
                if (node.IsExpanded && node.Tag is Type)
                {
                    setOpenedTypes.Add((Type)node.Tag);
                }
            }
            m_arbre.Nodes.Clear();
            for (int n = m_treeImages.Images.Count - 1; n >= 3; n--)
            {
                m_treeImages.Images.RemoveAt(n);
            }
            if (m_threadRemplissage != null)
            {
                m_threadRemplissage.Abort();
            }
            m_threadRemplissage = new Thread(() =>
            {
                Invoke((MethodInvoker) delegate
                {
                    m_panelProgression.Visible = true;
                    keeper.KeepNodes(m_arbre.Nodes);
                });
                try
                {
                    m_lblProgression.Init();
                    m_entitesManager.GetAllDependances(m_listeObjetsAnalyses, OnFournisseurTermine);
                }
                finally
                {
                    Invoke((MethodInvoker) delegate
                    {
                        m_arbre.EndUpdate();
                        m_panelProgression.Visible = false;
                        keeper.Apply(m_arbre.Nodes);
                    });
                    foreach (TreeNode node in m_arbre.Nodes)
                    {
                        if (node.Tag is Type && setOpenedTypes.Contains((Type)node.Tag))
                        {
                            node.Expand();
                        }
                    }
                    SortArbre();
                    AutoCheckParent();
                    m_threadRemplissage = null;
                }
            });
            m_threadRemplissage.Start();
        }
示例#7
0
        private void InitArbre()
        {
            CTreeViewNodeKeeper keeper = new CTreeViewNodeKeeper(m_arbreAlarmes);
            CBaseTypesAlarmes   laBase = CBaseTypesAlarmes.Instance;

            m_arbreAlarmes.Nodes.Clear();
            foreach (ITypeAlarme type in from tp in laBase.TypesAlarmes where tp.TypeParent == null select tp)
            {
                TreeNode node = new TreeNode();
                FillNode(node, type);
                m_arbreAlarmes.Nodes.Add(node);
            }
            keeper.Apply(m_arbreAlarmes);
        }
示例#8
0
        //-------------------------------
        public void Init(IDefinition root)
        {
            m_root = root;
            CTreeViewNodeKeeper keeper = new CTreeViewNodeKeeper(this);

            Nodes.Clear();
            foreach (IDefinition def in root.Children)
            {
                TreeNode node = CreateNode(def);

                Nodes.Add(node);
            }
            keeper.Apply(this);
        }
示例#9
0
        //-------------------------------------------
        public void RefreshTree()
        {
            CTreeViewNodeKeeper keeper = new CTreeViewNodeKeeper(this);

            BeginUpdate();
            Nodes.Clear();
            foreach (CEasyQuerySource source in m_sources.Sources)
            {
                TreeNode node = new TreeNode(source.SourceName);
                node.Tag = source;
                Nodes.Add(node);
                TreeNode dummy = new TreeNode();
                node.Nodes.Add(dummy);
            }
            EndUpdate();
            keeper.Apply(this);
        }
示例#10
0
        //------------------------------------------------------------------------------
        private void FillCategoriesForElement(IObjetDonneeAIdNumerique element)
        {
            CFiltreData filtreCategories;

            if (element != null && !m_chkToutesCategories.Checked)
            {
                filtreCategories = new CFiltreDataAvance(
                    CCategorieGED.c_nomTable,
                    CRelationDocumentGED_Categorie.c_nomTable + "." +
                    CDocumentGED.c_nomTable + "." +
                    CRelationElementToDocument.c_nomTable + "." +
                    CRelationElementToDocument.c_champIdElement + " = @1 AND " +
                    CRelationDocumentGED_Categorie.c_nomTable + "." +
                    CDocumentGED.c_nomTable + "." +
                    CRelationElementToDocument.c_nomTable + "." +
                    CRelationElementToDocument.c_champTypeElement + " = @2",
                    element.Id,
                    element.GetType().ToString()
                    );
            }
            else
            {
                filtreCategories = null;
            }

            m_arbreCategories.AddRootForAll = true;
            m_arbreCategories.RootLabel     = I.T("All categories|20246");
            CTreeViewNodeKeeper keeper = new CTreeViewNodeKeeper(m_arbreCategories);

            m_arbreCategories.Init(
                typeof(CCategorieGED),
                "CategoriesFilles",
                CCategorieGED.c_champIdParent,
                "Libelle",
                filtreCategories,
                null);

            m_arbreCategories.CheckBoxes = false;
            keeper.Apply(m_arbreCategories);
        }
示例#11
0
        public void SetParametreAffichage(CParametreEditModulesParametrage parametre)
        {
            m_splitContainer.SplitterDistance = parametre.SplitterDistance;
            Orientation = parametre.Orientation;
            switch (Orientation)
            {
            case Orientation.Horizontal:
                m_btnOrientationH.Checked = true;
                break;

            case Orientation.Vertical:
                m_btnOrientationV.Checked = true;
                break;

            default:
                break;
            }
            CTreeViewNodeKeeper keeper = new CTreeViewNodeKeeper(m_ArbreModules);

            keeper.SelectionPath = parametre.SelectionPath;
            keeper.Apply(m_ArbreModules);
        }