From 6c679c8ef2139eb07c21be96bdfaa79f3d94e917 Mon Sep 17 00:00:00 2001 From: Hammy Date: Mon, 19 Jul 2021 03:04:57 +0100 Subject: [PATCH] Refactor ClipboardView to copy images and strings (wip) --- .../java/me/goudham/view/ClipboardView.java | 45 +++++++++---------- 1 file changed, 20 insertions(+), 25 deletions(-) diff --git a/src/main/java/me/goudham/view/ClipboardView.java b/src/main/java/me/goudham/view/ClipboardView.java index ebe2b55..83fd33a 100644 --- a/src/main/java/me/goudham/view/ClipboardView.java +++ b/src/main/java/me/goudham/view/ClipboardView.java @@ -1,27 +1,33 @@ package me.goudham.view; import me.goudham.ClipboardListener; -import me.goudham.controller.MyClipboardContent; -import me.goudham.model.TransferableImage; +import me.goudham.listener.ClipboardEvent; +import me.goudham.model.MyClipboardContent; -import javax.swing.*; -import java.awt.Color; +import javax.swing.BorderFactory; +import javax.swing.DefaultListModel; +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JList; +import javax.swing.JPanel; +import javax.swing.JScrollPane; import java.awt.Dimension; -import java.awt.Image; -import java.awt.Toolkit; -import java.awt.datatransfer.*; -import java.io.IOException; -public class ClipboardView implements ClipboardListener.EntryListener { +public class ClipboardView implements ClipboardEvent { private JPanel Clipboard; private JButton copyButton; private JList clipboardContentList; private final DefaultListModel listModel; private JLabel title; private JScrollPane scrollPane; + private JPanel buttonPane; + private JButton clearButton; + private JButton removeButton; public ClipboardView() { scrollPane.setBorder(BorderFactory.createEmptyBorder()); + buttonPane.setBorder(BorderFactory.createEmptyBorder()); listModel = new DefaultListModel<>(); clipboardContentList.setModel(listModel); @@ -66,18 +72,8 @@ public class ClipboardView implements ClipboardListener.EntryListener { // }); } - public JPanel getClipboard() { - return Clipboard; - } - - public static void main(String[] args) { - SwingUtilities.invokeLater(() -> new ClipboardView().createAndShowGUI()); - } - - private void createAndShowGUI() { - ClipboardListener listener = new ClipboardListener(); - listener.setEntryListener(this); - listener.start(); + public void createAndShowGUI() { + new ClipboardListener(this).start(); JFrame jFrame = new JFrame(); jFrame.setTitle("My Clipboard History"); @@ -85,16 +81,15 @@ public class ClipboardView implements ClipboardListener.EntryListener { jFrame.setVisible(true); jFrame.setAlwaysOnTop(true); jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); - jFrame.getContentPane().setBackground(new Color(1, 3, 25)); jFrame.setPreferredSize(new Dimension(1000, 680)); jFrame.setMaximumSize(new Dimension(1000, 680)); - jFrame.setResizable(false); + jFrame.setResizable(true); jFrame.pack(); jFrame.setLocationRelativeTo(null); } @Override - public void onCopy(String data) { - listModel.add(0, data); + public void onCopy(MyClipboardContent copiedContent) { + listModel.add(0, copiedContent.getContent().toString()); } }