@Override public void actionPerformed(ActionEvent e) { for (ContextMenuListener l : getContextMenuListeners()) { l.streamInfosMenuItemClicked(e, streamInfos); } }
public void setSorting(String key) { JMenuItem item = getItem("sort_"+key); if (item != null) { item.setSelected(true); } }
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) { for (LiveStreamsDialog.Sorting s : LiveStreamsDialog.Sorting.values()) { addRadioItem("sort_"+s.key, s.getLabel(), SORT_GROUP, SORT_SUBMENU); getItem("sort_"+s.key).setToolTipText(s.getToolTipText()); } addItem("showRemovedList", Language.getString("streams.cm.removedStreams")); addSeparator(); addItem("manualRefreshStreams", Language.getString("streams.cm.refresh")); } }
StreamInfosContextMenu m = new StreamInfosContextMenu(s, true); m.setSorting(currentSorting.key); for (ContextMenuListener cml : contextMenuListeners) { m.addContextMenuListener(cml); m.show(this, l.x, l.y); } else if (a == Action.ENTER) { List<String> channels = new ArrayList<>();
/** * Open context menu for this user, if the event points at one. * * @param e */ private void openContextMenu(MouseEvent e) { if (e.isPopupTrigger()) { selectClicked(e, false); List<RemovedListItem> selectedItems = list.getSelectedValuesList(); List<StreamInfo> selected = new ArrayList<>(); for (RemovedListItem item : selectedItems) { selected.add(item.getStreamInfo()); } StreamInfosContextMenu m = new StreamInfosContextMenu(selected, false); for (ContextMenuListener cml : contextMenuListeners) { m.addContextMenuListener(cml); } m.show(list, e.getX(), e.getY()); } }