aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard M. Stallman1998-05-01 04:37:42 +0000
committerRichard M. Stallman1998-05-01 04:37:42 +0000
commitcb9e33d4a56f5bc9067df32244dbb4c4dfac5348 (patch)
tree1c07eab970ad684990ae3c23a65c466709692913 /src
parent33b307f8fc554c845ff3276353e7522b9d688793 (diff)
downloademacs-cb9e33d4a56f5bc9067df32244dbb4c4dfac5348.tar.gz
emacs-cb9e33d4a56f5bc9067df32244dbb4c4dfac5348.zip
Include shellapi.h.
(w32_createwindow): Enable drag-n-drop on new windows. (w32_wnd_proc): Handle WM_DROPFILES messages. Disable drag-n-drop on closing windows.
Diffstat (limited to 'src')
-rw-r--r--src/w32fns.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/w32fns.c b/src/w32fns.c
index 07b7f7ef383..bf536f7203d 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -40,6 +40,7 @@ Boston, MA 02111-1307, USA. */
40#include "termhooks.h" 40#include "termhooks.h"
41 41
42#include <commdlg.h> 42#include <commdlg.h>
43#include <shellapi.h>
43 44
44extern void abort (); 45extern void abort ();
45extern void free_frame_menubar (); 46extern void free_frame_menubar ();
@@ -2891,6 +2892,9 @@ w32_createwindow (f)
2891 SetWindowLong (hwnd, WND_SCROLLBAR_INDEX, f->output_data.w32->vertical_scroll_bar_extra); 2892 SetWindowLong (hwnd, WND_SCROLLBAR_INDEX, f->output_data.w32->vertical_scroll_bar_extra);
2892 SetWindowLong (hwnd, WND_BACKGROUND_INDEX, f->output_data.w32->background_pixel); 2893 SetWindowLong (hwnd, WND_BACKGROUND_INDEX, f->output_data.w32->background_pixel);
2893 2894
2895 /* Enable drag-n-drop. */
2896 DragAcceptFiles (hwnd, TRUE);
2897
2894 /* Do this to discard the default setting specified by our parent. */ 2898 /* Do this to discard the default setting specified by our parent. */
2895 ShowWindow (hwnd, SW_HIDE); 2899 ShowWindow (hwnd, SW_HIDE);
2896 } 2900 }
@@ -3583,6 +3587,11 @@ w32_wnd_proc (hwnd, msg, wParam, lParam)
3583 my_post_msg (&wmsg, hwnd, msg, wParam, lParam); 3587 my_post_msg (&wmsg, hwnd, msg, wParam, lParam);
3584 return 0; 3588 return 0;
3585 3589
3590 case WM_DROPFILES:
3591 wmsg.dwModifiers = w32_get_modifiers ();
3592 my_post_msg (&wmsg, hwnd, msg, wParam, lParam);
3593 return 0;
3594
3586 case WM_TIMER: 3595 case WM_TIMER:
3587 /* Flush out saved messages if necessary. */ 3596 /* Flush out saved messages if necessary. */
3588 if (wParam == mouse_button_timer) 3597 if (wParam == mouse_button_timer)
@@ -3862,6 +3871,7 @@ w32_wnd_proc (hwnd, msg, wParam, lParam)
3862 } 3871 }
3863 3872
3864 case WM_EMACS_DESTROYWINDOW: 3873 case WM_EMACS_DESTROYWINDOW:
3874 DragAcceptFiles ((HWND) wParam, FALSE);
3865 return DestroyWindow ((HWND) wParam); 3875 return DestroyWindow ((HWND) wParam);
3866 3876
3867 case WM_EMACS_TRACKPOPUPMENU: 3877 case WM_EMACS_TRACKPOPUPMENU: