提交记录修改UI/Servicers/AppContextMenuServicer.cs+55 −1看文件
| @@ -23,6 +23,7 @@ namespace UI.Servicers | ||
| 23 | 23 | |
| 24 | 24 | private ContextMenu menu; |
| 25 | 25 | private MenuItem setCategory; |
| 26 | 新增: private MenuItem setLink; | |
| 26 | 27 | MenuItem block = new MenuItem(); |
| 27 | 28 | |
| 28 | 29 | |
| @@ -51,14 +52,19 @@ namespace UI.Servicers | ||
| 51 | 52 | setCategory = new MenuItem(); |
| 52 | 53 | setCategory.Header = "设置分类"; |
| 53 | 54 | |
| 55 | 新增: setLink = new MenuItem(); | |
| 56 | 新增: setLink.Header = "添加关联"; | |
| 57 | 新增: | |
| 54 | 58 | block.Header = "忽略此应用"; |
| 55 | 59 | block.Click += Block_Click; |
| 56 | 60 | |
| 57 | 61 | menu.Items.Add(run); |
| 58 | 62 | menu.Items.Add(new Separator()); |
| 59 | 63 | menu.Items.Add(setCategory); |
| 60 | 删除: menu.Items.Add(openDir); | |
| 64 | 新增: menu.Items.Add(setLink); | |
| 61 | 65 | menu.Items.Add(new Separator()); |
| 66 | 新增: | |
| 67 | 新增: menu.Items.Add(openDir); | |
| 62 | 68 | menu.Items.Add(block); |
| 63 | 69 | |
| 64 | 70 | menu.ContextMenuOpening += SetCategory_ContextMenuOpening; |
| @@ -100,6 +106,9 @@ namespace UI.Servicers | ||
| 100 | 106 | } |
| 101 | 107 | |
| 102 | 108 | UpdateCategory(); |
| 109 | 新增: | |
| 110 | 新增: setLink.IsEnabled = config.Links.Count > 0; | |
| 111 | 新增: UpdateLinks(); | |
| 103 | 112 | } |
| 104 | 113 | |
| 105 | 114 | private void UpdateCategory() |
| @@ -125,6 +134,51 @@ namespace UI.Servicers | ||
| 125 | 134 | |
| 126 | 135 | } |
| 127 | 136 | |
| 137 | 新增: private void UpdateLinks() | |
| 138 | 新增: { | |
| 139 | 新增: setLink.Items.Clear(); | |
| 140 | 新增: | |
| 141 | 新增: var data = menu.Tag as ChartsDataModel; | |
| 142 | 新增: var log = data.Data as DailyLogModel; | |
| 143 | 新增: var app = log.AppModel; | |
| 144 | 新增: var config = appConfig.GetConfig(); | |
| 145 | 新增: | |
| 146 | 新增: var links = config.Links; | |
| 147 | 新增: foreach (var link in links) | |
| 148 | 新增: { | |
| 149 | 新增: var categoryMenu = new MenuItem(); | |
| 150 | 新增: categoryMenu.Header = link.Name; | |
| 151 | 新增: categoryMenu.Click += (s, e) => | |
| 152 | 新增: { | |
| 153 | 新增: SetLink(app, link.Name); | |
| 154 | 新增: }; | |
| 155 | 新增: setLink.Items.Add(categoryMenu); | |
| 156 | 新增: } | |
| 157 | 新增: | |
| 158 | 新增: } | |
| 159 | 新增: private void SetLink(AppModel app, string linkName) | |
| 160 | 新增: { | |
| 161 | 新增: | |
| 162 | 新增: var config = appConfig.GetConfig(); | |
| 163 | 新增: var links = config.Links; | |
| 164 | 新增: var link = links.Where(m => m.ProcessList.Contains(app.Name)).FirstOrDefault(); | |
| 165 | 新增: if (link != null) | |
| 166 | 新增: { | |
| 167 | 新增: link.ProcessList.Remove(app.Name); | |
| 168 | 新增: } | |
| 169 | 新增: | |
| 170 | 新增: link = links.Where(m => m.Name == linkName).FirstOrDefault(); | |
| 171 | 新增: if (link != null) | |
| 172 | 新增: { | |
| 173 | 新增: link.ProcessList.Add(app.Name); | |
| 174 | 新增: main.Toast("关联成功", Controls.Window.ToastType.Success); | |
| 175 | 新增: } | |
| 176 | 新增: else | |
| 177 | 新增: { | |
| 178 | 新增: main.Toast("关联配置不存在", Controls.Window.ToastType.Error, Controls.Base.IconTypes.Blocked); | |
| 179 | 新增: | |
| 180 | 新增: } | |
| 181 | 新增: } | |
| 128 | 182 | private void SetAppCategory(int appId, CategoryModel category) |
| 129 | 183 | { |
| 130 | 184 | var app = appData.GetApp(appId); |

