|
23 | 23 | import javax.swing.JLabel; |
24 | 24 | import javax.swing.JOptionPane; |
25 | 25 | import javax.swing.JPanel; |
| 26 | +import javax.swing.SwingUtilities; |
26 | 27 | import javax.swing.UIManager; |
27 | 28 | import javax.swing.WindowConstants; |
28 | 29 |
|
@@ -561,24 +562,47 @@ public IntervalView<T> getTraceInterval(boolean bClippedInterval) |
561 | 562 |
|
562 | 563 | return Views.interval(full_int, full_int); |
563 | 564 | } |
564 | | - |
565 | | - public synchronized void setLockMode(boolean bLockMode) |
566 | | - { |
567 | | - TaskBT.runOnEDT( () -> |
| 565 | + |
| 566 | + public void setLockMode(final boolean bLockMode) |
| 567 | + { |
| 568 | + if(!this.btMacro.bMacroMode) |
| 569 | + { |
| 570 | + synchronized ( BigTrace.this ) |
| 571 | + { |
| 572 | + lockGUI(bLockMode); |
| 573 | + //System.out.println("regular lock " + bLockMode); |
| 574 | + } |
| 575 | + } |
| 576 | + else |
568 | 577 | { |
569 | | - boolean bState = !bLockMode; |
| 578 | + setLockModeMacro(bLockMode); |
| 579 | + //System.out.println("macro lock"+ bLockMode); |
| 580 | + } |
| 581 | + } |
570 | 582 |
|
571 | | - GuiMisc.setPanelStatusAllComponents(roiManager, bState); |
572 | | - GuiMisc.setPanelStatusAllComponents(btPanel.roiMeasure, bState); |
573 | | - GuiMisc.setPanelStatusAllComponents(btPanel.btTracksPanel, bState); |
574 | | - GuiMisc.setPanelStatusAllComponents(btPanel.btAniPanel, bState); |
575 | | - btPanel.voxelSizePanel.allowVoxelSizeChange(bState); |
| 583 | + public void setLockModeMacro(final boolean bLockMode) |
| 584 | + { |
| 585 | + SwingUtilities.invokeLater(()-> |
| 586 | + { |
| 587 | + lockGUI(bLockMode); |
| 588 | + }); |
| 589 | + } |
| 590 | + void lockGUI(final boolean bLockMode) |
| 591 | + { |
| 592 | + boolean bState = !bLockMode; |
| 593 | + |
| 594 | + GuiMisc.setPanelStatusAllComponents(roiManager, bState); |
| 595 | + GuiMisc.setPanelStatusAllComponents(btPanel.roiMeasure, bState); |
| 596 | + GuiMisc.setPanelStatusAllComponents(btPanel.btTracksPanel, bState); |
| 597 | + GuiMisc.setPanelStatusAllComponents(btPanel.btAniPanel, bState); |
| 598 | + btPanel.voxelSizePanel.allowVoxelSizeChange(bState); |
| 599 | + |
| 600 | + btPanel.clipPanel.butExtractClipped.setEnabled( bState ); |
| 601 | + //keep it on |
| 602 | + roiManager.butShowAll.setEnabled(true); |
576 | 603 |
|
577 | | - btPanel.clipPanel.butExtractClipped.setEnabled( bState ); |
578 | | - //keep it on |
579 | | - roiManager.butShowAll.setEnabled(true); |
580 | | - }); |
581 | 604 | } |
| 605 | + |
582 | 606 |
|
583 | 607 | /** turn on Trace Box mode **/ |
584 | 608 | public void getSemiAutoTrace(RealPoint target) |
|
0 commit comments