package eu.irreality.age.swing.sdi;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import javax.swing.JDesktopPane;
import javax.swing.JFileChooser;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.xml.sax.InputSource;
import eu.irreality.age.FiltroFicheroEstado;
import eu.irreality.age.FiltroFicheroLog;
import eu.irreality.age.GameInfo;
import eu.irreality.age.PartidaEntry;
import eu.irreality.age.Utility;
import eu.irreality.age.filemanagement.Paths;
import eu.irreality.age.i18n.UIMessages;
import eu.irreality.age.server.ServerHandler;
import eu.irreality.age.swing.FileSelectorDialogs;
class LoadFromLogListener implements ActionListener
{
SwingSDIInterface window;
public LoadFromLogListener ( SwingSDIInterface w )
{
this.window = w;
}
public void actionPerformed ( ActionEvent evt )
{
final String path = FileSelectorDialogs.showOpenLogDialog(window);
if(path != null)
{
String worldFile;
try
{
FileInputStream fis = new FileInputStream ( path );
BufferedReader br = new BufferedReader ( Utility.getBestInputStreamReader ( fis ) );
//primera linea del fichero de log: fichero de mundo
worldFile = br.readLine();
if ( worldFile == null ) worldFile="";
}
catch ( Exception fnfe )
{
worldFile = "";
}
Thread.currentThread().setPriority(Thread.MAX_PRIORITY);
//test:
GameInfo gi = GameInfo.getGameInfoFromFile ( worldFile ); //this returns null for world not found
final PartidaEntry pe = new PartidaEntry ( gi , "noname" , 200 , null , true , true , true );
window.startGame( worldFile , true , path , null );
//new SwingAetheriaGameLoader( new File(worldFile).getParent() , thePanel , true , selector.getSelectedFile().getAbsolutePath() , null, true );
}
}
}