mirror of
https://github.com/rvtr/GodMode9i.git
synced 2025-11-02 00:11:07 -04:00
Add taking screenshots to a few more places
This commit is contained in:
parent
fe50b15537
commit
9df88c6b7f
@ -9,6 +9,7 @@
|
|||||||
#include "file_browse.h"
|
#include "file_browse.h"
|
||||||
#include "font.h"
|
#include "font.h"
|
||||||
#include "ndsheaderbanner.h"
|
#include "ndsheaderbanner.h"
|
||||||
|
#include "screenshot.h"
|
||||||
|
|
||||||
#define copyBufSize 0x8000
|
#define copyBufSize 0x8000
|
||||||
#define shaChunkSize 0x10000
|
#define shaChunkSize 0x10000
|
||||||
@ -218,7 +219,7 @@ int fcopy(const char *sourcePath, const char *destinationPath) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void changeFileAttribs(const DirEntry *entry) {
|
void changeFileAttribs(const DirEntry *entry) {
|
||||||
int pressed = 0;
|
int pressed = 0, held = 0;
|
||||||
int cursorScreenPos = font->calcHeight(entry->name);
|
int cursorScreenPos = font->calcHeight(entry->name);
|
||||||
uint8_t currentAttribs = FAT_getAttr(entry->name.c_str());
|
uint8_t currentAttribs = FAT_getAttr(entry->name.c_str());
|
||||||
uint8_t newAttribs = currentAttribs;
|
uint8_t newAttribs = currentAttribs;
|
||||||
@ -242,6 +243,7 @@ void changeFileAttribs(const DirEntry *entry) {
|
|||||||
font->update(true);
|
font->update(true);
|
||||||
|
|
||||||
scanKeys();
|
scanKeys();
|
||||||
|
held = keysHeld();
|
||||||
pressed = keysDown();
|
pressed = keysDown();
|
||||||
swiWaitForVBlank();
|
swiWaitForVBlank();
|
||||||
} while (!(pressed & KEY_UP) && !(pressed & KEY_DOWN) && !(pressed & KEY_RIGHT) && !(pressed & KEY_LEFT)
|
} while (!(pressed & KEY_UP) && !(pressed & KEY_DOWN) && !(pressed & KEY_RIGHT) && !(pressed & KEY_LEFT)
|
||||||
@ -260,6 +262,8 @@ void changeFileAttribs(const DirEntry *entry) {
|
|||||||
break;
|
break;
|
||||||
} else if (pressed & (KEY_A | KEY_B)) {
|
} else if (pressed & (KEY_A | KEY_B)) {
|
||||||
break;
|
break;
|
||||||
|
} else if (held & KEY_R && pressed & KEY_L) {
|
||||||
|
screenshot();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -174,7 +174,7 @@ void showDirectoryContents (const std::vector<DirEntry>& dirContents, int fileOf
|
|||||||
}
|
}
|
||||||
|
|
||||||
FileOperation fileBrowse_A(DirEntry* entry, char path[PATH_MAX]) {
|
FileOperation fileBrowse_A(DirEntry* entry, char path[PATH_MAX]) {
|
||||||
int pressed = 0;
|
int pressed = 0, held = 0;
|
||||||
std::vector<FileOperation> operations;
|
std::vector<FileOperation> operations;
|
||||||
int optionOffset = 0;
|
int optionOffset = 0;
|
||||||
std::string fullPath = path + entry->name;
|
std::string fullPath = path + entry->name;
|
||||||
@ -287,9 +287,9 @@ FileOperation fileBrowse_A(DirEntry* entry, char path[PATH_MAX]) {
|
|||||||
|
|
||||||
scanKeys();
|
scanKeys();
|
||||||
pressed = keysDownRepeat();
|
pressed = keysDownRepeat();
|
||||||
|
held = keysHeld();
|
||||||
swiWaitForVBlank();
|
swiWaitForVBlank();
|
||||||
} while (!(pressed & KEY_UP) && !(pressed & KEY_DOWN)
|
} while (!(pressed & (KEY_UP| KEY_DOWN | KEY_A | KEY_B | KEY_L))
|
||||||
&& !(pressed & KEY_A) && !(pressed & KEY_B)
|
|
||||||
#ifdef SCREENSWAP
|
#ifdef SCREENSWAP
|
||||||
&& !(pressed & KEY_TOUCH)
|
&& !(pressed & KEY_TOUCH)
|
||||||
#endif
|
#endif
|
||||||
@ -435,6 +435,10 @@ FileOperation fileBrowse_A(DirEntry* entry, char path[PATH_MAX]) {
|
|||||||
scanKeys();
|
scanKeys();
|
||||||
pressed = keysDownRepeat();
|
pressed = keysDownRepeat();
|
||||||
swiWaitForVBlank();
|
swiWaitForVBlank();
|
||||||
|
|
||||||
|
if(keysHeld() & KEY_R && pressed & KEY_L) {
|
||||||
|
screenshot();
|
||||||
|
}
|
||||||
} while (!(pressed & (KEY_A | KEY_Y | KEY_B | KEY_X)));
|
} while (!(pressed & (KEY_A | KEY_Y | KEY_B | KEY_X)));
|
||||||
break;
|
break;
|
||||||
} case FileOperation::none: {
|
} case FileOperation::none: {
|
||||||
@ -453,6 +457,11 @@ FileOperation fileBrowse_A(DirEntry* entry, char path[PATH_MAX]) {
|
|||||||
screenSwapped ? lcdMainOnBottom() : lcdMainOnTop();
|
screenSwapped ? lcdMainOnBottom() : lcdMainOnTop();
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// Make a screenshot
|
||||||
|
if ((held & KEY_R) && (pressed & KEY_L)) {
|
||||||
|
screenshot();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -46,6 +46,8 @@ u32 jumpToOffset(u32 offset) {
|
|||||||
cursorPosition--;
|
cursorPosition--;
|
||||||
} else if(pressed & (KEY_A | KEY_B)) {
|
} else if(pressed & (KEY_A | KEY_B)) {
|
||||||
return offset;
|
return offset;
|
||||||
|
} else if(keysHeld() & KEY_R && pressed & KEY_L) {
|
||||||
|
screenshot();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -79,6 +81,8 @@ u32 search(u32 offset, FILE *file) {
|
|||||||
break;
|
break;
|
||||||
} else if(pressed & KEY_B) {
|
} else if(pressed & KEY_B) {
|
||||||
return offset;
|
return offset;
|
||||||
|
} else if(keysHeld() & KEY_R && pressed & KEY_L) {
|
||||||
|
screenshot();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -160,6 +164,8 @@ u32 search(u32 offset, FILE *file) {
|
|||||||
if(cursorPosition > strLen * 2 - 1)
|
if(cursorPosition > strLen * 2 - 1)
|
||||||
cursorPosition -= 2;
|
cursorPosition -= 2;
|
||||||
}
|
}
|
||||||
|
} else if(keysHeld() & KEY_R && pressed & KEY_L) {
|
||||||
|
screenshot();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
#include "date.h"
|
#include "date.h"
|
||||||
#include "font.h"
|
#include "font.h"
|
||||||
|
#include "screenshot.h"
|
||||||
#include "tonccpy.h"
|
#include "tonccpy.h"
|
||||||
|
|
||||||
#include <nds.h>
|
#include <nds.h>
|
||||||
@ -120,6 +121,8 @@ void ndsInfo(const char *path) {
|
|||||||
lang++;
|
lang++;
|
||||||
} else if(pressed & KEY_B) {
|
} else if(pressed & KEY_B) {
|
||||||
break;
|
break;
|
||||||
|
} else if(keysHeld() & KEY_R && pressed & KEY_L) {
|
||||||
|
screenshot();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user