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,