public CombineOptionsDialog(Gtk.Window parentWindow, Combine combine, IAddInTreeNode node, IAddInTreeNode configurationNode) : base(parentWindow, null, null) { this.combine = combine; this.configurationNode = configurationNode; this.Title = GettextCatalog.GetString ("Combine Options"); configData = ConfigurationData.Build (combine); configData.ConfigurationsChanged += new EventHandler (OnConfigChanged); properties = new DefaultProperties(); properties.SetProperty ("Combine", combine); properties.SetProperty ("CombineConfigData", configData); AddNodes (properties, Gtk.TreeIter.Zero, node.BuildChildItems (this)); SelectFirstNode (); }
public static ConfigurationData Build(CombineEntry entry) { ConfigurationData data = new ConfigurationData (entry); foreach (IConfiguration conf in entry.Configurations) { IConfiguration copy = entry.CreateConfiguration (conf.Name); copy.CopyFrom (conf); data.Configurations.Add (copy); } if (entry is Combine) { foreach (CombineEntry e in ((Combine)entry).Entries) data.Children.Add (ConfigurationData.Build (e)); } return data; }