Example #1
0
 ///<summary>
 /// Feladata MezoControlInfoCollection eloallitasa, ez MezoControlInfo-kbol all.
 /// Egy MezoControlInfo egy input Control szukseges informacioit tartalmazza.
 /// Alkalmazasi programokbol altalaban ezt hivjuk.
 /// </summary>
 /// <param name="hivo">
 /// a UserControl, amely szamara a collection-t eloallitjuk
 /// </param>
 /// <param name="cont">
 /// Azon Control(-ok) tombje, mely(ek)ben az input Control-(oka)t felvettuk. Altalaban GroupBox-ok tombje
 /// </param>
 /// <param name="aktivpage">
 /// Az a TabPage, melyben a UserControl fut (vagy null, ha nem )
 /// </param>
 /// <param name="aktivmenuitem">
 /// Az ToolStripMenuItem, mely (vagy melynek valamely dropiteme) a UserControl-t aktivizalja (vagy null)
 /// </param>
 /// <param name="aktivdropdownitem">
 /// Az aktivizalo dropitem (vagy null)
 /// </param>
 /// <returns>
 /// A letrehozott collection
 /// </returns>
 public MezoControlCollection ControlTagokTolt(Base hivo, Control[] cont, TabPage aktivpage, ToolStripMenuItem aktivmenuitem, ToolStripMenuItem aktivdropdownitem)
 {
     Tablainfo tabinfo;
     ArrayList tabinfoar = new ArrayList();
     MezoControlCollection coll = new MezoControlCollection();
     char[] vesszo = new char[] { Convert.ToChar(",") };
     foreach (Control egycont in cont)
     {
         bool vesszopoz = egycont.Tag.ToString().Contains(",");
         if (vesszopoz)
         {
             string[] split = egycont.Tag.ToString().Split(vesszo);
             tabinfo = _tablainfok.GetBySzintPluszTablanev(split[0], split[1]);
         }
         else
             tabinfo = _tablainfok.GetByAzontip(egycont.Tag.ToString());
         egycont.Tag = tabinfo;
         if (tabinfoar.IndexOf(tabinfo) == -1)
             tabinfoar.Add(tabinfo);
         MezoControlInfo egyinfo = ControlTagokTolt(hivo, egycont, ref tabinfo, aktivpage, aktivmenuitem, aktivdropdownitem);
         egyinfo.ParentControl = egycont;
         coll.Add(ControlTagokTolt(hivo, egycont, ref tabinfo, aktivpage, aktivmenuitem, aktivdropdownitem));
     }
     foreach (Tablainfo egytabinfo in tabinfoar)
     {
         egytabinfo.AktualControlInfo = coll[egytabinfo];
     }
     return coll;
 }
Example #2
0
        /// <summary>
        /// inicializalas
        /// </summary>
        /// <param name="param">
        /// objectumtomb
        /// ezzel hivja meg az Ujterkepez metodust (leiras ott),
        /// majd tovabbi inicializalasokat vegez
        /// </param>
        public virtual void AlapinfoInit(object[] param)
        {
            AktivPage = Vezerles.AktivPage;
            AktivMenuItem = Vezerles.AktivMenuItem;
            AktivDropDownItem = Vezerles.AktivDropDownItem;
            Ujterkepez(param);
            ArrayList ar = new ArrayList();
            ArrayList tabinfoar = new ArrayList();
            foreach(Controltipus egycont in ControltipusCollection)
            {
                if (egycont.GridGroupBox != null)
                {
                    ar.Add(egycont.GridGroupBox);
                    if (egycont.InputGroupBox == null)
                        tabinfoar.Add(egycont.GridGroupBox);
                }
                if (egycont.InputGroupBox != null)
                {
                    ar.Add(egycont.InputGroupBox);
                    tabinfoar.Add(egycont.InputGroupBox);
                }
            }
            GroupBoxok = (GroupBox[])ar.ToArray(typeof(GroupBox));
            AktContInfo = FakUserInterface.ControlTagokTolt(this, GroupBoxok, AktivPage, AktivMenuItem, AktivDropDownItem);
            Aktualtablainfo = new Tablainfo[ControltipusCollection.Count];
            MezoControlInfok = new MezoControlInfo[ControltipusCollection.Count];
            for (int i = 0; i < tabinfoar.Count; i++)
            {
                GroupBox egygr = (GroupBox)tabinfoar[i];
                MezoControlInfo egycontinfo = AktContInfo[egygr.Name];
                int j = AktContInfo.IndexOf(egycontinfo);
                Tablainfo tabinfo = AktContInfo[j].Tabinfo;
                tabinfo.Hivo = Hivo;
                Base.HozferJogosultsag hozferjog = tabinfo.Azonositok.Jogszintek[(int)KezeloiSzint];
                Controltipus egytip = ControltipusCollection[i];
                egytip.SetTablainfo(ref AktContInfo[j].Tabinfo, hozferjog);// = Controlti(Tablainfo)egygr.Tag;
                egytip.MezoControlInfo = AktContInfo[j];
                MezoControlInfok[i] = AktContInfo[j];
                Aktualtablainfo[i] = tabinfo;
                MezoControlInfok[i].UserControlInfo = UserControlInfo;
            }
            savind = new int[Aktualtablainfo.Length];
            SetEgyediValid();
            UserControlInfo = FakUserInterface.Attach(this, Vezerles, ref Aktualtablainfo, AktivPage, AktivMenuItem, AktivDropDownItem);

        }