diff options
author | Lluis Sanchez <lluis@novell.com> | 2007-07-03 17:46:37 +0400 |
---|---|---|
committer | Lluis Sanchez <lluis@novell.com> | 2007-07-03 17:46:37 +0400 |
commit | 62e6d8921e4d1554d9513b9fffcc4f8ef75bbd3d (patch) | |
tree | e1fbf5750739e061e4a01572cdaac6a15e1b45d0 /Mono.Addins/Mono.Addins.Description/AddinDescription.cs | |
parent | c5e47b77c401dc3117a3779c028c25d435a19c71 (diff) |
* Mono.Addins/AddinInfo.cs, Mono.Addins/Addin.cs,
Mono.Addins.Description/AddinDescription.cs,
Mono.Addins.Database/DatabaseConfiguration.cs,
Mono.Addins.Database/AddinDatabase.cs: Added support for add-ins
which are disabled by default.
* Mono.Addins.Database/AddinScanner.cs: Minor fix.
svn path=/trunk/mono-addins/; revision=81261
Diffstat (limited to 'Mono.Addins/Mono.Addins.Description/AddinDescription.cs')
-rw-r--r-- | Mono.Addins/Mono.Addins.Description/AddinDescription.cs | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/Mono.Addins/Mono.Addins.Description/AddinDescription.cs b/Mono.Addins/Mono.Addins.Description/AddinDescription.cs index 3750cab..a4e0493 100644 --- a/Mono.Addins/Mono.Addins.Description/AddinDescription.cs +++ b/Mono.Addins/Mono.Addins.Description/AddinDescription.cs @@ -61,6 +61,7 @@ namespace Mono.Addins.Description bool isroot; bool hasUserId; bool canWrite = true; + bool defaultEnabled = true; ModuleDescription mainModule; ModuleCollection optionalModules; @@ -170,6 +171,11 @@ namespace Mono.Addins.Description set { isroot = value; } } + public bool EnabledByDefault { + get { return defaultEnabled; } + set { defaultEnabled = value; } + } + internal bool HasUserId { get { return hasUserId; } set { hasUserId = value; } @@ -388,6 +394,11 @@ namespace Mono.Addins.Description elem.SetAttribute ("compatVersion", compatVersion); else elem.RemoveAttribute ("compatVersion"); + + if (defaultEnabled) + elem.RemoveAttribute ("defaultEnabled"); + else + elem.SetAttribute ("defaultEnabled", "false"); if (author != null && author.Length > 0) elem.SetAttribute ("author", author); @@ -463,7 +474,14 @@ namespace Mono.Addins.Description config.description = elem.GetAttribute ("description"); config.category = elem.GetAttribute ("category"); config.basePath = elem.GetAttribute ("basePath"); - config.isroot = elem.GetAttribute ("isroot") == "true" || elem.GetAttribute ("isroot") == "yes"; + + string s = elem.GetAttribute ("isRoot"); + if (s.Length == 0) s = elem.GetAttribute ("isroot"); + config.isroot = s == "true" || s == "yes"; + + s = elem.GetAttribute ("defaultEnabled"); + config.defaultEnabled = s.Length == 0 || s == "true" || s == "yes"; + if (config.id.Length > 0) config.hasUserId = true; @@ -613,6 +631,7 @@ namespace Mono.Addins.Description writer.WriteValue ("category", category); writer.WriteValue ("basePath", basePath); writer.WriteValue ("sourceAddinFile", sourceAddinFile); + writer.WriteValue ("defaultEnabled", defaultEnabled); writer.WriteValue ("MainModule", MainModule); writer.WriteValue ("OptionalModules", OptionalModules); writer.WriteValue ("NodeSets", ExtensionNodeSets); @@ -636,6 +655,7 @@ namespace Mono.Addins.Description category = reader.ReadStringValue ("category"); basePath = reader.ReadStringValue ("basePath"); sourceAddinFile = reader.ReadStringValue ("sourceAddinFile"); + defaultEnabled = reader.ReadBooleanValue ("defaultEnabled"); mainModule = (ModuleDescription) reader.ReadValue ("MainModule"); optionalModules = (ModuleCollection) reader.ReadValue ("OptionalModules", new ModuleCollection (this)); nodeSets = (ExtensionNodeSetCollection) reader.ReadValue ("NodeSets", new ExtensionNodeSetCollection (this)); |