mirror of
https://github.com/JFormDesigner/FlatLaf.git
synced 2026-02-11 06:27:13 -06:00
Menu: hide mnemonics by default and show them only when Alt key is pressed (issue #43)
This commit is contained in:
@@ -3,6 +3,8 @@ FlatLaf Change Log
|
|||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
|
- Hide menu mnemonics by default and show them only when <kbd>Alt</kbd> key is
|
||||||
|
pressed. (issue #43)
|
||||||
- TabbedPane: In scroll-tab-layout, the cropped line is now hidden. (issue #40)
|
- TabbedPane: In scroll-tab-layout, the cropped line is now hidden. (issue #40)
|
||||||
- Tree: UI default value `Tree.textBackground` now has a valid color and is no
|
- Tree: UI default value `Tree.textBackground` now has a valid color and is no
|
||||||
longer `null`.
|
longer `null`.
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ import java.awt.Window;
|
|||||||
import java.awt.event.KeyEvent;
|
import java.awt.event.KeyEvent;
|
||||||
import java.beans.PropertyChangeEvent;
|
import java.beans.PropertyChangeEvent;
|
||||||
import java.beans.PropertyChangeListener;
|
import java.beans.PropertyChangeListener;
|
||||||
|
import java.lang.ref.WeakReference;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
@@ -66,6 +67,7 @@ public abstract class FlatLaf
|
|||||||
|
|
||||||
private KeyEventPostProcessor mnemonicListener;
|
private KeyEventPostProcessor mnemonicListener;
|
||||||
private static boolean showMnemonics;
|
private static boolean showMnemonics;
|
||||||
|
private static WeakReference<Window> lastShowMnemonicWindow;
|
||||||
|
|
||||||
private Consumer<UIDefaults> postInitialization;
|
private Consumer<UIDefaults> postInitialization;
|
||||||
|
|
||||||
@@ -391,18 +393,28 @@ public abstract class FlatLaf
|
|||||||
if( !UIManager.getBoolean( "Component.hideMnemonics" ) )
|
if( !UIManager.getBoolean( "Component.hideMnemonics" ) )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// get focus owner
|
if( show ) {
|
||||||
Component focusOwner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner();
|
// get focus owner
|
||||||
if( focusOwner == null )
|
Component focusOwner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner();
|
||||||
return;
|
if( focusOwner == null )
|
||||||
|
return;
|
||||||
|
|
||||||
// get focused window
|
// get focused window
|
||||||
Window window = SwingUtilities.windowForComponent( focusOwner );
|
Window window = SwingUtilities.windowForComponent( focusOwner );
|
||||||
if( window == null )
|
if( window == null )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// repaint components with mnemonics in focused window
|
// repaint components with mnemonics in focused window
|
||||||
repaintMnemonics( window );
|
repaintMnemonics( window );
|
||||||
|
|
||||||
|
lastShowMnemonicWindow = new WeakReference<>( window );
|
||||||
|
} else if( lastShowMnemonicWindow != null ) {
|
||||||
|
Window window = lastShowMnemonicWindow.get();
|
||||||
|
if( window != null )
|
||||||
|
repaintMnemonics( window );
|
||||||
|
|
||||||
|
lastShowMnemonicWindow = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void repaintMnemonics( Container container ) {
|
private static void repaintMnemonics( Container container ) {
|
||||||
|
|||||||
@@ -17,8 +17,11 @@
|
|||||||
package com.formdev.flatlaf.ui;
|
package com.formdev.flatlaf.ui;
|
||||||
|
|
||||||
import static com.formdev.flatlaf.util.UIScale.scale;
|
import static com.formdev.flatlaf.util.UIScale.scale;
|
||||||
|
import java.awt.Graphics;
|
||||||
|
import java.awt.Rectangle;
|
||||||
import java.beans.PropertyChangeListener;
|
import java.beans.PropertyChangeListener;
|
||||||
import javax.swing.JComponent;
|
import javax.swing.JComponent;
|
||||||
|
import javax.swing.JMenuItem;
|
||||||
import javax.swing.plaf.ComponentUI;
|
import javax.swing.plaf.ComponentUI;
|
||||||
import javax.swing.plaf.basic.BasicCheckBoxMenuItemUI;
|
import javax.swing.plaf.basic.BasicCheckBoxMenuItemUI;
|
||||||
|
|
||||||
@@ -74,4 +77,9 @@ public class FlatCheckBoxMenuItemUI
|
|||||||
defaultTextIconGap = scale( defaultTextIconGap );
|
defaultTextIconGap = scale( defaultTextIconGap );
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void paintText( Graphics g, JMenuItem menuItem, Rectangle textRect, String text ) {
|
||||||
|
FlatMenuItemUI.paintText( g, menuItem, textRect, text, disabledForeground, selectionForeground );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,10 +17,18 @@
|
|||||||
package com.formdev.flatlaf.ui;
|
package com.formdev.flatlaf.ui;
|
||||||
|
|
||||||
import static com.formdev.flatlaf.util.UIScale.scale;
|
import static com.formdev.flatlaf.util.UIScale.scale;
|
||||||
|
import java.awt.Color;
|
||||||
|
import java.awt.FontMetrics;
|
||||||
|
import java.awt.Graphics;
|
||||||
|
import java.awt.Rectangle;
|
||||||
import java.beans.PropertyChangeListener;
|
import java.beans.PropertyChangeListener;
|
||||||
|
import javax.swing.ButtonModel;
|
||||||
import javax.swing.JComponent;
|
import javax.swing.JComponent;
|
||||||
|
import javax.swing.JMenu;
|
||||||
|
import javax.swing.JMenuItem;
|
||||||
import javax.swing.plaf.ComponentUI;
|
import javax.swing.plaf.ComponentUI;
|
||||||
import javax.swing.plaf.basic.BasicMenuItemUI;
|
import javax.swing.plaf.basic.BasicMenuItemUI;
|
||||||
|
import com.formdev.flatlaf.FlatLaf;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Provides the Flat LaF UI delegate for {@link javax.swing.JMenuItem}.
|
* Provides the Flat LaF UI delegate for {@link javax.swing.JMenuItem}.
|
||||||
@@ -74,4 +82,26 @@ public class FlatMenuItemUI
|
|||||||
defaultTextIconGap = scale( defaultTextIconGap );
|
defaultTextIconGap = scale( defaultTextIconGap );
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void paintText( Graphics g, JMenuItem menuItem, Rectangle textRect, String text ) {
|
||||||
|
paintText( g, menuItem, textRect, text, disabledForeground, selectionForeground );
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void paintText( Graphics g, JMenuItem menuItem, Rectangle textRect,
|
||||||
|
String text, Color disabledForeground, Color selectionForeground )
|
||||||
|
{
|
||||||
|
FontMetrics fm = menuItem.getFontMetrics( menuItem.getFont() );
|
||||||
|
int mnemonicIndex = FlatLaf.isShowMnemonics() ? menuItem.getDisplayedMnemonicIndex() : -1;
|
||||||
|
|
||||||
|
ButtonModel model = menuItem.getModel();
|
||||||
|
g.setColor( !model.isEnabled()
|
||||||
|
? disabledForeground
|
||||||
|
: (model.isArmed() || (menuItem instanceof JMenu && model.isSelected())
|
||||||
|
? selectionForeground
|
||||||
|
: menuItem.getForeground()) );
|
||||||
|
|
||||||
|
FlatUIUtils.drawStringUnderlineCharAt( menuItem, g, text, mnemonicIndex,
|
||||||
|
textRect.x, textRect.y + fm.getAscent() );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,8 +17,11 @@
|
|||||||
package com.formdev.flatlaf.ui;
|
package com.formdev.flatlaf.ui;
|
||||||
|
|
||||||
import static com.formdev.flatlaf.util.UIScale.scale;
|
import static com.formdev.flatlaf.util.UIScale.scale;
|
||||||
|
import java.awt.Graphics;
|
||||||
|
import java.awt.Rectangle;
|
||||||
import java.beans.PropertyChangeListener;
|
import java.beans.PropertyChangeListener;
|
||||||
import javax.swing.JComponent;
|
import javax.swing.JComponent;
|
||||||
|
import javax.swing.JMenuItem;
|
||||||
import javax.swing.plaf.ComponentUI;
|
import javax.swing.plaf.ComponentUI;
|
||||||
import javax.swing.plaf.basic.BasicMenuUI;
|
import javax.swing.plaf.basic.BasicMenuUI;
|
||||||
|
|
||||||
@@ -77,4 +80,9 @@ public class FlatMenuUI
|
|||||||
defaultTextIconGap = scale( defaultTextIconGap );
|
defaultTextIconGap = scale( defaultTextIconGap );
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void paintText( Graphics g, JMenuItem menuItem, Rectangle textRect, String text ) {
|
||||||
|
FlatMenuItemUI.paintText( g, menuItem, textRect, text, disabledForeground, selectionForeground );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,8 +17,11 @@
|
|||||||
package com.formdev.flatlaf.ui;
|
package com.formdev.flatlaf.ui;
|
||||||
|
|
||||||
import static com.formdev.flatlaf.util.UIScale.scale;
|
import static com.formdev.flatlaf.util.UIScale.scale;
|
||||||
|
import java.awt.Graphics;
|
||||||
|
import java.awt.Rectangle;
|
||||||
import java.beans.PropertyChangeListener;
|
import java.beans.PropertyChangeListener;
|
||||||
import javax.swing.JComponent;
|
import javax.swing.JComponent;
|
||||||
|
import javax.swing.JMenuItem;
|
||||||
import javax.swing.plaf.ComponentUI;
|
import javax.swing.plaf.ComponentUI;
|
||||||
import javax.swing.plaf.basic.BasicRadioButtonMenuItemUI;
|
import javax.swing.plaf.basic.BasicRadioButtonMenuItemUI;
|
||||||
|
|
||||||
@@ -74,4 +77,9 @@ public class FlatRadioButtonMenuItemUI
|
|||||||
defaultTextIconGap = scale( defaultTextIconGap );
|
defaultTextIconGap = scale( defaultTextIconGap );
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void paintText( Graphics g, JMenuItem menuItem, Rectangle textRect, String text ) {
|
||||||
|
FlatMenuItemUI.paintText( g, menuItem, textRect, text, disabledForeground, selectionForeground );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,6 +51,12 @@ class DemoFrame
|
|||||||
DemoPrefs.getState().putInt( FlatLafDemo.KEY_TAB, tabbedPane.getSelectedIndex() );
|
DemoPrefs.getState().putInt( FlatLafDemo.KEY_TAB, tabbedPane.getSelectedIndex() );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void menuItemActionPerformed(ActionEvent e) {
|
||||||
|
SwingUtilities.invokeLater( () -> {
|
||||||
|
JOptionPane.showMessageDialog( this, e.getActionCommand(), "Menu Item", JOptionPane.PLAIN_MESSAGE );
|
||||||
|
} );
|
||||||
|
}
|
||||||
|
|
||||||
private void initComponents() {
|
private void initComponents() {
|
||||||
// JFormDesigner - Component initialization - DO NOT MODIFY //GEN-BEGIN:initComponents
|
// JFormDesigner - Component initialization - DO NOT MODIFY //GEN-BEGIN:initComponents
|
||||||
JMenuBar menuBar1 = new JMenuBar();
|
JMenuBar menuBar1 = new JMenuBar();
|
||||||
@@ -68,6 +74,14 @@ class DemoFrame
|
|||||||
JMenuItem deleteMenuItem = new JMenuItem();
|
JMenuItem deleteMenuItem = new JMenuItem();
|
||||||
JMenu viewMenu = new JMenu();
|
JMenu viewMenu = new JMenu();
|
||||||
JCheckBoxMenuItem checkBoxMenuItem1 = new JCheckBoxMenuItem();
|
JCheckBoxMenuItem checkBoxMenuItem1 = new JCheckBoxMenuItem();
|
||||||
|
JMenu menu1 = new JMenu();
|
||||||
|
JMenu subViewsMenu = new JMenu();
|
||||||
|
JMenu subSubViewsMenu = new JMenu();
|
||||||
|
JMenuItem errorLogViewMenuItem = new JMenuItem();
|
||||||
|
JMenuItem searchViewMenuItem = new JMenuItem();
|
||||||
|
JMenuItem projectViewMenuItem = new JMenuItem();
|
||||||
|
JMenuItem structureViewMenuItem = new JMenuItem();
|
||||||
|
JMenuItem propertiesViewMenuItem = new JMenuItem();
|
||||||
JRadioButtonMenuItem radioButtonMenuItem1 = new JRadioButtonMenuItem();
|
JRadioButtonMenuItem radioButtonMenuItem1 = new JRadioButtonMenuItem();
|
||||||
JRadioButtonMenuItem radioButtonMenuItem2 = new JRadioButtonMenuItem();
|
JRadioButtonMenuItem radioButtonMenuItem2 = new JRadioButtonMenuItem();
|
||||||
JRadioButtonMenuItem radioButtonMenuItem3 = new JRadioButtonMenuItem();
|
JRadioButtonMenuItem radioButtonMenuItem3 = new JRadioButtonMenuItem();
|
||||||
@@ -103,27 +117,35 @@ class DemoFrame
|
|||||||
//======== fileMenu ========
|
//======== fileMenu ========
|
||||||
{
|
{
|
||||||
fileMenu.setText("File");
|
fileMenu.setText("File");
|
||||||
|
fileMenu.setMnemonic('F');
|
||||||
|
|
||||||
//---- newMenuItem ----
|
//---- newMenuItem ----
|
||||||
newMenuItem.setText("New");
|
newMenuItem.setText("New");
|
||||||
newMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
newMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
||||||
|
newMenuItem.setMnemonic('N');
|
||||||
|
newMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
fileMenu.add(newMenuItem);
|
fileMenu.add(newMenuItem);
|
||||||
|
|
||||||
//---- openMenuItem ----
|
//---- openMenuItem ----
|
||||||
openMenuItem.setText("Open");
|
openMenuItem.setText("Open");
|
||||||
openMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
openMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
||||||
|
openMenuItem.setMnemonic('O');
|
||||||
|
openMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
fileMenu.add(openMenuItem);
|
fileMenu.add(openMenuItem);
|
||||||
fileMenu.addSeparator();
|
fileMenu.addSeparator();
|
||||||
|
|
||||||
//---- closeMenuItem ----
|
//---- closeMenuItem ----
|
||||||
closeMenuItem.setText("Close");
|
closeMenuItem.setText("Close");
|
||||||
closeMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_W, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
closeMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_W, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
||||||
|
closeMenuItem.setMnemonic('C');
|
||||||
|
closeMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
fileMenu.add(closeMenuItem);
|
fileMenu.add(closeMenuItem);
|
||||||
fileMenu.addSeparator();
|
fileMenu.addSeparator();
|
||||||
|
|
||||||
//---- exitMenuItem ----
|
//---- exitMenuItem ----
|
||||||
exitMenuItem.setText("Exit");
|
exitMenuItem.setText("Exit");
|
||||||
exitMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Q, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
exitMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Q, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
||||||
|
exitMenuItem.setMnemonic('X');
|
||||||
exitMenuItem.addActionListener(e -> exitActionPerformed());
|
exitMenuItem.addActionListener(e -> exitActionPerformed());
|
||||||
fileMenu.add(exitMenuItem);
|
fileMenu.add(exitMenuItem);
|
||||||
}
|
}
|
||||||
@@ -132,37 +154,50 @@ class DemoFrame
|
|||||||
//======== editMenu ========
|
//======== editMenu ========
|
||||||
{
|
{
|
||||||
editMenu.setText("Edit");
|
editMenu.setText("Edit");
|
||||||
|
editMenu.setMnemonic('E');
|
||||||
|
|
||||||
//---- undoMenuItem ----
|
//---- undoMenuItem ----
|
||||||
undoMenuItem.setText("Undo");
|
undoMenuItem.setText("Undo");
|
||||||
undoMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
undoMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
||||||
|
undoMenuItem.setMnemonic('U');
|
||||||
|
undoMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
editMenu.add(undoMenuItem);
|
editMenu.add(undoMenuItem);
|
||||||
|
|
||||||
//---- redoMenuItem ----
|
//---- redoMenuItem ----
|
||||||
redoMenuItem.setText("Redo");
|
redoMenuItem.setText("Redo");
|
||||||
redoMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Y, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
redoMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Y, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
||||||
|
redoMenuItem.setMnemonic('R');
|
||||||
|
redoMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
editMenu.add(redoMenuItem);
|
editMenu.add(redoMenuItem);
|
||||||
editMenu.addSeparator();
|
editMenu.addSeparator();
|
||||||
|
|
||||||
//---- cutMenuItem ----
|
//---- cutMenuItem ----
|
||||||
cutMenuItem.setText("Cut");
|
cutMenuItem.setText("Cut");
|
||||||
cutMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
cutMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
||||||
|
cutMenuItem.setMnemonic('C');
|
||||||
|
cutMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
editMenu.add(cutMenuItem);
|
editMenu.add(cutMenuItem);
|
||||||
|
|
||||||
//---- copyMenuItem ----
|
//---- copyMenuItem ----
|
||||||
copyMenuItem.setText("Copy");
|
copyMenuItem.setText("Copy");
|
||||||
copyMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
copyMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
||||||
|
copyMenuItem.setMnemonic('O');
|
||||||
|
copyMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
editMenu.add(copyMenuItem);
|
editMenu.add(copyMenuItem);
|
||||||
|
|
||||||
//---- pasteMenuItem ----
|
//---- pasteMenuItem ----
|
||||||
pasteMenuItem.setText("Paste");
|
pasteMenuItem.setText("Paste");
|
||||||
pasteMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
pasteMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
|
||||||
|
pasteMenuItem.setMnemonic('P');
|
||||||
|
pasteMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
editMenu.add(pasteMenuItem);
|
editMenu.add(pasteMenuItem);
|
||||||
editMenu.addSeparator();
|
editMenu.addSeparator();
|
||||||
|
|
||||||
//---- deleteMenuItem ----
|
//---- deleteMenuItem ----
|
||||||
deleteMenuItem.setText("Delete");
|
deleteMenuItem.setText("Delete");
|
||||||
deleteMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE, 0));
|
deleteMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE, 0));
|
||||||
|
deleteMenuItem.setMnemonic('D');
|
||||||
|
deleteMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
editMenu.add(deleteMenuItem);
|
editMenu.add(deleteMenuItem);
|
||||||
}
|
}
|
||||||
menuBar1.add(editMenu);
|
menuBar1.add(editMenu);
|
||||||
@@ -170,24 +205,84 @@ class DemoFrame
|
|||||||
//======== viewMenu ========
|
//======== viewMenu ========
|
||||||
{
|
{
|
||||||
viewMenu.setText("View");
|
viewMenu.setText("View");
|
||||||
|
viewMenu.setMnemonic('V');
|
||||||
|
|
||||||
//---- checkBoxMenuItem1 ----
|
//---- checkBoxMenuItem1 ----
|
||||||
checkBoxMenuItem1.setText("Show Toolbar");
|
checkBoxMenuItem1.setText("Show Toolbar");
|
||||||
checkBoxMenuItem1.setSelected(true);
|
checkBoxMenuItem1.setSelected(true);
|
||||||
|
checkBoxMenuItem1.setMnemonic('T');
|
||||||
|
checkBoxMenuItem1.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
viewMenu.add(checkBoxMenuItem1);
|
viewMenu.add(checkBoxMenuItem1);
|
||||||
|
|
||||||
|
//======== menu1 ========
|
||||||
|
{
|
||||||
|
menu1.setText("Show View");
|
||||||
|
menu1.setMnemonic('V');
|
||||||
|
|
||||||
|
//======== subViewsMenu ========
|
||||||
|
{
|
||||||
|
subViewsMenu.setText("Sub Views");
|
||||||
|
subViewsMenu.setMnemonic('S');
|
||||||
|
|
||||||
|
//======== subSubViewsMenu ========
|
||||||
|
{
|
||||||
|
subSubViewsMenu.setText("Sub sub Views");
|
||||||
|
subSubViewsMenu.setMnemonic('U');
|
||||||
|
|
||||||
|
//---- errorLogViewMenuItem ----
|
||||||
|
errorLogViewMenuItem.setText("Error Log");
|
||||||
|
errorLogViewMenuItem.setMnemonic('E');
|
||||||
|
errorLogViewMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
|
subSubViewsMenu.add(errorLogViewMenuItem);
|
||||||
|
}
|
||||||
|
subViewsMenu.add(subSubViewsMenu);
|
||||||
|
|
||||||
|
//---- searchViewMenuItem ----
|
||||||
|
searchViewMenuItem.setText("Search");
|
||||||
|
searchViewMenuItem.setMnemonic('S');
|
||||||
|
searchViewMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
|
subViewsMenu.add(searchViewMenuItem);
|
||||||
|
}
|
||||||
|
menu1.add(subViewsMenu);
|
||||||
|
|
||||||
|
//---- projectViewMenuItem ----
|
||||||
|
projectViewMenuItem.setText("Project");
|
||||||
|
projectViewMenuItem.setMnemonic('P');
|
||||||
|
projectViewMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
|
menu1.add(projectViewMenuItem);
|
||||||
|
|
||||||
|
//---- structureViewMenuItem ----
|
||||||
|
structureViewMenuItem.setText("Structure");
|
||||||
|
structureViewMenuItem.setMnemonic('T');
|
||||||
|
structureViewMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
|
menu1.add(structureViewMenuItem);
|
||||||
|
|
||||||
|
//---- propertiesViewMenuItem ----
|
||||||
|
propertiesViewMenuItem.setText("Properties");
|
||||||
|
propertiesViewMenuItem.setMnemonic('O');
|
||||||
|
propertiesViewMenuItem.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
|
menu1.add(propertiesViewMenuItem);
|
||||||
|
}
|
||||||
|
viewMenu.add(menu1);
|
||||||
viewMenu.addSeparator();
|
viewMenu.addSeparator();
|
||||||
|
|
||||||
//---- radioButtonMenuItem1 ----
|
//---- radioButtonMenuItem1 ----
|
||||||
radioButtonMenuItem1.setText("Details");
|
radioButtonMenuItem1.setText("Details");
|
||||||
radioButtonMenuItem1.setSelected(true);
|
radioButtonMenuItem1.setSelected(true);
|
||||||
|
radioButtonMenuItem1.setMnemonic('D');
|
||||||
|
radioButtonMenuItem1.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
viewMenu.add(radioButtonMenuItem1);
|
viewMenu.add(radioButtonMenuItem1);
|
||||||
|
|
||||||
//---- radioButtonMenuItem2 ----
|
//---- radioButtonMenuItem2 ----
|
||||||
radioButtonMenuItem2.setText("Small Icons");
|
radioButtonMenuItem2.setText("Small Icons");
|
||||||
|
radioButtonMenuItem2.setMnemonic('S');
|
||||||
|
radioButtonMenuItem2.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
viewMenu.add(radioButtonMenuItem2);
|
viewMenu.add(radioButtonMenuItem2);
|
||||||
|
|
||||||
//---- radioButtonMenuItem3 ----
|
//---- radioButtonMenuItem3 ----
|
||||||
radioButtonMenuItem3.setText("Large Icons");
|
radioButtonMenuItem3.setText("Large Icons");
|
||||||
|
radioButtonMenuItem3.setMnemonic('L');
|
||||||
|
radioButtonMenuItem3.addActionListener(e -> menuItemActionPerformed(e));
|
||||||
viewMenu.add(radioButtonMenuItem3);
|
viewMenu.add(radioButtonMenuItem3);
|
||||||
}
|
}
|
||||||
menuBar1.add(viewMenu);
|
menuBar1.add(viewMenu);
|
||||||
@@ -195,9 +290,11 @@ class DemoFrame
|
|||||||
//======== helpMenu ========
|
//======== helpMenu ========
|
||||||
{
|
{
|
||||||
helpMenu.setText("Help");
|
helpMenu.setText("Help");
|
||||||
|
helpMenu.setMnemonic('H');
|
||||||
|
|
||||||
//---- aboutMenuItem ----
|
//---- aboutMenuItem ----
|
||||||
aboutMenuItem.setText("About");
|
aboutMenuItem.setText("About");
|
||||||
|
aboutMenuItem.setMnemonic('A');
|
||||||
aboutMenuItem.addActionListener(e -> aboutActionPerformed());
|
aboutMenuItem.addActionListener(e -> aboutActionPerformed());
|
||||||
helpMenu.add(aboutMenuItem);
|
helpMenu.add(aboutMenuItem);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
JFDML JFormDesigner: "7.0.0.0.194" Java: "11.0.2" encoding: "UTF-8"
|
JFDML JFormDesigner: "7.0.0.0.194" Java: "13.0.1" encoding: "UTF-8"
|
||||||
|
|
||||||
new FormModel {
|
new FormModel {
|
||||||
contentType: "form/swing"
|
contentType: "form/swing"
|
||||||
@@ -117,15 +117,20 @@ new FormModel {
|
|||||||
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
||||||
name: "fileMenu"
|
name: "fileMenu"
|
||||||
"text": "File"
|
"text": "File"
|
||||||
|
"mnemonic": 70
|
||||||
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
name: "newMenuItem"
|
name: "newMenuItem"
|
||||||
"text": "New"
|
"text": "New"
|
||||||
"accelerator": static javax.swing.KeyStroke getKeyStroke( 78, 4226, false )
|
"accelerator": static javax.swing.KeyStroke getKeyStroke( 78, 4226, false )
|
||||||
|
"mnemonic": 78
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
} )
|
} )
|
||||||
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
name: "openMenuItem"
|
name: "openMenuItem"
|
||||||
"text": "Open"
|
"text": "Open"
|
||||||
"accelerator": static javax.swing.KeyStroke getKeyStroke( 79, 4226, false )
|
"accelerator": static javax.swing.KeyStroke getKeyStroke( 79, 4226, false )
|
||||||
|
"mnemonic": 79
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
} )
|
} )
|
||||||
add( new FormComponent( "javax.swing.JPopupMenu$Separator" ) {
|
add( new FormComponent( "javax.swing.JPopupMenu$Separator" ) {
|
||||||
name: "separator2"
|
name: "separator2"
|
||||||
@@ -134,6 +139,8 @@ new FormModel {
|
|||||||
name: "closeMenuItem"
|
name: "closeMenuItem"
|
||||||
"text": "Close"
|
"text": "Close"
|
||||||
"accelerator": static javax.swing.KeyStroke getKeyStroke( 87, 4226, false )
|
"accelerator": static javax.swing.KeyStroke getKeyStroke( 87, 4226, false )
|
||||||
|
"mnemonic": 67
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
} )
|
} )
|
||||||
add( new FormComponent( "javax.swing.JPopupMenu$Separator" ) {
|
add( new FormComponent( "javax.swing.JPopupMenu$Separator" ) {
|
||||||
name: "separator1"
|
name: "separator1"
|
||||||
@@ -142,21 +149,27 @@ new FormModel {
|
|||||||
name: "exitMenuItem"
|
name: "exitMenuItem"
|
||||||
"text": "Exit"
|
"text": "Exit"
|
||||||
"accelerator": static javax.swing.KeyStroke getKeyStroke( 81, 4226, false )
|
"accelerator": static javax.swing.KeyStroke getKeyStroke( 81, 4226, false )
|
||||||
|
"mnemonic": 88
|
||||||
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "exitActionPerformed", false ) )
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "exitActionPerformed", false ) )
|
||||||
} )
|
} )
|
||||||
} )
|
} )
|
||||||
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
||||||
name: "editMenu"
|
name: "editMenu"
|
||||||
"text": "Edit"
|
"text": "Edit"
|
||||||
|
"mnemonic": 69
|
||||||
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
name: "undoMenuItem"
|
name: "undoMenuItem"
|
||||||
"text": "Undo"
|
"text": "Undo"
|
||||||
"accelerator": static javax.swing.KeyStroke getKeyStroke( 90, 4226, false )
|
"accelerator": static javax.swing.KeyStroke getKeyStroke( 90, 4226, false )
|
||||||
|
"mnemonic": 85
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
} )
|
} )
|
||||||
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
name: "redoMenuItem"
|
name: "redoMenuItem"
|
||||||
"text": "Redo"
|
"text": "Redo"
|
||||||
"accelerator": static javax.swing.KeyStroke getKeyStroke( 89, 4226, false )
|
"accelerator": static javax.swing.KeyStroke getKeyStroke( 89, 4226, false )
|
||||||
|
"mnemonic": 82
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
} )
|
} )
|
||||||
add( new FormComponent( "javax.swing.JPopupMenu$Separator" ) {
|
add( new FormComponent( "javax.swing.JPopupMenu$Separator" ) {
|
||||||
name: "separator4"
|
name: "separator4"
|
||||||
@@ -165,16 +178,22 @@ new FormModel {
|
|||||||
name: "cutMenuItem"
|
name: "cutMenuItem"
|
||||||
"text": "Cut"
|
"text": "Cut"
|
||||||
"accelerator": static javax.swing.KeyStroke getKeyStroke( 88, 4226, false )
|
"accelerator": static javax.swing.KeyStroke getKeyStroke( 88, 4226, false )
|
||||||
|
"mnemonic": 67
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
} )
|
} )
|
||||||
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
name: "copyMenuItem"
|
name: "copyMenuItem"
|
||||||
"text": "Copy"
|
"text": "Copy"
|
||||||
"accelerator": static javax.swing.KeyStroke getKeyStroke( 67, 4226, false )
|
"accelerator": static javax.swing.KeyStroke getKeyStroke( 67, 4226, false )
|
||||||
|
"mnemonic": 79
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
} )
|
} )
|
||||||
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
name: "pasteMenuItem"
|
name: "pasteMenuItem"
|
||||||
"text": "Paste"
|
"text": "Paste"
|
||||||
"accelerator": static javax.swing.KeyStroke getKeyStroke( 86, 4226, false )
|
"accelerator": static javax.swing.KeyStroke getKeyStroke( 86, 4226, false )
|
||||||
|
"mnemonic": 80
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
} )
|
} )
|
||||||
add( new FormComponent( "javax.swing.JPopupMenu$Separator" ) {
|
add( new FormComponent( "javax.swing.JPopupMenu$Separator" ) {
|
||||||
name: "separator3"
|
name: "separator3"
|
||||||
@@ -183,15 +202,65 @@ new FormModel {
|
|||||||
name: "deleteMenuItem"
|
name: "deleteMenuItem"
|
||||||
"text": "Delete"
|
"text": "Delete"
|
||||||
"accelerator": static javax.swing.KeyStroke getKeyStroke( 127, 0, false )
|
"accelerator": static javax.swing.KeyStroke getKeyStroke( 127, 0, false )
|
||||||
|
"mnemonic": 68
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
} )
|
} )
|
||||||
} )
|
} )
|
||||||
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
||||||
name: "viewMenu"
|
name: "viewMenu"
|
||||||
"text": "View"
|
"text": "View"
|
||||||
|
"mnemonic": 86
|
||||||
add( new FormComponent( "javax.swing.JCheckBoxMenuItem" ) {
|
add( new FormComponent( "javax.swing.JCheckBoxMenuItem" ) {
|
||||||
name: "checkBoxMenuItem1"
|
name: "checkBoxMenuItem1"
|
||||||
"text": "Show Toolbar"
|
"text": "Show Toolbar"
|
||||||
"selected": true
|
"selected": true
|
||||||
|
"mnemonic": 84
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
|
} )
|
||||||
|
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
||||||
|
name: "menu1"
|
||||||
|
"text": "Show View"
|
||||||
|
"mnemonic": 86
|
||||||
|
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
||||||
|
name: "subViewsMenu"
|
||||||
|
"text": "Sub Views"
|
||||||
|
"mnemonic": 83
|
||||||
|
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
||||||
|
name: "subSubViewsMenu"
|
||||||
|
"text": "Sub sub Views"
|
||||||
|
"mnemonic": 85
|
||||||
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
|
name: "errorLogViewMenuItem"
|
||||||
|
"text": "Error Log"
|
||||||
|
"mnemonic": 69
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
|
} )
|
||||||
|
} )
|
||||||
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
|
name: "searchViewMenuItem"
|
||||||
|
"text": "Search"
|
||||||
|
"mnemonic": 83
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
|
} )
|
||||||
|
} )
|
||||||
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
|
name: "projectViewMenuItem"
|
||||||
|
"text": "Project"
|
||||||
|
"mnemonic": 80
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
|
} )
|
||||||
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
|
name: "structureViewMenuItem"
|
||||||
|
"text": "Structure"
|
||||||
|
"mnemonic": 84
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
|
} )
|
||||||
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
|
name: "propertiesViewMenuItem"
|
||||||
|
"text": "Properties"
|
||||||
|
"mnemonic": 79
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
|
} )
|
||||||
} )
|
} )
|
||||||
add( new FormComponent( "javax.swing.JPopupMenu$Separator" ) {
|
add( new FormComponent( "javax.swing.JPopupMenu$Separator" ) {
|
||||||
name: "separator8"
|
name: "separator8"
|
||||||
@@ -201,24 +270,32 @@ new FormModel {
|
|||||||
"text": "Details"
|
"text": "Details"
|
||||||
"selected": true
|
"selected": true
|
||||||
"$buttonGroup": new FormReference( "buttonGroup1" )
|
"$buttonGroup": new FormReference( "buttonGroup1" )
|
||||||
|
"mnemonic": 68
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
} )
|
} )
|
||||||
add( new FormComponent( "javax.swing.JRadioButtonMenuItem" ) {
|
add( new FormComponent( "javax.swing.JRadioButtonMenuItem" ) {
|
||||||
name: "radioButtonMenuItem2"
|
name: "radioButtonMenuItem2"
|
||||||
"text": "Small Icons"
|
"text": "Small Icons"
|
||||||
"$buttonGroup": new FormReference( "buttonGroup1" )
|
"$buttonGroup": new FormReference( "buttonGroup1" )
|
||||||
|
"mnemonic": 83
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
} )
|
} )
|
||||||
add( new FormComponent( "javax.swing.JRadioButtonMenuItem" ) {
|
add( new FormComponent( "javax.swing.JRadioButtonMenuItem" ) {
|
||||||
name: "radioButtonMenuItem3"
|
name: "radioButtonMenuItem3"
|
||||||
"text": "Large Icons"
|
"text": "Large Icons"
|
||||||
"$buttonGroup": new FormReference( "buttonGroup1" )
|
"$buttonGroup": new FormReference( "buttonGroup1" )
|
||||||
|
"mnemonic": 76
|
||||||
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "menuItemActionPerformed", true ) )
|
||||||
} )
|
} )
|
||||||
} )
|
} )
|
||||||
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
||||||
name: "helpMenu"
|
name: "helpMenu"
|
||||||
"text": "Help"
|
"text": "Help"
|
||||||
|
"mnemonic": 72
|
||||||
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
name: "aboutMenuItem"
|
name: "aboutMenuItem"
|
||||||
"text": "About"
|
"text": "About"
|
||||||
|
"mnemonic": 65
|
||||||
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "aboutActionPerformed", false ) )
|
addEvent( new FormEvent( "java.awt.event.ActionListener", "actionPerformed", "aboutActionPerformed", false ) )
|
||||||
} )
|
} )
|
||||||
} )
|
} )
|
||||||
|
|||||||
@@ -126,13 +126,16 @@ public class FlatMenusTest
|
|||||||
//======== menu5 ========
|
//======== menu5 ========
|
||||||
{
|
{
|
||||||
menu5.setText("text");
|
menu5.setText("text");
|
||||||
|
menu5.setMnemonic('T');
|
||||||
|
|
||||||
//---- menuItem7 ----
|
//---- menuItem7 ----
|
||||||
menuItem7.setText("text");
|
menuItem7.setText("text");
|
||||||
|
menuItem7.setMnemonic('X');
|
||||||
menu5.add(menuItem7);
|
menu5.add(menuItem7);
|
||||||
|
|
||||||
//---- menuItem8 ----
|
//---- menuItem8 ----
|
||||||
menuItem8.setText("text");
|
menuItem8.setText("text");
|
||||||
|
menuItem8.setMnemonic('E');
|
||||||
menu5.add(menuItem8);
|
menu5.add(menuItem8);
|
||||||
}
|
}
|
||||||
menuBar1.add(menu5);
|
menuBar1.add(menu5);
|
||||||
@@ -175,6 +178,7 @@ public class FlatMenusTest
|
|||||||
//======== menu1 ========
|
//======== menu1 ========
|
||||||
{
|
{
|
||||||
menu1.setText("enabled");
|
menu1.setText("enabled");
|
||||||
|
menu1.setMnemonic('E');
|
||||||
}
|
}
|
||||||
panel1.add(menu1, "cell 1 0");
|
panel1.add(menu1, "cell 1 0");
|
||||||
|
|
||||||
@@ -185,6 +189,7 @@ public class FlatMenusTest
|
|||||||
//---- menuItem1 ----
|
//---- menuItem1 ----
|
||||||
menuItem1.setText("enabled");
|
menuItem1.setText("enabled");
|
||||||
menuItem1.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A, KeyEvent.CTRL_MASK));
|
menuItem1.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A, KeyEvent.CTRL_MASK));
|
||||||
|
menuItem1.setMnemonic('N');
|
||||||
panel1.add(menuItem1, "cell 1 1");
|
panel1.add(menuItem1, "cell 1 1");
|
||||||
|
|
||||||
//---- checkBoxMenuItemLabel ----
|
//---- checkBoxMenuItemLabel ----
|
||||||
@@ -194,6 +199,7 @@ public class FlatMenusTest
|
|||||||
//---- checkBoxMenuItem1 ----
|
//---- checkBoxMenuItem1 ----
|
||||||
checkBoxMenuItem1.setText("enabled");
|
checkBoxMenuItem1.setText("enabled");
|
||||||
checkBoxMenuItem1.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F1, 0));
|
checkBoxMenuItem1.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F1, 0));
|
||||||
|
checkBoxMenuItem1.setMnemonic('A');
|
||||||
panel1.add(checkBoxMenuItem1, "cell 1 2");
|
panel1.add(checkBoxMenuItem1, "cell 1 2");
|
||||||
|
|
||||||
//---- radioButtonMenuItemLabel ----
|
//---- radioButtonMenuItemLabel ----
|
||||||
@@ -203,6 +209,7 @@ public class FlatMenusTest
|
|||||||
//---- radioButtonMenuItem1 ----
|
//---- radioButtonMenuItem1 ----
|
||||||
radioButtonMenuItem1.setText("enabled");
|
radioButtonMenuItem1.setText("enabled");
|
||||||
radioButtonMenuItem1.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F1, 0));
|
radioButtonMenuItem1.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F1, 0));
|
||||||
|
radioButtonMenuItem1.setMnemonic('B');
|
||||||
panel1.add(radioButtonMenuItem1, "cell 1 3");
|
panel1.add(radioButtonMenuItem1, "cell 1 3");
|
||||||
|
|
||||||
//---- popupMenuSeparatorLabel ----
|
//---- popupMenuSeparatorLabel ----
|
||||||
@@ -230,6 +237,7 @@ public class FlatMenusTest
|
|||||||
{
|
{
|
||||||
menu2.setText("disabled");
|
menu2.setText("disabled");
|
||||||
menu2.setEnabled(false);
|
menu2.setEnabled(false);
|
||||||
|
menu2.setMnemonic('D');
|
||||||
}
|
}
|
||||||
panel2.add(menu2, "cell 0 0");
|
panel2.add(menu2, "cell 0 0");
|
||||||
|
|
||||||
@@ -237,18 +245,21 @@ public class FlatMenusTest
|
|||||||
menuItem2.setText("disabled");
|
menuItem2.setText("disabled");
|
||||||
menuItem2.setEnabled(false);
|
menuItem2.setEnabled(false);
|
||||||
menuItem2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_D, KeyEvent.ALT_MASK|KeyEvent.SHIFT_MASK));
|
menuItem2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_D, KeyEvent.ALT_MASK|KeyEvent.SHIFT_MASK));
|
||||||
|
menuItem2.setMnemonic('I');
|
||||||
panel2.add(menuItem2, "cell 0 1");
|
panel2.add(menuItem2, "cell 0 1");
|
||||||
|
|
||||||
//---- checkBoxMenuItem2 ----
|
//---- checkBoxMenuItem2 ----
|
||||||
checkBoxMenuItem2.setText("disabled");
|
checkBoxMenuItem2.setText("disabled");
|
||||||
checkBoxMenuItem2.setEnabled(false);
|
checkBoxMenuItem2.setEnabled(false);
|
||||||
checkBoxMenuItem2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F1, 0));
|
checkBoxMenuItem2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F1, 0));
|
||||||
|
checkBoxMenuItem2.setMnemonic('S');
|
||||||
panel2.add(checkBoxMenuItem2, "cell 0 2");
|
panel2.add(checkBoxMenuItem2, "cell 0 2");
|
||||||
|
|
||||||
//---- radioButtonMenuItem2 ----
|
//---- radioButtonMenuItem2 ----
|
||||||
radioButtonMenuItem2.setText("disabled");
|
radioButtonMenuItem2.setText("disabled");
|
||||||
radioButtonMenuItem2.setEnabled(false);
|
radioButtonMenuItem2.setEnabled(false);
|
||||||
radioButtonMenuItem2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F1, 0));
|
radioButtonMenuItem2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F1, 0));
|
||||||
|
radioButtonMenuItem2.setMnemonic('L');
|
||||||
panel2.add(radioButtonMenuItem2, "cell 0 3");
|
panel2.add(radioButtonMenuItem2, "cell 0 3");
|
||||||
}
|
}
|
||||||
add(panel2, "cell 2 1");
|
add(panel2, "cell 2 1");
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
JFDML JFormDesigner: "7.0.0.0.194" Java: "11.0.2" encoding: "UTF-8"
|
JFDML JFormDesigner: "7.0.0.0.194" Java: "13.0.1" encoding: "UTF-8"
|
||||||
|
|
||||||
new FormModel {
|
new FormModel {
|
||||||
contentType: "form/swing"
|
contentType: "form/swing"
|
||||||
@@ -23,13 +23,16 @@ new FormModel {
|
|||||||
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
||||||
name: "menu5"
|
name: "menu5"
|
||||||
"text": "text"
|
"text": "text"
|
||||||
|
"mnemonic": 84
|
||||||
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
name: "menuItem7"
|
name: "menuItem7"
|
||||||
"text": "text"
|
"text": "text"
|
||||||
|
"mnemonic": 88
|
||||||
} )
|
} )
|
||||||
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
add( new FormComponent( "javax.swing.JMenuItem" ) {
|
||||||
name: "menuItem8"
|
name: "menuItem8"
|
||||||
"text": "text"
|
"text": "text"
|
||||||
|
"mnemonic": 69
|
||||||
} )
|
} )
|
||||||
} )
|
} )
|
||||||
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
||||||
@@ -63,6 +66,7 @@ new FormModel {
|
|||||||
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
add( new FormContainer( "javax.swing.JMenu", new FormLayoutManager( class javax.swing.JMenu ) ) {
|
||||||
name: "menu1"
|
name: "menu1"
|
||||||
"text": "enabled"
|
"text": "enabled"
|
||||||
|
"mnemonic": 69
|
||||||
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
||||||
"value": "cell 1 0"
|
"value": "cell 1 0"
|
||||||
} )
|
} )
|
||||||
@@ -76,6 +80,7 @@ new FormModel {
|
|||||||
name: "menuItem1"
|
name: "menuItem1"
|
||||||
"text": "enabled"
|
"text": "enabled"
|
||||||
"accelerator": static javax.swing.KeyStroke getKeyStroke( 65, 130, false )
|
"accelerator": static javax.swing.KeyStroke getKeyStroke( 65, 130, false )
|
||||||
|
"mnemonic": 78
|
||||||
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
||||||
"value": "cell 1 1"
|
"value": "cell 1 1"
|
||||||
} )
|
} )
|
||||||
@@ -89,6 +94,7 @@ new FormModel {
|
|||||||
name: "checkBoxMenuItem1"
|
name: "checkBoxMenuItem1"
|
||||||
"text": "enabled"
|
"text": "enabled"
|
||||||
"accelerator": &KeyStroke0 static javax.swing.KeyStroke getKeyStroke( 112, 0, false )
|
"accelerator": &KeyStroke0 static javax.swing.KeyStroke getKeyStroke( 112, 0, false )
|
||||||
|
"mnemonic": 65
|
||||||
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
||||||
"value": "cell 1 2"
|
"value": "cell 1 2"
|
||||||
} )
|
} )
|
||||||
@@ -102,6 +108,7 @@ new FormModel {
|
|||||||
name: "radioButtonMenuItem1"
|
name: "radioButtonMenuItem1"
|
||||||
"text": "enabled"
|
"text": "enabled"
|
||||||
"accelerator": #KeyStroke0
|
"accelerator": #KeyStroke0
|
||||||
|
"mnemonic": 66
|
||||||
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
||||||
"value": "cell 1 3"
|
"value": "cell 1 3"
|
||||||
} )
|
} )
|
||||||
@@ -130,6 +137,7 @@ new FormModel {
|
|||||||
name: "menu2"
|
name: "menu2"
|
||||||
"text": "disabled"
|
"text": "disabled"
|
||||||
"enabled": false
|
"enabled": false
|
||||||
|
"mnemonic": 68
|
||||||
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
||||||
"value": "cell 0 0"
|
"value": "cell 0 0"
|
||||||
} )
|
} )
|
||||||
@@ -138,6 +146,7 @@ new FormModel {
|
|||||||
"text": "disabled"
|
"text": "disabled"
|
||||||
"enabled": false
|
"enabled": false
|
||||||
"accelerator": static javax.swing.KeyStroke getKeyStroke( 68, 585, false )
|
"accelerator": static javax.swing.KeyStroke getKeyStroke( 68, 585, false )
|
||||||
|
"mnemonic": 73
|
||||||
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
||||||
"value": "cell 0 1"
|
"value": "cell 0 1"
|
||||||
} )
|
} )
|
||||||
@@ -146,6 +155,7 @@ new FormModel {
|
|||||||
"text": "disabled"
|
"text": "disabled"
|
||||||
"enabled": false
|
"enabled": false
|
||||||
"accelerator": #KeyStroke0
|
"accelerator": #KeyStroke0
|
||||||
|
"mnemonic": 83
|
||||||
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
||||||
"value": "cell 0 2"
|
"value": "cell 0 2"
|
||||||
} )
|
} )
|
||||||
@@ -154,6 +164,7 @@ new FormModel {
|
|||||||
"text": "disabled"
|
"text": "disabled"
|
||||||
"enabled": false
|
"enabled": false
|
||||||
"accelerator": #KeyStroke0
|
"accelerator": #KeyStroke0
|
||||||
|
"mnemonic": 76
|
||||||
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
}, new FormLayoutConstraints( class net.miginfocom.layout.CC ) {
|
||||||
"value": "cell 0 3"
|
"value": "cell 0 3"
|
||||||
} )
|
} )
|
||||||
|
|||||||
Reference in New Issue
Block a user