klasscho

GuiScreen

May 31st, 2020
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.64 KB | None | 0 0
  1. package com.packadge.gui;
  2.  
  3. import java.awt.*;
  4. import java.awt.event.MouseEvent;
  5. import java.util.HashMap;
  6.  
  7. public class GuiScreen {
  8.  
  9.     private static GuiScreen screen;
  10.     private HashMap<String, GuiPanel> panels;
  11.     private String currentPanel = "";
  12.  
  13.     private GuiScreen(){
  14.         panels = new HashMap<String, GuiPanel>();
  15.     }
  16.  
  17.     public static GuiScreen getInstance(){
  18.         if (screen == null){
  19.              screen = new GuiScreen();
  20.         }
  21.         return screen;
  22.     }
  23.  
  24.     public void update(){
  25.         if (panels.get(currentPanel) != null){
  26.             panels.get(currentPanel).update();
  27.         }
  28.     }
  29.  
  30.     public void render(Graphics2D g){
  31.         if (panels.get(currentPanel) != null){
  32.             panels.get(currentPanel).render(g);
  33.         }
  34.     }
  35.  
  36.     public void add(String panelName, GuiPanel panel){
  37.         panels.put(panelName, panel);
  38.     }
  39.  
  40.     public void setCurrentPanel(String panelName){
  41.         currentPanel = panelName;
  42.     }
  43.  
  44.     public void mousePressed(MouseEvent e){
  45.         if (panels.get(currentPanel) != null){
  46.             panels.get(currentPanel).mousePressed(e);
  47.         }
  48.     }
  49.  
  50.     public void mouseReleased(MouseEvent e){
  51.         if (panels.get(currentPanel) != null){
  52.             panels.get(currentPanel).mouseReleased(e);
  53.         }
  54.     }
  55.  
  56.     public void mouseDragged(MouseEvent e){
  57.         if (panels.get(currentPanel) != null){
  58.             panels.get(currentPanel).mouseDragged(e);
  59.         }
  60.     }
  61.  
  62.     public void mouseMoved(MouseEvent e){
  63.         if (panels.get(currentPanel) != null){
  64.             panels.get(currentPanel).mouseMoved(e);
  65.         }
  66.     }
  67. }
Advertisement
Add Comment
Please, Sign In to add comment