mcthesw / game-save-manager

一个简单的游戏存档管理器

Home Page:https://help.sworld.club

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[功能/FEATURE]新增2级目录,左侧间隔可以拖动

kuroikana opened this issue · comments

边的存档管理,如果字数超过12个字就看不到后面字,能不能让他们之间的隔断可以自己弄。
调整游戏展示顺序不能用滚轮滚动,就只能看到前面那几个,后面的我想调顺序也不能跳,
存档管理能做个上级目录吧把gal的放一堆,

左栏现在已经支持最长两行的显示;调整展示顺序也可以滚动了(PR #85 ),如果马上需要使用可以下载前沿版本

关于存档管理上级目录可以在 #83 中讨论

目前设想:
GameSaveManager.config.json中添加字段favorite,如下

{
  "version": "1.0.0 alpha",
  "backup_path": "./save_data",
  "games": [],
  "settings": {
    "prompt_when_not_described": false,
    "extra_backup_when_apply": true
  },
  "favorite": [
    {
      "name": "收藏夹",
      "type": "folder",
      "children": [
        {
          "type": "game",
          "name": "游戏名1",
          "children": null
        },
        {
          "type": "game",
          "name": "游戏名2",
          "children": null
        }
      ]
    },
    {
      "name": "ACT游戏",
      "type": "folder",
      "children": [
        {
          "name":"XXX系列",
          "type":"folder",
          "children":[
            {
              "name":"XXX 1",
              "type":"game",
              "children":null
            },{
              "name":"XXX 2",
              "type":"game",
              "children":null
            }
          ]
        }
      ]
    }
  ]
}

也就是说,新的类型可以这样定义

enum 收藏夹目录项类型{
    folder,
    game
}
interface 收藏夹目录项{
    name: string;
    type: 收藏夹目录项类型;
    children?: Array<收藏夹目录项>;
}

至此,对该结构进行一次遍历,就可以生成对应的menu了,此处可能需要设计一个递归组件,可以参考该教程该教程

该功能可以在新页面中放置一个Tree控件来进行编辑(比如排序,或者删除文件夹等功能),排序可以构造一个拖拽排序的新弹出窗口,也可以在树形控件上直接进行点击排序
考虑到方便,把整个menu换成tree控件说不定也是可行的

image
于1.2.0版本已支持