package chatty.gui.components.menus;
import chatty.util.api.StreamInfo;
import java.awt.event.ActionEvent;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author tduva
*/
public class StreamInfosContextMenu extends ContextMenu {
private final List<StreamInfo> streamInfos;
private static final String SORT_SUBMENU = "Sort by..";
public StreamInfosContextMenu(List<StreamInfo> selected, boolean liveStreams) {
this.streamInfos = selected;
List<String> streams = new ArrayList<>();
for (StreamInfo info : selected) {
streams.add(info.getStream());
}
if (!selected.isEmpty()) {
addItem("openChannelInfo", "Info: "+selected.get(0).getStream());
addSeparator();
ContextMenuHelper.addStreamsOptions(this, streams.size());
if (liveStreams) {
addSeparator();
}
}
if (liveStreams) {
addItem("sortRecent", "Recent", SORT_SUBMENU);
addItem("sortName", "Name", SORT_SUBMENU);
addItem("sortGame", "Game", SORT_SUBMENU);
addItem("sortViewers", "Viewers", SORT_SUBMENU);
addItem("showRemovedList", "Removed Streams..");
addSeparator();
addItem("manualRefreshStreams", "Refresh");
}
}
@Override
public void actionPerformed(ActionEvent e) {
for (ContextMenuListener l : getContextMenuListeners()) {
l.streamInfosMenuItemClicked(e, streamInfos);
}
}
}