MCPcopy Create free account
hub / github.com/VCVRack/Rack / refresh

Method refresh

src/app/MenuBar.cpp:884–942  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

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 }

Callers

nothing calls this directly

Calls 8

createMenuLabelFunction · 0.85
translateFunction · 0.85
isLoggedInFunction · 0.85
createMenuItemFunction · 0.85
openBrowserFunction · 0.85
logOutFunction · 0.85
setUpdateMethod · 0.80
emptyMethod · 0.45

Tested by

no test coverage detected