Rearrange Icons

This commit is contained in:
J-D-K 2020-03-21 18:48:24 -04:00
parent 03b09f550a
commit 575bcbd94a
3 changed files with 31 additions and 16 deletions

View File

@ -41,6 +41,9 @@ namespace util
std::string generateAbbrev(data::titledata& dat);
//Loads default icon.
tex *loadDefaultIcon();
//Creates a basic generic icon for stuff without one
tex *createIconGeneric(const char *txt);

View File

@ -104,9 +104,9 @@ namespace data
bcat.initNoChk(util::u128ToAccountUID(2), "BCAT");
dev.initNoChk(util::u128ToAccountUID(3), "Device");
users.push_back(sys);
users.push_back(bcat);
users.push_back(dev);
users.push_back(bcat);
users.push_back(sys);
while(true)
{
@ -177,7 +177,11 @@ namespace data
void icn::load(const uint64_t& _id, const uint8_t *jpegData, const size_t& jpegSize)
{
titleID = _id;
iconTex = texLoadJPEGMem(jpegData, jpegSize);
if(isSpcd)
iconTex = util::loadDefaultIcon();
else
iconTex = texLoadJPEGMem(jpegData, jpegSize);
}
void icn::load(const uint64_t& _id, const std::string& _png)
@ -302,19 +306,7 @@ namespace data
delete[] profJpeg;
}
else
{
FILE *icnFile = fopen("romfs:/img/icn/icnDefault.png", "rb");
fseek(icnFile, 0, SEEK_END);
size_t fileSize = ftell(icnFile);
fseek(icnFile, 0xB50, SEEK_SET);
size_t icnSize = fileSize - 0xB50;
unsigned char *tmpBuff = new unsigned char[icnSize];
fread(tmpBuff, 1, icnSize, icnFile);
fclose(icnFile);
userIcon = texLoadJPEGMem(tmpBuff, icnSize);
delete[] tmpBuff;
}
userIcon = util::loadDefaultIcon();
accountProfileClose(&prof);

View File

@ -246,6 +246,26 @@ namespace util
return ret;
}
tex *loadDefaultIcon()
{
tex *ret;
std::fstream iconIn("romfs:/img/icn/icnDefault.png", std::ios::in | std::ios::binary);
iconIn.seekg(0, iconIn.end);
size_t fileSize = iconIn.tellg();
iconIn.seekg(0xB50, iconIn.beg);
size_t iconSize = fileSize - 0xB50;
uint8_t *tmpBuff = new uint8_t[iconSize];
iconIn.read((char *)tmpBuff, iconSize);
iconIn.close();
ret = texLoadJPEGMem(tmpBuff, iconSize);
delete[] tmpBuff;
return ret;
}
tex *createIconGeneric(const char *txt)
{
tex *ret = texCreate(256, 256);