📄 modepanel.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: ModePanel.java
package org.gudy.azureus2.ui.swt.maketorrent;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Iterator;
import java.util.List;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.*;
import org.gudy.azureus2.core3.config.COConfigurationManager;
import org.gudy.azureus2.core3.internat.MessageText;
import org.gudy.azureus2.core3.tracker.util.TRTrackerUtils;
import org.gudy.azureus2.core3.util.*;
import org.gudy.azureus2.ui.swt.Messages;
import org.gudy.azureus2.ui.swt.mainwindow.Colors;
import org.gudy.azureus2.ui.swt.wizard.*;
// Referenced classes of package org.gudy.azureus2.ui.swt.maketorrent:
// DirectoryPanel, MultiTrackerPanel, NewTorrentWizard, SingleFilePanel,
// WebSeedPanel
public class ModePanel extends AbstractWizardPanel
{
private Button bSingle;
private Button bDirectory;
private Combo tracker;
public ModePanel(NewTorrentWizard wizard, AbstractWizardPanel previous)
{
AbstractWizardPanel(wizard, previous);
}
public void show()
{
final NewTorrentWizard wizard = (NewTorrentWizard)this.wizard;
wizard.setTitle(MessageText.getString("wizard.mode"));
wizard.setCurrentInfo(MessageText.getString("wizard.singlefile.help"));
Composite rootPanel = wizard.getPanel();
GridLayout layout = new GridLayout();
layout.numColumns = 1;
rootPanel.setLayout(layout);
Composite panel = new Composite(rootPanel, 0x400000);
GridData gridData = new GridData(772);
panel.setLayoutData(gridData);
layout = new GridLayout();
layout.numColumns = 4;
panel.setLayout(layout);
final Button btnLocalTracker = new Button(panel, 16);
Messages.setLanguageText(btnLocalTracker, "wizard.tracker.local");
gridData = new GridData();
gridData.horizontalSpan = 2;
btnLocalTracker.setLayoutData(gridData);
final Button btnSSL = new Button(panel, 32);
Messages.setLanguageText(btnSSL, "wizard.tracker.ssl");
gridData = new GridData(128);
gridData.horizontalSpan = 2;
btnSSL.setLayoutData(gridData);
final String localTrackerHost = COConfigurationManager.getStringParameter("Tracker IP", "");
final int localTrackerPort = COConfigurationManager.getIntParameter("Tracker Port", 6969);
final int localTrackerPortSSL = COConfigurationManager.getIntParameter("Tracker Port SSL", 7000);
final boolean SSLEnabled = COConfigurationManager.getBooleanParameter("Tracker Port SSL Enable", false);
final String localTrackerUrl[] = new String[1];
boolean showLocal = TRTrackerUtils.isTrackerEnabled();
final Label labelLocalAnnounce = showLocal ? new Label(panel, 0) : null;
final Label localTrackerValue = new Label(panel, 0);
if (showLocal)
{
Messages.setLanguageText(labelLocalAnnounce, "wizard.announceUrl");
localTrackerUrl[0] = (new StringBuilder()).append("http://").append(UrlUtils.convertIPV6Host(localTrackerHost)).append(":").append(localTrackerPort).append("/announce").toString();
localTrackerValue.setText(localTrackerUrl[0]);
btnSSL.setEnabled(SSLEnabled);
gridData = new GridData();
gridData.horizontalSpan = 3;
} else
{
localTrackerUrl[0] = "";
Messages.setLanguageText(localTrackerValue, "wizard.tracker.howToLocal");
btnLocalTracker.setSelection(false);
btnSSL.setEnabled(false);
btnLocalTracker.setEnabled(false);
localTrackerValue.setEnabled(true);
if (wizard.getTrackerType() == 1)
wizard.setTrackerType(2);
gridData = new GridData();
gridData.horizontalSpan = 4;
}
localTrackerValue.setLayoutData(gridData);
int tracker_type = wizard.getTrackerType();
if (tracker_type == 1)
setTrackerUrl(localTrackerUrl[0]);
else
if (tracker_type == 2)
setTrackerUrl("http://");
else
setTrackerUrl(NewTorrentWizard.TT_DECENTRAL_DEFAULT);
final Button btnExternalTracker = new Button(panel, 16);
Messages.setLanguageText(btnExternalTracker, "wizard.tracker.external");
gridData = new GridData();
gridData.horizontalSpan = 4;
btnExternalTracker.setLayoutData(gridData);
final Label labelExternalAnnounce = new Label(panel, 0);
Messages.setLanguageText(labelExternalAnnounce, "wizard.announceUrl");
btnLocalTracker.setSelection(tracker_type == 1);
if (showLocal)
localTrackerValue.setEnabled(tracker_type == 1);
btnSSL.setEnabled(SSLEnabled && tracker_type == 1);
btnExternalTracker.setSelection(tracker_type == 2);
labelExternalAnnounce.setEnabled(tracker_type == 2);
tracker = new Combo(panel, 0);
gridData = new GridData(768);
gridData.horizontalSpan = 3;
tracker.setLayoutData(gridData);
List trackers = TrackersUtil.getInstance().getTrackersList();
for (Iterator iter = trackers.iterator(); iter.hasNext(); tracker.add((String)iter.next()));
tracker.addModifyListener(new ModifyListener() {
final NewTorrentWizard val$wizard;
final ModePanel this$0;
public void modifyText(ModifyEvent arg0)
{
String text = tracker.getText();
setTrackerUrl(text);
boolean valid = true;
String errorMessage = "";
try
{
new URL(text);
}
catch (MalformedURLException e)
{
valid = false;
errorMessage = MessageText.getString("wizard.invalidurl");
}
wizard.setErrorMessage(errorMessage);
wizard.setNextEnabled(valid);
}
{
this$0 = ModePanel.this;
wizard = newtorrentwizard;
Object();
}
});
tracker.addListener(13, new Listener() {
final NewTorrentWizard val$wizard;
final ModePanel this$0;
public void handleEvent(Event e)
{
String text = tracker.getText();
setTrackerUrl(text);
boolean valid = true;
String errorMessage = "";
try
{
new URL(text);
}
catch (MalformedURLException ex)
{
valid = false;
errorMessage = MessageText.getString("wizard.invalidurl");
}
wizard.setErrorMessage(errorMessage);
wizard.setNextEnabled(valid);
}
{
this$0 = ModePanel.this;
wizard = newtorrentwizard;
Object();
}
});
updateTrackerURL();
tracker.setEnabled(tracker_type == 2);
new Label(panel, 0);
final Button btnDHTTracker = new Button(panel, 16);
Messages.setLanguageText(btnDHTTracker, "wizard.tracker.dht");
gridData = new GridData();
gridData.horizontalSpan = 4;
btnDHTTracker.setLayoutData(gridData);
btnDHTTracker.setSelection(tracker_type == 3);
panel = new Composite(rootPanel, 0x400000);
gridData = new GridData(772);
panel.setLayoutData(gridData);
layout = new GridLayout();
layout.numColumns = 4;
panel.setLayout(layout);
Label label = new Label(panel, 258);
gridData = new GridData(768);
gridData.horizontalSpan = 4;
label.setLayoutData(gridData);
final Button btnMultiTracker = new Button(panel, 32);
Messages.setLanguageText(btnMultiTracker, "wizard.multitracker");
gridData = new GridData();
gridData.horizontalSpan = 2;
btnMultiTracker.setLayoutData(gridData);
btnMultiTracker.addListener(13, new Listener() {
final NewTorrentWizard val$wizard;
final Button val$btnMultiTracker;
final ModePanel this$0;
public void handleEvent(Event arg0)
{
wizard.useMultiTracker = btnMultiTracker.getSelection();
}
{
this$0 = ModePanel.this;
wizard = newtorrentwizard;
btnMultiTracker = button;
Object();
}
});
btnMultiTracker.setSelection(wizard.useMultiTracker);
btnMultiTracker.setEnabled(tracker_type != 3);
final Button btnWebSeed = new Button(panel, 32);
Messages.setLanguageText(btnWebSeed, "wizard.webseed");
gridData = new GridData();
gridData.horizontalSpan = 2;
btnWebSeed.setLayoutData(gridData);
btnWebSeed.addListener(13, new Listener() {
final NewTorrentWizard val$wizard;
final Button val$btnWebSeed;
final ModePanel this$0;
public void handleEvent(Event arg0)
{
wizard.useWebSeed = btnWebSeed.getSelection();
}
{
this$0 = ModePanel.this;
wizard = newtorrentwizard;
btnWebSeed = button;
Object();
}
});
btnWebSeed.setSelection(wizard.useWebSeed);
btnWebSeed.setEnabled(tracker_type != 3);
final Button btnExtraHashes = new Button(panel, 32);
Messages.setLanguageText(btnExtraHashes, "wizard.createtorrent.extrahashes");
gridData = new GridData();
gridData.horizontalSpan = 4;
btnExtraHashes.setLayoutData(gridData);
btnExtraHashes.addListener(13, new Listener() {
final NewTorrentWizard val$wizard;
final Button val$btnExtraHashes;
final ModePanel this$0;
public void handleEvent(Event arg0)
{
wizard.setAddOtherHashes(btnExtraHashes.getSelection());
}
{
this$0 = ModePanel.this;
wizard = newtorrentwizard;
btnExtraHashes = button;
Object();
}
});
btnExtraHashes.setSelection(wizard.getAddOtherHashes());
panel = new Composite(rootPanel, 0);
gridData = new GridData(772);
panel.setLayoutData(gridData);
layout = new GridLayout();
layout.numColumns = 4;
panel.setLayout(layout);
Label label1 = new Label(panel, 258);
gridData = new GridData(768);
gridData.horizontalSpan = 4;
label1.setLayoutData(gridData);
bSingle = new Button(panel, 16);
bSingle.setSelection(!wizard.create_from_dir);
gridData = new GridData(768);
gridData.horizontalSpan = 2;
bSingle.setLayoutData(gridData);
Messages.setLanguageText(bSingle, "wizard.singlefile");
bSingle.addListener(13, new Listener() {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -