public ConfigMenuPanel() { this.Orientation = Orientation.Vertical; button = new ConfigMenuButton(); this.Children.Add(button); detailView = new ConfigMenuTreeView(); this.Children.Add(detailView); AddConfigWorkGroupCommand = new RelayCommand(AddConfigWorkGroup); this.ContextMenu = new ContextMenu(); MenuItem item; item = new MenuItem(); item.Command = AddConfigWorkGroupCommand; item.Header = "Add Config Work Group"; item.Icon = new PackIconMaterial() { Kind = PackIconMaterialKind.FolderPlus, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center }; this.ContextMenu.Items.Add(item); this.Background = Brushes.White; }
public ConfigMenu() { InitializeComponent(); try { configgrid = new ConfigMenuRootPanel(); grid.Children.Add(configgrid); btnFileConfig = new ConfigMenuButton(configgrid, null, "File Config"); configgrid.Children.Add(btnFileConfig); configgrid.SubPanel.Children.Add(btnFileConfig.child); btnSamConfig = new ConfigMenuButton(configgrid, null, "Sam Config"); configgrid.Children.Add(btnSamConfig); configgrid.SubPanel.Children.Add(btnSamConfig.child); btnTailConfig = new ConfigMenuButton(configgrid, null, "Tail Config"); configgrid.Children.Add(btnTailConfig); configgrid.SubPanel.Children.Add(btnTailConfig.child); Refresh(); } catch (Exception e) { Log.PrintError(e.Message, "UserControls.ConfigMenu"); } if (configgrid?.btn_group != null && configgrid.btn_group.Count > 0) { configgrid.btn_group[0].IsChecked = true; } }
public ConfigPanel ConvertFromJson(JObject jobj_root) { if (jobj_root == null) { return(null); } servergrid = new ConfigPanel(); try { foreach (var v in jobj_root.Properties()) { JObject jobj_config_root = v.Value as JObject; if (jobj_config_root == null) { continue; } ConfigMenuButton smbtn = new ConfigMenuButton(servergrid, jobj_config_root, v.Name); servergrid.Children.Add(smbtn); servergrid.SubPanel.Children.Add(smbtn.child); JObject jobj_work_group_root = jobj_config_root.GetValue("work_group") as JObject; if (jobj_work_group_root == null) { continue; } foreach (var work in jobj_work_group_root.Properties()) { JObject jobj_server_menu = work.Value as JObject; if (jobj_server_menu == null) { continue; } ConfigInfoPanel ui_config_group = new ConfigInfoPanel(smbtn, jobj_config_root, work.Name); ui_config_group.IsExpanded = true; smbtn.child.Items.Add(ui_config_group); JArray jarr_processes = jobj_server_menu.GetValue("processes") as JArray; if (jarr_processes == null) { continue; } int i = 0; foreach (var jprop_server_info in jarr_processes) { JObject jobj_process_info = jprop_server_info as JObject; if (jobj_process_info == null) { continue; } string dir = null; string daemon_yn = null; if (jobj_config_root.GetValue("type").ToString() == "file") { dir = (jobj_process_info.GetValue("enc_option") as JObject)?.GetValue("input_dir")?.ToString(); } else { dir = (jobj_process_info.GetValue("comm_option") as JObject)?.GetValue("input_dir")?.ToString(); } ui_config_group.Items.Add(new ConfigInfoPanel(smbtn, jobj_config_root, work.Name, i.ToString(), dir)); string daemon_keyword = "dir_monitoring_yn"; if (jobj_config_root.GetValue("type").ToString() == "tail") { daemon_keyword = "daemon_yn"; } JToken jcur = jobj_process_info; while (jcur != null && daemon_yn == null) { daemon_yn = (jcur["comm_option"] as JObject)?.GetValue(daemon_keyword)?.ToString(); jcur = jcur.Parent; while (jcur != null && jcur as JObject == null) { jcur = jcur.Parent; } } if (daemon_yn == "True") { LinuxTreeViewItem.ChangeColor(root, dir, jobj_config_root["type"] + "-" + work.Name + "-" + i); } i++; } } } return(servergrid); } catch (Exception e) { Log.PrintError(e.Message, "UserControls.ServerInfo.ConvertFromJson"); } return(null); }