Skip to content

Commit d2caba0

Browse files
committed
Merge pull request #642 from Hosch250/next
Close issue #637 with tests
2 parents 40be1a0 + 80d30ef commit d2caba0

33 files changed

+996
-447
lines changed

RetailCoder.VBE/Rubberduck.csproj

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -283,6 +283,13 @@
283283
<Compile Include="Inspections\VariableNotAssignedInspection.cs" />
284284
<Compile Include="Inspections\IdentifierNotAssignedInspectionResult.cs" />
285285
<Compile Include="UI\FolderBrowser.cs" />
286+
<Compile Include="UI\Settings\AddMarkerForm.cs">
287+
<SubType>Form</SubType>
288+
</Compile>
289+
<Compile Include="UI\Settings\AddMarkerForm.Designer.cs">
290+
<DependentUpon>AddMarkerForm.cs</DependentUpon>
291+
</Compile>
292+
<Compile Include="UI\Settings\IAddTodoSettingsView.cs" />
286293
<Compile Include="UI\SourceControl\App.cs" />
287294
<Compile Include="Properties\Annotations.cs" />
288295
<Compile Include="Properties\Resources.Designer.cs">
@@ -466,7 +473,7 @@
466473
<Compile Include="Inspections\OptionExplicitInspectionResult.cs" />
467474
<Compile Include="Inspections\VariableTypeNotDeclaredInspection.cs" />
468475
<Compile Include="Inspections\VariableTypeNotDeclaredInspectionResult.cs" />
469-
<Compile Include="ToDoItems\TaskPriority.cs" />
476+
<Compile Include="ToDoItems\TodoPriority.cs" />
470477
<Compile Include="UI\AboutWindow.cs">
471478
<SubType>Form</SubType>
472479
</Compile>
@@ -591,6 +598,9 @@
591598
<DependentUpon>FindSymbolDialog.cs</DependentUpon>
592599
</EmbeddedResource>
593600
<EmbeddedResource Include="UI\RubberduckUI.sv.resx" />
601+
<EmbeddedResource Include="UI\Settings\AddMarkerForm.resx">
602+
<DependentUpon>AddMarkerForm.cs</DependentUpon>
603+
</EmbeddedResource>
594604
<EmbeddedResource Include="UI\SimpleListControl.resx">
595605
<DependentUpon>SimpleListControl.cs</DependentUpon>
596606
</EmbeddedResource>

RetailCoder.VBE/Settings/ConfigurationLoader.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using System.Reflection;
66
using System.Windows.Forms;
77
using Rubberduck.Inspections;
8+
using Rubberduck.ToDoItems;
89
using Rubberduck.UI;
910

