MCPcopy Create free account
hub / github.com/TactilityProject/Tactility / appNotesEventCb

Method appNotesEventCb

Tactility/Source/app/notes/Notes.cpp:32–73  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

30#pragma region Main_Events_Functions
31
32 void appNotesEventCb(lv_event_t* e) {
33 lv_event_code_t code = lv_event_get_code(e);
34 lv_obj_t* obj = lv_event_get_target_obj(e);
35
36 if (code == LV_EVENT_VALUE_CHANGED) {
37 if (obj == uiDropDownMenu) {
38 switch (lv_dropdown_get_selected(obj)) {
39 case 0: // New
40 resetFileContent();
41 break;
42 case 1: // Save
43 if (!filePath.empty()) {
44 lvgl::getSyncLock()->lock();
45 saveBuffer = lv_textarea_get_text(uiNoteText);
46 lvgl::getSyncLock()->unlock();
47 saveFile(filePath);
48 }
49 break;
50 case 2: // Save as...
51 lvgl::getSyncLock()->lock();
52 saveBuffer = lv_textarea_get_text(uiNoteText);
53 lvgl::getSyncLock()->unlock();
54 saveFileLaunchId = fileselection::startForExistingOrNewFile();
55 LOGGER.info("launched with id {}", saveFileLaunchId);
56 break;
57 case 3: // Load
58 loadFileLaunchId = fileselection::startForExistingFile();
59 LOGGER.info("launched with id {}", loadFileLaunchId);
60 break;
61 }
62 } else {
63 auto* cont = lv_event_get_current_target_obj(e);
64 if (obj == cont) return;
65 if (lv_obj_get_child(cont, 1)) {
66 saveFileLaunchId = fileselection::startForExistingOrNewFile();
67 LOGGER.info("launched with id {}", saveFileLaunchId);
68 } else { //Reset
69 resetFileContent();
70 }
71 }
72 }
73 }
74
75 void resetFileContent() {
76 lv_textarea_set_text(uiNoteText, "");

Callers 1

onShowMethod · 0.95

Calls 6

getSyncLockFunction · 0.85
startForExistingFileFunction · 0.85
infoMethod · 0.80
lockMethod · 0.45
unlockMethod · 0.45

Tested by

no test coverage detected