示例#1
0
  private CTabFolder createTabFolder(Composite parent) {
    final Composite body = new Composite(parent, SWT.NONE);
    GridLayoutFactory.fillDefaults().spacing(0, 0).margins(0, 0).applyTo(body);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(body);

    tabFolder = new EmbeddedTabFolder(body, SWT.BORDER);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(tabFolder);

    IPreferenceStore store = PlatformUI.getPreferenceStore();
    int minimumCharacters = store.getInt(IWorkbenchPreferenceConstants.VIEW_MINIMUM_CHARACTERS);
    if (minimumCharacters >= 0) {
      tabFolder.setMinimumCharacters(minimumCharacters);
    }

    tabFolder.setUnselectedCloseVisible(false);
    tabFolder.setUnselectedImageVisible(true);

    // ThemeManagerAdapter themePreferences = new ThemeManagerAdapter(
    // PlatformUI.getWorkbench().getThemeManager());
    //
    // DefaultThemeListener themeListener = new DefaultThemeListener(
    // tabFolder, themePreferences);
    // themePreferences.addListener(themeListener);
    // PreferenceStoreAdapter apiPreferences = new PreferenceStoreAdapter(
    // PrefUtil.getAPIPreferenceStore());
    // new DefaultSimpleTabListener(apiPreferences,
    // IWorkbenchPreferenceConstants.SHOW_TRADITIONAL_STYLE_TABS,
    // tabFolder);

    final Color c1 = new Color(Display.getCurrent(), 232, 238, 244);
    final Color c2 = new Color(Display.getCurrent(), 153, 180, 209);
    CTabFolder control = (CTabFolder) tabFolder;
    control.setSelectionBackground(new Color[] {c1, c2}, new int[] {100}, true);
    control.addDisposeListener(
        new DisposeListener() {
          public void widgetDisposed(DisposeEvent e) {
            c1.dispose();
            c2.dispose();
          }
        });

    // tabFolder.getControl().addKeyListener(keyListener);
    return tabFolder;
  }