Advertisement
acegiak

menuhandler

Oct 14th, 2014
439
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.46 KB | None | 0 0
  1.     public ArrayList<Actor> Actors(){
  2.         ArrayList<Actor> actors = new ArrayList<Actor>();
  3.         for(Cell c : t.getCells()){
  4.             if(c.getWidget() != null && c.getWidget() instanceof TextButton){
  5.                 actors.add((Actor)c.getWidget());
  6.             }
  7.         }
  8.  
  9.         System.out.println("Actors found:"+Integer.toString(actors.size()));
  10.         if(stage != null && stage.getKeyboardFocus() != null){
  11.             System.out.println(stage.getKeyboardFocus().getName());
  12.         }
  13.         return actors;
  14.     }
  15.    
  16.     public void MenuScroll(){
  17.        
  18.         if(index < 0){
  19.             index = Actors().size()-1;
  20.         }
  21.         if(index > Actors().size()-1){
  22.             index = 0;
  23.         }
  24.        
  25.         stage.setKeyboardFocus(Actors().get(index));       
  26.  
  27.     }
  28.  
  29.     @Override
  30.     public void MenuUp() {
  31.         if(inputtime <= 0f){
  32.         unselectButton(Actors().get(index));
  33.         index--;
  34.         MenuScroll();
  35.         selectButton(Actors().get(index));
  36.  
  37.         inputtime += 0.25f;
  38.         }
  39.     }
  40.  
  41.     @Override
  42.     public void MenuDown() {
  43.         if(inputtime <= 0f){
  44.         unselectButton(Actors().get(index));
  45.         index++;
  46.         MenuScroll();
  47.         selectButton(Actors().get(index));
  48.         inputtime += 0.25f;
  49.         }
  50.     }
  51.     private boolean unselectButton(Actor button) {
  52.         InputEvent event = Pools.obtain(InputEvent.class);
  53.         event.setType(Type.exit);
  54.  
  55.         button.fire(event);
  56.         boolean handled = event.isHandled();
  57.         Pools.free(event);
  58.         return handled;
  59.     }
  60.     private boolean selectButton(Actor button) {
  61.         InputEvent event = Pools.obtain(InputEvent.class);
  62.         event.setType(Type.enter);
  63.  
  64.         button.fire(event);
  65.         boolean handled = event.isHandled();
  66.         Pools.free(event);
  67.         return handled;
  68.     }
  69.     private boolean moveMouse(Actor button) {
  70.         InputEvent event = Pools.obtain(InputEvent.class);
  71.         event.setType(Type.mouseMoved);
  72.         event.setTarget(button);
  73.         event.setStageX(button.getX());
  74.         event.setStageY(button.getY());
  75.         button.fire(event);
  76.         boolean handled = event.isHandled();
  77.         Pools.free(event);
  78.         return handled;
  79.     }
  80.    
  81.     private boolean clickButton(Actor button) {
  82.         InputEvent event = Pools.obtain(InputEvent.class);
  83.         event.setType(Type.touchUp);
  84.         event.setButton(Input.Buttons.LEFT);
  85.  
  86.         button.fire(event);
  87.         boolean handled = event.isHandled();
  88.         Pools.free(event);
  89.         return handled;
  90.     }
  91.     @Override
  92.     public void MenuOk() {
  93.         if(stage.getKeyboardFocus() instanceof TextButton){
  94.             clickButton(stage.getKeyboardFocus());
  95.         }
  96.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement