Ejemplo n.º 1
0
        private void SetFilterMI_Click(object sender, EventArgs e)
        {
            try
            {
                if (m_subscription == null)
                {
                    return;
                }

                MonitoredItem[] monitoredItems = (MonitoredItem[])GetSelectedItems(typeof(MonitoredItem));

                if (monitoredItems.Length == 1)
                {
                    if (monitoredItems[0].NodeClass == NodeClass.Variable || monitoredItems[0].NodeClass == NodeClass.VariableType)
                    {
                        if (!new DataChangeFilterEditDlg().ShowDialog(m_subscription.Session, monitoredItems[0]))
                        {
                            return;
                        }
                    }
                    else
                    {
                        EventFilter filter = new EventFilterDlg().ShowDialog(m_subscription.Session, monitoredItems[0].Filter as EventFilter, false);

                        if (filter == null)
                        {
                            return;
                        }

                        monitoredItems[0].Filter = filter;
                    }

                    m_subscription.ModifyItems();
                    ApplyChanges(false);
                }
            }
            catch (Exception exception)
            {
                GuiUtils.HandleException(this.Text, MethodBase.GetCurrentMethod(), exception);
            }
        }
Ejemplo n.º 2
0
        private void SetFilterMI_Click(object sender, EventArgs e)
        {     
            try
            {
                if (m_subscription == null)
                {
                    return;
                }

                MonitoredItem[] monitoredItems = (MonitoredItem[])GetSelectedItems(typeof(MonitoredItem));

                if (monitoredItems.Length == 1)
                {
                    if (monitoredItems[0].NodeClass == NodeClass.Variable || monitoredItems[0].NodeClass == NodeClass.VariableType)
                    {
                        if (!new DataChangeFilterEditDlg().ShowDialog(m_subscription.Session, monitoredItems[0]))
                        {
                            return;
                        }
                    }
                    else
                    {
                        EventFilter filter = new EventFilterDlg().ShowDialog(m_subscription.Session, monitoredItems[0].Filter as EventFilter, false);

                        if (filter == null)
                        {
                            return;
                        }

                        monitoredItems[0].Filter = filter;
                    }

                    m_subscription.ModifyItems();
                    ApplyChanges(false);
                }
            }
            catch (Exception exception)
            {
				GuiUtils.HandleException(this.Text, MethodBase.GetCurrentMethod(), exception);
            }
        }