Commit Graph

487 Commits

Author SHA1 Message Date
Louis Philippe Gagnon 956c847f49 Invalidate the focus rect when a listbox is resized. 2000-12-13 21:26:45 +00:00
Alexandre Julliard 982a223f36 Replaced PTR_SEG_TO_LIN macro by exported MapSL function.
Fixed a few ptr/segptr mismatches.
Moved CONV_RECT/POINT macros to wingdi16.h.
2000-12-13 20:20:09 +00:00
Alexandre Julliard bf67259a41 Use the DRIVE_* API constants instead of the DRIVETYPE enum.
Changed DRIVE_CANNOTDETERMINE and DRIVE_DOESNOTEXIST to use the
correct names.
Cleaned up a few dependencies on internal drive.c functions.
2000-12-12 00:44:42 +00:00
Alexandre Julliard 91222da881 Moved most builtin controls structures into their respective C file.
Created new controls.h file private to user32.dll and moved remaining
builtin controls definitions there.
2000-12-10 23:01:33 +00:00
Alexandre Julliard 9877906b26 Removed dependencies on the internals of the CLASS structure.
Added support for having both ASCII and Unicode window procedures for
builtin classes.
2000-12-07 23:39:16 +00:00
Louis Philippe Gagnon cef7c7af61 Update internal controls on WM_WINDOWPOSCHANGED. 2000-12-06 03:21:57 +00:00
Aric Stewart 6213ab3a89 Fixed a problem where the string in a combo box flickers if you
rapidly reset the content and then replace the content.
2000-12-05 21:12:05 +00:00
Patrik Stridvall 2b3aa616e8 Added/modified documentation for function arguments. 2000-12-01 23:58:28 +00:00
Louis Philippe Gagnon 537bcadf55 Don't update scrollbars when processing WM_DESTROY. 2000-11-30 20:37:29 +00:00
Andreas Mohr 94a6832b04 WM_SETTEXT should return TRUE on success. 2000-11-29 00:02:46 +00:00
Dmitry Timoshkov 2b4be4be93 Made button control fully unicode aware. 2000-11-28 23:51:48 +00:00
Alexandre Julliard 24a62ab9b0 Got rid of the Wine internal lstrcpy* functions and of winestring.h. 2000-11-28 22:40:56 +00:00
Dimitrie O. Paun 529da54394 Require {DECLARE,DEFAULT}_DEBUG_CHANNEL statements to end in a ; 2000-11-27 23:54:25 +00:00
Louis Philippe Gagnon 9cdd22c53d When processing mouse messages in MENU_TrackMenu, use the coordinates
in lParam instead of those in MSG::pt.
2000-11-27 22:39:35 +00:00
Alexandre Julliard 2682bc24ca Fixed a few dependencies on 16-bit or internal functions. Fixed a few
warnings.
2000-11-27 22:03:23 +00:00
Alexandre Julliard ac7efef3b5 Changed GetProcAddress16 and 16-bit resource functions to take normal
pointers instead of SEGPTRs.
Removed WIN16_GetTempDrive.
2000-11-27 21:54:01 +00:00
Dmitry Timoshkov 7a947b34b7 General clean up of the edit control: removed transfer of unused
variables, fixed signed/unsigned mismatches.
2000-11-27 01:34:25 +00:00
Chris Morgan cbbc7c3d60 Don't draw scrollbars if their client rectangle is empty. 2000-11-26 22:36:53 +00:00
Ove Kaaven 2c691b31ce Implemented Win16 behaviour of DDL_DRIVES in DlgDirList. 2000-11-25 03:06:03 +00:00
Dmitry Timoshkov 9308f640c1 Prepare switching to unicode of builtin widgets. 2000-11-15 23:05:52 +00:00
Joerg Mayer abe635cfd7 Get rid of some warnings about unused variables, signed/unsigned
comparisons and incomplete initializations.
2000-11-11 00:38:37 +00:00
Francois Gouget 0c247ec775 Fixed typos in comments. 2000-11-07 20:30:50 +00:00
Francois Gouget 75f9e647aa Take into account the sunken border for Win98 look.
Leave a 1 pixel gap to the left of menu bitmap items for symetry (and
because Win9x does it).
Leave a 1 pixel gap above menu bar items for symetry (and because
Win9x does it).
2000-11-06 05:25:29 +00:00
James Abbatiello 606f6203d4 Don't reset MF_POPUP flag in SetMenu(). 2000-11-05 03:18:11 +00:00
Dmitry Timoshkov d5e15d3be1 Do not invert "magic" bitmap menu items. 2000-11-02 20:08:34 +00:00
Alexandre Julliard 908464d448 Authors: Andreas Mohr <amohr@codeweavers.com>, Dimitrie O. Paun <dimi@cs.toronto.edu>, Patrik Stridvall <ps@leissner.se>
Various warning fixes.
2000-11-01 03:11:12 +00:00
Dmitry Timoshkov d0ff2ec08b Make bitmap menu items look like in windows when selected,
i.e. inverted and hilited (in Win98 look).
2000-11-01 02:11:41 +00:00
Francois Gouget e3810e3acc Check for SB_CTL before displaying a caret. 2000-11-01 01:52:37 +00:00
Francois Gouget eecb40ec43 Hide the caret only on the first WM_KEYDOWN. 2000-10-31 01:03:15 +00:00
Andreas Mohr 45c9fd892f - set the item height not only for the listbox, but also for the text field
- center text vertically
- beautify comments
2000-10-28 00:29:58 +00:00
Dmitry Timoshkov ef55932f4b Ask application to reinitialize its menu before processing an
accelerator key.
2000-10-26 21:47:20 +00:00
Francois Methot 9a58351fda Added support of blinking thumb as found in Windows scrollbar. 2000-10-25 21:26:27 +00:00
Aric Stewart c946b1cccd Converted menu string handling to Unicode. 2000-10-24 21:28:19 +00:00
Susan Farley a4251bbe4c Do not block CBN_EDITCHANGE for WM_PASTE or WM_CUT with the
NOEDITNOTIFY flag, as these msgs can come directly from the app to the
combo wndproc.
2000-10-24 01:38:49 +00:00
Ulrich Weigand 6bfbc3d23e Do not send EN_UPDATE to multi-line edit controls. 2000-10-23 00:38:10 +00:00
Francois Gouget 93fd46af54 Fixed the text color of higlighted menu bar item for the Win98 look.
Clicking on a separator should not close the menu.
Do not right align 'bitmap' items and the help menu for the Win9x look
and feels.
2000-10-23 00:37:49 +00:00
Alexandre Julliard 15bfcd0398 Moved $(MODULE).o rule out of Make.rules into the individual
Makefiles.
2000-09-29 00:28:25 +00:00
Alexandre Julliard 83f52d11c1 Moved all Win16 definitions out of the standard Windows headers. 2000-09-26 22:20:14 +00:00
Alexandre Julliard 072dfb57e3 Removed inclusion of wine/winestring.h from winbase.h and added it to
the C files that need it.
2000-09-25 23:30:56 +00:00
Gerard Patel 8caa407c05 In WM_DRAWITEM, always calls the app with a valid current focus_item. 2000-09-24 19:29:18 +00:00
Andreas Mohr 6f07e8abbc Fixed window lock problem in SetMenu(). 2000-09-19 02:38:11 +00:00
Serge Ivanov 6117fc4165 (Merged by Marcus Meissner <marcus@jet.franken.de>)
Fixed problem with origin for DST_COMPLEX style.
Fixed handling of DSS_DISABLED and DSS_DEFAULT styles.

Added handling of BS_MULTILINE style, label alignment
styles (BS_RIGHT, etc.) and some exotic styles BS_FLAT (only
pushbuttons for now), and BS_PUSHLIKE.

Modified label drawing procedure: now all kinds of buttons
use common BUTTON_DrawLabel function. Actual label drawing is
performed by DrawStateW function.

GroupBox must use WM_CTLCOLORSTATIC instead of WM_CTLCOLORBTN message.
2000-09-13 00:00:55 +00:00
Gerard Patel ed66930518 SetScrollInfo : don't show/hide scrollbar if no parameter (minval,
maxval) change.
2000-09-12 23:59:10 +00:00
Andreas Mohr 20cd9356a8 - fixes debugger output
- get rid of wrong comments
- fix comments
- .spec spelling fix
- improve warning message
2000-09-12 23:40:40 +00:00
Mike McCormack 5ae1c396cc Avoid divide by zero when listbox set to zero height. 2000-09-09 19:39:24 +00:00
Dmitry Timoshkov fbb2c9bdf8 GetMenu might be used to get child window id. 2000-09-09 19:38:34 +00:00
Andreas Mohr 2b5d9c6e50 Always call LISTVIEW_SetSelection() for an item, even if that item
has been selected before, in order to let other items get erased.
2000-08-29 03:52:16 +00:00
Susan Farley 597cb552ce Update the edit box before rolling up the listbox, so the
selection isn't lost.
2000-08-14 17:18:49 +00:00
Alexandre Julliard c7e7df8b17 Replaced all lstr* calls from inside Wine code by their str* equivalent. 2000-08-14 14:41:19 +00:00
Alexandre Julliard 198746d812 Replaced global Callbacks structure by appropriate glue code
generation. Removed a few unused entries in the Callout structure.
2000-08-14 14:29:22 +00:00
Alexandre Julliard 42d20f9dca Merged clipboard driver into USER driver.
Moved all ttydrv source files to dlls/ttydrv.
Load functions pointer for the USER driver from the graphics driver
dll with GetProcAddress.
2000-08-10 01:16:19 +00:00
Alexandre Julliard 5ab9d860f2 Removed some unnecessary #includes and dll dependencies. 2000-08-09 22:35:05 +00:00
Marcus Meissner c4fac7867e Initialize 'str' in ICONTITLE_GetTitlePos. 2000-08-07 23:51:02 +00:00
Susan Farley dbf5a4792c Avoid resetting the background color when clearing out blank areas, as
it may have been set to something other than COLOR_WINDOW by the
application.
2000-08-06 03:35:52 +00:00
Alexandre Julliard cb10fdab99 Replaced lstrlen/lstrcmp by libc equivalents everywhere we don't need
to trap exceptions.
2000-08-06 02:41:16 +00:00
Alexandre Julliard b0efe28f6c Removed a few dependencies on GDI internals from USER dll. 2000-08-04 04:18:04 +00:00
Gerard Patel cef12530eb Change logic of listbox resizing for 16 bits apps for lists without
LBS_NOINTEGRALHEIGHT style.
2000-08-01 20:48:40 +00:00
Ove Kaaven 690142dc5b Fix a few typos and such. 2000-07-23 13:43:00 +00:00
Gerard Patel 9fe0e634e5 Fixed calculation of buffer length after switch of window text to
unicode.
2000-07-23 13:33:48 +00:00
Gerard Patel 9788ba6e54 Set clipping region to client window before owner-drawn painting. 2000-07-16 15:39:37 +00:00
Gerard Patel 0e805aa358 Background of SS_SIMPLE static control is not filled (unless it has
SS_NOPREFIX too).
2000-07-16 14:39:21 +00:00
Dave Hawkes fcd352152f All standard window controls should have CS_PARENTDC, but should still
clip to the control window.
2000-07-15 21:31:42 +00:00
Susan Farley 7251640113 Don't clear selection when initial entry is not in the list. 2000-07-15 21:27:32 +00:00
Marcus Meissner 235d39cf9e Replaced %s by %p in EDIT_WM_SetText. 2000-07-15 15:12:38 +00:00
Dmitry Timoshkov 04da8b8f28 Convert WND.text field to Unicode.
Add new key to wine.ini in the section [x11drv] - TextCP, which means
code page used for texts passed to X.
Accordingly fix handlers of WM_SETTEXT/WM_GETTEXT.
2000-07-10 12:09:31 +00:00
Gerard Patel 2ffbb31e3a Make the focus follow the last selected item for multiselect listboxes. 2000-07-09 12:18:14 +00:00
Gerard Patel d292234835 Set the minimum dropped height to the combo list height if any in
CBDropDown.
2000-06-25 12:47:59 +00:00
Gerard Patel c9e6031dca CB_SETCURSEL should not generate another listbox event after updating
the edit box.
2000-06-18 17:20:37 +00:00
Francois Jacques 20af4c3c87 GetSystemMenu called with bRevert argument set to TRUE now returns
NULL as specified in Platform SDK.
2000-06-18 17:17:54 +00:00
Gerard Patel ac3e81640a Set clipping region to client window in LISTBOX_Paint. 2000-06-15 00:58:42 +00:00
Gerard Patel 41b07fb4d9 WM_SETREDRAW should repaint the listbox when set to on if something
has been changed.
2000-06-15 00:07:20 +00:00
Jason Mawdsley 50523d164f Take focus before setting the caret position and selections. 2000-06-11 20:34:07 +00:00
Sheri Steeves 13ffd58a1f Added save and reset of SetBKMode values in WM_PAINT.
Added handling of lParam value in BM_SETSTYLE.
2000-06-11 20:08:46 +00:00
Huw D M Davies d552d98b51 Add support for icons set by STM_SETIMAGE. 2000-06-11 20:00:33 +00:00
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