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.paint.Color;
|
||||||
import javafx.scene.shape.Polygon;
|
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(
|
super(
|
||||||
0, size,
|
0, size,
|
||||||
0, 0,
|
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.recorder.Recorder;
|
||||||
import ctbrec.ui.AutosizeAlert;
|
import ctbrec.ui.AutosizeAlert;
|
||||||
import ctbrec.ui.CamrecApplication;
|
import ctbrec.ui.CamrecApplication;
|
||||||
import ctbrec.ui.PauseIndicator;
|
|
||||||
import ctbrec.ui.SiteUiFactory;
|
import ctbrec.ui.SiteUiFactory;
|
||||||
import ctbrec.ui.StreamSourceSelectionDialog;
|
import ctbrec.ui.StreamSourceSelectionDialog;
|
||||||
import ctbrec.ui.action.PlayAction;
|
import ctbrec.ui.action.PlayAction;
|
||||||
|
import ctbrec.ui.controls.PausedIndicator;
|
||||||
import ctbrec.ui.controls.StreamPreview;
|
import ctbrec.ui.controls.StreamPreview;
|
||||||
import javafx.animation.FadeTransition;
|
import javafx.animation.FadeTransition;
|
||||||
import javafx.animation.FillTransition;
|
import javafx.animation.FillTransition;
|
||||||
|
@ -85,7 +85,7 @@ public class ThumbCell extends StackPane {
|
||||||
private Text resolutionTag;
|
private Text resolutionTag;
|
||||||
private Recorder recorder;
|
private Recorder recorder;
|
||||||
private Circle recordingIndicator;
|
private Circle recordingIndicator;
|
||||||
private PauseIndicator pausedIndicator;
|
private PausedIndicator pausedIndicator;
|
||||||
private int index = 0;
|
private int index = 0;
|
||||||
ContextMenu popup;
|
ContextMenu popup;
|
||||||
private static final Color colorNormal = Color.BLACK;
|
private static final Color colorNormal = Color.BLACK;
|
||||||
|
@ -183,12 +183,8 @@ public class ThumbCell extends StackPane {
|
||||||
StackPane.setAlignment(recordingIndicator, Pos.TOP_LEFT);
|
StackPane.setAlignment(recordingIndicator, Pos.TOP_LEFT);
|
||||||
getChildren().add(recordingIndicator);
|
getChildren().add(recordingIndicator);
|
||||||
|
|
||||||
pausedIndicator = new PauseIndicator(colorRecording, 16);
|
pausedIndicator = new PausedIndicator(16, colorRecording);
|
||||||
pausedIndicator.setVisible(false);
|
|
||||||
pausedIndicator.setCursor(Cursor.HAND);
|
|
||||||
pausedIndicator.setOnMouseClicked(e -> pauseResumeAction(false));
|
pausedIndicator.setOnMouseClicked(e -> pauseResumeAction(false));
|
||||||
StackPane.setMargin(pausedIndicator, new Insets(3));
|
|
||||||
StackPane.setAlignment(pausedIndicator, Pos.TOP_LEFT);
|
|
||||||
getChildren().add(pausedIndicator);
|
getChildren().add(pausedIndicator);
|
||||||
|
|
||||||
if (Config.getInstance().getSettings().livePreviews) {
|
if (Config.getInstance().getSettings().livePreviews) {
|
||||||
|
|
Loading…
Reference in New Issue