📄 newtorrentwizard.java
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space
// Source File Name: NewTorrentWizard.java
package org.gudy.azureus2.ui.swt.maketorrent;
import com.aelitis.azureus.core.AzureusCore;
import java.io.File;
import java.net.URL;
import java.util.*;
import org.eclipse.swt.dnd.*;
import org.eclipse.swt.widgets.*;
import org.gudy.azureus2.core3.config.COConfigurationManager;
import org.gudy.azureus2.core3.torrent.TOTorrentCreator;
import org.gudy.azureus2.core3.util.TorrentUtils;
import org.gudy.azureus2.ui.swt.URLTransfer;
import org.gudy.azureus2.ui.swt.Utils;
import org.gudy.azureus2.ui.swt.wizard.Wizard;
// Referenced classes of package org.gudy.azureus2.ui.swt.maketorrent:
// ModePanel, DirectoryPanel, SingleFilePanel
public class NewTorrentWizard extends Wizard
{
static final int TT_LOCAL = 1;
static final int TT_EXTERNAL = 2;
static final int TT_DECENTRAL = 3;
static final String TT_EXTERNAL_DEFAULT = "http://";
static final String TT_DECENTRAL_DEFAULT = TorrentUtils.getDecentralisedEmptyURL().toString();
private static String default_open_dir = COConfigurationManager.getStringParameter("CreateTorrent.default.open", "");
private static String default_save_dir;
private static String comment = COConfigurationManager.getStringParameter("CreateTorrent.default.comment", "");
private static int tracker_type = COConfigurationManager.getIntParameter("CreateTorrent.default.trackertype", 1);
boolean create_from_dir;
String singlePath;
String directoryPath;
String savePath;
String trackerURL;
boolean computed_piece_size;
long manual_piece_size;
boolean useMultiTracker;
boolean useWebSeed;
private boolean addOtherHashes;
String multiTrackerConfig;
List trackers;
String webSeedConfig;
Map webseeds;
boolean autoOpen;
boolean autoHost;
boolean permitDHT;
boolean privateTorrent;
TOTorrentCreator creator;
public NewTorrentWizard(AzureusCore azureus_core, Display display)
{
super(azureus_core, "wizard.title");
singlePath = "";
directoryPath = "";
savePath = "";
trackerURL = "http://";
computed_piece_size = true;
useMultiTracker = false;
useWebSeed = false;
addOtherHashes = COConfigurationManager.getBooleanParameter("CreateTorrent.default.addhashes", false);
multiTrackerConfig = "";
trackers = new ArrayList();
webSeedConfig = "";
webseeds = new HashMap();
autoOpen = false;
autoHost = false;
permitDHT = true;
privateTorrent = false;
creator = null;
cancel.addListener(13, new Listener() {
final NewTorrentWizard this$0;
public void handleEvent(Event arg0)
{
if (creator != null)
creator.cancel();
}
{
this$0 = NewTorrentWizard.this;
super();
}
});
trackers.add(new ArrayList());
trackerURL = Utils.getLinkFromClipboard(display, false);
ModePanel panel = new ModePanel(this, null);
createDropTarget(getWizardWindow());
setFirstPanel(panel);
}
protected int getTrackerType()
{
return tracker_type;
}
protected void setTrackerType(int type)
{
tracker_type = type;
COConfigurationManager.setParameter("CreateTorrent.default.trackertype", tracker_type);
}
protected String getDefaultOpenDir()
{
return default_open_dir;
}
protected void setDefaultOpenDir(String d)
{
default_open_dir = d;
COConfigurationManager.setParameter("CreateTorrent.default.open", default_open_dir);
}
protected String getDefaultSaveDir()
{
return default_save_dir;
}
protected void setDefaultSaveDir(String d)
{
default_save_dir = d;
COConfigurationManager.setParameter("CreateTorrent.default.save", default_save_dir);
}
void setComment(String s)
{
comment = s;
COConfigurationManager.setParameter("CreateTorrent.default.comment", comment);
}
String getComment()
{
return comment;
}
private void createDropTarget(Control control)
{
DropTarget dropTarget = new DropTarget(control, 23);
dropTarget.setTransfer(new Transfer[] {
URLTransfer.getInstance(), FileTransfer.getInstance()
});
dropTarget.addDropListener(new DropTargetAdapter() {
final NewTorrentWizard this$0;
public void dragOver(DropTargetEvent event)
{
if (URLTransfer.getInstance().isSupportedType(event.currentDataType))
event.detail = (getCurrentPanel() instanceof ModePanel) ? 4 : 0;
}
public void drop(DropTargetEvent event)
{
if (event.data instanceof String[])
{
String sourceNames[] = (String[])(String[])event.data;
if (sourceNames == null || sourceNames.length != 1)
event.detail = 0;
if (event.detail == 0)
return;
File droppedFile = new File(sourceNames[0]);
if (getCurrentPanel() instanceof ModePanel)
{
if (droppedFile.isFile())
{
singlePath = droppedFile.getAbsolutePath();
((ModePanel)getCurrentPanel()).activateMode(true);
} else
if (droppedFile.isDirectory())
{
directoryPath = droppedFile.getAbsolutePath();
((ModePanel)getCurrentPanel()).activateMode(false);
}
} else
if (getCurrentPanel() instanceof DirectoryPanel)
{
if (droppedFile.isDirectory())
((DirectoryPanel)getCurrentPanel()).setFilename(droppedFile.getAbsolutePath());
} else
if ((getCurrentPanel() instanceof SingleFilePanel) && droppedFile.isFile())
((SingleFilePanel)getCurrentPanel()).setFilename(droppedFile.getAbsolutePath());
} else
if (getCurrentPanel() instanceof ModePanel)
{
trackerURL = ((org.gudy.azureus2.ui.swt.URLTransfer.URLType)event.data).linkURL;
((ModePanel)getCurrentPanel()).updateTrackerURL();
}
}
{
this$0 = NewTorrentWizard.this;
super();
}
});
}
protected void setPieceSizeComputed()
{
computed_piece_size = true;
}
public boolean getPieceSizeComputed()
{
return computed_piece_size;
}
protected void setPieceSizeManual(long _value)
{
computed_piece_size = false;
manual_piece_size = _value;
}
protected long getPieceSizeManual()
{
return manual_piece_size;
}
protected void setAddOtherHashes(boolean o)
{
addOtherHashes = o;
COConfigurationManager.setParameter("CreateTorrent.default.addhashes", addOtherHashes);
}
protected boolean getAddOtherHashes()
{
return addOtherHashes;
}
static
{
default_save_dir = COConfigurationManager.getStringParameter("CreateTorrent.default.save", "");
if (default_save_dir.length() == 0)
default_save_dir = COConfigurationManager.getStringParameter("General_sDefaultTorrent_Directory", "");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -