MCPcopy Create free account
hub / github.com/devkitPro/3ds-hbmenu / menuDrawBot

Function menuDrawBot

source/ui/menu.c:328–386  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

326}
327
328void menuDrawBot(void)
329{
330 int i;
331 menuEntry_s* me;
332 menu_s* menu = menuGetCurrent();
333
334 drawingSetMode(DRAW_MODE_DRAWING);
335 drawingSetZ(0.4f);
336
337 if (menu->nEntries==0)
338 {
339 drawingWithColor(0x80FFFFFF);
340 drawingDrawQuad(0.0f, 60.0f, 320.0f, 120.0f);
341 drawingSubmitPrim(GPU_TRIANGLE_STRIP, 4);
342
343 textSetColor(0xFF545454);
344 textDrawInBox(textGetString(StrId_NoAppsFound_Title), 0, 0.75f, 0.75f, 60.0f+25.0f, 8.0f, 320-8.0f);
345 textDraw(8.0f, 60.0f+25.0f+8.0f, 0.5f, 0.5f, false, textGetString(StrId_NoAppsFound_Msg));
346 } else
347 {
348 // Draw menu entries
349 float y = 0.0;
350 float loc = floorf(menu->scrollLocation);
351 for (me = menu->firstEntry, i = 0; me; me = me->next, i ++)
352 y += menuDrawEntry(me, 9.0f, 4+y-loc, i==menu->curEntry);
353
354 // Draw scrollbar
355 drawingDrawImage(images_scrollbarTrack_idx, 0xFFFFFFFF, 308.0f, 5.0f);
356 drawingDrawImage(images_scrollbarKnob_idx, 0xFFFFFFFF, 308.0f, calcScrollbarKnobPos(menu, y));
357 }
358
359 drawingDrawImage(images_settings_idx, 0xFFFFFFFF, 320.0f-g_imageData[images_settings_idx].width, 240.0f-g_imageData[images_settings_idx].height);
360
361 if (showingHomeIcon)
362 {
363 const float maxOpac = 0.75f;
364 homeIconStatus += 1.0/32;
365 float opac = 0.0;
366 if (homeIconStatus < 1.0f)
367 opac = maxOpac*sqrtf(homeIconStatus);
368 else if (homeIconStatus < 2.0f)
369 opac = maxOpac;
370 else if (homeIconStatus < 3.0f)
371 opac = maxOpac*sqrtf(3.0f-homeIconStatus);
372 if (opac > 0.0f)
373 {
374 textSetColor((u32)(opac*0x100) << 24);
375 // Check for New 2DS XL
376 if (g_systemModel == 5)
377 textDraw(0.0f, 200.0f, 1.0f, 1.0f, true, "\n\xEE\x80\x9A \xEE\x81\xB3");
378 else
379 textDrawInBox("\xEE\x81\xB3\n▼", 0, 1.0f, 1.0f, 200.0f, 0.0f, 320.0f);
380 } else
381 {
382 showingHomeIcon = false;
383 homeIconStatus = 0.0f;
384 }
385 }

Callers

nothing calls this directly

Calls 13

menuGetCurrentFunction · 0.85
drawingSetModeFunction · 0.85
drawingSetZFunction · 0.85
drawingWithColorFunction · 0.85
drawingDrawQuadFunction · 0.85
drawingSubmitPrimFunction · 0.85
textSetColorFunction · 0.85
textDrawInBoxFunction · 0.85
textGetStringFunction · 0.85
textDrawFunction · 0.85
menuDrawEntryFunction · 0.85
drawingDrawImageFunction · 0.85

Tested by

no test coverage detected