Example #1
0
 /* Retrieves tasklists that are not deleted or hidden*/
 private void RetrieveVisibleLists()
 {
     foreach (Model.TaskList origTaskList in TaskLists.Where(l => !l.Deleted))
     {
         Model.TaskList visibleTaskList = Model.TaskList.Clone(origTaskList);
         visibleTaskList.Tasks = new ObservableCollection <Model.Task>(origTaskList.Tasks.Where(t => IsNotHiddenOrDeleted(t)));
         VisibleTaskLists.Add(visibleTaskList);
     }
 }
Example #2
0
        private void addList_Click(object sender, RoutedEventArgs e)
        {
            Popup myPopup = new Popup();

            myPopup.HorizontalAlignment   = HorizontalAlignment.Center;
            myPopup.VerticalAlignment     = VerticalAlignment.Center;
            myPopup.IsLightDismissEnabled = true;

            Border b = new Border();

            b.BorderBrush     = new SolidColorBrush(Colors.Gray);
            b.BorderThickness = new Thickness(2);
            b.Width           = 400;

            StackPanel s = new StackPanel();

            b.Child       = s;
            s.Orientation = Orientation.Vertical;
            s.Width       = 400;
            s.Background  = new SolidColorBrush(Colors.White);

            TextBlock text = new TextBlock();

            text.Text       = "Name for the list:";
            text.Margin     = new Thickness(10, 5, 20, 0);
            text.Foreground = new SolidColorBrush(Colors.SteelBlue);
            text.FontSize   = 16;
            s.Children.Add(text);

            TextBox input = new TextBox();

            s.Children.Add(input);
            input.Margin = new Thickness(10, 5, 10, 5);

            Button save = new Button();

            save.HorizontalAlignment = HorizontalAlignment.Right;
            save.Margin  = new Thickness(10, 0, 10, 5);
            save.Content = "Save";
            save.Click  += new RoutedEventHandler(delegate(object sender1, RoutedEventArgs ev)
            {
                TaskDataSource taskDataSource = (TaskDataSource)App.Current.Resources["taskDataSource"];
                Data.Model.TaskList t         = new Data.Model.TaskList();
                t.Title   = input.Text;
                t.Updated = DateTime.Now;
                taskDataSource.TaskLists.Add(t);
                taskDataSource.RefreshLists();
                myPopup.IsOpen = false;
            });
            s.Children.Add(save);

            myPopup.Child = b;

            myPopup.IsOpen = true;
            myCanvas1.Children.Add(myPopup);
        }
Example #3
0
 private Model.TaskList GetTaskListObjectFromTaskLists(Model.TaskList list)
 {
     foreach (Model.TaskList taskList in TaskLists.Where(l => !l.Deleted))
     {
         if ((list.Id != null && list.Id == taskList.Id) || list.Title == taskList.Title)
         {
             return(taskList);
         }
     }
     return(null);
 }
Example #4
0
        async private void removeList_Click(object sender, RoutedEventArgs e)
        {
            Data.Model.TaskList selectedList = (Data.Model.TaskList)taskListsView.SelectedItem;
            if (selectedList.Tasks.Count > 0)
            {
                var messageDialog =
                    new Windows.UI.Popups.MessageDialog(
                        Messages.GetMsgValue(MessageKey.DELETE_LIST_WARN_CNTNT), Messages.GetMsgValue(MessageKey.DELETE_LIST_WARN_HDR));

                bool confirmed = false;
                messageDialog.Commands.Add(new UICommand("Yes", (command) =>
                {
                    confirmed = true;
                }));

                messageDialog.Commands.Add(new UICommand("No"));

                messageDialog.DefaultCommandIndex = 1;
                await messageDialog.ShowAsync();

                if (!confirmed)
                {
                    return;
                }
            }

            TaskDataSource taskDataSource = (TaskDataSource)App.Current.Resources["taskDataSource"];

            foreach (Data.Model.TaskList list in taskDataSource.TaskLists)
            {
                if (list.Id == selectedList.Id)
                {
                    list.Deleted = true;
                }
            }
            taskDataSource.RefreshLists();
            RefreshCounters(taskDataSource);
        }
