!7 sclass SwingLatencyWatchdog > DynBigNumber { int maxValue = 10000; bool triggered; start { setDescription("LATENCY"); doEvery(1000, r testIt); } enhanceFrame { internalFrameTitleMenuItem(f, "Clear logs now", rThread dm_clearAllPrintLogs); } void testIt { long time = sysNow(); swing {} time = sysNow()-time; setValue(time + " ms"); if (time >= maxValue) { logQuotedWithDate(javaxDataDir("Swing Latency Log.txt"), "TRIGGERED. " + time + " ms"); trigger(); } } void testTrigger { trigger(); } void trigger { print("TRIGGERED, CLEARING PRINT LOGS"); triggered = true; dm_clearAllPrintLogs(); } }