refactored ChannelPanel from nested class to its own class