Skip to content

Commit be4a078

Browse files
authored
Merge pull request #214 from smasherprog/TriggerTree
user defined trigger names in UI trigger list
2 parents bdb1cb3 + 7c9bfcd commit be4a078

File tree

4 files changed

+23
-8
lines changed

4 files changed

+23
-8
lines changed

EQTool/Services/Handlers/UserDefinedTriggerHandler.cs

+11-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,17 @@ public class UserDefinedTriggerHandler : BaseHandler
1313
// UserTriggers file and the corresponding Triggers
1414
private const string userTriggerFileName = "UserTriggers.txt";
1515
private static readonly List<string> triggerFileContents = new List<string>(); // the raw file contents
16-
public static List<UserDefinedTrigger> triggerList = new List<UserDefinedTrigger>(); // the corresponding UserDefinedTriggers from the file
16+
private static List<UserDefinedTrigger> triggerList = new List<UserDefinedTrigger>(); // the corresponding UserDefinedTriggers from the file
17+
public static List<UserDefinedTrigger> TriggerList
18+
{
19+
get
20+
{
21+
// there should always be >0 triggers, so if this is true, they haven't been loaded yet.
22+
if (triggerList.Count == 0)
23+
ReadTriggers();
24+
return triggerList;
25+
}
26+
}
1727

1828
// watcher for the UserTriggers.txt file changed
1929
private readonly FileSystemWatcher watcher;

EQTool/ViewModels/MobInfoComponents/PetViewModel.cs

+5-2
Original file line numberDiff line numberDiff line change
@@ -213,8 +213,11 @@ public List<PetRank> PetRankList
213213

214214

215215
// data to support dynamic highlighting of any given row
216-
private readonly System.Windows.Media.Brush _HighLightColor = System.Windows.Media.Brushes.DarkGreen;
216+
// pick a highlight color that is reasonably visible for both black and white font
217+
private readonly System.Windows.Media.Brush _HighLightColor = System.Windows.Media.Brushes.LightSlateGray;
217218
private readonly System.Windows.Media.Brush _NormalColor = System.Windows.Media.Brushes.Transparent;
219+
//private readonly System.Windows.Media.Brush _HighLightColor = System.Windows.Media.Brushes.DarkGreen;
220+
//private readonly System.Windows.Media.Brush _HighLightColor = System.Windows.Media.Brushes.LightGreen;
218221

219222
public List<System.Windows.Media.Brush> RowColor { get; } = new List<System.Windows.Media.Brush>();
220223

@@ -224,7 +227,7 @@ private void ResetRowBackgrounds()
224227
for (var ndx = 0; ndx < RankRowsCount; ndx++)
225228
{
226229
RowColor[ndx] = _NormalColor;
227-
//_RowColor[ndx] = _HighLightColor;
230+
//RowColor[ndx] = _HighLightColor;
228231

229232
// force the changed property to match what the XAML field is binding to
230233
OnPropertyChanged(nameof(RowColor));

EQTool/ViewModels/SettingsComponents/SettingsManagementViewModel.cs

+5-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
using EQTool.Models;
22
using EQTool.Services;
3+
using EQTool.Services.Handlers;
4+
35
using EQToolShared.Enums;
46
using System;
57
using System.Collections.ObjectModel;
@@ -34,12 +36,12 @@ public SettingsManagementViewModel(UserComponentSettingsManagementFactory userCo
3436
};
3537
_TreeItems.Add(triggerTree);
3638

37-
// add some bogus examples just for testing
38-
for (int i = 10; i < 15; i++)
39+
//add the user defined triggers
40+
foreach (var trigger in UserDefinedTriggerHandler.TriggerList)
3941
{
4042
triggerTree.Children.Add(new TreeTrigger
4143
{
42-
Name = i.ToString(),
44+
Name = trigger.TriggerName,
4345
});
4446
}
4547

EQtoolsTests/UserDefinedTriggerTests.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public UserDefinedTriggerTests()
2323
public void ZeroNamedGroups()
2424
{
2525
// add in a testing trigger to the list of user defined triggers
26-
var theList = UserDefinedTriggerHandler.triggerList;
26+
var theList = UserDefinedTriggerHandler.TriggerList;
2727
theList.Add(new UserDefinedTrigger { TriggerID = -1, TriggerEnabled = true, TriggerName = "Test Trigger1", SearchText = "^Can you hear me now?", TextEnabled = true, DisplayText = "I can hear you", AudioEnabled = true, AudioText = "I can hear you" });
2828

2929
var called = false;
@@ -41,7 +41,7 @@ public void ZeroNamedGroups()
4141
public void ThreeNamedGroups()
4242
{
4343
// add in a testing trigger to the list of user defined triggers
44-
var theList = UserDefinedTriggerHandler.triggerList;
44+
var theList = UserDefinedTriggerHandler.TriggerList;
4545
theList.Add(new UserDefinedTrigger { TriggerID = -2, TriggerEnabled = true, TriggerName = "Test Trigger2", SearchText = "^{count} {containers} of {beverage} on the wall", TextEnabled = true, DisplayText = "{count} {containers} of {beverage}", AudioEnabled = true, AudioText = "{count} {containers} of {beverage}" });
4646

4747
var called = false;

0 commit comments

Comments
 (0)