Layout Update

This commit is contained in:
J-D-K 2018-11-07 11:51:02 -05:00
parent 4e592a4c00
commit 1a33cd9ddc
11 changed files with 54 additions and 88 deletions

View File

@ -38,7 +38,7 @@ INCLUDES := inc
EXEFS_SRC := exefs_src
APP_TITLE := JKSV
APP_AUTHOR := JK_
APP_VERSION := 10/14/2018
APP_VERSION := 11/7/2018
ROMFS := romfs
#---------------------------------------------------------------------------------

BIN
romfs/img/icn/icnDrk.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
romfs/img/icn/icnLght.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -67,7 +67,7 @@ int main(int argc, const char *argv[])
ui::mstate = ui::clsMode ? CLS_USR : USR_SEL;
}
}
else if((held & KEY_ZL) && (held & KEY_ZR) && (held & KEY_Y) && ui::confirm("You are using this mode at your own risk."))
else if((held & KEY_ZL) && (held & KEY_ZR) && (held & KEY_MINUS) && ui::confirm("You are using this mode at your own risk."))
{
fsdevUnmountDevice("sv");
data::curData.setType(FsSaveDataType_SystemSaveData);

View File

@ -11,7 +11,7 @@
#include "util.h"
#include "file.h"
static std::string TITLE_TEXT = "JKSV - 10/14/2018";
#define VER_STRING "v. 11/7/2018"
//background that can be drawn from "/JKSV/back.jpg"
//txtSide and fldSide are to fake alpha blending so the framerate doesn't suffer
@ -43,7 +43,7 @@ namespace ui
tex *buttonA, *buttonB, *buttonX, *buttonY, *buttonMin;
tex *selBox;
tex *selBox, *icn;
font *shared;
@ -68,6 +68,8 @@ namespace ui
buttonY = texLoadPNGFile("romfs:/img/button/buttonY_drk.png");
buttonMin = texLoadPNGFile("romfs:/img/button/buttonMin_drk.png");
icn = texLoadPNGFile("romfs:/img/icn/icnDrk.png");
clearClr = clrCreateU32(0xFFEBEBEB);
mnuTxt = clrCreateU32(0xFF000000);
txtClr = clrCreateU32(0xFFFFFFFF);
@ -92,6 +94,7 @@ namespace ui
buttonX = texLoadPNGFile("romfs:/img/button/buttonX_lght.png");
buttonY = texLoadPNGFile("romfs:/img/button/buttonY_lght.png");
buttonMin = texLoadPNGFile("romfs:/img/button/buttonMin_lght.png");
icn = texLoadPNGFile("romfs:/img/icn/icnLght.png");
clearClr = clrCreateU32(0xFF2D2D2D);
mnuTxt = clrCreateU32(0xFFFFFFFF);
@ -125,13 +128,13 @@ namespace ui
{
background = texLoadJPEGFile(std::string(fs::getWorkDir() + "back.jpg").c_str());
//Fake alpha Rects
fldSide = texCreateFromPart(background, 16, 66, 320, 592);
fldSide = texCreateFromPart(background, 30, 88, 320, 560);
clr tempRect = sideRect;
tempRect.a = 0xAA;
drawRectAlpha(fldSide, 0, 0, 320, 592, tempRect);
drawRectAlpha(fldSide, 0, 0, 320, 560, tempRect);
txtSide = texCreateFromPart(background, 16, 66, 448, 592);
drawRectAlpha(txtSide, 0, 0, 448, 592, tempRect);
txtSide = texCreateFromPart(background, 30, 88, 448, 560);
drawRectAlpha(txtSide, 0, 0, 448, 560, tempRect);
}
advCopyMenuPrep();
@ -164,7 +167,7 @@ namespace ui
void setupSelButtons()
{
int x = 70, y = 80;
int x = 70, y = 98;
for(int i = 0; i < 32; y += 144)
{
int endRow = i + 8;
@ -218,48 +221,33 @@ namespace ui
else
texDrawNoAlpha(background, frameBuffer, 0, 0);
drawText(TITLE_TEXT.c_str(), frameBuffer, shared, 32, 20, 24, mnuTxt);
texDraw(icn, frameBuffer, 66, 27);
drawText("JKSV", frameBuffer, shared, 130, 38, 24, mnuTxt);
drawText(VER_STRING, frameBuffer, shared, 8, 702, 12, mnuTxt);
drawRect(frameBuffer, 30, 87, 1220, 1, divClr);
drawRect(frameBuffer, 30, 648, 1220, 1, divClr);
switch(mstate)
{
case FLD_SEL:
drawRect(frameBuffer, 16, 64, 1248, 1, divClr);
if(fldSide == NULL)
drawRect(frameBuffer, 16, 66, 320, 592, sideRect);
drawRect(frameBuffer, 30, 88, 320, 560, sideRect);
else
texDraw(fldSide, frameBuffer, 16, 66);
drawRect(frameBuffer, 16, 656, 1248, 1, divClr);
break;
case USR_SEL:
case TTL_SEL:
drawRect(frameBuffer, 16, 64, 1248, 1, divClr);
drawRect(frameBuffer, 16, 656, 1248, 1, divClr);
texDraw(fldSide, frameBuffer, 30, 88);
break;
case ADV_MDE:
drawRect(frameBuffer, 16, 64, 1248, 1, divClr);
drawRect(frameBuffer, 640, 64, 1, 592, divClr);
drawRect(frameBuffer, 16, 656, 1248, 1, divClr);
drawRect(frameBuffer, 640, 87, 1, 560, divClr);
break;
case CLS_TTL:
case CLS_USR:
case CLS_FLD:
case DEV_MNU:
drawRect(frameBuffer, 16, 64, 1248, 1, divClr);
if(txtSide == NULL)
drawRect(frameBuffer, 16, 65, 448, 592, sideRect);
drawRect(frameBuffer, 30, 88, 448, 560, sideRect);
else
texDraw(txtSide, frameBuffer, 16, 66);
drawRect(frameBuffer, 16, 656, 1248, 1, divClr);
texDraw(txtSide, frameBuffer, 30, 88);
break;
}
@ -275,7 +263,10 @@ namespace ui
texDraw(buttonY, frameBuffer, startX += 72, 672);
drawText("Dump All", frameBuffer, shared, startX += 38, 680, 14, mnuTxt);
texDraw(buttonX, frameBuffer, startX += 96, 672);
drawText("Text Mode", frameBuffer, shared, startX += 38, 680, 14, mnuTxt);
if(ui::clsMode)
drawText("GUI Mode", frameBuffer, shared, startX += 38, 680, 14, mnuTxt);
else
drawText("Text Mode", frameBuffer, shared, startX += 38, 680, 14, mnuTxt);
}
break;

View File

@ -320,8 +320,8 @@ namespace ui
void advModePrep()
{
saveMenu.setParams(16, 88, 616);
sdMenu.setParams(648, 88, 616);
saveMenu.setParams(30, 98, 602);
sdMenu.setParams(648, 98, 602);
copyMenu.setParams(472, 278, 304);
savePath = "sv:/";
@ -357,8 +357,8 @@ namespace ui
saveMenu.draw(mnuTxt);
sdMenu.draw(mnuTxt);
drawTextWrap(savePath.c_str(), frameBuffer, ui::shared, 16, 668, 14, mnuTxt, 600);
drawTextWrap(sdPath.c_str(), frameBuffer, ui::shared, 656, 668, 14, mnuTxt, 600);
drawTextWrap(savePath.c_str(), frameBuffer, ui::shared, 30, 654, 14, mnuTxt, 600);
drawTextWrap(sdPath.c_str(), frameBuffer, ui::shared, 640, 654, 14, mnuTxt, 600);
//OH BOY HERE WE GO
if(down & KEY_A)

View File

@ -19,7 +19,7 @@ namespace ui
{
userMenu.reset();
userMenu.setParams(28, 88, 424);
userMenu.setParams(42, 98, 424);
for(unsigned i = 0; i < data::users.size(); i++)
userMenu.addOpt(data::users[i].getUsername());
@ -28,7 +28,7 @@ namespace ui
void clsTitlePrep(data::user& u)
{
titleMenu.reset();
titleMenu.setParams(28, 88, 424);
titleMenu.setParams(42, 98, 424);
for(unsigned i = 0; i < u.titles.size(); i++)
titleMenu.addOpt(u.titles[i].getTitle());
@ -36,7 +36,7 @@ namespace ui
void clsFolderPrep(data::user& usr, data::titledata& dat)
{
folderMenu.setParams(472, 88, 790);
folderMenu.setParams(488, 98, 762);
folderMenu.reset();
util::makeTitleDir(usr, dat);
@ -228,7 +228,7 @@ namespace ui
void devMenuPrep()
{
devMenu.reset();
devMenu.setParams(28, 88, 424);
devMenu.setParams(42, 98, 424);
devMenu.addOpt("Bis: PRODINFOF");
devMenu.addOpt("Bis: SAFE");
devMenu.addOpt("Bis: SYSTEM");
@ -396,7 +396,7 @@ namespace ui
std::string delPath = "sv:/Contents/placehld/";
fs::dirList plcHld(delPath);
for(unsigned i = 0; i <plcHld.getCount(); i++)
for(unsigned i = 0; i < plcHld.getCount(); i++)
{
std::string fullPath = delPath + plcHld.getItem(i);
std::remove(fullPath.c_str());

View File

@ -14,7 +14,7 @@ namespace ui
{
void folderMenuPrepare(data::user& usr, data::titledata& dat)
{
folderMenu.setParams(340, 88, 924);
folderMenu.setParams(356, 98, 894);
folderMenu.reset();
util::makeTitleDir(usr, dat);
@ -39,8 +39,8 @@ namespace ui
//Draw folder menu
folderMenu.draw(mnuTxt);
data::curData.icon.draw(48, 88);
drawTextWrap(folderMenuInfo.c_str(), frameBuffer, ui::shared, 32, 360, 18, ui::mnuTxt, 224);
data::curData.icon.draw(62, 98);
drawTextWrap(folderMenuInfo.c_str(), frameBuffer, ui::shared, 46, 370, 18, ui::mnuTxt, 224);
if(down & KEY_A || fldNav[0].getEvent() == BUTTON_RELEASED || folderMenu.getTouchEvent() == MENU_DOUBLE_REL)
{

View File

@ -27,7 +27,7 @@ namespace ui
void menu::addOpt(const std::string& add)
{
if(textGetWidth(add.c_str(), ui::shared, 18) < rW - 16 || rW == 0)
if(textGetWidth(add.c_str(), ui::shared, 18) < rW - 32 || rW == 0)
opt.push_back(add);
else
{
@ -39,7 +39,7 @@ namespace ui
tmp += add.substr(i, untCnt);
i += untCnt;
if(textGetWidth(tmp.c_str(), ui::shared, 18) >= rW - 16)
if(textGetWidth(tmp.c_str(), ui::shared, 18) >= rW - 32)
{
opt.push_back(tmp);
break;

View File

@ -24,7 +24,7 @@ namespace ui
static bool clrAdd = true;
//Selected rectangle X and Y.
static unsigned selRectX = 64, selRectY = 74;
static unsigned selRectX = 64, selRectY = 92;
static ui::touchTrack track;
@ -49,7 +49,7 @@ namespace ui
texSwapColors(ui::selBox, clrPrev, clrUpdt);
unsigned x = 70, y = 80;
unsigned x = 70, y = 98;
unsigned endTitle = start + 32;
if(start + 32 > (int)data::curUser.titles.size())
@ -58,7 +58,7 @@ namespace ui
//draw Rect so it's always behind icons
texDraw(ui::selBox, frameBuffer, selRectX, selRectY);
for(unsigned i = start; i < endTitle; y += 144)
for(unsigned i = start; i < endTitle; y += 136)
{
unsigned endRow = i + 8;
for(unsigned tX = x; i < endRow; i++, tX += 144)
@ -68,21 +68,10 @@ namespace ui
if((int)i == selected)
{
//Most Switch icons seem to be 256x256, we're drawing them 128x128
if(selRectX != tX - 6)
if(selRectX != tX - 6 || selRectY != y - 6)
{
if(selRectX < tX - 6)
selRectX += 24;
else
selRectX -= 24;
}
if(selRectY != y - 6)
{
if(selRectY < y - 6)
selRectY += 24;
else
selRectY -= 24;
selRectX = tX - 6;
selRectY = y - 6;
}
std::string title = data::curUser.titles[selected].getTitle();
@ -107,10 +96,6 @@ namespace ui
selButtons[i].update(p);
if(i == selected - start && selButtons[i].getEvent() == BUTTON_RELEASED)
{
//Correct rectangle if it can't catch up. Buttons use same x, y as icons
selRectX = selButtons[i].getX() - 6;
selRectY = selButtons[i].getY() - 6;
data::curData = data::curUser.titles[selected];
if(fs::mountSave(data::curUser, data::curData))
{
@ -222,7 +207,7 @@ namespace ui
start = 0;
selected = 0;
selRectX = 64;
selRectY = 74;
selRectY = 90;
mstate = USR_SEL;
return;
}

View File

@ -19,7 +19,7 @@ namespace ui
static uint8_t clrShft = 0;
static bool clrAdd = true;
static unsigned selRectX = 64, selRectY = 74;
static unsigned selRectX = 64, selRectY = 92;
static ui::touchTrack track;
@ -42,7 +42,7 @@ namespace ui
//Update selBox color
clr clrUpdt = clrCreateRGBA(0x00, 0x60 + clrShft, 0xBB + clrShft, 0xFF);
unsigned x = 70, y = 80;
unsigned x = 70, y = 98;
unsigned endUser = start + 32;
if(start + 32 > (int)data::users.size())
endUser = data::users.size();
@ -50,7 +50,7 @@ namespace ui
texSwapColors(ui::selBox, clrPrev, clrUpdt);
texDraw(ui::selBox, frameBuffer, selRectX, selRectY);
for(unsigned i = start; i < endUser; y += 144)
for(unsigned i = start; i < endUser; y += 136)
{
unsigned endRow = i + 8;
for(unsigned tX = x; i < endRow; i++, tX += 144)
@ -60,20 +60,10 @@ namespace ui
if((int)i == selected)
{
if(selRectX != tX - 6)
if(selRectX != tX - 6 || selRectY != y - 6)
{
if(selRectX < tX - 6)
selRectX += 24;
else
selRectX -= 24;
}
if(selRectY != y - 6)
{
if(selRectY < y - 6)
selRectY += 24;
else
selRectX -= 24;
selRectX = tX - 6;
selRectY = y - 6;
}
std::string username = data::users[selected].getUsername();
@ -156,7 +146,7 @@ namespace ui
//Reset this
start = 0;
selected = 0;
selRectX = 64, selRectY = 74;
selRectX = 64, selRectY = 90;
mstate = TTL_SEL;
}
else if(down & KEY_Y || usrNav[1].getEvent() == BUTTON_RELEASED)