コード例 #1
0
ファイル: MainPage.xaml.cs プロジェクト: vatsal22/Notebook
        protected override async void OnNavigatedTo(NavigationEventArgs e)
        {
            printHelper.register();

            save_ink("blank.gif"); // create a blank file to create new pages later


            Windows.Storage.StorageFolder storageFolder = Windows.Storage.ApplicationData.Current.LocalFolder;

            IReadOnlyList <StorageFile> files =
                Task.Run(async() =>
            {
                return(await storageFolder.GetFilesAsync());
            }).GetAwaiter().GetResult();


            List <Task> tasks = new List <Task>();

            int numPages = 0;

            foreach (var file in files)
            {
                // TODO should check that it starts with number and no missing pages (e.g. 0,1,3...)



                if (file.Name.EndsWith(page_file_name))
                {
                    int     pageID = int.Parse(file.Name.Split('_')[0]);
                    InkPage ip     = new InkPage(pageID);

                    // AsyncHelpers.RunSync(() => ip.loadAsync());
                    await ip.loadAsync();

                    pageBuffers.Add(pageID, ip);
                    numPages++;
                }
            }



            if (pageBuffers.Count > 0)
            {
                // TODO not needed?
                last_page = numPages - 1;


                // load 0_Page.gif
                // load_ink(cur_page.ToString() + page_file_name);
            } // else last_page=0, which is the current blank page
            else
            {
                pageBuffers.Add(0, new InkPage(0));
            }
            replaceCanvas(pageBuffers[0]);
        }