Added GUI sandbox for XML tinkering

This commit is contained in:
Vhati 2013-09-02 00:23:07 -04:00
parent 6174e45645
commit ea0e4d0fe1
3 changed files with 541 additions and 2 deletions

View file

@ -71,9 +71,9 @@ import net.vhati.modmanager.core.Report.ReportFormatter;
import net.vhati.modmanager.json.GrognakCatalogFetcher;
import net.vhati.modmanager.json.JacksonGrognakCatalogReader;
import net.vhati.modmanager.ui.ChecklistTableModel;
import net.vhati.modmanager.ui.ClipboardMenuMouseListener;
import net.vhati.modmanager.ui.ModInfoArea;
import net.vhati.modmanager.ui.ModPatchDialog;
import net.vhati.modmanager.ui.ModXMLSandbox;
import net.vhati.modmanager.ui.Statusbar;
import net.vhati.modmanager.ui.StatusbarMouseListener;
import net.vhati.modmanager.ui.TableRowTransferHandler;
@ -109,6 +109,7 @@ public class ManagerFrame extends JFrame implements ActionListener, HashObserver
private JMenu fileMenu;
private JMenuItem rescanMenuItem;
private JMenuItem extractDatsMenuItem;
private JMenuItem sandboxMenuItem;
private JMenuItem exitMenuItem;
private JMenu helpMenu;
private JMenuItem aboutMenuItem;
@ -293,11 +294,14 @@ public class ManagerFrame extends JFrame implements ActionListener, HashObserver
rescanMenuItem.addMouseListener( new StatusbarMouseListener( this, "Check the mods/ folder for new files." ) );
rescanMenuItem.addActionListener(this);
fileMenu.add( rescanMenuItem );
fileMenu.add( new JSeparator() );
extractDatsMenuItem = new JMenuItem( "Extract Dats..." );
extractDatsMenuItem.addMouseListener( new StatusbarMouseListener( this, "Extract FTL resources into a folder." ) );
extractDatsMenuItem.addActionListener(this);
fileMenu.add( extractDatsMenuItem );
sandboxMenuItem = new JMenuItem( "XML Sandbox..." );
sandboxMenuItem.addMouseListener( new StatusbarMouseListener( this, "Experiment with advanced mod syntax." ) );
sandboxMenuItem.addActionListener(this);
fileMenu.add( sandboxMenuItem );
fileMenu.add( new JSeparator() );
exitMenuItem = new JMenuItem( "Exit" );
exitMenuItem.addMouseListener( new StatusbarMouseListener( this, "Exit this application." ) );
@ -680,6 +684,13 @@ public class ManagerFrame extends JFrame implements ActionListener, HashObserver
extractDlg.extract();
extractDlg.setVisible( true );
}
else if ( source == sandboxMenuItem ) {
File datsDir = new File( config.getProperty( "ftl_dats_path" ) );
File dataDatFile = new File( datsDir, "data.dat" );
ModXMLSandbox sandboxDlg = new ModXMLSandbox( this, dataDatFile );
sandboxDlg.setVisible( true );
}
else if ( source == exitMenuItem ) {
setStatusText( "" );
exitApp();