diff options
| author | Richard M. Stallman | 1998-05-01 04:37:42 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1998-05-01 04:37:42 +0000 |
| commit | cb9e33d4a56f5bc9067df32244dbb4c4dfac5348 (patch) | |
| tree | 1c07eab970ad684990ae3c23a65c466709692913 /src | |
| parent | 33b307f8fc554c845ff3276353e7522b9d688793 (diff) | |
| download | emacs-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.c | 10 |
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 | ||
| 44 | extern void abort (); | 45 | extern void abort (); |
| 45 | extern void free_frame_menubar (); | 46 | extern 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: |