Java Code Examples for org.eclipse.swt.widgets.Control#getSize()
The following examples show how to use
org.eclipse.swt.widgets.Control#getSize() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ImageWriter.java From logbook with MIT License | 6 votes |
/** * 指定されたcontrolを画像イメージとして書き込みます。 * * @param control * 画像イメージとして書き込むControl * @throws IOException */ public void write(Control control) throws IOException { Point size = control.getSize(); GC gc = new GC(control); try { Image image = new Image(Display.getDefault(), size.x, size.y); try { gc.copyArea(image, 0, 0); this.write(image); } finally { image.dispose(); } } finally { gc.dispose(); } }
Example 2
Source File: ErDiagramInformationControl.java From ermaster-b with Apache License 2.0 | 6 votes |
public ErDiagramInformationControl(ERDiagram diagram, Shell shell, Control composite) { super(shell, true); this.diagram = diagram; create(); int width = 300; int height = 300; Point loc = composite.toDisplay(0, 0); Point size = composite.getSize(); int x = (size.x - width) / 2 + loc.x; int y = (size.y - height) / 2 + loc.y; setSize(width, height); setLocation(new Point(x, y)); addFocusListener(new FocusAdapter() { @Override public void focusLost(FocusEvent e) { dispose(); } }); }
Example 3
Source File: EmptyTablePlaceholder.java From nebula with Eclipse Public License 2.0 | 5 votes |
/** * Actually resize ourself. */ private void resize() { Point headerSize = new Point(0, 0); Control header = parentTable.getHeaderControl(); if (header != null) { headerSize = header.getSize(); } Point parentSize = getParent().getSize(); setBounds(0, headerSize.y+2, parentSize.x-4, parentSize.y - headerSize.y-6); }
Example 4
Source File: CTreeCell.java From nebula with Eclipse Public License 2.0 | 5 votes |
protected void locate(Control control) { Rectangle area = getClientArea(); Point loc = new Point(area.x, item.getTop()); Point size = control.getSize(); if(hAlign == SWT.RIGHT) loc.x += (area.width-size.x); else if(hAlign == SWT.CENTER) loc.x += ((area.width-size.x)/2); // if(vAlign == SWT.BOTTOM) loc.y += (area.height-size.y); // else if(vAlign == SWT.CENTER) loc.y += ((area.height-size.y)/2); control.setLocation(loc); }
Example 5
Source File: QuickOutlinePopup.java From xtext-eclipse with Eclipse Public License 2.0 | 5 votes |
@Override protected Point getDefaultLocation(Point initialSize) { Control textWidget = xtextEditor.getAdapter(Control.class); Point size = textWidget.getSize(); Point popupLocation = new Point((size.x / 2) - (initialSize.x / 2), (size.y / 2) - (initialSize.y / 2)); return textWidget.toDisplay(popupLocation); }
Example 6
Source File: ModulaQuickOutlineDialog.java From xds-ide with Eclipse Public License 1.0 | 5 votes |
@Override protected void adjustBounds() { if (!getPersistSize()) { Point prefSize; int gap5W = SwtUtils.getTextWidth(filteredTree, "WWWWW"); //$NON-NLS-1$ prefSize = filteredTree.computeSize(SWT.DEFAULT, SWT.DEFAULT); prefSize.x += gap5W; prefSize.y += SWTFactory.getCharHeight(filteredTree)*3; Rectangle recDisplay = filteredTree.getDisplay().getPrimaryMonitor().getClientArea(); prefSize.x = Math.max(prefSize.x, SwtUtils.getTextWidth(filteredTree, "WWWWWWWWWWWWWWWWWWWWWWWWWWW")); //$NON-NLS-1$ prefSize.x = Math.min(prefSize.x, (int)((double)recDisplay.width / 1.5)); prefSize.y = Math.min(prefSize.y, (int)((double)recDisplay.height / 1.2)); // prefSize now is calculateg for all whole content. Clip it by decreased editor window size: Control edCtrl = (Control) editor.getAdapter(Control.class); Point edSize = edCtrl.getSize(); prefSize.x = Math.min(prefSize.x, Math.max(edSize.x - gap5W*5, gap5W*5)); prefSize.y = Math.min(prefSize.y, Math.max(edSize.y - gap5W*2, gap5W*5)); getShell().setSize(prefSize); if (!this.getPersistLocation()) { int xx = (edSize.x - prefSize.x) / 2; int yy = (edSize.y - prefSize.y) / 2; Point edPos = edCtrl.toDisplay(new Point(0,0)); getShell().setLocation(edPos.x + xx, edPos.y + yy); } } }
Example 7
Source File: BonitaSashForm.java From bonita-studio with GNU General Public License v2.0 | 5 votes |
protected void saveChildControlSizes() { // Save control sizes Control [] children = getChildren(); int iChildToSave = 0; for (int i = 0; i < children.length && iChildToSave < 2; i++){ Control child = children[i]; if (! (child instanceof Sash)){ currentSashInfo.savedSizes[iChildToSave] = child.getSize(); iChildToSave++; } } }
Example 8
Source File: HeaderPage.java From uima-uimaj with Apache License 2.0 | 5 votes |
/** * Setup 1 column layout. * * @param managedForm the managed form * @return the composite */ public Composite setup1ColumnLayout(IManagedForm managedForm) { final ScrolledForm sform = managedForm.getForm(); final Composite form = sform.getBody(); form.setLayout(new GridLayout(1, false)); // this is required ! Composite xtra = toolkit.createComposite(form); xtra.setLayout(new GridLayout(1, false)); xtra.setLayoutData(new GridData(GridData.FILL_BOTH)); Control c = form.getParent(); while (!(c instanceof ScrolledComposite)) c = c.getParent(); ((GridData) xtra.getLayoutData()).widthHint = c.getSize().x; return xtra; }
Example 9
Source File: HeaderPage.java From uima-uimaj with Apache License 2.0 | 5 votes |
/** * Setup 2 column layout. * * @param managedForm the managed form * @param w1 the w 1 * @param w2 the w 2 * @return the form 2 panel */ public Form2Panel setup2ColumnLayout(IManagedForm managedForm, int w1, int w2) { final ScrolledForm sform = managedForm.getForm(); final Composite form = sform.getBody(); form.setLayout(new GridLayout(1, false)); // this is required ! Composite xtra = toolkit.createComposite(form); xtra.setLayout(new GridLayout(1, false)); xtra.setLayoutData(new GridData(GridData.FILL_BOTH)); Control c = xtra.getParent(); while (!(c instanceof ScrolledComposite)) c = c.getParent(); ((GridData) xtra.getLayoutData()).widthHint = c.getSize().x; ((GridData) xtra.getLayoutData()).heightHint = c.getSize().y; sashForm = new SashForm(xtra, SWT.HORIZONTAL); sashForm.setLayoutData(new GridData(GridData.FILL_BOTH)); // needed leftPanel = newComposite(sashForm); ((GridLayout) leftPanel.getLayout()).marginHeight = 5; ((GridLayout) leftPanel.getLayout()).marginWidth = 5; rightPanel = newComposite(sashForm); ((GridLayout) rightPanel.getLayout()).marginHeight = 5; ((GridLayout) rightPanel.getLayout()).marginWidth = 5; sashForm.setWeights(new int[] { w1, w2 }); leftPanelPercent = (float) w1 / (float) (w1 + w2); rightPanelPercent = (float) w2 / (float) (w1 + w2); rightPanel.addControlListener(new ControlAdapter() { @Override public void controlResized(ControlEvent e) { setSashFormWidths(); } }); return new Form2Panel(form, leftPanel, rightPanel); }
Example 10
Source File: InternalCompositeTable.java From nebula with Eclipse Public License 2.0 | 4 votes |
private void drawGridLines(PaintEvent e, boolean isHeader) { Color oldColor = e.gc.getForeground(); try { // Get the colors we need Display display = Display.getCurrent(); Color lineColor = display .getSystemColor(SWT.COLOR_WIDGET_DARK_SHADOW); Color secondaryColor = display .getSystemColor(SWT.COLOR_WIDGET_NORMAL_SHADOW); Color hilightColor = display .getSystemColor(SWT.COLOR_WIDGET_HIGHLIGHT_SHADOW); if (!isHeader) { lineColor = display .getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW); } // Get the control Control toPaint = (Control) e.widget; Point controlSize = toPaint.getSize(); // Draw the bottom line(s) e.gc.setForeground(lineColor); e.gc.drawLine(0, controlSize.y - 1, controlSize.x, controlSize.y - 1); if (isHeader) { e.gc.setForeground(secondaryColor); e.gc.drawLine(0, controlSize.y - 2, controlSize.x, controlSize.y - 2); e.gc.setForeground(hilightColor); e.gc.drawLine(0, 1, controlSize.x, 1); } // Now draw lines around the child controls, if there are any if (toPaint instanceof Composite) { Composite row = (Composite) toPaint; Control[] children = row.getChildren(); for (int i = 0; i < children.length; i++) { Rectangle childBounds = children[i].getBounds(); // Paint the beginning lines if (isHeader) { e.gc.setForeground(hilightColor); e.gc.drawLine(childBounds.x - 2, 1, childBounds.x - 2, controlSize.y - 2); } // Paint the ending lines e.gc.setForeground(lineColor); int lineLeft = childBounds.x + childBounds.width + 1; e.gc.drawLine(lineLeft, 0, lineLeft, controlSize.y); if (isHeader) { e.gc.setForeground(secondaryColor); e.gc.drawLine(lineLeft - 1, 0, lineLeft - 1, controlSize.y - 1); } } } } finally { e.gc.setForeground(oldColor); } }
Example 11
Source File: SWTUtil.java From SWET with MIT License | 4 votes |
public static void packWidth(Control control) { Point prefSize = control.computeSize(SWT.DEFAULT, SWT.DEFAULT, true); Point currSize = control.getSize(); control.setSize(prefSize.x, currSize.y); }
Example 12
Source File: SWTUtil.java From SWET with MIT License | 4 votes |
public static void packHeight(Control control) { Point prefSize = control.computeSize(SWT.DEFAULT, SWT.DEFAULT, true); Point currSize = control.getSize(); control.setSize(currSize.x, prefSize.y); }
Example 13
Source File: TypeHierarchyViewPart.java From Eclipse-Postfix-Code-Completion with Eclipse Public License 1.0 | 4 votes |
public void setViewLayout(int layout) { if (fCurrentLayout != layout || layout == VIEW_LAYOUT_AUTOMATIC) { fInComputeLayout= true; try { boolean methodViewerNeedsUpdate= false; if (fMethodViewerViewForm != null && !fMethodViewerViewForm.isDisposed() && fTypeMethodsSplitter != null && !fTypeMethodsSplitter.isDisposed()) { boolean horizontal= false; if (layout == VIEW_LAYOUT_SINGLE) { fMethodViewerViewForm.setVisible(false); showMembersInHierarchy(false); updateMethodViewer(null); } else { if (fCurrentLayout == VIEW_LAYOUT_SINGLE) { fMethodViewerViewForm.setVisible(true); methodViewerNeedsUpdate= true; } if (layout == VIEW_LAYOUT_AUTOMATIC) { if (fParent != null && !fParent.isDisposed()) { Point size= fParent.getSize(); if (size.x != 0 && size.y != 0) { // bug 185397 - Hierarchy View flips orientation multiple times on resize Control viewFormToolbar= fTypeViewerViewForm.getTopLeft(); if (viewFormToolbar != null && !viewFormToolbar.isDisposed() && viewFormToolbar.isVisible()) { size.y -= viewFormToolbar.getSize().y; } horizontal= size.x > size.y; } else if (size.x == 0 && size.y == 0) { return; } } if (fCurrentLayout == VIEW_LAYOUT_AUTOMATIC) { boolean wasHorizontal= fTypeMethodsSplitter.getOrientation() == SWT.HORIZONTAL; if (wasHorizontal == horizontal) { return; // no real change } } } else if (layout == VIEW_LAYOUT_HORIZONTAL) { horizontal= true; } fTypeMethodsSplitter.setOrientation(horizontal ? SWT.HORIZONTAL : SWT.VERTICAL); } updateMainToolbar(horizontal); fTypeMethodsSplitter.layout(); } if (methodViewerNeedsUpdate) { updateMethodViewer(fSelectedType); } fDialogSettings.put(DIALOGSTORE_VIEWLAYOUT, layout); fCurrentLayout= layout; updateCheckedState(); } finally { fInComputeLayout= false; } } }
Example 14
Source File: ResizeEffect.java From nebula with Eclipse Public License 2.0 | 3 votes |
/** * @deprecated * @param w * @param x * @param y * @param duration * @param movement * @param onStop * @param onCancel */ public static void resize(AnimationRunner runner, Control w, int x, int y, int duration, IMovement movement, Runnable onStop, Runnable onCancel) { Point oldSize = w.getSize(); IEffect effect = new ResizeEffect(w, oldSize, new Point(x, y), duration, movement, onStop, onCancel); runner.runEffect(effect); }
Example 15
Source File: Resize.java From nebula with Eclipse Public License 2.0 | 3 votes |
/** * @deprecated * @param w * @param x * @param y * @param duration * @param movement * @param onStop * @param onCancel */ public static void resize(AnimationRunner runner, Control w, int x, int y, int duration, IMovement movement, Runnable onStop, Runnable onCancel) { Point oldSize = w.getSize(); IEffect effect = new Resize(w, oldSize, new Point(x, y), duration, movement, onStop, onCancel); runner.runEffect(effect); }