Exemplo n.º 1
0
        public void Group_future()
        {
            // setup
            var folder = new Folder();
            var task1  = new Task {
                Title = "task1", Due = DateTime.Now.AddDays(10), Folder = folder
            };
            var task2 = new Task {
                Title = "task2", Due = DateTime.Now.AddDays(11), Folder = folder
            };
            var task3 = new Task {
                Title = "task3", Due = DateTime.Now.AddDays(12), Folder = folder
            };

            // act
            this.vm = new FolderItemViewModel(this.workbook, folder);

            // verify
            Assert.AreEqual(3, this.vm.SmartCollection.Count);
            Assert.AreEqual(1, this.vm.SmartCollection.Items.Count);
            Assert.AreEqual(StringResources.ConverterDate_Future, this.vm.SmartCollection.Items[0].Title);
            Assert.AreEqual(3, this.vm.SmartCollection.Items[0].Count);
            Assert.AreEqual(task1.Title, this.vm.SmartCollection.Items[0][0].Title);
            Assert.AreEqual(task2.Title, this.vm.SmartCollection.Items[0][1].Title);
            Assert.AreEqual(task3.Title, this.vm.SmartCollection.Items[0][2].Title);
        }
Exemplo n.º 2
0
        public void Group_future_different_year_alpha_order()
        {
            // setup
            var folder = new Folder();
            var task1  = new Task {
                Title = "task1", Due = DateTime.Now.AddDays(10), Folder = folder
            };
            var task2 = new Task {
                Title = "task2", Due = DateTime.Now.AddDays(11).AddYears(1), Folder = folder
            };
            var task3 = new Task {
                Title = "task3", Due = DateTime.Now.AddDays(12), Folder = folder
            };

            // act
            this.vm = new FolderItemViewModel(this.workbook, folder);

            // verify
            Assert.AreEqual(3, this.vm.SmartCollection.Count);
            Assert.AreEqual(1, this.vm.SmartCollection.Items.Count);
            Assert.AreEqual(StringResources.ConverterDate_Future, this.vm.SmartCollection.Items[0].Title);
            Assert.AreEqual(3, this.vm.SmartCollection.Items[0].Count);

            // task sort 3 setting is name, so collection is sorted back by name
            Assert.AreEqual(task1.Title, this.vm.SmartCollection.Items[0][0].Title);
            Assert.AreEqual(task2.Title, this.vm.SmartCollection.Items[0][1].Title);
            Assert.AreEqual(task3.Title, this.vm.SmartCollection.Items[0][2].Title);
        }
