Esempio n. 1
0
        public FilterM GetSelectionFilter()
        {
            if (MyListView.SelectedItems.Count > 0)
            {
                bool more = false;

                FilterM f = (MyListView.SelectedItems[0] as FilterVM).M;
                for (int i = 1; i < MyListView.SelectedItems.Count; ++i)
                {
                    f = FilterM.Combine(f,
                                        (MyListView.SelectedItems[i] as FilterVM).M);
                    more = true;
                }

                if (!more)
                {
                    f = f.Clone();
                }
                f.SearchString = MySearchTextBox.Text;

                return(f);
            }

            return(null);
        }
Esempio n. 2
0
        internal static FilterM Combine(FilterM f, FilterM f2)
        {
            FilterM c = f.Clone();

            c.ShowActive   |= f2.ShowActive;
            c.ShowInactive |= f2.ShowInactive;
            c.ShowTimers   |= f2.ShowTimers;
            c.ShowAlarms   |= f2.ShowAlarms;

            c.GroupNames = Utils.AddEnumerablesDistinct(c.GroupNames, f2.GroupNames).ToList();

            string ss1 = c.SearchString;
            string ss2 = f2.SearchString;

            c.SearchString = ss1.Trim() + " " + ss2.Trim();

            return(c);
        }