This commit is contained in:
tonikelope 2016-10-10 16:29:18 +02:00
parent 602c369868
commit a610b15d28
3 changed files with 35 additions and 31 deletions

View File

@ -234,10 +234,10 @@ public final class FolderLinkDialog extends javax.swing.JDialog {
private void skip_buttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_skip_buttonActionPerformed private void skip_buttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_skip_buttonActionPerformed
if(deleteSelectedTreeItems(file_tree)) { if(deleteSelectedTreeItems(file_tree)) {
_genDownloadLiks(); _genDownloadLiks();
file_tree.setRootVisible( ((MegaMutableTreeNode)file_tree.getModel().getRoot()).getChildCount() > 0 );
swingReflectionInvoke("setVisible", restore_button, true); swingReflectionInvoke("setVisible", restore_button, true);
} }
@ -245,18 +245,16 @@ public final class FolderLinkDialog extends javax.swing.JDialog {
private void dance_buttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_dance_buttonActionPerformed private void dance_buttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_dance_buttonActionPerformed
_download = true; _download = true;
swingReflectionInvoke("setVisible", this, false); swingReflectionInvoke("setVisible", this, false);
}//GEN-LAST:event_dance_buttonActionPerformed }//GEN-LAST:event_dance_buttonActionPerformed
private void skip_rest_buttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_skip_rest_buttonActionPerformed private void skip_rest_buttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_skip_rest_buttonActionPerformed
if(deleteAllExceptSelectedTreeItems(file_tree)) { if(deleteAllExceptSelectedTreeItems(file_tree)) {
_genDownloadLiks(); _genDownloadLiks();
file_tree.setRootVisible( ((MegaMutableTreeNode)file_tree.getModel().getRoot()).getChildCount() > 0 );
swingReflectionInvoke("setVisible", restore_button, true); swingReflectionInvoke("setVisible", restore_button, true);
} }
@ -264,14 +262,11 @@ public final class FolderLinkDialog extends javax.swing.JDialog {
private void restore_buttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_restore_buttonActionPerformed private void restore_buttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_restore_buttonActionPerformed
swingReflectionInvoke("setEnabled", restore_button, false); swingReflectionInvoke("setEnabled", restore_button, false);
swingReflectionInvoke("setEnabled", dance_button, false); swingReflectionInvoke("setEnabled", dance_button, false);
swingReflectionInvoke("setEnabled", file_tree, false); swingReflectionInvokeAndWait("setEnabled", file_tree, false);
THREAD_POOL.execute(new Runnable(){ THREAD_POOL.execute(new Runnable(){
@Override @Override
@ -287,6 +282,8 @@ public final class FolderLinkDialog extends javax.swing.JDialog {
swingReflectionInvoke("setEnabled", dance_button, true); swingReflectionInvoke("setEnabled", dance_button, true);
file_tree.setRootVisible( ((MegaMutableTreeNode)file_tree.getModel().getRoot()).getChildCount() > 0 );
}}); }});
}//GEN-LAST:event_restore_buttonActionPerformed }//GEN-LAST:event_restore_buttonActionPerformed

View File

@ -62,7 +62,7 @@ import static megabasterd.Transference.MAX_TRANSFERENCE_SPEED_DEFAULT;
*/ */
public final class MainPanel { public final class MainPanel {
public static final String VERSION="1.22"; public static final String VERSION="1.23";
public static final int CONNECTION_TIMEOUT = 30000; public static final int CONNECTION_TIMEOUT = 30000;
public static final int THROTTLE_SLICE_SIZE=16*1024; public static final int THROTTLE_SLICE_SIZE=16*1024;
public static final int STREAMER_PORT = 1337; public static final int STREAMER_PORT = 1337;

View File

@ -38,6 +38,7 @@ import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask; import java.util.concurrent.FutureTask;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.logging.Logger;
import static java.util.logging.Logger.getLogger; import static java.util.logging.Logger.getLogger;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
@ -47,7 +48,6 @@ import javax.swing.SwingUtilities;
import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel; import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.MutableTreeNode; import javax.swing.tree.MutableTreeNode;
import javax.swing.tree.TreeNode;
import javax.swing.tree.TreePath; import javax.swing.tree.TreePath;
import javax.xml.bind.DatatypeConverter; import javax.xml.bind.DatatypeConverter;
import static megabasterd.MainPanel.CONNECTION_TIMEOUT; import static megabasterd.MainPanel.CONNECTION_TIMEOUT;
@ -625,17 +625,17 @@ public final class MiscTools {
DefaultTreeModel model = (DefaultTreeModel) (tree.getModel()); DefaultTreeModel model = (DefaultTreeModel) (tree.getModel());
DefaultMutableTreeNode node; MutableTreeNode node;
for (TreePath path : paths) { for (TreePath path : paths) {
node = (DefaultMutableTreeNode) (path.getLastPathComponent()); node = (MutableTreeNode)path.getLastPathComponent();
if(node != null) { if(node != null) {
if(node != model.getRoot()) { if(node != model.getRoot()) {
DefaultMutableTreeNode parent = (DefaultMutableTreeNode) node.getParent(); MutableTreeNode parent = (MutableTreeNode)node.getParent();
model.removeNodeFromParent(node); model.removeNodeFromParent(node);
@ -643,7 +643,7 @@ public final class MiscTools {
if(parent != model.getRoot()) { if(parent != model.getRoot()) {
DefaultMutableTreeNode parent_aux = (DefaultMutableTreeNode) parent.getParent(); MutableTreeNode parent_aux = (MutableTreeNode)parent.getParent();
model.removeNodeFromParent(parent); model.removeNodeFromParent(parent);
@ -659,7 +659,11 @@ public final class MiscTools {
swingReflectionInvokeAndWait("setEnabled", tree, true); swingReflectionInvokeAndWait("setEnabled", tree, true);
tree.setModel(new DefaultTreeModel(new DefaultMutableTreeNode())); try {
tree.setModel(new DefaultTreeModel((MutableTreeNode)tree.getModel().getRoot().getClass().newInstance()));
} catch (InstantiationException | IllegalAccessException ex) {
Logger.getLogger(MiscTools.class.getName()).log(Level.SEVERE, null, ex);
}
return true; return true;
} }
@ -676,7 +680,7 @@ public final class MiscTools {
TreePath[] paths = tree.getSelectionPaths(); TreePath[] paths = tree.getSelectionPaths();
HashMap<DefaultMutableTreeNode,DefaultMutableTreeNode> hashmap_old = new HashMap<>(); HashMap<MutableTreeNode,MutableTreeNode> hashmap_old = new HashMap<>();
if(paths != null) { if(paths != null) {
@ -696,19 +700,19 @@ public final class MiscTools {
for (TreePath path : paths) { for (TreePath path : paths) {
if((DefaultMutableTreeNode)path.getLastPathComponent() != (DefaultMutableTreeNode)tree.getModel().getRoot()) if((MutableTreeNode)path.getLastPathComponent() != (MutableTreeNode)tree.getModel().getRoot())
{ {
Object parent = new_root; Object parent = new_root;
for(Object path_element:path.getPath()) { for(Object path_element:path.getPath()) {
if((DefaultMutableTreeNode)path_element != (DefaultMutableTreeNode)tree.getModel().getRoot()) { if((MutableTreeNode)path_element != (MutableTreeNode)tree.getModel().getRoot()) {
if(hashmap_old.get((DefaultMutableTreeNode)path_element) == null) { if(hashmap_old.get((MutableTreeNode)path_element) == null) {
Object node=null; Object node=null;
if((DefaultMutableTreeNode)path_element == (DefaultMutableTreeNode)path.getLastPathComponent()) { if((MutableTreeNode)path_element == (MutableTreeNode)path.getLastPathComponent()) {
node = path_element; node = path_element;
@ -725,18 +729,21 @@ public final class MiscTools {
} }
} }
if(parent != null) {
((DefaultMutableTreeNode)parent).add((MutableTreeNode)node); ((DefaultMutableTreeNode)parent).add((MutableTreeNode)node);
if(!((TreeNode)path_element).isLeaf()) { if(!((MutableTreeNode)path_element).isLeaf()) {
hashmap_old.put((DefaultMutableTreeNode)path_element, (DefaultMutableTreeNode)node); hashmap_old.put((MutableTreeNode)path_element, (MutableTreeNode)node);
parent = node; parent = node;
} }
}
} else { } else {
parent = hashmap_old.get((DefaultMutableTreeNode)path_element); parent = hashmap_old.get((MutableTreeNode)path_element);
} }
} }
} }