Example #1
0
        public void Destroy()
        {
            LOGIN.Destroy();
            LOGIN = null;
            SC.Destroy();

            foreach (SubMenus item in OpenButtons)
            {
                item.Destroy();
            }
            OpenButtons.Clear();

            for (int i = 0; i < Labels.Count; i++)
            {
                Labels[i].Delete(); Marshal.ReleaseComObject(Labels[i]); Labels[i] = null;
            }
            Labels.Clear();

            foreach (Timers item in TIMERS)
            {
                item.Destroy();
            }
            TIMERS.Clear();

            foreach (Watchers item in WATCHERS)
            {
                item.Dispose();
            }
            WATCHERS.Clear();

            dlgUsersOnline.Visible = false;
            dlgUsersOnline.Destroy();
            dlgUsersOnline.Dispose();
            dlgUsersOnline = null;

            InternetChecking.Visible = false;
            InternetChecking.Dispose();
            InternetChecking = null;

            m_ctrlOpenMaps.Delete(); Marshal.ReleaseComObject(m_ctrlOpenMaps); m_ctrlOpenMaps = null;
            Marshal.ReleaseComObject(m_cmdOpenMaps); m_cmdOpenMaps = null;

            m_ctrlPublishMap.Delete(); Marshal.ReleaseComObject(m_ctrlPublishMap); m_ctrlPublishMap = null;
            Marshal.ReleaseComObject(m_cmdPublishMap); m_cmdPublishMap = null;

            m_ctrlShareMap.Delete(); Marshal.ReleaseComObject(m_ctrlShareMap); m_ctrlShareMap = null;
            Marshal.ReleaseComObject(m_cmdShareMap); m_cmdShareMap = null;
            m_ctrlReceiveMap.Delete(); Marshal.ReleaseComObject(m_ctrlReceiveMap); m_ctrlReceiveMap = null;
            Marshal.ReleaseComObject(m_cmdReceiveMap); m_cmdReceiveMap = null;
            m_ctrlShareMaps.Delete(); Marshal.ReleaseComObject(m_ctrlShareMaps); m_ctrlShareMaps = null;
            Marshal.ReleaseComObject(m_cmdShareMaps); m_cmdShareMaps = null;

            m_rgMaps.Delete();
            m_myTab = null;
        }
Example #2
0
        public void m_cmdOpenMaps_UpdateState(ref bool pEnabled, ref bool pChecked)
        {
            pEnabled = true;
            pChecked = false;

            if (!m_UpdateOpenMap)
            {
                return;
            }

            m_UpdateOpenMap = false;
            int a = 1;

            List <string> aProjects   = new List <string>();
            List <string> aSingleMaps = new List <string>();

            if (OpenButtons.Count != 0)
            {
                foreach (SubMenus item in OpenButtons)
                {
                    item.Destroy();
                }

                for (int i = 0; i < Labels.Count; i++)
                {
                    Labels[i].Delete(); Marshal.ReleaseComObject(Labels[i]); Labels[i] = null;
                }
            }
            OpenButtons.Clear();
            Labels.Clear();

            using (ProjectsDB _db = new ProjectsDB())
            {
                DataTable _dt = _db.ExecuteQuery("select * from PROJECTS order by PROJECTNAME");
                foreach (DataRow _row in _dt.Rows)
                {
                    aProjects.Add(_row["PROJECTNAME"].ToString());
                }
            }

            using (PlacesDB _db = new PlacesDB())
            {
                DataTable _dt = _db.ExecuteQuery("select * from PLACES order by PLACENAME");
                foreach (DataRow _row in _dt.Rows)
                {
                    aSingleMaps.Add(_row["PLACENAME"].ToString());
                }
            }

            using (MapsDB _db = new MapsDB())
            {
                bool    _label  = true;
                Control m_label = null;

                // Get maps by projects
                foreach (string _project in aProjects)
                {
                    DataTable _dt = _db.ExecuteQuery("select * from MAPS where PROJECTNAME=`" + _project + "` order by MAPNAME");

                    foreach (DataRow _row in _dt.Rows)
                    {
                        if (_label)
                        {
                            m_label = m_ctrlOpenMaps.Controls.AddLabel(_project);
                            _label  = false;
                            Labels.Add(m_label);
                        }

                        m_menus = new SubMenus();
                        OpenButtons.Add(m_menus);
                        m_menus.AddMapToOpenMenu(_row["MAPGUID"].ToString(), _row["MAPNAME"].ToString(), "map" + a++);
                    }
                    _label = true;
                }

                //_label = true;
                // Get single maps
                foreach (string _place in aSingleMaps)
                {
                    DataTable _dt = _db.ExecuteQuery("select * from MAPS where PROJECTNAME = `" + "" + "` and PLACENAME=`" + _place + "` order by MAPNAME");
                    //DataTable __dt = _db.ExecuteQuery("select * from MAPS");
                    foreach (DataRow _row in _dt.Rows)
                    {
                        if (_label)
                        {
                            m_label = m_ctrlOpenMaps.Controls.AddLabel(_place + ": " + SUtils.SingleMaps);
                            _label  = false;
                            Labels.Add(m_label);
                        }

                        m_menus = new SubMenus();
                        OpenButtons.Add(m_menus);
                        m_menus.AddMapToOpenMenu(_row["MAPGUID"].ToString(), _row["MAPNAME"].ToString(), "map" + a++);
                    }
                    _label = true;
                }

                aProjects.Clear();
                aSingleMaps.Clear();
            }
        }