Example #5
0
        private void renameList_Click(object sender, RoutedEventArgs e)
        {
            Data.Model.TaskList selectedList = (Data.Model.TaskList)taskListsView.SelectedItem;
            Popup myPopup = new Popup();

            myPopup.HorizontalAlignment   = HorizontalAlignment.Center;
            myPopup.VerticalAlignment     = VerticalAlignment.Center;
            myPopup.IsLightDismissEnabled = true;

            Border b = new Border();

            b.BorderBrush     = new SolidColorBrush(Colors.Gray);
            b.BorderThickness = new Thickness(2);
            b.Width           = 400;

            StackPanel s = new StackPanel();

            b.Child       = s;
            s.Orientation = Orientation.Vertical;
            s.Width       = 400;
            s.Background  = new SolidColorBrush(Colors.White);

            TextBlock text = new TextBlock();

            text.Text       = "New name for the list:";
            text.Margin     = new Thickness(10, 5, 20, 0);
            text.Foreground = new SolidColorBrush(Colors.SteelBlue);
            text.FontSize   = 16;
            s.Children.Add(text);

            TextBox input = new TextBox();

            input.Text = selectedList.Title;
            s.Children.Add(input);
            input.Margin = new Thickness(10, 5, 10, 5);

            Button save = new Button();

            save.HorizontalAlignment = HorizontalAlignment.Right;
            save.Margin  = new Thickness(10, 0, 10, 5);
            save.Content = "Save";
            save.Click  += new RoutedEventHandler(async delegate(object sender1, RoutedEventArgs ev)
            {
                TaskDataSource taskDataSource = (TaskDataSource)App.Current.Resources["taskDataSource"];
                if (!taskDataSource.ListTitleExists(input.Text))
                {
                    foreach (Data.Model.TaskList list in taskDataSource.TaskLists)
                    {
                        if (list.Id == selectedList.Id)
                        {
                            list.Title   = input.Text;
                            list.Updated = DateTime.Now;
                            foreach (Data.Model.Task task in list.Tasks)
                            {
                                task.ListTitle = input.Text;
                            }
                        }
                    }

                    taskDataSource.RefreshLists();
                    myPopup.IsOpen = false;
                }
                else
                {
                    var messageDialog =
                        new Windows.UI.Popups.MessageDialog(
                            Messages.GetMsgValue(MessageKey.LIST_TITLE_EXISTS_CNTNT), Messages.GetMsgValue(MessageKey.LIST_TITLE_EXISTS_HDR));

                    messageDialog.Commands.Add(new UICommand("OK"));

                    messageDialog.DefaultCommandIndex = 1;
                    await messageDialog.ShowAsync();
                }
            });
            s.Children.Add(save);

            myPopup.Child = b;

            myPopup.IsOpen = true;
            myCanvas1.Children.Add(myPopup);
        }
