work on characterlist
This commit is contained in:
@@ -29,30 +29,100 @@
|
||||
private void InitializeComponent()
|
||||
{
|
||||
radListView_CharList = new Telerik.WinControls.UI.RadListView();
|
||||
radMenu1 = new Telerik.WinControls.UI.RadMenu();
|
||||
radMenuItem_CreateChar = new Telerik.WinControls.UI.RadMenuItem();
|
||||
radMenuItem_DeleteChar = new Telerik.WinControls.UI.RadMenuItem();
|
||||
radMenuItem_OpenChar = new Telerik.WinControls.UI.RadMenuItem();
|
||||
tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
radTextBoxControl1 = new Telerik.WinControls.UI.RadTextBoxControl();
|
||||
((System.ComponentModel.ISupportInitialize)radListView_CharList).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)radMenu1).BeginInit();
|
||||
tableLayoutPanel1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)radTextBoxControl1).BeginInit();
|
||||
SuspendLayout();
|
||||
//
|
||||
// radListView_CharList
|
||||
//
|
||||
radListView_CharList.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
radListView_CharList.Location = new System.Drawing.Point(0, 0);
|
||||
radListView_CharList.Location = new System.Drawing.Point(3, 31);
|
||||
radListView_CharList.Name = "radListView_CharList";
|
||||
radListView_CharList.Size = new System.Drawing.Size(500, 500);
|
||||
radListView_CharList.Size = new System.Drawing.Size(494, 446);
|
||||
radListView_CharList.TabIndex = 0;
|
||||
//
|
||||
// radMenu1
|
||||
//
|
||||
radMenu1.Items.AddRange(new Telerik.WinControls.RadItem[] { radMenuItem_CreateChar, radMenuItem_DeleteChar, radMenuItem_OpenChar });
|
||||
radMenu1.Location = new System.Drawing.Point(0, 0);
|
||||
radMenu1.Name = "radMenu1";
|
||||
radMenu1.Size = new System.Drawing.Size(500, 20);
|
||||
radMenu1.TabIndex = 0;
|
||||
//
|
||||
// radMenuItem_CreateChar
|
||||
//
|
||||
radMenuItem_CreateChar.Name = "radMenuItem_CreateChar";
|
||||
radMenuItem_CreateChar.Text = "New";
|
||||
radMenuItem_CreateChar.Click += RadMenuItem_AddChar_Click;
|
||||
//
|
||||
// radMenuItem_DeleteChar
|
||||
//
|
||||
radMenuItem_DeleteChar.Name = "radMenuItem_DeleteChar";
|
||||
radMenuItem_DeleteChar.Text = "Delete";
|
||||
radMenuItem_DeleteChar.Click += RadMenuItem_DeleteChar_Click;
|
||||
//
|
||||
// radMenuItem_OpenChar
|
||||
//
|
||||
radMenuItem_OpenChar.Name = "radMenuItem_OpenChar";
|
||||
radMenuItem_OpenChar.Text = "Open";
|
||||
radMenuItem_OpenChar.Click += RadMenuItem_OpenChar_Click;
|
||||
//
|
||||
// tableLayoutPanel1
|
||||
//
|
||||
tableLayoutPanel1.ColumnCount = 1;
|
||||
tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
tableLayoutPanel1.Controls.Add(radListView_CharList, 0, 1);
|
||||
tableLayoutPanel1.Controls.Add(radTextBoxControl1, 0, 0);
|
||||
tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
tableLayoutPanel1.Location = new System.Drawing.Point(0, 20);
|
||||
tableLayoutPanel1.Name = "tableLayoutPanel1";
|
||||
tableLayoutPanel1.RowCount = 2;
|
||||
tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
tableLayoutPanel1.Size = new System.Drawing.Size(500, 480);
|
||||
tableLayoutPanel1.TabIndex = 1;
|
||||
//
|
||||
// radTextBoxControl1
|
||||
//
|
||||
radTextBoxControl1.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right;
|
||||
radTextBoxControl1.Location = new System.Drawing.Point(3, 3);
|
||||
radTextBoxControl1.Name = "radTextBoxControl1";
|
||||
radTextBoxControl1.NullText = "Search...";
|
||||
radTextBoxControl1.Size = new System.Drawing.Size(494, 22);
|
||||
radTextBoxControl1.TabIndex = 1;
|
||||
//
|
||||
// CharacterListControl
|
||||
//
|
||||
AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
|
||||
AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
Controls.Add(radListView_CharList);
|
||||
Controls.Add(tableLayoutPanel1);
|
||||
Controls.Add(radMenu1);
|
||||
Name = "CharacterListControl";
|
||||
Size = new System.Drawing.Size(500, 500);
|
||||
((System.ComponentModel.ISupportInitialize)radListView_CharList).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)radMenu1).EndInit();
|
||||
tableLayoutPanel1.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)radTextBoxControl1).EndInit();
|
||||
ResumeLayout(false);
|
||||
PerformLayout();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private Telerik.WinControls.UI.RadListView radListView_CharList;
|
||||
private Telerik.WinControls.UI.RadMenu radMenu1;
|
||||
private Telerik.WinControls.UI.RadMenuItem radMenuItem_CreateChar;
|
||||
private Telerik.WinControls.UI.RadMenuItem radMenuItem_DeleteChar;
|
||||
private Telerik.WinControls.UI.RadMenuItem radMenuItem_OpenChar;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
|
||||
private Telerik.WinControls.UI.RadTextBoxControl radTextBoxControl1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
using OwnChar.App.Desktop.LangRes;
|
||||
using OwnChar.Model;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Windows.Forms;
|
||||
using Telerik.WinControls.UI;
|
||||
|
||||
@@ -9,16 +10,10 @@ namespace OwnChar.App.Desktop.UI.MainTabs.Controls;
|
||||
|
||||
public partial class CharacterListControl : UserControl
|
||||
{
|
||||
|
||||
private IMainWindowApi? mainApi;
|
||||
private IMainWindowApi mainApi = null!;
|
||||
private UserProfile? profile;
|
||||
private Group? group;
|
||||
|
||||
public CharacterListControl()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
public void LoadContent(IMainWindowApi mainApi, UserProfile? profile)
|
||||
{
|
||||
LoadContent(mainApi, profile, null);
|
||||
@@ -34,29 +29,28 @@ public partial class CharacterListControl : UserControl
|
||||
this.mainApi = mainApi;
|
||||
this.profile = profile;
|
||||
this.group = group;
|
||||
InitializeComponent();
|
||||
PrepareList();
|
||||
LoadList();
|
||||
LoadList(group);
|
||||
}
|
||||
|
||||
// Laden aller -eigenen- Charaktere
|
||||
// Spalte zum Anzeigen der Gruppen-Zugehörigkeit
|
||||
// Hinzufügen und Löschen von Charakteren
|
||||
private void PrepareList()
|
||||
{
|
||||
radListView_CharList.BeginUpdate();
|
||||
radListView_CharList.Columns.Clear();
|
||||
|
||||
radListView_CharList.Columns.Add(CharListControlLangRes.Column_CharName);
|
||||
radListView_CharList.Columns.Add(CharListControlLangRes.Column_CharFandom);
|
||||
|
||||
if (profile != null)
|
||||
radListView_CharList.Columns.Add(CharListControlLangRes.Column_CharGroup);
|
||||
else if (group != null)
|
||||
radListView_CharList.Columns.Add(CharListControlLangRes.Column_CharOwner);
|
||||
else if (group != null)
|
||||
radListView_CharList.Columns.Add(CharListControlLangRes.Column_CharGroup);
|
||||
|
||||
radListView_CharList.EndUpdate();
|
||||
}
|
||||
|
||||
private void LoadList()
|
||||
private void LoadList(Group? group)
|
||||
{
|
||||
radListView_CharList.BeginUpdate();
|
||||
radListView_CharList.Items.Clear();
|
||||
@@ -82,6 +76,55 @@ public partial class CharacterListControl : UserControl
|
||||
private void UpdateCharListViewItem(ListViewDataItem listItem, Character character)
|
||||
{
|
||||
listItem[0] = character.Name;
|
||||
listItem[1] = character.Fandom;
|
||||
|
||||
if (group != null)
|
||||
listItem[2] = group.Name;
|
||||
else
|
||||
listItem[2] = character.Owner;
|
||||
}
|
||||
|
||||
private Character? GetSelectedChar()
|
||||
{
|
||||
return radListView_CharList.SelectedItem?.Value as Character;
|
||||
}
|
||||
|
||||
private void NewChar()
|
||||
{
|
||||
if (mainApi.Manager?.Characters.AddCharacter() is Character newChar)
|
||||
AddCharToList(newChar);
|
||||
}
|
||||
|
||||
private void DelChar()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void TryOpenChar(Character? character)
|
||||
{
|
||||
if (character != null)
|
||||
OpenCharTab(character);
|
||||
}
|
||||
|
||||
private void OpenCharTab(Character character)
|
||||
{
|
||||
mainApi.OpenTab(new TabCharView(mainApi, character), string.IsNullOrWhiteSpace(character.Name) ? CharListControlLangRes.Tab_UnnamedChar : character.Name);
|
||||
}
|
||||
|
||||
// E V E N T S
|
||||
|
||||
private void RadMenuItem_AddChar_Click(object sender, System.EventArgs e)
|
||||
{
|
||||
NewChar();
|
||||
}
|
||||
|
||||
private void RadMenuItem_DeleteChar_Click(object sender, System.EventArgs e)
|
||||
{
|
||||
DelChar();
|
||||
}
|
||||
|
||||
private void RadMenuItem_OpenChar_Click(object sender, System.EventArgs e)
|
||||
{
|
||||
TryOpenChar(GetSelectedChar());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,33 +28,67 @@
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
radPageView_groupView = new Telerik.WinControls.UI.RadPageView();
|
||||
((System.ComponentModel.ISupportInitialize)radPageView_groupView).BeginInit();
|
||||
radListView1 = new Telerik.WinControls.UI.RadListView();
|
||||
radMenuItem1 = new Telerik.WinControls.UI.RadMenuItem();
|
||||
radMenuItem2 = new Telerik.WinControls.UI.RadMenuItem();
|
||||
radMenuItem3 = new Telerik.WinControls.UI.RadMenuItem();
|
||||
radMenu1 = new Telerik.WinControls.UI.RadMenu();
|
||||
((System.ComponentModel.ISupportInitialize)radListView1).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)radMenu1).BeginInit();
|
||||
SuspendLayout();
|
||||
//
|
||||
// radPageView_groupView
|
||||
// radListView1
|
||||
//
|
||||
radPageView_groupView.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
radPageView_groupView.Location = new System.Drawing.Point(0, 0);
|
||||
radPageView_groupView.Name = "radPageView_groupView";
|
||||
radPageView_groupView.Size = new System.Drawing.Size(500, 500);
|
||||
radPageView_groupView.TabIndex = 0;
|
||||
radPageView_groupView.ViewMode = Telerik.WinControls.UI.PageViewMode.NavigationView;
|
||||
((Telerik.WinControls.UI.RadPageViewNavigationViewElement)radPageView_groupView.GetChildAt(0)).ExpandedPaneWidth = 175;
|
||||
radListView1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
radListView1.Location = new System.Drawing.Point(0, 20);
|
||||
radListView1.Name = "radListView1";
|
||||
radListView1.Size = new System.Drawing.Size(500, 480);
|
||||
radListView1.TabIndex = 0;
|
||||
//
|
||||
// GroupViewControl
|
||||
// radMenuItem1
|
||||
//
|
||||
radMenuItem1.Name = "radMenuItem1";
|
||||
radMenuItem1.Text = "New";
|
||||
radMenuItem1.Click += radMenuItem1_Click;
|
||||
//
|
||||
// radMenuItem2
|
||||
//
|
||||
radMenuItem2.Name = "radMenuItem2";
|
||||
radMenuItem2.Text = "Delete";
|
||||
//
|
||||
// radMenuItem3
|
||||
//
|
||||
radMenuItem3.Name = "radMenuItem3";
|
||||
radMenuItem3.Text = "Open";
|
||||
//
|
||||
// GroupListControl
|
||||
//
|
||||
AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
|
||||
AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
Controls.Add(radPageView_groupView);
|
||||
Name = "GroupViewControl";
|
||||
//
|
||||
// radMenu1
|
||||
//
|
||||
radMenu1.Items.AddRange(new Telerik.WinControls.RadItem[] { radMenuItem1, radMenuItem2, radMenuItem3 });
|
||||
radMenu1.Location = new System.Drawing.Point(0, 0);
|
||||
radMenu1.Name = "radMenu1";
|
||||
radMenu1.Size = new System.Drawing.Size(500, 20);
|
||||
radMenu1.TabIndex = 1;
|
||||
Controls.Add(radListView1);
|
||||
Controls.Add(radMenu1);
|
||||
Name = "GroupListControl";
|
||||
Size = new System.Drawing.Size(500, 500);
|
||||
((System.ComponentModel.ISupportInitialize)radPageView_groupView).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)radListView1).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)radMenu1).EndInit();
|
||||
ResumeLayout(false);
|
||||
PerformLayout();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private Telerik.WinControls.UI.RadPageView radPageView_groupView;
|
||||
private Telerik.WinControls.UI.RadListView radListView1;
|
||||
private Telerik.WinControls.UI.RadMenu radMenu1;
|
||||
private Telerik.WinControls.UI.RadMenuItem radMenuItem1;
|
||||
private Telerik.WinControls.UI.RadMenuItem radMenuItem2;
|
||||
private Telerik.WinControls.UI.RadMenuItem radMenuItem3;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,6 +9,11 @@ public partial class GroupListControl : UserControl
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void radMenuItem1_Click(object sender, System.EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
// Auflistung der Gruppen
|
||||
// Hinzufügen
|
||||
// Löschen + Umbenennen (Wenn Admin/Mod)
|
||||
|
||||
Reference in New Issue
Block a user