Browse Source

方法提取

fbp/merge
renekton 4 months ago
parent
commit
43f9b6f312
  1. 48
      designer-base/src/main/java/com/fr/design/style/background/gradient/GradientBar.java

48
designer-base/src/main/java/com/fr/design/style/background/gradient/GradientBar.java

@ -134,28 +134,7 @@ public class GradientBar extends AbstractComponentPopBox implements UIObserver,
protected void addMouseDragListener() {
this.addMouseMotionListener(new MouseAdapter() {
public void mouseDragged(MouseEvent e) {
int oldIndex = index;
for (int i = 0; i < list.size(); i++) {
if (list.get(i).contains(e.getX(), e.getY())) {
index = i;
break;
}
}
if (OperatingSystem.isLinux() && AssistUtils.equals(oldIndex, index)) {
if (Math.abs(p1.getX() - e.getX()) > Math.abs(p2.getX() - e.getX())) {
index = 1;
} else {
index = 0;
}
}
boolean x = e.getX() <= max && e.getX() >= min;
if (x && e.getY() < MAX_VERTICAL) {
list.get(index).setX(e.getX());
}
GradientBar.this.repaint();
startLabel.setText(Double.toString(p1.getX()));
endLabel.setText(Double.toString(p2.getX()));
dragAction(e);
}
});
}
@ -336,4 +315,29 @@ public class GradientBar extends AbstractComponentPopBox implements UIObserver,
public void setDraggable(boolean draggable) {
this.draggable = draggable;
}
private void dragAction(MouseEvent e) {
int oldIndex = index;
for (int i = 0; i < list.size(); i++) {
if (list.get(i).contains(e.getX(), e.getY())) {
index = i;
break;
}
}
if (OperatingSystem.isLinux() && AssistUtils.equals(oldIndex, index)) {
if (Math.abs(p1.getX() - e.getX()) > Math.abs(p2.getX() - e.getX())) {
index = 1;
} else {
index = 0;
}
}
boolean x = e.getX() <= max && e.getX() >= min;
if (x && e.getY() < MAX_VERTICAL) {
list.get(index).setX(e.getX());
}
GradientBar.this.repaint();
startLabel.setText(Double.toString(p1.getX()));
endLabel.setText(Double.toString(p2.getX()));
}
}
Loading…
Cancel
Save