Example #6
0
        private void SaveNewTask()
        {
            string selectedList = null;
            // show select list popup
            Popup myPopup = new Popup();

            myPopup.HorizontalAlignment   = HorizontalAlignment.Center;
            myPopup.VerticalAlignment     = VerticalAlignment.Center;
            myPopup.IsLightDismissEnabled = false;

            Border b = new Border();

            b.BorderBrush     = new SolidColorBrush(Colors.Gray);
            b.BorderThickness = new Thickness(2);
            b.Width           = 400;

            StackPanel s = new StackPanel();

            b.Child       = s;
            s.Orientation = Orientation.Vertical;
            s.Width       = 400;
            s.Background  = new SolidColorBrush(Colors.White);

            TextBlock text = new TextBlock();

            text.Text       = "Select a list for the task:";
            text.Margin     = new Thickness(10, 5, 20, 0);
            text.Foreground = new SolidColorBrush(Colors.SteelBlue);
            text.FontSize   = 16;
            s.Children.Add(text);

            ComboBox       combo          = new ComboBox();
            TaskDataSource taskDataSource = (TaskDataSource)App.Current.Resources["taskDataSource"];

            combo.ItemsSource       = taskDataSource.VisibleTaskLists;
            combo.DisplayMemberPath = "Title";

            s.Children.Add(combo);
            combo.Margin        = new Thickness(10, 5, 10, 5);
            combo.SelectedIndex = combo.Items.Count - 1;

            Button ok = new Button();

            ok.HorizontalAlignment = HorizontalAlignment.Right;
            ok.Margin  = new Thickness(10, 0, 10, 5);
            ok.Content = "OK";
            ok.Click  += new RoutedEventHandler(async delegate(object sender1, RoutedEventArgs ev)
            {
                selectedList
                    = ((Data.Model.TaskList)combo.SelectedValue).Title;
                Data.Model.TaskList selectedListObject = Data.Model.TaskList.GetByTitle(selectedList, taskDataSource.VisibleTaskLists);
                foreach (Data.Model.Task selectedListTask in selectedListObject.Tasks)
                {
                    if (selectedListTask.Title == taskTitleTextBox.Text)
                    {
                        var messageDialog =
                            new Windows.UI.Popups.MessageDialog(
                                Messages.GetMsgValue(MessageKey.TASK_TITLE_EXISTS_CNTNT), Messages.GetMsgValue(MessageKey.TASK_TITLE_EXISTS_HDR));

                        messageDialog.Commands.Add(new UICommand("OK"));

                        messageDialog.DefaultCommandIndex = 0;
                        await messageDialog.ShowAsync();
                        myPopup.IsOpen = false;
                        return;
                    }
                }
                myPopup.IsOpen                   = false;
                Data.Model.Task task             = new Data.Model.Task();
                task.Updated                     = DateTime.Now;
                this.taskUpdatedDateLabel.Text   = "Updated";
                this.taskUpdatedDateTextBox.Text = task.Updated.ToString();
                task.Title     = taskTitleTextBox.Text;
                task.ListTitle = selectedList;
                task.Status    = "needsAction";
                if (taskDueDateTextBox.Text == "None")
                {
                    task.Due = DateTime.MinValue;
                }
                else
                {
                    task.Due = DateTime.Parse(taskDueDateTextBox.Text);
                }
                if (task.Due == DateTime.MinValue || DateTime.Compare(task.Due, DateTime.Now) >= 0)
                {
                    // not overdue
                    taskDueDateLabel.Foreground   = new SolidColorBrush(Colors.Gray);
                    taskDueDateTextBox.Foreground = new SolidColorBrush(Colors.Gray);
                }
                else if (task.Due != DateTime.MinValue && DateTime.Compare(task.Due, DateTime.Now) < 0)
                {
                    taskDueDateLabel.Foreground   = new SolidColorBrush(Colors.Red);
                    taskDueDateTextBox.Foreground = new SolidColorBrush(Colors.Red);
                }
                task.Notes     = taskNotesTextBox.Text;
                task.ListTitle = selectedList;
                bool added     = false;
                foreach (Data.Model.TaskList list in taskDataSource.TaskLists.Where(l => l.Title == selectedList))
                {
                    list.Tasks.Add(task);
                    added = true;
                }
                if (added)
                {
                    taskListTextBox.Text = selectedList;
                    selectedTask         = task;
                    taskDataSource.RefreshLists();
                    RefreshCounters(taskDataSource);
                    DisableTaskEditMode(selectedTask);
                    if (selectedTaskList != null)
                    {
                        if (selectedList == selectedTaskList.Title)
                        {
                            ((ObservableCollection <Data.Model.Task>)tasksView.ItemsSource).Add(task);
                        }
                    }
                }
            });
            s.Children.Add(ok);

            myPopup.Child = b;

            myPopup.IsOpen = true;
            myCanvas1.Children.Add(myPopup);
        }