示例#1
0
 @Override
 public void preserveValues(CTabFolder folder) {
   preserveProperty(folder, PROP_TAB_POSITION, getTabPosition(folder));
   preserveProperty(folder, PROP_TAB_HEIGHT, folder.getTabHeight());
   preserveProperty(folder, PROP_MIN_MAX_STATE, getMinMaxState(folder));
   preserveProperty(folder, PROP_MINIMIZE_BOUNDS, getMinimizeBounds(folder));
   preserveProperty(folder, PROP_MINIMIZE_VISIBLE, folder.getMinimizeVisible());
   preserveProperty(folder, PROP_MAXIMIZE_BOUNDS, getMaximizeBounds(folder));
   preserveProperty(folder, PROP_MAXIMIZE_VISIBLE, folder.getMaximizeVisible());
   preserveProperty(folder, PROP_CHEVRON_BOUNDS, getChevronBounds(folder));
   preserveProperty(folder, PROP_CHEVRON_VISIBLE, getChevronVisible(folder));
   preserveProperty(folder, PROP_UNSELECTED_CLOSE_VISIBLE, folder.getUnselectedCloseVisible());
   preserveProperty(folder, PROP_SELECTION, folder.getSelection());
   preserveProperty(folder, PROP_SELECTION_BACKGROUND, getSelectionBackground(folder));
   preserveProperty(folder, PROP_SELECTION_FOREGROUND, getSelectionForeground(folder));
   preserveProperty(folder, PROP_SELECTION_BACKGROUND_IMAGE, getSelectionBackgroundImage(folder));
   preserveSelectionBgGradient(folder);
   preserveProperty(folder, PROP_BORDER_VISIBLE, folder.getBorderVisible());
 }
示例#2
0
 @Override
 public void renderChanges(CTabFolder folder) throws IOException {
   ControlLCAUtil.renderChanges(folder);
   WidgetLCAUtil.renderCustomVariant(folder);
   renderProperty(folder, PROP_TAB_POSITION, getTabPosition(folder), DEFAULT_TAB_POSITION);
   renderProperty(folder, PROP_TAB_HEIGHT, folder.getTabHeight(), DEFAULT_TAB_HEIGHT);
   renderProperty(folder, PROP_MIN_MAX_STATE, getMinMaxState(folder), DEFAULT_MIN_MAX_STATE);
   renderProperty(folder, PROP_MINIMIZE_BOUNDS, getMinimizeBounds(folder), ZERO_BOUNDS);
   renderProperty(folder, PROP_MINIMIZE_VISIBLE, folder.getMinimizeVisible(), false);
   renderProperty(folder, PROP_MAXIMIZE_BOUNDS, getMaximizeBounds(folder), ZERO_BOUNDS);
   renderProperty(folder, PROP_MAXIMIZE_VISIBLE, folder.getMaximizeVisible(), false);
   renderProperty(folder, PROP_CHEVRON_BOUNDS, getChevronBounds(folder), ZERO_BOUNDS);
   renderProperty(folder, PROP_CHEVRON_VISIBLE, getChevronVisible(folder), false);
   renderProperty(folder, PROP_UNSELECTED_CLOSE_VISIBLE, folder.getUnselectedCloseVisible(), true);
   renderProperty(folder, PROP_SELECTION, folder.getSelection(), null);
   renderProperty(folder, PROP_SELECTION_BACKGROUND, getSelectionBackground(folder), null);
   renderProperty(folder, PROP_SELECTION_FOREGROUND, getSelectionForeground(folder), null);
   renderProperty(
       folder, PROP_SELECTION_BACKGROUND_IMAGE, getSelectionBackgroundImage(folder), null);
   renderSelectionBackgroundGradient(folder);
   renderProperty(folder, PROP_BORDER_VISIBLE, folder.getBorderVisible(), false);
   renderListenDefaultSelection(folder);
 }
  @Override
  protected void draw(int part, int state, Rectangle bounds, GC gc) {
    updateEmptyClassIfNeeded();

    if (part == PART_BODY && !isPreviewingTab()) {
      /*
       * 7: Editor area - Minimize / maximize look brocken
       * https://github.com/jeeeyul/eclipse-themes/issues/issue/7
       *
       * Calculated tab height of empty tab seens to cause this problems.
       */
      if (tabFolder.getItemCount() == 0) {
        if (lastKnownTabHeight < 0) {
          lastKnownTabHeight = tabFolder.getFont().getFontData()[0].getHeight() + 19;
        }
        tabFolder.setTabHeight(lastKnownTabHeight);
      } else {
        tabFolder.setTabHeight(-1);
        lastKnownTabHeight = tabFolder.getTabHeight();
      }
    }

    super.draw(part, state, bounds, gc);
  }