changeset 72071:0bfda07cccbc

(w32_createwindow): If `left' and/or `top' frame parameters are bound to some values, use that instead of CW_USEDEFAULT.
author Eli Zaretskii <eliz@gnu.org>
date Sat, 22 Jul 2006 11:31:55 +0000
parents a85c85db662c
children fd396b20f1df
files src/w32fns.c
diffstat 1 files changed, 8 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/w32fns.c	Sat Jul 22 11:14:25 2006 +0000
+++ b/src/w32fns.c	Sat Jul 22 11:31:55 2006 +0000
@@ -2066,6 +2066,7 @@
 {
   HWND hwnd;
   RECT rect;
+  Lisp_Object top, left;
 
   rect.left = rect.top = 0;
   rect.right = FRAME_PIXEL_WIDTH (f);
@@ -2081,12 +2082,17 @@
       w32_init_class (hinst);
     }
 
+  /* When called with RES_TYPE_NUMBER, w32_get_arg will return zero
+     for anything that is not a number and is not Qunbound.  */
+  left = w32_get_arg (Qnil, Qleft, "left", "Left", RES_TYPE_NUMBER);
+  top = w32_get_arg (Qnil, Qtop, "top", "Top", RES_TYPE_NUMBER);
+
   FRAME_W32_WINDOW (f) = hwnd
     = CreateWindow (EMACS_CLASS,
 		    f->namebuf,
 		    f->output_data.w32->dwStyle | WS_CLIPCHILDREN,
-		    CW_USEDEFAULT,
-		    SW_SHOW,
+		    EQ (left, Qunbound) ? CW_USEDEFAULT : XINT (left),
+		    EQ (top, Qunbound) ? CW_USEDEFAULT : XINT (top),
 		    rect.right - rect.left,
 		    rect.bottom - rect.top,
 		    NULL,