Commit Graph

363 Commits

Author SHA1 Message Date
Serge Ivanov 9926d33450 - ComboLBox is always created as child of ComboBox. If ComboBox has style
other than CBS_SIMPLE, parent of listbox is set to desktop.
- In CBDropDown. ComboBox uses only first item to calculate height of
  dropped listbox. Also if listbox is empty its height is unmodified
  (previously it was set to 0).
- Added correct handling of WM_GETDLGCODE and WM_(SYS)KEYDOWN messages.
- General clean-up. Message order is now more precise (at least
  notifications to client); listbox - combobox interaction has slight
  differences comparing to Windows.
2000-06-07 03:48:02 +00:00
Serge Ivanov 9eedcf5852 - Removed dependency of edit control from combobox implementation.
- Edit control uses undocumented window style 0x0200 to detect is it a part
  of combobox. If so it calls GetDlgItem(hwndCombo, 1000) to get ComboLBox
  window handle (see comments for combo.c below).
- EDIT_CheckCombo - modified for correct handling of keyboard messages.
- Processing of WM_GETDLGCODE and WM_CHAR for VK_RETURN and VK_ESCAPE
  depends on whether listbox is dropped down. This prevents closing of dialog
  if listbox is dropped down and allows combobox to process these keyboard
  messages properly.
2000-06-07 03:47:34 +00:00
Serge Ivanov 07917e40e8 - We can use wnd->wIDmenu for ComboLBox (it is not reset anymore in SetParent)
- When user clicks outside of dropped listbox, original selection must be
  restored.
- ComboLBox has caret_on = FALSE on creation, that's why combobox sends
  LB_CARETON message before dropping listbox down (but only for
  CBS_DROPDOWNLIST - I don't now why).
2000-06-07 03:46:57 +00:00
Alexandre Julliard 72bdd5bee7 Stephane Lussier
Sheri Steeves
Haithem Hmida
- Height of the listbox should be adjust when LBS_OWNERDRAWFIXED is set
  and not if LBS_OWNERDRAWVARIABLE is set, previously it was not adjusting
  the size in both cases.
- When the caret index change, items repainting need tp be in this
  order
  a) Paint old caret item without the focus
  b) Paint old caret item without the selection
  c) Paint new caret item with the selection
  d) Paint new caret item with the focus.
