void screen_mainmenu(void) {
  int current_item = 0;

  while (1) {
    modeset_mode = current_videomode;

    /* (re)draw */
    osd_clrscr();
    menu_draw(&mainmenu);

    /* run */
    current_item = menu_exec(&mainmenu, current_item);

    switch (current_item) {
    case MENU_ABORT:
    case MENUITEM_EXIT:
      return;

    case MENUITEM_OSDSET:
      screen_osdsettings();
      break;

    case MENUITEM_OTHERSET:
      screen_othersettings();
      break;

    case MENUITEM_VIEWALL:
      screen_allmodes();
      break;

    case MENUITEM_ABOUT:
      screen_about();
      break;

    case MENUITEM_STORE:
      osd_clrscr();

      /* show "saving" message because page erase needs 1-3s */
      osd_fillbox(13, 13, 18, 3, ' ' | ATTRIB_DIM_BG);
      osd_drawborder(13, 13, 18, 3);
      osd_gotoxy(15, 14);
      osd_puts("Saving...");

      spiflash_write_settings();

      osd_gotoxy(15, 14);
      osd_puts("Settings saved");

      /* wait until all buttons are released */
      while (pad_buttons & PAD_ALL)
        if (pad_buttons & PAD_VIDEOCHANGE)
          return;

      /* now wait for any button press */
      pad_clear(PAD_ALL);
      while (!(pad_buttons & PAD_ALL))
        if (pad_buttons & PAD_VIDEOCHANGE)
          return;
      pad_clear(PAD_ALL);

      break;

    default:
      break;
    }
  }
}
Beispiel #2
0
void screen_home()
{

	while (1)
	{
		system("cls");
		print_title_bar();
		print_search_box();

		setcolor(WHITE);
		gotoxy(0, 13);
		printf
			("      _    _                                                                   \n");
		printf
			("     | |__| |                                                                  \n");
		printf
			("     |  __  |                                                                  \n");
		printf
			("     | |  | |                                                                  \n");
		printf
			("     |_|  |_|                                                                  \n");


		gotoxy(19, 6);
		printf("%c   Press [Enter] to search", 27);


		print_tips("[H] Help     [A] About");


		setcolor(GREY);
		gotoxy(47, 28);
		printf("%30s", "(C) Syahrulnizam Syaz. Inc");


		// Wait for next keyboard press 
		c = getch();

		switch (c)
		{
		case 'l':				/* Login */
			system("cls");
			screen_login();
			break;

		case ENTER:			/* Find hotel */
			show_searching();
			screen_find_hotel();
			break;

		case 'h':				/* Help */
			system("cls");
			screen_help();
			break;

		case 'a':				/* About */
			system("cls");
			screen_about();
			break;
		}
	}

	system("cls");
	system("pause");
}