1011
namespace Rubberduck.Settings
@@ -113,7 +114,7 @@ public Configuration GetDefaultConfiguration()
113114
public ToDoMarker[] GetDefaultTodoMarkers()
114115
{
115116
var note = new ToDoMarker(RubberduckUI.ToDoMarkerNote, TodoPriority.Low);
116-
var todo = new ToDoMarker(RubberduckUI.ToDoMarkerToDo, TodoPriority.Normal);
117+
var todo = new ToDoMarker(RubberduckUI.ToDoMarkerToDo, TodoPriority.Medium);
117118
var bug = new ToDoMarker(RubberduckUI.ToDoMarkerBug, TodoPriority.High);
118119

119120
return new[] { note, todo, bug };

RetailCoder.VBE/Settings/ToDoMarkers.cs

Lines changed: 35 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,10 @@
1-
using System.Xml.Serialization;
1+
using System;
2+
using System.Xml.Serialization;
3+
using Rubberduck.ToDoItems;
4+
using Rubberduck.UI;
25

36
namespace Rubberduck.Settings
47
{
5-
public enum TodoPriority
6-
{
7-
Low,
8-
Normal,
9-
High
10-
}
11-
128
public interface IToDoMarker
139
{
1410
TodoPriority Priority { get; set; }
@@ -25,6 +21,23 @@ public class ToDoMarker : IToDoMarker
2521
[XmlAttribute]
2622
public TodoPriority Priority { get; set; }
2723

24+
[XmlIgnore]
25+
public string PriorityLabel
26+
{
27+
get { return RubberduckUI.ResourceManager.GetString("ToDoPriority_" + Priority, RubberduckUI.Culture); }
28+
set
29+
{
30+
foreach (var priority in Enum.GetValues(typeof(TodoPriority)))
31+
{
32+
if (value == RubberduckUI.ResourceManager.GetString("ToDoPriority_" + priority, RubberduckUI.Culture))
33+
{
34+
Priority = (TodoPriority)priority;
35+
return;
36+
}
37+
}
38+
}
39+
}
40+
2841
/// <summary> Default constructor is required for serialization. DO NOT USE. </summary>
2942
public ToDoMarker()
3043
{
@@ -43,5 +56,19 @@ public override string ToString()
4356
{
4457
return this.Text;
4558
}
59+
60+
public override bool Equals(object obj)
61+
{
62+
var other = (ToDoMarker)obj;
63+
64+
// no need to check PriorityLabel as it soley relies on Priority - if one is wrong, the other has to be too
65+
return Text == other.Text &&
66+
Priority == other.Priority;
67+
}
68+
69+
public override int GetHashCode()
70+
{
71+
return Text.GetHashCode();
72+
}
4673
}
4774
}

RetailCoder.VBE/ToDoItems/ToDoItem.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ namespace Rubberduck.ToDoItems
1010
/// </summary>
1111
public class ToDoItem
1212
{
13-
private readonly TaskPriority _priority;
14-
public TaskPriority Priority{ get { return _priority; } }
13+
private readonly TodoPriority _priority;
14+
public TodoPriority Priority { get { return _priority; } }
1515

1616
public string PriorityLabel { get { return RubberduckUI.ResourceManager.GetString("ToDoPriority_" + Priority, RubberduckUI.Culture); } }
1717

@@ -30,12 +30,12 @@ public class ToDoItem
3030
private readonly QualifiedSelection _selection;
3131
public QualifiedSelection GetSelection() { return _selection; }
3232

33-
public ToDoItem(TaskPriority priority, CommentNode comment)
33+
public ToDoItem(TodoPriority priority, CommentNode comment)
3434
: this(priority, comment.CommentText, comment.QualifiedSelection)
3535
{
3636
}
3737

38-
public ToDoItem(TaskPriority priority, string description, QualifiedSelection qualifiedSelection)
38+
public ToDoItem(TodoPriority priority, string description, QualifiedSelection qualifiedSelection)
3939
{
4040
_priority = priority;
4141
_description = description;

RetailCoder.VBE/ToDoItems/TaskPriority.cs renamed to RetailCoder.VBE/ToDoItems/TodoPriority.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
namespace Rubberduck.ToDoItems
22
{
3-
public enum TaskPriority
3+
public enum TodoPriority
44
{
55
Low,
66
Medium,

RetailCoder.VBE/UI/GridViewSort.cs

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,25 +8,24 @@ public class GridViewSort<T>
88
private bool _sortedAscending;
99
private string _columnName;
1010

11-
public GridViewSort(string ColumnName, bool SortedAscending)
11+
public GridViewSort(string columnName, bool sortedAscending)
1212
{
13-
_columnName = ColumnName;
14-
_sortedAscending = SortedAscending;
13+
_columnName = columnName;
14+
_sortedAscending = sortedAscending;
1515
}
1616

17-
public IEnumerable<T> Sort(IEnumerable<T> Items, string ColumnName)
17+
public IEnumerable<T> Sort(IEnumerable<T> items, string columnName)
1818
{
19-
if (ColumnName == _columnName && _sortedAscending)
19+
if (columnName == _columnName && _sortedAscending)
2020
{
2121
_sortedAscending = false;
22-
var test = Items.Select(x => x.GetType().GetProperty(ColumnName).GetValue(x));
23-
return Items.OrderByDescending(x => x.GetType().GetProperty(ColumnName).GetValue(x));
22+
return items.OrderByDescending(x => x.GetType().GetProperty(columnName).GetValue(x));
2423
}
2524
else
2625
{
27-
_columnName = ColumnName;
26+
_columnName = columnName;
2827
_sortedAscending = true;
29-
return Items.OrderBy(x => x.GetType().GetProperty(ColumnName).GetValue(x));
28+
return items.OrderBy(x => x.GetType().GetProperty(columnName).GetValue(x));
3029
}
3130
}
3231
}

RetailCoder.VBE/UI/RubberduckUI.Designer.cs

Lines changed: 28 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

RetailCoder.VBE/UI/RubberduckUI.fr.resx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1105,4 +1105,13 @@ Attention: les valeurs personnalisées seront perdues.</value>
11051105
<value>{0} problèmes</value>
11061106
<comment>{0}=number</comment>
11071107
</data>
1108+
<data name="TodoSettings_TextLabel" xml:space="preserve">
1109+
<value>z Text:</value>
1110+
</data>
1111+
<data name="TodoSettings_Priority" xml:space="preserve">
1112+
<value>z Priority</value>
1113+
</data>
1114+
<data name="TodoSettings_Text" xml:space="preserve">
1115+
<value>z Text</value>
1116+
</data>
11081117
</root>

RetailCoder.VBE/UI/RubberduckUI.resx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1107,4 +1107,13 @@ Are you sure you want to proceed with this rename?</value>
11071107
<value>{0} issues</value>
11081108
<comment>{0}=number</comment>
11091109
</data>
1110+
<data name="TodoSettings_TextLabel" xml:space="preserve">
1111+
<value>Text:</value>
1112+
</data>
1113+
<data name="TodoSettings_Priority" xml:space="preserve">
1114+
<value>Priority</value>
1115+
</data>
1116+
<data name="TodoSettings_Text" xml:space="preserve">
1117+
<value>Text</value>
1118+
</data>
11101119
</root>

RetailCoder.VBE/UI/RubberduckUI.sv.resx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1090,4 +1090,13 @@ Varning: Alla anpassade inställningar kommer att försvinna.</value>
10901090
<data name="CodeInspections_NumberOfIssues_Singular" xml:space="preserve">
10911091
<value>{0} problem</value>
10921092
</data>
1093+
<data name="TodoSettings_TextLabel" xml:space="preserve">
1094+
<value>z Text:</value>
1095+
</data>
1096+
<data name="TodoSettings_Priority" xml:space="preserve">
1097+
<value>z Priority</value>
1098+
</data>
1099+
<data name="TodoSettings_Text" xml:space="preserve">
1100+
<value>z Text</value>
1101+
</data>
10931102
</root>

0 commit comments

Comments
 (0)