private void ConfirmButton_Click(object sender, RoutedEventArgs e)
        {
            if (NameText == null)
            {
                return;
            }
            var bookmark = new BookmarkNode
            {
                IsFolder = false,
                Name     = NameText,
                URL      = AppCore.CurrentURL,
                Children = new ObservableCollection <BookmarkNode>()
            };
            var parent = Tree.SelectedItem;

            if (parent == null)
            {
                Bookmarks.Add(bookmark);
            }
            else
            {
                ((BookmarkNode)parent).Children.Add(bookmark);
            }
            WriteBookmarks();
        }
 protected ObservableCollection <BookmarkNode> FindParent(BookmarkNode node, ObservableCollection <BookmarkNode> root)
 {
     foreach (var n in root)
     {
         if (n == node)
         {
             return(root);
         }
         var p = FindParent(node, n.Children);
         if (p != null)
         {
             return(p);
         }
     }
     return(null);
 }
Example #3
0
        private async void CreateNewFolder()
        {
            var dialog = new TextInputDialog(LocalizationHelper.Localize("Folder name"));
            var result = await dialog.ShowAsync();

            if (result == ContentDialogResult.Primary)
            {
                var bookmark = new BookmarkNode
                {
                    IsFolder = true,
                    Name     = dialog.Text,
                    Children = new ObservableCollection <BookmarkNode>()
                };
                Bookmarks.Add(bookmark);
                WriteBookmarks();
            }
        }
Example #4
0
        private async void RenameItem(BookmarkNode bookmark)
        {
            var dialog = new TextInputDialog(LocalizationHelper.Localize("New name"));
            var result = await dialog.ShowAsync();

            if (result == ContentDialogResult.Primary)
            {
                var parent = FindParent(bookmark, Bookmarks);
                if (parent != null)
                {
                    for (int i = 0; i < parent.Count; i++)
                    {
                        if (parent[i] == bookmark)
                        {
                            bookmark.Name = dialog.Text;
                            parent[i]     = bookmark;
                            WriteBookmarks();
                        }
                    }
                }
            }
        }