Fix bugs in sizing TableLayoutPanel (Xamarin bug 18638)
[mono.git] / mcs / class / System.ComponentModel.Composition / Tests / ComponentModelUnitTest / System / ComponentModel / Composition / Factories / CatalogFactory.DisposableComposablePartCatalog.cs
1 // -----------------------------------------------------------------------\r
2 // Copyright (c) Microsoft Corporation.  All rights reserved.\r
3 // -----------------------------------------------------------------------\r
4 using System;\r
5 using System.Collections.Generic;\r
6 using System.ComponentModel.Composition.Primitives;\r
7 using System.Linq;\r
8 using Microsoft.VisualStudio.TestTools.UnitTesting;\r
9 \r
10 namespace System.ComponentModel.Composition.Factories\r
11 {\r
12     partial class CatalogFactory\r
13     {\r
14         // NOTE: Do not add any more behavior to this class, as ComposablePartCatalogTests.cs \r
15         // uses this to verify default behavior of the base class.\r
16         private class DisposableComposablePartCatalog : ComposablePartCatalog\r
17         {\r
18             private readonly Action<bool> _disposeCallback;\r
19 \r
20             public DisposableComposablePartCatalog(Action<bool> disposeCallback)\r
21             {\r
22                 Assert.IsNotNull(disposeCallback);\r
23 \r
24                 _disposeCallback = disposeCallback;\r
25             }\r
26 \r
27             ~DisposableComposablePartCatalog()\r
28             {\r
29                 Dispose(false);\r
30             }\r
31 \r
32             public override IQueryable<ComposablePartDefinition> Parts\r
33             {\r
34                 get { throw new NotImplementedException(); }\r
35             }\r
36 \r
37             protected override void Dispose(bool disposing)\r
38             {\r
39                 _disposeCallback(disposing);\r
40 \r
41                 base.Dispose(disposing);\r
42             }\r
43         }\r
44     }\r
45 }