GUI.java 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. package src;
  2. import src.agenda.*;
  3. import java.awt.Color;
  4. import java.awt.EventQueue;
  5. import java.awt.Frame;
  6. import java.awt.event.MouseAdapter;
  7. import java.awt.event.MouseEvent;
  8. import javax.swing.ImageIcon;
  9. import javax.swing.JFrame;
  10. import javax.swing.JLabel;
  11. import javax.swing.JPanel;
  12. public class GUI {
  13. private JFrame frame;
  14. int posX=0,posY=0;
  15. /**
  16. * Launch the application.
  17. */
  18. public static void main(String[] args) {
  19. EventQueue.invokeLater(new Runnable() {
  20. public void run() {
  21. try {
  22. GUI window = new GUI();
  23. window.frame.setVisible(true);
  24. } catch (Exception e) {
  25. e.printStackTrace();
  26. }
  27. }
  28. });
  29. }
  30. /**
  31. * Create the application.
  32. */
  33. public GUI() {
  34. initialize();
  35. //test agenda.
  36. Agenda agenda = new Agenda();
  37. agenda.addArtist(new Artist("Iron Maiden", "Heavy metal"));
  38. agenda.addStage(new Stage("Mainstage"));
  39. agenda.addAct(new Act(agenda.getStages().get(0), "Heavy metal", agenda.getArtists().get(0)));
  40. System.out.println(agenda);
  41. //test time
  42. System.out.println(new ActTime(new Time(10, 30), new Time(11, 20)).getLength());
  43. }
  44. /**
  45. * Initialize the contents of the frame.
  46. */
  47. private void initialize() {
  48. frame = new JFrame();
  49. frame.setResizable(false);
  50. frame.setBounds(100, 100, 1020, 700);
  51. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  52. frame.setUndecorated(true);
  53. frame.getContentPane().setLayout(null);
  54. JPanel menuBarPanel = new JPanel();
  55. menuBarPanel.setBackground(new Color(0, 128, 128));
  56. menuBarPanel.setBounds(0, 0, 1020, 45);
  57. frame.getContentPane().add(menuBarPanel);
  58. menuBarPanel.addMouseListener(new MouseAdapter()
  59. {
  60. public void mousePressed(MouseEvent e)
  61. {
  62. posX=e.getX();
  63. posY=e.getY();
  64. }
  65. });
  66. menuBarPanel.addMouseMotionListener(new MouseAdapter()
  67. {
  68. public void mouseDragged(MouseEvent evt)
  69. {
  70. //sets frame position when mouse dragged
  71. setLocation(evt.getXOnScreen()-posX,evt.getYOnScreen()-posY);
  72. }
  73. });
  74. ImageIcon closeIcon = new ImageIcon("res/img/Xicon.png");
  75. JLabel closeLabel = new JLabel(closeIcon);
  76. closeLabel.setBounds(983, 11, 18, 18);
  77. closeLabel.addMouseListener(new MouseAdapter() {
  78. public void mouseClicked(MouseEvent me) {
  79. frame.dispose();
  80. }
  81. });
  82. ImageIcon min = new ImageIcon("res/img/_icon.png");
  83. JLabel minLabel = new JLabel(min);
  84. minLabel.setBounds(948, 11, 18, 18);
  85. minLabel.addMouseListener(new MouseAdapter() {
  86. public void mouseClicked(MouseEvent me) {
  87. frame.setState(Frame.ICONIFIED);
  88. }
  89. });
  90. menuBarPanel.setLayout(null);
  91. menuBarPanel.add(closeLabel);
  92. menuBarPanel.add(minLabel);
  93. JPanel contentPanel = new JPanel();
  94. contentPanel.setBackground(new Color(51, 160, 160));
  95. contentPanel.setBounds(0, 45, 1020, 655);
  96. frame.getContentPane().add(contentPanel);
  97. }
  98. protected void setLocation(int i, int j) {
  99. frame.setLocation(i,j);
  100. }
  101. }