Skip to content

Commit 6aec7d3

Browse files
committed
Clean up ReorderParameters refactoring
1 parent bfd4097 commit 6aec7d3

File tree

2 files changed

+11
-7
lines changed

2 files changed

+11
-7
lines changed

Rubberduck.Core/UI/Refactorings/ReorderParameters/ReorderParametersPresenter.cs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
namespace Rubberduck.UI.Refactorings.ReorderParameters
99
{
10-
internal class ReorderParametersPresenter : RefactoringPresenterBase<ReorderParametersModel, ReorderParametersDialog, ReorderParametersView, ReorderParametersViewModel>, IReorderParametersPresenter
10+
public class ReorderParametersPresenter : RefactoringPresenterBase<ReorderParametersModel, IRefactoringDialog<ReorderParametersModel, IRefactoringView<ReorderParametersModel>, IRefactoringViewModel<ReorderParametersModel>>, IRefactoringView<ReorderParametersModel>, IRefactoringViewModel<ReorderParametersModel>>, IReorderParametersPresenter
1111
{
1212
private readonly IMessageBox _messageBox;
1313

@@ -28,15 +28,12 @@ public override ReorderParametersModel Show()
2828
return null;
2929
}
3030

31-
ViewModel.Parameters = new ObservableCollection<Parameter>(Model.Parameters);
32-
3331
base.Show();
3432
if (DialogResult != RefactoringDialogResult.Execute)
3533
{
3634
return null;
3735
}
3836

39-
Model.Parameters = ViewModel.Parameters.ToList();
4037
return Model;
4138
}
4239
}

Rubberduck.Core/UI/Refactorings/ReorderParameters/ReorderParametersViewModel.cs

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ public ReorderParametersViewModel(RubberduckParserState state, ReorderParameters
2222
MoveParameterUpCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => MoveParameterUp((Parameter)param));
2323
MoveParameterDownCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => MoveParameterDown((Parameter)param));
2424
_messageBox = messageBox;
25+
_parameters = new ObservableCollection<Parameter>(model.Parameters);
2526

2627
model.ConfirmReorderParameter += ConfirmReorderParameterHandler;
2728
}
@@ -33,13 +34,19 @@ private void ConfirmReorderParameterHandler(object sender, Rubberduck.Refactorin
3334

3435
public RubberduckParserState State { get; }
3536

37+
private void UpdateModelParameters()
38+
{
39+
Model.Parameters = _parameters.ToList();
40+
}
41+
3642
private ObservableCollection<Parameter> _parameters;
3743
public ObservableCollection<Parameter> Parameters
3844
{
3945
get => _parameters;
4046
set
4147
{
4248
_parameters = value;
49+
UpdateModelParameters();
4350
OnPropertyChanged();
4451
}
4552
}
@@ -48,7 +55,7 @@ public string SignaturePreview
4855
{
4956
get
5057
{
51-
// if there is only one parameter, we remove it without displaying the UI; this gets called anyway as part of the initialization process
58+
// if there is only one parameter, we reorder it without displaying the UI; this gets called anyway as part of the initialization process
5259
if (Parameters == null)
5360
{
5461
return string.Empty;
@@ -171,7 +178,7 @@ private void MoveParameterUp(Parameter parameter)
171178
{
172179
var currentIndex = Parameters.IndexOf(parameter);
173180
Parameters.Move(currentIndex, currentIndex - 1);
174-
181+
UpdateModelParameters();
175182
OnPropertyChanged(nameof(SignaturePreview));
176183
}
177184
}
@@ -182,7 +189,7 @@ private void MoveParameterDown(Parameter parameter)
182189
{
183190
var currentIndex = Parameters.IndexOf(parameter);
184191
Parameters.Move(currentIndex, currentIndex + 1);
185-
192+
UpdateModelParameters();
186193
OnPropertyChanged(nameof(SignaturePreview));
187194
}
188195
}

0 commit comments

Comments
 (0)