104 lines
2.4 KiB
C#
104 lines
2.4 KiB
C#
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)
|
|
}
|