using OwnChar.App.Desktop.Api; using OwnChar.App.Desktop.LangRes; using OwnChar.Manager; using Pilz.UI; using System; using System.Collections.Generic; using System.Windows.Forms; using Telerik.WinControls.UI; using static System.Runtime.InteropServices.JavaScript.JSType; namespace OwnChar.App.Desktop.UI.MainTabs.Controls; public partial class GroupListControl : UserControl { private IMainWindowApi mainApi = null!; public GroupListControl() { InitializeComponent(); } public void LoadContent(IMainWindowApi mainApi) { this.mainApi = mainApi; PrepareList(); LoadList(); } private void PrepareList() { radListView_GroupList.BeginUpdate(); radListView_GroupList.Columns.Clear(); radListView_GroupList.Columns.Add(GeneralLangRes.Column_Name); radListView_GroupList.Columns.Add(GeneralLangRes.Column_Fandom); radListView_GroupList.Columns.Add(GroupListControlLangRes.Column_Owner); radListView_GroupList.EndUpdate(); } public void LoadList() { radListView_GroupList.BeginUpdate(); radListView_GroupList.Columns.Clear(); var groups = mainApi!.Manager?.Groups.GetGroups(); if (groups != null) { foreach (Model.Group group in groups) { AddGroupToList(group); } } radListView_GroupList.EndUpdate(); } public void AddGroupToList(Model.Group group) { radListView_GroupList.BeginUpdate(); var newItem = new ListViewDataItem(); UpdateCharListViewItem(newItem, group); newItem.Value = group; radListView_GroupList.EndUpdate(); } private void UpdateCharListViewItem(ListViewDataItem listItem, Model.Group group) { listItem[0] = group.Name; listItem[1] = group.Fandom; listItem[2] = mainApi!.Manager?.Groups.GetOwner(group)!.Name; } // E V E N T S private void RadMenuItem_CreateGroup_Click(object sender, System.EventArgs e) { } private void RadMenuItem_DeleteGroup_Click(object sender, System.EventArgs e) { } private void RadMenuItem_OpenGroup_Click(object sender, System.EventArgs e) { } private void RadTextBoxControl_SearchBox_TextChanged(object sender, System.EventArgs e) { } // Auflistung der Gruppen // Hinzufügen // Löschen + Umbenennen (Wenn Admin/Mod) }