예제 #1
0
        public void DeattachInterface(ICommunicationInterface CommunicationInterface)
        {
            string ChannelName = CommunicationInterface.FriendlyName;

            if (channels.ContainsKey(ChannelName))
            {
                CommunicationChannel channel = channels[ChannelName];
                channel.DeattachInterface(CommunicationInterface);
            }
        }
예제 #2
0
        public void Save(string FriendlyName, string FileName, bool Overwrite)
        {
            string ChannelName = FriendlyName;

            if (channels.ContainsKey(ChannelName))
            {
                CommunicationChannel channel = channels[ChannelName];
                channel.Save(FileName, Overwrite);
            }
        }
예제 #3
0
        private void SortChannelDisplay()
        {
            channels = channels.OrderBy(x => x.Value).ToDictionary(x => x.Key, x => x.Value);

            ArrayList            TabNameSortedList = new ArrayList();
            CommunicationChannel SelectedChannel   = (CommunicationChannel)ChannelHost.SelectedTab;

            ChannelHost.TabPages.Clear();
            ChannelHost.TabPages.AddRange(channels.Values.ToArray());
            ChannelHost.SelectedIndex = ChannelHost.TabPages.IndexOf(SelectedChannel);
        }
예제 #4
0
        public void AttachInterface(ICommunicationInterface CommunicationInterface, bool ClearPrevious = true)
        {
            string ChannelName = CommunicationInterface.FriendlyName;

            if (!channels.ContainsKey(ChannelName))
            {
                this.SafeInvoke(() =>
                {
                    CommunicationChannel channel = new CommunicationChannel(ChannelName, displayFilters);
                    channel.AttachInterface(CommunicationInterface, ClearPrevious);
                    channels.Add(ChannelName, channel);
                    ChannelHost.TabPages.Add(channel);
                    SortChannelDisplay();
                });
            }
            else
            {
                this.SafeInvoke(() =>
                {
                    CommunicationChannel channel = channels[ChannelName];
                    channel.AttachInterface(CommunicationInterface, ClearPrevious);
                });
            }
        }