Esempio n. 1
0
 public static Tabstrip GetInboxTabs(string currentFormId, int inboxId)
 {
     return(new Tabstrip
     {
         CurrentTab = currentFormId,
         Tabs = new List <Tab>
         {
             InboxOverview.Button(inboxId, "Overview").AsTab(),
             LinkedFolders.Button(inboxId, "Linked folders").AsTab(),
             Users.Button(inboxId, "Users").AsTab()
         }
     });
 }
Esempio n. 2
0
        public void GetFolderStructure(Profile input)
        {
            //numberOfCalls++;
            LinkedFolders.Clear();
            StorableFolders.Clear();
            UnlinkedFolders.Clear();
            DuplicateFolders.Clear();

            List <string>        dGFolders = new List <string>();
            List <DirectoryInfo> gFolders  = new List <DirectoryInfo>();

            gFolders.AddRange(input.GameFolder.GetDirectories());
            List <DirectoryInfo> sFolders = new List <DirectoryInfo>();

            sFolders.AddRange(input.StorageFolder.GetDirectories());

            List <DirectoryInfo> _gFolders = new List <DirectoryInfo>();
            List <DirectoryInfo> _uFolders = new List <DirectoryInfo>();
            List <DirectoryInfo> _lFolders = new List <DirectoryInfo>();

            foreach (DirectoryInfo g in gFolders)
            {
                try
                {
                    bool isJunction = JunctionPoint.Exists(@g.FullName);

                    if (isJunction)
                    {
                        this.LinkedFolders.Add(new DirectoryInfo(JunctionPoint.GetTarget(@g.FullName)));
                    }
                    else
                    {
                        this.StorableFolders.Add(new DirectoryInfo(g.FullName));
                        _gFolders.Add(g);
                        dGFolders.Add(g.Name);
                    }
                }
                catch (IOException ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
            List <string>        dSFolders = new List <string>();
            List <DirectoryInfo> tmpList1  = sFolders.Where(n => LinkedFolders.Select(m => m.FullName).Contains(n.FullName) && !JunctionPoint.Exists(@n.FullName)).ToList();

            this.LinkedFolders.Clear();
            foreach (DirectoryInfo d in tmpList1)
            {
                this.LinkedFolders.Add(d);
                _lFolders.Add(d);
                dSFolders.Add(d.Name);
            }

            List <DirectoryInfo> tmpList = sFolders.Where(n => !LinkedFolders.Select(m => m.FullName).Contains(n.FullName) && !JunctionPoint.Exists(@n.FullName)).ToList();

            foreach (DirectoryInfo d in tmpList)
            {
                this.UnlinkedFolders.Add(d);
                _uFolders.Add(d);
                dSFolders.Add(d.Name);
            }
            DuplicateFolders = dGFolders.Intersect(dSFolders).ToList();
            _gFolders.RemoveAll(n => DuplicateFolders.Contains(n.Name));
            _uFolders.RemoveAll(n => DuplicateFolders.Contains(n.Name));
            _lFolders.RemoveAll(n => DuplicateFolders.Contains(n.Name));
            this.StorableFolders = _gFolders;
            this.UnlinkedFolders = _uFolders;
            this.LinkedFolders   = _lFolders;
        }