Mercurial > emacs
comparison src/w32term.c @ 83353:532e0a9335a9
Merged in changes from CVS trunk. Plus added lisp/term tweaks.
Patches applied:
* lorentey@elte.hu--2004/emacs--cvs-trunk--0--base-0
tag of miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-474
* lorentey@elte.hu--2004/emacs--cvs-trunk--0--patch-1
Add CVS metadata files.
* lorentey@elte.hu--2004/emacs--cvs-trunk--0--patch-2
Update from CVS.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-393
author | Karoly Lorentey <lorentey@elte.hu> |
---|---|
date | Sun, 04 Sep 2005 03:48:17 +0000 |
parents | 6c13700d1c13 a0d1312ede66 |
children | 23f939241b7d |
comparison
equal
deleted
inserted
replaced
83352:b258b3492423 | 83353:532e0a9335a9 |
---|---|
1 /* Implementation of GUI terminal on the Microsoft W32 API. | 1 /* Implementation of GUI terminal on the Microsoft W32 API. |
2 Copyright (C) 1989, 93, 94, 95, 96, 1997, 1998, 1999, 2000, 2001 | 2 Copyright (C) 1989, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, |
3 Free Software Foundation, Inc. | 3 2002, 2003, 2004, 2005 Free Software Foundation, Inc. |
4 | 4 |
5 This file is part of GNU Emacs. | 5 This file is part of GNU Emacs. |
6 | 6 |
7 GNU Emacs is free software; you can redistribute it and/or modify | 7 GNU Emacs is free software; you can redistribute it and/or modify |
8 it under the terms of the GNU General Public License as published by | 8 it under the terms of the GNU General Public License as published by |
270 static void x_frame_rehighlight P_ ((struct w32_display_info *)); | 270 static void x_frame_rehighlight P_ ((struct w32_display_info *)); |
271 static void x_draw_hollow_cursor P_ ((struct window *, struct glyph_row *)); | 271 static void x_draw_hollow_cursor P_ ((struct window *, struct glyph_row *)); |
272 static void x_draw_bar_cursor P_ ((struct window *, struct glyph_row *, int, | 272 static void x_draw_bar_cursor P_ ((struct window *, struct glyph_row *, int, |
273 enum text_cursor_kinds)); | 273 enum text_cursor_kinds)); |
274 static void w32_clip_to_row P_ ((struct window *, struct glyph_row *, int, HDC)); | 274 static void w32_clip_to_row P_ ((struct window *, struct glyph_row *, int, HDC)); |
275 static BOOL my_show_window P_ ((struct frame *, HWND, int)); | |
276 static void my_set_window_pos P_ ((HWND, HWND, int, int, int, int, UINT)); | |
277 static void my_set_focus P_ ((struct frame *, HWND)); | |
278 static void my_set_foreground_window P_ ((HWND)); | |
279 static void my_destroy_window P_ ((struct frame *, HWND)); | |
275 | 280 |
276 static Lisp_Object Qvendor_specific_keysyms; | 281 static Lisp_Object Qvendor_specific_keysyms; |
277 | 282 |
278 | 283 |
279 /*********************************************************************** | 284 /*********************************************************************** |
3630 (LPARAM) bar); | 3635 (LPARAM) bar); |
3631 } | 3636 } |
3632 | 3637 |
3633 /*#define ATTACH_THREADS*/ | 3638 /*#define ATTACH_THREADS*/ |
3634 | 3639 |
3635 BOOL | 3640 static BOOL |
3636 my_show_window (FRAME_PTR f, HWND hwnd, int how) | 3641 my_show_window (FRAME_PTR f, HWND hwnd, int how) |
3637 { | 3642 { |
3638 #ifndef ATTACH_THREADS | 3643 #ifndef ATTACH_THREADS |
3639 return SendMessage (FRAME_W32_WINDOW (f), WM_EMACS_SHOWWINDOW, | 3644 return SendMessage (FRAME_W32_WINDOW (f), WM_EMACS_SHOWWINDOW, |
3640 (WPARAM) hwnd, (LPARAM) how); | 3645 (WPARAM) hwnd, (LPARAM) how); |
3641 #else | 3646 #else |
3642 return ShowWindow (hwnd, how); | 3647 return ShowWindow (hwnd, how); |
3643 #endif | 3648 #endif |
3644 } | 3649 } |
3645 | 3650 |
3646 void | 3651 static void |
3647 my_set_window_pos (HWND hwnd, HWND hwndAfter, | 3652 my_set_window_pos (HWND hwnd, HWND hwndAfter, |
3648 int x, int y, int cx, int cy, UINT flags) | 3653 int x, int y, int cx, int cy, UINT flags) |
3649 { | 3654 { |
3650 #ifndef ATTACH_THREADS | 3655 #ifndef ATTACH_THREADS |
3651 WINDOWPOS pos; | 3656 WINDOWPOS pos; |
3659 #else | 3664 #else |
3660 SetWindowPos (hwnd, hwndAfter, x, y, cx, cy, flags); | 3665 SetWindowPos (hwnd, hwndAfter, x, y, cx, cy, flags); |
3661 #endif | 3666 #endif |
3662 } | 3667 } |
3663 | 3668 |
3664 void | 3669 static void |
3665 my_set_focus (f, hwnd) | 3670 my_set_focus (f, hwnd) |
3666 struct frame * f; | 3671 struct frame * f; |
3667 HWND hwnd; | 3672 HWND hwnd; |
3668 { | 3673 { |
3669 SendMessage (FRAME_W32_WINDOW (f), WM_EMACS_SETFOCUS, | 3674 SendMessage (FRAME_W32_WINDOW (f), WM_EMACS_SETFOCUS, |
3670 (WPARAM) hwnd, 0); | 3675 (WPARAM) hwnd, 0); |
3671 } | 3676 } |
3672 | 3677 |
3673 void | 3678 static void |
3674 my_set_foreground_window (hwnd) | 3679 my_set_foreground_window (hwnd) |
3675 HWND hwnd; | 3680 HWND hwnd; |
3676 { | 3681 { |
3677 SendMessage (hwnd, WM_EMACS_SETFOREGROUND, (WPARAM) hwnd, 0); | 3682 SendMessage (hwnd, WM_EMACS_SETFOREGROUND, (WPARAM) hwnd, 0); |
3678 } | 3683 } |
3679 | 3684 |
3680 void | 3685 |
3686 static void | |
3681 my_destroy_window (f, hwnd) | 3687 my_destroy_window (f, hwnd) |
3682 struct frame * f; | 3688 struct frame * f; |
3683 HWND hwnd; | 3689 HWND hwnd; |
3684 { | 3690 { |
3685 SendMessage (FRAME_W32_WINDOW (f), WM_EMACS_DESTROYWINDOW, | 3691 SendMessage (FRAME_W32_WINDOW (f), WM_EMACS_DESTROYWINDOW, |