[nexuiz-commits] r8655 - in trunk/misc/tools/NexuizDemoRecorder/main: . src/main/java/com/nexuiz/demorecorder/application/jobs src/main/java/com/nexuiz/demorecorder/ui/swinggui src/main/resources src/main/resources/help src/main/resources/help/JavaHelpSearch src/main/resources/help/html src/main/resources/icons
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Sat Feb 20 17:26:30 EST 2010
Author: greenmarine
Date: 2010-02-20 17:26:30 -0500 (Sat, 20 Feb 2010)
New Revision: 8655
Added:
trunk/misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/ui/swinggui/ApplyTemplateDialog.java
trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/html/apply_templates.html
trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/icons/editpaste.png
Modified:
trunk/misc/tools/NexuizDemoRecorder/main/pom.xml
trunk/misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/application/jobs/RecordJob.java
trunk/misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/ui/swinggui/SwingGUI.java
trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/about.html
trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/DemoRecorderHelpTOC.xml
trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/DOCS
trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/DOCS.TAB
trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/OFFSETS
trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/POSITIONS
trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/SCHEMA
trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/TMAP
trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/Map.jhm
trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/html/changelog.html
Log:
Nexuiz demo recorder: bump to v0.3
- New feature: apply properties selectively from template to jobs
Modified: trunk/misc/tools/NexuizDemoRecorder/main/pom.xml
===================================================================
--- trunk/misc/tools/NexuizDemoRecorder/main/pom.xml 2010-02-18 22:03:15 UTC (rev 8654)
+++ trunk/misc/tools/NexuizDemoRecorder/main/pom.xml 2010-02-20 22:26:30 UTC (rev 8655)
@@ -4,7 +4,7 @@
<groupId>NexuizDemoRecorder</groupId>
<artifactId>NexuizDemoRecorder</artifactId>
<packaging>jar</packaging>
- <version>0.3-SNAPSHOT</version>
+ <version>0.3</version>
<name>NexuizDemoRecorder</name>
<url>http://maven.apache.org</url>
<dependencies>
Modified: trunk/misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/application/jobs/RecordJob.java
===================================================================
--- trunk/misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/application/jobs/RecordJob.java 2010-02-18 22:03:15 UTC (rev 8654)
+++ trunk/misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/application/jobs/RecordJob.java 2010-02-20 22:26:30 UTC (rev 8655)
@@ -417,9 +417,12 @@
public void setDemoFile(File demoFile) {
this.checkForProcessingState();
- if (demoFile == null || !demoFile.exists()) {
+ if (demoFile == null) {
throw new DemoRecorderException("Could not locate demo file!");
}
+ if (!demoFile.exists()) {
+ throw new DemoRecorderException("Could not locate demo file!: " + demoFile.getAbsolutePath());
+ }
if (!doReadWriteTest(demoFile.getParentFile())) {
throw new DemoRecorderException("The directory you specified for the demo to be recorded is not writable!");
}
Added: trunk/misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/ui/swinggui/ApplyTemplateDialog.java
===================================================================
--- trunk/misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/ui/swinggui/ApplyTemplateDialog.java (rev 0)
+++ trunk/misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/ui/swinggui/ApplyTemplateDialog.java 2010-02-20 22:26:30 UTC (rev 8655)
@@ -0,0 +1,175 @@
+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);
+ }
+ }
+}
Modified: trunk/misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/ui/swinggui/SwingGUI.java
===================================================================
--- trunk/misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/ui/swinggui/SwingGUI.java 2010-02-18 22:03:15 UTC (rev 8654)
+++ trunk/misc/tools/NexuizDemoRecorder/main/src/main/java/com/nexuiz/demorecorder/ui/swinggui/SwingGUI.java 2010-02-20 22:26:30 UTC (rev 8655)
@@ -85,6 +85,7 @@
private static final String LABEL_JOB_CLEAR = "Clear";
private static final String LABEL_JOB_EDIT = "Edit job";
private static final String LABEL_JOB_DUPLICATE = "Duplicate job";
+ private static final String LABEL_JOB_APPLYTEMPL = "Apply template";
private static final String LABEL_JOB_START = "Start job";
private static final String LABEL_JOB_SHOWERROR = "Show error message";
private static final String LABEL_JOB_RESET_STATE_WAITING = "Reset job status to 'waiting'";
@@ -115,6 +116,7 @@
private JButton jobs_clear = new JButton(LABEL_JOB_CLEAR, getIcon("editclear.png"));
private JMenuItem jobs_contextmenu_edit = new JMenuItem(LABEL_JOB_EDIT, getIcon("edit.png"));
private JMenuItem jobs_contextmenu_duplicate = new JMenuItem(LABEL_JOB_DUPLICATE, getIcon("editcopy.png"));
+ private JMenuItem jobs_contextmenu_applytempl = new JMenuItem(LABEL_JOB_APPLYTEMPL, getIcon("editpaste.png"));
private JMenuItem jobs_contextmenu_delete = new JMenuItem(LABEL_JOB_DELETE, getIcon("editdelete.png"));
private JMenuItem jobs_contextmenu_start = new JMenuItem(LABEL_JOB_START, getIcon("player_play.png"));
private JMenuItem jobs_contextmenu_showerror = new JMenuItem(LABEL_JOB_SHOWERROR, getIcon("status_unknown.png"));
@@ -142,7 +144,7 @@
private static final String mainHelpSetName = "help/DemoRecorderHelp.hs";
public SwingGUI(DemoRecorderApplication appLayer) {
- super("Nexuiz Demo Recorder v0.2");
+ super("Nexuiz Demo Recorder v0.3");
addWindowListener(this);
this.appLayer = appLayer;
@@ -237,6 +239,7 @@
this.jobs_contextmenu_edit.addActionListener(this.jobButtonActionListener);
this.jobs_contextmenu_duplicate.addActionListener(this.jobButtonActionListener);
+ this.jobs_contextmenu_applytempl.addActionListener(this.jobButtonActionListener);
this.jobs_contextmenu_delete.addActionListener(this.jobButtonActionListener);
this.jobs_contextmenu_start.addActionListener(this.jobButtonActionListener);
this.jobs_contextmenu_showerror.addActionListener(this.jobButtonActionListener);
@@ -345,6 +348,7 @@
this.jobsTablePopupMenu = new JPopupMenu();
this.jobsTablePopupMenu.add(jobs_contextmenu_edit);
this.jobsTablePopupMenu.add(jobs_contextmenu_duplicate);
+ this.jobsTablePopupMenu.add(jobs_contextmenu_applytempl);
this.jobsTablePopupMenu.add(jobs_contextmenu_delete);
this.jobsTablePopupMenu.add(jobs_contextmenu_start);
//add JMenus for plugins
@@ -598,6 +602,12 @@
jobsTable.setRowSelectionInterval(jobsTable.getRowCount() - selectedJobs.size(), jobsTable.getRowCount() - 1);
configureTableButtons();
}
+ } else if (e.getSource() == jobs_contextmenu_applytempl) {
+ if (selectedTemplates.size() == 1 && selectedJobs.size() > 0) {
+ RecordJobTemplate template = (RecordJobTemplate) selectedTemplates.get(0);
+ ApplyTemplateDialog applyDialog = new ApplyTemplateDialog(SwingGUI.this, template, selectedJobs);
+ applyDialog.showDialog();
+ }
} else if (jobs_contextmenu_runPluginMenuItems.contains(e.getSource())) {
int index = jobs_contextmenu_runPluginMenuItems.indexOf(e.getSource());
EncoderPlugin selectedPlugin = appLayer.getEncoderPlugins().get(index);
@@ -946,6 +956,7 @@
//Disable all buttons first
jobs_contextmenu_edit.setEnabled(false);
jobs_contextmenu_duplicate.setEnabled(false);
+ jobs_contextmenu_applytempl.setEnabled(false);
jobs_contextmenu_delete.setEnabled(false);
jobs_contextmenu_resetstate_waiting.setEnabled(false);
jobs_contextmenu_resetstate_done.setEnabled(false);
@@ -975,9 +986,10 @@
//none of the jobs is processing
jobs_contextmenu_delete.setEnabled(true);
jobs_contextmenu_resetstate_waiting.setEnabled(true);
- } else {
- jobs_contextmenu_edit.setEnabled(false);
- jobs_contextmenu_duplicate.setEnabled(false);
+
+ if (templatesTable.getSelectedRowCount() == 1) {
+ jobs_contextmenu_applytempl.setEnabled(true);
+ }
}
//Start button
Modified: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/about.html
===================================================================
--- trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/about.html 2010-02-18 22:03:15 UTC (rev 8654)
+++ trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/about.html 2010-02-20 22:26:30 UTC (rev 8655)
@@ -1,5 +1,5 @@
<html>
- <h1>Nexuiz Demo Recorder v0.2</h1>
+ <h1>Nexuiz Demo Recorder v0.3</h1>
Written by GreEn`mArine<br>
<h2>Credits</h2>
<ul>
Modified: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/DemoRecorderHelpTOC.xml
===================================================================
--- trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/DemoRecorderHelpTOC.xml 2010-02-18 22:03:15 UTC (rev 8654)
+++ trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/DemoRecorderHelpTOC.xml 2010-02-20 22:26:30 UTC (rev 8655)
@@ -8,6 +8,8 @@
<tocitem text="Templates " target="html.templates"/>
+ <tocitem text="Applying templates " target="html.apply_templates"/>
+
<tocitem text="Open/Save Jobs and Templates " target="html.open-save"/>
<tocitem text="Preferences dialog " target="html.preferences"/>
Modified: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/DOCS
===================================================================
(Binary files differ)
Modified: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/DOCS.TAB
===================================================================
--- trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/DOCS.TAB 2010-02-18 22:03:15 UTC (rev 8654)
+++ trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/DOCS.TAB 2010-02-20 22:26:30 UTC (rev 8655)
@@ -1,14 +1,12 @@
-eÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÝÿÿÿÿÿ÷_÷_ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÝÿÿÿÿÿÿÿÝÿÿÿÿÿÿÿuÿÿuÿÿÿÿÿÿÿÿ÷_ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿuÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÝÿÿÿÿý×ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷_ÿÿÿuÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý×ÿÿÿÿÿÿÿÿ÷_ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ@7û*ÌebøÖBìå(â¦Ob³J6,Ù©
-³vRꯪ/X³r(Í13,Ϫ8³J4³6/4³<£J8¨Ò¨â¯3þ*0³K¬É£J³4º¾+ÿ4³h£"(Ì£J4®º+9ªÌê/.»Ì/*7¢.9"*6Ë0¿üÈ£(£Jî£
-Ì*4£;*1¤,⮣K0£
-0³"£ºþ¨ÞʸÒó6ªÊ»³2(ªªªªªºªª®0¸Â£
-£"º®3â*͸ª£
-4®4£Kªº0ª¨Â¨Ê(ȳ
-ºªª®þÌ.¯®0£
-0º2¢ºªìª³
-Ì*0¾0³:.6(Ê(È£"+þêº*2.몣
-ªªº0ªªº2.£
-0ªª³
-0ª£
+eÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÝÿÿÿÿÿ÷_÷_ÿÿÿÿÿÿÿuÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷_ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÝÿÿÿÿÿuÿÿuÿÿÿÿÿÿÿÿ÷_ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷_ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÝÿÿÿÿÿÿÿuÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý×ÿÿÿÝÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿuÿÿÿÿÿÿÿý×ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÐ7û*2erøÖBìõ(â¦Or³J6,Ùù
+³ª¾ª0¾9bÎR(ÆË13,Í*£4£<£bÌË3b(ò£J£¼ßè¨ÂÍ.³'/*Ï(Òêú0£
+3öBÍ,Ú(Ø£J3(â+£J3²£=,⮣4³
+9
+ºÍ+0º¬Î¢øÂë¼ÂøÂãJZ(Âã*FBÿó"¢+º+®èÂó4¸Ì¿2*0£0¸Òèº0¾4£
+£2Î*ÎB¨Ò¬Âªª(Â/0³
+øÂëê®4¼Âͪ*îÌ,È£
+ªªªªªêªª»*¨È®¨Ââ«6âª*ãJ4º«£
+ª*2,ªªª»û0º¾¸Â(ÂèÊ꫺«0¬Â£³2èÂ(Ê¢0¯ûªª0³ê0£"몣
+ªªºªªèȺ(ªªÌ(ª*ªª*£(³
ªª£
-«¢Ì*ª*0ª«ªê«*0ªÌ,ÂÿÌ,ÂÌ,ÂÿÿÌ/0¿ÿÿÿÿÿÿÌ/ó0³"Ì/ÿüÂÿÿÌ,È¿ÿüÂÿÌ/ÿ0¿Ì/þ«ªªªªªêªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªª¦
\ No newline at end of file
+«ªê«*0ªÌ,ÂÿÌ,ÂóÿüÂóÿÿÿÿÿÿüÂÿ0³"Ì/ÿüÂÿÿÌ,È¿ÿÿüÂÿ0¿Ì/þªªªªªªª¯ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿö
\ No newline at end of file
Modified: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/OFFSETS
===================================================================
(Binary files differ)
Modified: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/POSITIONS
===================================================================
(Binary files differ)
Modified: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/SCHEMA
===================================================================
--- trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/SCHEMA 2010-02-18 22:03:15 UTC (rev 8654)
+++ trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/SCHEMA 2010-02-20 22:26:30 UTC (rev 8655)
@@ -1,2 +1,2 @@
JavaSearch 1.0
-TMAP bs=2048 rt=1 fl=-1 id1=1038 id2=1
+TMAP bs=2048 rt=1 fl=-1 id1=1083 id2=1
Modified: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/JavaHelpSearch/TMAP
===================================================================
(Binary files differ)
Modified: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/Map.jhm
===================================================================
--- trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/Map.jhm 2010-02-18 22:03:15 UTC (rev 8654)
+++ trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/Map.jhm 2010-02-20 22:26:30 UTC (rev 8655)
@@ -10,9 +10,11 @@
<mapID target="html.license" url="html/license.html"/>
+<mapID target="html.open-save" url="html/open-save.html"/>
+
<mapID target="html.compat-limitations" url="html/compat-limitations.html"/>
-<mapID target="html.open-save" url="html/open-save.html"/>
+<mapID target="html.apply_templates" url="html/apply_templates.html"/>
<mapID target="html.introduction" url="html/introduction.html"/>
Added: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/html/apply_templates.html
===================================================================
--- trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/html/apply_templates.html (rev 0)
+++ trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/html/apply_templates.html 2010-02-20 22:26:30 UTC (rev 8655)
@@ -0,0 +1,77 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+
+<html>
+ <head>
+ <meta name="generator" content="HTML Tidy, see www.w3.org">
+
+ <title></title>
+ </head>
+
+ <body>
+<H1>Applying templates</H1>
+<P>Since version 0.3 you are able to
+selectively apply settings from a template of your choice to any job
+you like. One reason might be that you want jobs that have already
+been recorded to be recorded using different config settings (e.g.
+other quality settings, resolution, etc.). If you wanted to do this
+for many jobs at once, it would be very tedious to edit each job
+manually, setting up changes.</P>
+<P>You can apply properties of templates
+very easily:</P>
+<UL>
+ <LI><P>Select the template you want to
+ use</P>
+ <LI><P>Select the job(s) whose
+ properties you want to be affected by the template</P>
+ <LI><P>Right-click inside the jobs
+ table and select “Apply template”</P>
+ <LI><P>A new dialog will open where you
+ will be able to select which one of the settings should be copied
+ from the template to the job. Please, be aware that old settings of
+ the job will be overwritten!</P>
+ <LI><P>Usually the settings will be
+ copied 1:1 from the template to the job. <B>There are 2 exceptions,
+ though</B>:</P>
+ <UL>
+ <LI><P><B>Demo directory:</B> Here
+ copying the value from the template to the job would not make
+ sense, because in a template you actually specified a <B>directory</B>,
+ <U>not</U> a <B>file</B>. However, a job needs to point at a <B>file</B>.
+ What will happen shall be demonstrated by the following example:
+ Let's say that the job's path to the demo file (before applying the
+ template) has been <B>C:\Nexuiz\data\demos\mydemo.dem</B>
+ and the path setup in the template has been pointing to the
+ directory<B> C:\Games\Nexuiz2.5.2\data\demos</B>.
+ The new demo file path, after the “apply” process is
+ done, would be <B>C:\Games\Nexuiz2.5.2\data\demos\mydemo.dem</B>;
+ this means that from the <B>job's</B>
+ demo path the program will just take the name of the demo by itself
+ (mydemo.dem), and put the path from the <B>template</B>
+ in front of it</P>
+ <LI><P><b>Video
+ destination:</b> Here the same thing happens like for the Demo
+ directory. The new video destination will be <Directory set up
+ in the template> + <just the filename of the setting of the
+ job></P>
+ </UL>
+</UL>
+<P>Another example of how this feature could be useful is this one: Suppose some
+movie maker was to create a community movie with frags from different
+people, or a movie maker was to continue or finish a movie from
+someone else. If one person creates a queue of jobs (which naturally
+includes the demo's names, start second and end second) and then
+decides not to record the frags herself but send it to some other
+movie maker, all that needs to be done is to save the job queue and
+send it to the other movie maker, together with the demos. The other
+movie maker can then copy the demos into his own demo directory and
+import the job queue. Of course the problem would then be that all
+these imported jobs could not really be executed right away, because
+all these paths might be incorrect, I mean, would simply not exist or
+match to the system of the movie maker who wants to record the jobs
+(e.g. path to Nexuiz engine or demo directory). But this can easily
+be fixed. The movie maker just needs to select the imported jobs and
+apply one of her own templates to them, and by doing so, fix all
+incorrect paths.</P>
+ </body>
+</html>
+
Modified: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/html/changelog.html
===================================================================
--- trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/html/changelog.html 2010-02-18 22:03:15 UTC (rev 8654)
+++ trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/help/html/changelog.html 2010-02-20 22:26:30 UTC (rev 8655)
@@ -19,6 +19,8 @@
<LI><P>Open dialogs for jobs or templates allow you to select whether to overwrite
the current list/queue or not (if not, the loaded items will be added to the
current list/queue)</P>
+ <LI><P>New feature: <a href="apply_templates.html">Applying properties of a template </a>
+ selectively to one or more selected jobs</P>
</UL>
Added: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/icons/editpaste.png
===================================================================
(Binary files differ)
Property changes on: trunk/misc/tools/NexuizDemoRecorder/main/src/main/resources/icons/editpaste.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
More information about the nexuiz-commits
mailing list