made the treenode click handler generic

This commit is contained in:
David Sparer
2017-02-11 17:25:13 -07:00
parent b6d49233fb
commit 4d61820a78
6 changed files with 9 additions and 10 deletions

View File

@@ -6,7 +6,7 @@ using mRemoteNG.UI.Controls;
namespace mRemoteNG.Tree
{
public class ExpandNodeClickHandler : ITreeNodeClickHandler
public class ExpandNodeClickHandler : ITreeNodeClickHandler<ConnectionInfo>
{
private readonly IConnectionTree _connectionTree;

View File

@@ -1,10 +1,9 @@
using mRemoteNG.Connection;
namespace mRemoteNG.Tree
{
public interface ITreeNodeClickHandler
public interface ITreeNodeClickHandler<in T>
{
void Execute(ConnectionInfo clickedNode);
void Execute(T clickedNode);
}
}

View File

@@ -4,7 +4,7 @@ using mRemoteNG.Connection;
namespace mRemoteNG.Tree
{
public class OpenConnectionClickHandler : ITreeNodeClickHandler
public class OpenConnectionClickHandler : ITreeNodeClickHandler<ConnectionInfo>
{
private readonly IConnectionInitiator _connectionInitiator;

View File

@@ -4,7 +4,7 @@ using mRemoteNG.Connection;
namespace mRemoteNG.Tree
{
public class SwitchToConnectionClickHandler : ITreeNodeClickHandler
public class SwitchToConnectionClickHandler : ITreeNodeClickHandler<ConnectionInfo>
{
private readonly IConnectionInitiator _connectionInitiator;

View File

@@ -5,9 +5,9 @@ using mRemoteNG.Connection;
namespace mRemoteNG.Tree
{
public class TreeNodeCompositeClickHandler : ITreeNodeClickHandler
public class TreeNodeCompositeClickHandler : ITreeNodeClickHandler<ConnectionInfo>
{
public IEnumerable<ITreeNodeClickHandler> ClickHandlers { get; set; } = new ITreeNodeClickHandler[0];
public IEnumerable<ITreeNodeClickHandler<ConnectionInfo>> ClickHandlers { get; set; } = new ITreeNodeClickHandler<ConnectionInfo>[0];
public void Execute(ConnectionInfo clickedNode)
{

View File

@@ -29,9 +29,9 @@ namespace mRemoteNG.UI.Controls
public IEnumerable<IConnectionTreeDelegate> PostSetupActions { get; set; } = new IConnectionTreeDelegate[0];
public ITreeNodeClickHandler DoubleClickHandler { get; set; } = new TreeNodeCompositeClickHandler();
public ITreeNodeClickHandler<ConnectionInfo> DoubleClickHandler { get; set; } = new TreeNodeCompositeClickHandler();
public ITreeNodeClickHandler SingleClickHandler { get; set; } = new TreeNodeCompositeClickHandler();
public ITreeNodeClickHandler<ConnectionInfo> SingleClickHandler { get; set; } = new TreeNodeCompositeClickHandler();
public ConnectionTreeModel ConnectionTreeModel
{