aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/ui/util/PendingActionHelper.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui/util/PendingActionHelper.java')
-rw-r--r--src/main/java/de/pixart/messenger/ui/util/PendingActionHelper.java29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/util/PendingActionHelper.java b/src/main/java/de/pixart/messenger/ui/util/PendingActionHelper.java
new file mode 100644
index 000000000..06c291711
--- /dev/null
+++ b/src/main/java/de/pixart/messenger/ui/util/PendingActionHelper.java
@@ -0,0 +1,29 @@
+package de.pixart.messenger.ui.util;
+
+/**
+ * Created by mxf on 2018/4/3.
+ */
+
+public class PendingActionHelper {
+
+ private PendingAction pendingAction;
+
+ public void push(PendingAction pendingAction) {
+ this.pendingAction = pendingAction;
+ }
+
+ public void execute() {
+ if (pendingAction != null) {
+ pendingAction.execute();
+ pendingAction = null;
+ }
+ }
+
+ public void undo() {
+ pendingAction = null;
+ }
+
+ public interface PendingAction {
+ void execute();
+ }
+} \ No newline at end of file