mirror of
https://github.com/AndorsTrailRelease/ATCS.git
synced 2025-10-27 18:44:03 +01:00
Initial commit
This commit is contained in:
91
src/com/gpl/rpg/atcontentstudio/Notification.java
Normal file
91
src/com/gpl/rpg/atcontentstudio/Notification.java
Normal file
@@ -0,0 +1,91 @@
|
||||
package com.gpl.rpg.atcontentstudio;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class Notification {
|
||||
|
||||
public static List<Notification> notifs = new ArrayList<Notification>();
|
||||
private static List<NotificationListener> listeners = new ArrayList<NotificationListener>();
|
||||
public static boolean showS = true, showI = true, showW = true, showE = true;
|
||||
|
||||
static {
|
||||
boolean[] config = ConfigCache.getNotifViewConfig();
|
||||
showS = config[0];
|
||||
showI = config[1];
|
||||
showW = config[2];
|
||||
showE = config[3];
|
||||
}
|
||||
|
||||
public static enum Type {
|
||||
SUCCESS,
|
||||
INFO,
|
||||
WARN,
|
||||
ERROR
|
||||
}
|
||||
|
||||
public Type type;
|
||||
public String text;
|
||||
|
||||
public Notification(Type type, String text) {
|
||||
this.type = type;
|
||||
this.text = text;
|
||||
}
|
||||
|
||||
public String toString() {
|
||||
return "["+type.toString()+"] "+text;
|
||||
}
|
||||
|
||||
public static void clear() {
|
||||
int i = notifs.size();
|
||||
notifs.clear();
|
||||
for (NotificationListener l : listeners) {
|
||||
l.onListCleared(i);
|
||||
}
|
||||
}
|
||||
|
||||
public static void addSuccess(String text) {
|
||||
if (!showS) return;
|
||||
Notification n = new Notification(Notification.Type.SUCCESS, text);
|
||||
notifs.add(n);
|
||||
for (NotificationListener l : listeners) {
|
||||
l.onNewNotification(n);
|
||||
}
|
||||
}
|
||||
|
||||
public static void addInfo(String text) {
|
||||
if (!showI) return;
|
||||
Notification n = new Notification(Notification.Type.INFO, text);
|
||||
notifs.add(n);
|
||||
for (NotificationListener l : listeners) {
|
||||
l.onNewNotification(n);
|
||||
}
|
||||
}
|
||||
|
||||
public static void addWarn(String text) {
|
||||
if (!showW) return;
|
||||
Notification n = new Notification(Notification.Type.WARN, text);
|
||||
notifs.add(n);
|
||||
for (NotificationListener l : listeners) {
|
||||
l.onNewNotification(n);
|
||||
}
|
||||
}
|
||||
|
||||
public static void addError(String text) {
|
||||
if (!showE) return;
|
||||
Notification n = new Notification(Notification.Type.ERROR, text);
|
||||
notifs.add(n);
|
||||
for (NotificationListener l : listeners) {
|
||||
l.onNewNotification(n);
|
||||
}
|
||||
}
|
||||
|
||||
public static void addNotificationListener(NotificationListener l) {
|
||||
listeners.add(l);
|
||||
}
|
||||
|
||||
public static void removeNotificationListener(NotificationListener l) {
|
||||
listeners.remove(l);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user