コード例 #1
0
        private ObservableCollection <Installer> GetAllInstaller()
        {
            try
            {
                DirectoryInfo di = new DirectoryInfo(Installerpath);
                Installer     tmpInstaller;
                foreach (var fi in di.GetFiles())
                {
                    tmpInstaller               = new Installer();
                    tmpInstaller.Filename      = fi.Name;
                    tmpInstaller.FileExtension = fi.Extension;
                    tmpInstaller.FullFileName  = fi.FullName;

                    AvailableFiles.Add(tmpInstaller);
                }

                btn_AddInstallerIsVisible    = CheckList(AvailableFiles);
                btn_AddAllInstallerIsVisible = CheckList(AvailableFiles);
            }
            catch (IOException ex)
            {
                LogHelper.WriteToLog(ex.StackTrace, LogState.Error);
            }
            LogHelper.WriteToLog("Available Installer loaded", LogState.Info);
            return(AvailableFiles);
        }
コード例 #2
0
 /// <summary>
 /// Moves all items from selected file list to available file list
 /// </summary>
 internal void MoveAllSelectedToAvailable()
 {
     foreach (IndexerFile file in SelectedFiles)
     {
         AvailableFiles.Add(file);
     }
     SelectedFiles.Clear();
 }
コード例 #3
0
 /// <summary>
 /// Moves all items from available file list to selected file list
 /// </summary>
 internal void MoveAllAvailableToSelected()
 {
     foreach (IndexerFile file in AvailableFiles)
     {
         SelectedFiles.Add(file);
     }
     AvailableFiles.Clear();
 }
コード例 #4
0
 /// <summary>
 /// Moves selected items from selected file list to available file list
 /// </summary>
 /// <param name="selectedItems">Collection of selected items</param>
 internal void MoveSelectedSelectedToAvailable(IList selectedItems)
 {
     foreach (IndexerFile file in selectedItems.Cast <IndexerFile>().ToList())
     {
         AvailableFiles.Add(file);
         SelectedFiles.Remove(file);
     }
 }
コード例 #5
0
 public IFile Build()
 {
     return(AvailableFiles.Files()
            .SingleOrDefault(x =>
                             x.FileType == FileType &&
                             x.IsEncrypted == IsEncrypted &&
                             x.IsProtected == IsProtected));
 }
コード例 #6
0
        /// <summary>
        /// Loads Project from path
        /// </summary>
        /// <param name="projectPath">Path to project</param>
        public void LoadFiles(string projectPath)
        {
            SelectedFiles.Clear();
            AvailableFiles.Clear();

            BackgroundWorker backgroundWorker = new BackgroundWorker();

            backgroundWorker.DoWork             += LoadFilesBackgroundWorker_DoWork;
            backgroundWorker.RunWorkerCompleted += LoadFilesBackgroundWorker_WorkCompleted;
            backgroundWorker.RunWorkerAsync(projectPath);
        }
コード例 #7
0
 public void btn_Install()
 {
     btn_InstallIsVisible = "Hidden";
     if (PickedInstallerList.Count > 0)
     {
         InstallRunner.InstallPrograms(PickedInstallerList);
     }
     AvailableFiles.Clear();
     GetAllInstaller();
     PickedInstallerList.Clear();
 }
コード例 #8
0
        public void UpdateSelectedFiles(IList <CerberusFile> selectedFiles)
        {
            if (!SelectedFiles.ContainsKey(QuestionScreenID))
            {
                SelectedFiles.Add(new KeyValuePair <int, IList <CerberusFile> >(QuestionScreenID, selectedFiles));
            }
            else
            {
                SelectedFiles[QuestionScreenID] = selectedFiles;
            }

            AvailableFiles = AvailableFiles.Where(f => !selectedFiles.Any(sf => sf.Path == f.Path)).ToList();
        }
コード例 #9
0
 public void btn_RemoveInstaller()
 {
     try
     {
         AvailableFiles.Add(SelectedPickedInstaller);
         LogHelper.WriteToLog($"{SelectedPickedInstaller.Filename} is removed from installation list", LogState.Info);
         PickedInstallerList.Remove(SelectedPickedInstaller);
         btn_InstallIsVisible            = CheckList(PickedInstallerList);
         btn_AddInstallerIsVisible       = CheckList(AvailableFiles);
         btn_AddAllInstallerIsVisible    = CheckList(AvailableFiles);
         btn_RemoveInstallerIsVisible    = CheckList(PickedInstallerList);
         btn_RemoveAllInstallerIsVisible = CheckList(PickedInstallerList);
     }
     catch (Exception e)
     {
         LogHelper.WriteToLog(e.Message + "\r\n" + e.StackTrace, LogState.Error);
     }
 }
コード例 #10
0
        public bool ApplyButtonLogic()
        {
            if (QuestionScreenID == 2 && !IsUserUsingEditorScripts)
            {
                IsUserLoadingAssetsFromEditorScripts = false;
                UpdateSelectedFiles(AvailableFiles.Where(f => f.Selected).ToList());
                QuestionScreenID += 2;
                return(false);
            }

            if (QuestionScreenID == 8)
            {
                OrganizeProjectStructure();
                ResetVariablesAndReInitialize();
                return(true);
            }

            UpdateSelectedFiles(AvailableFiles.Where(f => f.Selected).ToList());
            QuestionScreenID++;
            return(false);
        }
コード例 #11
0
 public void btn_AddAllInstaller()
 {
     try
     {
         foreach (Installer installer in AvailableFiles)
         {
             PickedInstallerList.Add(installer);
             LogHelper.WriteToLog($"{installer.Filename} added to the List for installation", LogState.Info);
         }
         AvailableFiles.Clear();
         btn_InstallIsVisible            = CheckList(PickedInstallerList);
         btn_AddInstallerIsVisible       = CheckList(AvailableFiles);
         btn_AddAllInstallerIsVisible    = CheckList(AvailableFiles);
         btn_RemoveInstallerIsVisible    = CheckList(PickedInstallerList);
         btn_RemoveAllInstallerIsVisible = CheckList(PickedInstallerList);
         NotifyOfPropertyChange(() => Canbtn_RemoveAllInstaller);
     }
     catch (Exception e)
     {
         LogHelper.WriteToLog(e.Message + "\r\n" + e.StackTrace, LogState.Error);
     }
 }
コード例 #12
0
        /// <summary>
        /// Load file completed
        /// </summary>
        private void LoadFilesBackgroundWorker_WorkCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            IsBusy = false;

            _projectStat.FileStats.Select(x => x.IndexerFile).OrderBy(x => x.Name).ToList().ForEach(x => AvailableFiles.Add(x));

            UpdateCanStartIndexing();
        }
コード例 #13
0
 public override void Clear()
 {
     Files.Clear();
     AvailableFiles.Clear();
     DirectoryPath = string.Empty;
 }
コード例 #14
0
        public void AddFilesFromGivenStepToAvailableFiles(int step)
        {
            var filesFromStep = Files.Select(f => f.Path).Where(f => SelectedFiles[step].Select(sf => sf.Path).Contains(f));

            AvailableFiles = Files.Where(f => AvailableFiles.Select(af => af.Path).Contains(f.Path) || filesFromStep.Contains(f.Path)).ToList();
        }