示例#1
0
 private void CapabilityListControl_OnEdit()
 {
     if (SelectedItems.Count > 0)
     {
         ListViewItem lvi = SelectedItems[0];
         object       obj = lvi.Tag;
         if (obj is Capability)
         {
             var    capability = obj as Capability;
             object dataObject = GetDataObject();
             if (dataObject != null)
             {
                 var form = new CapabilityForm(dataObject);
                 form.Capability  = capability;
                 form.Closed     += form_Closed;
                 form.CloseOnSave = true;
                 form.Show();
             }
         }
         else if (obj is DocumentReference)
         {
             var reference = obj as DocumentReference;
             var form      = new CapabilityReferenceForm();
             form.InstrumentDescription = _instrumentDescription;
             form.DocumentReference     = reference;
             form.Closed += form_Closed;
             form.Show();
         }
     }
 }
示例#2
0
        private void CapabilityListControl_OnAdd()
        {
            object data = GetDataObject();

            if (data != null)
            {
                var form = new CapabilityForm(data);
                form.Closed     += add_form_closed;
                form.CloseOnSave = true;
                form.Show();
            }
        }
示例#3
0
        private void lvCapabilities_DragDrop(object sender,DragEventArgs de)
        {
            if (de.Data.GetDataPresent(DataFormats.Text))
            {
                TSFType tsf        = TSFType.Deserialize((string)de.Data.GetData(DataFormats.Text));
                var     capability = new Capability();
                capability.name = tsf.name;
                object item = tsf.model.Item;
                if (item is Signal)
                {
                    var        signal = (Signal)item;
                    XmlElement elm    = XmlUtils.Object2XmlElement(item);
                    capability.SignalDescription = new Extension();
                    if (capability.SignalDescription.Any == null)
                    {
                        capability.SignalDescription.Any = new List <XmlElement>();
                    }
                    capability.SignalDescription.Any.Add(elm);
                    capability.Interface = new Interface();

                    if (signal.In != null)
                    {
                        String[] ins = signal.In.Split(' ');
                        foreach (String i in ins)
                        {
                            var p = new Port();
                            p.name               = i;
                            p.direction          = PortDirection.Input;
                            p.directionSpecified = true;
                            capability.Interface.Ports.Add(p);
                        }
                    }
                    if (signal.Out != null)
                    {
                        String[] outs = signal.Out.Split(' ');
                        foreach (String o in outs)
                        {
                            var p = new Port();
                            p.name               = o;
                            p.direction          = PortDirection.Output;
                            p.directionSpecified = true;
                            if (capability.Interface.Ports == null)
                            {
                                capability.Interface.Ports = new List <Port>();
                            }
                            capability.Interface.Ports.Add(p);
                        }
                    }

                    var form = new CapabilityForm(_instrumentDescription);
                    form.Capability = capability;
                    if (DialogResult.OK == form.ShowDialog())
                    {
                        String reference = EMPTYCHAR;
                        String uuid      = EMPTYCHAR;
                        capability = form.Capability;
                        _capabilityItems.Add(capability);
                        var lvi = new ListViewItem(reference);
                        lvi.SubItems.Add(capability.name);
                        lvi.SubItems.Add(uuid);
                        lvi.Tag = capability;
                        Items.Add(lvi);
                    }
                }
            }
        }