void setSize (int /*long*/ embedHandle, int width, int height) { width = DPIUtil.autoScaleUp(width); height = DPIUtil.autoScaleUp(height); OS.gtk_widget_set_size_request (embedHandle, width, height); }
/** * Prevents uninitialized instances from being created outside the package. */ Image (Device device) { super(device); currentDeviceZoom = DPIUtil.getDeviceZoom (); }
Rectangle getBounds(int zoom) { Rectangle bounds = getBoundsInPixels(); if (bounds != null && zoom != currentDeviceZoom) { bounds = DPIUtil.autoScaleBounds(bounds, zoom, currentDeviceZoom); } return bounds; }
/** * Auto-scale down ImageData */ public static ImageData autoScaleDown (Device device, final ImageData imageData) { if (deviceZoom == 100 || imageData == null) return imageData; float scaleFactor = 1.0f / getScalingFactor (); return autoScaleImageData(device, imageData, scaleFactor); }
void setBounds() { Rectangle area = DPIUtil.autoScaleUp(frame.getClientArea()); // To Pixels setBounds(DPIUtil.autoScaleDown(borderWidths.left), DPIUtil.autoScaleDown(borderWidths.top), DPIUtil.autoScaleDown(area.width - borderWidths.left - borderWidths.right), DPIUtil.autoScaleDown(area.height - borderWidths.top - borderWidths.bottom)); setObjectRects(); } private void setExtent(int width, int height){
int deviceZoomLevel = DPIUtil.getDeviceZoom(); if (imageFileNameProvider != null) { if (deviceZoomLevel != currentDeviceZoom) { boolean[] found = new boolean[1]; String filename = DPIUtil.validateAndGetImagePathAtZoom (imageFileNameProvider, deviceZoomLevel, found); ImageData resizedData = DPIUtil.autoScaleUp (device, new ImageData (filename)); init(resizedData); init (); if (deviceZoomLevel != currentDeviceZoom) { boolean[] found = new boolean[1]; ImageData data = DPIUtil.validateAndGetImageDataAtZoom (imageDataProvider, deviceZoomLevel, found); ImageData resizedData = DPIUtil.autoScaleUp (device, data); init(resizedData); init(); ImageData data = getImageDataAtCurrentZoom(); destroy (); ImageData resizedData = DPIUtil.autoScaleImageData(device, data, deviceZoomLevel, currentDeviceZoom); init(resizedData); init();
super(device); this.imageDataProvider = imageDataProvider; currentDeviceZoom = DPIUtil.getDeviceZoom(); boolean[] found = new boolean[1]; ImageData data = DPIUtil.validateAndGetImageDataAtZoom(imageDataProvider, currentDeviceZoom, found); if (found[0]) { init (data); } else { ImageData resizedData = DPIUtil.autoScaleUp (device, data); init (resizedData);
super(device); this.imageFileNameProvider = imageFileNameProvider; currentDeviceZoom = DPIUtil.getDeviceZoom(); boolean[] found = new boolean[1]; String filename = DPIUtil.validateAndGetImagePathAtZoom (imageFileNameProvider, currentDeviceZoom, found); if (found[0]) { initNative (filename); ImageData resizedData = DPIUtil.autoScaleUp (device, imageData); init(resizedData);
Point size = DPIUtil.autoScaleUp(new Point(width, height)); currentDeviceZoom = DPIUtil.getDeviceZoom(); init(size.x, size.y); init();
public static float autoScaleUp(float size) { if (deviceZoom == 100 || size == SWT.DEFAULT) return size; float scaleFactor = getScalingFactor (); return (size * scaleFactor); }
/** * Returns the average character width, measured in pixels, * of the font described by the receiver. * * @return the average character width of the font */ public int getAverageCharWidth() { return DPIUtil.autoScaleDown(handle.tmAveCharWidth); }
/** * @noreference This method is not intended to be referenced by clients. * @nooverride This method is not intended to be re-implemented or extended by clients. * @since 3.105 */ protected long /*int*/ gsettingsProc (long /*int*/ gobject, long /*int*/ arg1, long /*int*/ user_data) { switch((int)/*64*/user_data) { case CHANGE_SCALEFACTOR: this.scaleFactor = getDeviceZoom (); DPIUtil.setDeviceZoom (scaleFactor); } return 0; }
@Override public ImageData getImageData(int zoom) { return DPIUtil.autoScaleImageData(device, imageData, zoom, currentZoom); } }
/** * Gets the scaling factor from the device and calculates the zoom level. * @return zoom in percentage * * @noreference This method is not intended to be referenced by clients. * @nooverride This method is not intended to be re-implemented or extended by clients. * @since 3.105 */ protected int getDeviceZoom () { return DPIUtil.mapDPIToZoom ( _getDPIx ()); }
int deviceZoom = DPIUtil.getDeviceZoom(); if (imageFileNameProvider != null) { int deviceZoomLevel = deviceZoom; if (deviceZoomLevel != currentDeviceZoom) { boolean[] found = new boolean[1]; String filename = DPIUtil.validateAndGetImagePathAtZoom (imageFileNameProvider, deviceZoomLevel, found); ImageData resizedData = DPIUtil.autoScaleUp (device, imageData); init(resizedData); init (); if (deviceZoomLevel != currentDeviceZoom) { boolean[] found = new boolean[1]; ImageData data = DPIUtil.validateAndGetImageDataAtZoom (imageDataProvider, deviceZoomLevel, found); ImageData resizedData = DPIUtil.autoScaleImageData(device, data, deviceZoomLevel, 100); init(resizedData); init(); ImageData data = getImageDataAtCurrentZoom(); destroy (); ImageData resizedData = DPIUtil.autoScaleImageData(device, data, deviceZoomLevel, currentDeviceZoom); init(resizedData); init();
super(device); this.imageDataProvider = imageDataProvider; currentDeviceZoom = DPIUtil.getDeviceZoom(); boolean[] found = new boolean[1]; ImageData data = DPIUtil.validateAndGetImageDataAtZoom(imageDataProvider, currentDeviceZoom, found); if (found[0]) { init (data); } else { ImageData resizedData = DPIUtil.autoScaleUp (device, data); init (resizedData);
super(device); this.imageFileNameProvider = imageFileNameProvider; currentDeviceZoom = DPIUtil.getDeviceZoom (); boolean[] found = new boolean[1]; String fileName = DPIUtil.validateAndGetImagePathAtZoom (imageFileNameProvider, currentDeviceZoom, found); if (found[0]) { initNative (fileName); if (this.handle == 0) init(new ImageData (fileName)); } else { ImageData resizedData = DPIUtil.autoScaleUp (device, new ImageData (fileName)); init(resizedData);
super(device); if (data == null) SWT.error(SWT.ERROR_NULL_ARGUMENT); currentDeviceZoom = DPIUtil.getDeviceZoom (); data = DPIUtil.autoScaleUp (device, data); init(data); init();
/** * Auto-scale up ImageData */ public static ImageData autoScaleUp (Device device, final ImageData imageData) { if (deviceZoom == 100 || imageData == null) return imageData; float scaleFactor = getScalingFactor (); return autoScaleImageData(device, imageData, scaleFactor); }
/** * Auto-scale up float array dimensions. */ public static float[] autoScaleDown (float size[]) { if (deviceZoom == 100 || size == null) return size; float scaleFactor = getScalingFactor (); float scaledSize[] = new float[size.length]; for (int i = 0; i < scaledSize.length; i++) { scaledSize[i] = size[i] / scaleFactor; } return scaledSize; }