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」カテゴリの記事
- Java 17 への移行(7) - OpenDolphin client の対応 (2023.02.04)
- Java 17 への移行(6) - Hibernate 6 でやらかす(2023.02.03)
- Java 17 への移行(5) - OpenDolphin server の対応(2023.02.02)
- Java 17 への移行(4) - OpenSearch の準備 [ubuntu 編](2023.02.01)
- Java 17 への移行(3) - OpenSearch の準備 [mac 編](2023.01.31)