Skip to content

Commit 3eb9bfc

Browse files
committed
Merge pull request #659 from ckuhn203/sourcecontrol
Basic "Sunny day" remote functionality
2 parents b9001d2 + 2bd8955 commit 3eb9bfc

11 files changed

+340
-63
lines changed

RetailCoder.VBE/Rubberduck.csproj

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -409,7 +409,7 @@
409409
<Compile Include="UI\SourceControl\IProviderPresenter.cs" />
410410
<Compile Include="UI\SourceControl\ISettingsView.cs" />
411411
<Compile Include="UI\SourceControl\ISourceControlView.cs" />
412-
<Compile Include="UI\SourceControl\IUnSyncedCommitsView.cs" />
412+
<Compile Include="UI\SourceControl\IUnsyncedCommitsView.cs" />
413413
<Compile Include="UI\SourceControl\MergeForm.cs">
414414
<SubType>Form</SubType>
415415
</Compile>
@@ -451,6 +451,7 @@
451451
<Compile Include="UI\SourceControl\UnSyncedCommitsControl.Designer.cs">
452452
<DependentUpon>UnSyncedCommitsControl.cs</DependentUpon>
453453
</Compile>
454+
<Compile Include="UI\SourceControl\UnsyncedCommitsPresenter.cs" />
454455
<Compile Include="UI\ToDoItems\IToDoExplorerWindow.cs" />
455456
<Compile Include="Settings\IConfigurationService.cs" />
456457
<Compile Include="UI\Settings\ITodoSettingsView.cs" />

RetailCoder.VBE/UI/SourceControl/App.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ internal App(
1313
AddIn addIn,
1414
IConfigurationService<SourceControlConfiguration> configService,
1515
IChangesView changesView,
16-
IUnSyncedCommitsView unsyncedCommitsView,
16+
IUnsyncedCommitsView unsyncedCommitsView,
1717
ISettingsView settingsView,
1818
IBranchesView branchesView,
1919
ICreateBranchView createBranchView,
@@ -25,6 +25,7 @@ IMergeView mergeView
2525
var changesPresenter = new ChangesPresenter(changesView);
2626
var branchesPresenter = new BranchesPresenter(branchesView, createBranchView, deleteBranchView, mergeView);
2727
var settingsPresenter = new SettingsPresenter(settingsView, configService, new DialogFactory());
28+
var unsyncedPresenter = new UnsyncedCommitsPresenter(unsyncedCommitsView);
2829

2930
_sourceControlPresenter =
3031
new SourceControlPresenter
@@ -36,6 +37,7 @@ IMergeView mergeView
3637
changesPresenter,
3738
branchesPresenter,
3839
settingsPresenter,
40+
unsyncedPresenter,
3941
new DialogFactory(),
4042
new SourceControlProviderFactory()
4143
);
Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,18 @@
1-
namespace Rubberduck.UI.SourceControl
1+
using System;
2+
using System.Collections.Generic;
3+
using Rubberduck.SourceControl;
4+
5+
namespace Rubberduck.UI.SourceControl
26
{
3-
public interface IUnSyncedCommitsView
7+
public interface IUnsyncedCommitsView
48
{
9+
event EventHandler<EventArgs> Fetch;
10+
event EventHandler<EventArgs> Pull;
11+
event EventHandler<EventArgs> Push;
12+
event EventHandler<EventArgs> Sync;
13+
14+
string CurrentBranch { get; set; }
15+
IList<ICommit> IncomingCommits { get; set; }
16+
IList<ICommit> OutgoingCommits { get; set; }
517
}
618
}

RetailCoder.VBE/UI/SourceControl/SourceControlPanel.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public SourceControlPanel()
1313
InitializeComponent();
1414
}
1515

16-
public SourceControlPanel(IBranchesView branchesView, IChangesView changesView, IUnSyncedCommitsView commitsView, ISettingsView settingsView)
16+
public SourceControlPanel(IBranchesView branchesView, IChangesView changesView, IUnsyncedCommitsView commitsView, ISettingsView settingsView)
1717
:this()
1818
{
1919
((Control)branchesView).Dock = DockStyle.Fill;

RetailCoder.VBE/UI/SourceControl/SourceControlPresenter.cs

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ public class SourceControlPresenter : DockablePresenterBase
1212
private readonly IChangesPresenter _changesPresenter;
1313
private readonly IBranchesPresenter _branchesPresenter;
1414
private readonly ISettingsPresenter _settingsPresenter;
15+
private readonly IUnsyncedCommitsPresenter _unsyncedPresenter;
16+
1517
private readonly IFolderBrowserFactory _folderBrowserFactory;
1618
private readonly ISourceControlProviderFactory _providerFactory;
1719
private readonly ISourceControlView _view;
@@ -21,17 +23,7 @@ public class SourceControlPresenter : DockablePresenterBase
2123
private ISourceControlProvider _provider;
2224

2325
public SourceControlPresenter
24-
(
25-
VBE vbe,
26-
AddIn addin,
27-
IConfigurationService<SourceControlConfiguration> configService,
28-
ISourceControlView view,
29-
IChangesPresenter changesPresenter,
30-
IBranchesPresenter branchesPresenter,
31-
ISettingsPresenter settingsPresenter,
32-
IFolderBrowserFactory folderBrowserFactory,
33-
ISourceControlProviderFactory providerFactory
34-
)
26+
(VBE vbe, AddIn addin, IConfigurationService<SourceControlConfiguration> configService, ISourceControlView view, IChangesPresenter changesPresenter, IBranchesPresenter branchesPresenter, ISettingsPresenter settingsPresenter, IUnsyncedCommitsPresenter unsyncedPresenter, IFolderBrowserFactory folderBrowserFactory, ISourceControlProviderFactory providerFactory)
3527
: base(vbe, addin, view)
3628
{
3729
_configService = configService;
@@ -41,6 +33,8 @@ ISourceControlProviderFactory providerFactory
4133

4234
_branchesPresenter = branchesPresenter;
4335
_settingsPresenter = settingsPresenter;
36+
_unsyncedPresenter = unsyncedPresenter;
37+
4438
_folderBrowserFactory = folderBrowserFactory;
4539
_providerFactory = providerFactory;
4640
_branchesPresenter.BranchChanged += _branchesPresenter_BranchChanged;
@@ -150,6 +144,7 @@ private void SetChildPresenterSourceControlProviders(ISourceControlProvider prov
150144
_branchesPresenter.Provider = provider;
151145
_changesPresenter.Provider = provider;
152146
_settingsPresenter.Provider = provider;
147+
_unsyncedPresenter.Provider = provider;
153148

154149
_branchesPresenter.RefreshView();
155150
_changesPresenter.Refresh();

RetailCoder.VBE/UI/SourceControl/UnSyncedCommitsControl.Designer.cs

Lines changed: 30 additions & 39 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)