• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java TabLabel类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.intellij.ui.tabs.impl.TabLabel的典型用法代码示例。如果您正苦于以下问题:Java TabLabel类的具体用法?Java TabLabel怎么用?Java TabLabel使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



TabLabel类属于com.intellij.ui.tabs.impl包,在下文中一共展示了TabLabel类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: applyTabLayout

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Override
protected boolean applyTabLayout(SingleRowPassInfo data, TabLabel label, int length, int deltaToFit) {
  if (data.requiredLength > data.toFitLength) {
    length = getStrategy().getLengthIncrement(label.getPreferredSize());
    final int moreRectSize = getStrategy().getMoreRectAxisSize();
    if (data.position + length > data.toFitLength - moreRectSize) {
      final int clippedLength = getStrategy().drawPartialOverflowTabs() ? data.toFitLength - data.position - moreRectSize - 4 : 0;
      super.applyTabLayout(data, label, clippedLength, deltaToFit);
      label.setAlignmentToCenter(false);
      label.setActionPanelVisible(false);
      return false;
    }
  }
  label.setActionPanelVisible(true);
  return super.applyTabLayout(data, label, length, deltaToFit);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:17,代码来源:ScrollableSingleRowLayout.java


示例2: doPaintInactive

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Override
protected void doPaintInactive(Graphics2D g2d,
                               boolean leftGhostExists,
                               TabLabel label,
                               Rectangle effectiveBounds,
                               boolean rightGhostExists, int row, int column) {
  Insets insets = getTabsBorder().getEffectiveBorder();
  final boolean dark = UIUtil.isUnderDarcula();
  int _x = effectiveBounds.x + insets.left;
  int _y = effectiveBounds.y + insets.top + 3;
  int _width = effectiveBounds.width - insets.left - insets.right;
  int _height = effectiveBounds.height - insets.top - insets.bottom - 3;
  _height -= TabsUtil.ACTIVE_TAB_UNDERLINE_HEIGHT;
  if (dark) {
    g2d.setPaint(UIUtil.getGradientPaint(_x, _y, ColorUtil.shift(UIUtil.getListBackground(), 1.3), _x, _y + effectiveBounds.height, UIUtil.getPanelBackground()));
    g2d.fillRect(_x, _y, _width, _height);

    g2d.setColor(Gray._0.withAlpha(50));
  } else {
    g2d.setPaint(UIUtil.getGradientPaint(_x, _y, new Color(255, 255, 255, 180), _x, _y + effectiveBounds.height, new Color(255, 255, 255, 100)));
    g2d.fillRect(_x, _y, _width, _height);

    g2d.setColor(new Color(255, 255, 255, 100));
    g2d.drawRect(_x, _y, _width - 1, _height - 1);
  }
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:27,代码来源:JBRunnerTabs.java


示例3: add

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Override
public Component add(Component comp) {
    //set tab cursor
    if (comp instanceof TabLabel) {
        comp.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
    }
    return super.add(comp);
}
 
开发者ID:FingerArt,项目名称:ApiDebugger,代码行数:9,代码来源:JBDebuggerTab.java


示例4: findLastVisibleLabel

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Nullable
@Override
protected TabLabel findLastVisibleLabel(SingleRowPassInfo data) {
  int i = data.toLayout.size()-1;
  while(i > 0) {
    final TabInfo info = data.toLayout.get(i);
    final TabLabel label = myTabs.myInfo2Label.get(info);
    if (!label.getBounds().isEmpty()) {
      return label;
    }
    i--;
  }
  return null;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:15,代码来源:ScrollableSingleRowLayout.java


示例5: isDragOut

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Override
public boolean isDragOut(@NotNull TabLabel tabLabel, int deltaX, int deltaY) {
  if (myLastTableLayout == null) {
    return super.isDragOut(tabLabel, deltaX, deltaY);
  }

  Rectangle area = new Rectangle(myLastTableLayout.toFitRec.width, tabLabel.getBounds().height);
  for (int i = 0; i < myLastTableLayout.myVisibleInfos.size(); i++) {
    area = area.union(myTabs.myInfo2Label.get(myLastTableLayout.myVisibleInfos.get(i)).getBounds());
  }
  return Math.abs(deltaY) > area.height * getDragOutMultiplier();
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:13,代码来源:TableLayout.java


示例6: shouldAddToGlobal

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
public boolean shouldAddToGlobal(Point point) {
  final TabLabel label = getSelectedLabel();
  if (label == null || point == null) {
    return true;
  }
  final Rectangle bounds = label.getBounds();
  return point.y <= bounds.y + bounds.height;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:9,代码来源:JBRunnerTabs.java


示例7: processDropOver

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Override
public void processDropOver(TabInfo over, RelativePoint relativePoint) {
  final Point point = relativePoint.getPoint(getComponent());
  myShowDropLocation = shouldAddToGlobal(point);
  super.processDropOver(over, relativePoint);
  for (Map.Entry<TabInfo, TabLabel> entry : myInfo2Label.entrySet()) {
    final TabLabel label = entry.getValue();
    if (label.getBounds().contains(point) && myDropInfo != entry.getKey()) {
      select(entry.getKey(), false);
      break;
    }
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:14,代码来源:JBRunnerTabs.java


示例8: getTarget

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
private static Component getTarget(Component c) {
  final Component target;

  final Container list = SwingUtilities.getAncestorOfClass(JList.class, c);
  if (list != null) {
    target = list;
  }
  else {
    final Container tree = SwingUtilities.getAncestorOfClass(JTree.class, c);
    if (tree != null) {
      target = tree;
    }
    else {
      final Container table = SwingUtilities.getAncestorOfClass(JTable.class, c);
      if (table != null) {
        target = table;
      }
      else {
        final Container box = SwingUtilities.getAncestorOfClass(JComboBox.class, c);
        if (box != null) {
          target = box;
        }
        else {
          final Container tabLabel = SwingUtilities.getAncestorOfClass(TabLabel.class, c);
          target = tabLabel == null ? c : tabLabel;
        }
      }
    }
  }
  return target;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:32,代码来源:DeferredIconImpl.java


示例9: selectTab

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
private void selectTab(@NotNull final String tabName) {
  JBRunnerTabs tabs = myRobot.finder().findByType(getContentPanel(), JBRunnerTabs.class);
  TabLabel tabLabel = myRobot.finder().find(tabs, new GenericTypeMatcher<TabLabel>(TabLabel.class) {
    @Override
    protected boolean isMatching(@NotNull TabLabel component) {
      return tabName.equals(component.toString());
    }
  });
  myRobot.click(tabLabel);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:11,代码来源:AndroidToolWindowFixture.java


示例10: applyTabLayout

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Override
protected boolean applyTabLayout(SingleRowPassInfo data, TabLabel label, int length, int deltaToFit) {
  if (data.requiredLength > data.toFitLength) {
    length = getStrategy().getLengthIncrement(label.getPreferredSize());
    final int moreRectSize = getStrategy().getMoreRectAxisSize();
    if (data.position + length > data.toFitLength - moreRectSize && label.getInfo() != myTabs.getSelectedInfo()) {
      final int clippedLength = getStrategy().drawPartialOverflowTabs()
                                ? data.toFitLength - data.position - moreRectSize - 4 : 0;
      super.applyTabLayout(data, label, clippedLength, deltaToFit);
      label.setAlignmentToCenter(false);
      return false;
    }
  }
  return super.applyTabLayout(data, label, length, deltaToFit);
}
 
开发者ID:JetBrains,项目名称:jediterm,代码行数:16,代码来源:ScrollableSingleRowLayout.java


示例11: computeHeaderPreferredSize

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
protected Dimension computeHeaderPreferredSize(JBTabsImpl tabs, int tabsCount) {
  final Iterator<TabInfo> infos = tabs.myInfo2Label.keySet().iterator();
  Dimension size = new Dimension();
  int currentTab = 0;

  final boolean horizontal = tabs.getTabsPosition() == JBTabsPosition.top || tabs.getTabsPosition() == JBTabsPosition.bottom;

  while (infos.hasNext()) {
    final boolean canGrow = currentTab < tabsCount;

    TabInfo eachInfo = infos.next();
    final TabLabel eachLabel = tabs.myInfo2Label.get(eachInfo);
    final Dimension eachPrefSize = eachLabel.getPreferredSize();
    if (horizontal) {
      if (canGrow) {
        size.width += eachPrefSize.width;
      }
      size.height = Math.max(size.height, eachPrefSize.height);
    }
    else {
      size.width = Math.max(size.width, eachPrefSize.width);
      if (canGrow) {
        size.height += eachPrefSize.height;
      }
    }

    currentTab++;
  }


  if (horizontal) {
    size.height += tabs.getTabsBorder().getTabBorderSize();
  }
  else {
    size.width += tabs.getTabsBorder().getTabBorderSize();
  }

  return size;
}
 
开发者ID:consulo,项目名称:consulo,代码行数:40,代码来源:IntelliJEditorTabsUI.java


示例12: doPaintInactive

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
protected void doPaintInactive(JBTabsImpl t,
                               Graphics2D g2d,
                               boolean leftGhostExists,
                               TabLabel label,
                               Rectangle effectiveBounds,
                               boolean rightGhostExists,
                               int row,
                               int column) {
  Insets insets = t.getTabsBorder().getEffectiveBorder();

  int _x = effectiveBounds.x + insets.left;
  int _y = effectiveBounds.y + insets.top;
  int _width = effectiveBounds.width - insets.left - insets.right + (t.getTabsPosition() == JBTabsPosition.right ? 1 : 0);
  int _height = effectiveBounds.height - insets.top - insets.bottom;


  if ((!t.isSingleRow() /* for multiline */) || (t.isSingleRow() && t.isHorizontalTabs())) {
    if (t.isSingleRow() && t.getPosition() == JBTabsPosition.bottom) {
      _y += t.getActiveTabUnderlineHeight();
    }
    else {
      if (t.isSingleRow()) {
        _height -= t.getActiveTabUnderlineHeight();
      }
      else {
        TabInfo info = label.getInfo();
        if (((TableLayout)t.getEffectiveLayout()).isLastRow(info)) {
          _height -= t.getActiveTabUnderlineHeight();
        }
      }
    }
  }

  final boolean vertical = t.getTabsPosition() == JBTabsPosition.left || t.getTabsPosition() == JBTabsPosition.right;
  final Color tabColor = label.getInfo().getTabColor();
  doPaintInactive(g2d, effectiveBounds, _x, _y, _width, _height, tabColor, row, column, vertical);
}
 
开发者ID:consulo,项目名称:consulo,代码行数:38,代码来源:IntelliJEditorTabsUI.java


示例13: doPaintAdditionalBackgroundIfFirstOffsetSet

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
protected void doPaintAdditionalBackgroundIfFirstOffsetSet(JBTabsImpl tabs, Graphics2D g2d, Rectangle clip) {
  if (tabs.getTabsPosition() == JBTabsPosition.top && tabs.isSingleRow() && tabs.getFirstTabOffset() > 0) {
    int maxOffset = 0;
    int maxLength = 0;

    for (int i = tabs.getVisibleInfos().size() - 1; i >= 0; i--) {
      TabInfo visibleInfo = tabs.getVisibleInfos().get(i);
      TabLabel tabLabel = tabs.myInfo2Label.get(visibleInfo);
      Rectangle r = tabLabel.getBounds();
      if (r.width == 0 || r.height == 0) continue;
      maxOffset = r.x + r.width;
      maxLength = r.height;
      break;
    }

    maxOffset++;
    g2d.setPaint(UIUtil.getPanelBackground());
    if (tabs.getFirstTabOffset() > 0) {
      g2d.fillRect(clip.x, clip.y, clip.x + JBUI.scale(tabs.getFirstTabOffset() - 1), clip.y + maxLength - tabs.getActiveTabUnderlineHeight());
    }
    g2d.fillRect(clip.x + maxOffset, clip.y, clip.width - maxOffset, clip.y + maxLength - tabs.getActiveTabUnderlineHeight());
    g2d.setPaint(new JBColor(Gray._181, UIUtil.getPanelBackground()));
    g2d.drawLine(clip.x + maxOffset, clip.y + maxLength - tabs.getActiveTabUnderlineHeight(), clip.x + clip.width,
                 clip.y + maxLength - tabs.getActiveTabUnderlineHeight());
    g2d.setPaint(UIUtil.getPanelBackground());
    g2d.drawLine(clip.x, clip.y + maxLength, clip.width, clip.y + maxLength);
  }
}
 
开发者ID:consulo,项目名称:consulo,代码行数:29,代码来源:IntelliJEditorTabsUI.java


示例14: paintChildren

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
public void paintChildren(JBTabsImpl tabs, Graphics g) {
  final GraphicsConfig config = new GraphicsConfig(g);
  config.setAntialiasing(true);
  paintSelectionAndBorder(tabs, (Graphics2D)g);
  config.restore();

  final TabLabel selected = tabs.getSelectedLabel();
  if (selected != null) {
    selected.paintImage(g);
  }

  tabs.getSingleRowLayoutInternal().myMoreIcon.paintIcon(tabs, g);
}
 
开发者ID:consulo,项目名称:consulo,代码行数:14,代码来源:IntelliJEditorTabsUI.java


示例15: doPaintInactive

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Override
protected void doPaintInactive(Graphics2D g2d, boolean leftGhostExists, TabLabel label, Rectangle effectiveBounds, boolean rightGhostExists, int row, int column) {
    //Empty
}
 
开发者ID:FingerArt,项目名称:ApiDebugger,代码行数:5,代码来源:JBDebuggerTab.java


示例16: applyTabLayout

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Override
protected boolean applyTabLayout(SingleRowPassInfo data, TabLabel label, int length, int deltaToFit) {
  boolean result = super.applyTabLayout(data, label, length, deltaToFit);
  label.setAlignmentToCenter(false);
  return result;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:7,代码来源:CompressibleSingleRowLayout.java


示例17: isTabHidden

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Override
public boolean isTabHidden(TabInfo tabInfo) {
  final TabLabel label = myTabs.myInfo2Label.get(tabInfo);
  final Rectangle bounds = label.getBounds();
  return getStrategy().getMinPosition(bounds) < -10 || bounds.isEmpty();
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:7,代码来源:ScrollableSingleRowLayout.java


示例18: isDragOut

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Override
public boolean isDragOut(TabLabel tabLabel, int deltaX, int deltaY) {
  return Math.abs(deltaY) > tabLabel.getHeight() * TabLayout.getDragOutMultiplier();
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:5,代码来源:SingleRowLayoutStrategy.java


示例19: getScrollUnitIncrement

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Override
public int getScrollUnitIncrement(TabLabel label) {
  return 10;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:5,代码来源:SingleRowLayoutStrategy.java


示例20: getDropIndexFor

import com.intellij.ui.tabs.impl.TabLabel; //导入依赖的package包/类
@Override
public int getDropIndexFor(Point point) {
  if (myLastTableLayout == null) return -1;
  int result = -1;

  Component c = myTabs.getComponentAt(point);

  if (c instanceof JBTabsImpl) {
    for (int i = 0; i < myLastTableLayout.myVisibleInfos.size() - 1; i++) {
      TabLabel first = myTabs.myInfo2Label.get(myLastTableLayout.myVisibleInfos.get(i));
      TabLabel second = myTabs.myInfo2Label.get(myLastTableLayout.myVisibleInfos.get(i + 1));

      Rectangle firstBounds = first.getBounds();
      Rectangle secondBounds = second.getBounds();

      final boolean between = firstBounds.getMaxX() < point.x
                  && secondBounds.getX() > point.x
                  && firstBounds.y < point.y
                  && secondBounds.getMaxY() > point.y;

      if (between) {
        c = first;
        break;
      }
    }
  }

  if (c instanceof TabLabel) {
    TabInfo info = ((TabLabel)c).getInfo();
    int index = myLastTableLayout.myVisibleInfos.indexOf(info);
    boolean isDropTarget = myTabs.isDropTarget(info);
    if (!isDropTarget) {
      for (int i = 0; i <= index; i++) {
        if (myTabs.isDropTarget(myLastTableLayout.myVisibleInfos.get(i))) {
          index -= 1;
          break;
        }
      }
      result = index;
    } else if (index < myLastTableLayout.myVisibleInfos.size()) {
      result = index;
    }
  }
  return result;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:46,代码来源:TableLayout.java



注:本文中的com.intellij.ui.tabs.impl.TabLabel类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java OpTriple类代码示例发布时间:2022-05-22
下一篇:
Java DescriptionInterface类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap