Exemple #1
0
        private void Select(Filter filter)
        {
            if (filter == SelectedFilter)
                return;

            SelectedFilter = filter;
            FilterListBox.SelectedIndex = FilterSource.Filters.IndexOf(filter);
            PopulateControls(SelectedFilter);
        }
Exemple #2
0
        private void Select(int filterindex)
        {
            if (filterindex != -1)
            {
                var filter = FilterSource.Filters[filterindex];
                if (SelectedFilter == filter)
                    return;

                SelectedFilter = filter;
                FilterListBox.SelectedIndex = filterindex;
                PopulateControls(SelectedFilter);
            }
            else
            {
                SelectedFilter = null;
            }
        }
Exemple #3
0
        private void PopulateControls(Filter filter)
        {
            if (propertyPanel.Controls.Contains(view))
                propertyPanel.Controls.Remove(view);

            view = new PropertiesView(filter.GetSettings(), filter, filter.GetProperties, filter.GetDefaults, filter.Update);
            propertyPanel.Controls.Add(view);
        }
Exemple #4
0
        ContextMenuStrip FilterMenu()
        {
            var filtermenu = new ContextMenuStrip();
            foreach (string filterType in Obs.GetSourceFilterTypes())
            {
                string displayname = Obs.GetSourceTypeDisplayName(filterType) + FilterSource.Filters.Count + 1;

                var menuitem = new ToolStripMenuItem(displayname + " (" + filterType + ")");

                menuitem.Click += (o, args) =>
                {
                    var filter = new Filter(filterType, displayname);
                    FilterSource.AddFilter(filter);
                    Select(filter);
                };

                filtermenu.Items.Add(menuitem);
            }

            return filtermenu;
        }
Exemple #5
0
        public int MoveItem(Filter filter, obs_order_movement direction)
        {
            var oldindex = Filters.IndexOf(filter);
            int newindex = -1;
            switch (direction)
            {
                case obs_order_movement.OBS_ORDER_MOVE_UP:
                    newindex = oldindex - 1;
                    break;
                case obs_order_movement.OBS_ORDER_MOVE_DOWN:
                    newindex = oldindex + 1;
                    break;
                case obs_order_movement.OBS_ORDER_MOVE_TOP:
                    newindex = 0;
                    break;
                case obs_order_movement.OBS_ORDER_MOVE_BOTTOM:
                    newindex = Filters.Count - 1;
                    break;
            }

            SetFilterOrder(filter, direction);

            Filters.Move(oldindex, newindex);

            Debug.WriteLine("{0} new index is {1}", filter.Name, newindex);
            return newindex;
        }
Exemple #6
0
 public void AddFilter(Filter filtersource)
 {
     base.AddFilter(filtersource);
     Filters.Insert(0, filtersource);
 }
Exemple #7
0
 public void RemoveFilter(Filter filter)
 {
     base.RemoveFilter(filter);
     Filters.Remove(filter);
     filter.Remove();
     filter.Dispose();
 }