This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

View | Details | Raw Unified | Return to bug 186672
Collapse All | Expand All

(-)a/openide.explorer/src/org/openide/explorer/view/OutlineView.java (+65 lines)
Lines 75-80 Link Here
75
import javax.swing.JPopupMenu;
75
import javax.swing.JPopupMenu;
76
import javax.swing.JScrollPane;
76
import javax.swing.JScrollPane;
77
import javax.swing.JTable;
77
import javax.swing.JTable;
78
import javax.swing.JToolTip;
78
import javax.swing.JViewport;
79
import javax.swing.JViewport;
79
import javax.swing.KeyStroke;
80
import javax.swing.KeyStroke;
80
import javax.swing.ListSelectionModel;
81
import javax.swing.ListSelectionModel;
Lines 1139-1144 Link Here
1139
            this.treeSortable = treeSortable;
1140
            this.treeSortable = treeSortable;
1140
        }
1141
        }
1141
1142
1143
        private JToolTip toolTip = null;
1144
1145
        @Override
1146
        public String getToolTipText(MouseEvent event) {
1147
            try {
1148
                // Required to really get the tooltip text:
1149
                putClientProperty("ComputingTooltip", Boolean.TRUE);
1150
1151
                toolTip = null;
1152
                String tipText = null;
1153
                Point p = event.getPoint();
1154
1155
                // Locate the renderer under the event location
1156
                int hitColumnIndex = columnAtPoint(p);
1157
                int hitRowIndex = rowAtPoint(p);
1158
1159
                if ((hitColumnIndex != -1) && (hitRowIndex != -1)) {
1160
                    TableCellRenderer renderer = getCellRenderer(hitRowIndex, hitColumnIndex);
1161
                    Component component = prepareRenderer(renderer, hitRowIndex, hitColumnIndex);
1162
1163
                    // Now have to see if the component is a JComponent before
1164
                    // getting the tip
1165
                    if (component instanceof JComponent) {
1166
                        // Convert the event to the renderer's coordinate system
1167
                        Rectangle cellRect = getCellRect(hitRowIndex, hitColumnIndex, false);
1168
                        p.translate(-cellRect.x, -cellRect.y);
1169
                        MouseEvent newEvent = new MouseEvent(component, event.getID(),
1170
                                                  event.getWhen(), event.getModifiers(),
1171
                                                  p.x, p.y,
1172
                                                  event.getXOnScreen(),
1173
                                                  event.getYOnScreen(),
1174
                                                  event.getClickCount(),
1175
                                                  event.isPopupTrigger(),
1176
                                                  MouseEvent.NOBUTTON);
1177
1178
                        tipText = ((JComponent)component).getToolTipText(newEvent);
1179
                        toolTip = ((JComponent)component).createToolTip();
1180
                    }
1181
                }
1182
1183
                // No tip from the renderer get our own tip
1184
                if (tipText == null)
1185
                    tipText = getToolTipText();
1186
                
1187
                return tipText;
1188
            } finally {
1189
                putClientProperty("ComputingTooltip", Boolean.FALSE);
1190
            }
1191
            //return super.getToolTipText(event);
1192
        }
1193
1194
        @Override
1195
        public JToolTip createToolTip() {
1196
            JToolTip t = toolTip;
1197
            toolTip = null;
1198
            if (t != null) {
1199
                return t;
1200
            } else {
1201
                return super.createToolTip();
1202
            }
1203
        }
1204
1205
1206
1142
        /**
1207
        /**
1143
         * Extension of ETableColumn using TableViewRowComparator as
1208
         * Extension of ETableColumn using TableViewRowComparator as
1144
         * comparator.
1209
         * comparator.

Return to bug 186672