@@ -36,12 +36,10 @@ class Manager {
36
36
return (host is IServiceProvider) ? new VSManager(host, template) : new Manager(host, template);
37
37
}
38
38
39
-
40
- public IDisposable StartNewFile(String name) {
39
+ public void StartNewFile(String name) {
41
40
if (name == null)
42
41
throw new ArgumentNullException("name");
43
42
CurrentBlock = new Block { Name = name };
44
- return new StartNewFileBlock(this);
45
43
}
46
44
47
45
public void StartFooter() {
@@ -154,7 +152,7 @@ class Manager {
154
152
projectSyncAction = (IEnumerable<String> keepFileNames) => ProjectSync(templateProjectItem, keepFileNames);
155
153
}
156
154
157
- private void ProjectSync(EnvDTE.ProjectItem templateProjectItem, IEnumerable<String> keepFileNames) {
155
+ private static void ProjectSync(EnvDTE.ProjectItem templateProjectItem, IEnumerable<String> keepFileNames) {
158
156
var keepFileNameSet = new HashSet<String>(keepFileNames);
159
157
var projectFiles = new Dictionary<String, EnvDTE.ProjectItem>();
160
158
var originalFilePrefix = Path.GetFileNameWithoutExtension(templateProjectItem.get_FileNames(0)) + ".";
@@ -169,18 +167,7 @@ class Manager {
169
167
// Add missing files to the project
170
168
foreach(String fileName in keepFileNameSet)
171
169
if (!projectFiles.ContainsKey(fileName))
172
- {
173
- // Remove any "..\" in path when outputting to parent folder by getting full path.
174
- // Source: http://stackoverflow.com/a/4796339/134761
175
- string fileNameFullPath = Path.GetFullPath(new Uri(fileName).LocalPath);
176
-
177
- // Output as item in same folder as template file.
178
- //templateProjectItem.Collection.AddFromFile(fileNameFullPath);
179
-
180
- // Output as nested item under template file
181
- templateProjectItem.ProjectItems.AddFromFile(fileNameFullPath);
182
- }
183
-
170
+ templateProjectItem.ProjectItems.AddFromFile(fileName);
184
171
}
185
172
186
173
private void CheckoutFileIfRequired(String fileName) {
@@ -189,19 +176,4 @@ class Manager {
189
176
checkOutAction.EndInvoke(checkOutAction.BeginInvoke(fileName, null, null));
190
177
}
191
178
}
192
-
193
- private class StartNewFileBlock : IDisposable
194
- {
195
- private readonly Manager _manager;
196
-
197
- public StartNewFileBlock(Manager manager)
198
- {
199
- _manager = manager;
200
- }
201
-
202
- public void Dispose()
203
- {
204
- _manager.EndBlock();
205
- }
206
- }
207
179
} #>
0 commit comments