Compare commits

...
This repository has been archived on 2024-12-29. You can view files and clone it, but cannot push or open issues or pull requests.

3 Commits

Author SHA1 Message Date
Ray
eac10a46e6 Merge pull request 'release/0.6.3' (#1) from release/0.6.3 into master
Reviewed-on: HiImRay_Public/bukkubuddy-bookmark-manager#1
2024-12-31 18:01:31 +00:00
Ray
32bd4a9142 Changed build no. 2024-12-31 17:50:34 +00:00
Ray
49223ba8f0 Added support for directories 2024-12-31 17:47:25 +00:00
5 changed files with 87 additions and 19 deletions

View File

@ -14,7 +14,7 @@
<Copyright>Ray Lam</Copyright> <Copyright>Ray Lam</Copyright>
<AssemblyVersion>1.0.0.0</AssemblyVersion> <AssemblyVersion>1.0.0.0</AssemblyVersion>
<FileVersion>1.0.0.0</FileVersion> <FileVersion>1.0.0.0</FileVersion>
<Version>0.6.2.092</Version> <Version>0.6.3.048</Version>
<PackageId>bukkubuddy</PackageId> <PackageId>bukkubuddy</PackageId>
<RunAnalyzersDuringLiveAnalysis>True</RunAnalyzersDuringLiveAnalysis> <RunAnalyzersDuringLiveAnalysis>True</RunAnalyzersDuringLiveAnalysis>
<SupportedOSPlatformVersion>8.0</SupportedOSPlatformVersion> <SupportedOSPlatformVersion>8.0</SupportedOSPlatformVersion>

View File

@ -748,9 +748,21 @@ namespace FizzyLauncher
InvalidateOptions(); InvalidateOptions();
// Load items // Clear treeview
treeView1.Clear("New Session"); treeView1.Clear("New Session");
// Load directories
foreach (var item in this.CurrentSession.Directories ?? new List<string>())
{
if (string.IsNullOrWhiteSpace(item))
{
continue;
}
treeView1.CreateNodePath(item, (int)NodeIcon.Folder1, (int)NodeIcon.Folder2);
}
// Load bookmarks
foreach (var item in this.CurrentSession.Items ?? new List<BookmarkModel>()) foreach (var item in this.CurrentSession.Items ?? new List<BookmarkModel>())
{ {
treeView1.AddNode(item); treeView1.AddNode(item);
@ -798,18 +810,11 @@ namespace FizzyLauncher
this.CurrentSession.Width = this.Width; this.CurrentSession.Width = this.Width;
this.CurrentSession.Height = this.Height; this.CurrentSession.Height = this.Height;
var nodeList = treeView1.ToNodeList<BookmarkModel>() ?? new List<KeyValuePair<TreeNode, BookmarkModel>>(); var directoryList = treeView1.GetAllDirectories();
foreach (var node in nodeList) var bookmarkList = treeView1.GetAllNodes();
{
node.Value.Path = treeView1.GetNodePath(node.Key);
if (node.Value.Path.Contains('\n')) this.CurrentSession.Directories = directoryList ?? new List<string>();
{ this.CurrentSession.Items = bookmarkList.Select(x => x.Value)?.ToList() ?? new List<BookmarkModel>();
node.Value.Path = node.Value.Path.Substring(0, node.Value.Path.LastIndexOf('\n'));
}
}
this.CurrentSession.Items = nodeList.Select(x => x.Value).ToList();
var result = GenericResult.Create(); var result = GenericResult.Create();
@ -825,7 +830,7 @@ namespace FizzyLauncher
if (result.IsSuccess) if (result.IsSuccess)
{ {
// Add icons to save file // Add icons to save file
var result2 = AddImagesToZipFile(filename, nodeList); var result2 = AddImagesToZipFile(filename, bookmarkList);
if (!result2.IsSuccess) if (!result2.IsSuccess)
{ {
if (showNotices) if (showNotices)

View File

@ -20,6 +20,8 @@ namespace FizzyLauncher.Models
public int Height { get; set; } = 0; public int Height { get; set; } = 0;
public List<string> Directories { get; set; } = new List<string>();
public List<BookmarkModel> Items { get; set; } = new List<BookmarkModel>(); public List<BookmarkModel> Items { get; set; } = new List<BookmarkModel>();
} }

View File

@ -1,7 +1,8 @@
using System; using System;
using System.Collections.Generic;
using System.ComponentModel; using System.ComponentModel;
using System.Drawing; using System.Drawing;
using System.Reflection; using System.Linq;
using System.Windows.Forms; using System.Windows.Forms;
using bzit.bomg.Models; using bzit.bomg.Models;
using FizzyLauncher; using FizzyLauncher;
@ -421,6 +422,53 @@ namespace RyzStudio.Windows.Forms
this.HasChanged = true; this.HasChanged = true;
} }
public List<string> GetAllDirectories()
{
var nodes = GetAllTreeNodes();
nodes = nodes.Where(x => this.GetNodeType(x) == NodeType.Folder)?.ToList() ?? new List<TreeNode>();
var result = new List<string>();
foreach (var item in nodes)
{
result.Add(this.GetNodePath(item));
}
return result;
}
public List<KeyValuePair<TreeNode, BookmarkModel>> GetAllNodes()
{
var result = this.ToNodeList<BookmarkModel>() ?? new List<KeyValuePair<TreeNode, BookmarkModel>>();
foreach (var node in result)
{
node.Value.Path = this.GetNodePath(node.Key);
if (node.Value.Path.Contains('\n'))
{
node.Value.Path = node.Value.Path.Substring(0, node.Value.Path.LastIndexOf('\n'));
}
}
return result;
}
public List<TreeNode> GetAllTreeNodes()
{
var result = new List<TreeNode>();
if (this.Nodes.Count <= 0)
{
return result;
}
foreach (TreeNode node in this.Nodes)
{
TraverseNodeTree(result, node);
}
return result;
}
private void ClearImageList() private void ClearImageList()
{ {
@ -468,5 +516,18 @@ namespace RyzStudio.Windows.Forms
return this.ImageList.Images.IndexOfKey(key); return this.ImageList.Images.IndexOfKey(key);
} }
protected void TraverseNodeTree(List<TreeNode> result, TreeNode node)
{
foreach (TreeNode node2 in node.Nodes)
{
result.Add(node2);
foreach (TreeNode node3 in node2.Nodes)
{
result.Add(node3);
}
}
}
} }
} }

View File

@ -2,13 +2,13 @@
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
#define MyAppName "BukkuBuddy Bookmark Manager" #define MyAppName "BukkuBuddy Bookmark Manager"
#define MyAppVersion "0.6.2.092" #define MyAppVersion "0.6.3.048"
#define MyAppPublisher "Hi, I'm Ray" #define MyAppPublisher "Hi, I'm Ray"
#define MyAppURL "https://www.hiimray.co.uk/software-bookmark-manager" #define MyAppURL "https://www.hiimray.co.uk/software-bukkubuddy-bookmark-manager"
#define MyAppExeName "bukkubuddy.exe" #define MyAppExeName "bukkubuddy.exe"
#define AppSourcePath "L:\gitea-hiimray\bookmark-manager-r4\bin" #define AppSourcePath "L:\gitea-hiimray\bukkubuddy-bookmark-manager\bin"
#define AppReleasePath "L:\gitea-hiimray\bookmark-manager-r4\bin" #define AppReleasePath "L:\gitea-hiimray\bukkubuddy-bookmark-manager\bin"
#define AppReleaseName "bukkubuddy-installer" #define AppReleaseName "bukkubuddy-installer"
[Setup] [Setup]