Improve recording PausedIndicator
Make the whole area clickable and not only the painted area
This commit is contained in:
parent
0e7b5b5452
commit
eb1db87e82
|
@ -4,9 +4,9 @@ package ctbrec.ui;
|
|||
import javafx.scene.paint.Color;
|
||||
import javafx.scene.shape.Polygon;
|
||||
|
||||
public class PauseIndicator extends Polygon {
|
||||
public class PauseIcon extends Polygon {
|
||||
|
||||
public PauseIndicator(Color color, int size) {
|
||||
public PauseIcon(Color color, int size) {
|
||||
super(
|
||||
0, size,
|
||||
0, 0,
|
|
@ -0,0 +1,36 @@
|
|||
package ctbrec.ui.controls;
|
||||
|
||||
import ctbrec.ui.PauseIcon;
|
||||
import javafx.geometry.Insets;
|
||||
import javafx.geometry.Pos;
|
||||
import javafx.scene.Cursor;
|
||||
import javafx.scene.layout.StackPane;
|
||||
import javafx.scene.paint.Color;
|
||||
import javafx.scene.paint.Paint;
|
||||
import javafx.scene.shape.Rectangle;
|
||||
|
||||
public class PausedIndicator extends StackPane {
|
||||
|
||||
private PauseIcon pausedIcon;
|
||||
private Rectangle clickPanel;
|
||||
|
||||
public PausedIndicator(int size, Color color) {
|
||||
pausedIcon = new PauseIcon(color, size);
|
||||
pausedIcon.setVisible(false);
|
||||
clickPanel = new Rectangle(size, size);
|
||||
clickPanel.setCursor(Cursor.HAND);
|
||||
clickPanel.setFill(Paint.valueOf("#00000000"));
|
||||
getChildren().add(pausedIcon);
|
||||
getChildren().add(clickPanel);
|
||||
|
||||
StackPane.setMargin(pausedIcon, new Insets(3));
|
||||
StackPane.setAlignment(pausedIcon, Pos.TOP_LEFT);
|
||||
StackPane.setMargin(clickPanel, new Insets(3));
|
||||
StackPane.setAlignment(clickPanel, Pos.TOP_LEFT);
|
||||
|
||||
pausedIcon.visibleProperty().bindBidirectional(visibleProperty());
|
||||
pausedIcon.onMouseClickedProperty().bindBidirectional(onMouseClickedProperty());
|
||||
clickPanel.onMouseClickedProperty().bindBidirectional(onMouseClickedProperty());
|
||||
}
|
||||
}
|
||||
|
|
@ -27,10 +27,10 @@ import ctbrec.io.HttpException;
|
|||
import ctbrec.recorder.Recorder;
|
||||
import ctbrec.ui.AutosizeAlert;
|
||||
import ctbrec.ui.CamrecApplication;
|
||||
import ctbrec.ui.PauseIndicator;
|
||||
import ctbrec.ui.SiteUiFactory;
|
||||
import ctbrec.ui.StreamSourceSelectionDialog;
|
||||
import ctbrec.ui.action.PlayAction;
|
||||
import ctbrec.ui.controls.PausedIndicator;
|
||||
import ctbrec.ui.controls.StreamPreview;
|
||||
import javafx.animation.FadeTransition;
|
||||
import javafx.animation.FillTransition;
|
||||
|
@ -85,7 +85,7 @@ public class ThumbCell extends StackPane {
|
|||
private Text resolutionTag;
|
||||
private Recorder recorder;
|
||||
private Circle recordingIndicator;
|
||||
private PauseIndicator pausedIndicator;
|
||||
private PausedIndicator pausedIndicator;
|
||||
private int index = 0;
|
||||
ContextMenu popup;
|
||||
private static final Color colorNormal = Color.BLACK;
|
||||
|
@ -183,12 +183,8 @@ public class ThumbCell extends StackPane {
|
|||
StackPane.setAlignment(recordingIndicator, Pos.TOP_LEFT);
|
||||
getChildren().add(recordingIndicator);
|
||||
|
||||
pausedIndicator = new PauseIndicator(colorRecording, 16);
|
||||
pausedIndicator.setVisible(false);
|
||||
pausedIndicator.setCursor(Cursor.HAND);
|
||||
pausedIndicator = new PausedIndicator(16, colorRecording);
|
||||
pausedIndicator.setOnMouseClicked(e -> pauseResumeAction(false));
|
||||
StackPane.setMargin(pausedIndicator, new Insets(3));
|
||||
StackPane.setAlignment(pausedIndicator, Pos.TOP_LEFT);
|
||||
getChildren().add(pausedIndicator);
|
||||
|
||||
if (Config.getInstance().getSettings().livePreviews) {
|
||||
|
|
Loading…
Reference in New Issue