!7 sclass SystemCPUTrayIcon extends DynBigNumber { transient BufferedImage trayImage; transient TrayIcon trayIcon; start { setDescription("SYSTEM CPU %"); setToolTip("Percentage is per core (max=" + numberOfCores()*100 + "%)"); ownTimer(doEvery(2.0, r actualUpdate)); ownResource(tempTrayIcon(trayIcon = installTrayIcon(trayImage = whiteImage(24, 24), "System CPU"))); } void actualUpdate { double load = systemCPULoad(); setValue(toIntPercent_ceil(load*numberOfCores()) + " %"); fillRect(trayImage, 0, 0, trayImage.getWidth(), trayImage.getHeight(), blendColor(Color.black, Color.white, load)); trayIcon.setImage(trayImage); } }