@@ -10,17 +10,17 @@ namespace Rubberduck.VBEditor.SafeComWrappers.VBA
10
10
{
11
11
public class VBProjects : SafeEventedComWrapper < VB . VBProjects , VB . _dispVBProjectsEvents > , IVBProjects , VB . _dispVBProjectsEvents
12
12
{
13
- public VBProjects ( VB . VBProjects target , bool rewrapping = false )
13
+ public VBProjects ( VB . VBProjects target , bool rewrapping = false )
14
14
: base ( target , rewrapping )
15
- {
15
+ {
16
16
}
17
17
18
18
public int Count => IsWrappingNullReference ? 0 : Target . Count ;
19
19
20
20
public IVBE VBE => new VBE ( IsWrappingNullReference ? null : Target . VBE ) ;
21
21
22
22
public IVBE Parent => new VBE ( IsWrappingNullReference ? null : Target . Parent ) ;
23
-
23
+
24
24
public IVBProject Add ( ProjectType type )
25
25
{
26
26
return new VBProject ( IsWrappingNullReference ? null : Target . Add ( ( VB . vbext_ProjectType ) type ) ) ;
@@ -32,7 +32,7 @@ public void Remove(IVBProject project)
32
32
{
33
33
return ;
34
34
}
35
- Target . Remove ( ( VB . VBProject ) project . Target ) ;
35
+ Target . Remove ( ( VB . VBProject ) project . Target ) ;
36
36
}
37
37
38
38
public IVBProject Open ( string path )
@@ -66,28 +66,22 @@ public bool Equals(IVBProjects other)
66
66
67
67
public override int GetHashCode ( )
68
68
{
69
- return IsWrappingNullReference ? 0
69
+ return IsWrappingNullReference ? 0
70
70
: HashCode . Compute ( Target ) ;
71
71
}
72
72
73
73
#region Events
74
-
74
+
75
75
public event EventHandler < ProjectEventArgs > ProjectAdded ;
76
76
void VB . _dispVBProjectsEvents . ItemAdded ( [ MarshalAs ( UnmanagedType . Interface ) , In ] VB . VBProject VBProject )
77
77
{
78
- if ( IsInDesignMode ( ) && VBProject . Protection == VB . vbext_ProjectProtection . vbext_pp_none )
79
- {
80
- OnDispatch ( ProjectAdded , VBProject , true ) ;
81
- }
78
+ OnDispatch ( ProjectAdded , VBProject , true ) ;
82
79
}
83
80
84
81
public event EventHandler < ProjectEventArgs > ProjectRemoved ;
85
82
void VB . _dispVBProjectsEvents . ItemRemoved ( [ MarshalAs ( UnmanagedType . Interface ) , In ] VB . VBProject VBProject )
86
83
{
87
- if ( IsInDesignMode ( ) && VBProject . Protection == VB . vbext_ProjectProtection . vbext_pp_none )
88
- {
89
- OnDispatch ( ProjectRemoved , VBProject ) ;
90
- }
84
+ OnDispatch ( ProjectRemoved , VBProject ) ;
91
85
}
92
86
93
87
public event EventHandler < ProjectRenamedEventArgs > ProjectRenamed ;
@@ -116,17 +110,14 @@ void VB._dispVBProjectsEvents.ItemRenamed([MarshalAs(UnmanagedType.Interface), I
116
110
public event EventHandler < ProjectEventArgs > ProjectActivated ;
117
111
void VB . _dispVBProjectsEvents . ItemActivated ( [ MarshalAs ( UnmanagedType . Interface ) , In ] VB . VBProject VBProject )
118
112
{
119
- if ( IsInDesignMode ( ) && VBProject . Protection == VB . vbext_ProjectProtection . vbext_pp_none )
120
- {
121
- OnDispatch ( ProjectActivated , VBProject ) ;
122
- }
113
+ OnDispatch ( ProjectActivated , VBProject ) ;
123
114
}
124
115
125
- private static void OnDispatch ( EventHandler < ProjectEventArgs > dispatched , VB . VBProject vbProject , bool assignId = false )
116
+ private void OnDispatch ( EventHandler < ProjectEventArgs > dispatched , VB . VBProject vbProject , bool assignId = false )
126
117
{
127
118
var project = new VBProject ( vbProject ) ;
128
119
var handler = dispatched ;
129
- if ( handler == null || vbProject . Protection == VB . vbext_ProjectProtection . vbext_pp_locked )
120
+ if ( handler == null || ! IsInDesignMode ( ) || vbProject . Protection == VB . vbext_ProjectProtection . vbext_pp_locked )
130
121
{
131
122
project . Dispose ( ) ;
132
123
return ;
@@ -149,13 +140,13 @@ private static void OnDispatch(EventHandler<ProjectEventArgs> dispatched, VB.VBP
149
140
private bool IsInDesignMode ( )
150
141
{
151
142
foreach ( var project in this )
152
- using ( project )
153
- {
154
- if ( project . Mode != EnvironmentMode . Design )
143
+ using ( project )
155
144
{
156
- return false ;
145
+ if ( project . Mode != EnvironmentMode . Design )
146
+ {
147
+ return false ;
148
+ }
157
149
}
158
- }
159
150
return true ;
160
151
}
161
152
0 commit comments