Mac のメニューバー
Macintosh では,メニューは画面の上端のメニュー領域に表示される。そのため,メニューを持たないスタンプウインドウやシェーマウインドウを選ぶと,メニューが消えてしまう。消えても実用上問題はないのだが,どうも気になる。これを消えないようにするため,StampBox と SchemaBox (ImageBox) にもメニューを組み込んだ。
ImageBox.java の編集
private void initComponent() { ・ ・ ////↓ mac で SchemaBox にもメニューバーを出す if (isMac) { WindowSupport windowSupport = WindowSupport.create(title); frame = windowSupport.getFrame(); javax.swing.JMenuBar myMenuBar = windowSupport.getMenuBar(); mediator = new Mediator(this); AbstractMenuFactory appMenu = AbstractMenuFactory.getFactory(); // mainWindow の menuSupport をセットしておけばメニュー処理は mainWindow がしてくれる appMenu.setMenuSupports(getContext().getMenuSupport(), mediator); appMenu.build(myMenuBar); mediator.registerActions(appMenu.getActionMap()); mediator.disableAllMenus(); String[] enables = new String[]{ GUIConst.ACTION_SHOW_STAMPBOX, }; mediator.enableMenus(enables); } else frame = new JFrame(title); ////↑ ・ ・
StampBoxPlugin.java の編集
public void start() { ・ ・ ///↓ mac で StampBox にもメニューバーを出す if (isMac) { WindowSupport windowSupport = WindowSupport.create(title); frame = windowSupport.getFrame(); javax.swing.JMenuBar myMenuBar = windowSupport.getMenuBar(); mediator = new Mediator(this); AbstractMenuFactory appMenu = AbstractMenuFactory.getFactory(); // mainWindow の menuSupport をセットしておけばメニュー処理は mainWindow がしてくれる appMenu.setMenuSupports(getContext().getMenuSupport(), mediator); appMenu.build(myMenuBar); mediator.registerActions(appMenu.getActionMap()); mediator.disableAllMenus(); String[] enables = new String[]{ GUIConst.ACTION_SHOW_SCHEMABOX, }; mediator.enableMenus(enables); } else frame = new JFrame(title); ////↑ ・ ・
« 初診・再診の自動入力 | トップページ | スタンプ入れ替えロック »
「OpenDolphin」カテゴリの記事
- WildFly 25 へのアップデート(2021.12.21)
- 13年目の運用まとめ(2021.02.04)
- スタンプの簡易表示(2020.09.04)
- Java 1.8.0_261 での apple.awt.brushMetalLook(2020.07.26)
- Undo の充実 (4) StampEditor, StampTree(2020.07.23)