| 882 | } |
| 883 | |
| 884 | void refresh() { |
| 885 | setChildMenu(NULL); |
| 886 | clearChildren(); |
| 887 | |
| 888 | if (settings::devMode) { |
| 889 | addChild(createMenuLabel(string::translate("MenuBar.library.devMode"))); |
| 890 | } |
| 891 | else if (!library::isLoggedIn()) { |
| 892 | addChild(createMenuItem(string::translate("MenuBar.library.register"), "", [=]() { |
| 893 | system::openBrowser("https://vcvrack.com/login"); |
| 894 | })); |
| 895 | |
| 896 | ui::TextField* emailField = new ui::TextField; |
| 897 | emailField->placeholder = string::translate("MenuBar.library.email"); |
| 898 | emailField->box.size.x = 240.0; |
| 899 | addChild(emailField); |
| 900 | |
| 901 | AccountPasswordField* passwordField = new AccountPasswordField; |
| 902 | passwordField->placeholder = string::translate("MenuBar.library.password"); |
| 903 | passwordField->box.size.x = 240.0; |
| 904 | passwordField->nextField = emailField; |
| 905 | emailField->nextField = passwordField; |
| 906 | addChild(passwordField); |
| 907 | |
| 908 | LogInItem* logInItem = new LogInItem; |
| 909 | logInItem->emailField = emailField; |
| 910 | logInItem->passwordField = passwordField; |
| 911 | passwordField->logInItem = logInItem; |
| 912 | addChild(logInItem); |
| 913 | } |
| 914 | else { |
| 915 | addChild(createMenuItem(string::translate("MenuBar.library.logOut"), "", [=]() { |
| 916 | library::logOut(); |
| 917 | })); |
| 918 | |
| 919 | addChild(createMenuItem(string::translate("MenuBar.library.account"), "", [=]() { |
| 920 | system::openBrowser("https://vcvrack.com/account"); |
| 921 | })); |
| 922 | |
| 923 | addChild(createMenuItem(string::translate("MenuBar.library.browse"), "", [=]() { |
| 924 | system::openBrowser("https://library.vcvrack.com/"); |
| 925 | })); |
| 926 | |
| 927 | SyncUpdatesItem* syncItem = new SyncUpdatesItem; |
| 928 | syncItem->text = string::translate("MenuBar.library.updateAll"); |
| 929 | addChild(syncItem); |
| 930 | |
| 931 | if (!library::updateInfos.empty()) { |
| 932 | addChild(new ui::MenuSeparator); |
| 933 | addChild(createMenuLabel(string::translate("MenuBar.library.updates"))); |
| 934 | |
| 935 | for (auto& pair : library::updateInfos) { |
| 936 | SyncUpdateItem* updateItem = new SyncUpdateItem; |
| 937 | updateItem->setUpdate(pair.first); |
| 938 | addChild(updateItem); |
| 939 | } |
| 940 | } |
| 941 | } |
nothing calls this directly
no test coverage detected