示例#1
0
文件: NetGraph.cs 项目: wflk/canape
        /// <summary>
        /// Method to dispatch edit packet event
        /// </summary>
        /// <param name="graph">The graph which originated the edit</param>
        /// <param name="e">The event arguments</param>
        /// <returns></returns>
        private void OnEditPacket(NetGraph graph, EditPacketEventArgs e)
        {
            EventHandler <EditPacketEventArgs> editPacketEvent = EditPacketEvent;

            if (editPacketEvent != null)
            {
                editPacketEvent(graph, e);
            }
        }
示例#2
0
文件: NetGraph.cs 项目: wflk/canape
        /// <summary>
        /// Edit a packet from the graph
        /// </summary>
        /// <param name="frame">The frame to edit</param>
        /// <param name="selectPath">A path to select when editing</param>
        /// <param name="sender">The sending nod</param>
        /// <param name="color">The colour to show in an edit window (if applicable)</param>
        /// <param name="tag">The textual tag to show in an edit window (if applicable)</param>
        /// <returns>The returned frame, this may or may not be the same frame as sent</returns>
        public DataFrame DoEditPacket(DataFrame frame, string selectPath, BasePipelineNode sender, ColorValue color, string tag)
        {
            NetGraph top = GetTopGraph();

            EditPacketEventArgs args = new EditPacketEventArgs(frame, selectPath, sender, color, tag);

            top.OnEditPacket(this, args);

            return(args.Frame);
        }
示例#3
0
        /// <summary>
        /// Edit a packet from the graph
        /// </summary>
        /// <param name="frame">The frame to edit</param>
        /// <param name="selectPath">A path to select when editing</param>
        /// <param name="sender">The sending nod</param>
        /// <param name="color">The colour to show in an edit window (if applicable)</param>
        /// <param name="tag">The textual tag to show in an edit window (if applicable)</param>
        /// <returns>The returned frame, this may or may not be the same frame as sent</returns>        
        public DataFrame DoEditPacket(DataFrame frame, string selectPath, BasePipelineNode sender, ColorValue color, string tag)
        {
            NetGraph top = GetTopGraph();

            EditPacketEventArgs args = new EditPacketEventArgs(frame, selectPath, sender, color, tag);

            top.OnEditPacket(this, args);

            return args.Frame;
        }
示例#4
0
        /// <summary>
        /// Method to dispatch edit packet event
        /// </summary>
        /// <param name="graph">The graph which originated the edit</param>
        /// <param name="e">The event arguments</param>
        /// <returns></returns>
        private void OnEditPacket(NetGraph graph, EditPacketEventArgs e)
        {
            EventHandler<EditPacketEventArgs> editPacketEvent = EditPacketEvent;

            if (editPacketEvent != null)
            {
                editPacketEvent(graph, e);
            }
        }
示例#5
0
 private void edit_InputReceived(object sender, EditPacketEventArgs e)
 {
     if (EditPacketEvent != null)
     {
         EditPacketEvent.Invoke(sender, e);
     }
 }
示例#6
0
 private void service_EditPacketEvent(object sender, EditPacketEventArgs e)
 {
     if (EditPacketEvent != null)
     {
         EditPacketEvent(sender, e);
     }
 }
        void _service_EditPacketEvent(object sender, EditPacketEventArgs e)
        {
            EditPacketForm frm = CreateEditor(e);

            try
            {
                frm.WaitEvent.WaitOne();

                if (frm.DialogResult == DialogResult.OK)
                {
                    e.Frame = frm.Frame;
                }

                if (frm.DisableEditor)
                {
                    if (e.Sender != null)
                    {
                        e.Sender.Enabled = false;
                    }
                }
            }
            finally
            {
                DisposeEditor(frm);
            }
        }
        EditPacketForm CreateEditor(EditPacketEventArgs e)
        {
            if (InvokeRequired)
            {
                return (EditPacketForm)Invoke(new Func<EditPacketEventArgs, EditPacketForm>(CreateEditor), e);
            }
            else
            {
                EditPacketForm frm = new EditPacketForm();

                frm.Frame = e.Frame;
                frm.Selector = e.SelectPath;
                frm.DisplayColor = ColorValueConverter.ToColor(e.Color);
                frm.DisplayTag = e.Tag;
                frm.ShowDisableEditor = true;
                frm.ShowReadOnly = true;

                frm.Show();

                frm.Activate();

                return frm;

            }
        }
示例#9
0
        void Graph_EditPacketEvent(object sender, EditPacketEventArgs e)
        {
            if (InvokeRequired)
            {
                Invoke(new EventHandler<EditPacketEventArgs>(Graph_EditPacketEvent), sender, e);
            }
            else
            {
                using (EditPacketForm frm = new EditPacketForm())
                {
                    frm.Frame = e.Frame;
                    frm.Selector = e.SelectPath;
                    frm.DisplayColor = ColorValueConverter.ToColor(e.Color);
                    frm.DisplayTag = e.Tag;
                    frm.ShowDisableEditor = true;
                    frm.ShowReadOnly = true;

                    if (frm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        e.Frame = frm.Frame;
                    }

                    if (frm.DisableEditor)
                    {
                        if (e.Sender != null)
                        {
                            e.Sender.Enabled = false;
                        }
                    }
                }
            }
        }