# Copyright (c) 1990-1993 The Regents of the University of California.
# Copyright (c) 1994-1996 Sun Microsystems, Inc.
# See the file "license.terms" for information on usage and redistribution
# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
#
#
=head1 NAME
Tk_MoveToplevelWindow - Adjust the position of a top-level window
=for category C Programming
=head1 SYNOPSIS
B<#include E<lt>tk.hE<gt>>
B<Tk_MoveToplevelWindow(>I<tkwin, x, y>B<)>
=head1 ARGUMENTS
=over 4
=item Tk_Window tkwin (in)
Token for top-level window to move.
=item int x (in)
New x-coordinate for the top-left pixel of I<tkwin>'s border, or the
top-left pixel of the decorative border supplied for I<tkwin> by the
window manager, if there is one.
=item int y (in)
New y-coordinate for the top-left pixel of I<tkwin>'s border, or the
top-left pixel of the decorative border supplied for I<tkwin> by the
window manager, if there is one.
=back
=head1 DESCRIPTION
In general, a window should never set its own position; this should be
done only by the geometry manger that is responsible for the window.
For top-level windows the window manager is effectively the geometry
manager; Tk provides interface code between the application and the
window manager to convey the application's desires to the geometry
manager. The desired size for a top-level window is conveyed using
the usual B<Tk_GeometryRequest> mechanism. The procedure
B<Tk_MoveToplevelWindow> may be used by an application to request
a particular position for a top-level window; this procedure is
similar in function to the B<wm geometry> Tcl command except that
negative offsets cannot be specified. It is invoked by widgets such as
menus that want to appear at a particular place on the screen.
When B<Tk_MoveToplevelWindow> is called it doesn't immediately
pass on the new desired location to the window manager; it defers
this action until all other outstanding work has been completed,
using the B<Tk_DoWhenIdle> mechanism.
=head1 KEYWORDS
position, top-level window, window manager