Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono-tools.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Habersack <grendel@twistedcode.net>2010-02-12 03:41:03 +0300
committerMarek Habersack <grendel@twistedcode.net>2010-02-12 03:41:03 +0300
commitfec751c396fcb431b9ea0cff737383ed0c1a6748 (patch)
treee7f583c5b8ab024e75850a2a5ec5841f3b8c30cc /gui-compare
parentd1e1804ab501b097b29dc8903803cf59364603b1 (diff)
2010-02-12 Marek Habersack <mhabersack@novell.com>
* Comparison.cs: added ExtraInfo field and a new constructor which takes extra info as one of the parameters. * Masterinfo.cs: exposed property collections in the XMLAttributeProperties and XMLAttributes classes. * gui-compare.in: added $MONO_OPTIONS to the mono command line * Makefile.am (guicompare_DATA): install .mdb as well * InfoManager.cs: CompareDefinition.Title now includes the framework profile name. Profiles with no entries aren't added to the Compare menu. * Metadata.cs: added ExtraInfo property. * CecilMetadata.cs, MasterMetadata.cs: added support for reading type forwarders (the TypeForwardedTo attribute). Added support for gathering and displaying information about custom attribute properties. * MainWindow.cs: summary label replaced with a TextView. Added Pango markup to TextView tags conversion method. svn path=/trunk/mono-tools/; revision=151572
Diffstat (limited to 'gui-compare')
-rw-r--r--gui-compare/CecilMetadata.cs59
-rw-r--r--gui-compare/ChangeLog26
-rw-r--r--gui-compare/Comparison.cs13
-rw-r--r--gui-compare/Config.cs6
-rw-r--r--gui-compare/InfoManager.cs16
-rw-r--r--gui-compare/MainWindow.cs234
-rw-r--r--gui-compare/Makefile.am2
-rw-r--r--gui-compare/MasterMetadata.cs42
-rw-r--r--gui-compare/Masterinfo.cs61
-rw-r--r--gui-compare/Metadata.cs10
-rw-r--r--gui-compare/gtk-gui/GuiCompare.CustomCompare.cs265
-rw-r--r--gui-compare/gtk-gui/MainWindow.cs902
-rw-r--r--gui-compare/gtk-gui/generated.cs160
-rw-r--r--gui-compare/gtk-gui/gui.stetic29
-rw-r--r--gui-compare/gtk-gui/guicompare.ProviderSelector.cs192
-rw-r--r--gui-compare/gui-compare.in2
16 files changed, 1171 insertions, 848 deletions
diff --git a/gui-compare/CecilMetadata.cs b/gui-compare/CecilMetadata.cs
index 1b4ae663..5ece7c52 100644
--- a/gui-compare/CecilMetadata.cs
+++ b/gui-compare/CecilMetadata.cs
@@ -24,7 +24,9 @@
//
using System;
+using System.Collections;
using System.Collections.Generic;
+using System.Runtime.CompilerServices;
using System.IO;
using System.Text;
@@ -353,16 +355,16 @@ namespace GuiCompare {
public class CecilAssembly : CompAssembly {
public CecilAssembly (string path)
- : base (Path.GetFileName (path))
+ : base(Path.GetFileName (path))
{
var namespaces = new Dictionary<string, Dictionary<string, TypeDefinition>> ();
- var assembly = AssemblyFactory.GetAssembly(path);
-
+ var assembly = AssemblyFactory.GetAssembly (path);
+
foreach (TypeDefinition t in assembly.MainModule.Types) {
if (t.Name == "<Module>")
continue;
-
+
if (t.IsNotPublic)
continue;
@@ -382,14 +384,21 @@ namespace GuiCompare {
namespaces.Add (t.Namespace, ns);
}
- ns [t.Name] = t;
+ ns[t.Name] = t;
}
namespace_list = new List<CompNamed> ();
foreach (string ns_name in namespaces.Keys)
- namespace_list.Add (new CecilNamespace (ns_name, namespaces [ns_name]));
+ namespace_list.Add (new CecilNamespace (ns_name, namespaces[ns_name]));
attributes = CecilUtils.GetCustomAttributes (assembly, todos);
+
+ // TypeForwardedToAttributes are created by checking if assembly contains
+ // extern forwarder types and using them to construct fake custom attributes
+ foreach (TypeReference t in assembly.MainModule.ExternTypes) {
+ if (((uint)t.Resolve ().Attributes & 0x200000u) != 0)
+ attributes.Add (new PseudoCecilAttribute (t));
+ }
}
public override List<CompNamed> GetNamespaces()
@@ -1124,6 +1133,44 @@ namespace GuiCompare {
public CecilAttribute (CustomAttribute ca)
: base (ca.Constructor.DeclaringType.FullName)
{
+ var sb = new StringBuilder ("[" + ca.Constructor.DeclaringType.FullName);
+
+ IList cparams = ca.ConstructorParameters;
+ if (cparams != null && cparams.Count > 0) {
+ bool first = true;
+ foreach (object o in cparams) {
+ if (first) {
+ sb.Append (" (");
+ first = false;
+ } else
+ sb.Append (", ");
+
+ sb.Append (FormatValue (o));
+ }
+ sb.Append (")]");
+ }
+
+ ExtraInfo = sb.ToString ();
+ }
+
+ string FormatValue (object o)
+ {
+ if (o == null)
+ return "null";
+
+ if (o is string)
+ return "\"" + o + "\"";
+
+ return o.ToString ();
+ }
+ }
+
+ public class PseudoCecilAttribute : CompAttribute
+ {
+ public PseudoCecilAttribute (TypeReference tref)
+ : base (typeof (TypeForwardedToAttribute).FullName)
+ {
+ ExtraInfo = "[assembly: TypeForwardedToAttribute (typeof (" + tref.ToString () + "))]";
}
}
diff --git a/gui-compare/ChangeLog b/gui-compare/ChangeLog
index 72e10392..91b28053 100644
--- a/gui-compare/ChangeLog
+++ b/gui-compare/ChangeLog
@@ -1,3 +1,29 @@
+2010-02-12 Marek Habersack <mhabersack@novell.com>
+
+ * Comparison.cs: added ExtraInfo field and a new constructor which
+ takes extra info as one of the parameters.
+
+ * Masterinfo.cs: exposed property collections in the
+ XMLAttributeProperties and XMLAttributes classes.
+
+ * gui-compare.in: added $MONO_OPTIONS to the mono command line
+
+ * Makefile.am (guicompare_DATA): install .mdb as well
+
+ * InfoManager.cs: CompareDefinition.Title now includes the
+ framework profile name.
+ Profiles with no entries aren't added to the Compare menu.
+
+ * Metadata.cs: added ExtraInfo property.
+
+ * CecilMetadata.cs, MasterMetadata.cs: added support for reading
+ type forwarders (the TypeForwardedTo attribute).
+ Added support for gathering and displaying information about
+ custom attribute properties.
+
+ * MainWindow.cs: summary label replaced with a TextView.
+ Added Pango markup to TextView tags conversion method.
+
2010-02-10 Marek Safar <marek.safar@gmail.com>
* MasterMetadata.cs: Ignore ComVisible.
diff --git a/gui-compare/Comparison.cs b/gui-compare/Comparison.cs
index 246430f9..e22a58d1 100644
--- a/gui-compare/Comparison.cs
+++ b/gui-compare/Comparison.cs
@@ -43,13 +43,19 @@ namespace GuiCompare {
}
public ComparisonNode (CompType type, string displayName, string typeName)
+ : this (type, displayName, typeName, null)
+ {
+ }
+
+ public ComparisonNode (CompType type, string displayName, string typeName, string extraInfo)
{
Type = type;
Name = displayName;
TypeName = typeName;
- Children = new List<ComparisonNode>();
- Messages = new List<string>();
- Todos = new List<string>();
+ ExtraInfo = extraInfo;
+ Children = new List<ComparisonNode> ();
+ Messages = new List<string> ();
+ Todos = new List<string> ();
}
public void AddChild (ComparisonNode node)
@@ -169,6 +175,7 @@ namespace GuiCompare {
public readonly string Name;
public readonly string TypeName;
+ public readonly string ExtraInfo;
public readonly List<string> Messages;
public readonly List<string> Todos;
public bool ThrowsNIE;
diff --git a/gui-compare/Config.cs b/gui-compare/Config.cs
index 4b3c0f9a..3318d2b2 100644
--- a/gui-compare/Config.cs
+++ b/gui-compare/Config.cs
@@ -40,11 +40,11 @@ namespace GuiCompare
public class CompareDefinition {
public bool ReferenceIsInfo = true;
- public string ReferencePath = "";
+ public string ReferencePath = String.Empty;
public bool TargetIsInfo = true;
- public string TargetPath = "";
+ public string TargetPath = String.Empty;
public bool IsCustom = false;
- public string Title = "";
+ public string Title = String.Empty;
[XmlElement ("History", typeof (CompareHistory))]
public CompareHistory [] History;
diff --git a/gui-compare/InfoManager.cs b/gui-compare/InfoManager.cs
index e83ce33e..5d4c1541 100644
--- a/gui-compare/InfoManager.cs
+++ b/gui-compare/InfoManager.cs
@@ -500,11 +500,11 @@ namespace GuiCompare
/// <param name="assemblyname">
/// The name of the assembly to compare, in this case "mscorlib"
/// </param>
- void StartPresetCompare (string assemblyfile, string profile, string assemblyname)
+ void StartPresetCompare (string assemblyfile, string profile, string assemblyname, string groupName)
{
Ensure (profile, assemblyname, delegate (string masterinfo){
CompareDefinition cd = new CompareDefinition (true, masterinfo, false, assemblyfile);
- cd.Title = assemblyname;
+ cd.Title = assemblyname + " (" + groupName + ")";
main.Config.AddRecent (cd);
PopulateRecent ();
main.Config.Save ();
@@ -540,7 +540,7 @@ namespace GuiCompare
if (e == String.Empty){
// Avoid inserting separators twice
- if (child is SeparatorMenuItem)
+ if (child is SeparatorMenuItem || sub.Children.Length == 0)
continue;
child = new SeparatorMenuItem ();
} else {
@@ -578,14 +578,16 @@ namespace GuiCompare
string element = e;
child = new MenuItem (e);
child.Activated += delegate {
- StartPresetCompare (assemblyfile, collection, element);
+ StartPresetCompare (assemblyfile, collection, element, caption);
};
}
sub.Add (child);
}
-
- item.ShowAll ();
- container.Add (item);
+
+ if (sub.Children.Length > 0) {
+ item.ShowAll ();
+ container.Add (item);
+ }
}
/// <summary>
diff --git a/gui-compare/MainWindow.cs b/gui-compare/MainWindow.cs
index 015164aa..8e857777 100644
--- a/gui-compare/MainWindow.cs
+++ b/gui-compare/MainWindow.cs
@@ -30,6 +30,7 @@ using Gtk;
using GLib;
using System.Threading;
using System.Text;
+using System.Text.RegularExpressions;
using GuiCompare;
public partial class MainWindow: Gtk.Window
@@ -37,7 +38,8 @@ public partial class MainWindow: Gtk.Window
InfoManager info_manager;
Func<CompAssembly> reference_loader, target_loader;
CompareContext context;
-
+
+ static readonly Regex markupRegex = new Regex (@"<(?:[^""']+?|.+?(?:""|').*?(?:""|')?.*?)*?>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
static Gdk.Pixbuf classPixbuf, delegatePixbuf, enumPixbuf;
static Gdk.Pixbuf eventPixbuf, fieldPixbuf, interfacePixbuf;
static Gdk.Pixbuf methodPixbuf, namespacePixbuf, propertyPixbuf;
@@ -99,9 +101,9 @@ public partial class MainWindow: Gtk.Window
Gdk.Color.Parse ("#ff0000", ref red);
Gdk.Color.Parse ("#00ff00", ref green);
Gdk.Color.Parse ("#000000", ref black);
- }
-
- public MainWindow (): base (Gtk.WindowType.Toplevel)
+ }
+
+ public MainWindow () : base(Gtk.WindowType.Toplevel)
{
Build ();
notebook1.Page = 1;
@@ -185,38 +187,61 @@ public partial class MainWindow: Gtk.Window
countsColumn.AddAttribute (todoTextCell, "text", (int)TreeCol.TodoText);
countsColumn.AddAttribute (niexPixbufCell, "pixbuf", (int)TreeCol.NiexIcon);
countsColumn.AddAttribute (niexTextCell, "text", (int)TreeCol.NiexText);
-
+
+ CreateTags (AdditionalInfoText.Buffer);
+
tree.Selection.Changed += delegate (object sender, EventArgs e) {
Gtk.TreeIter iter;
if (tree.Selection.GetSelected (out iter)) {
List<string> msgs = null;
ComparisonNode n = tree.Model.GetValue (iter, (int)TreeCol.Node) as ComparisonNode;
- StringBuilder sb = new StringBuilder();
+ TextBuffer buffer = AdditionalInfoText.Buffer;
+ bool showInfo = false;
+ TextIter textIter = TextIter.Zero;
+
+ buffer.Clear ();
+
+ if (!String.IsNullOrEmpty (n.ExtraInfo)) {
+ showInfo = true;
+ textIter = buffer.StartIter;
+
+ buffer.InsertWithTagsByName (ref textIter, "Additional information:\n", "bold");
+ InsertWithMarkup (buffer, ref textIter, "\t" + n.ExtraInfo + "\n");
+ }
if (n != null) msgs = n.Messages;
if (msgs != null && msgs.Count > 0) {
- sb.Append ("<b>Errors:</b>\n");
+ if (!showInfo) {
+ showInfo = true;
+ textIter = buffer.StartIter;
+ }
+
+ buffer.InsertWithTagsByName (ref textIter, "Errors:\n", "red", "bold");
for (int i = 0; i < msgs.Count; i ++) {
- sb.AppendFormat ("\t<b>{0}</b>: {1}\n", i + 1, msgs[i]);
+ buffer.InsertWithTagsByName (ref textIter, String.Format ("\t{0}: ", i + 1), "bold");
+ InsertWithMarkup (buffer, ref textIter, msgs [i]);
}
}
if (n != null) msgs = n.Todos;
if (msgs != null && msgs.Count > 0) {
- sb.Append ("<b>TODO:</b>\n");
+ if (!showInfo) {
+ showInfo = true;
+ textIter = buffer.StartIter;
+ }
+
+ buffer.InsertWithTagsByName (ref textIter, "TODO:\n", "green", "bold");
for (int i = 0; i < msgs.Count; i ++) {
- sb.AppendFormat ("\t<b>{0}</b>: {1}\n", i + 1, msgs[i]);
+ buffer.InsertWithTagsByName (ref textIter, String.Format ("\t{0}: ", i + 1), "bold");
+ buffer.Insert (ref textIter, msgs [i]);
}
}
- if (sb.Length > 0) {
- summary.Markup = sb.ToString();
- summary.Visible = true;
- }
- else {
- summary.Visible = false;
- }
+ if (showInfo)
+ AdditionalInfoWindow.Visible = true;
+ else
+ AdditionalInfoWindow.Visible = false;
string msdnUrl = n != null ? n.MSDNUrl : null;
if (!String.IsNullOrEmpty (msdnUrl))
@@ -289,7 +314,178 @@ public partial class MainWindow: Gtk.Window
progressbar1.Adjustment.Value = value;
}
}
-
+
+ void CreateTags (TextBuffer buffer)
+ {
+ var tag = new TextTag ("bold");
+ tag.Weight = Pango.Weight.Bold;
+ buffer.TagTable.Add (tag);
+
+ tag = new TextTag ("red");
+ tag.Foreground = "darkred";
+ buffer.TagTable.Add (tag);
+
+ tag = new TextTag ("green");
+ tag.Foreground = "darkgreen";
+ buffer.TagTable.Add (tag);
+
+ tag = new TextTag ("italic");
+ tag.Style = Pango.Style.Italic;
+ buffer.TagTable.Add (tag);
+
+ tag = new TextTag ("big");
+ tag.Scale = Pango.Scale.Large;
+ buffer.TagTable.Add (tag);
+
+ tag = new TextTag ("small");
+ tag.Scale = Pango.Scale.Small;
+ buffer.TagTable.Add (tag);
+
+ tag = new TextTag ("strikethrough");
+ tag.Strikethrough = true;
+ buffer.TagTable.Add (tag);
+
+ tag = new TextTag ("sub");
+ tag.Rise = -5000;
+ buffer.TagTable.Add (tag);
+
+ tag = new TextTag ("sup");
+ tag.Rise = 5000;
+ buffer.TagTable.Add (tag);
+
+ tag = new TextTag ("monospace");
+ tag.Family = "monospace";
+ buffer.TagTable.Add (tag);
+
+ tag = new TextTag ("underline");
+ tag.Underline = Pango.Underline.Single;
+ buffer.TagTable.Add (tag);
+ }
+
+ void InsertWithMarkup (TextBuffer buffer, ref TextIter iter, string text)
+ {
+ Match match = markupRegex.Match (text);
+ if (!match.Success) {
+ buffer.Insert (ref iter, text);
+ return;
+ }
+
+ int start = 0, len, idx;
+ var tags = new List <string> ();
+ while (match.Success) {
+ len = match.Index - start;
+ if (len > 0)
+ buffer.InsertWithTagsByName (ref iter, text.Substring (start, len), tags.ToArray ());
+
+ switch (match.Value.ToLowerInvariant ()) {
+ case "<i>":
+ if (!tags.Contains ("italic"))
+ tags.Add ("italic");
+ break;
+
+ case "</i>":
+ idx = tags.IndexOf ("italic");
+ if (idx > -1)
+ tags.RemoveAt (idx);
+ break;
+
+ case "<b>":
+ if (!tags.Contains ("bold"))
+ tags.Add ("bold");
+ break;
+
+ case "</b>":
+ idx = tags.IndexOf ("bold");
+ if (idx > -1)
+ tags.RemoveAt (idx);
+ break;
+
+ case "<big>":
+ if (!tags.Contains ("big"))
+ tags.Add ("big");
+ break;
+
+ case "</big>":
+ idx = tags.IndexOf ("big");
+ if (idx > -1)
+ tags.RemoveAt (idx);
+ break;
+
+ case "<s>":
+ if (!tags.Contains ("strikethrough"))
+ tags.Add ("strikethrough");
+ break;
+
+ case "</s>":
+ idx = tags.IndexOf ("strikethrough");
+ if (idx > -1)
+ tags.RemoveAt (idx);
+ break;
+
+ case "<sub>":
+ if (!tags.Contains ("sub"))
+ tags.Add ("sub");
+ break;
+
+ case "</sub>":
+ idx = tags.IndexOf ("sub");
+ if (idx > -1)
+ tags.RemoveAt (idx);
+ break;
+
+ case "<sup>":
+ if (!tags.Contains ("sup"))
+ tags.Add ("sup");
+ break;
+
+ case "</sup>":
+ idx = tags.IndexOf ("sup");
+ if (idx > -1)
+ tags.RemoveAt (idx);
+ break;
+
+ case "<small>":
+ if (!tags.Contains ("small"))
+ tags.Add ("small");
+ break;
+
+ case "</small>":
+ idx = tags.IndexOf ("small");
+ if (idx > -1)
+ tags.RemoveAt (idx);
+ break;
+
+ case "<tt>":
+ if (!tags.Contains ("monospace"))
+ tags.Add ("monospace");
+ break;
+
+ case "</tt>":
+ idx = tags.IndexOf ("monospace");
+ if (idx > -1)
+ tags.RemoveAt (idx);
+ break;
+
+ case "<u>":
+ if (!tags.Contains ("underline"))
+ tags.Add ("underline");
+ break;
+
+ case "</u>":
+ idx = tags.IndexOf ("underline");
+ if (idx > -1)
+ tags.RemoveAt (idx);
+ break;
+ }
+
+ start = match.Index + match.Length;
+ match = match.NextMatch ();
+ }
+
+ if (start < text.Length)
+ buffer.InsertWithTagsByName (ref iter, text.Substring (start), tags.ToArray ());
+ }
+
public void SetTarget (Func<CompAssembly> target)
{
target_loader = target;
@@ -315,7 +511,7 @@ public partial class MainWindow: Gtk.Window
public void StartCompare (WaitCallback done)
{
- summary.Visible = false;
+ AdditionalInfoWindow.Visible = false;
progressbar1.Visible = true;
progressbar1.Adjustment.Lower = 0;
diff --git a/gui-compare/Makefile.am b/gui-compare/Makefile.am
index d2dccd36..f790dd51 100644
--- a/gui-compare/Makefile.am
+++ b/gui-compare/Makefile.am
@@ -1,6 +1,6 @@
guicomparedir=$(prefix)/lib/gui-compare
bin_SCRIPTS = gui-compare
-guicompare_DATA = gui-compare.exe
+guicompare_DATA = gui-compare.exe gui-compare.exe.mdb
CLEANFILES = gui-compare.exe gui-compare.exe.mdb gui-compare
diff --git a/gui-compare/MasterMetadata.cs b/gui-compare/MasterMetadata.cs
index 3f9358de..eafec865 100644
--- a/gui-compare/MasterMetadata.cs
+++ b/gui-compare/MasterMetadata.cs
@@ -169,10 +169,15 @@ namespace GuiCompare {
{
List<CompNamed> rv = new List<CompNamed>();
if (attributes != null) {
+ XMLAttributeProperties properties;
+
foreach (string key in attributes.keys.Keys) {
if (IsImplementationSpecificAttribute (key))
continue;
- rv.Add (new MasterAttribute ((string)attributes.keys[key]));
+
+ if (!attributes.Properties.TryGetValue (key, out properties))
+ properties = null;
+ rv.Add (new MasterAttribute ((string)attributes.keys[key], properties));
}
}
return rv;
@@ -745,10 +750,39 @@ namespace GuiCompare {
XMLAttributes attributes;
}
- public class MasterAttribute : CompAttribute {
- public MasterAttribute (string name)
- : base (name)
+ public class MasterAttribute : CompAttribute
+ {
+ string FormatStringValue (string value)
+ {
+ if (value == null)
+ return "null";
+
+ return "\"" + value + "\"";
+ }
+
+ public MasterAttribute (string name, XMLAttributeProperties properties) : base(name)
{
+ var sb = new StringBuilder ();
+
+ if (properties == null)
+ return;
+
+ IDictionary<string, string> props = properties.Properties;
+ if (props.Count == 0)
+ return;
+
+ if (name == "System.Runtime.CompilerServices.TypeForwardedToAttribute") {
+ string dest;
+ if (props.TryGetValue ("Destination", out dest) && !String.IsNullOrEmpty (dest))
+ sb.AppendFormat ("[assembly: TypeForwardedToAttribute (typeof ({0}))]", dest);
+ } else {
+ sb.Append ("<b>Properties:</b>\n");
+ foreach (var prop in props)
+ sb.AppendFormat ("\t\t<i>{0}</i> == {1}\n", prop.Key, FormatStringValue (prop.Value));
+ sb.Append ('\n');
+ }
+
+ ExtraInfo = sb.ToString ();
}
}
diff --git a/gui-compare/Masterinfo.cs b/gui-compare/Masterinfo.cs
index dfa9783e..0ef2bde1 100644
--- a/gui-compare/Masterinfo.cs
+++ b/gui-compare/Masterinfo.cs
@@ -532,10 +532,13 @@ namespace GuiCompare {
public class XMLAttributeProperties: XMLNameGroup
{
- static Hashtable ignored_properties;
+ static Dictionary <string, string> ignored_properties;
+ SortedDictionary <string, string> properties;
+
static XMLAttributeProperties ()
{
- ignored_properties = new Hashtable ();
+
+ ignored_properties = new Dictionary <string, string> ();
ignored_properties.Add ("System.Reflection.AssemblyKeyFileAttribute", "KeyFile");
ignored_properties.Add ("System.Reflection.AssemblyCompanyAttribute", "Company");
ignored_properties.Add ("System.Reflection.AssemblyConfigurationAttribute", "Configuration");
@@ -549,15 +552,18 @@ namespace GuiCompare {
ignored_properties.Add ("System.Diagnostics.MonitoringDescriptionAttribute", "Description");
}
- Hashtable properties = new Hashtable ();
string attribute;
+ public XMLAttributeProperties ()
+ : this (null)
+ {}
+
public XMLAttributeProperties (string attribute)
{
this.attribute = attribute;
}
- public override void LoadData(XmlNode node)
+ public override void LoadData (XmlNode node)
{
if (node == null)
throw new ArgumentNullException ("node");
@@ -565,19 +571,29 @@ namespace GuiCompare {
if (node.ChildNodes == null)
return;
- string ignored = ignored_properties [attribute] as string;
+ string ignored;
+
+ if (!ignored_properties.TryGetValue (attribute, out ignored))
+ ignored = null;
foreach (XmlNode n in node.ChildNodes) {
- string name = n.Attributes ["name"].Value;
- if (ignored == name)
+ string name = n.Attributes["name"].Value;
+ if (ignored != null && ignored == name)
continue;
- if (n.Attributes ["null"] != null) {
- properties.Add (name, null);
+ if (n.Attributes["null"] != null) {
+ Properties.Add (name, null);
continue;
}
- string value = n.Attributes ["value"].Value;
- properties.Add (name, value);
+ Properties.Add (name, n.Attributes ["value"].Value);
+ }
+ }
+
+ public IDictionary <string, string> Properties {
+ get {
+ if (properties == null)
+ properties = new SortedDictionary <string, string> ();
+ return properties;
}
}
@@ -596,10 +612,9 @@ namespace GuiCompare {
public class XMLAttributes : XMLNameGroup
{
- Hashtable properties = new Hashtable ();
-
bool isTodo;
string comment;
+ SortedDictionary <string, XMLAttributeProperties> properties;
protected override bool CheckIfAdd (string value, XmlNode node)
{
@@ -662,7 +677,7 @@ namespace GuiCompare {
return key;
}
- protected override void LoadExtraData(string name, XmlNode node)
+ protected override void LoadExtraData (string name, XmlNode node)
{
XmlNode pNode = node.SelectSingleNode ("properties");
@@ -676,15 +691,27 @@ namespace GuiCompare {
if (MasterUtils.IsImplementationSpecificAttribute (name))
return;
-
+
if (pNode != null) {
XMLAttributeProperties p = new XMLAttributeProperties (name);
p.LoadData (pNode);
- properties[name] = p;
+ IDictionary <string, XMLAttributeProperties> properties = Properties;
+ if (properties.ContainsKey (name))
+ properties [name] = p;
+ else
+ properties.Add (name, p);
}
}
-
+
+ public IDictionary <string, XMLAttributeProperties> Properties {
+ get {
+ if (properties == null)
+ properties = new SortedDictionary <string, XMLAttributeProperties> ();
+ return properties;
+ }
+ }
+
public override string GroupName {
get { return "attributes"; }
}
diff --git a/gui-compare/Metadata.cs b/gui-compare/Metadata.cs
index ffecb73b..3f87d528 100644
--- a/gui-compare/Metadata.cs
+++ b/gui-compare/Metadata.cs
@@ -104,7 +104,12 @@ namespace GuiCompare {
set { displayName = value; }
get { return displayName == null ? name : displayName; }
}
-
+
+ public string ExtraInfo {
+ set { extraInfo = value; }
+ get { return extraInfo; }
+ }
+
public CompType Type {
set { type = value; }
get { return type; }
@@ -112,7 +117,7 @@ namespace GuiCompare {
public ComparisonNode GetComparisonNode ()
{
- ComparisonNode node = new ComparisonNode (type, DisplayName, MemberName);
+ ComparisonNode node = new ComparisonNode (type, DisplayName, MemberName, ExtraInfo);
node.Todos.AddRange (todos);
return node;
}
@@ -125,6 +130,7 @@ namespace GuiCompare {
string displayName;
string name;
string memberName;
+ string extraInfo;
CompType type;
public List<string> todos;
}
diff --git a/gui-compare/gtk-gui/GuiCompare.CustomCompare.cs b/gui-compare/gtk-gui/GuiCompare.CustomCompare.cs
index 392f5126..9a77563d 100644
--- a/gui-compare/gtk-gui/GuiCompare.CustomCompare.cs
+++ b/gui-compare/gtk-gui/GuiCompare.CustomCompare.cs
@@ -1,141 +1,128 @@
-// ------------------------------------------------------------------------------
-// <autogenerated>
-// This code was generated by a tool.
-//
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-// </autogenerated>
-// ------------------------------------------------------------------------------
-namespace GuiCompare {
-
-
- public partial class CustomCompare {
-
- private Gtk.HBox hbox1;
-
- private Gtk.Frame frame1;
-
- private Gtk.Alignment GtkAlignment2;
-
- private guicompare.ProviderSelector reference;
-
- private Gtk.Label GtkLabel4;
-
- private Gtk.Frame frame2;
-
- private Gtk.Alignment GtkAlignment3;
-
- private guicompare.ProviderSelector target;
-
- private Gtk.Label GtkLabel9;
-
- private Gtk.Button buttonCancel;
-
- private Gtk.Button buttonOk;
-
- protected virtual void Build() {
- Stetic.Gui.Initialize(this);
- // Widget GuiCompare.CustomCompare
- this.Name = "GuiCompare.CustomCompare";
- this.WindowPosition = ((Gtk.WindowPosition)(4));
- this.HasSeparator = false;
- // Internal child GuiCompare.CustomCompare.VBox
- Gtk.VBox w1 = this.VBox;
- w1.Name = "dialog1_VBox";
- w1.BorderWidth = ((uint)(2));
- // Container child dialog1_VBox.Gtk.Box+BoxChild
- this.hbox1 = new Gtk.HBox();
- this.hbox1.Name = "hbox1";
- this.hbox1.Spacing = 12;
- this.hbox1.BorderWidth = ((uint)(4));
- // Container child hbox1.Gtk.Box+BoxChild
- this.frame1 = new Gtk.Frame();
- this.frame1.Name = "frame1";
- this.frame1.ShadowType = ((Gtk.ShadowType)(1));
- // Container child frame1.Gtk.Container+ContainerChild
- this.GtkAlignment2 = new Gtk.Alignment(0F, 0F, 1F, 1F);
- this.GtkAlignment2.Name = "GtkAlignment2";
- this.GtkAlignment2.LeftPadding = ((uint)(12));
- // Container child GtkAlignment2.Gtk.Container+ContainerChild
- this.reference = new guicompare.ProviderSelector();
- this.reference.Events = ((Gdk.EventMask)(256));
- this.reference.Name = "reference";
- this.GtkAlignment2.Add(this.reference);
- this.frame1.Add(this.GtkAlignment2);
- this.GtkLabel4 = new Gtk.Label();
- this.GtkLabel4.Name = "GtkLabel4";
- this.GtkLabel4.LabelProp = Mono.Unix.Catalog.GetString("<b>Reference:</b>");
- this.GtkLabel4.UseMarkup = true;
- this.frame1.LabelWidget = this.GtkLabel4;
- this.hbox1.Add(this.frame1);
- Gtk.Box.BoxChild w4 = ((Gtk.Box.BoxChild)(this.hbox1[this.frame1]));
- w4.Position = 0;
- w4.Padding = ((uint)(4));
- // Container child hbox1.Gtk.Box+BoxChild
- this.frame2 = new Gtk.Frame();
- this.frame2.Name = "frame2";
- this.frame2.ShadowType = ((Gtk.ShadowType)(1));
- // Container child frame2.Gtk.Container+ContainerChild
- this.GtkAlignment3 = new Gtk.Alignment(0F, 0F, 1F, 1F);
- this.GtkAlignment3.Name = "GtkAlignment3";
- this.GtkAlignment3.LeftPadding = ((uint)(12));
- // Container child GtkAlignment3.Gtk.Container+ContainerChild
- this.target = new guicompare.ProviderSelector();
- this.target.Events = ((Gdk.EventMask)(256));
- this.target.Name = "target";
- this.GtkAlignment3.Add(this.target);
- this.frame2.Add(this.GtkAlignment3);
- this.GtkLabel9 = new Gtk.Label();
- this.GtkLabel9.Name = "GtkLabel9";
- this.GtkLabel9.LabelProp = Mono.Unix.Catalog.GetString("<b>Target:</b>");
- this.GtkLabel9.UseMarkup = true;
- this.frame2.LabelWidget = this.GtkLabel9;
- this.hbox1.Add(this.frame2);
- Gtk.Box.BoxChild w7 = ((Gtk.Box.BoxChild)(this.hbox1[this.frame2]));
- w7.Position = 1;
- w7.Padding = ((uint)(4));
- w1.Add(this.hbox1);
- Gtk.Box.BoxChild w8 = ((Gtk.Box.BoxChild)(w1[this.hbox1]));
- w8.Position = 0;
- // Internal child GuiCompare.CustomCompare.ActionArea
- Gtk.HButtonBox w9 = this.ActionArea;
- w9.Name = "dialog1_ActionArea";
- w9.Spacing = 6;
- w9.BorderWidth = ((uint)(5));
- w9.LayoutStyle = ((Gtk.ButtonBoxStyle)(4));
- // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
- this.buttonCancel = new Gtk.Button();
- this.buttonCancel.CanDefault = true;
- this.buttonCancel.CanFocus = true;
- this.buttonCancel.Name = "buttonCancel";
- this.buttonCancel.UseStock = true;
- this.buttonCancel.UseUnderline = true;
- this.buttonCancel.Label = "gtk-cancel";
- this.AddActionWidget(this.buttonCancel, -6);
- Gtk.ButtonBox.ButtonBoxChild w10 = ((Gtk.ButtonBox.ButtonBoxChild)(w9[this.buttonCancel]));
- w10.Expand = false;
- w10.Fill = false;
- // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
- this.buttonOk = new Gtk.Button();
- this.buttonOk.CanDefault = true;
- this.buttonOk.CanFocus = true;
- this.buttonOk.Name = "buttonOk";
- this.buttonOk.UseStock = true;
- this.buttonOk.UseUnderline = true;
- this.buttonOk.Label = "gtk-ok";
- this.AddActionWidget(this.buttonOk, -5);
- Gtk.ButtonBox.ButtonBoxChild w11 = ((Gtk.ButtonBox.ButtonBoxChild)(w9[this.buttonOk]));
- w11.Position = 1;
- w11.Expand = false;
- w11.Fill = false;
- if ((this.Child != null)) {
- this.Child.ShowAll();
- }
- this.DefaultWidth = 578;
- this.DefaultHeight = 273;
- this.Show();
- }
- }
+// This file has been generated by the GUI designer. Do not modify.
+namespace GuiCompare
+{
+ public partial class CustomCompare
+ {
+ private global::Gtk.HBox hbox1;
+
+ private global::Gtk.Frame frame1;
+
+ private global::Gtk.Alignment GtkAlignment2;
+
+ private global::guicompare.ProviderSelector reference;
+
+ private global::Gtk.Label GtkLabel4;
+
+ private global::Gtk.Frame frame2;
+
+ private global::Gtk.Alignment GtkAlignment3;
+
+ private global::guicompare.ProviderSelector target;
+
+ private global::Gtk.Label GtkLabel9;
+
+ private global::Gtk.Button buttonCancel;
+
+ private global::Gtk.Button buttonOk;
+
+ protected virtual void Build ()
+ {
+ global::Stetic.Gui.Initialize (this);
+ // Widget GuiCompare.CustomCompare
+ this.Name = "GuiCompare.CustomCompare";
+ this.WindowPosition = ((global::Gtk.WindowPosition)(4));
+ // Internal child GuiCompare.CustomCompare.VBox
+ global::Gtk.VBox w1 = this.VBox;
+ w1.Name = "dialog1_VBox";
+ w1.BorderWidth = ((uint)(2));
+ // Container child dialog1_VBox.Gtk.Box+BoxChild
+ this.hbox1 = new global::Gtk.HBox ();
+ this.hbox1.Name = "hbox1";
+ this.hbox1.Spacing = 12;
+ this.hbox1.BorderWidth = ((uint)(4));
+ // Container child hbox1.Gtk.Box+BoxChild
+ this.frame1 = new global::Gtk.Frame ();
+ this.frame1.Name = "frame1";
+ this.frame1.ShadowType = ((global::Gtk.ShadowType)(1));
+ // Container child frame1.Gtk.Container+ContainerChild
+ this.GtkAlignment2 = new global::Gtk.Alignment (0f, 0f, 1f, 1f);
+ this.GtkAlignment2.Name = "GtkAlignment2";
+ this.GtkAlignment2.LeftPadding = ((uint)(12));
+ // Container child GtkAlignment2.Gtk.Container+ContainerChild
+ this.reference = null;
+ this.GtkAlignment2.Add (this.reference);
+ this.frame1.Add (this.GtkAlignment2);
+ this.GtkLabel4 = new global::Gtk.Label ();
+ this.GtkLabel4.Name = "GtkLabel4";
+ this.GtkLabel4.LabelProp = global::Mono.Unix.Catalog.GetString ("<b>Reference:</b>");
+ this.GtkLabel4.UseMarkup = true;
+ this.frame1.LabelWidget = this.GtkLabel4;
+ this.hbox1.Add (this.frame1);
+ global::Gtk.Box.BoxChild w4 = ((global::Gtk.Box.BoxChild)(this.hbox1[this.frame1]));
+ w4.Position = 0;
+ w4.Padding = ((uint)(4));
+ // Container child hbox1.Gtk.Box+BoxChild
+ this.frame2 = new global::Gtk.Frame ();
+ this.frame2.Name = "frame2";
+ this.frame2.ShadowType = ((global::Gtk.ShadowType)(1));
+ // Container child frame2.Gtk.Container+ContainerChild
+ this.GtkAlignment3 = new global::Gtk.Alignment (0f, 0f, 1f, 1f);
+ this.GtkAlignment3.Name = "GtkAlignment3";
+ this.GtkAlignment3.LeftPadding = ((uint)(12));
+ // Container child GtkAlignment3.Gtk.Container+ContainerChild
+ this.target = null;
+ this.GtkAlignment3.Add (this.target);
+ this.frame2.Add (this.GtkAlignment3);
+ this.GtkLabel9 = new global::Gtk.Label ();
+ this.GtkLabel9.Name = "GtkLabel9";
+ this.GtkLabel9.LabelProp = global::Mono.Unix.Catalog.GetString ("<b>Target:</b>");
+ this.GtkLabel9.UseMarkup = true;
+ this.frame2.LabelWidget = this.GtkLabel9;
+ this.hbox1.Add (this.frame2);
+ global::Gtk.Box.BoxChild w7 = ((global::Gtk.Box.BoxChild)(this.hbox1[this.frame2]));
+ w7.Position = 1;
+ w7.Padding = ((uint)(4));
+ w1.Add (this.hbox1);
+ global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(w1[this.hbox1]));
+ w8.Position = 0;
+ // Internal child GuiCompare.CustomCompare.ActionArea
+ global::Gtk.HButtonBox w9 = this.ActionArea;
+ w9.Name = "dialog1_ActionArea";
+ w9.Spacing = 6;
+ w9.BorderWidth = ((uint)(5));
+ w9.LayoutStyle = ((global::Gtk.ButtonBoxStyle)(4));
+ // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
+ this.buttonCancel = new global::Gtk.Button ();
+ this.buttonCancel.CanDefault = true;
+ this.buttonCancel.CanFocus = true;
+ this.buttonCancel.Name = "buttonCancel";
+ this.buttonCancel.UseStock = true;
+ this.buttonCancel.UseUnderline = true;
+ this.buttonCancel.Label = "gtk-cancel";
+ this.AddActionWidget (this.buttonCancel, -6);
+ global::Gtk.ButtonBox.ButtonBoxChild w10 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w9[this.buttonCancel]));
+ w10.Expand = false;
+ w10.Fill = false;
+ // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
+ this.buttonOk = new global::Gtk.Button ();
+ this.buttonOk.CanDefault = true;
+ this.buttonOk.CanFocus = true;
+ this.buttonOk.Name = "buttonOk";
+ this.buttonOk.UseStock = true;
+ this.buttonOk.UseUnderline = true;
+ this.buttonOk.Label = "gtk-ok";
+ this.AddActionWidget (this.buttonOk, -5);
+ global::Gtk.ButtonBox.ButtonBoxChild w11 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w9[this.buttonOk]));
+ w11.Position = 1;
+ w11.Expand = false;
+ w11.Fill = false;
+ if ((this.Child != null)) {
+ this.Child.ShowAll ();
+ }
+ this.DefaultWidth = 578;
+ this.DefaultHeight = 273;
+ this.Show ();
+ }
+ }
}
diff --git a/gui-compare/gtk-gui/MainWindow.cs b/gui-compare/gtk-gui/MainWindow.cs
index c78da0cc..bcdafc10 100644
--- a/gui-compare/gtk-gui/MainWindow.cs
+++ b/gui-compare/gtk-gui/MainWindow.cs
@@ -1,454 +1,450 @@
-// ------------------------------------------------------------------------------
-// <autogenerated>
-// This code was generated by a tool.
-//
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-// </autogenerated>
-// ------------------------------------------------------------------------------
-
-
-
-public partial class MainWindow {
-
- private Gtk.UIManager UIManager;
-
- private Gtk.Action File;
-
- private Gtk.Action quit;
-
- private Gtk.Action Compare;
-
- private Gtk.Action Custom;
-
- private Gtk.Action a;
-
- private Gtk.Action b;
-
- private Gtk.Action View;
-
- private Gtk.ToggleAction ShowMissing;
-
- private Gtk.ToggleAction ShowExtra;
-
- private Gtk.ToggleAction ShowPresent;
-
- private Gtk.ToggleAction ShowErrors;
-
- private Gtk.Action Refresh;
-
- private Gtk.ToggleAction ShowTodo;
-
- private Gtk.Action RecentComparisons;
-
- private Gtk.ToggleAction ShowNotImplemented;
-
- private Gtk.Action ToggleRowExpansionAction;
-
- private Gtk.VBox vbox1;
-
- private Gtk.MenuBar menubar1;
-
- private Gtk.Notebook notebook1;
-
- private Gtk.ScrolledWindow GtkScrolledWindow;
-
- private Gtk.TreeView tree;
-
- private Gtk.Label label1;
-
- private Gtk.Label label3;
-
- private Gtk.Label label2;
-
- private Gtk.Label summary;
-
- private Gtk.Expander expander1;
-
- private Gtk.Table table1;
-
- private Gtk.Label label4;
-
- private Gtk.Label label5;
-
- private Gtk.Label label6;
-
- private Gtk.Label label7;
-
- private Gtk.Label label8;
-
- private Gtk.Label label9;
-
- private Gtk.Image legendImageError;
-
- private Gtk.Image legendImageExtra;
-
- private Gtk.Image legendImageMissing;
-
- private Gtk.Image legendImageNIEX;
-
- private Gtk.Image legendImageOK;
-
- private Gtk.Image legendImageTODO;
-
- private Gtk.VSeparator vseparator1;
-
- private Gtk.VSeparator vseparator2;
-
- private Gtk.VSeparator vseparator3;
-
- private Gtk.Label GtkLabel4;
-
- private Gtk.Statusbar statusbar1;
-
- private Gtk.ProgressBar progressbar1;
-
- protected virtual void Build() {
- Stetic.Gui.Initialize(this);
- // Widget MainWindow
- this.UIManager = new Gtk.UIManager();
- Gtk.ActionGroup w1 = new Gtk.ActionGroup("Default");
- this.File = new Gtk.Action("File", Mono.Unix.Catalog.GetString("_File"), null, null);
- this.File.ShortLabel = Mono.Unix.Catalog.GetString("File");
- w1.Add(this.File, null);
- this.quit = new Gtk.Action("quit", Mono.Unix.Catalog.GetString("_Quit"), null, "gtk-quit");
- this.quit.ShortLabel = Mono.Unix.Catalog.GetString("_Quit");
- w1.Add(this.quit, null);
- this.Compare = new Gtk.Action("Compare", Mono.Unix.Catalog.GetString("_Compare"), null, null);
- this.Compare.ShortLabel = Mono.Unix.Catalog.GetString("Compare");
- w1.Add(this.Compare, null);
- this.Custom = new Gtk.Action("Custom", Mono.Unix.Catalog.GetString("Custom..."), null, null);
- this.Custom.ShortLabel = Mono.Unix.Catalog.GetString("Custom...");
- w1.Add(this.Custom, null);
- this.a = new Gtk.Action("a", Mono.Unix.Catalog.GetString("a"), null, null);
- this.a.ShortLabel = Mono.Unix.Catalog.GetString("a");
- w1.Add(this.a, null);
- this.b = new Gtk.Action("b", Mono.Unix.Catalog.GetString("b"), null, null);
- this.b.ShortLabel = Mono.Unix.Catalog.GetString("b");
- w1.Add(this.b, null);
- this.View = new Gtk.Action("View", Mono.Unix.Catalog.GetString("_View"), null, null);
- this.View.ShortLabel = Mono.Unix.Catalog.GetString("View");
- w1.Add(this.View, null);
- this.ShowMissing = new Gtk.ToggleAction("ShowMissing", Mono.Unix.Catalog.GetString("Show missing"), null, null);
- this.ShowMissing.Active = true;
- this.ShowMissing.ShortLabel = Mono.Unix.Catalog.GetString("Show missing");
- w1.Add(this.ShowMissing, null);
- this.ShowExtra = new Gtk.ToggleAction("ShowExtra", Mono.Unix.Catalog.GetString("Show extra"), null, null);
- this.ShowExtra.Active = true;
- this.ShowExtra.ShortLabel = Mono.Unix.Catalog.GetString("Show extra");
- w1.Add(this.ShowExtra, null);
- this.ShowPresent = new Gtk.ToggleAction("ShowPresent", Mono.Unix.Catalog.GetString("Show present"), null, null);
- this.ShowPresent.Active = true;
- this.ShowPresent.ShortLabel = Mono.Unix.Catalog.GetString("Show present");
- w1.Add(this.ShowPresent, null);
- this.ShowErrors = new Gtk.ToggleAction("ShowErrors", Mono.Unix.Catalog.GetString("Show errors"), null, null);
- this.ShowErrors.Active = true;
- this.ShowErrors.ShortLabel = Mono.Unix.Catalog.GetString("Show errors");
- w1.Add(this.ShowErrors, null);
- this.Refresh = new Gtk.Action("Refresh", Mono.Unix.Catalog.GetString("Refresh"), null, "gtk-refresh");
- this.Refresh.ShortLabel = Mono.Unix.Catalog.GetString("Refresh");
- w1.Add(this.Refresh, "<Control>r");
- this.ShowTodo = new Gtk.ToggleAction("ShowTodo", Mono.Unix.Catalog.GetString("Show Todo"), null, null);
- this.ShowTodo.Active = true;
- this.ShowTodo.ShortLabel = Mono.Unix.Catalog.GetString("Show Todo");
- w1.Add(this.ShowTodo, null);
- this.RecentComparisons = new Gtk.Action("RecentComparisons", Mono.Unix.Catalog.GetString("Recent Comparisons"), null, null);
- this.RecentComparisons.ShortLabel = Mono.Unix.Catalog.GetString("Recent Comparisons");
- w1.Add(this.RecentComparisons, null);
- this.ShowNotImplemented = new Gtk.ToggleAction("ShowNotImplemented", Mono.Unix.Catalog.GetString("Show NotImplemented"), null, null);
- this.ShowNotImplemented.Active = true;
- this.ShowNotImplemented.ShortLabel = Mono.Unix.Catalog.GetString("Show NotImplemented");
- w1.Add(this.ShowNotImplemented, null);
- this.ToggleRowExpansionAction = new Gtk.Action("ToggleRowExpansionAction", Mono.Unix.Catalog.GetString("Toggle Row Expansion"), null, null);
- this.ToggleRowExpansionAction.ShortLabel = Mono.Unix.Catalog.GetString("Toggle Row Expansion");
- w1.Add(this.ToggleRowExpansionAction, "<Mod2>space");
- this.UIManager.InsertActionGroup(w1, 0);
- this.AddAccelGroup(this.UIManager.AccelGroup);
- this.Name = "MainWindow";
- this.Title = Mono.Unix.Catalog.GetString("GUI CorCompare");
- this.WindowPosition = ((Gtk.WindowPosition)(4));
- // Container child MainWindow.Gtk.Container+ContainerChild
- this.vbox1 = new Gtk.VBox();
- this.vbox1.Name = "vbox1";
- this.vbox1.Spacing = 6;
- // Container child vbox1.Gtk.Box+BoxChild
- this.UIManager.AddUiFromString("<ui><menubar name='menubar1'><menu name='File' action='File'><menu name='RecentComparisons' action='RecentComparisons'/><separator/><menuitem name='Refresh' action='Refresh'/><separator/><menuitem name='quit' action='quit'/></menu><menu name='Compare' action='Compare'><menuitem name='Custom' action='Custom'/></menu><menu name='View' action='View'><menuitem name='ShowErrors' action='ShowErrors'/><menuitem name='ShowMissing' action='ShowMissing'/><menuitem name='ShowNotImplemented' action='ShowNotImplemented'/><menuitem name='ShowExtra' action='ShowExtra'/><menuitem name='ShowTodo' action='ShowTodo'/><menuitem name='ShowPresent' action='ShowPresent'/><separator/><menuitem name='ToggleRowExpansionAction' action='ToggleRowExpansionAction'/></menu></menubar></ui>");
- this.menubar1 = ((Gtk.MenuBar)(this.UIManager.GetWidget("/menubar1")));
- this.menubar1.Name = "menubar1";
- this.vbox1.Add(this.menubar1);
- Gtk.Box.BoxChild w2 = ((Gtk.Box.BoxChild)(this.vbox1[this.menubar1]));
- w2.Position = 0;
- w2.Expand = false;
- w2.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.notebook1 = new Gtk.Notebook();
- this.notebook1.CanFocus = true;
- this.notebook1.Name = "notebook1";
- this.notebook1.CurrentPage = 1;
- this.notebook1.ShowBorder = false;
- this.notebook1.ShowTabs = false;
- // Container child notebook1.Gtk.Notebook+NotebookChild
- this.GtkScrolledWindow = new Gtk.ScrolledWindow();
- this.GtkScrolledWindow.Name = "GtkScrolledWindow";
- this.GtkScrolledWindow.ShadowType = ((Gtk.ShadowType)(1));
- // Container child GtkScrolledWindow.Gtk.Container+ContainerChild
- this.tree = new Gtk.TreeView();
- this.tree.CanFocus = true;
- this.tree.Name = "tree";
- this.GtkScrolledWindow.Add(this.tree);
- this.notebook1.Add(this.GtkScrolledWindow);
- // Notebook tab
- this.label1 = new Gtk.Label();
- this.label1.Name = "label1";
- this.label1.LabelProp = Mono.Unix.Catalog.GetString("page1");
- this.notebook1.SetTabLabel(this.GtkScrolledWindow, this.label1);
- this.label1.ShowAll();
- // Container child notebook1.Gtk.Notebook+NotebookChild
- this.label3 = new Gtk.Label();
- this.label3.Name = "label3";
- this.label3.Xpad = 20;
- this.label3.Ypad = 20;
- this.label3.LabelProp = Mono.Unix.Catalog.GetString("This tool allows you to compare the API of assemblies.\n\nTo initiate a comparison, use the \"Compare\" menu and use one of the presets based on the assemblies you have installed on your system and some popular profiles, or use \"Custom\" to define your own comparison");
- this.label3.Wrap = true;
- this.notebook1.Add(this.label3);
- Gtk.Notebook.NotebookChild w5 = ((Gtk.Notebook.NotebookChild)(this.notebook1[this.label3]));
- w5.Position = 1;
- // Notebook tab
- this.label2 = new Gtk.Label();
- this.label2.Name = "label2";
- this.label2.LabelProp = Mono.Unix.Catalog.GetString("page2");
- this.notebook1.SetTabLabel(this.label3, this.label2);
- this.label2.ShowAll();
- this.vbox1.Add(this.notebook1);
- Gtk.Box.BoxChild w6 = ((Gtk.Box.BoxChild)(this.vbox1[this.notebook1]));
- w6.Position = 1;
- // Container child vbox1.Gtk.Box+BoxChild
- this.summary = new Gtk.Label();
- this.summary.Name = "summary";
- this.summary.Xpad = 6;
- this.summary.Ypad = 6;
- this.summary.Xalign = 0F;
- this.summary.UseMarkup = true;
- this.vbox1.Add(this.summary);
- Gtk.Box.BoxChild w7 = ((Gtk.Box.BoxChild)(this.vbox1[this.summary]));
- w7.Position = 2;
- w7.Expand = false;
- w7.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.expander1 = new Gtk.Expander(null);
- this.expander1.CanFocus = true;
- this.expander1.Name = "expander1";
- // Container child expander1.Gtk.Container+ContainerChild
- this.table1 = new Gtk.Table(((uint)(3)), ((uint)(5)), false);
- this.table1.Name = "table1";
- this.table1.RowSpacing = ((uint)(6));
- this.table1.ColumnSpacing = ((uint)(6));
- // Container child table1.Gtk.Table+TableChild
- this.label4 = new Gtk.Label();
- this.label4.Name = "label4";
- this.label4.Xalign = 1F;
- this.label4.LabelProp = Mono.Unix.Catalog.GetString("Missing");
- this.table1.Add(this.label4);
- Gtk.Table.TableChild w8 = ((Gtk.Table.TableChild)(this.table1[this.label4]));
- w8.TopAttach = ((uint)(1));
- w8.BottomAttach = ((uint)(2));
- w8.LeftAttach = ((uint)(3));
- w8.RightAttach = ((uint)(4));
- w8.XOptions = ((Gtk.AttachOptions)(4));
- w8.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.label5 = new Gtk.Label();
- this.label5.Name = "label5";
- this.label5.Xalign = 1F;
- this.label5.LabelProp = Mono.Unix.Catalog.GetString("TODO");
- this.table1.Add(this.label5);
- Gtk.Table.TableChild w9 = ((Gtk.Table.TableChild)(this.table1[this.label5]));
- w9.TopAttach = ((uint)(2));
- w9.BottomAttach = ((uint)(3));
- w9.XOptions = ((Gtk.AttachOptions)(4));
- w9.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.label6 = new Gtk.Label();
- this.label6.Name = "label6";
- this.label6.Xalign = 1F;
- this.label6.LabelProp = Mono.Unix.Catalog.GetString("Extra");
- this.table1.Add(this.label6);
- Gtk.Table.TableChild w10 = ((Gtk.Table.TableChild)(this.table1[this.label6]));
- w10.TopAttach = ((uint)(2));
- w10.BottomAttach = ((uint)(3));
- w10.LeftAttach = ((uint)(3));
- w10.RightAttach = ((uint)(4));
- w10.XOptions = ((Gtk.AttachOptions)(4));
- w10.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.label7 = new Gtk.Label();
- this.label7.Name = "label7";
- this.label7.Xalign = 1F;
- this.label7.LabelProp = Mono.Unix.Catalog.GetString("Not implemented");
- this.table1.Add(this.label7);
- Gtk.Table.TableChild w11 = ((Gtk.Table.TableChild)(this.table1[this.label7]));
- w11.TopAttach = ((uint)(1));
- w11.BottomAttach = ((uint)(2));
- w11.XOptions = ((Gtk.AttachOptions)(4));
- w11.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.label8 = new Gtk.Label();
- this.label8.Name = "label8";
- this.label8.Xalign = 1F;
- this.label8.LabelProp = Mono.Unix.Catalog.GetString("No errors");
- this.label8.Justify = ((Gtk.Justification)(2));
- this.table1.Add(this.label8);
- Gtk.Table.TableChild w12 = ((Gtk.Table.TableChild)(this.table1[this.label8]));
- w12.XOptions = ((Gtk.AttachOptions)(4));
- w12.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.label9 = new Gtk.Label();
- this.label9.Name = "label9";
- this.label9.Xalign = 1F;
- this.label9.LabelProp = Mono.Unix.Catalog.GetString("Error");
- this.table1.Add(this.label9);
- Gtk.Table.TableChild w13 = ((Gtk.Table.TableChild)(this.table1[this.label9]));
- w13.LeftAttach = ((uint)(3));
- w13.RightAttach = ((uint)(4));
- w13.XOptions = ((Gtk.AttachOptions)(4));
- w13.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.legendImageError = new Gtk.Image();
- this.legendImageError.Name = "legendImageError";
- this.table1.Add(this.legendImageError);
- Gtk.Table.TableChild w14 = ((Gtk.Table.TableChild)(this.table1[this.legendImageError]));
- w14.LeftAttach = ((uint)(4));
- w14.RightAttach = ((uint)(5));
- w14.XOptions = ((Gtk.AttachOptions)(4));
- w14.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.legendImageExtra = new Gtk.Image();
- this.legendImageExtra.Name = "legendImageExtra";
- this.table1.Add(this.legendImageExtra);
- Gtk.Table.TableChild w15 = ((Gtk.Table.TableChild)(this.table1[this.legendImageExtra]));
- w15.TopAttach = ((uint)(2));
- w15.BottomAttach = ((uint)(3));
- w15.LeftAttach = ((uint)(4));
- w15.RightAttach = ((uint)(5));
- w15.XOptions = ((Gtk.AttachOptions)(4));
- w15.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.legendImageMissing = new Gtk.Image();
- this.legendImageMissing.Name = "legendImageMissing";
- this.table1.Add(this.legendImageMissing);
- Gtk.Table.TableChild w16 = ((Gtk.Table.TableChild)(this.table1[this.legendImageMissing]));
- w16.TopAttach = ((uint)(1));
- w16.BottomAttach = ((uint)(2));
- w16.LeftAttach = ((uint)(4));
- w16.RightAttach = ((uint)(5));
- w16.XOptions = ((Gtk.AttachOptions)(4));
- w16.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.legendImageNIEX = new Gtk.Image();
- this.legendImageNIEX.Name = "legendImageNIEX";
- this.table1.Add(this.legendImageNIEX);
- Gtk.Table.TableChild w17 = ((Gtk.Table.TableChild)(this.table1[this.legendImageNIEX]));
- w17.TopAttach = ((uint)(1));
- w17.BottomAttach = ((uint)(2));
- w17.LeftAttach = ((uint)(1));
- w17.RightAttach = ((uint)(2));
- w17.XOptions = ((Gtk.AttachOptions)(4));
- w17.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.legendImageOK = new Gtk.Image();
- this.legendImageOK.Name = "legendImageOK";
- this.table1.Add(this.legendImageOK);
- Gtk.Table.TableChild w18 = ((Gtk.Table.TableChild)(this.table1[this.legendImageOK]));
- w18.LeftAttach = ((uint)(1));
- w18.RightAttach = ((uint)(2));
- w18.XOptions = ((Gtk.AttachOptions)(4));
- w18.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.legendImageTODO = new Gtk.Image();
- this.legendImageTODO.Name = "legendImageTODO";
- this.table1.Add(this.legendImageTODO);
- Gtk.Table.TableChild w19 = ((Gtk.Table.TableChild)(this.table1[this.legendImageTODO]));
- w19.TopAttach = ((uint)(2));
- w19.BottomAttach = ((uint)(3));
- w19.LeftAttach = ((uint)(1));
- w19.RightAttach = ((uint)(2));
- w19.XOptions = ((Gtk.AttachOptions)(4));
- w19.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.vseparator1 = new Gtk.VSeparator();
- this.vseparator1.Name = "vseparator1";
- this.table1.Add(this.vseparator1);
- Gtk.Table.TableChild w20 = ((Gtk.Table.TableChild)(this.table1[this.vseparator1]));
- w20.LeftAttach = ((uint)(2));
- w20.RightAttach = ((uint)(3));
- w20.XOptions = ((Gtk.AttachOptions)(4));
- w20.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.vseparator2 = new Gtk.VSeparator();
- this.vseparator2.Name = "vseparator2";
- this.table1.Add(this.vseparator2);
- Gtk.Table.TableChild w21 = ((Gtk.Table.TableChild)(this.table1[this.vseparator2]));
- w21.TopAttach = ((uint)(1));
- w21.BottomAttach = ((uint)(2));
- w21.LeftAttach = ((uint)(2));
- w21.RightAttach = ((uint)(3));
- w21.XOptions = ((Gtk.AttachOptions)(4));
- w21.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.vseparator3 = new Gtk.VSeparator();
- this.vseparator3.Name = "vseparator3";
- this.table1.Add(this.vseparator3);
- Gtk.Table.TableChild w22 = ((Gtk.Table.TableChild)(this.table1[this.vseparator3]));
- w22.TopAttach = ((uint)(2));
- w22.BottomAttach = ((uint)(3));
- w22.LeftAttach = ((uint)(2));
- w22.RightAttach = ((uint)(3));
- w22.XOptions = ((Gtk.AttachOptions)(4));
- w22.YOptions = ((Gtk.AttachOptions)(4));
- this.expander1.Add(this.table1);
- this.GtkLabel4 = new Gtk.Label();
- this.GtkLabel4.Name = "GtkLabel4";
- this.GtkLabel4.LabelProp = Mono.Unix.Catalog.GetString("Legend");
- this.GtkLabel4.UseUnderline = true;
- this.expander1.LabelWidget = this.GtkLabel4;
- this.vbox1.Add(this.expander1);
- Gtk.Box.BoxChild w24 = ((Gtk.Box.BoxChild)(this.vbox1[this.expander1]));
- w24.Position = 3;
- w24.Expand = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.statusbar1 = new Gtk.Statusbar();
- this.statusbar1.Name = "statusbar1";
- this.statusbar1.Spacing = 6;
- // Container child statusbar1.Gtk.Box+BoxChild
- this.progressbar1 = new Gtk.ProgressBar();
- this.progressbar1.Name = "progressbar1";
- this.statusbar1.Add(this.progressbar1);
- Gtk.Box.BoxChild w25 = ((Gtk.Box.BoxChild)(this.statusbar1[this.progressbar1]));
- w25.Position = 2;
- this.vbox1.Add(this.statusbar1);
- Gtk.Box.BoxChild w26 = ((Gtk.Box.BoxChild)(this.vbox1[this.statusbar1]));
- w26.Position = 4;
- w26.Expand = false;
- w26.Fill = false;
- this.Add(this.vbox1);
- if ((this.Child != null)) {
- this.Child.ShowAll();
- }
- this.DefaultWidth = 648;
- this.DefaultHeight = 577;
- this.summary.Hide();
- this.Show();
- this.DeleteEvent += new Gtk.DeleteEventHandler(this.OnDeleteEvent);
- this.quit.Activated += new System.EventHandler(this.OnQuitActivated);
- this.Custom.Activated += new System.EventHandler(this.OnCustomActivated);
- this.ShowMissing.Toggled += new System.EventHandler(this.OnShowMissingToggled);
- this.ShowExtra.Toggled += new System.EventHandler(this.OnShowExtraToggled);
- this.ShowPresent.Toggled += new System.EventHandler(this.OnShowPresentToggled);
- this.ShowErrors.Toggled += new System.EventHandler(this.OnShowErrorsToggled);
- this.Refresh.Activated += new System.EventHandler(this.OnRefreshActivated);
- this.ShowTodo.Toggled += new System.EventHandler(this.OnShowTodoToggled);
- this.ShowNotImplemented.Toggled += new System.EventHandler(this.OnShowNotImplementedToggled);
- this.ToggleRowExpansionAction.Activated += new System.EventHandler(this.OnToggleRowExpansion);
- }
+
+// This file has been generated by the GUI designer. Do not modify.
+
+public partial class MainWindow
+{
+ private global::Gtk.UIManager UIManager;
+
+ private global::Gtk.Action File;
+
+ private global::Gtk.Action quit;
+
+ private global::Gtk.Action Compare;
+
+ private global::Gtk.Action Custom;
+
+ private global::Gtk.Action a;
+
+ private global::Gtk.Action b;
+
+ private global::Gtk.Action View;
+
+ private global::Gtk.ToggleAction ShowMissing;
+
+ private global::Gtk.ToggleAction ShowExtra;
+
+ private global::Gtk.ToggleAction ShowPresent;
+
+ private global::Gtk.ToggleAction ShowErrors;
+
+ private global::Gtk.Action Refresh;
+
+ private global::Gtk.ToggleAction ShowTodo;
+
+ private global::Gtk.Action RecentComparisonsAction;
+
+ private global::Gtk.ToggleAction ShowNotImplemented;
+
+ private global::Gtk.Action ToggleRowExpansionAction;
+
+ private global::Gtk.VBox vbox1;
+
+ private global::Gtk.MenuBar menubar1;
+
+ private global::Gtk.Notebook notebook1;
+
+ private global::Gtk.ScrolledWindow GtkScrolledWindow;
+
+ private global::Gtk.TreeView tree;
+
+ private global::Gtk.Label label1;
+
+ private global::Gtk.Label label3;
+
+ private global::Gtk.Label label2;
+
+ private global::Gtk.ScrolledWindow AdditionalInfoWindow;
+
+ private global::Gtk.TextView AdditionalInfoText;
+
+ private global::Gtk.Expander expander1;
+
+ private global::Gtk.Table table1;
+
+ private global::Gtk.Label label4;
+
+ private global::Gtk.Label label5;
+
+ private global::Gtk.Label label6;
+
+ private global::Gtk.Label label7;
+
+ private global::Gtk.Label label8;
+
+ private global::Gtk.Label label9;
+
+ private global::Gtk.Image legendImageError;
+
+ private global::Gtk.Image legendImageExtra;
+
+ private global::Gtk.Image legendImageMissing;
+
+ private global::Gtk.Image legendImageNIEX;
+
+ private global::Gtk.Image legendImageOK;
+
+ private global::Gtk.Image legendImageTODO;
+
+ private global::Gtk.VSeparator vseparator1;
+
+ private global::Gtk.VSeparator vseparator2;
+
+ private global::Gtk.VSeparator vseparator3;
+
+ private global::Gtk.Label GtkLabel4;
+
+ private global::Gtk.Statusbar statusbar1;
+
+ private global::Gtk.ProgressBar progressbar1;
+
+ protected virtual void Build ()
+ {
+ global::Stetic.Gui.Initialize (this);
+ // Widget MainWindow
+ this.UIManager = new global::Gtk.UIManager ();
+ global::Gtk.ActionGroup w1 = new global::Gtk.ActionGroup ("Default");
+ this.File = new global::Gtk.Action ("File", global::Mono.Unix.Catalog.GetString ("_File"), null, null);
+ this.File.ShortLabel = global::Mono.Unix.Catalog.GetString ("File");
+ w1.Add (this.File, null);
+ this.quit = new global::Gtk.Action ("quit", global::Mono.Unix.Catalog.GetString ("_Quit"), null, "gtk-quit");
+ this.quit.ShortLabel = global::Mono.Unix.Catalog.GetString ("_Quit");
+ w1.Add (this.quit, null);
+ this.Compare = new global::Gtk.Action ("Compare", global::Mono.Unix.Catalog.GetString ("_Compare"), null, null);
+ this.Compare.ShortLabel = global::Mono.Unix.Catalog.GetString ("Compare");
+ w1.Add (this.Compare, null);
+ this.Custom = new global::Gtk.Action ("Custom", global::Mono.Unix.Catalog.GetString ("Custom..."), null, null);
+ this.Custom.ShortLabel = global::Mono.Unix.Catalog.GetString ("Custom...");
+ w1.Add (this.Custom, null);
+ this.a = new global::Gtk.Action ("a", global::Mono.Unix.Catalog.GetString ("a"), null, null);
+ this.a.ShortLabel = global::Mono.Unix.Catalog.GetString ("a");
+ w1.Add (this.a, null);
+ this.b = new global::Gtk.Action ("b", global::Mono.Unix.Catalog.GetString ("b"), null, null);
+ this.b.ShortLabel = global::Mono.Unix.Catalog.GetString ("b");
+ w1.Add (this.b, null);
+ this.View = new global::Gtk.Action ("View", global::Mono.Unix.Catalog.GetString ("_View"), null, null);
+ this.View.ShortLabel = global::Mono.Unix.Catalog.GetString ("View");
+ w1.Add (this.View, null);
+ this.ShowMissing = new global::Gtk.ToggleAction ("ShowMissing", global::Mono.Unix.Catalog.GetString ("Show missing"), null, null);
+ this.ShowMissing.Active = true;
+ this.ShowMissing.ShortLabel = global::Mono.Unix.Catalog.GetString ("Show missing");
+ w1.Add (this.ShowMissing, null);
+ this.ShowExtra = new global::Gtk.ToggleAction ("ShowExtra", global::Mono.Unix.Catalog.GetString ("Show extra"), null, null);
+ this.ShowExtra.Active = true;
+ this.ShowExtra.ShortLabel = global::Mono.Unix.Catalog.GetString ("Show extra");
+ w1.Add (this.ShowExtra, null);
+ this.ShowPresent = new global::Gtk.ToggleAction ("ShowPresent", global::Mono.Unix.Catalog.GetString ("Show present"), null, null);
+ this.ShowPresent.Active = true;
+ this.ShowPresent.ShortLabel = global::Mono.Unix.Catalog.GetString ("Show present");
+ w1.Add (this.ShowPresent, null);
+ this.ShowErrors = new global::Gtk.ToggleAction ("ShowErrors", global::Mono.Unix.Catalog.GetString ("Show errors"), null, null);
+ this.ShowErrors.Active = true;
+ this.ShowErrors.ShortLabel = global::Mono.Unix.Catalog.GetString ("Show errors");
+ w1.Add (this.ShowErrors, null);
+ this.Refresh = new global::Gtk.Action ("Refresh", global::Mono.Unix.Catalog.GetString ("Refresh"), null, "gtk-refresh");
+ this.Refresh.ShortLabel = global::Mono.Unix.Catalog.GetString ("Refresh");
+ w1.Add (this.Refresh, "<Control>r");
+ this.ShowTodo = new global::Gtk.ToggleAction ("ShowTodo", global::Mono.Unix.Catalog.GetString ("Show Todo"), null, null);
+ this.ShowTodo.Active = true;
+ this.ShowTodo.ShortLabel = global::Mono.Unix.Catalog.GetString ("Show Todo");
+ w1.Add (this.ShowTodo, null);
+ this.RecentComparisonsAction = new global::Gtk.Action ("RecentComparisonsAction", global::Mono.Unix.Catalog.GetString ("Recent Comparisons"), null, null);
+ this.RecentComparisonsAction.ShortLabel = global::Mono.Unix.Catalog.GetString ("Recent Comparisons");
+ w1.Add (this.RecentComparisonsAction, null);
+ this.ShowNotImplemented = new global::Gtk.ToggleAction ("ShowNotImplemented", global::Mono.Unix.Catalog.GetString ("Show NotImplemented"), null, null);
+ this.ShowNotImplemented.Active = true;
+ this.ShowNotImplemented.ShortLabel = global::Mono.Unix.Catalog.GetString ("Show NotImplemented");
+ w1.Add (this.ShowNotImplemented, null);
+ this.ToggleRowExpansionAction = new global::Gtk.Action ("ToggleRowExpansionAction", global::Mono.Unix.Catalog.GetString ("Toggle Row Expansion"), null, null);
+ this.ToggleRowExpansionAction.ShortLabel = global::Mono.Unix.Catalog.GetString ("Toggle Row Expansion");
+ w1.Add (this.ToggleRowExpansionAction, "<Mod2>space");
+ this.UIManager.InsertActionGroup (w1, 0);
+ this.AddAccelGroup (this.UIManager.AccelGroup);
+ this.Name = "MainWindow";
+ this.Title = global::Mono.Unix.Catalog.GetString ("GUI CorCompare");
+ this.WindowPosition = ((global::Gtk.WindowPosition)(4));
+ // Container child MainWindow.Gtk.Container+ContainerChild
+ this.vbox1 = new global::Gtk.VBox ();
+ this.vbox1.Name = "vbox1";
+ this.vbox1.Spacing = 6;
+ // Container child vbox1.Gtk.Box+BoxChild
+ this.UIManager.AddUiFromString ("<ui><menubar name='menubar1'><menu name='File' action='File'><separator/><menuitem name='Refresh' action='Refresh'/><separator/><menuitem name='quit' action='quit'/></menu><menu name='Compare' action='Compare'><menuitem name='Custom' action='Custom'/></menu><menu name='View' action='View'><menuitem name='ShowErrors' action='ShowErrors'/><menuitem name='ShowMissing' action='ShowMissing'/><menuitem name='ShowNotImplemented' action='ShowNotImplemented'/><menuitem name='ShowExtra' action='ShowExtra'/><menuitem name='ShowTodo' action='ShowTodo'/><menuitem name='ShowPresent' action='ShowPresent'/><separator/><menuitem name='ToggleRowExpansionAction' action='ToggleRowExpansionAction'/></menu></menubar></ui>");
+ this.menubar1 = ((global::Gtk.MenuBar)(this.UIManager.GetWidget ("/menubar1")));
+ this.menubar1.Name = "menubar1";
+ this.vbox1.Add (this.menubar1);
+ global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.vbox1[this.menubar1]));
+ w2.Position = 0;
+ w2.Expand = false;
+ w2.Fill = false;
+ // Container child vbox1.Gtk.Box+BoxChild
+ this.notebook1 = new global::Gtk.Notebook ();
+ this.notebook1.CanFocus = true;
+ this.notebook1.Name = "notebook1";
+ this.notebook1.CurrentPage = 1;
+ this.notebook1.ShowBorder = false;
+ this.notebook1.ShowTabs = false;
+ // Container child notebook1.Gtk.Notebook+NotebookChild
+ this.GtkScrolledWindow = new global::Gtk.ScrolledWindow ();
+ this.GtkScrolledWindow.Name = "GtkScrolledWindow";
+ this.GtkScrolledWindow.ShadowType = ((global::Gtk.ShadowType)(1));
+ // Container child GtkScrolledWindow.Gtk.Container+ContainerChild
+ this.tree = new global::Gtk.TreeView ();
+ this.tree.CanFocus = true;
+ this.tree.Name = "tree";
+ this.GtkScrolledWindow.Add (this.tree);
+ this.notebook1.Add (this.GtkScrolledWindow);
+ // Notebook tab
+ this.label1 = new global::Gtk.Label ();
+ this.label1.Name = "label1";
+ this.label1.LabelProp = global::Mono.Unix.Catalog.GetString ("page1");
+ this.notebook1.SetTabLabel (this.GtkScrolledWindow, this.label1);
+ this.label1.ShowAll ();
+ // Container child notebook1.Gtk.Notebook+NotebookChild
+ this.label3 = new global::Gtk.Label ();
+ this.label3.Name = "label3";
+ this.label3.Xpad = 20;
+ this.label3.Ypad = 20;
+ this.label3.LabelProp = global::Mono.Unix.Catalog.GetString ("This tool allows you to compare the API of assemblies.\n\nTo initiate a comparison, use the \"Compare\" menu and use one of the presets based on the assemblies you have installed on your system and some popular profiles, or use \"Custom\" to define your own comparison");
+ this.label3.Wrap = true;
+ this.notebook1.Add (this.label3);
+ global::Gtk.Notebook.NotebookChild w5 = ((global::Gtk.Notebook.NotebookChild)(this.notebook1[this.label3]));
+ w5.Position = 1;
+ // Notebook tab
+ this.label2 = new global::Gtk.Label ();
+ this.label2.Name = "label2";
+ this.label2.LabelProp = global::Mono.Unix.Catalog.GetString ("page2");
+ this.notebook1.SetTabLabel (this.label3, this.label2);
+ this.label2.ShowAll ();
+ this.vbox1.Add (this.notebook1);
+ global::Gtk.Box.BoxChild w6 = ((global::Gtk.Box.BoxChild)(this.vbox1[this.notebook1]));
+ w6.Position = 1;
+ // Container child vbox1.Gtk.Box+BoxChild
+ this.AdditionalInfoWindow = new global::Gtk.ScrolledWindow ();
+ this.AdditionalInfoWindow.Name = "AdditionalInfoWindow";
+ this.AdditionalInfoWindow.ShadowType = ((global::Gtk.ShadowType)(1));
+ // Container child AdditionalInfoWindow.Gtk.Container+ContainerChild
+ this.AdditionalInfoText = new global::Gtk.TextView ();
+ this.AdditionalInfoText.CanFocus = true;
+ this.AdditionalInfoText.Name = "AdditionalInfoText";
+ this.AdditionalInfoText.Editable = false;
+ this.AdditionalInfoWindow.Add (this.AdditionalInfoText);
+ this.vbox1.Add (this.AdditionalInfoWindow);
+ global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(this.vbox1[this.AdditionalInfoWindow]));
+ w8.Position = 2;
+ w8.Expand = false;
+ // Container child vbox1.Gtk.Box+BoxChild
+ this.expander1 = new global::Gtk.Expander (null);
+ this.expander1.CanFocus = true;
+ this.expander1.Name = "expander1";
+ // Container child expander1.Gtk.Container+ContainerChild
+ this.table1 = new global::Gtk.Table (((uint)(3)), ((uint)(5)), false);
+ this.table1.Name = "table1";
+ this.table1.RowSpacing = ((uint)(6));
+ this.table1.ColumnSpacing = ((uint)(6));
+ // Container child table1.Gtk.Table+TableChild
+ this.label4 = new global::Gtk.Label ();
+ this.label4.Name = "label4";
+ this.label4.Xalign = 1f;
+ this.label4.LabelProp = global::Mono.Unix.Catalog.GetString ("Missing");
+ this.table1.Add (this.label4);
+ global::Gtk.Table.TableChild w9 = ((global::Gtk.Table.TableChild)(this.table1[this.label4]));
+ w9.TopAttach = ((uint)(1));
+ w9.BottomAttach = ((uint)(2));
+ w9.LeftAttach = ((uint)(3));
+ w9.RightAttach = ((uint)(4));
+ w9.XOptions = ((global::Gtk.AttachOptions)(4));
+ w9.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.label5 = new global::Gtk.Label ();
+ this.label5.Name = "label5";
+ this.label5.Xalign = 1f;
+ this.label5.LabelProp = global::Mono.Unix.Catalog.GetString ("TODO");
+ this.table1.Add (this.label5);
+ global::Gtk.Table.TableChild w10 = ((global::Gtk.Table.TableChild)(this.table1[this.label5]));
+ w10.TopAttach = ((uint)(2));
+ w10.BottomAttach = ((uint)(3));
+ w10.XOptions = ((global::Gtk.AttachOptions)(4));
+ w10.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.label6 = new global::Gtk.Label ();
+ this.label6.Name = "label6";
+ this.label6.Xalign = 1f;
+ this.label6.LabelProp = global::Mono.Unix.Catalog.GetString ("Extra");
+ this.table1.Add (this.label6);
+ global::Gtk.Table.TableChild w11 = ((global::Gtk.Table.TableChild)(this.table1[this.label6]));
+ w11.TopAttach = ((uint)(2));
+ w11.BottomAttach = ((uint)(3));
+ w11.LeftAttach = ((uint)(3));
+ w11.RightAttach = ((uint)(4));
+ w11.XOptions = ((global::Gtk.AttachOptions)(4));
+ w11.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.label7 = new global::Gtk.Label ();
+ this.label7.Name = "label7";
+ this.label7.Xalign = 1f;
+ this.label7.LabelProp = global::Mono.Unix.Catalog.GetString ("Not implemented");
+ this.table1.Add (this.label7);
+ global::Gtk.Table.TableChild w12 = ((global::Gtk.Table.TableChild)(this.table1[this.label7]));
+ w12.TopAttach = ((uint)(1));
+ w12.BottomAttach = ((uint)(2));
+ w12.XOptions = ((global::Gtk.AttachOptions)(4));
+ w12.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.label8 = new global::Gtk.Label ();
+ this.label8.Name = "label8";
+ this.label8.Xalign = 1f;
+ this.label8.LabelProp = global::Mono.Unix.Catalog.GetString ("No errors");
+ this.label8.Justify = ((global::Gtk.Justification)(2));
+ this.table1.Add (this.label8);
+ global::Gtk.Table.TableChild w13 = ((global::Gtk.Table.TableChild)(this.table1[this.label8]));
+ w13.XOptions = ((global::Gtk.AttachOptions)(4));
+ w13.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.label9 = new global::Gtk.Label ();
+ this.label9.Name = "label9";
+ this.label9.Xalign = 1f;
+ this.label9.LabelProp = global::Mono.Unix.Catalog.GetString ("Error");
+ this.table1.Add (this.label9);
+ global::Gtk.Table.TableChild w14 = ((global::Gtk.Table.TableChild)(this.table1[this.label9]));
+ w14.LeftAttach = ((uint)(3));
+ w14.RightAttach = ((uint)(4));
+ w14.XOptions = ((global::Gtk.AttachOptions)(4));
+ w14.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.legendImageError = new global::Gtk.Image ();
+ this.legendImageError.Name = "legendImageError";
+ this.table1.Add (this.legendImageError);
+ global::Gtk.Table.TableChild w15 = ((global::Gtk.Table.TableChild)(this.table1[this.legendImageError]));
+ w15.LeftAttach = ((uint)(4));
+ w15.RightAttach = ((uint)(5));
+ w15.XOptions = ((global::Gtk.AttachOptions)(4));
+ w15.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.legendImageExtra = new global::Gtk.Image ();
+ this.legendImageExtra.Name = "legendImageExtra";
+ this.table1.Add (this.legendImageExtra);
+ global::Gtk.Table.TableChild w16 = ((global::Gtk.Table.TableChild)(this.table1[this.legendImageExtra]));
+ w16.TopAttach = ((uint)(2));
+ w16.BottomAttach = ((uint)(3));
+ w16.LeftAttach = ((uint)(4));
+ w16.RightAttach = ((uint)(5));
+ w16.XOptions = ((global::Gtk.AttachOptions)(4));
+ w16.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.legendImageMissing = new global::Gtk.Image ();
+ this.legendImageMissing.Name = "legendImageMissing";
+ this.table1.Add (this.legendImageMissing);
+ global::Gtk.Table.TableChild w17 = ((global::Gtk.Table.TableChild)(this.table1[this.legendImageMissing]));
+ w17.TopAttach = ((uint)(1));
+ w17.BottomAttach = ((uint)(2));
+ w17.LeftAttach = ((uint)(4));
+ w17.RightAttach = ((uint)(5));
+ w17.XOptions = ((global::Gtk.AttachOptions)(4));
+ w17.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.legendImageNIEX = new global::Gtk.Image ();
+ this.legendImageNIEX.Name = "legendImageNIEX";
+ this.table1.Add (this.legendImageNIEX);
+ global::Gtk.Table.TableChild w18 = ((global::Gtk.Table.TableChild)(this.table1[this.legendImageNIEX]));
+ w18.TopAttach = ((uint)(1));
+ w18.BottomAttach = ((uint)(2));
+ w18.LeftAttach = ((uint)(1));
+ w18.RightAttach = ((uint)(2));
+ w18.XOptions = ((global::Gtk.AttachOptions)(4));
+ w18.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.legendImageOK = new global::Gtk.Image ();
+ this.legendImageOK.Name = "legendImageOK";
+ this.table1.Add (this.legendImageOK);
+ global::Gtk.Table.TableChild w19 = ((global::Gtk.Table.TableChild)(this.table1[this.legendImageOK]));
+ w19.LeftAttach = ((uint)(1));
+ w19.RightAttach = ((uint)(2));
+ w19.XOptions = ((global::Gtk.AttachOptions)(4));
+ w19.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.legendImageTODO = new global::Gtk.Image ();
+ this.legendImageTODO.Name = "legendImageTODO";
+ this.table1.Add (this.legendImageTODO);
+ global::Gtk.Table.TableChild w20 = ((global::Gtk.Table.TableChild)(this.table1[this.legendImageTODO]));
+ w20.TopAttach = ((uint)(2));
+ w20.BottomAttach = ((uint)(3));
+ w20.LeftAttach = ((uint)(1));
+ w20.RightAttach = ((uint)(2));
+ w20.XOptions = ((global::Gtk.AttachOptions)(4));
+ w20.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.vseparator1 = new global::Gtk.VSeparator ();
+ this.vseparator1.Name = "vseparator1";
+ this.table1.Add (this.vseparator1);
+ global::Gtk.Table.TableChild w21 = ((global::Gtk.Table.TableChild)(this.table1[this.vseparator1]));
+ w21.LeftAttach = ((uint)(2));
+ w21.RightAttach = ((uint)(3));
+ w21.XOptions = ((global::Gtk.AttachOptions)(4));
+ w21.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.vseparator2 = new global::Gtk.VSeparator ();
+ this.vseparator2.Name = "vseparator2";
+ this.table1.Add (this.vseparator2);
+ global::Gtk.Table.TableChild w22 = ((global::Gtk.Table.TableChild)(this.table1[this.vseparator2]));
+ w22.TopAttach = ((uint)(1));
+ w22.BottomAttach = ((uint)(2));
+ w22.LeftAttach = ((uint)(2));
+ w22.RightAttach = ((uint)(3));
+ w22.XOptions = ((global::Gtk.AttachOptions)(4));
+ w22.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table1.Gtk.Table+TableChild
+ this.vseparator3 = new global::Gtk.VSeparator ();
+ this.vseparator3.Name = "vseparator3";
+ this.table1.Add (this.vseparator3);
+ global::Gtk.Table.TableChild w23 = ((global::Gtk.Table.TableChild)(this.table1[this.vseparator3]));
+ w23.TopAttach = ((uint)(2));
+ w23.BottomAttach = ((uint)(3));
+ w23.LeftAttach = ((uint)(2));
+ w23.RightAttach = ((uint)(3));
+ w23.XOptions = ((global::Gtk.AttachOptions)(4));
+ w23.YOptions = ((global::Gtk.AttachOptions)(4));
+ this.expander1.Add (this.table1);
+ this.GtkLabel4 = new global::Gtk.Label ();
+ this.GtkLabel4.Name = "GtkLabel4";
+ this.GtkLabel4.LabelProp = global::Mono.Unix.Catalog.GetString ("Legend");
+ this.GtkLabel4.UseUnderline = true;
+ this.expander1.LabelWidget = this.GtkLabel4;
+ this.vbox1.Add (this.expander1);
+ global::Gtk.Box.BoxChild w25 = ((global::Gtk.Box.BoxChild)(this.vbox1[this.expander1]));
+ w25.Position = 3;
+ w25.Expand = false;
+ // Container child vbox1.Gtk.Box+BoxChild
+ this.statusbar1 = new global::Gtk.Statusbar ();
+ this.statusbar1.Name = "statusbar1";
+ this.statusbar1.Spacing = 6;
+ // Container child statusbar1.Gtk.Box+BoxChild
+ this.progressbar1 = new global::Gtk.ProgressBar ();
+ this.progressbar1.Name = "progressbar1";
+ this.statusbar1.Add (this.progressbar1);
+ global::Gtk.Box.BoxChild w26 = ((global::Gtk.Box.BoxChild)(this.statusbar1[this.progressbar1]));
+ w26.Position = 2;
+ this.vbox1.Add (this.statusbar1);
+ global::Gtk.Box.BoxChild w27 = ((global::Gtk.Box.BoxChild)(this.vbox1[this.statusbar1]));
+ w27.Position = 4;
+ w27.Expand = false;
+ w27.Fill = false;
+ this.Add (this.vbox1);
+ if ((this.Child != null)) {
+ this.Child.ShowAll ();
+ }
+ this.DefaultWidth = 648;
+ this.DefaultHeight = 759;
+ this.AdditionalInfoWindow.Hide ();
+ this.Show ();
+ this.DeleteEvent += new global::Gtk.DeleteEventHandler (this.OnDeleteEvent);
+ this.quit.Activated += new global::System.EventHandler (this.OnQuitActivated);
+ this.Custom.Activated += new global::System.EventHandler (this.OnCustomActivated);
+ this.ShowMissing.Toggled += new global::System.EventHandler (this.OnShowMissingToggled);
+ this.ShowExtra.Toggled += new global::System.EventHandler (this.OnShowExtraToggled);
+ this.ShowPresent.Toggled += new global::System.EventHandler (this.OnShowPresentToggled);
+ this.ShowErrors.Toggled += new global::System.EventHandler (this.OnShowErrorsToggled);
+ this.Refresh.Activated += new global::System.EventHandler (this.OnRefreshActivated);
+ this.ShowTodo.Toggled += new global::System.EventHandler (this.OnShowTodoToggled);
+ this.ShowNotImplemented.Toggled += new global::System.EventHandler (this.OnShowNotImplementedToggled);
+ this.ToggleRowExpansionAction.Activated += new global::System.EventHandler (this.OnToggleRowExpansion);
+ }
}
diff --git a/gui-compare/gtk-gui/generated.cs b/gui-compare/gtk-gui/generated.cs
index 7381c4d3..aa96390c 100644
--- a/gui-compare/gtk-gui/generated.cs
+++ b/gui-compare/gtk-gui/generated.cs
@@ -1,82 +1,82 @@
-// ------------------------------------------------------------------------------
-// <autogenerated>
-// This code was generated by a tool.
-//
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-// </autogenerated>
-// ------------------------------------------------------------------------------
-namespace Stetic {
-
-
- internal class Gui {
-
- private static bool initialized;
-
- internal static void Initialize(Gtk.Widget iconRenderer) {
- if ((Stetic.Gui.initialized == false)) {
- Stetic.Gui.initialized = true;
- }
- }
- }
-
- internal class BinContainer {
-
- private Gtk.Widget child;
-
- private Gtk.UIManager uimanager;
-
- public static BinContainer Attach(Gtk.Bin bin) {
- BinContainer bc = new BinContainer();
- bin.SizeRequested += new Gtk.SizeRequestedHandler(bc.OnSizeRequested);
- bin.SizeAllocated += new Gtk.SizeAllocatedHandler(bc.OnSizeAllocated);
- bin.Added += new Gtk.AddedHandler(bc.OnAdded);
- return bc;
- }
-
- private void OnSizeRequested(object sender, Gtk.SizeRequestedArgs args) {
- if ((this.child != null)) {
- args.Requisition = this.child.SizeRequest();
- }
- }
-
- private void OnSizeAllocated(object sender, Gtk.SizeAllocatedArgs args) {
- if ((this.child != null)) {
- this.child.Allocation = args.Allocation;
- }
- }
-
- private void OnAdded(object sender, Gtk.AddedArgs args) {
- this.child = args.Widget;
- }
-
- public void SetUiManager(Gtk.UIManager uim) {
- this.uimanager = uim;
- this.child.Realized += new System.EventHandler(this.OnRealized);
- }
-
- private void OnRealized(object sender, System.EventArgs args) {
- if ((this.uimanager != null)) {
- Gtk.Widget w;
- w = this.child.Toplevel;
- if (((w != null) && typeof(Gtk.Window).IsInstanceOfType(w))) {
- ((Gtk.Window)(w)).AddAccelGroup(this.uimanager.AccelGroup);
- this.uimanager = null;
- }
- }
- }
- }
-
- internal class ActionGroups {
-
- public static Gtk.ActionGroup GetActionGroup(System.Type type) {
- return Stetic.ActionGroups.GetActionGroup(type.FullName);
- }
-
- public static Gtk.ActionGroup GetActionGroup(string name) {
- return null;
- }
- }
+// This file has been generated by the GUI designer. Do not modify.
+namespace Stetic
+{
+ internal class Gui
+ {
+ private static bool initialized;
+
+ static internal void Initialize (Gtk.Widget iconRenderer)
+ {
+ if ((Stetic.Gui.initialized == false)) {
+ Stetic.Gui.initialized = true;
+ }
+ }
+ }
+
+ internal class BinContainer
+ {
+ private Gtk.Widget child;
+
+ private Gtk.UIManager uimanager;
+
+ public static BinContainer Attach (Gtk.Bin bin)
+ {
+ BinContainer bc = new BinContainer ();
+ bin.SizeRequested += new Gtk.SizeRequestedHandler (bc.OnSizeRequested);
+ bin.SizeAllocated += new Gtk.SizeAllocatedHandler (bc.OnSizeAllocated);
+ bin.Added += new Gtk.AddedHandler (bc.OnAdded);
+ return bc;
+ }
+
+ private void OnSizeRequested (object sender, Gtk.SizeRequestedArgs args)
+ {
+ if ((this.child != null)) {
+ args.Requisition = this.child.SizeRequest ();
+ }
+ }
+
+ private void OnSizeAllocated (object sender, Gtk.SizeAllocatedArgs args)
+ {
+ if ((this.child != null)) {
+ this.child.Allocation = args.Allocation;
+ }
+ }
+
+ private void OnAdded (object sender, Gtk.AddedArgs args)
+ {
+ this.child = args.Widget;
+ }
+
+ public void SetUiManager (Gtk.UIManager uim)
+ {
+ this.uimanager = uim;
+ this.child.Realized += new System.EventHandler (this.OnRealized);
+ }
+
+ private void OnRealized (object sender, System.EventArgs args)
+ {
+ if ((this.uimanager != null)) {
+ Gtk.Widget w;
+ w = this.child.Toplevel;
+ if (((w != null) && typeof(Gtk.Window).IsInstanceOfType (w))) {
+ ((Gtk.Window)(w)).AddAccelGroup (this.uimanager.AccelGroup);
+ this.uimanager = null;
+ }
+ }
+ }
+ }
+
+ internal class ActionGroups
+ {
+ public static Gtk.ActionGroup GetActionGroup (System.Type type)
+ {
+ return Stetic.ActionGroups.GetActionGroup (type.FullName);
+ }
+
+ public static Gtk.ActionGroup GetActionGroup (string name)
+ {
+ return null;
+ }
+ }
}
diff --git a/gui-compare/gtk-gui/gui.stetic b/gui-compare/gtk-gui/gui.stetic
index bfae6500..ce143e5f 100644
--- a/gui-compare/gtk-gui/gui.stetic
+++ b/gui-compare/gtk-gui/gui.stetic
@@ -2,13 +2,13 @@
<stetic-interface>
<configuration>
<images-root-path>..</images-root-path>
- <target-gtk-version>2.14</target-gtk-version>
+ <target-gtk-version>2.10</target-gtk-version>
</configuration>
<import>
- <widget-library name="glade-sharp, Version=2.14.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
+ <widget-library name="glade-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
<widget-library name="../bin/Debug/gui-compare.exe" internal="true" />
</import>
- <widget class="Gtk.Window" id="MainWindow" design-size="648 577">
+ <widget class="Gtk.Window" id="MainWindow" design-size="648 759">
<action-group name="Default">
<action id="File">
<property name="Type">Action</property>
@@ -96,7 +96,7 @@
<property name="Active">True</property>
<signal name="Toggled" handler="OnShowTodoToggled" />
</action>
- <action id="RecentComparisons">
+ <action id="RecentComparisonsAction">
<property name="Type">Action</property>
<property name="Label" translatable="yes">Recent Comparisons</property>
<property name="ShortLabel" translatable="yes">Recent Comparisons</property>
@@ -130,7 +130,6 @@
<property name="MemberName" />
<node name="menubar1" type="Menubar">
<node type="Menu" action="File">
- <node type="Menu" action="RecentComparisons" />
<node type="Separator" />
<node type="Menuitem" action="Refresh" />
<node type="Separator" />
@@ -217,19 +216,24 @@ To initiate a comparison, use the "Compare" menu and use one of the presets base
</packing>
</child>
<child>
- <widget class="Gtk.Label" id="summary">
+ <widget class="Gtk.ScrolledWindow" id="AdditionalInfoWindow">
<property name="MemberName" />
<property name="Visible">False</property>
- <property name="Xpad">6</property>
- <property name="Ypad">6</property>
- <property name="Xalign">0</property>
- <property name="UseMarkup">True</property>
+ <property name="ShadowType">In</property>
+ <child>
+ <widget class="Gtk.TextView" id="AdditionalInfoText">
+ <property name="MemberName" />
+ <property name="CanFocus">True</property>
+ <property name="ShowScrollbars">True</property>
+ <property name="Editable">False</property>
+ <property name="Text" translatable="yes" />
+ </widget>
+ </child>
</widget>
<packing>
<property name="Position">2</property>
- <property name="AutoSize">True</property>
+ <property name="AutoSize">False</property>
<property name="Expand">False</property>
- <property name="Fill">False</property>
</packing>
</child>
<child>
@@ -712,7 +716,6 @@ To initiate a comparison, use the "Compare" menu and use one of the presets base
<property name="WindowPosition">CenterOnParent</property>
<property name="Buttons">2</property>
<property name="HelpButton">False</property>
- <property name="HasSeparator">False</property>
<child internal-child="VBox">
<widget class="Gtk.VBox" id="dialog1_VBox">
<property name="MemberName" />
diff --git a/gui-compare/gtk-gui/guicompare.ProviderSelector.cs b/gui-compare/gtk-gui/guicompare.ProviderSelector.cs
index dcdc059a..5b35c1bf 100644
--- a/gui-compare/gtk-gui/guicompare.ProviderSelector.cs
+++ b/gui-compare/gtk-gui/guicompare.ProviderSelector.cs
@@ -1,102 +1,94 @@
-// ------------------------------------------------------------------------------
-// <autogenerated>
-// This code was generated by a tool.
-//
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-// </autogenerated>
-// ------------------------------------------------------------------------------
-namespace guicompare {
-
-
- public partial class ProviderSelector {
-
- private Gtk.Table table2;
-
- private Gtk.FileChooserButton filechooserbutton1;
-
- private Gtk.FileChooserButton filechooserbutton2;
-
- private Gtk.Label label2;
-
- private Gtk.RadioButton radiobutton1;
-
- private Gtk.RadioButton radiobutton2;
-
- protected virtual void Build() {
- Stetic.Gui.Initialize(this);
- // Widget guicompare.ProviderSelector
- Stetic.BinContainer.Attach(this);
- this.Name = "guicompare.ProviderSelector";
- // Container child guicompare.ProviderSelector.Gtk.Container+ContainerChild
- this.table2 = new Gtk.Table(((uint)(4)), ((uint)(2)), false);
- this.table2.Name = "table2";
- this.table2.RowSpacing = ((uint)(6));
- this.table2.ColumnSpacing = ((uint)(6));
- this.table2.BorderWidth = ((uint)(4));
- // Container child table2.Gtk.Table+TableChild
- this.filechooserbutton1 = new Gtk.FileChooserButton(Mono.Unix.Catalog.GetString("Select A File"), ((Gtk.FileChooserAction)(0)));
- this.filechooserbutton1.Name = "filechooserbutton1";
- this.table2.Add(this.filechooserbutton1);
- Gtk.Table.TableChild w1 = ((Gtk.Table.TableChild)(this.table2[this.filechooserbutton1]));
- w1.TopAttach = ((uint)(1));
- w1.BottomAttach = ((uint)(2));
- w1.LeftAttach = ((uint)(1));
- w1.RightAttach = ((uint)(2));
- w1.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table2.Gtk.Table+TableChild
- this.filechooserbutton2 = new Gtk.FileChooserButton(Mono.Unix.Catalog.GetString("Select A File"), ((Gtk.FileChooserAction)(0)));
- this.filechooserbutton2.Name = "filechooserbutton2";
- this.table2.Add(this.filechooserbutton2);
- Gtk.Table.TableChild w2 = ((Gtk.Table.TableChild)(this.table2[this.filechooserbutton2]));
- w2.TopAttach = ((uint)(3));
- w2.BottomAttach = ((uint)(4));
- w2.LeftAttach = ((uint)(1));
- w2.RightAttach = ((uint)(2));
- w2.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table2.Gtk.Table+TableChild
- this.label2 = new Gtk.Label();
- this.label2.Name = "label2";
- this.label2.Xpad = 8;
- this.table2.Add(this.label2);
- Gtk.Table.TableChild w3 = ((Gtk.Table.TableChild)(this.table2[this.label2]));
- w3.TopAttach = ((uint)(1));
- w3.BottomAttach = ((uint)(2));
- w3.XOptions = ((Gtk.AttachOptions)(4));
- w3.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table2.Gtk.Table+TableChild
- this.radiobutton1 = new Gtk.RadioButton(Mono.Unix.Catalog.GetString("API Description"));
- this.radiobutton1.CanFocus = true;
- this.radiobutton1.Name = "radiobutton1";
- this.radiobutton1.Active = true;
- this.radiobutton1.DrawIndicator = true;
- this.radiobutton1.UseUnderline = true;
- this.radiobutton1.Group = new GLib.SList(System.IntPtr.Zero);
- this.table2.Add(this.radiobutton1);
- Gtk.Table.TableChild w4 = ((Gtk.Table.TableChild)(this.table2[this.radiobutton1]));
- w4.RightAttach = ((uint)(2));
- w4.YOptions = ((Gtk.AttachOptions)(4));
- // Container child table2.Gtk.Table+TableChild
- this.radiobutton2 = new Gtk.RadioButton(Mono.Unix.Catalog.GetString("Assembly"));
- this.radiobutton2.CanFocus = true;
- this.radiobutton2.Name = "radiobutton2";
- this.radiobutton2.DrawIndicator = true;
- this.radiobutton2.UseUnderline = true;
- this.radiobutton2.Group = this.radiobutton1.Group;
- this.table2.Add(this.radiobutton2);
- Gtk.Table.TableChild w5 = ((Gtk.Table.TableChild)(this.table2[this.radiobutton2]));
- w5.TopAttach = ((uint)(2));
- w5.BottomAttach = ((uint)(3));
- w5.RightAttach = ((uint)(2));
- w5.YOptions = ((Gtk.AttachOptions)(4));
- this.Add(this.table2);
- if ((this.Child != null)) {
- this.Child.ShowAll();
- }
- this.Show();
- this.filechooserbutton2.FocusChildSet += new Gtk.FocusChildSetHandler(this.OnFilechooserbutton2FocusChildSet);
- }
- }
+// This file has been generated by the GUI designer. Do not modify.
+namespace guicompare
+{
+ public partial class ProviderSelector
+ {
+ private global::Gtk.Table table2;
+
+ private global::Gtk.FileChooserButton filechooserbutton1;
+
+ private global::Gtk.FileChooserButton filechooserbutton2;
+
+ private global::Gtk.Label label2;
+
+ private global::Gtk.RadioButton radiobutton1;
+
+ private global::Gtk.RadioButton radiobutton2;
+
+ protected virtual void Build ()
+ {
+ global::Stetic.Gui.Initialize (this);
+ // Widget guicompare.ProviderSelector
+ global::Stetic.BinContainer.Attach (this);
+ this.Name = "guicompare.ProviderSelector";
+ // Container child guicompare.ProviderSelector.Gtk.Container+ContainerChild
+ this.table2 = new global::Gtk.Table (((uint)(4)), ((uint)(2)), false);
+ this.table2.Name = "table2";
+ this.table2.RowSpacing = ((uint)(6));
+ this.table2.ColumnSpacing = ((uint)(6));
+ this.table2.BorderWidth = ((uint)(4));
+ // Container child table2.Gtk.Table+TableChild
+ this.filechooserbutton1 = new global::Gtk.FileChooserButton (global::Mono.Unix.Catalog.GetString ("Select A File"), ((global::Gtk.FileChooserAction)(0)));
+ this.filechooserbutton1.Name = "filechooserbutton1";
+ this.table2.Add (this.filechooserbutton1);
+ global::Gtk.Table.TableChild w1 = ((global::Gtk.Table.TableChild)(this.table2[this.filechooserbutton1]));
+ w1.TopAttach = ((uint)(1));
+ w1.BottomAttach = ((uint)(2));
+ w1.LeftAttach = ((uint)(1));
+ w1.RightAttach = ((uint)(2));
+ w1.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table2.Gtk.Table+TableChild
+ this.filechooserbutton2 = new global::Gtk.FileChooserButton (global::Mono.Unix.Catalog.GetString ("Select A File"), ((global::Gtk.FileChooserAction)(0)));
+ this.filechooserbutton2.Name = "filechooserbutton2";
+ this.table2.Add (this.filechooserbutton2);
+ global::Gtk.Table.TableChild w2 = ((global::Gtk.Table.TableChild)(this.table2[this.filechooserbutton2]));
+ w2.TopAttach = ((uint)(3));
+ w2.BottomAttach = ((uint)(4));
+ w2.LeftAttach = ((uint)(1));
+ w2.RightAttach = ((uint)(2));
+ w2.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table2.Gtk.Table+TableChild
+ this.label2 = new global::Gtk.Label ();
+ this.label2.Name = "label2";
+ this.label2.Xpad = 8;
+ this.table2.Add (this.label2);
+ global::Gtk.Table.TableChild w3 = ((global::Gtk.Table.TableChild)(this.table2[this.label2]));
+ w3.TopAttach = ((uint)(1));
+ w3.BottomAttach = ((uint)(2));
+ w3.XOptions = ((global::Gtk.AttachOptions)(4));
+ w3.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table2.Gtk.Table+TableChild
+ this.radiobutton1 = new global::Gtk.RadioButton (global::Mono.Unix.Catalog.GetString ("API Description"));
+ this.radiobutton1.CanFocus = true;
+ this.radiobutton1.Name = "radiobutton1";
+ this.radiobutton1.Active = true;
+ this.radiobutton1.DrawIndicator = true;
+ this.radiobutton1.UseUnderline = true;
+ this.radiobutton1.Group = new global::GLib.SList (global::System.IntPtr.Zero);
+ this.table2.Add (this.radiobutton1);
+ global::Gtk.Table.TableChild w4 = ((global::Gtk.Table.TableChild)(this.table2[this.radiobutton1]));
+ w4.RightAttach = ((uint)(2));
+ w4.YOptions = ((global::Gtk.AttachOptions)(4));
+ // Container child table2.Gtk.Table+TableChild
+ this.radiobutton2 = new global::Gtk.RadioButton (global::Mono.Unix.Catalog.GetString ("Assembly"));
+ this.radiobutton2.CanFocus = true;
+ this.radiobutton2.Name = "radiobutton2";
+ this.radiobutton2.DrawIndicator = true;
+ this.radiobutton2.UseUnderline = true;
+ this.radiobutton2.Group = this.radiobutton1.Group;
+ this.table2.Add (this.radiobutton2);
+ global::Gtk.Table.TableChild w5 = ((global::Gtk.Table.TableChild)(this.table2[this.radiobutton2]));
+ w5.TopAttach = ((uint)(2));
+ w5.BottomAttach = ((uint)(3));
+ w5.RightAttach = ((uint)(2));
+ w5.YOptions = ((global::Gtk.AttachOptions)(4));
+ this.Add (this.table2);
+ if ((this.Child != null)) {
+ this.Child.ShowAll ();
+ }
+ this.Show ();
+ this.filechooserbutton2.FocusChildSet += new global::Gtk.FocusChildSetHandler (this.OnFilechooserbutton2FocusChildSet);
+ }
+ }
}
diff --git a/gui-compare/gui-compare.in b/gui-compare/gui-compare.in
index 598d351b..456a9fa6 100644
--- a/gui-compare/gui-compare.in
+++ b/gui-compare/gui-compare.in
@@ -1,3 +1,3 @@
#!/bin/sh
-exec mono "@prefix@/lib/gui-compare/gui-compare.exe" "$@"
+exec mono $MONO_OPTIONS "@prefix@/lib/gui-compare/gui-compare.exe" "$@"