ChangeLog Implement CBES_EX_NOSIZELIMIT style for ComboEx. Index: dlls/comctl32/comboex.c =================================================================== RCS file: /var/cvs/wine/dlls/comctl32/comboex.c,v retrieving revision 1.51 diff -u -r1.51 comboex.c --- dlls/comctl32/comboex.c 28 Aug 2002 22:21:46 -0000 1.51 +++ dlls/comctl32/comboex.c 29 Aug 2002 20:56:14 -0000 @@ -19,9 +19,6 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * FIXME: - * 1. Implement following extended styles: - * CBES_EX_NOSIZELIMIT */ #include <string.h> @@ -399,9 +396,24 @@ TRACE("upgraded height due to image: height=%d\n", cy); } SendMessageW (infoPtr->hwndSelf, CB_SETITEMHEIGHT, (WPARAM)-1, (LPARAM)cy); - if (infoPtr->hwndCombo) + if (infoPtr->hwndCombo) { SendMessageW (infoPtr->hwndCombo, CB_SETITEMHEIGHT, (WPARAM) 0, (LPARAM) cy); + if ( !(infoPtr->flags & CBES_EX_NOSIZELIMIT)) { + RECT comboRect; + if (GetWindowRect(infoPtr->hwndCombo, &comboRect)) { + RECT ourRect; + if (GetWindowRect(infoPtr->hwndSelf, &ourRect)) { + if (comboRect.bottom > ourRect.bottom) { + POINT pt = { ourRect.left, ourRect.top }; + if (ScreenToClient(infoPtr->hwndSelf, &pt)) + MoveWindow( infoPtr->hwndSelf, pt.x, pt.y, ourRect.right - ourRect.left, + comboRect.bottom - comboRect.top, FALSE); + } + } + } + } + } } @@ -641,9 +653,6 @@ TRACE("(mask=x%08lx, style=0x%08lx)\n", mask, style); dwTemp = infoPtr->dwExtStyle; - - if (style & CBES_EX_NOSIZELIMIT) - FIXME("Extended style CBES_EX_NOSIZELIMIT implemented\n"); if (mask) infoPtr->dwExtStyle = (infoPtr->dwExtStyle & ~mask) | style;