本文整理汇总了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;未经允许,请勿转载。 |
请发表评论