/[enigma]/enigma/src/menus.cc
ViewVC logotype

Diff of /enigma/src/menus.cc

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.16 by reallysoft, Fri Mar 28 23:31:58 2003 UTC revision 1.17 by reallysoft, Sat Mar 29 01:25:54 2003 UTC
# Line 61  namespace Line 61  namespace
61    
62          void change_levelpack (LevelPack *lp);          void change_levelpack (LevelPack *lp);
63    
64            void set_current(int newsel) { set_selected(ifirst, newsel); }
65    
66          void page_up() {          void page_up() {
67              set_selected (ifirst - width*height, iselected - width*height);              set_selected (ifirst - width*height, iselected - width*height);
68          }          }
# Line 68  namespace Line 70  namespace
70              set_selected (ifirst + width*height, iselected + width*height);              set_selected (ifirst + width*height, iselected + width*height);
71          }          }
72          void start() {set_selected (0,0);}          void start() {set_selected (0,0);}
73          void end() {          void end() { set_current(level_pack->size()-1); }
             set_selected (ifirst, level_pack->size()-1);  
         }  
74    
75          void next_unsolved();          void next_unsolved();
76    
# Line 228  LevelWidget::next_unsolved() Line 228  LevelWidget::next_unsolved()
228      }      }
229    
230      if (found) {      if (found) {
231          set_selected(ifirst, next);          set_current(next);
232      }      }
233      else {      else {
234          printf("No unsolved level found.\n");          printf("No unsolved level found.\n");
# Line 406  LevelWidget::handle_keydown (const SDL_E Line 406  LevelWidget::handle_keydown (const SDL_E
406          break;          break;
407      case SDLK_o:                // Show/hide "todo" levels      case SDLK_o:                // Show/hide "todo" levels
408          break;          break;
409      case SDLK_LEFT:  set_selected (ifirst, iselected-1); break;      case SDLK_LEFT:  set_current (iselected-1); break;
410      case SDLK_RIGHT: set_selected (ifirst, iselected+1); break;      case SDLK_RIGHT: set_current (iselected+1); break;
411      case SDLK_DOWN:  set_selected (ifirst, iselected+width); break;      case SDLK_DOWN:  set_current (iselected+width); break;
412      case SDLK_UP:    set_selected (ifirst, iselected-width); break;      case SDLK_UP:    set_current (iselected-width); break;
413      case SDLK_PAGEDOWN: page_down(); break;      case SDLK_PAGEDOWN: page_down(); break;
414      case SDLK_PAGEUP: page_up(); break;      case SDLK_PAGEUP: page_up(); break;
415      case SDLK_HOME: start(); break;      case SDLK_HOME: start(); break;
# Line 752  void Line 752  void
752  LevelMenu::on_action(Widget *w)  LevelMenu::on_action(Widget *w)
753  {  {
754      if (w == newgame || w==levelwidget) {      if (w == newgame || w==levelwidget) {
755          int ilevel=levelwidget->selected_level();          int ilevel = levelwidget->selected_level();
756          StartGame(enigma::LevelPacks[m_ilevelpack], ilevel);          ilevel     = StartGame(enigma::LevelPacks[m_ilevelpack], ilevel);
757          invalidate_all();          invalidate_all();
758            levelwidget->set_current(ilevel);
759      } else if (w == back) {      } else if (w == back) {
760          Menu::quit();          Menu::quit();
761      } else if (w == pgup) {      } else if (w == pgup) {

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.17

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26