/** * A chat room was selected. Opens the chat room in the chat window. * * @param e the <tt>MouseEvent</tt> instance containing details of the event that has just * occurred. */ public void mousePressed(MouseEvent e) { // Select the object under the right button click. if ((e.getModifiers() & InputEvent.BUTTON2_MASK) != 0 || (e.getModifiers() & InputEvent.BUTTON3_MASK) != 0 || (e.isControlDown() && !e.isMetaDown())) { int ix = this.chatRoomList.rowAtPoint(e.getPoint()); if (ix != -1) { this.chatRoomList.setRowSelectionInterval(ix, ix); } } Object o = this.chatRoomsTableModel.getValueAt(this.chatRoomList.getSelectedRow()); Point selectedCellPoint = e.getPoint(); SwingUtilities.convertPointToScreen(selectedCellPoint, chatRoomList); if ((e.getModifiers() & InputEvent.BUTTON3_MASK) != 0) { JPopupMenu rightButtonMenu; if (o instanceof ChatRoomWrapper) rightButtonMenu = new ChatRoomRightButtonMenu((ChatRoomWrapper) o); else return; rightButtonMenu.setInvoker(this); rightButtonMenu.setLocation(selectedCellPoint); rightButtonMenu.setVisible(true); } }
void initControls() { JMenuItem jmi; jmi = new JMenuItem("JImage Menu"); jmi.setEnabled(false); popupMenu.add(jmi); jmi = new JMenuItem("Fit"); jmi.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { fit = true; repaint(); } }); popupMenu.add(jmi); JMenu scaleMenu = new JMenu("Set Scale"); popupMenu.add(scaleMenu); int scales[] = new int[] {25, 50, 100, 200, 400, 800}; for (int i = 0; i < scales.length; i++) { jmi = new JMenuItem(scales[i] + " %"); jmi.addActionListener(new ScaleAction(scales[i])); scaleMenu.add(jmi); } MyListener l = new MyListener(); addMouseMotionListener(l); addMouseListener(l); addMouseWheelListener(l); addKeyListener(l); }
private void showSliderMenu() { Point location = new Point(getX(), getY() + getHeight()); SwingUtilities.convertPointToScreen(location, InputVolumeControlButton.this.getParent()); if (isFullScreen()) { location.setLocation( location.getX(), location.getY() - sliderMenu.getPreferredSize().getHeight() - getHeight()); } sliderMenu.setLocation(location); sliderMenu.addPopupMenuListener( new PopupMenuListener() { public void popupMenuWillBecomeVisible(PopupMenuEvent ev) { sliderMenuIsVisible = true; } public void popupMenuWillBecomeInvisible(PopupMenuEvent ev) { sliderMenuIsVisible = false; } public void popupMenuCanceled(PopupMenuEvent ev) {} }); sliderMenu.setVisible(!sliderMenu.isVisible()); }
public static void main(String[] args) { final JPopupMenu menu = new JPopupMenu(); menu.setLayout(new GridLayout(0, 3, 5, 5)); final MenuedButton button = new MenuedButton("Icons", menu); for (int i = 0; i < 9; i++) { // replace "print.gif" with your own image final JLabel label = new JLabel("" + i); // new ImageIcon("resources/images/print.gif") ); label.addMouseListener( new MouseAdapter() { public void mouseClicked(MouseEvent e) { button.getMainButton().setIcon(label.getIcon()); menu.setVisible(false); } }); menu.add(label); } JFrame frame = new JFrame("Button Test"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().add(new JLabel("Click Arrow Button To Show Popup"), BorderLayout.NORTH); frame.getContentPane().add(button, BorderLayout.CENTER); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true); }
private void handle(MouseEvent e) { if (e.isPopupTrigger()) { ActionManager mgr = getContext().getActions(); JPopupMenu menu = mgr.createPopup( getContext().getResources().getStringArray(ElementNavigator.class, "popupActions")); menu.show((JComponent) e.getSource(), e.getX(), e.getY()); } }
/** * constructor * * @param values list of values, String[] */ public MPopButton(String[] values) { this(); for (int i = 0; i < values.length; i++) { JMenuItem item = popup.add(values[i]); item.addActionListener(popActionListener); popup.add(item); m_aListValues.add(values[i]); } setDefaultText(); } // MPopButton()
/** * constructor * * @param values list of values, ArrayList */ public MPopButton(ArrayList values) { this(); for (int i = 0; i < values.size(); i++) { JMenuItem item = popup.add((String) values.get(i)); item.addActionListener(popActionListener); popup.add(item); } m_aListValues = values; setDefaultText(); } // MPopButton()
private void maybeShowPopup(MouseEvent e) { if (e.isPopupTrigger()) { popup = new JPopupMenu(); CalendarCardPanel cc = new CalendarCardPanel(ClientContext.getEventColorTable()); cc.addPropertyChangeListener(CalendarCardPanel.PICKED_DATE, this); cc.setCalendarRange(new int[] {-12, 0}); popup.insert(cc, 0); popup.show(e.getComponent(), e.getX(), e.getY()); } }
/** * Returns the popup menu which is at the root of the menu system for this popup menu. * * @return the topmost grandparent <code>JPopupMenu</code> */ JPopupMenu getRootPopupMenu() { JPopupMenu mp = this; while ((mp != null) && (mp.isPopupMenu() != true) && (mp.getInvoker() != null) && (mp.getInvoker().getParent() != null) && (mp.getInvoker().getParent() instanceof JPopupMenu)) { mp = (JPopupMenu) mp.getInvoker().getParent(); } return mp; }
public void createPopupMenu() { menu = new JPopupMenu(); for (int i = filenames.size() - 2, j = 0; i >= 0; i--, j++) { menu.add((String) filenames.elementAt(i)); JMenuItem mi = (JMenuItem) menu.getComponent(j); mi.setFont(new Font("Arial", Font.PLAIN, 11)); mi.addActionListener(this); } menu.pack(); // setPopupLocation(200, 200); }
/** * Examines the list of menu items to determine whether <code>popup</code> is a popup menu. * * @param popup a <code>JPopupMenu</code> * @return true if <code>popup</code> */ boolean isSubPopupMenu(JPopupMenu popup) { int ncomponents = this.getComponentCount(); Component[] component = this.getComponents(); for (int i = 0; i < ncomponents; i++) { Component comp = component[i]; if (comp instanceof JMenu) { JMenu menu = (JMenu) comp; JPopupMenu subPopup = menu.getPopupMenu(); if (subPopup == popup) return true; if (subPopup.isSubPopupMenu(popup)) return true; } } return false; }
public void popupMenuWillBecomeInvisible(PopupMenuEvent ev) { Point cpos = combo1.getLocation(); SwingUtilities.convertPointToScreen(cpos, panel); JPopupMenu pm = (JPopupMenu) combo1.getUI().getAccessibleChild(combo1, 0); if (pm != null) { Point p = pm.getLocation(); SwingUtilities.convertPointToScreen(p, pm); if (p.y < cpos.y) { throw new RuntimeException("ComboBox popup is wrongly aligned"); } // check that popup was opened down } }
protected final JPopupMenu constructTablePopup() { JPopupMenu pop = new JPopupMenu(); addMenu(pop, "Do Search", "Execute"); addMenu(pop, "Load Searches"); addMenu(pop, "Edit Search"); pop.add(new JPopupMenu.Separator()); addMenu(pop, "Enable"); addMenu(pop, "Disable"); pop.add(new JPopupMenu.Separator()); addMenu(pop, "Delete"); return pop; }
public void mouseExited(MouseEvent e) { // Remove overlay only if the dialog isn't visible if (!popupMenu.isVisible()) { this.drawOverlay = false; this.repaint(); } }
/** sets this user to be an admin */ public void setAdmin() { admin = true; popup.add("kick user").addActionListener(myAction); if (chanAdmin) { butCreate.setEnabled(true); } }
/** constructor */ public MPopButton() { popListeners = new Vector(); popup = new JPopupMenu(); popActionListener = new MPopActionListener(this); addActionListener( new ActionListener() { public void actionPerformed(ActionEvent evt) { popup.show(MPopButton.this, 6, getSize().height - 6); } }); popup.addPopupMenuListener( new PopupMenuListener() { public void popupMenuWillBecomeVisible(PopupMenuEvent e) { Util.setMenuUp(true); } public void popupMenuWillBecomeInvisible(PopupMenuEvent e) { Util.setMenuUp(false); } public void popupMenuCanceled(PopupMenuEvent e) {} }); } // MPopButton()
private JPanel createContentPane() { JPanel panel = new JPanel(); combo1 = new JComboBox<>(numData); panel.add(combo1); combo2 = new JComboBox<>(dayData); combo2.setEditable(true); panel.add(combo2); panel.setSize(300, 200); popupMenu = new JPopupMenu(); JMenuItem item; for (int i = 0; i < dayData.length; i++) { item = popupMenu.add(new JMenuItem(dayData[i], mnDayData[i])); item.addActionListener(this); } panel.addMouseListener(new PopupListener(popupMenu)); JTextField field = new JTextField("CTRL+down for Popup"); // CTRL-down will show the popup. field .getInputMap() .put(KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, InputEvent.CTRL_MASK), "OPEN_POPUP"); field.getActionMap().put("OPEN_POPUP", new PopupHandler()); panel.add(field); return panel; }
public void showMenu() { if (LOCATION == BELOW) { setPopupLocation(main.getX() - main.getWidth(), main.getY() + getHeight()); } else if (LOCATION == ABOVE) { setPopupLocation(main.getX() - main.getWidth(), main.getY() - menu.getHeight()); } if (getPopperButtonLocation() == RIGHT) { if (getPopperButtonLocation() == RIGHT) { tempPopArrowDir = getPopperArrowDirection(); } setPopperArrowDirection(DOWN); } menu.show(popper, getPopupX(), getPopupY()); }
/** * Mouse Listener methods. * * <p>spv */ public void mouseTriggered(MouseEvent me) { if (me.isPopupTrigger()) { actionJumpToError.setEnabled(parseError != null && parseError.hasLineNumbers()); ((GUIMultiModel) handler.getGUIPlugin()).doEnables(); contextPopup.show(me.getComponent(), me.getX(), me.getY()); } }
/** Tests if the popup is on the screen. */ public static void isPopupOnScreen(JPopupMenu popup, Rectangle checkBounds) { Dimension dim = popup.getSize(); Point pt = new Point(); SwingUtilities.convertPointToScreen(pt, popup); Rectangle bounds = new Rectangle(pt, dim); if (!SwingUtilities.isRectangleContainingRectangle(checkBounds, bounds)) { throw new RuntimeException("We do not match! " + checkBounds + " / " + bounds); } }
public void mouseExited(MouseEvent e) { // if the popup menu for is visible, don't register this, // because the popup being set visible will fire a mouseExited() event if ((popup != null) && popup.isVisible()) return; if (state[OPEN] != INACTIVE) { setState(OPEN, INACTIVE, true); } handleMouse(e); }
/** * Make the edit menu * * @param popup The popup * @param row The row */ void makeEditableMenu(JPopupMenu popup, final int row) { JMenuItem mi; popup.add(GuiUtils.makeMenuItem("Add New Field", this, "addNewRow")); ParamInfo paramInfo = getInfo(row); if (paramInfo == null) { return; } popup.add(GuiUtils.makeMenuItem("Edit Settings", this, "editRow", paramInfo)); mi = new JMenuItem("Delete Settings For Parameter"); mi.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent ae) { removeRow(row); } }); popup.add(mi); }
/** * Initializes a new <tt>MuteButton</tt> instance which is to mute the audio stream to a specific * <tt>Call</tt>. * * @param call the <tt>Call</tt> to be associated with the new instance and whose audio stream is * to be muted upon performing its action * @param iconImageID the icon image * @param pressedIconImageID the <tt>ImageID</tt> of the image to be used as the icon in the * pressed button state of the new instance * @param selected <tt>true</tt> if the new toggle button is to be initially selected; otherwise, * <tt>false</tt> * @param inSettingsPanel <tt>true</tt> when the button is used in a menu, to use different * background. */ public InputVolumeControlButton( Call call, ImageID iconImageID, ImageID pressedIconImageID, boolean inSettingsPanel, boolean selected) { super( call, inSettingsPanel, selected, iconImageID, pressedIconImageID, "service.gui.MUTE_BUTTON_TOOL_TIP"); this.mute = selected; volumeControl = getVolumeControl(); // Creates the menu that would contain the volume control component. sliderMenu = new VolumeControlSlider(volumeControl, JSlider.VERTICAL).getPopupMenu(); sliderMenu.setInvoker(this); addMouseListener( new MouseAdapter() { TimerTask timerTask; @Override public void mousePressed(MouseEvent mouseevent) { Timer timer = new Timer(); timerTask = new TimerTask() { @Override public void run() { showSliderMenu(); } }; timer.schedule(timerTask, 1000); } @Override public void mouseReleased(MouseEvent mouseevent) { if (!sliderMenuIsVisible) { if (timerTask != null) { timerTask.cancel(); } } else { setSelected(!isSelected()); } } }); }
@Override public void propertyChange(PropertyChangeEvent e) { if (e.getPropertyName().equals(CalendarCardPanel.PICKED_DATE)) { SimpleDate sd = (SimpleDate) e.getNewValue(); tf.setText(SimpleDate.simpleDateToMmldate(sd)); popup.setVisible(false); popup = null; String test = tf.getText().trim(); if (!test.equals("")) { find(test); } } }
public void mousePressed(MouseEvent e) { // jdf if (!isEnabled()) return; final int x = e.getX(); final int y = e.getY(); int sel = findSelection(x, y); ///if (sel == -1) return false; if (sel == -1) return; currentRollover = -1; switch (sel) { case RUN: editor.handleRun(e.isShiftDown()); break; // case STOP: // editor.handleStop(); // break; // case OPEN: popup = menu.getPopupMenu(); popup.show(EditorToolbar.this, x, y); break; case NEW: if (shiftPressed) { editor.base.handleNew(); } else { editor.base.handleNewReplace(); } break; case SAVE: editor.handleSave(false); break; case EXPORT: boolean t = e.isControlDown(); editor.handleExport(e.isShiftDown(),autoOpenSerialMonitor ? !t : t); // Control is down if autoOpenSerialMonitor is true in preferences break; case SERIAL: editor.handleSerial(); handleMouse(e); break; } }
/** * Make the popup menu * * @param popup The popup menu * @param row The row the user clicked on */ void makePopupMenu(JPopupMenu popup, final int row) { ParamInfo info = getInfo(row); if (isEditable) { makeEditableMenu(popup, row); } else { JMenuItem mi = new JMenuItem("Copy Row to Users Defaults"); mi.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent ae) { try { copyToUsers(getInfo(row)); } catch (Exception exc) { LogUtil.printException(log_, "Copying row: " + row + " to users table.", exc); } } }); popup.add(mi); } if (info != null) { popup.add( GuiUtils.makeMenuItem( "Export to Plugin", getIdv().getPluginManager(), "addObject", info)); } }
public void show(Component invoker, int x, int y) { Object o = getTree().getClosestPathForLocation(x, y).getLastPathComponent(); if (null != o) { node = (Node) o; if ((node instanceof AttrConfig) || (node instanceof Config)) { newAttribute.setEnabled(true); duplicate.setEnabled(true); delete.setEnabled(true); } else { newAttribute.setEnabled(false); duplicate.setEnabled(false); delete.setEnabled(false); } super.show(invoker, x, y); } }
public Annotation(URL url) throws IOException { super(url); setEditable(false); addHyperlinkListener(this); // popup addMouseListener(new PopupListener()); popup = new JPopupMenu(); JMenuItem backMenu = new JMenuItem("Back"); popup.add(backMenu); backMenu.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { goBack(); } }); back.add(url); }
public void mabeShowPopup(MouseEvent e) { if (e.isPopupTrigger()) { final JPopupMenu contextMenu = new JPopupMenu(); int row = view.getTable().rowAtPoint(e.getPoint()); ListTableModel<PatientModel> tModel = getTableModel(); PatientModel obj = tModel.getObject(row); int selected = view.getTable().getSelectedRow(); if (row == selected && obj != null) { contextMenu.add( new JMenuItem(new ReflectAction("カルテを開く", PatientSearchImpl.this, "openKarte"))); contextMenu.addSeparator(); // s.oh^ 2014/08/19 ID権限 // contextMenu.add(new JMenuItem(copyAction)); // contextMenu.add(new JMenuItem(new ReflectAction("受付登録", PatientSearchImpl.this, // "addAsPvt"))); // contextMenu.addSeparator(); if (!Project.isOtherCare()) { contextMenu.add(new JMenuItem(copyAction)); contextMenu.add( new JMenuItem(new ReflectAction("受付登録", PatientSearchImpl.this, "addAsPvt"))); contextMenu.addSeparator(); } // s.oh$ } JCheckBoxMenuItem item = new JCheckBoxMenuItem("年齢表示"); contextMenu.add(item); item.setSelected(ageDisplay); item.addActionListener( (ActionListener) EventHandler.create( ActionListener.class, PatientSearchImpl.this, "switchAgeDisplay")); contextMenu.show(e.getComponent(), e.getX(), e.getY()); } }
public void show(Component invoker, int x, int y) { ViperViewMediator mediator = getMediator(); Point pnt = new Point(x, y); EnhancedTable tab = getTable(); int row = tab.rowAtPoint(pnt); desc = getCurrentModel().getDescriptorAtRow(row); int col = tab.columnAtPoint(pnt); Object cellValue = tab.getValueAt(row, col); if (cellValue instanceof Attribute) { attr = (Attribute) cellValue; // hide the "Occlusions..." option when we're not dealing with a Textline object boolean isTextline = attr.getAttrConfig().getAttrType().endsWith("textline"); occlusions.setVisible(isTextline); occSeparator.setVisible(isTextline); Instant now = mediator.getCurrentFrame(); if (now == null) { mediator.getDisplayWRTManager().setAttribute(null, null); wrt.setEnabled(false); wrt.setSelected(false); } else { boolean isDwrt = attr == mediator.getDisplayWRTManager().getAttribute(); boolean dwrtable = (attr.getAttrValueAtInstant(now) instanceof HasCentroid && attr.getDescriptor().getValidRange().contains(now)); wrt.setEnabled(dwrtable); wrt.setSelected(isDwrt); } } else { attr = null; wrt.setEnabled(false); wrt.setSelected(false); } if (null != desc) { PropagateInterpolateModule proper = getMediator().getPropagator(); p.setSelected(proper.isPropagatingThis(desc)); v.setSelected(mediator.isThisValidNow(desc)); resetMarks(); super.show(invoker, x, y); } }