Skip to content

Commit

Permalink
Added Cmd button to be used on Mac instead of CTRL when selecting rec…
Browse files Browse the repository at this point in the history
…tangles

Uses the OS's menu shortcut key mask as the button to hold when selecting multiple labeled rectangles.
  • Loading branch information
Marc Halperin committed Jun 17, 2015
1 parent 135eba5 commit d86ca2a
Showing 1 changed file with 9 additions and 4 deletions.
13 changes: 9 additions & 4 deletions src/org/ohdsi/rabbitInAHat/MappingPanel.java
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
import java.awt.Point;
import java.awt.Rectangle;
import java.awt.RenderingHints;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
Expand Down Expand Up @@ -70,7 +71,7 @@ public class MappingPanel extends JPanel implements MouseListener, MouseMotionLi

private Mapping<?> mapping;
private List<LabeledRectangle> sourceComponents = new ArrayList<LabeledRectangle>();
private List<LabeledRectangle> cdmComponents = new ArrayList<LabeledRectangle>();
private List<LabeledRectangle> cdmComponents = new ArrayList<LabeledRectangle>();
private List<Arrow> arrows = new ArrayList<Arrow>();
private LabeledRectangle dragRectangle = null;
private LabeledRectangle lastSelectedRectangle = null;
Expand All @@ -84,6 +85,8 @@ public class MappingPanel extends JPanel implements MouseListener, MouseMotionLi
private MappingPanel slaveMappingPanel;
private boolean showOnlyConnectedItems = false;

private int shortcutMask = Toolkit.getDefaultToolkit().getMenuShortcutKeyMask();

private String lastSourceFilter = "";
private String lastTargetFilter = "";

Expand Down Expand Up @@ -355,8 +358,8 @@ public void mouseClicked(MouseEvent event) {
detailsListener.showDetails(null);
selectedArrow = null;
}
if (!event.isShiftDown() && !event.isControlDown()){

if (!event.isShiftDown() && !( (event.getModifiers() & shortcutMask ) == shortcutMask )){
for( LabeledRectangle component : cdmComponents){
component.setSelected(false);
}
Expand All @@ -370,6 +373,7 @@ public void mouseClicked(MouseEvent event) {
}else if (event.getX() > cdmX && event.getX() < cdmX + ITEM_WIDTH) { // target component
LabeledRectangleClicked(event, getVisibleTargetComponents());
}else if (event.getX() > sourceX + ITEM_WIDTH && event.getX() < cdmX) { // Arrows
lastSelectedRectangle = null;
Arrow clickedArrow = null;
for (HighlightStatus status: HighlightStatus.values()) {
for (Arrow arrow : currentArrowStatus.get(status)) {
Expand Down Expand Up @@ -407,6 +411,7 @@ public void mouseClicked(MouseEvent event) {
detailsListener.showDetails(null);
}
}else{
lastSelectedRectangle = null;
detailsListener.showDetails(null);
}

Expand Down Expand Up @@ -696,7 +701,7 @@ private void LabeledRectangleClicked(MouseEvent event, List<LabeledRectangle> co

if (component.contains(event.getPoint())) {

if(event.isControlDown()){ // Add one at a time
if((event.getModifiers() & shortcutMask ) == shortcutMask ){ // Add one at a time
component.toggleSelected();
}else if(event.isShiftDown()){ // Add in consecutive order

Expand Down

0 comments on commit d86ca2a

Please sign in to comment.