Esempio n. 1
0
 private bool AssertTypeObject(AddFilesType type, IGameFileDataSource iwad, ISourcePortDataSource sourcePort)
 {
     if (type != AddFilesType.SourcePort)
     {
         return((type == AddFilesType.IWAD) && (iwad > null));
     }
     return(sourcePort > null);
 }
Esempio n. 2
0
 private List <IGameFileDataSource> GetAdditionalFiles(AddFilesType type, IGameFileDataSource gameIwad, ISourcePortDataSource sourcePort)
 {
     if (type != AddFilesType.SourcePort)
     {
         if (type == AddFilesType.IWAD)
         {
             return(DoomLauncher.Util.GetAdditionalFiles(this.DataSourceAdapter, gameIwad));
         }
         return(null);
     }
     return(DoomLauncher.Util.GetAdditionalFiles(this.DataSourceAdapter, sourcePort));
 }
Esempio n. 3
0
 private List <IGameFileDataSource> FileListMemberForType(AddFilesType type)
 {
     if (type != AddFilesType.SourcePort)
     {
         if (type == AddFilesType.IWAD)
         {
             return(this.m_iwadAdditionalFiles);
         }
         return(null);
     }
     return(this.m_sourcePortAdditionalFiles);
 }
        private List <IGameFile> GetAdditionalFiles(AddFilesType type, IGameFile gameIwad, ISourcePort sourcePort)
        {
            switch (type)
            {
            case AddFilesType.IWAD:
                if (gameIwad != null)
                {
                    return(Util.GetAdditionalFiles(m_adapter, gameIwad));
                }
                break;

            case AddFilesType.SourcePort:
                if (sourcePort != null)
                {
                    return(Util.GetAdditionalFiles(m_adapter, sourcePort));
                }
                break;
            }
            return(new List <IGameFile>());
        }
Esempio n. 5
0
        private void AddExtraAdditionalFiles(AddFilesType type)
        {
            ISourcePortDataSource selectedItem = this.cmbSourcePorts.SelectedItem as ISourcePortDataSource;
            IGameFileDataSource   selectedIWad = this.SelectedIWad;

            if (((selectedIWad != null) && this.ShouldAddExtraAdditionalFiles()) && this.AssertTypeObject(type, selectedIWad, selectedItem))
            {
                List <IGameFileDataSource> source          = this.ctrlFiles.GetFiles().Cast <IGameFileDataSource>().ToList <IGameFileDataSource>();
                List <IGameFileDataSource> second          = source.ToList <IGameFileDataSource>();
                List <IGameFileDataSource> newTypeFiles    = this.GetAdditionalFiles(type, selectedIWad, selectedItem);
                List <IGameFileDataSource> memberTypeFiles = this.FileListMemberForType(type);
                memberTypeFiles.RemoveAll(x => newTypeFiles.Contains(x));
                source.RemoveAll(x => memberTypeFiles.Contains(x));
                memberTypeFiles.Clear();
                memberTypeFiles.AddRange(newTypeFiles);
                source.AddRange(memberTypeFiles);
                this.ctrlFiles.SetDataSource(source.Distinct <IGameFileDataSource>().ToList <IGameFileDataSource>());
                this.ResetSpecificFilesSelections(source.Except <IGameFileDataSource>(second).ToArray <IGameFileDataSource>());
            }
        }
Esempio n. 6
0
        private List <IGameFile> GetAdditionalFiles(AddFilesType type, IGameFile gameIwad, ISourcePortData sourcePort)
        {
            switch (type)
            {
            case AddFilesType.IWAD:
                if (gameIwad != null)
                {
                    var ret = Util.GetAdditionalFiles(m_adapter, (GameFile)gameIwad).Except(Util.GetSourcePortAdditionalFiles(m_adapter, (GameFile)gameIwad)).ToList();
                    ret.Remove(gameIwad);
                    return(ret);
                }
                break;

            case AddFilesType.SourcePort:
                if (sourcePort != null)
                {
                    return(Util.GetAdditionalFiles(m_adapter, sourcePort));
                }
                break;
            }
            return(new List <IGameFile>());
        }