コード例 #1
0
ファイル: ChannelStack.cs プロジェクト: Sloves/Rant
        public ChannelStack(RantFormat formatStyle, Limit <int> sizeLimit)
        {
            _sizeLimit = sizeLimit;
            _main      = new RantChannel("main", RantChannelVisibility.Public, formatStyle);

            _stack = new List <RantChannel> {
                _main
            };
            _stackSize = 1;

            _channels = new Dictionary <string, RantChannel>
            {
                { "main", _main }
            };
        }
コード例 #2
0
ファイル: ChannelStack.cs プロジェクト: Sloves/Rant
        public void PushChannel(string channelName, RantChannelVisibility visibility, RantFormat formatStyle)
        {
            RantChannel ch;

            if (!_channels.TryGetValue(channelName, out ch))
            {
                ch = new RantChannel(channelName, visibility, formatStyle);
                _channels[channelName] = ch;
            }

            if (channelName == "main")
            {
                return;
            }

            ch.Visiblity = visibility;

            if (_stack.Contains(ch))
            {
                return;
            }
            _stack.Add(ch);
            _stackSize++;
        }