1 // SolutionItemDescriptor.cs
6 //Copyright (c) 2007 Novell, Inc (http://www.novell.com)
8 // Permission is hereby granted, free of charge, to any person obtaining a copy
9 // of this software and associated documentation files (the "Software"), to deal
10 // in the Software without restriction, including without limitation the rights
11 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12 // copies of the Software, and to permit persons to whom the Software is
13 // furnished to do so, subject to the following conditions:
15 // The above copyright notice and this permission notice shall be included in
16 // all copies or substantial portions of the Software.
18 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21 // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
29 using MonoDevelop
.Projects
;
30 using MonoDevelop
.Core
;
32 namespace MonoDevelop
.DesignerSupport
.Projects
34 class SolutionItemDescriptor
: CustomDescriptor
38 public SolutionItemDescriptor (SolutionItem entry
)
43 [LocalizedCategory ("Misc")]
44 [LocalizedDisplayName ("Name")]
45 [LocalizedDescription ("Name of the solution item.")]
47 get { return entry.Name; }
48 set { entry.Name = value; }
51 [LocalizedCategory ("Misc")]
52 [LocalizedDisplayName ("File Path")]
53 [LocalizedDescription ("File path of the solution item.")]
54 public string FilePath
{
56 if (entry
is SolutionEntityItem
)
57 return ((SolutionEntityItem
) entry
).FileName
;
63 [LocalizedCategory ("Misc")]
64 [LocalizedDisplayName ("Root Directory")]
65 [LocalizedDescription ("Root directory of source files and projects. File paths will be shown relative to this directory.")]
66 public string RootDirectory
{
68 return entry
.BaseDirectory
;
71 if (string.IsNullOrEmpty (value) || System
.IO
.Directory
.Exists (value))
72 entry
.BaseDirectory
= value;