Libraryless. Click here for Pure Java version (8206L/60K).
scope stefansOS_loadingAnimation. sbool #fullScreen; sS #text = "Stefan's OS loading"; sS #animationID = #1101325; //#1101279; static JFrame stefansOS_loadingAnimation(Runnable onStop) { ret stefansOS_loadingAnimation(onStop, null); } static JFrame stefansOS_loadingAnimation(final Runnable onStop, LiveValue<S> lvDetails) { if (headless()) null; print("[loading animation]"); final JLabel label = jcenteredlabel(text); final JButton stopButton = jbutton(upper("Press space to stop"), r { disableButton(); //setText(heldInstance(JButton), "Stopping..."); setText(label, "STOPPING"); callF(onStop); }); logMechListAppendLocally("Animations shown", animationID); JComponent anim; { temp tempSetThreadLocal(imageIcon_fixGIF, false); anim = jimage(animationID); } JPanel panel = jBackground(Color.black, centerAndSouth(centerAndSouth( withMargin(50, anim), withMargin(20, 40, 0, 40, setForeground(Color.white, setFont(#1011145, 60, label)))), withMargin(0, 20, 20, 20, northAndCenter( withBottomMargin(30, setForeground(Color.white, jCenteredLiveValueLabel(lvDetails))), jcenteredline(stopButton))))); if (fullScreen) ret showFullScreen(panel); else ret onWindowClosingOnly(showCenterPackedFrame(text, panel), rClickButton(stopButton)); } end scope
Began life as a copy of #1015998
download show line numbers debug dex old transpilations
Travelled to 14 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, gwrvuhgaqvyk, irmadwmeruwu, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment
| Snippet ID: | #1016004 |
| Snippet name: | stefansOS_loadingAnimation |
| Eternal ID of this version: | #1016004/23 |
| Text MD5: | a33802492b8bc9eda22435eacc37c22c |
| Transpilation MD5: | d6d90e0917836a02b6480ab87cace542 |
| Author: | stefan |
| Category: | javax / gui |
| Type: | JavaX fragment (include) |
| Public (visible to everyone): | Yes |
| Archived (hidden from active list): | No |
| Created/modified: | 2018-06-24 04:50:26 |
| Source code size: | 1380 bytes / 40 lines |
| Pitched / IR pitched: | No / No |
| Views / Downloads: | 916 / 1133 |
| Version history: | 22 change(s) |
| Referenced in: | #1006654 - Standard functions list 2 (LIVE, continuation of #761) |