Index: CLabel.java =================================================================== RCS file: /home/eclipse/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt/custom/CLabel.java,v retrieving revision 1.54 diff -u -r1.54 CLabel.java --- CLabel.java 18 May 2005 19:16:58 -0000 1.54 +++ CLabel.java 30 May 2005 11:22:40 -0000 @@ -379,11 +379,10 @@ extent.x = Math.max(extent.x, e.x); } } - if (appToolTipText == null) { - super.setToolTipText(text); - } + + internalSetTooltipText(text, appToolTipText); } else { - super.setToolTipText(appToolTipText); + internalSetTooltipText(null, appToolTipText); } // determine horizontal position @@ -500,6 +499,18 @@ } } /** + * Allows to define a custom way of handling tooltips. + * + * @param text label's text if it is not completely visible, null otherwise + * @param appTooltipText tooltip set by the application + */ +protected void internalSetTooltipText(String text, String appTooltipText) { + if (appTooltipText != null) + super.setToolTipText(appTooltipText); + else + super.setToolTipText(text); +} +/** * Paint the Label's border. */ private void paintBorder(GC gc, Rectangle r) { @@ -744,8 +755,8 @@ } } public void setToolTipText (String string) { - super.setToolTipText (string); - appToolTipText = super.getToolTipText(); + internalSetTooltipText(null, string); + appToolTipText = string; // super.getToolTipText(); } /** * Shorten the given text t so that its length doesn't exceed