Ignore:
Timestamp:
2011-11-27T15:58:09+01:00 (12 years ago)
Author:
jttt
Message:

Use different way to center popup menu title to prevent blank menu on Windows 7, add shortcuts to enable/hiding of filters (see #5515)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/tools/MultikeyActionsHandler.java

    r4604 r4615  
    1515import javax.swing.Action;
    1616import javax.swing.JMenuItem;
     17import javax.swing.JPanel;
    1718import javax.swing.JPopupMenu;
    1819import javax.swing.KeyStroke;
     20import javax.swing.event.PopupMenuEvent;
     21import javax.swing.event.PopupMenuListener;
    1922
    2023import org.openstreetmap.josm.Main;
     
    131134
    132135        JMenuItem lbTitle = new JMenuItem((String) action.action.getValue(Action.SHORT_DESCRIPTION));
    133         lbTitle.setHorizontalAlignment(JMenuItem.CENTER);
    134136        lbTitle.setEnabled(false);
    135         layers.add(lbTitle);
     137        JPanel pnTitle = new JPanel();
     138        pnTitle.add(lbTitle);
     139        layers.add(pnTitle);
    136140
    137141        char repeatKey = (char) action.shortcut.getKeyCode();
     
    150154                @Override
    151155                public void actionPerformed(ActionEvent e) {
    152                     Main.map.statusLine.resetHelpText(STATUS_BAR_ID);
    153156                    action.action.executeMultikeyAction(info.getIndex(), false);
    154157                }
     
    167170                    @Override
    168171                    public void actionPerformed(ActionEvent e) {
    169                         Main.map.statusLine.resetHelpText(STATUS_BAR_ID);
    170172                        action.action.executeMultikeyAction(-1, true);
    171173                    }
     
    174176            }
    175177        }
     178        layers.addPopupMenuListener(new PopupMenuListener() {
     179
     180            @Override
     181            public void popupMenuWillBecomeVisible(PopupMenuEvent e) {}
     182
     183            @Override
     184            public void popupMenuWillBecomeInvisible(PopupMenuEvent e) {
     185                Main.map.statusLine.resetHelpText(STATUS_BAR_ID);
     186            }
     187
     188            @Override
     189            public void popupMenuCanceled(PopupMenuEvent e) {}
     190        });
    176191
    177192        layers.show(Main.parent, Integer.MAX_VALUE, Integer.MAX_VALUE);
Note: See TracChangeset for help on using the changeset viewer.