⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rootpreferencepage.java

📁 SANCHO
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/* * Copyright (C) 2004-2005 Rutger M. Ovidius for use with the sancho project. * See LICENSE.txt for license information. */package sancho.view.preferences;import java.io.File;import java.io.FilenameFilter;import java.util.ArrayList;import java.util.StringTokenizer;import org.eclipse.swt.SWT;import org.eclipse.swt.events.SelectionAdapter;import org.eclipse.swt.events.SelectionEvent;import org.eclipse.swt.layout.GridData;import org.eclipse.swt.widgets.Button;import org.eclipse.swt.widgets.Combo;import org.eclipse.swt.widgets.Composite;import org.eclipse.swt.widgets.Control;import org.eclipse.swt.widgets.FileDialog;import org.eclipse.swt.widgets.Label;import org.eclipse.swt.widgets.List;import org.eclipse.swt.widgets.TabFolder;import org.eclipse.swt.widgets.Text;import sancho.utility.VersionInfo;import sancho.view.utility.SResources;import sancho.view.utility.WidgetFactory;public class RootPreferencePage extends CPreferencePage {  public RootPreferencePage(String title) {    super(title);  }  protected Control createContents(Composite parent) {    Composite composite = new Composite(parent, SWT.NONE);    composite.setLayout(WidgetFactory.createGridLayout(1, 0, 0, 0, 0, false));    TabFolder tabFolder = new TabFolder(composite, SWT.TOP);    tabFolder.setLayoutData(new GridData(GridData.FILL_BOTH));    createGeneralTab(tabFolder);    createDownloadsTab(tabFolder);    createSearchTab(tabFolder);    createServersTab(tabFolder);    createConsoleTab(tabFolder);    createGraphTab(tabFolder);    createRoomsTab(tabFolder);    createIRCTab(tabFolder);    createWebBrowserTab(tabFolder);    return composite;  }  protected void createGeneralTab(TabFolder tabFolder) {    Composite composite = createNewTab(tabFolder, "p.general");    String[] extensions;    if (VersionInfo.getOSPlatform().equals("Windows"))      extensions = new String[]{"*.exe;*.bat"};    else      extensions = new String[]{"*"};    createInformationLabel(composite, "p.coreExecutableInfo");    setupFileEditor("coreExecutable", "p.r.general.coreExecutable", extensions, composite);    setupBooleanEditor("killSpawnedCoreOnExit", "p.r.general.killSpawnedCoreOnExit", composite);    if (!VersionInfo.getOSPlatform().equals("Windows")) {      createSeparator(composite);      createInformationLabel(composite, "p.webBrowserInfo");      setupFileEditor("defaultWebBrowser", "p.r.general.defaultBrowser", extensions, composite);    }    createSeparator(composite);    createInformationLabel(composite, "p.localeInfo");    Label l = new Label(composite, SWT.NONE);    l.setText(SResources.getString("p.r.general.locale"));    final Combo c = new Combo(composite, SWT.READ_ONLY);    String currentValue = PreferenceLoader.loadString("locale");    c.add(SResources.S_ES);    String[] s = getLocales();    for (int i = 0; i < s.length; i++) {      c.add(s[i]);      if (s[i].equals(currentValue)) {        c.select(i + 1);      }    }    c.addSelectionListener(new SelectionAdapter() {      public void widgetSelected(SelectionEvent e) {        PreferenceLoader.getPreferenceStore().setValue("locale", c.getItem(c.getSelectionIndex()));      }    });    createSeparator(composite);    setupBooleanEditor("autoReconnect", "p.r.general.autoReconnect", composite);    setupIntegerEditor("autoReconnectDelay", "p.r.general.autoReconnectDelay", 1, 10000, composite);    createSeparator(composite);    if (SWT.getPlatform().equals("win32") || SWT.getPlatform().equals("gtk")) {      setupBooleanEditor("minimizeOnClose", "p.r.general.systrayOnClose", composite);      setupBooleanEditor("systrayOnMinimize", "p.r.general.systrayOnMinimize", composite);    }    setupBooleanEditor("allowMultipleInstances", "p.r.general.multipleInstances", composite);    setupBooleanEditor("hostManagerOnStart", "p.r.general.hostManagerOnStart", composite);    setupBooleanEditor("useLastFile", "p.r.general.useLastFile", composite);    setupBooleanEditor("killCoreOnExit", "p.r.general.killCoreOnExit", composite);    setupBooleanEditor("versionCheck", "p.r.general.versionCheck", composite);    composite.setLayout(WidgetFactory.createGridLayout(3, 5, 5, 5, 5, false));  }  protected void createDownloadsTab(TabFolder tabFolder) {    Composite composite = createNewTab(tabFolder, "tab.transfers");    composite.setLayout(WidgetFactory.createGridLayout(1, 0, 0, 0, 0, false));    composite.setLayoutData(new GridData(GridData.FILL_BOTH));    TabFolder mainTabFolder = new TabFolder(composite, SWT.BOTTOM);    mainTabFolder.setLayoutData(new GridData(GridData.FILL_BOTH));    createDownloadsGeneral(mainTabFolder);    createDownloadsPreview(mainTabFolder);    createDownloadsExplorer(mainTabFolder);  }  protected void createDownloadsGeneral(TabFolder tabFolder) {    Composite composite = createNewTab(tabFolder, "p.general");    createInformationLabel(composite, "p.delayInfo");    setupIntegerEditor("updateDelay", "p.r.downloads.updateDelay", 0, 600, composite);    createSeparator(composite);    setupBooleanEditor("pollUpStats", "p.r.downloads.pollUpstats", composite);    setupIntegerEditor("pollDelay", "p.r.downloads.pollDelay", 1, 600, composite);    createSeparator(composite);    setupIntegerEditor("requestFileInfoDelay", "p.r.downloads.requestFileInfoDelay", 0, 99999, composite);    createSeparator(composite);        setupBooleanEditor("displayChunkGraphs", "p.r.downloads.displayChunkGraphs", composite);    setupBooleanEditor("tableCellEditors", "p.r.downloads.tableCellEditors", composite);    setupBooleanEditor("dragAndDrop", "p.r.downloads.dragAndDrop", composite);    setupBooleanEditor("maintainSortOrder", "p.r.downloads.maintainSortOrder", composite);    setupBooleanEditor("downloadCompleteDialog", "p.r.downloads.downloadCompleteDialog", composite);    setupBooleanEditor("downloadCompleteLog", "p.r.downloads.downloadCompleteLog", composite);    setupBooleanEditor("mldonkey.InterestedInSources", "p.r.downloads.interestedInSources", composite);        // setupBooleanEditor("downloadsTabsOnBottom", "p.r.downloads.downloadTabsOnBottom", composite);    composite.setLayout(WidgetFactory.createGridLayout(3, 5, 5, 5, 5, false));  }  protected void createDownloadsPreview(TabFolder tabFolder) {    Composite composite = createNewTab(tabFolder, "m.d.preview");    String[] extensions;    if (VersionInfo.getOSPlatform().equals("Windows"))      extensions = new String[]{"*.exe;*.bat"};    else      extensions = new String[]{"*"};    createInformationLabel(composite, "p.previewInfo");    setupFileEditor("previewExecutable", "p.r.downloads.previewExecutable", extensions, composite);    setupDirectoryEditor("previewWorkingDirectory", "p.r.downloads.previewWorkingDirectory", composite);    createSeparator(composite);    // real ugly    // -----------------------------------------------------------------    final ArrayList extList = new ArrayList();    final ArrayList progList = new ArrayList();    GridData gd;    Composite pComposite = new Composite(composite, SWT.NONE);    gd = new GridData(GridData.FILL_HORIZONTAL);    gd.horizontalSpan = 3;    pComposite.setLayoutData(gd);    pComposite.setLayout(WidgetFactory.createGridLayout(2, 0, 0, 0, 0, false));    Composite pSubComp = new Composite(pComposite, SWT.NONE);    pSubComp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));    pSubComp.setLayout(WidgetFactory.createGridLayout(5, 0, 0, 0, 5, false));    Label info = new Label(pSubComp, SWT.NONE);    info.setText(SResources.getString("p.previewExtensionsInfo"));    gd = new GridData(GridData.FILL_HORIZONTAL);    gd.horizontalSpan = 5;    info.setLayoutData(gd);    Label l = new Label(pSubComp, SWT.NONE);    l.setText(SResources.getString("l.ext"));    final Text extText = new Text(pSubComp, SWT.SINGLE | SWT.BORDER);    extText.setText("mp3");    new Label(pSubComp, SWT.NONE).setText("=");    final Text progText = new Text(pSubComp, SWT.SINGLE | SWT.BORDER);    progText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));    Button browseButton = new Button(pSubComp, SWT.NONE);    browseButton.setText(SResources.getString("b.browse"));    browseButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));    browseButton.addSelectionListener(new SelectionAdapter() {      public void widgetSelected(SelectionEvent e) {        FileDialog fileDialog = new FileDialog(progText.getShell(), SWT.SINGLE);        if (fileDialog.open() != null) {          String path = fileDialog.getFilterPath() + System.getProperty("file.separator");          path += fileDialog.getFileName();          progText.setText(path);        }      }    });    gd = new GridData(GridData.FILL_HORIZONTAL);    gd.horizontalSpan = 5;    Composite butComp = new Composite(pSubComp, SWT.NONE);    butComp.setLayout(WidgetFactory.createGridLayout(2, 0, 0, 0, 0, false));    butComp.setLayoutData(gd);    Button addButton = new Button(butComp, SWT.NONE);    addButton.setText(SResources.getString("b.add"));    addButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));    Button remButton = new Button(butComp, SWT.NONE);    remButton.setText(SResources.getString("b.remove"));    remButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));    final List list = new List(pComposite, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -