#region Properties /// /// Sets or gets the current source selected. /// public Source CurrentSource { get { // Get the active metric TreeIter iter; if (!GetActiveIter(out iter)) return Source.CustomSource; // Return this value ListStore store = (ListStore) Model; return store.GetValue(iter, 0) as Source; } set { // Go through the rows. If they match, set it and stop ListStore store = (ListStore) Model; TreeIter iter; store.GetIterFirst(out iter); // Check for null if (value == null) { SetActiveIter(iter); return; } // Go through the others while (store.IterNext(ref iter)) { // Get the metric for this iter Source bm = (Source) store.GetValue(iter, 0); if (value.Name == bm.Name) { SetActiveIter(iter); return; } } // Set the first value Active = 0; } } #endregion