项目:incubator-netbeans
文件:UIUtils.java
@Override
public void focusGained(FocusEvent e) {
if (e.istemporary()) {
return;
}
Component cmp = e.getComponent();
if(cmp instanceof JComponent) {
JViewport vp = getViewport(container);
if(vp == null) {
return;
}
Rectangle vr = vp.getViewRect();
Point p = SwingUtilities.convertPoint(cmp.getParent(),cmp.getLocation(),container);
final Rectangle r = new Rectangle(p,cmp.getSize());
if(vr.intersects(r)) {
return;
}
container.scrollRectToVisible(r);
}
}
项目:incubator-netbeans
文件:EditorUI.java
/** Get position of the component extent. The (x,y) are set to (0,0) if there's
* no viewport or (-x,-y) if there's one.
*/
public Rectangle getExtentBounds(Rectangle r) {
if (r == null) {
r = new Rectangle();
}
if (component != null) {
JViewport port = getParentViewport();
if (port != null) {
Point p = port.getViewPosition();
r.width = port.getWidth();
r.height = port.getHeight();
r.x = p.x;
r.y = p.y;
} else { // no viewport
r.setBounds(component.getVisibleRect());
}
}
return r;
}
项目:incubator-netbeans
文件:Utilities.java
private void changed() {
JViewport viewport = sp.getViewport();
Point viewPosition = viewport.getViewPosition();
if (viewPosition.x > 0) {
try {
Rectangle textRect = editorPane.getUI().modelToView(editorPane,editorPane.getDocument().getLength());
int textLength = textRect.x + textRect.width;
int viewLength = viewport.getExtentSize().width;
//System.out.println("Utilities.createSingleLineEditor(): spLength = "+sp.getSize().width+",viewLength = "+viewLength+",textLength = "+textLength+",viewPosition = "+viewPosition);
if (textLength < (viewPosition.x + viewLength)) {
viewPosition.x = Math.max(textLength - viewLength,0);
viewport.setViewPosition(viewPosition);
//System.out.println("Utilities.createSingleLineEditor(): setting new view position = "+viewPosition);
}
} catch (BadLocationException blex) {
Exceptions.printstacktrace(blex);
}
}
}
项目:incubator-netbeans
文件:ComponentPeer.java
private int[] computeVisibleSpan() {
Component parent = pane.getParent();
if (parent instanceof JlayeredPane) {
parent = parent.getParent();
}
if (parent instanceof JViewport) {
JViewport vp = (JViewport) parent;
Point start = vp.getViewPosition();
Dimension size = vp.getExtentSize();
Point end = new Point((int) (start.getX() + size.getWidth()),(int) (start.getY() + size.getHeight()));
int startPosition = pane.viewToModel(start);
int endPosition = pane.viewToModel(end);
if (parentWithListener != vp) {
vp.addchangelistener(WeakListeners.change(this,vp));
parentWithListener = vp;
}
return new int[] {startPosition,endPosition};
}
return new int[] {0,pane.getDocument().getLength()};
}
项目:incubator-netbeans
文件:BaseTable.java
protected int getVisibleRowCount() {
int rowCount = getRowCount();
int rowHeight = getRowHeight();
if ((rowCount == 0) || (rowHeight == 0)) {
return 0;
}
if (getParent() instanceof JViewport) {
JViewport jvp = (JViewport) getParent();
// +1 to return also half-displayed rows (issue 53660)
int result = Math.min(rowCount,(jvp.getExtentSize().height / rowHeight) + 1);
return result;
} else {
return Math.min(rowCount,getHeight() / rowHeight);
}
}
项目:incubator-netbeans
文件:BaseTable.java
private void hideSearchField() {
if (searchField == null) {
return;
}
searchpanel.setVisible(false);
if (getParent() instanceof JViewport && null != viewportListener ) {
JViewport jvp = (JViewport) getParent();
jvp.removechangelistener( viewportListener );
viewportListener = null;
}
getParent().removeComponentListener(searchField);
if (searchpanel.getParent() != null) {
searchpanel.getParent().remove(searchpanel);
}
paintSelectionRow();
}
项目:incubator-netbeans
文件:PalettePanel.java
/**
* Adds the search field to the tree.
*/
private void displaySearchField(char initialChar) {
if( null != searchpanel )
return;
JViewport vp = scrollPane.getViewport();
originalScrollMode = vp.getScrollMode();
vp.setScrollMode(JViewport.SIMPLE_SCROLL_MODE);
searchTextField.setFont(getFont());
searchTextField.setText(String.valueOf(initialChar));
prepareSearchPanel();
scrollPane.add(searchpanel);
invalidate();
revalidate();
repaint();
searchTextField.requestFocus();
}
项目:incubator-netbeans
文件:ETable.java
/**
* This method update mouse listener on the scrollPane if it is needed.
* It also recomputes the model of searchCombo. Both actions are needed after
* the set of visible columns is changed.
*/
void updateColumnSelectionMouseListener() {
Container p = getParent();
if (p instanceof JViewport) {
Container gp = p.getParent();
if (gp instanceof JScrollPane) {
JScrollPane scrollPane = (JScrollPane)gp;
// Make certain we are the viewPort's view and not,for
// example,the rowHeaderView of the scrollPane -
// an implementor of fixed columns might do this.
JViewport viewport = scrollPane.getViewport();
if (viewport == null || viewport.getView() != this) {
return;
}
scrollPane.removeMouseListener(columnSelectionMouseListener);
if (getColumnModel().getColumnCount() == 0) {
scrollPane.addMouseListener(columnSelectionMouseListener);
}
}
}
if (searchCombo != null) {
searchCombo.setModel(getSearchComboModel());
}
}
项目:AWGW
文件:GridPanel.java
/**
* Calculate the cell size to use given the current viewable region and the
* the number of rows and columns in the grid. We use the largest
* cellSize that will fit in the viewable region,bounded to be at least the
* parameter minSize.
*/
private void recalculateCellSize(int minSize) {
if (numRows == 0 || numCols == 0) {
cellSize = 0;
} else {
JViewport vp = getEnclosingViewport();
Dimension viewableSize = (vp != null) ? vp.getSize() : getSize();
int desiredCellSize = Math.min(
(viewableSize.height - extraHeight()) / numRows,(viewableSize.width - extraWidth()) / numCols) - 1;
// Now we want to approximate this with
// DEFAULT_CELL_SIZE * Math.pow(2,k)
cellSize = DEFAULT_CELL_SIZE;
if (cellSize <= desiredCellSize)
while (2 * cellSize <= desiredCellSize)
cellSize *= 2;
else
while (cellSize / 2 >= Math.max(desiredCellSize,MIN_CELL_SIZE))
cellSize /= 2;
}
revalidate();
}
项目:jdk8u-jdk
文件:Test6526631.java
public void validateThird() {
JViewport viewport = this.pane.getViewport();
JScrollBar scroller = this.pane.getHorizontalScrollBar();
if (!scroller.getComponentOrientation().equals(ComponentOrientation.RIGHT_TO_LEFT)) {
throw new Error("unexpected component orientation");
}
int value = scroller.getValue();
if (value != 0) {
throw new Error("unexpected scroll value");
}
int extent = viewport.getExtentSize().width;
if (extent != scroller.getVisibleAmount()) {
throw new Error("unexpected visible amount");
}
int size = viewport.getViewSize().width;
if (size != scroller.getMaximum()) {
throw new Error("unexpected maximum");
}
int pos = size - extent - value;
if (pos != viewport.getViewPosition().x) {
throw new Error("unexpected position");
}
}
项目:incubator-netbeans
文件:IndexedCustomizer.java
/** notify the Component to autoscroll */
public void autoscroll(Point cursorLoc) {
JViewport viewport = getViewport();
Point viewPos = viewport.getViewPosition();
int viewHeight = viewport.getExtentSize().height;
if ((cursorLoc.y - viewPos.y) <= realInsets.top) {
// scroll up
viewport.setViewPosition(new Point(viewPos.x,Math.max(viewPos.y - realInsets.top,0)));
} else if (((viewPos.y + viewHeight) - cursorLoc.y) <= realInsets.bottom) {
// scroll down
viewport.setViewPosition(
new Point(viewPos.x,Math.min(viewPos.y + realInsets.bottom,this.getHeight() - viewHeight))
);
}
}
项目:Logisim
文件:LayoutPopupManager.java
private void showPopup(Set<AppearancePort> portObjects) {
dragStart = null;
CircuitState circuitState = canvas.getCircuitState();
if (circuitState == null)
return;
ArrayList<Instance> ports = new ArrayList<Instance>(portObjects.size());
for (AppearancePort portObject : portObjects) {
ports.add(portObject.getPin());
}
hideCurrentPopup();
LayoutThumbnail layout = new LayoutThumbnail();
layout.setCircuit(circuitState,ports);
JViewport owner = canvasPane.getViewport();
Point ownerLoc = owner.getLocationOnScreen();
Dimension ownerDim = owner.getSize();
Dimension layoutDim = layout.getPreferredSize();
int x = ownerLoc.x + Math.max(0,ownerDim.width - layoutDim.width - 5);
int y = ownerLoc.y + Math.max(0,ownerDim.height - layoutDim.height - 5);
PopupFactory factory = PopupFactory.getSharedInstance();
Popup popup = factory.getPopup(canvasPane.getViewport(),layout,x,y);
popup.show();
curPopup = popup;
curPopupTime = System.currentTimeMillis();
}
private static JComponent createComponent() {
createStyles();
for (int i = 0; i < data.length; i++) {
Paragraph p = data[i];
addParagraph(p);
}
JTextPane textPane = new JTextPane(doc);
JScrollPane scroller = new JScrollPane();
JViewport port = scroller.getViewport();
port.setScrollMode(JViewport.backingSTORE_SCROLL_MODE);
port.add(textPane);
return scroller;
}
项目:Tarski
文件:SchemaGraphComponent.java
/**
*
*/
public int getColumnLocation(mxCellState edge,mxCellState terminal,int column) {
Component[] c = components.get(terminal.getCell());
int y = 0;
if (c != null) {
for (int i = 0; i < c.length; i++) {
if (c[i] instanceof JTableRenderer) {
JTableRenderer vertex = (JTableRenderer) c[i];
JTable table = vertex.table;
JViewport viewport = (JViewport) table.getParent();
double dy = -viewport.getViewPosition().getY();
y = (int) Math.max(terminal.getY() + 22,terminal.getY() + Math.min(terminal.getHeight() - 20,30 + dy + column * 16));
}
}
}
return y;
}
项目:jmt
文件:ExactTable.java
@Override
protected void unconfigureEnclosingScrollPane() {
Container p = getParent();
if (p instanceof JViewport) {
Container gp = p.getParent();
if (gp instanceof JScrollPane) {
JScrollPane scrollPane = (JScrollPane) gp;
// Make certain we are the viewPort's view and not,the rowHeaderView of the scrollPane -
// an implementor of fixed columns might do this.
JViewport viewport = scrollPane.getViewport();
if (viewport == null || viewport.getView() != this) {
return;
}
scrollPane.setColumnHeaderView(null);
scrollPane.setRowHeaderView(null);
viewport.removechangelistener(scrollListener);
rowHeader.uninstall();
}
}
}
项目:AWGW
文件:GridPanel.java
/**
* Sets the grid being displayed. Reset the cellSize to be the
* largest that fits the entire grid in the current visible area (use
* default if grid is too large).
*
* @param gr the grid to display
*/
public void setGrid(Grid<?> gr) {
currentLocation = new Location(0,0);
JViewport vp = getEnclosingViewport(); // before changing,reset
// scroll/pan position
if (vp != null)
vp.setViewPosition(new Point(0,0));
grid = gr;
originRow = originCol = 0;
if (grid.getNumRows() == -1 && grid.getNumCols() == -1) {
numRows = numCols = 2000;
// This determines the "virtual" size of the pan world
} else {
numRows = grid.getNumRows();
numCols = grid.getNumCols();
}
recalculateCellSize(MIN_CELL_SIZE);
}
项目:QN-ACTR-Release
文件:ExactTable.java
@Override
protected void unconfigureEnclosingScrollPane() {
Container p = getParent();
if (p instanceof JViewport) {
Container gp = p.getParent();
if (gp instanceof JScrollPane) {
JScrollPane scrollPane = (JScrollPane) gp;
// Make certain we are the viewPort's view and not,the rowHeaderView of the scrollPane -
// an implementor of fixed columns might do this.
JViewport viewport = scrollPane.getViewport();
if (viewport == null || viewport.getView() != this) {
return;
}
scrollPane.setColumnHeaderView(null);
scrollPane.setRowHeaderView(null);
viewport.removechangelistener(scrollListener);
rowHeader.uninstall();
}
}
}
项目:org.alloytools.alloy
文件:GraphViewer.java
/** Repaint this component. */
public void alloyRepaint() {
Container c = getParent();
while (c != null) {
if (c instanceof JViewport)
break;
else
c = c.getParent();
}
setSize((int) (graph.getTotalWidth() * scale),(int) (graph.getTotalHeight() * scale));
if (c != null) {
c.invalidate();
c.repaint();
c.validate();
} else {
invalidate();
repaint();
validate();
}
}
项目:JavaGraph
文件:ZoomMenu.java
@Override
public void actionPerformed(ActionEvent evt) {
Component component = ZoomMenu.this.jgraph.getParent();
while (component != null && !(component instanceof JViewport)) {
component = component.getParent();
}
if (component != null) {
final JViewport viewport = (JViewport) component;
Rectangle2D graphBounds = ZoomMenu.this.jgraph.getGraphBounds();
Dimension viewportBounds = viewport.getExtentSize();
double scale =
Math.min(viewportBounds.width / graphBounds.getWidth(),viewportBounds.height
/ graphBounds.getHeight());
ZoomMenu.this.jgraph.setScale(Math.min(scale,1.0));
ZoomMenu.this.jgraph.scrollRectToVisible(graphBounds.getBounds());
setActionsEnabled();
}
}
项目:Equella
文件:TablePasteAdapter.java
public static JTable createrawTable(TableModel model)
{
JTable table = new JTable(model)
{
@Override
public boolean getScrollableTracksViewportHeight()
{
// fetch the table's parent
Container viewport = getParent();
// if the parent is not a viewport,calling this isn't useful
if( !(viewport instanceof JViewport) )
{
return false;
}
// return true if the table's preferred height is smaller
// than the viewport height,else false
return getPreferredSize().height < viewport.getHeight();
}
};
return table;
}
项目:openjdk-jdk10
文件:Test6526631.java
public void validateThird() {
JViewport viewport = this.pane.getViewport();
JScrollBar scroller = this.pane.getHorizontalScrollBar();
if (!scroller.getComponentOrientation().equals(ComponentOrientation.RIGHT_TO_LEFT)) {
throw new Error("unexpected component orientation");
}
int value = scroller.getValue();
if (value != 0) {
throw new Error("unexpected scroll value");
}
int extent = viewport.getExtentSize().width;
if (extent != scroller.getVisibleAmount()) {
throw new Error("unexpected visible amount");
}
int size = viewport.getViewSize().width;
if (size != scroller.getMaximum()) {
throw new Error("unexpected maximum");
}
int pos = size - extent - value;
if (pos != viewport.getViewPosition().x) {
throw new Error("unexpected position");
}
}
项目:powertext
文件:RTextAreaEditorKit.java
@Override
public void actionPerformedImpl(ActionEvent e,RTextArea textArea) {
Container parent = textArea.getParent();
if (parent instanceof JViewport) {
JViewport viewport = (JViewport)parent;
Point p = viewport.getViewPosition();
p.y += delta*textArea.getLineHeight();
if (p.y<0) {
p.y = 0;
}
else {
Rectangle viewRect = viewport.getViewRect();
int visibleEnd = p.y + viewRect.height;
if (visibleEnd>=textArea.getHeight()) {
p.y = textArea.getHeight() - viewRect.height;
}
}
viewport.setViewPosition(p);
}
}
项目:incubator-netbeans
文件:UIUtils.java
private static JViewport getViewport(Container c) {
if(c == null) {
return null;
}
if(c instanceof JScrollPane) {
return ((JScrollPane) c).getViewport();
}
return getViewport(c.getParent());
}
项目:incubator-netbeans
文件:AnnotationHolder.java
private void addViewportListener(JEditorPane pane) {
Container parent = pane.getParent();
if (parent instanceof JlayeredPane) {
parent = parent.getParent();
}
if (parent instanceof JViewport) {
JViewport viewport = (JViewport) parent;
viewport.addchangelistener(WeakListeners.change(AnnotationHolder.this,viewport));
}
}
项目:incubator-netbeans
文件:HintsUI.java
private int getUsableWidth(JTextComponent component) {
Container parent = component.getParent();
if (parent instanceof JlayeredPane) {
parent = parent.getParent();
}
return (parent instanceof JViewport)
? ((JViewport)parent).getExtentSize().width
: component.getSize().width;
}
项目:incubator-netbeans
文件:ListCompletionView.java
public @Override void paintComponent(Graphics g) {
// Although the JScrollPane without horizontal scrollbar
// is explicitly set with a preferred size
// it does not force its items with the only width into which
// they can render (and still leaves them with the preferred width
// of the widest item).
// Therefore the item's render width is taken from the viewport's width.
int itemRenderWidth = ((JViewport)ListCompletionView.this.getParent()).getWidth();
Color bgColor = getBackground();
Color fgColor = getForeground();
int height = getHeight();
// Clear the background
g.setColor(bgColor);
g.fillRect(0,itemRenderWidth,height);
g.setColor(fgColor);
// Render the item
renderHtml(fix,g,ListCompletionView.this.getFont(),getForeground(),getHeight(),selected);
// if (separator) {
// g.setColor(Color.gray);
// g.drawLine(0,0);
// g.setColor(fgColor);
// }
}
项目:incubator-netbeans
文件:EditorUI.java
/** Is the parent of some editor component a viewport */
private JViewport getParentViewport() {
Component pc = component.getParent();
if (pc instanceof JlayeredPane) {
pc = pc.getParent();
}
return (pc instanceof JViewport) ? (JViewport)pc : null;
}
项目:incubator-netbeans
文件:EditorUI.java
void setExtentPosition(int x,int y) {
JViewport port = getParentViewport();
if (port != null) {
Point p = new Point(Math.max(x,0),Math.max(y,0));
port.setViewPosition(p);
}
}
项目:incubator-netbeans
文件:PopupManager.java
/** Variation of the method for computing the bounds
* for the concrete view component. As the component can possibly
* be placed in a scroll pane it's first necessary
* to translate the cursor bounds and also translate
* back the resulting popup bounds.
* @param popup popup panel to be displayed
* @param view component over which the popup is displayed.
* @param cursorBounds the bounds of the caret or mouse cursor
* relative to the upper-left corner of the visible view.
* @param placement where to place the popup panel according to
* the cursor position.
* @return bounds of popup panel relative to the upper-left corner
* of the underlying view component.
* <CODE>null</CODE> if there is no place to display popup.
*/
protected static Rectangle computeBounds(JComponent popup,JComponent view,Rectangle cursorBounds,Placement placement,HorizontalBounds horizontalBounds) {
if (horizontalBounds == null) horizontalBounds = ViewPortBounds;
Rectangle ret;
Component viewParent = view.getParent();
if (viewParent instanceof JlayeredPane) {
viewParent = viewParent.getParent();
}
if (viewParent instanceof JViewport) {
Rectangle viewBounds = ((JViewport)viewParent).getViewRect();
Rectangle translatedCursorBounds = (Rectangle)cursorBounds.clone();
if (placement != FixedPoint) {
translatedCursorBounds.translate(-viewBounds.x,-viewBounds.y);
}
ret = computeBounds(popup,viewBounds.width,viewBounds.height,translatedCursorBounds,placement,horizontalBounds);
if (ret != null) { // valid bounds
ret.translate(viewBounds.x,viewBounds.y);
}
} else { // not in scroll pane
ret = computeBounds(popup,view.getWidth(),view.getHeight(),cursorBounds,placement);
}
return ret;
}
项目:Tarski
文件:GraphViewer.java
/** Repaint this component. */
public void alloyRepaint() {
Container c=getParent();
while(c!=null) { if (c instanceof JViewport) break; else c=c.getParent(); }
setSize((int)(graph.getTotalWidth()*scale),(int)(graph.getTotalHeight()*scale));
if (c!=null) { c.invalidate(); c.repaint(); c.validate(); } else { invalidate(); repaint(); validate(); }
}
项目:incubator-netbeans
文件:ValidityAwarePanel.java
@Override
public Dimension getPreferredSize() {
if (getParent() instanceof JViewport) {
return getMinimumSize();
} else {
return super.getPreferredSize();
}
}
项目:AWGW
文件:GridPanel.java
/**
* Pans the display back to the origin,so that 0,0 is at the the upper
* left of the visible viewport.
*/
public void recenter(Location loc) {
originRow = loc.getRow();
originCol = loc.getCol();
repaint();
JViewport vp = getEnclosingViewport();
if (vp != null) {
if (!isPannableunbounded()
|| !(vp instanceof PseudoInfiniteViewport))
vp.setViewPosition(pointForLocation(loc));
else
showPanTip();
}
}
项目:incubator-netbeans
文件:AntSanityTest.java
/**
* Takes GUI snapshot of debugged application.
*/
public void takeGUISnapshot() throws InterruptedException {
new Action("Debug|Debug Project (debugTestProjectAnt)",null).perform();
Thread.sleep(3000); // Wait 3 seconds. Sometimes starting debugging session was slow.
OutputTabOperator op = new OutputTabOperator(DEBUGGER_CONSOLE);
assertEquals("User program running",op.getLine(op.getLineCount() - 2));
new TakeGUISnapshotAction().perform();
TopComponentOperator guiSnapshot = new TopComponentOperator("Snapshot of \"Memory View\"");
assertEquals(guiSnapshot.getComponent(1).getName(),"Snapshot Zoom Toolbar");
JViewport viewPort = (JViewport) guiSnapshot.getComponent(0).getComponentAt(10,10);
assertTrue(viewPort.getComponent(0).toString().startsWith("org.netbeans.modules.debugger.jpda.visual.ui.ScreenshotComponent$ScreenshotCanvas"));
new FinishDebuggerAction().perform();
}
项目:incubator-netbeans
文件:ScrollableJPanel.java
@Override
public boolean getScrollableTracksViewportHeight() {
if (getParent() instanceof JViewport) {
return (((JViewport) getParent()).getHeight() > getPreferredSize().height);
}
return false;
}
项目:incubator-netbeans
文件:AutoscrollSupport.java
/** Performs autoscroll operation.
*/
public void autoscroll(Point cursorLoc) {
JViewport viewport = getViewport();
if (viewport == null) {
return;
}
Point viewPos = viewport.getViewPosition();
int viewHeight = viewport.getExtentSize().height;
int viewWidth = viewport.getExtentSize().width;
// perform scrolling
if ((cursorLoc.y - viewPos.y) < insets.top) {
// scroll up
viewport.setViewPosition(new Point(viewPos.x,Math.max(viewPos.y - scrollUnits.top,0)));
} else if (((viewPos.y + viewHeight) - cursorLoc.y) < insets.bottom) {
// scroll down
viewport.setViewPosition(
new Point(viewPos.x,Math.min(viewPos.y + scrollUnits.bottom,comp.getHeight() - viewHeight))
);
} else if ((cursorLoc.x - viewPos.x) < insets.left) {
// scroll left
viewport.setViewPosition(new Point(Math.max(viewPos.x - scrollUnits.left,viewPos.y));
} else if (((viewPos.x + viewWidth) - cursorLoc.x) < insets.right) {
// scroll right
viewport.setViewPosition(
new Point(Math.min(viewPos.x + scrollUnits.right,comp.getWidth() - viewWidth),viewPos.y)
);
}
}
项目:incubator-netbeans
文件:PSheet.java
private JScrollPane createScrollPane(Component inner) {
JScrollPane result = new JScrollPane(inner);
JViewport vp = result.getViewport();
vp.addMouseListener(this);
MarginViewportUI ui = (MarginViewportUI) MarginViewportUI.createUI(vp);
vp.setUI(ui);
ui.setMarginPainted(marginPainted);
ui.setMarginColor(marginColor);
ui.setEmptyString(emptyString);
result.setBorder(BorderFactory.createEmptyBorder());
result.setViewportBorder(result.getBorder());
return result;
}
项目:incubator-netbeans
文件:MarginViewportUI.java
public void uninstallUI(JComponent vp) {
JViewport jv = (JViewport) vp;
Component[] c = jv.getComponents();
for (int i = 0; i < c.length; i++) {
c[i].removeComponentListener(this);
}
jv.removeContainerListener(this);
}
项目:incubator-netbeans
文件:MarginViewportUI.java
/** Overridden to draw "no properties" if necessary */
public void paint(Graphics g,JComponent c) {
Component view = ((JViewport) c).getView();
if (view != null) {
lastKNownSize = view.getSize();
}
if (stringWidth == -1) {
calcStringSizes(c.getFont(),g);
}
//Update will have set paintnoprops to the correct value
if (shouldPaintEmptyMessage()) {
//We need to paint centered "<No Properties>" text
g.setFont(c.getFont());
g.setColor(c.getForeground());
Rectangle r = getEmptyMessageBounds();
//See if we really need to do any painting
if (g.hitClip(r.x,r.y,r.width,r.height)) {
//Paint the string
g.drawString(emptyString,r.x,r.y + ascent);
}
}
}
项目:incubator-netbeans
文件:BaseTable.java
protected int getFirstVisibleRow() {
if (getParent() instanceof JViewport) {
JViewport jvp = (JViewport) getParent();
return rowAtPoint(jvp.getViewPosition());
} else {
Insets ins = getInsets();
return rowAtPoint(new Point(ins.left,ins.top));
}
}
项目:AWGW
文件:GridPanel.java
/**
* Shows a tool tip over the upper left corner of the viewport with the
* contents of the pannable view's pannable tip text (typically a string
* identifiying the corner point). Tip is removed after a short delay.
*/
public void showPanTip() {
String tipText = null;
Point upperLeft = new Point(0,0);
JViewport vp = getEnclosingViewport();
if (!isPannableunbounded() && vp != null)
upperLeft = vp.getViewPosition();
Location loc = locationForPoint(upperLeft);
if (loc != null)
tipText = getToolTipText(loc);
showTip(tipText,getLocation());
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。