]> git.xonotic.org Git - xonotic/xonotic.git/blobdiff - misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/ui/swinggui/ApplyTemplateDialog.java
fix lots of CRLFs
[xonotic/xonotic.git] / misc / tools / NexuizDemoRecorder / main / src / main / java / com / nexuiz / demorecorder / ui / swinggui / ApplyTemplateDialog.java
index 84b2c292069a8e086bbb4cfd9b3d8d195904c0ba..d216b204fba98debb7a4a8a6d32fa56c8bfb6dd3 100644 (file)
-package com.nexuiz.demorecorder.ui.swinggui;\r
-\r
-import java.awt.Frame;\r
-import java.awt.event.ActionEvent;\r
-import java.awt.event.ActionListener;\r
-import java.awt.event.ItemEvent;\r
-import java.awt.event.ItemListener;\r
-import java.io.File;\r
-import java.util.List;\r
-\r
-import javax.swing.JButton;\r
-import javax.swing.JCheckBox;\r
-import javax.swing.JDialog;\r
-import javax.swing.JLabel;\r
-import javax.swing.JOptionPane;\r
-\r
-import net.miginfocom.swing.MigLayout;\r
-\r
-import com.nexuiz.demorecorder.application.DemoRecorderUtils;\r
-import com.nexuiz.demorecorder.application.jobs.RecordJob;\r
-\r
-public class ApplyTemplateDialog extends JDialog implements ActionListener, ItemListener {\r
-\r
-       private static final long serialVersionUID = 4807155579295688578L;\r
-       private Frame parentFrame;\r
-       private RecordJobTemplate template;\r
-       private List<RecordJob> jobs;\r
-       \r
-       private JCheckBox engineCB = new JCheckBox("Engine", true);\r
-       private JCheckBox engineParametersCB = new JCheckBox("Engine parameters", true);\r
-       private JCheckBox dpVideoDirCB = new JCheckBox("DPVideo directory", true);\r
-       private JCheckBox relativeDemoPathCB = new JCheckBox("Relative demo path", true);\r
-       private JCheckBox jobNameCB = new JCheckBox("Job name", true);\r
-       private JCheckBox demoDirectoryCB = new JCheckBox("Demo directory", true);\r
-       private JCheckBox execBeforeCapCB = new JCheckBox("Exec before capture", true);\r
-       private JCheckBox execAfterCB = new JCheckBox("Exec after capture", true);\r
-       private JCheckBox videoDestination = new JCheckBox("Video destination", true);\r
-       private JCheckBox pluginSettingsCB = new JCheckBox("Plug-in settings", true);\r
-       private JCheckBox selectAllCB = new JCheckBox("Select/deselect all", true);\r
-       \r
-       private JButton applyButton = new JButton("Apply");\r
-       private JButton cancelButton = new JButton("Cancel");\r
-       \r
-       public ApplyTemplateDialog(Frame owner, RecordJobTemplate template, List<RecordJob> jobs) {\r
-               super(owner, true);\r
-               this.parentFrame = owner;\r
-               this.template = template;\r
-               this.jobs = jobs;\r
-               \r
-               setDefaultCloseOperation(DISPOSE_ON_CLOSE);\r
-               setTitle("Apply template");\r
-               this.setupLayout();\r
-       }\r
-       \r
-       public void showDialog() {\r
-               this.pack();\r
-               this.setLocationRelativeTo(this.parentFrame);\r
-               this.setVisible(true);\r
-       }\r
-\r
-       private void setupLayout() {\r
-               setLayout(new MigLayout());\r
-               getContentPane().add(new JLabel("Select which properties you want to apply to the selected jobs"), "wrap");\r
-               \r
-               this.setupCheckBoxes();\r
-               \r
-               applyButton.addActionListener(this);\r
-               cancelButton.addActionListener(this);\r
-               getContentPane().add(applyButton);\r
-               getContentPane().add(cancelButton);\r
-       }\r
-       \r
-       private void setupCheckBoxes() {\r
-               getContentPane().add(engineCB, "wrap");\r
-               getContentPane().add(engineParametersCB, "wrap");\r
-               getContentPane().add(dpVideoDirCB, "wrap");\r
-               getContentPane().add(relativeDemoPathCB, "wrap");\r
-               getContentPane().add(jobNameCB, "wrap");\r
-               getContentPane().add(demoDirectoryCB, "wrap");\r
-               getContentPane().add(execBeforeCapCB, "wrap");\r
-               getContentPane().add(execAfterCB, "wrap");\r
-               getContentPane().add(videoDestination, "wrap");\r
-               getContentPane().add(pluginSettingsCB, "wrap");\r
-               getContentPane().add(selectAllCB, "wrap");\r
-               \r
-               selectAllCB.addItemListener(this);\r
-       }\r
-\r
-       @Override\r
-       public void actionPerformed(ActionEvent e) {\r
-               if (e.getSource() == applyButton) {\r
-                       this.applyTemplates();\r
-                       dispose();\r
-               } else if (e.getSource() == cancelButton) {\r
-                       dispose();\r
-               }\r
-       }\r
-       \r
-       private void applyTemplates() {\r
-               String errors = "";\r
-               for (RecordJob job : this.jobs) {\r
-                       try {\r
-                               this.applyTemplate(job);\r
-                       } catch (Throwable e) {\r
-                               errors += "Job <B>" + job.getJobName() + "</B>: " + e.getMessage() + "<BR>";\r
-                       }\r
-               }\r
-               \r
-               if (!errors.equals("")) {\r
-                       //error occurred!\r
-                       String errorMsg = "<HTML><BODY>Error occurred while trying to apply templates:<BR><BR>" + errors + "</BODY></HTML>";\r
-                       JOptionPane.showMessageDialog(this.parentFrame, errorMsg, "Error(s) while applying template", JOptionPane.INFORMATION_MESSAGE);\r
-               }\r
-       }\r
-       \r
-       private void applyTemplate(RecordJob job) {\r
-               if (engineCB.isSelected()) {\r
-                       job.setEnginePath(template.getEnginePath());\r
-               }\r
-               if (engineParametersCB.isSelected()) {\r
-                       job.setEngineParameters(template.getEngineParameters());\r
-               }\r
-               if (dpVideoDirCB.isSelected()) {\r
-                       job.setDpVideoPath(template.getDpVideoPath());\r
-               }\r
-               if (relativeDemoPathCB.isSelected()) {\r
-                       job.setRelativeDemoPath(template.getRelativeDemoPath());\r
-               }\r
-               if (jobNameCB.isSelected()) {\r
-                       job.setJobName(template.getJobName());\r
-               }\r
-               if (demoDirectoryCB.isSelected()) {\r
-                       File demoDir = template.getDemoFile();\r
-                       String demoFileName = DemoRecorderUtils.getJustFileNameOfPath(job.getDemoFile());\r
-                       String newDemoPath = demoDir.getAbsolutePath() + File.separator + demoFileName;\r
-                       job.setDemoFile(new File(newDemoPath));\r
-               }\r
-               if (execBeforeCapCB.isEnabled()) {\r
-                       job.setExecuteBeforeCap(template.getExecuteBeforeCap());\r
-               }\r
-               if (execAfterCB.isSelected()) {\r
-                       job.setExecuteAfterCap(template.getExecuteAfterCap());\r
-               }\r
-               if (videoDestination.isSelected()) {\r
-                       File videoDestinatinDir = template.getVideoDestination();\r
-                       String videoFileName = DemoRecorderUtils.getJustFileNameOfPath(job.getVideoDestination());\r
-                       String newVideoPath = videoDestinatinDir.getAbsolutePath() + File.separator + videoFileName;\r
-                       job.setVideoDestination(new File(newVideoPath));\r
-               }\r
-               if (pluginSettingsCB.isSelected()) {\r
-                       job.setEncoderPluginSettings(template.getEncoderPluginSettings());\r
-               }\r
-       }\r
-\r
-       @Override\r
-       public void itemStateChanged(ItemEvent e) {\r
-               if (e.getSource() == selectAllCB) {\r
-                       boolean selected = false;\r
-                       if (e.getStateChange() == ItemEvent.SELECTED) {\r
-                               selected = true;\r
-                       }\r
-                       \r
-                       engineCB.setSelected(selected);\r
-                       engineParametersCB.setSelected(selected);\r
-                       dpVideoDirCB.setSelected(selected);\r
-                       relativeDemoPathCB.setSelected(selected);\r
-                       jobNameCB.setSelected(selected);\r
-                       demoDirectoryCB.setSelected(selected);\r
-                       execBeforeCapCB.setSelected(selected);\r
-                       execAfterCB.setSelected(selected);\r
-                       videoDestination.setSelected(selected);\r
-                       pluginSettingsCB.setSelected(selected);\r
-               }\r
-       }\r
-}\r
+package com.nexuiz.demorecorder.ui.swinggui;
+
+import java.awt.Frame;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
+import java.io.File;
+import java.util.List;
+
+import javax.swing.JButton;
+import javax.swing.JCheckBox;
+import javax.swing.JDialog;
+import javax.swing.JLabel;
+import javax.swing.JOptionPane;
+
+import net.miginfocom.swing.MigLayout;
+
+import com.nexuiz.demorecorder.application.DemoRecorderUtils;
+import com.nexuiz.demorecorder.application.jobs.RecordJob;
+
+public class ApplyTemplateDialog extends JDialog implements ActionListener, ItemListener {
+
+       private static final long serialVersionUID = 4807155579295688578L;
+       private Frame parentFrame;
+       private RecordJobTemplate template;
+       private List<RecordJob> jobs;
+       
+       private JCheckBox engineCB = new JCheckBox("Engine", true);
+       private JCheckBox engineParametersCB = new JCheckBox("Engine parameters", true);
+       private JCheckBox dpVideoDirCB = new JCheckBox("DPVideo directory", true);
+       private JCheckBox relativeDemoPathCB = new JCheckBox("Relative demo path", true);
+       private JCheckBox jobNameCB = new JCheckBox("Job name", true);
+       private JCheckBox demoDirectoryCB = new JCheckBox("Demo directory", true);
+       private JCheckBox execBeforeCapCB = new JCheckBox("Exec before capture", true);
+       private JCheckBox execAfterCB = new JCheckBox("Exec after capture", true);
+       private JCheckBox videoDestination = new JCheckBox("Video destination", true);
+       private JCheckBox pluginSettingsCB = new JCheckBox("Plug-in settings", true);
+       private JCheckBox selectAllCB = new JCheckBox("Select/deselect all", true);
+       
+       private JButton applyButton = new JButton("Apply");
+       private JButton cancelButton = new JButton("Cancel");
+       
+       public ApplyTemplateDialog(Frame owner, RecordJobTemplate template, List<RecordJob> jobs) {
+               super(owner, true);
+               this.parentFrame = owner;
+               this.template = template;
+               this.jobs = jobs;
+               
+               setDefaultCloseOperation(DISPOSE_ON_CLOSE);
+               setTitle("Apply template");
+               this.setupLayout();
+       }
+       
+       public void showDialog() {
+               this.pack();
+               this.setLocationRelativeTo(this.parentFrame);
+               this.setVisible(true);
+       }
+
+       private void setupLayout() {
+               setLayout(new MigLayout());
+               getContentPane().add(new JLabel("Select which properties you want to apply to the selected jobs"), "wrap");
+               
+               this.setupCheckBoxes();
+               
+               applyButton.addActionListener(this);
+               cancelButton.addActionListener(this);
+               getContentPane().add(applyButton);
+               getContentPane().add(cancelButton);
+       }
+       
+       private void setupCheckBoxes() {
+               getContentPane().add(engineCB, "wrap");
+               getContentPane().add(engineParametersCB, "wrap");
+               getContentPane().add(dpVideoDirCB, "wrap");
+               getContentPane().add(relativeDemoPathCB, "wrap");
+               getContentPane().add(jobNameCB, "wrap");
+               getContentPane().add(demoDirectoryCB, "wrap");
+               getContentPane().add(execBeforeCapCB, "wrap");
+               getContentPane().add(execAfterCB, "wrap");
+               getContentPane().add(videoDestination, "wrap");
+               getContentPane().add(pluginSettingsCB, "wrap");
+               getContentPane().add(selectAllCB, "wrap");
+               
+               selectAllCB.addItemListener(this);
+       }
+
+       @Override
+       public void actionPerformed(ActionEvent e) {
+               if (e.getSource() == applyButton) {
+                       this.applyTemplates();
+                       dispose();
+               } else if (e.getSource() == cancelButton) {
+                       dispose();
+               }
+       }
+       
+       private void applyTemplates() {
+               String errors = "";
+               for (RecordJob job : this.jobs) {
+                       try {
+                               this.applyTemplate(job);
+                       } catch (Throwable e) {
+                               errors += "Job <B>" + job.getJobName() + "</B>: " + e.getMessage() + "<BR>";
+                       }
+               }
+               
+               if (!errors.equals("")) {
+                       //error occurred!
+                       String errorMsg = "<HTML><BODY>Error occurred while trying to apply templates:<BR><BR>" + errors + "</BODY></HTML>";
+                       JOptionPane.showMessageDialog(this.parentFrame, errorMsg, "Error(s) while applying template", JOptionPane.INFORMATION_MESSAGE);
+               }
+       }
+       
+       private void applyTemplate(RecordJob job) {
+               if (engineCB.isSelected()) {
+                       job.setEnginePath(template.getEnginePath());
+               }
+               if (engineParametersCB.isSelected()) {
+                       job.setEngineParameters(template.getEngineParameters());
+               }
+               if (dpVideoDirCB.isSelected()) {
+                       job.setDpVideoPath(template.getDpVideoPath());
+               }
+               if (relativeDemoPathCB.isSelected()) {
+                       job.setRelativeDemoPath(template.getRelativeDemoPath());
+               }
+               if (jobNameCB.isSelected()) {
+                       job.setJobName(template.getJobName());
+               }
+               if (demoDirectoryCB.isSelected()) {
+                       File demoDir = template.getDemoFile();
+                       String demoFileName = DemoRecorderUtils.getJustFileNameOfPath(job.getDemoFile());
+                       String newDemoPath = demoDir.getAbsolutePath() + File.separator + demoFileName;
+                       job.setDemoFile(new File(newDemoPath));
+               }
+               if (execBeforeCapCB.isEnabled()) {
+                       job.setExecuteBeforeCap(template.getExecuteBeforeCap());
+               }
+               if (execAfterCB.isSelected()) {
+                       job.setExecuteAfterCap(template.getExecuteAfterCap());
+               }
+               if (videoDestination.isSelected()) {
+                       File videoDestinatinDir = template.getVideoDestination();
+                       String videoFileName = DemoRecorderUtils.getJustFileNameOfPath(job.getVideoDestination());
+                       String newVideoPath = videoDestinatinDir.getAbsolutePath() + File.separator + videoFileName;
+                       job.setVideoDestination(new File(newVideoPath));
+               }
+               if (pluginSettingsCB.isSelected()) {
+                       job.setEncoderPluginSettings(template.getEncoderPluginSettings());
+               }
+       }
+
+       @Override
+       public void itemStateChanged(ItemEvent e) {
+               if (e.getSource() == selectAllCB) {
+                       boolean selected = false;
+                       if (e.getStateChange() == ItemEvent.SELECTED) {
+                               selected = true;
+                       }
+                       
+                       engineCB.setSelected(selected);
+                       engineParametersCB.setSelected(selected);
+                       dpVideoDirCB.setSelected(selected);
+                       relativeDemoPathCB.setSelected(selected);
+                       jobNameCB.setSelected(selected);
+                       demoDirectoryCB.setSelected(selected);
+                       execBeforeCapCB.setSelected(selected);
+                       execAfterCB.setSelected(selected);
+                       videoDestination.setSelected(selected);
+                       pluginSettingsCB.setSelected(selected);
+               }
+       }
+}