Exemplo n.º 3
0
        public void One_task_recurring_subtasks()
        {
            // setup
            var folder = this.workbook.AddFolder("folder");
            var task   = new Task {
                Title = "task1", Folder = folder
            };
            var subtask = new Task {
                Title = "subtask", Folder = folder
            };

            task.FrequencyType = FrequencyType.Daily;
            task.AddChild(subtask);
            this.vm = new FolderItemViewModel(this.workbook, folder);

            // act
            task.IsCompleted = true;

            // verify
            Assert.AreEqual(1, this.vm.SmartCollection.Items.Count);
            Assert.AreEqual(2, this.vm.SmartCollection.Items[0].Count);
            Assert.AreEqual("task1", this.vm.SmartCollection.Items[0][0].Title);
            Assert.IsFalse(this.vm.SmartCollection.Items[0][0].IsPeriodic);
            Assert.AreEqual("task1", this.vm.SmartCollection.Items[0][1].Title);
            Assert.IsTrue(this.vm.SmartCollection.Items[0][1].IsPeriodic);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Public construction method to create a <see cref="IFolderItemViewModel"/>
        /// object that represents a logical drive (eg 'C:\')
        /// </summary>
        /// <param name="curdir"></param>
        /// <returns></returns>
        public static IFolderItemViewModel CreateLogicalDrive(string curdir)
        {
            var model = PathFactory.Create(curdir, FSItemType.LogicalDrive);

            var item = new FolderItemViewModel(model, model.Name);

            item.SetDisplayName(item.ItemDisplayString);

            return(item);
        }
Exemplo n.º 5
0
        public void No_tasks()
        {
            // setup
            var folder = new Folder();

            // act
            this.vm = new FolderItemViewModel(this.workbook, folder);

            // verify
            Assert.AreEqual(0, this.vm.SmartCollection.Count);
        }
Exemplo n.º 6
0
        private static void OnButtonClick(object sender, RoutedEventArgs e)
        {
            if (mainViewModel == null)
            {
                mainViewModel = Ioc.Resolve <IMainPageViewModel>();
                mainViewModel.PropertyChanged += OnMainViewModelPropertyChanged;

                selectedFolderItemViewModel = mainViewModel.SelectedFolderItem;
            }

            UpdateMenu();
        }
Exemplo n.º 7
0
        public void Setup(DateTime?startDate)
        {
            var task = new Core.Shared.Model.Impl.Task {
                Folder = this.folder, Due = DateTime.Now, Start = startDate
            };

            this.folderItemViewModel = new FolderItemViewModel(this.workbook, this.folder);

            this.syncManager = new TestSynchronizationManager();
            this.scheduler   = new AppJobScheduler(this.workbook, this.syncManager, () => new[] { this.folderItemViewModel });

            this.scheduler.OnUpdateTasksTimerTick();
        }
Exemplo n.º 8
0
        public void Open(string directory)
        {
            if (string.IsNullOrEmpty(directory))
            {
                return;
            }

            if (!System.IO.Directory.Exists(directory))
            {
                return;
            }

            Root = new FolderItemViewModel(mEditorProviderSelector, directory);
            UpdateTree();
        }
Exemplo n.º 9
0
        private static void OnMainViewModelPropertyChanged(object sender, PropertyChangedEventArgs e)
        {
            if (e.PropertyName == "SelectedMenuItem")
            {
                if (selectedFolderItemViewModel != null)
                {
                    selectedFolderItemViewModel.PropertyChanged -= FolderItemViewModelOnPropertyChanged;
                }

                selectedFolderItemViewModel = mainViewModel.SelectedFolderItem;

                UpdateMenu();

                selectedFolderItemViewModel.PropertyChanged += FolderItemViewModelOnPropertyChanged;
            }
        }
Exemplo n.º 10
0
        public void One_task()
        {
            // setup
            var folder = new Folder();
            var task   = new Task {
                Title = "task1", Folder = folder
            };

            // act
            this.vm = new FolderItemViewModel(this.workbook, folder);

            // verify
            Assert.AreEqual(1, this.vm.SmartCollection.Count);
            Assert.AreEqual(1, this.vm.SmartCollection.Items.Count);
            Assert.AreEqual(1, this.vm.SmartCollection.Items[0].Count);
            Assert.AreEqual(task.Title, this.vm.SmartCollection.Items[0][0].Title);
        }
Exemplo n.º 11
0
        public async Task RequestPrintAsync(FolderItemViewModel folderItemViewModel)
        {
            this.viewmodel = folderItemViewModel;

            try
            {
                this.printDocument       = new PrintDocument();
                this.printDocumentSource = this.printDocument.DocumentSource;

                this.printDocument.Paginate       += this.OnPaginate;
                this.printDocument.GetPreviewPage += this.OnGetPreviewPage;
                this.printDocument.AddPages       += this.OnAddPages;

                await PrintManager.ShowPrintUIAsync();
            }
            catch (Exception ex)
            {
                await this.messageBoxService.ShowAsync(StringResources.Message_Warning, ex.Message);
            }
        }
Exemplo n.º 12
0
        public static async Task PrepareExport(DataRequest request, FolderItemViewModel folderItem)
        {
            DataRequestDeferral deferral = request.GetDeferral();

            var folder = await Package.Current.InstalledLocation.GetFolderAsync("Tools");

            folder = await folder.GetFolderAsync("Export");

            var file = await folder.GetFileAsync("HtmlTemplate.html");

            var template = await FileIO.ReadTextAsync(file);

            template = Template(template, "folderName", () => folderItem.Name);
            template = RepeatTemplate(template, "tasks", folderItem.SmartCollection.Items);

            request.Data.Properties.Title = string.Format("2Day - {0}", folderItem.Name);
            request.Data.SetHtmlFormat(HtmlFormatHelper.CreateHtmlFormat(template));

            deferral.Complete();
        }
Exemplo n.º 13
0
        public void Group_future_different_year_due_order()
        {
            // setup
            var folder = new Folder();
            var task1  = new Task {
                Title = "task1", Due = DateTime.Now.AddDays(10), Folder = folder
            };
            var task2 = new Task {
                Title = "task2", Due = DateTime.Now.AddDays(11).AddYears(1), Folder = folder
            };
            var task3 = new Task {
                Title = "task3", Due = DateTime.Now.AddDays(12), Folder = folder
            };

            this.settings.SetValue(CoreSettings.UseGroupedDates, true);
            this.settings.SetValue(CoreSettings.TaskOrderingType1, TaskOrdering.DueDate);
            this.settings.SetValue(CoreSettings.TaskOrderingAscending1, true);
            this.settings.SetValue(CoreSettings.TaskOrderingType2, TaskOrdering.Priority);
            this.settings.SetValue(CoreSettings.TaskOrderingAscending2, false);
            this.settings.SetValue(CoreSettings.TaskOrderingType3, TaskOrdering.Alphabetical);
            this.settings.SetValue(CoreSettings.TaskOrderingAscending3, true);

            // act
            this.vm = new FolderItemViewModel(this.workbook, folder);

            // verify
            Assert.AreEqual(3, this.vm.SmartCollection.Count);
            Assert.AreEqual(1, this.vm.SmartCollection.Items.Count);
            Assert.AreEqual(StringResources.ConverterDate_Future, this.vm.SmartCollection.Items[0].Title);
            Assert.AreEqual(3, this.vm.SmartCollection.Items[0].Count);

            // task sort 3 setting is name, so collection is sorted back by name
            Assert.AreEqual(task1.Title, this.vm.SmartCollection.Items[0][0].Title);
            Assert.AreEqual(task3.Title, this.vm.SmartCollection.Items[0][1].Title);
            Assert.AreEqual(task2.Title, this.vm.SmartCollection.Items[0][2].Title);
        }
 public FolderNavigatedMessage(FolderItemViewModel item)
 {
     Item = item;
 }
Exemplo n.º 15
0
 public RemoveItemMessage(FolderItemViewModel item)
 {
     Item = item;
 }