| 564 | } |
| 565 | |
| 566 | bool ModuleWidget::pasteClipboardAction() { |
| 567 | const char* json = glfwGetClipboardString(APP->window->win); |
| 568 | if (!json) { |
| 569 | WARN("Could not get text from clipboard."); |
| 570 | return false; |
| 571 | } |
| 572 | |
| 573 | json_error_t error; |
| 574 | json_t* moduleJ = json_loads(json, 0, &error); |
| 575 | if (!moduleJ) { |
| 576 | WARN("JSON parsing error at %s %d:%d %s", error.source, error.line, error.column, error.text); |
| 577 | return false; |
| 578 | } |
| 579 | DEFER({json_decref(moduleJ);}); |
| 580 | |
| 581 | return pasteJsonAction(moduleJ); |
| 582 | } |
| 583 | |
| 584 | void ModuleWidget::load(std::string filename) { |
| 585 | FILE* file = std::fopen(filename.c_str(), "r"); |