public void SetPListContainer (PObjectContainer container) { var summaryScrolledWindow = new PListEditorSection (); AppendPage (summaryScrolledWindow, new Label (GettextCatalog.GetString ("Summary"))); var advancedScrolledWindow = new PListEditorSection (); AppendPage (advancedScrolledWindow, new Label (GettextCatalog.GetString ("Advanced"))); foreach (var section in handler.GetSections (proj, container)) { var expander = new MacExpander () { ContentLabel = section.Name, Expandable = true, }; expander.SetWidget (section.Widget); if (section.IsAdvanced) { advancedScrolledWindow.AddExpander (expander); } else { summaryScrolledWindow.AddExpander (expander); } if (section.CheckVisible != null) { expander.Visible = section.CheckVisible (container); //capture section for closure var s = section; container.Changed += delegate { expander.Visible = s.CheckVisible (container); }; } } Show (); }
public override void Load (string fileName) { ContentName = fileName; if (pobject == null) { var dict = new PDictionary (); if (dict.Reload (fileName)) { pobject = dict; } else { var arr = new PArray (); if (!arr.Reload (fileName)) { MessageService.ShowError (GettextCatalog.GetString ("Can't load plist file {0}.", fileName)); return; } pobject = arr; } Buffer = null; widget.SetPListContainer (pobject); pobject.Changed += (sender, e) => { Buffer = null; IsDirty = true; }; } this.IsDirty = false; }
public void SetPListContainer (PObjectContainer value) { nsDictionary = value; nsDictionary.Changed += delegate { QueueDraw (); }; RefreshTree (); }
public void SetPListContainer (PObjectContainer value) { RootPObject = value; RootPObject.Changed += delegate { RefreshTree (); QueueDraw (); }; RefreshTree (); }
public void SetPListContainer (PObjectContainer container) { if (!(container is PArray)) throw new ArgumentException ("The PList container must be a PArray.", "container"); array = (PArray) container; array.Changed += OnArrayChanged; RefreshList (); }