| /******************************************************************************* |
| * Copyright (c) 2018 Red Hat and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * Red Hat - initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.swt.tests.gtk.snippets; |
| |
| |
| import org.eclipse.swt.SWT; |
| import org.eclipse.swt.events.SelectionEvent; |
| import org.eclipse.swt.events.SelectionListener; |
| import org.eclipse.swt.graphics.Font; |
| import org.eclipse.swt.graphics.Image; |
| import org.eclipse.swt.widgets.Button; |
| import org.eclipse.swt.widgets.Display; |
| import org.eclipse.swt.widgets.Shell; |
| import org.eclipse.swt.widgets.TabFolder; |
| import org.eclipse.swt.widgets.TabItem; |
| |
| public class Bug85050_ControlResizeTabFolder { |
| public static void main(String [] args) { |
| final Display display = new Display(); |
| Shell shell = new Shell(display); |
| |
| final TabFolder tabFolder = new TabFolder(shell, SWT.NONE); |
| TabItem item = new TabItem(tabFolder, SWT.NONE); |
| System.out.println(tabFolder.computeTrim(0,0,0,0)); |
| tabFolder.setFont(new Font(display, "Arial", 20, SWT.ITALIC)); |
| System.out.println(tabFolder.computeTrim(0,0,0,0)); |
| final TabItem item2 = new TabItem(tabFolder, SWT.NONE); |
| Button button = new Button(tabFolder, SWT.PUSH); |
| button.setText("george"); |
| item2.setControl(button); |
| Button button2 = new Button(tabFolder, SWT.PUSH); |
| button2.setText("ralph"); |
| item.setControl(button2); |
| button.addSelectionListener(new SelectionListener () { |
| @Override |
| public void widgetDefaultSelected(SelectionEvent e) {} |
| @Override |
| public void widgetSelected(SelectionEvent e) { |
| System.out.println("before: " + tabFolder.computeTrim(0,0,0,0)); |
| //tabFolder.setFont(new Font(display, "Arial", 2, SWT.ITALIC)); |
| item2.setImage(new Image(display, 60, 60)); |
| System.out.println("after: " + tabFolder.computeTrim(0,0,0,0)); |
| //item2.dispose(); |
| } |
| }); |
| tabFolder.setBounds(0,0,200,200); |
| |
| shell.open(); |
| while(!shell.isDisposed()) { |
| if(!display.readAndDispatch()) display.sleep(); |
| } |
| display.dispose(); |
| } |
| } |