📄 modepanel.java
字号:
panel.setLayout(layout);
//Line:
// ------------------------------
Label label = new Label(panel, SWT.SEPARATOR | SWT.HORIZONTAL);
gridData = new GridData(GridData.FILL_HORIZONTAL);
gridData.horizontalSpan = 4;
label.setLayoutData(gridData);
//Line:
// [] add Multi-tracker information
final Button btnMultiTracker = new Button(panel,SWT.CHECK);
Messages.setLanguageText(btnMultiTracker, "wizard.multitracker");
gridData = new GridData();
gridData.horizontalSpan = 4;
btnMultiTracker.setLayoutData(gridData);
btnMultiTracker.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event arg0) {
((NewTorrentWizard) wizard).useMultiTracker = btnMultiTracker.getSelection();
}
});
btnMultiTracker.setSelection(((NewTorrentWizard) wizard).useMultiTracker);
btnMultiTracker.setEnabled( tracker_type != NewTorrentWizard.TT_DECENTRAL);
//Line:
// include hashes for other networks (
final Button btnExtraHashes = new Button(panel,SWT.CHECK);
Messages.setLanguageText(btnExtraHashes, "wizard.createtorrent.extrahashes");
gridData = new GridData();
gridData.horizontalSpan = 4;
btnExtraHashes.setLayoutData(gridData);
btnExtraHashes.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event arg0) {
((NewTorrentWizard) wizard).setAddOtherHashes( btnExtraHashes.getSelection());
}
});
btnExtraHashes.setSelection(((NewTorrentWizard) wizard).getAddOtherHashes());
// add another panel due to control oversize issues
// the "hack" is staying until a more satisfactory solution can be found
panel = new Composite(rootPanel, SWT.NONE);
gridData = new GridData(GridData.VERTICAL_ALIGN_CENTER | GridData.FILL_HORIZONTAL);
panel.setLayoutData(gridData);
layout = new GridLayout();
layout.numColumns = 4;
panel.setLayout(layout);
//Line:
// ------------------------------
Label label1 = new Label(panel, SWT.SEPARATOR | SWT.HORIZONTAL);
gridData = new GridData(GridData.FILL_HORIZONTAL);
gridData.horizontalSpan = 4;
label1.setLayoutData(gridData);
//Line:
// O single file O Directory mode
bSingle = new Button(panel, SWT.RADIO);
bSingle.setSelection(!((NewTorrentWizard) wizard).create_from_dir);
gridData = new GridData(GridData.FILL_HORIZONTAL);
gridData.horizontalSpan = 2;
bSingle.setLayoutData(gridData);
Messages.setLanguageText(bSingle, "wizard.singlefile");
bSingle.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event arg0) {
activateMode(true);
}
});
bDirectory = new Button(panel, SWT.RADIO);
bDirectory.setSelection(((NewTorrentWizard) wizard).create_from_dir);
gridData = new GridData(GridData.FILL_HORIZONTAL);
gridData.horizontalSpan = 2;
bDirectory.setLayoutData(gridData);
Messages.setLanguageText(bDirectory, "wizard.directory");
bDirectory.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event arg0) {
activateMode(false);
}
});
btnSSL.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event arg0) {
String url;
if ( btnSSL.getSelection()){
url = "https://" + localTrackerHost + ":" + localTrackerPortSSL + "/announce";
}else{
url = "http://" + localTrackerHost + ":" + localTrackerPort + "/announce";
}
localTrackerValue.setText(url);
localTrackerUrl[0] = url;
setTrackerUrl(url);
}
});
btnLocalTracker.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event arg0) {
wizard.setTrackerType( NewTorrentWizard.TT_LOCAL );
setTrackerUrl(localTrackerUrl[0]);
updateTrackerURL();
btnExternalTracker.setSelection(false);
btnLocalTracker.setSelection(true);
btnDHTTracker.setSelection(false);
tracker.setEnabled(false);
btnSSL.setEnabled(SSLEnabled);
if(labelLocalAnnounce != null) {labelLocalAnnounce.setEnabled(true);}
localTrackerValue.setEnabled(true);
labelExternalAnnounce.setEnabled(false);
btnMultiTracker.setEnabled(true);
}
});
btnExternalTracker.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event arg0) {
wizard.setTrackerType( NewTorrentWizard.TT_EXTERNAL );
setTrackerUrl( NewTorrentWizard.TT_EXTERNAL_DEFAULT );
updateTrackerURL();
btnLocalTracker.setSelection(false);
btnExternalTracker.setSelection(true);
btnDHTTracker.setSelection(false);
tracker.setEnabled(true);
btnSSL.setEnabled(false);
if(labelLocalAnnounce != null) {labelLocalAnnounce.setEnabled(false);}
localTrackerValue.setEnabled(false);
labelExternalAnnounce.setEnabled(true);
btnMultiTracker.setEnabled(true);
}
});
btnDHTTracker.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event arg0) {
wizard.setTrackerType( NewTorrentWizard.TT_DECENTRAL );
setTrackerUrl( NewTorrentWizard.TT_DECENTRAL_DEFAULT );
updateTrackerURL();
btnLocalTracker.setSelection(false);
btnExternalTracker.setSelection(false);
btnDHTTracker.setSelection(true);
tracker.setEnabled(false);
btnSSL.setEnabled(false);
if(labelLocalAnnounce != null) {labelLocalAnnounce.setEnabled(false);}
localTrackerValue.setEnabled(false);
labelExternalAnnounce.setEnabled(false);
btnMultiTracker.setEnabled(false);
}
});
//Line:
// ------------------------------
label = new Label(panel, SWT.SEPARATOR | SWT.HORIZONTAL);
gridData = new GridData(GridData.FILL_HORIZONTAL);
gridData.horizontalSpan = 4;
label.setLayoutData(gridData);
//Line:
//Comment: [ ]
label = new Label(panel, SWT.NULL);
Messages.setLanguageText(label, "wizard.comment");
final Text comment = new Text(panel, SWT.BORDER);
gridData = new GridData(GridData.FILL_HORIZONTAL);
gridData.horizontalSpan = 3;
comment.setLayoutData(gridData);
comment.setText(((NewTorrentWizard) wizard).getComment());
comment.addListener(SWT.Modify, new Listener() {
public void handleEvent(Event event) {
((NewTorrentWizard) wizard).setComment(comment.getText());
}
});
label = new Label(panel, SWT.NULL);
gridData = new GridData(GridData.FILL_HORIZONTAL);
gridData.horizontalSpan = 4;
label.setLayoutData(gridData);
label.setText("\n");
label = new Label(panel, SWT.NULL);
gridData = new GridData(GridData.FILL_HORIZONTAL);
gridData.horizontalSpan = 4;
label.setLayoutData(gridData);
label.setForeground(Colors.blue);
Messages.setLanguageText(label, "wizard.hint.mode");
}
/*
* (non-Javadoc)
*
* @see org.gudy.azureus2.ui.swt.maketorrent.IWizardPanel#getNextPanel()
*/
public IWizardPanel getNextPanel() {
//OSX work-arround to Fix SWT BUG #43396 :
//Combo doesn't fire Selection Event
if(Constants.isOSX) {
//In case we're not using the localTracker, refresh the
//Tracker URL from the Combo text
if( ((NewTorrentWizard) wizard).getTrackerType() == NewTorrentWizard.TT_EXTERNAL ){
setTrackerUrl(tracker.getText());
}
}
if(((NewTorrentWizard) wizard).useMultiTracker)
return new MultiTrackerPanel((NewTorrentWizard) wizard, this);
if (((NewTorrentWizard) wizard).create_from_dir) {
return new DirectoryPanel(((NewTorrentWizard) wizard), this);
} else {
return new SingleFilePanel(((NewTorrentWizard) wizard), this);
}
}
/*
* (non-Javadoc)
*
* @see org.gudy.azureus2.ui.swt.maketorrent.IWizardPanel#isNextEnabled()
*/
public boolean isNextEnabled() {
return true;
}
void activateMode(boolean singleFile) {
wizard.setCurrentInfo(MessageText.getString(singleFile ? "wizard.singlefile.help" : "wizard.directory.help"));
((NewTorrentWizard) wizard).create_from_dir = !singleFile;
bDirectory.setSelection(!singleFile);
bSingle.setSelection(singleFile);
}
void updateTrackerURL() {
tracker.setText(((NewTorrentWizard) wizard).trackerURL);
}
void setTrackerUrl(String url) {
((NewTorrentWizard) wizard).trackerURL = url;
String config = ((NewTorrentWizard) wizard).multiTrackerConfig;
if(config.equals("")) {
List list = (List) ((NewTorrentWizard) wizard).trackers.get(0);
if(list.size() > 0)
list.remove(0);
list.add(url);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -