本文整理了Java中org.eclipse.swt.widgets.Canvas.getSize()
方法的一些代码示例,展示了Canvas.getSize()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Canvas.getSize()
方法的具体详情如下:
包路径:org.eclipse.swt.widgets.Canvas
类名称:Canvas
方法名:getSize
暂无
代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.examples
void setHeaderImageHeight (int value) {
headerImageHeight = value;
Point headerSize = header.getSize ();
int newHeaderHeight = Math.max (fontHeight, headerImageHeight) + 2 * getHeaderPadding ();
if (headerSize.y != newHeaderHeight) {
header.setSize (headerSize.x, newHeaderHeight);
}
}
/**
代码示例来源:origin: org.eclipse.platform/org.eclipse.compare
private Diff handlemouseInBirdsEyeView(Canvas canvas, int my) {
return fMerger.findDiff(getViewportHeight(), fSynchronizedScrolling, canvas.getSize(), my);
}
代码示例来源:origin: org.eclipse.platform/org.eclipse.swt.examples
/**
* Returns the height of the receiver's header
*
* @return the height of the header or zero if the header is not visible
*
* @exception SWTException <ul>
* <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li>
* <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li>
* </ul>
*
* @since 2.0
*/
public int getHeaderHeight () {
checkWidget ();
if (!header.getVisible ()) return 0;
return header.getSize ().y;
}
int getHeaderPadding () {
代码示例来源:origin: diffplug/gradle-and-eclipse-rcp
private RGB posToColor(Event e) {
Point size = wrapped.getSize();
int cb = limitInt(e.x * _256 / size.x);
int cr = limitInt(e.y * _256 / size.y);
return fromYCbCr(luminance, cb, cr);
}
代码示例来源:origin: BiglySoftware/BiglyBT
@Override
public void paintControl(PaintEvent e) {
try{
Rectangle clipping = e.gc.getClipping();
int ofs = (labelImage.getSize().x - boundsColor.width) / 2;
if (paintColorTo > 0) {
e.gc.drawImage(imgSrc, 0, 0, paintColorTo, boundsColor.height, ofs, 10, paintColorTo, boundsColor.height);
}
if (clipping.x + clipping.width > ofs + paintColorTo && imgBounds.width - paintColorTo - 1 > 0) {
e.gc.drawImage(image,
paintColorTo + 1, 0, imgBounds.width - paintColorTo - 1, imgBounds.height,
paintColorTo + 1 + ofs, 10, imgBounds.width - paintColorTo - 1, imgBounds.height);
}
}catch( Throwable f ){
// seen some 'argument not valid errors spewed here, couldn't track down
// the cause though :( parg.
}
}
});
代码示例来源:origin: org.eclipse.rap/org.eclipse.rap.rwt
@Override
void notifyResize( Point oldSize ) {
super.notifyResize( oldSize );
if( !oldSize.equals( getSize() ) ) {
repaint( getClientArea() );
}
}
代码示例来源:origin: diffplug/gradle-and-eclipse-rcp
public ColorPicker(Composite parent) {
super(new Canvas(parent, SWT.DOUBLE_BUFFERED));
setY(128);
wrapped.addListener(SWT.Paint, e -> {
Point size = wrapped.getSize();
Image img = getMapFor(e.display);
e.gc.drawImage(img, 0, 0, _256, _256, 0, 0, size.x, size.y);
});
mouseDown = SwtRx.addListener(wrapped, SWT.MouseDown).map(this::posToColor);
mouseMove = SwtRx.addListener(wrapped, SWT.MouseMove).map(this::posToColor);
}
代码示例来源:origin: org.eclipse.scout.sdk.deps/org.eclipse.jface.text
private void drawRangeIndication(GC gc, Canvas canvas, Rectangle r) {
final int MARGIN= 3;
/* cap the height - at least on GTK, large numbers are converted to
* negatives at some point */
int height= Math.min(r.y + r.height - MARGIN, canvas.getSize().y);
gc.setForeground(canvas.getDisplay().getSystemColor(COLOR));
gc.setLineWidth(0); // NOTE: 0 means width is 1 but with optimized performance
gc.drawLine(r.x + 4, r.y + 12, r.x + 4, height);
gc.drawLine(r.x + 4, height, r.x + r.width - MARGIN, height);
}
代码示例来源:origin: org.eclipse.platform/org.eclipse.jface.text
private void drawRangeIndication(GC gc, Canvas canvas, Rectangle r) {
final int MARGIN= 3;
/* cap the height - at least on GTK, large numbers are converted to
* negatives at some point */
int height= Math.min(r.y + r.height - MARGIN, canvas.getSize().y);
gc.setForeground(canvas.getDisplay().getSystemColor(COLOR));
gc.setLineWidth(0); // NOTE: 0 means width is 1 but with optimized performance
gc.drawLine(r.x + 4, r.y + 12, r.x + 4, height);
gc.drawLine(r.x + 4, height, r.x + r.width - MARGIN, height);
}
代码示例来源:origin: org.eclipse.platform/org.eclipse.jface.text
/**
* Marks the region covered by <code>lines</code> as needing to be redrawn.
*
* @param lines the lines to be redrawn in document coordinates
*/
protected final void redraw(ILineRange lines) {
if (fCanvas == null || fCanvas.isDisposed())
return;
int firstModelLine= lines.getStartLine();
int lastModelLine= firstModelLine + lines.getNumberOfLines();
int firstWidgetLine= JFaceTextUtil.modelLineToWidgetLine(fTextViewer, firstModelLine);
int lastWidgetLine= JFaceTextUtil.modelLineToWidgetLine(fTextViewer, lastModelLine);
int from= Math.max(0, fStyledText.getLinePixel(firstWidgetLine));
// getLinePixel will return the last pixel of the last line if line == lineCount
int to= Math.min(fCanvas.getSize().y, fStyledText.getLinePixel(lastWidgetLine + 1));
fCanvas.redraw(0, from, fWidth, to - from, false);
}
代码示例来源:origin: org.eclipse.scout.sdk.deps/org.eclipse.jface.text
/**
* Marks the region covered by <code>lines</code> as needing to be redrawn.
*
* @param lines the lines to be redrawn in document coordinates
*/
protected final void redraw(ILineRange lines) {
if (fCanvas == null || fCanvas.isDisposed())
return;
int firstModelLine= lines.getStartLine();
int lastModelLine= firstModelLine + lines.getNumberOfLines();
int firstWidgetLine= JFaceTextUtil.modelLineToWidgetLine(fTextViewer, firstModelLine);
int lastWidgetLine= JFaceTextUtil.modelLineToWidgetLine(fTextViewer, lastModelLine);
int from= Math.max(0, fStyledText.getLinePixel(firstWidgetLine));
// getLinePixel will return the last pixel of the last line if line == lineCount
int to= Math.min(fCanvas.getSize().y, fStyledText.getLinePixel(lastWidgetLine + 1));
fCanvas.redraw(0, from, fWidth, to - from, false);
}
代码示例来源:origin: BiglySoftware/BiglyBT
@Override
public void runSupport() {
if (image == null || image.isDisposed() || labelImage.isDisposed()) {
return;
}
if (display.isDisposed()) {
return;
}
paintColorTo += paintColorDir;
Utils.execSWTThreadLater(7 * paintColorDir, this);
int ofs = (labelImage.getSize().x - boundsColor.width) / 2;
labelImage.redraw(paintColorTo - paintColorDir + ofs, 10, paintColorDir, maxY, true);
if (paintColorTo >= maxX || paintColorTo <= 0) {
paintColorTo = 0;
//paintColorDir = (int) (Math.random() * 5) + 2;
Image tmp = image;
image = imgSrc;
imgSrc = tmp;
}
}
});
代码示例来源:origin: org.eclipse.platform/org.eclipse.compare
@Override
public void paintControl(PaintEvent e) {
Point s= fSummaryHeader.getSize();
if (fIndicatorColor != null) {
Display d= fSummaryHeader.getDisplay();
e.gc.setBackground(getColor(d, fIndicatorColor));
int min= Math.min(s.x, s.y)-2*INSET;
Rectangle r= new Rectangle((s.x-min)/2, (s.y-min)/2, min, min);
e.gc.fillRectangle(r);
if (d != null)
drawBevelRect(e.gc, r.x, r.y, r.width -1, r.height -1, d.getSystemColor(SWT.COLOR_WIDGET_NORMAL_SHADOW), d.getSystemColor(SWT.COLOR_WIDGET_HIGHLIGHT_SHADOW));
e.gc.setForeground(fSeparatorColor);
e.gc.setLineWidth(0 /* 1 */);
e.gc.drawLine(0+1, s.y-1, s.x-1-1, s.y-1);
}
}
}
代码示例来源:origin: org.eclipse/org.eclipse.compare
public void paintControl(PaintEvent e) {
Point s= fSummaryHeader.getSize();
if (fIndicatorColor != null) {
Display d= fSummaryHeader.getDisplay();
e.gc.setBackground(getColor(d, fIndicatorColor));
int min= Math.min(s.x, s.y)-2*INSET;
Rectangle r= new Rectangle((s.x-min)/2, (s.y-min)/2, min, min);
e.gc.fillRectangle(r);
if (d != null)
drawBevelRect(e.gc, r.x, r.y, r.width -1, r.height -1, d.getSystemColor(SWT.COLOR_WIDGET_NORMAL_SHADOW), d.getSystemColor(SWT.COLOR_WIDGET_HIGHLIGHT_SHADOW));
e.gc.setForeground(fSeparatorColor);
e.gc.setLineWidth(0 /* 1 */);
e.gc.drawLine(0+1, s.y-1, s.x-1-1, s.y-1);
}
}
}
代码示例来源:origin: org.eclipse.scout.sdk.deps/org.eclipse.ui.workbench.texteditor
@Override
public void paint(GC gc, Canvas canvas, Rectangle bounds) {
Point canvasSize= canvas.getSize();
int x= 0;
int y= bounds.y;
int w= canvasSize.x;
int h= bounds.height;
int b= 1;
if (y + h > canvasSize.y)
h= canvasSize.y - y;
if (y < 0) {
h= h + y;
y= 0;
}
if (h <= 0)
return;
Image image = getImage(canvas);
gc.drawImage(image, 0, 0, w, h, x, y, w, h);
gc.setBackground(canvas.getDisplay().getSystemColor(SWT.COLOR_LIST_SELECTION));
gc.fillRectangle(x, bounds.y, w, b);
gc.fillRectangle(x, bounds.y + bounds.height - b, w, b);
}
代码示例来源:origin: org.eclipse/org.eclipse.ui.workbench.texteditor
public void paint(GC gc, Canvas canvas, Rectangle bounds) {
Point canvasSize= canvas.getSize();
int x= 0;
int y= bounds.y;
int w= canvasSize.x;
int h= bounds.height;
int b= 1;
if (y + h > canvasSize.y)
h= canvasSize.y - y;
if (y < 0) {
h= h + y;
y= 0;
}
if (h <= 0)
return;
Image image = getImage(canvas);
gc.drawImage(image, 0, 0, w, h, x, y, w, h);
gc.setBackground(canvas.getDisplay().getSystemColor(SWT.COLOR_LIST_SELECTION));
gc.fillRectangle(x, bounds.y, w, b);
gc.fillRectangle(x, bounds.y + bounds.height - b, w, b);
}
代码示例来源:origin: org.eclipse.platform/org.eclipse.ui.workbench.texteditor
@Override
public void paint(GC gc, Canvas canvas, Rectangle bounds) {
Point canvasSize= canvas.getSize();
int x= 0;
int y= bounds.y;
int w= canvasSize.x;
int h= bounds.height;
int b= 1;
if (y + h > canvasSize.y)
h= canvasSize.y - y;
if (y < 0) {
h= h + y;
y= 0;
}
if (h <= 0)
return;
Color currentRangeIndicatorColor= JFaceResources.getColorRegistry().get(RANGE_INDICATOR_COLOR);
Image image= getImage(canvas, currentRangeIndicatorColor);
gc.drawImage(image, 0, 0, w, h, x, y, w, h);
gc.setBackground(currentRangeIndicatorColor);
gc.fillRectangle(x, bounds.y, w, b);
gc.fillRectangle(x, bounds.y + bounds.height - b, w, b);
fLastRangeIndicatorColor= currentRangeIndicatorColor;
}
代码示例来源:origin: com.diffplug.durian/durian-swt
public NoBorderBtn(Composite parent) {
super(new Canvas(parent, SWT.NONE));
wrapped.addListener(SWT.Paint, e -> {
Point size = wrapped.getSize();
// fill the background based on the "enabled" status
Color backgroundColor = wrapped.getDisplay().getSystemColor(SWT.COLOR_WIDGET_BACKGROUND);
e.gc.setBackground(backgroundColor);
e.gc.fillRectangle(0, 0, size.x, size.y);
// draw the image
if (img != null) {
int deltaX = size.x - imgBounds.width;
int deltaY = size.y - imgBounds.height;
e.gc.drawImage(img, deltaX / 2, deltaY / 2);
}
});
// send a selection event on each click (if we aren't disabled)
wrapped.addListener(SWT.MouseDown, e -> {
if (enabled) {
selection.onNext(this);
}
});
// send a "completed" event when we finish
wrapped.addListener(SWT.Dispose, e -> {
selection.onComplete();
});
}
代码示例来源:origin: org.eclipse.platform/org.eclipse.jface.text
/**
* Double buffer drawing.
*
* @param dest the GC to draw into
*/
private void doubleBufferPaint(GC dest) {
Point size= fCanvas.getSize();
if (size.x <= 0 || size.y <= 0)
return;
if (fBuffer != null) {
Rectangle r= fBuffer.getBounds();
if (r.width != size.x || r.height != size.y) {
fBuffer.dispose();
fBuffer= null;
}
}
if (fBuffer == null)
fBuffer= new Image(fCanvas.getDisplay(), size.x, size.y);
GC gc= new GC(fBuffer);
gc.setFont(fCanvas.getFont());
try {
gc.setBackground(getBackground());
gc.fillRectangle(0, 0, size.x, size.y);
doPaint(gc);
} finally {
gc.dispose();
}
dest.drawImage(fBuffer, 0, 0);
}
代码示例来源:origin: BiglySoftware/BiglyBT
@Override
public void run() {
if(!canvas.isDisposed() && images != null) {
currentImage++;
if(currentImage >= images.length) {
currentImage = 0;
}
if(currentImage < images.length) {
Image image = images[currentImage];
if(image != null && !image.isDisposed()) {
Rectangle imageBounds = image.getBounds();
Image tempImage = new Image(canvas.getDisplay(),new Rectangle( 0, 0, imageBounds.width, imageBounds.height ));
GC gcImage = new GC(tempImage);
gcImage.setBackground( canvas.getBackground());
gcImage.fillRectangle( new Rectangle( 0, 0, imageBounds.width, imageBounds.width ));
gcImage.drawImage(image, 0, 0 );
GC gc = new GC(canvas);
Point canvasSize = canvas.getSize();
gc.drawImage( tempImage, (canvasSize.x-imageBounds.width)/2, (canvasSize.y-imageBounds.height)/2);
tempImage.dispose();
gcImage.dispose();
gc.dispose();
}
}
}
}
});
内容来源于网络,如有侵权,请联系作者删除!