From 0492a6b789d3a0a4bd82676140ef3d58cf7e687e Mon Sep 17 00:00:00 2001 From: Donald Shan Date: Sun, 21 Aug 2022 15:54:14 -0700 Subject: Preliminary Edit Tag Button --- src/main/java/Main.java | 303 +++++++++++++++++++++++++++++++++++++++++++ src/main/java/TagEditor.java | 11 ++ 2 files changed, 314 insertions(+) create mode 100644 src/main/java/Main.java create mode 100644 src/main/java/TagEditor.java (limited to 'src/main') diff --git a/src/main/java/Main.java b/src/main/java/Main.java new file mode 100644 index 0000000..a1fc151 --- /dev/null +++ b/src/main/java/Main.java @@ -0,0 +1,303 @@ +import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.io.*; +import java.net.URL; +import java.util.ArrayList; +import java.util.regex.Matcher; +import org.jaudiotagger.audio.AudioFile; +import org.jaudiotagger.audio.AudioFileIO; +import org.jaudiotagger.tag.FieldKey; +import org.jaudiotagger.tag.Tag; +import org.jaudiotagger.tag.datatype.Artwork; + +import javax.swing.*; +import javax.swing.filechooser.FileNameExtensionFilter; +import javax.swing.text.DefaultCaret; +import java.util.regex.Pattern; + +public class Main extends JFrame { + String textPath = ""; + JPanel panel = new JPanel(); + Boolean readyState = false; + JScrollPane scrollPane; + JButton editButton = new JButton("Edit Tags"); + int progress = 0; + JProgressBar progressBar = new JProgressBar(); + JLabel title = new JLabel("SUPER JUICER DOWNLOAD MUSIC COVERS AND TAG NOW 100% SAFE"); + JButton startButton = new JButton("Set .txt File"); + static JTextArea outputArea = new JTextArea("this is bery bery bery safe no worries no virus malwar ur monies back granteed"); + public Main(){ + this.setDefaultCloseOperation(EXIT_ON_CLOSE); + this.setLocationRelativeTo(null); + this.add(panel); + panel.setLayout(new BoxLayout(panel,BoxLayout.PAGE_AXIS)); + scrollPane = new JScrollPane(outputArea); + scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); + outputArea.setEditable(false); + outputArea.setLineWrap(true); + DefaultCaret caret = (DefaultCaret)outputArea.getCaret(); + caret.setUpdatePolicy(DefaultCaret.ALWAYS_UPDATE); + panel.add(Box.createRigidArea(new Dimension(0,5))); + panel.setBorder(BorderFactory.createEmptyBorder(25,10,20,10)); + startButton.setAlignmentX(CENTER_ALIGNMENT); + title.setAlignmentX(Component.CENTER_ALIGNMENT); + editButton.setAlignmentX(Component.CENTER_ALIGNMENT); + progressBar.setStringPainted(true); + title.setFont(new Font("Verdana", Font.PLAIN, 14)); + panel.add(title); + panel.add(Box.createVerticalStrut(10)); + panel.add(progressBar); + panel.add(Box.createVerticalStrut(10)); + panel.add(startButton); + panel.add(Box.createVerticalStrut(8)); + panel.add(scrollPane); + panel.add(Box.createVerticalStrut(5)); + panel.add(editButton); + startButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + if(textPath.equals("")||readyState==false){ + outputArea.setText(outputArea.getText()+"\n"+"txt path has not been set. Launching chooserPane"); + System.out.println(".txt path has not been set. Launching chooserPane"); + textPath = showFileChooser(); + if(!textPath.equals("")){ + showWarning("File has been set.\nMake sure you add a new line for each URL.\nOr else say bye bye to your system32"); + readyState = true; + startButton.setText("Start Download"); + outputArea.setText(outputArea.getText()+"\n"+"Ready to begin downloading. Press the button"); + System.out.println("Ready to begin downloading. Press the button"); + } + } + else{ + Runnable runnable = () -> { + outputArea.setText(""); + startButton.setEnabled(false); + downloadLoop(); + startButton.setEnabled(true); + + }; + Thread thread = new Thread(runnable); + thread.start(); + } + } + }); + editButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e){ + + } + }); + this.setSize(550,300); + + } + public static void main(String[] args) { + new Main().setVisible(true); + } + private void downloadLoop(){ + ArrayList songs = readFile(textPath); + progress = 0; + for(int i = 0;i readFile(String fileName) { + ArrayList lines = new ArrayList(); + try { + FileReader fr = new FileReader(fileName); + BufferedReader br = new BufferedReader(fr); + String line; + while ((line = br.readLine()) != null) { + lines.add(line); + } + br.close(); + } catch (Exception e) { + e.printStackTrace(); + } + return lines; + } + + + +} diff --git a/src/main/java/TagEditor.java b/src/main/java/TagEditor.java new file mode 100644 index 0000000..b2095e5 --- /dev/null +++ b/src/main/java/TagEditor.java @@ -0,0 +1,11 @@ +import javax.swing.*; +import java.awt.*; + +public class TagEditor extends JFrame { + JPanel mainPanel = new JPanel(); + GridBagConstraints constraints = new GridBagConstraints(); + public TagEditor(){ + mainPanel.setLayout(new GridBagLayout()); + this.setDefaultCloseOperation(EXIT_ON_CLOSE); + } +} -- cgit v1.2.3