- When repainting the listbox, we should paint all items regarding if
  they are slected or not and then paint after the focus item. So focus
  item will end out being painted twice. (That's what Windows does).
2000-06-07 03:17:35 +00:00
Susan Farley b09c6ef5ae Attempt to paint the checkbox and radio buttons better. 2000-06-04 01:32:59 +00:00
Andreas Mohr 2e011a5243 Lots of spelling fixes that accumulated in my tree again, made several
error msgs more verbose, doc updates.
2000-06-01 23:28:25 +00:00
Alexandre Julliard 207f7019e6 Louis-Philippe Gagnon (of Macadamian for Corel)
Static controls weren't receiving WM_LBUTTONDBLCLK messages because the
Static window class was registered without the CS_DBLCLKS style (which it
has in Windows).
2000-06-01 23:15:49 +00:00
Serge Ivanov bfe15b12ad MSDN: "WM_NCHITTEST - Returns HTCLIENT if the control style is
SS_NOTIFY; otherwise, returns HTTRANSPARENT. "
2000-06-01 22:46:51 +00:00
Alexandre Julliard d566a0e309 Serge Ivanov
Returning DLGC_WANTALLKEYS for multiline edit control was not good because
it breaks navigation in dialogs.
2000-05-30 20:50:09 +00:00
David Grant 8a92213111 - Creating combobox with CBS_SIMPLE style shall set internal flag CBF_EDIT.
- Edit text must be selected only if CB is in focus.
- If CB has edit control we have to call CBUpdateEdit to update its
  contents. Invalidating textRect will not force updating of child
  edit control, obviously.
- We have to protect ourselves from changing selection in listbox when
  we receive listbox notification. So LBN_SELCHANGE -> CBUpdateEdit ->
  EN_CHANGE will not reselect item in the lisbox.
2000-05-30 17:48:33 +00:00
Alexandre Julliard dcc175de6a Owen Wang
When you click on an icon to open a combo box, you would expect it to
be enabled so you can choose something in it. In Wine this was not
guaranteed since your default flags could get lost in the process-heap
of the application.
2000-05-30 15:28:06 +00:00
Alexandre Julliard ab2f43f99b Serge Ivanov
- Added handling of WM_MOUSEACTIVATE message
- Added in_focus field to internal listbox's structure. This flag is set on
  receiving WM_SETFOCUS message and is reseted on WM_KILLFOCUS. All calls to
  GetFocus function were replaced with checks of this flag.
- In LISTBOX_HandleLButtonDown: focus is set only if 'in_focus' flag is
  clear
2000-05-26 22:28:34 +00:00
Alexandre Julliard fa2c79398d Henning Hoffmann
Don't send EN_CHANGE after painting the edit.
Send it wherever text is changed.
2000-05-26 01:24:56 +00:00
Ulrich Czekalla 70d5a95236 Moved the EN_UPDATE notification out of the paint handler. Instead,
the notification is sent when an InvalidateRect is made after
modifying the text.
2000-05-26 01:17:34 +00:00
Alexandre Julliard c616625945 Louis-Philippe Gagnon (of Macadamian Technologies for Corel)
Added event handler for WM_MBUTTONDOWN (sends WM_PASTE message).
2000-05-25 23:01:39 +00:00
Rob Farnum b200793de4 Post a WM_CANCELMODE message to wake up the internal menu handling
code. This fixes the problem of a menu being orphaned when the parent
window disappears, or if the parent loses focus.
2000-05-23 23:34:17 +00:00
Ulrich Czekalla c804e3eac4 Capture ^V,^X,^C and translate it to the corresponding message for
paste, cut, copy.
2000-05-23 21:16:07 +00:00
Alexandre Julliard 7f90a8c900 Serge Ivanov
Fixed WM_LBUTTONDBLCLK handling.
2000-05-23 04:18:12 +00:00
Andreas Mohr a8edb3e461 Some part of EDIT_EM_LineLength code was commented (broken). Restored
the capability to calculate the remaining non-selected chars of a
selection area.
2000-05-23 04:05:05 +00:00
Alexandre Julliard f5d4244f71 Sheri Steeves
The edit is now detected correctly if the parent is a combo box. It
wasn't working when the combobox was superclassed.
2000-05-18 00:16:53 +00:00
Susan Farley d34205ef94 Avoid calls to SetFocus when they are unnecessary. 2000-05-15 02:34:20 +00:00
Gerard Patel c6369b0bd7 When new menu Id is not found or index > nitems, insert the new menu
at end of current menu.
2000-05-14 22:52:52 +00:00
Susan Farley f1d467a337 Distinguish RADIOCHECK style menu items from standard checkmark menu
items.
2000-05-12 21:59:31 +00:00
Susan Farley b64aa2460e Like the AUTORADIOBUTTON, the parent of a RADIOBUTTON style button
should be sent a BN_CLICKED when it receives the focus.
2000-05-12 21:51:09 +00:00
Guy Albertelli f12b70addb Revalidate menu handle in mt.hTopMenu after DispatchMessage. 2000-05-11 00:06:11 +00:00
Aric Stewart 70cc169d1c - Wine was passing the wrong hwnd as the owner when processing owner
drawn menubars.
- When doing MENU_CalcItemSize for the menu bar we were not properly
  padding the returned rect.
2000-05-10 21:54:07 +00:00
Ken Thomases 130f0d88c1 Fixed to display popup-menu arrow on owner-drawn popup menus.
Fixed positioning of submenus relative to parent menus.
2000-05-10 21:38:37 +00:00
Chris Morgan c0872e3119 Fixed scrolling bug. 2000-05-07 18:24:36 +00:00
Susan Farley 86d0b031bb Handle ^C, ^V and ^X in an edit control properly. 2000-05-05 18:21:02 +00:00
Ove Kaaven b4018e7a57 Fix edit control's WM_GETTEXT behaviour. 2000-04-23 19:59:11 +00:00
Stephane Lussier 4bdf4af11e Implemented Mousewheel support. 2000-04-18 11:56:33 +00:00
Patrik Stridvall 2d6457c11a Added/fixed some documentation reported by winapi_check. 2000-03-28 20:22:59 +00:00
Francois Gouget 6d77d3a1df Use min/max instead of MIN/MAX. 2000-03-25 21:44:35 +00:00
Huw D M Davies 65a0fa6e4e Send the correct ODA_ code when deselecting an item. 2000-03-25 21:41:17 +00:00
Alexandre Julliard 7f3418fba0 Store monitor size and depth in the generic structure.
Merged monitor driver into USER driver.
2000-03-25 17:30:13 +00:00
Huw D M Davies 2d6eabacc3 Set the correct value for the cch element of MENUITEMINFO in
GetMenuItemInfo.
2000-03-24 19:48:53 +00:00
Huw D M Davies 2e34030a02 Stop a WM_SETTEXT message (and friends) to a combo sending CBN_EDIT*
messages to the parent.
2000-03-24 19:44:39 +00:00
Alexandre Julliard 28c3a1baf3 Moved graphics initialisation to the x11drv/ttydrv dll init code.
Merged event, keyboard and mouse drivers into USER driver.
2000-03-20 18:21:19 +00:00
Patrik Stridvall 6cc47d4924 Removed a lot of unnecessary includes and fixed the compile errors. 2000-03-08 18:26:56 +00:00
Ulrich Czekalla 60b1c38e86 The static control only needs to invalidate its rect when we SetText. 2000-03-08 18:22:51 +00:00
Ulrich Czekalla 33026a2a6e Send WM_HELP message when F1 is pressed. 2000-02-26 19:13:44 +00:00
Yuxi Zhang f94c3c55c1 In the listbox, when the last item is selected and deleted, it still
appeared in the window.

Sheri Steeves <sheri@macadamian.com>
In LISTBOX_UpdateScroll(), if the listbox did not have the WS_SCROLL
style it would just return.  This left the horizontal scroll bar
uninitialized and it was appearing at the bottom of the listbox when
it did not have to.

Serge Ivanov <sergei@corel.com>
LISTBOX_SetColumnWidth adds extra 2 pixels to the passed column width
(it says it is for column margins). Obviously it is wrong, because
margins must be internal.
2000-02-26 19:13:12 +00:00
Bill Jin 4f155e88bc Bitmap buttons were not refreshed correctly. 2000-02-26 18:29:15 +00:00
Alexandre Julliard 916f975624 Improved the selector get/set functions.
Support ANSI-compatible inline asm (with the help of Patrik Stridvall).
2000-02-26 16:51:13 +00:00
Jeremy White d3e22d9d55 Removed #include of wingdi.h and windef.h from winuser.h (and resolved
the resulting compilation failures).
2000-02-10 19:03:02 +00:00
Luc Tourangeau e84b678408 Implementation of Static OwnerDraw. 2000-02-07 16:01:04 +00:00
Alexandre Julliard b2f6f0e7d2 Removed resource.h. 2000-02-03 01:54:36 +00:00
Dmitry Timoshkov 6fb62f52f5 Correct the behaviour of the accelerator keys in dialogs according to
the Windows' one.
2000-01-29 22:09:40 +00:00
Gerard Patel 3e629748cf Validate the menu handles. 2000-01-17 22:22:16 +00:00
Pascal Lessard ae6de763e9 Stop menu tracking when clicking on the menu bar where there is no
menu item.
2000-01-09 02:38:02 +00:00