Mikołaj Zalewski : comctl32: listview: Apply the HDS_DRAGDROP header style if needed.

Alexandre Julliard julliard at wine.codeweavers.com
Fri May 26 05:42:14 CDT 2006


Module: wine
Branch: master
Commit: bfe030dfeddbfc1eb3255366d72428c7fb24b397
URL:    http://source.winehq.org/git/?p=wine.git;a=commit;h=bfe030dfeddbfc1eb3255366d72428c7fb24b397

Author: Mikołaj Zalewski <mikolaj at zalewski.pl>
Date:   Fri May 26 00:05:27 2006 +0200

comctl32: listview: Apply the HDS_DRAGDROP header style if needed.

Apply the HDS_DRAGDROP header style if the listview has the
LVS_EX_HEADERDRAGDROP. Block the columns reordering as the listview
doesn't support them.

---

 dlls/comctl32/listview.c |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/dlls/comctl32/listview.c b/dlls/comctl32/listview.c
index dbc1733..60c3083 100644
--- a/dlls/comctl32/listview.c
+++ b/dlls/comctl32/listview.c
@@ -6874,6 +6874,16 @@ static DWORD LISTVIEW_SetExtendedListVie
             himl = LISTVIEW_CreateCheckBoxIL(infoPtr);
         LISTVIEW_SetImageList(infoPtr, LVSIL_STATE, himl);
     }
+    
+    if((infoPtr->dwLvExStyle ^ dwOldStyle) & LVS_EX_HEADERDRAGDROP)
+    {
+        DWORD dwStyle = GetWindowLongW(infoPtr->hwndHeader, GWL_STYLE);
+        if (infoPtr->dwLvExStyle & LVS_EX_HEADERDRAGDROP)
+            dwStyle |= HDS_DRAGDROP;
+        else
+            dwStyle &= ~HDS_DRAGDROP;
+        SetWindowLongW(infoPtr->hwndHeader, GWL_STYLE, dwStyle);
+    }
 
     return dwOldStyle;
 }
@@ -8461,6 +8471,10 @@ static LRESULT LISTVIEW_HeaderNotificati
 	    infoPtr->xTrackLine = -1;
 	    break;
 	    
+        case HDN_ENDDRAG:
+            FIXME("Changing column order not implemented\n");
+            return TRUE;
+            
         case HDN_ITEMCHANGINGW:
         case HDN_ITEMCHANGINGA:
             return notify_forward_header(infoPtr, lpnmh);




More information about the wine-cvs mailing list