@Override void createHandle () { super.createHandle (); state |= THEME_BACKGROUND; layout = new TextLayout (display); disabledColor = Color.win32_new (display, OS.GetSysColor (OS.COLOR_GRAYTEXT)); offsets = new Point [0]; ids = new String [0]; mnemonics = new int [0]; selection = new Point (-1, -1); focusIndex = mouseDownIndex = -1; }
private TableOwnerDrawSupport(Table table) { int orientation= table.getStyle() & (SWT.LEFT_TO_RIGHT | SWT.RIGHT_TO_LEFT); fSharedLayout= new TextLayout(table.getDisplay()); fSharedLayout.setOrientation(orientation); }
private TextLayout getSharedTextLayout(Display display) { if (cachedTextLayout == null) { int orientation = viewer.getControl().getStyle() & (SWT.LEFT_TO_RIGHT | SWT.RIGHT_TO_LEFT); cachedTextLayout = new TextLayout(display); cachedTextLayout.setOrientation(orientation); } return cachedTextLayout; }
protected String endShortenText(GC gc, String t, int width, int w) { TextLayout layout = new TextLayout (getDisplay()); layout.setText(t); String result = t; int len = gc.textExtent(result, DRAW_FLAGS).x; while ( len + w > width && result.length () > 0 ) { result = result.substring ( 0, validateOffset ( layout, result.length () - 1 ) ); len = gc.textExtent(result, DRAW_FLAGS).x; } layout.dispose(); return result + ellipsis; } protected String centerShortenText(GC gc, String t, int width, int w) {
private TableOwnerDrawSupport(Table table) { int orientation= table.getStyle() & (SWT.LEFT_TO_RIGHT | SWT.RIGHT_TO_LEFT); fSharedLayout= new TextLayout(table.getDisplay()); fSharedLayout.setOrientation(orientation); }
private TextLayout getSharedTextLayout(Display display) { if (cachedTextLayout == null) { int orientation = viewer.getControl().getStyle() & (SWT.LEFT_TO_RIGHT | SWT.RIGHT_TO_LEFT); cachedTextLayout = new TextLayout(display); cachedTextLayout.setOrientation(orientation); } return cachedTextLayout; }
protected String endShortenText(GC gc, String t, int width, int w) { TextLayout layout = new TextLayout (getDisplay()); layout.setText(t); String result = t; int len = gc.textExtent(result, DRAW_FLAGS).x; while ( len + w > width && result.length () > 0 ) { result = result.substring ( 0, validateOffset ( layout, result.length () - 1 ) ); len = gc.textExtent(result, DRAW_FLAGS).x; } layout.dispose(); return result + ellipsis; } protected String centerShortenText(GC gc, String t, int width, int w) {
protected String beginShortenText(GC gc, String t, int width, int w) { TextLayout layout = new TextLayout (getDisplay()); layout.setText(t); String result = t; int len = gc.textExtent(result, DRAW_FLAGS).x; while ( len + w > width && result.length () > 0 ) { result = result.substring ( validateOffsetInverse ( layout, 1 ) ); len = gc.textExtent(result, DRAW_FLAGS).x; } layout.dispose(); return ellipsis + result; } protected String endShortenText(GC gc, String t, int width, int w) {
protected String beginShortenText(GC gc, String t, int width, int w) { TextLayout layout = new TextLayout (getDisplay()); layout.setText(t); String result = t; int len = gc.textExtent(result, DRAW_FLAGS).x; while ( len + w > width && result.length () > 0 ) { result = result.substring ( validateOffsetInverse ( layout, 1 ) ); len = gc.textExtent(result, DRAW_FLAGS).x; } layout.dispose(); return ellipsis + result; } protected String endShortenText(GC gc, String t, int width, int w) {
public OwnerDrawSupport(Control control) { fControl= control; fTextLayout= new TextLayout(control.getDisplay()); control.addListener(SWT.PaintItem, this); control.addListener(SWT.EraseItem, this); control.addListener(SWT.Dispose, this); }
String shortenText(GC gc, String text, int width, String ellipses) { if (gc.textExtent(text, FLAGS).x <= width) return text; int ellipseWidth = gc.textExtent(ellipses, FLAGS).x; int length = text.length(); TextLayout layout = new TextLayout(parent.getDisplay()); layout.setText(text); int end = layout.getPreviousOffset(length, SWT.MOVEMENT_CLUSTER); while (end > 0) { text = text.substring(0, end); int l = gc.textExtent(text, FLAGS).x; if (l + ellipseWidth <= width) { break; } end = layout.getPreviousOffset(end, SWT.MOVEMENT_CLUSTER); } layout.dispose(); return end == 0 ? text.substring(0, 1) : text + ellipses; }
String shortenText(GC gc, String text, int width, String ellipses) { if (gc.textExtent(text, FLAGS).x <= width) return text; int ellipseWidth = gc.textExtent(ellipses, FLAGS).x; int length = text.length(); TextLayout layout = new TextLayout(parent.getDisplay()); layout.setText(text); int end = layout.getPreviousOffset(length, SWT.MOVEMENT_CLUSTER); while (end > 0) { text = text.substring(0, end); int l = gc.textExtent(text, FLAGS).x; if (l + ellipseWidth <= width) { break; } end = layout.getPreviousOffset(end, SWT.MOVEMENT_CLUSTER); } layout.dispose(); return end == 0 ? text.substring(0, 1) : text + ellipses; }
String shortenText(GC gc, String text, int width, String ellipses) { if (gc.textExtent(text, FLAGS).x <= width) return text; int ellipseWidth = gc.textExtent(ellipses, FLAGS).x; int length = text.length(); TextLayout layout = new TextLayout(parent.getDisplay()); layout.setText(text); int end = layout.getPreviousOffset(length, SWT.MOVEMENT_CLUSTER); while (end > 0) { text = text.substring(0, end); int l = gc.textExtent(text, FLAGS).x; if (l + ellipseWidth <= width) { break; } end = layout.getPreviousOffset(end, SWT.MOVEMENT_CLUSTER); } layout.dispose(); return end == 0 ? text.substring(0, 1) : text + ellipses; }
String shortenText(GC gc, String text, int width, String ellipses) { if (gc.textExtent(text, FLAGS).x <= width) return text; int ellipseWidth = gc.textExtent(ellipses, FLAGS).x; int length = text.length(); TextLayout layout = new TextLayout(parent.getDisplay()); layout.setText(text); int end = layout.getPreviousOffset(length, SWT.MOVEMENT_CLUSTER); while (end > 0) { text = text.substring(0, end); int l = gc.textExtent(text, FLAGS).x; if (l + ellipseWidth <= width) { break; } end = layout.getPreviousOffset(end, SWT.MOVEMENT_CLUSTER); } layout.dispose(); return end == 0 ? text.substring(0, 1) : text + ellipses; }
String shortenText(GC gc, String text, int width, String ellipses) { if (gc.textExtent(text, FLAGS).x <= width) return text; int ellipseWidth = gc.textExtent(ellipses, FLAGS).x; int length = text.length(); TextLayout layout = new TextLayout(parent.getDisplay()); layout.setText(text); int end = layout.getPreviousOffset(length, SWT.MOVEMENT_CLUSTER); while (end > 0) { text = text.substring(0, end); int l = gc.textExtent(text, FLAGS).x; if (l + ellipseWidth <= width) { break; } end = layout.getPreviousOffset(end, SWT.MOVEMENT_CLUSTER); } layout.dispose(); return end == 0 ? text.substring(0, 1) : text + ellipses; }
@Override void createHandle(int index) { state |= HANDLE | THEME_BACKGROUND; handle = OS.g_object_new (display.gtk_fixed_get_type (), 0); if (handle == 0) error (SWT.ERROR_NO_HANDLES); OS.gtk_widget_set_has_window (handle, true); OS.gtk_widget_set_can_focus (handle, true); layout = new TextLayout (display); disabledColor = new Color (display, LINK_DISABLED_FOREGROUND); offsets = new Point [0]; ids = new String [0]; mnemonics = new int [0]; selection = new Point (-1, -1); focusIndex = -1; }
@Override void createHandle(int index) { state |= HANDLE | THEME_BACKGROUND; handle = OS.g_object_new (display.gtk_fixed_get_type (), 0); if (handle == 0) error (SWT.ERROR_NO_HANDLES); OS.gtk_widget_set_has_window (handle, true); OS.gtk_widget_set_can_focus (handle, true); layout = new TextLayout (display); disabledColor = new Color (display, LINK_DISABLED_FOREGROUND); offsets = new Point [0]; ids = new String [0]; mnemonics = new int [0]; selection = new Point (-1, -1); focusIndex = -1; }
@Override void createHandle(int index) { state |= HANDLE | THEME_BACKGROUND; handle = OS.g_object_new (display.gtk_fixed_get_type (), 0); if (handle == 0) error (SWT.ERROR_NO_HANDLES); OS.gtk_widget_set_has_window (handle, true); OS.gtk_widget_set_can_focus (handle, true); layout = new TextLayout (display); disabledColor = new Color (display, LINK_DISABLED_FOREGROUND); offsets = new Point [0]; ids = new String [0]; mnemonics = new int [0]; selection = new Point (-1, -1); focusIndex = -1; }
/** * Creates and initializes the text layout used * to compute the size hint. * * @since 3.2 */ private void createTextLayout() { fTextLayout= new TextLayout(fBrowser.getDisplay()); // Initialize fonts String symbolicFontName= fSymbolicFontName == null ? JFaceResources.DIALOG_FONT : fSymbolicFontName; Font font= JFaceResources.getFont(symbolicFontName); fTextLayout.setFont(font); fTextLayout.setWidth(-1); font= JFaceResources.getFontRegistry().getBold(symbolicFontName); fBoldStyle= new TextStyle(font, null, null); // Compute and set tab width fTextLayout.setText(" "); //$NON-NLS-1$ int tabWidth= fTextLayout.getBounds().width; fTextLayout.setTabs(new int[] { tabWidth }); fTextLayout.setText(""); //$NON-NLS-1$ }
/** * Creates and initializes the text layout used * to compute the size hint. * * @since 3.2 */ private void createTextLayout() { fTextLayout= new TextLayout(fBrowser.getDisplay()); // Initialize fonts String symbolicFontName= fSymbolicFontName == null ? JFaceResources.DIALOG_FONT : fSymbolicFontName; Font font= JFaceResources.getFont(symbolicFontName); fTextLayout.setFont(font); fTextLayout.setWidth(-1); font= JFaceResources.getFontRegistry().getBold(symbolicFontName); fBoldStyle= new TextStyle(font, null, null); // Compute and set tab width fTextLayout.setText(" "); //$NON-NLS-1$ int tabWidth= fTextLayout.getBounds().width; fTextLayout.setTabs(new int[] { tabWidth }); fTextLayout.setText(""); //$NON-NLS-1$ }