Here you can find the source of updateFilesOpenedMenuItems(File fx, LinkedHashMap
Parameter | Description |
---|---|
fx | a parameter |
filesOpened | a parameter |
actionListener | If none set to null. |
public static boolean updateFilesOpenedMenuItems(File fx, LinkedHashMap<JMenuItem, File> filesOpened, ActionListener actionListener)
//package com.java2s; /*/*from w w w . j av a2s . c om*/ * Copyright (c) 2004-2013 Universidade do Porto - Faculdade de Engenharia * Laborat?rio de Sistemas e Tecnologia Subaqu?tica (LSTS) * All rights reserved. * Rua Dr. Roberto Frias s/n, sala I203, 4200-465 Porto, Portugal * * This file is part of Neptus, Command and Control Framework. * * Commercial Licence Usage * Licencees holding valid commercial Neptus licences may use this file * in accordance with the commercial licence agreement provided with the * Software or, alternatively, in accordance with the terms contained in a * written agreement between you and Universidade do Porto. For licensing * terms, conditions, and further information contact lsts@fe.up.pt. * * European Union Public Licence - EUPL v.1.1 Usage * Alternatively, this file may be used under the terms of the EUPL, * Version 1.1 only (the "Licence"), appearing in the file LICENCE.md * included in the packaging of this file. You may not use this work * except in compliance with the Licence. Unless required by applicable * law or agreed to in writing, software distributed under the Licence is * distributed on an "AS IS" basis, WITHOUT WARRANTIES OR CONDITIONS OF * ANY KIND, either express or implied. See the Licence for the specific * language governing permissions and limitations at * https://www.lsts.pt/neptus/licence. * * For more information please see <http://lsts.fe.up.pt/neptus>. * * Author: Paulo Dias * 17/Mai/2005 */ import java.awt.event.ActionListener; import java.io.File; import java.util.LinkedHashMap; import javax.swing.JMenuItem; public class Main { /** * To use to update JMenuItens for recently opened files * * @param fx * @param filesOpened * @param actionListener If none set to null. * @return */ public static boolean updateFilesOpenedMenuItems(File fx, LinkedHashMap<JMenuItem, File> filesOpened, ActionListener actionListener) { if (filesOpened.containsValue(fx)) { for (JMenuItem key : filesOpened.keySet()) { if (filesOpened.get(key).equals(fx)) { filesOpened.remove(key); break; } } } if (!filesOpened.containsValue(fx)) { JMenuItem nMenuItem = new JMenuItem() { private static final long serialVersionUID = 1L; /* * (non-Javadoc) * * @see javax.swing.AbstractButton#getText() */ public String getText() { return super.getText(); } }; // nMenuItem.setText(fx.getAbsolutePath()); nMenuItem.setText(fx.getName()); nMenuItem.setToolTipText(fx.getAbsolutePath()); if (actionListener != null) nMenuItem.addActionListener(actionListener); LinkedHashMap<JMenuItem, File> oldList = new LinkedHashMap<JMenuItem, File>(); oldList.putAll(filesOpened); filesOpened.clear(); filesOpened.put(nMenuItem, fx); filesOpened.putAll(oldList); } else { } while (filesOpened.size() > 10) { Object[] keys = filesOpened.keySet().toArray(); filesOpened.remove(keys[filesOpened.size() - 1]); } return true; } }