Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2019
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.34 KB | None | 0 0
  1. public class MemeGui {
  2.  
  3. private URL iconUrl;
  4.  
  5. public MemeGui(MemeInstance instance) {
  6. try {
  7. iconUrl = new URL("https://d1nhio0ox7pgb.cloudfront.net/_img/g_collection_png/standard/16x16/magnifying_glass.png");
  8. } catch (Exception exception) {
  9. return;
  10. }
  11.  
  12.  
  13. JFrame frame = new JFrame("Advanced Memes v." + instance.getVersion());
  14.  
  15. try {
  16. frame.setIconImage(ImageIO.read(iconUrl));
  17. } catch (IOException e) {
  18. return;
  19. }
  20.  
  21. frame.setSize(1200, 800);
  22. frame.setLocation(200, 200);
  23. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  24. frame.setContentPane(new MemeGuiBackground(instance));
  25.  
  26. //frame.setLayout(new MemeGuiLayout());
  27.  
  28. JMenuBar menuBar = new JMenuBar();
  29. menuBar.setMargin(new Insets(3, 3, 3, 3));
  30.  
  31. JMenu add = new JMenu("Add");
  32. add.addActionListener(event -> {
  33.  
  34. JFileChooser chooser = new JFileChooser(FileSystemView.getFileSystemView().getHomeDirectory());
  35.  
  36. chooser.setAcceptAllFileFilterUsed(false);
  37. FileNameExtensionFilter filter = new FileNameExtensionFilter("Only image files", "jpg", "png", "jpeg");
  38. chooser.addChoosableFileFilter(filter);
  39.  
  40. int returnInt = chooser.showOpenDialog(frame);
  41.  
  42. if(returnInt == JFileChooser.APPROVE_OPTION) {
  43. File selected = chooser.getSelectedFile();
  44. ArrayList<String> stringList = new ArrayList<>();
  45.  
  46. MemeInstance.INSTANCE.addMeme(selected, stringList);
  47. }
  48.  
  49. chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
  50.  
  51. });
  52.  
  53.  
  54. JMenu search = new JMenu("Find");
  55. search.addActionListener(e -> {
  56.  
  57.  
  58. });
  59.  
  60. if(!instance.getMemes().isEmpty()) {
  61. DefaultListModel model = new DefaultListModel();
  62. for(int i = 0; i < instance.getMemes().size(); i++) {
  63. model.add(i, instance.getMemes().get(i).getImage());
  64. }
  65.  
  66. JList list = new JList(model);
  67. list.setVisibleRowCount(3);
  68. frame.add(new JScrollPane(list));
  69. }
  70.  
  71. menuBar.add(add);
  72. menuBar.add(search);
  73.  
  74. frame.setJMenuBar(menuBar);
  75.  
  76. frame.setVisible(true);
  77.  
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement