2015-03-20 21:40:43 +00:00
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
|
|
|
|
|
namespace ScriptToolGui
|
|
|
|
|
{
|
2015-03-21 05:25:21 +00:00
|
|
|
|
abstract class NavigationEntry
|
2015-03-20 21:40:43 +00:00
|
|
|
|
{
|
2015-03-21 05:25:21 +00:00
|
|
|
|
public abstract NavigationType Type { get; }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
enum NavigationType
|
|
|
|
|
{
|
|
|
|
|
MatchedGroup,
|
|
|
|
|
Reference
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
class MatchedGroupNavigationEntry : NavigationEntry
|
|
|
|
|
{
|
|
|
|
|
public override NavigationType Type { get { return NavigationType.MatchedGroup; } }
|
|
|
|
|
|
|
|
|
|
public MatchedGroup Group { get; private set; }
|
2015-03-26 20:30:53 +00:00
|
|
|
|
public MatchedGroupCollection Collection { get; private set; }
|
2015-03-21 05:25:21 +00:00
|
|
|
|
|
2015-03-26 20:30:53 +00:00
|
|
|
|
public MatchedGroupNavigationEntry(MatchedGroup group, MatchedGroupCollection collection)
|
2015-03-21 05:25:21 +00:00
|
|
|
|
{
|
|
|
|
|
Group = group;
|
2015-03-26 20:30:53 +00:00
|
|
|
|
Collection = collection;
|
2015-03-21 05:25:21 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
class ReferenceNavigationEntry : NavigationEntry
|
|
|
|
|
{
|
|
|
|
|
public override NavigationType Type { get { return NavigationType.Reference; } }
|
|
|
|
|
|
2015-03-20 21:40:43 +00:00
|
|
|
|
public string Label { get; private set; }
|
2015-03-21 05:25:21 +00:00
|
|
|
|
public Game Game { get; private set; }
|
2015-03-20 21:40:43 +00:00
|
|
|
|
|
2015-03-21 05:25:21 +00:00
|
|
|
|
public ReferenceNavigationEntry(Game game, string label)
|
2015-03-20 21:40:43 +00:00
|
|
|
|
{
|
|
|
|
|
Game = game;
|
|
|
|
|
Label = label;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|