@Override void setBoundsInPixels (int x, int y, int width, int height, int flags, boolean defer) { /* * Bug in Windows. If the table column widths are adjusted * in WM_SIZE or WM_POSITIONCHANGED using LVM_SETCOLUMNWIDTH * blank lines may be inserted at the top of the table. A * call to LVM_GETTOPINDEX will return a negative number (this * is an impossible result). Once the blank lines appear, * there seems to be no way to get rid of them, other than * destroying and recreating the table. The fix is to send * the resize notification after the size has been changed in * the operating system. * * NOTE: This does not fix the case when the user is resizing * columns dynamically. There is no fix for this case at this * time. */ setDeferResize (true); super.setBoundsInPixels (x, y, width, height, flags, false); setDeferResize (false); }
@Override void setBoundsInPixels (int x, int y, int width, int height, int flags) { /* * Feature in Windows. For some reason, when a tool bar is * repositioned more than once using DeferWindowPos () into * the same HDWP, the toolbar redraws more than once, defeating * the purpose of DeferWindowPos (). The fix is to end the * deferred positioning before the next tool bar is added, * ensuring that only one tool bar position is deferred at * any given time. */ if (parent.lpwp != null) { if (getDrawing () && OS.IsWindowVisible (handle)) { parent.setResizeChildren (false); parent.setResizeChildren (true); } } super.setBoundsInPixels (x, y, width, height, flags); }
super.setBoundsInPixels (x, y, width, height, flags);
super.setBoundsInPixels (x, y, width, height);
super.setBoundsInPixels (x, y, width, height);
super.setBoundsInPixels (x, y, width, height);