summaryrefslogtreecommitdiff
path: root/src/cuchaz/enigma/gui/GuiController.java
diff options
context:
space:
mode:
authorGravatar jeff2014-08-23 16:20:15 -0400
committerGravatar jeff2014-08-23 16:20:15 -0400
commita700b403d790c23989da524c934f0185b87c7b32 (patch)
tree10a6b279927efea8cbfd12288edd6ad06f046eb2 /src/cuchaz/enigma/gui/GuiController.java
parentAdded tag v0.3 beta for changeset d90963ed6887 (diff)
downloadenigma-fork-a700b403d790c23989da524c934f0185b87c7b32.tar.gz
enigma-fork-a700b403d790c23989da524c934f0185b87c7b32.tar.xz
enigma-fork-a700b403d790c23989da524c934f0185b87c7b32.zip
added export command with progress bar
Diffstat (limited to 'src/cuchaz/enigma/gui/GuiController.java')
-rw-r--r--src/cuchaz/enigma/gui/GuiController.java26
1 files changed, 25 insertions, 1 deletions
diff --git a/src/cuchaz/enigma/gui/GuiController.java b/src/cuchaz/enigma/gui/GuiController.java
index a35db05..cf4f002 100644
--- a/src/cuchaz/enigma/gui/GuiController.java
+++ b/src/cuchaz/enigma/gui/GuiController.java
@@ -20,6 +20,7 @@ import java.util.List;
20 20
21import com.google.common.collect.Lists; 21import com.google.common.collect.Lists;
22import com.google.common.collect.Queues; 22import com.google.common.collect.Queues;
23import com.strobel.decompiler.languages.java.ast.CompilationUnit;
23 24
24import cuchaz.enigma.Deobfuscator; 25import cuchaz.enigma.Deobfuscator;
25import cuchaz.enigma.analysis.BehaviorReferenceTreeNode; 26import cuchaz.enigma.analysis.BehaviorReferenceTreeNode;
@@ -106,6 +107,27 @@ public class GuiController
106 refreshCurrentClass(); 107 refreshCurrentClass();
107 } 108 }
108 109
110 public void export( final File dirOut )
111 {
112 new Thread( )
113 {
114 @Override
115 public void run( )
116 {
117 try
118 {
119 ProgressDialog progress = new ProgressDialog( m_gui.getFrame() );
120 m_deobfuscator.writeSources( dirOut, progress );
121 progress.close();
122 }
123 catch( IOException ex )
124 {
125 throw new Error( ex );
126 }
127 }
128 }.start();
129 }
130
109 public Token getToken( int pos ) 131 public Token getToken( int pos )
110 { 132 {
111 if( m_index == null ) 133 if( m_index == null )
@@ -295,7 +317,9 @@ public class GuiController
295 public void run( ) 317 public void run( )
296 { 318 {
297 // decompile,deobfuscate the bytecode 319 // decompile,deobfuscate the bytecode
298 m_index = m_deobfuscator.getSource( classEntry.getClassName() ); 320 CompilationUnit sourceTree = m_deobfuscator.getSourceTree( classEntry.getClassName() );
321 String source = m_deobfuscator.getSource( sourceTree );
322 m_index = m_deobfuscator.getSourceIndex( sourceTree, source );
299 m_gui.setSource( m_index.getSource() ); 323 m_gui.setSource( m_index.getSource() );
300 if( obfReference != null ) 324 if( obfReference != null )
301 { 325 {