Table of Contents

Class ChannelListSource

Namespace
EchoHub.Client.UI.ListSources
Assembly
EchoHub.Client.dll

Custom list data source for colored channel list rendering. Active channel gets a > indicator, unread channels are bright with a count badge.

public class ChannelListSource : IListDataSource, IDisposable
Inheritance
ChannelListSource
Implements
IListDataSource
Inherited Members

Constructors

ChannelListSource()

public ChannelListSource()

Properties

Count

public int Count { get; }

Property Value

int

MaxItemLength

public int MaxItemLength { get; }

Property Value

int

SuspendCollectionChangedEvent

public bool SuspendCollectionChangedEvent { get; set; }

Property Value

bool

Methods

Dispose()

public void Dispose()

IsMarked(int)

public bool IsMarked(int item)

Parameters

item int

Returns

bool

Render(ListView, bool, int, int, int, int, int)

public void Render(ListView listView, bool selected, int item, int col, int row, int width, int viewportX = 0)

Parameters

listView ListView
selected bool
item int
col int
row int
width int
viewportX int

SetMark(int, bool)

public void SetMark(int item, bool value)

Parameters

item int
value bool

ToList()

public IList ToList()

Returns

IList

Update(List<string>, Dictionary<string, int>, string, IReadOnlySet<string>?)

public void Update(List<string> channels, Dictionary<string, int> unread, string activeChannel, IReadOnlySet<string>? protectedChannels = null)

Parameters

channels List<string>
unread Dictionary<string, int>
activeChannel string
protectedChannels IReadOnlySet<string>

Events

CollectionChanged

public event NotifyCollectionChangedEventHandler? CollectionChanged

Event Type

NotifyCollectionChangedEventHandler