Uses 911K of libraries. Click here for Pure Java version (8380L/44K).
!7 sclass Tab { S name; } compact module Tabs { new L<Tab> tabs_actual; transient L<Tab> tabs; transient JTabbedPane jtabs; start { tabs = notifyingList(tabs_actual, r change + r updateTabs); } visualize { jtabs = jtabs(); updateTabs(); ret withButtonsAbove(jtabs, "+", rThread { inputText("Name for new tab", vf<S> addTab) }); } void updateTabs q { fillJTabs(jtabs, syncCollect name(tabs)); } // API void addTab(S name) { tabs.add(nu(Tab, +name)); } }
download show line numbers debug dex old transpilations
Travelled to 9 computer(s): bhatertpkbcr, cfunsshuasjs, gwrvuhgaqvyk, mqqgnosmbjvj, onxytkatvevr, pyentgdyhuwx, pzhvpgtvlbxg, tvejysmllsmz, vouqrxazstgt
No comments. add comment
| Snippet ID: | #1020847 |
| Snippet name: | Tabs |
| Eternal ID of this version: | #1020847/22 |
| Text MD5: | 4c0b4f654556675b91de841a358fa8ee |
| Transpilation MD5: | 21b75751f1fd940a6fe7e9929a7225b1 |
| Author: | stefan |
| Category: | |
| Type: | JavaX source code (Dynamic Module) |
| Public (visible to everyone): | Yes |
| Archived (hidden from active list): | No |
| Created/modified: | 2019-01-06 02:10:34 |
| Source code size: | 514 bytes / 22 lines |
| Pitched / IR pitched: | No / No |
| Views / Downloads: | 582 / 1004 |
| Version history: | 21 change(s) |
| Referenced in: | [show references] |