using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using BetterPatchFileCreator.Code; using Differ; namespace BetterPatchFileCreator.XAML.PageFuncs { /// /// Interaction logic for IndexingClientPageFunc.xaml /// public partial class IndexingClientPageFunc : ObjectPageFunc { private PatchConfig config; private TaskScheduler uiScheduler; public IndexingClientPageFunc(PatchConfig config) { uiScheduler = TaskScheduler.FromCurrentSynchronizationContext(); this.config = config; InitializeComponent(); } public void Start() { Task.Factory.StartNew(IndexClient); } private void IndexClient() { FileSystem client = new FileSystem(); client.Parse(config.ClientPath); client.SaveToXmlFile(config.GetXmlFilePath()); Finished(); } private void Finished() { Task t = new Task(() => ReturnValue(config)); t.Start(uiScheduler); } } }