Commit 145dff43 authored by mark Hoebeke's avatar mark Hoebeke

Tag corresponding to new release 1.0b1 made available for download.

parent 3bd2b388
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="target/classes" path="src/main/java"/>
<classpathentry kind="src" output="target/test-classes" path="src/test/java"/>
<classpathentry kind="src" path="src/main/resources"/>
<classpathentry exported="true" kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>jrmes</name>
<comment></comment>
<projects>
<project>rmesplot</project>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.wst.common.project.facet.core.builder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.maven.ide.eclipse.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.maven.ide.eclipse.maven2Nature</nature>
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
</natures>
</projectDescription>
#Thu Mar 04 08:15:06 CET 2010
eclipse.preferences.version=1
encoding//src/main/resources/fr/ssbgroup/jrmes/messages.properties=ISO-8859-1
#Mon Dec 21 10:24:17 CET 2009
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.5
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.5
#Mon Dec 21 09:54:59 CET 2009
activeProfiles=
eclipse.preferences.version=1
fullBuildGoals=process-test-resources
includeModules=false
resolveWorkspaceProjects=true
resourceFilterGoals=process-resources resources\:testResources
skipCompilerPlugin=true
version=1
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>fr.ssbgroup</groupId>
<artifactId>jrmes</artifactId>
<packaging>jar</packaging>
<version>1.0b1</version>
<name>JR'MES</name>
<description>A Graphical Front-End for R'MES</description>
<url>http://mulcyber.toulouse.inra.fr/projects/rmesplot</url>
<licenses>
<license>
<name>GNU GPL.</name>
</license>
</licenses>
<organization>
<name>SSB Group</name>
<url>http://www.ssbgroup.fr</url>
</organization>
<developers>
<developer>
<id>mhoebeke</id>
<name>Mark Hoebeke</name>
<email>mark.hoebeke@jouy.inra.fr</email>
<organization>SSB Group</organization>
<roles>
<role>Project Manager</role>
<role>Lead Developer</role>
</roles>
</developer>
</developers>
<scm>
<developerConnection>scm:svn:svn+ssh://scm.mulcyber.toulouse.inra.fr/svnroot/rmesplot/jrmes</developerConnection>
<url>http://mulcyber.toulouse.inra.fr/scm/viewvc.php/jrmes/?root=rmesplot</url>
</scm>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>fr.ssbgroup.jrmes.JRmes</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>fr.ssbgroup.jrmes.JRmes</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.4.1</version>
<configuration>
<encoding>ISO-8859-1</encoding>
</configuration>
</plugin>
<plugin>
<groupId>com.mycila.maven-license-plugin</groupId>
<artifactId>maven-license-plugin</artifactId>
<version>1.5.1</version>
<configuration>
<basedir>${basedir}</basedir>
<header>${basedir}/src/main/doc/license.txt</header>
<quiet>false</quiet>
<includes>
<include>src/main/java/**/*.java</include>
</includes>
<properties>
<projectname>${project.name}</projectname>
<projectversion>${project.version}</projectversion>
<authorinfo>Mark Hoebeke (mark.hoebeke@jouy.inra.fr)</authorinfo>
</properties>
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.9</version>
</dependency>
</dependencies>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.6.1</version>
<configuration>
<stylesheet>maven</stylesheet>
</configuration>
<reportSets>
<reportSet>
<id>html</id>
<reports>
<report>javadoc</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
<version>2.1</version>
</plugin>
</plugins>
</reporting>
</project>
This file is part of ${projectname} ${projectversion}.
Copyright (C) 2009, 2010 INRA - MIA - Unité MIG
Author(s) :
${authorinfo}
${projectname} ${projectversion} is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
${projectname} ${projectversion} is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with ${projectname} ${projectversion}. If not, see <http://www.gnu.org/licenses/>.
This diff is collapsed.
This diff is collapsed.
/**
* This file is part of JR'MES 0.0.1-SNAPSHOT.
*
* Copyright (C) 2009, 2010 INRA - MIA - Unité MIG
*
* Author(s) :
*
* Mark Hoebeke (mark.hoebeke@jouy.inra.fr)
*
* JR'MES 0.0.1-SNAPSHOT is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* JR'MES 0.0.1-SNAPSHOT is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with JR'MES 0.0.1-SNAPSHOT. If not, see <http://www.gnu.org/licenses/>.
*/
package fr.ssbgroup.jrmes;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
public class Messages {
private static final String BUNDLE_NAME = "fr.ssbgroup.jrmes.messages"; //$NON-NLS-1$
private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle
.getBundle(BUNDLE_NAME);
private Messages() {
}
public static String getString(String key) {
try {
return RESOURCE_BUNDLE.getString(key);
} catch (MissingResourceException e) {
return '!' + key + '!';
}
}
}
/**
* This file is part of JR'MES 0.0.1-SNAPSHOT.
*
* Copyright (C) 2009, 2010 INRA - MIA - Unité MIG
*
* Author(s) :
*
* Mark Hoebeke (mark.hoebeke@jouy.inra.fr)
*
* JR'MES 0.0.1-SNAPSHOT is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* JR'MES 0.0.1-SNAPSHOT is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with JR'MES 0.0.1-SNAPSHOT. If not, see <http://www.gnu.org/licenses/>.
*/
package fr.ssbgroup.jrmes.common.core;
public interface ProcessRunner extends Runnable {
}
/**
* This file is part of JR'MES 0.0.1-SNAPSHOT.
*
* Copyright (C) 2009, 2010 INRA - MIA - Unité MIG
*
* Author(s) :
*
* Mark Hoebeke (mark.hoebeke@jouy.inra.fr)
*
* JR'MES 0.0.1-SNAPSHOT is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* JR'MES 0.0.1-SNAPSHOT is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with JR'MES 0.0.1-SNAPSHOT. If not, see <http://www.gnu.org/licenses/>.
*/
package fr.ssbgroup.jrmes.common.core;
public interface ProcessWatcher {
public void processStarted(ProcessRunner launcher);
public void processFinished(ProcessRunner launcher);
public void processPercentProgressed(ProcessRunner launcher,double percentage);
public void processFailed(ProcessRunner launcher, String message);
}
/**
* This file is part of JR'MES 0.0.1-SNAPSHOT.
*
* Copyright (C) 2009, 2010 INRA - MIA - Unité MIG
*
* Author(s) :
*
* Mark Hoebeke (mark.hoebeke@jouy.inra.fr)
*
* JR'MES 0.0.1-SNAPSHOT is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* JR'MES 0.0.1-SNAPSHOT is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with JR'MES 0.0.1-SNAPSHOT. If not, see <http://www.gnu.org/licenses/>.
*/
package fr.ssbgroup.jrmes.common.ui;
import java.io.File;
import java.io.IOException;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JTextField;
import javax.swing.border.TitledBorder;
import fr.ssbgroup.jrmes.common.ui.actions.ChooseInputFileAction;
import fr.ssbgroup.jrmes.common.ui.listeners.InputFileTextFieldChangeListener;
/**
* InputFilePanel is a panel where a (file dialog opening) button and a text field allow the user to
* specifiy an input file.
*
* When the user chooses a file in the file dialog, the contents of the text field are updated. The panel is
* considered valid if the currently defined file is readable.
*
* @author mhoebeke
*
*/
@SuppressWarnings("serial")
public class InputFilePanel extends StatefulPanel {
final int TEXTFIELD_CHARS=40;
File inputFile=null;
JButton fileBtn=null;
JTextField fileField=null;
/**
* Constructor using a label and a flag.
*
* Builds an instance of InputFilePanel. The label is displayed on the button (and the panel border if the border flag is true).
*
* @param label the String to be displayed on the panel button (and possibly the panel border)
* @param border if true, the panel will be surrounded by a (titled) border, otherwise not.
*/
public InputFilePanel(String label, boolean border) {
super();
initPanel(label,border);
}
protected void initPanel(String title,boolean border) {
setLayout(new BoxLayout(this,BoxLayout.LINE_AXIS));
if (border==true)
setBorder(new TitledBorder(title)); //$NON-NLS-1$
fileBtn=new JButton();
add(fileBtn);
fileField=new JTextField(TEXTFIELD_CHARS);
fileField.addActionListener(new InputFileTextFieldChangeListener(this));
add(fileField);
fileBtn.setAction(new ChooseInputFileAction(this,title));
}
/**
* Enables/disables the button and the text field.
*
* @param enabled if true, enables the button and the textfile, otherwise disables them.
*/
@Override
public void setEnabled(boolean enabled) {
fileBtn.setEnabled(enabled);
fileField.setEnabled(enabled);
}
/**
* Returns true if the current input file exists and is readable.
*
* @return true if the input file is not null and is can be read.
*/
@Override
public boolean isStateValid() {
boolean valid=false;
if (inputFile != null && inputFile.canRead()) {
valid=true;
}
return valid;
}
/**
* Defines the input file.
*
* @param file the File representing either the file selected by the user in the file dialog, or entered directly
* in the text field.
*/
public void setInputFile(File file) {
inputFile=file;
try {
fileField.setText(file.getCanonicalPath());
} catch (IOException e) {
e.printStackTrace();
}
}
}
/**
* This file is part of JR'MES 0.0.1-SNAPSHOT.
*
* Copyright (C) 2009, 2010 INRA - MIA - Unité MIG
*
* Author(s) :
*
* Mark Hoebeke (mark.hoebeke@jouy.inra.fr)
*
* JR'MES 0.0.1-SNAPSHOT is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* JR'MES 0.0.1-SNAPSHOT is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with JR'MES 0.0.1-SNAPSHOT. If not, see <http://www.gnu.org/licenses/>.
*/
package fr.ssbgroup.jrmes.common.ui;
import java.io.File;
import java.io.IOException;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JTextField;
import javax.swing.border.TitledBorder;
import fr.ssbgroup.jrmes.common.ui.actions.ChooseOutputFileAction;
import fr.ssbgroup.jrmes.common.ui.listeners.OutputFileTextFieldChangeListener;
/**
* InputFilePanel is a panel where a (file dialog opening) button and a text field allow the user to
* specifiy an output file.
*
* When the user chooses a file in the file dialog, the contents of the text field are updated. The panel is
* considered valid if the currently defined file is writable.
*
* @author mhoebeke
*
*/
@SuppressWarnings("serial")
public class OutputFilePanel extends StatefulPanel {
final int TEXTFIELD_CHARS=40;
File outputFile=null;
JButton fileBtn=null;
JTextField fileField=null;
/**
* Constructor using a label and a flag.
*
* Builds an instance of InputFilePanel. The label is displayed on the button (and the panel border if the border flag is true).
*
* @param label the String to be displayed on the panel button (and possibly the panel border)
* @param border if true, the panel will be surrounded by a (titled) border, otherwise not.
* @param defaultFile a File whose name will be displayed in the text field (can be null).
*/
public OutputFilePanel(String label, boolean border, File defaultFile) {
super();
initPanel(label,border,defaultFile);
}
protected void initPanel(String title,boolean border, File defaultFile) {
setLayout(new BoxLayout(this,BoxLayout.LINE_AXIS));
if (border==true)
setBorder(new TitledBorder(title)); //$NON-NLS-1$
fileBtn=new JButton();
add(fileBtn);
fileField=new JTextField(TEXTFIELD_CHARS);
fileField.addActionListener(new OutputFileTextFieldChangeListener(this));
add(fileField);
if (defaultFile != null) {
outputFile=defaultFile;
try {
fileField.setText(defaultFile.getCanonicalPath());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
fileBtn.setAction(new ChooseOutputFileAction(this,title));
}
/**
* Enables/disables the button and the text field.
*
* @param enabled if true, enables the button and the text field, otherwise disables them.
*/
@Override
public void setEnabled(boolean enabled) {
fileBtn.setEnabled(enabled);
fileField.setEnabled(enabled);
}
/**
* Returns true if the current output file is writable.
*
* @return true if the output file is not null and is can be written.
*/
@Override
public boolean isStateValid() {
boolean valid=false;
boolean cleanup=false;
if (outputFile != null) {
try {
if (!outputFile.exists()) {