[reflection] Coop handles icalls in System.Reflection and System.RuntimeTypeHandle...
[mono.git] / mcs / class / referencesource / System.Activities.Presentation / System.Activities.Presentation / System / Activities / Presentation / EditingContextUtilities.cs
1 //----------------------------------------------------------------
2 // <copyright company="Microsoft Corporation">
3 //     Copyright (c) Microsoft Corporation.  All rights reserved.
4 // </copyright>
5 //----------------------------------------------------------------
6
7 namespace System.Activities.Presentation
8 {
9     using System.Activities.Presentation.Hosting;
10     using System.Activities.Presentation.Model;
11     using System.Activities.Presentation.View;
12     using System.Runtime;
13
14     internal static class EditingContextUtilities
15     {
16         public static bool IsReadOnly(EditingContext editingContext)
17         {
18             Fx.Assert(editingContext != null, "editingContext should not be null");
19
20             return editingContext.Items.GetValue<ReadOnlyState>().IsReadOnly;
21         }
22
23         public static ModelItem GetSingleSelectedModelItem(EditingContext editingContext)
24         {
25             Fx.Assert(editingContext != null, "editingContext should not be null");
26
27             Selection selection = editingContext.Items.GetValue<Selection>();
28             if (selection.SelectionCount == 1)
29             {
30                 return selection.PrimarySelection;
31             }
32             else
33             {
34                 return null;
35             }
36         }
37     }
38 }