On this page:
can-close?
can-exit?
center
get-edit-target-object
get-edit-target-window
get-eventspace
get-focus-object
get-focus-window
move
on-activate
on-close
on-exit
on-message
on-traverse-char
on-system-menu-char
resize
show

Inherited methods:

from window<%>

accept-drop-files

client->screen

enable

focus

get-client-size

get-cursor

get-handle

get-height

get-label

get-plain-label

get-size

get-width

get-x

get-y

has-focus?

is-enabled?

is-shown?

on-drop-file

on-focus

on-move

on-size

on-subwindow-char

on-subwindow-event

on-superwindow-enable

on-superwindow-show

popup-menu

refresh

screen->client

set-cursor

set-label

from area<%>

get-graphical-min-size

get-parent

get-top-level-window

min-height

min-width

stretchable-height

stretchable-width

from area-container<%>

add-child

after-new-child

begin-container-sequence

border

change-children

container-flow-modified

container-size

delete-child

end-container-sequence

get-alignment

get-children

place-children

reflow-container

set-alignment

spacing

Version: 4.1

top-level-window<%> : interface?

  implements: 

area-container-window<%>

A top-level window is either a frame% or dialog% object.

(send a-top-level-window can-close?)  boolean?

Refine this method with augment.

Called just before the window might be closed (e.g., by the window manager). If #f is returned, the window is not\/ closed, otherwise on-close is called and the window is closed (i.e., the window is hidden, like calling show with #f).

This method is not called by show.

(send a-top-level-window can-exit?)  boolean?

Specification: Called before on-exit to check whether an exit is allowed. See on-exit for more information.

Default implementation: Calls can-close? and returns the result.

(send a-top-level-window center [direction])  void?

  direction : (one-of/c 'horizontal 'vertical 'both) = 'both

Centers the window on the screen if it has no parent. If it has a parent, the window is centered with respect to its parent’s location.

If direction is 'horizontal, the window is centered horizontally. If direction is 'vertical, the window is centered vertically. If direction is 'both, the window is centered in both directions.

(send a-top-level-window get-edit-target-object)

  (or/c (or/c (is-a?/c window<%>) (is-a?/c editor<%>)) false/c)

Like get-edit-target-window, but if an editor canvas had the focus and it also displays an editor, the editor is returned instead of the canvas. Further, if the editor’s focus is delegated to an embedded editor, the embedded editor is returned.

See also get-focus-object.

(send a-top-level-window get-edit-target-window)

  (or/c (is-a?/c window<%>) false/c)

Returns the window that most recently had the keyboard focus, either the top-level window or one of its currently-shown children. If neither the window nor any of its currently-shown children has even owned the keyboard focus, #f is returned.

See also get-focus-window and get-edit-target-object.

(send a-top-level-window get-eventspace)  eventspace

Returns the window’s eventspace.

(send a-top-level-window get-focus-object)

  (or/c (or/c (is-a?/c window<%>) (is-a?/c editor<%>)) false/c)

Like get-focus-window, but if an editor canvas has the focus and it also displays an editor, the editor is returned instead of the canvas. Further, if the editor’s focus is delegated to an embedded editor, the embedded editor is returned.

See also get-edit-target-object.

(send a-top-level-window get-focus-window)

  (or/c (is-a?/c window<%>) false/c)

Returns the window that has the keyboard focus, either the top-level window or one of its children. If neither the window nor any of its children has the focus, #f is returned.

See also get-edit-target-window and get-focus-object.

(send a-top-level-window move x y)  void?

  x : (integer-in -10000 10000)

  y : (integer-in -10000 10000)

Moves the window to the given position on the screen.

A window’s position can be changed by the user dragging the window, and such changes do not go through this method; use on-move to monitor position changes.

(send a-top-level-window on-activate active?)  void?

  active? : any/c

Called when a window is activated or deactivated. A top-level window is activated when the keyboard focus moves from outside the window to the window or one of its children. It is deactivated when the focus moves back out of the window. Under Mac OS X, a child of a floating frames can have the focus instead of a child of the active non-floating frame; in other words, floating frames act as an extension of the active non-frame for keyboard focus.

The method’s argument is #t when the window is activated, #f when it is deactivated.

(send a-top-level-window on-close)  void?

Refine this method with augment.

Called just before the window is closed (e.g., by the window manager). This method is not called by show.

See also can-close?.

(send a-top-level-window on-exit)  void?

Specification: Called by the default application quit handler (as determined by the application-quit-handler parameter) when the operating system requests that the application shut down (e.g., when the Quit menu item is selected in the main application menu under Mac OS X). In that case, this method is called for the most recently active top-level window in the initial eventspace, but only if the window’s can-exit? method first returns true.

Default implementation: Calls on-close and then show to hide the window.

(send a-top-level-window on-message message)  any/c

  message : any/c

Specification: A generic message method, usually called by send-message-to-window.

If the method is invoked by send-message-to-window, then it is invoked in the thread where send-message-to-window was called (which is possibly not the handler thread of the window’s eventspace).

Default implementation: Returns #<void>.

(send a-top-level-window on-traverse-char event)  boolean?

  event : (is-a?/c key-event%)

Specification: Attempts to handle the given keyboard event as a navigation event, such as a Tab key event that moves the keyboard focus. If the event is handled, #t is returned, otherwise #f is returned.

Default implementation: The following rules determine, in order, whether and how event is handled:

(send a-top-level-window on-system-menu-char event)  boolean?

  event : (is-a?/c key-event%)

Checks whether the given event pops open the system menu in the top-left corner of the window (Windows only). If the window’s system menu is opened, #t is returned, otherwise #f is returned.

(send a-top-level-window resize

 

width

 

 

 

 

 

 

height)

 

 

void?

  width : (integer-in 0 10000)

  height : (integer-in 0 10000)

Sets the size of the window (in pixels), but only if the given size is larger than the window’s minimum size.

A window’s size can be changed by the user, and such changes do not go through this method; use on-size to monitor size changes.

(send a-top-level-window show show)  void?

  show : any/c

If the window is already shown, it is moved front of other top-level windows. If the window is iconized (frames only), it is deiconized.

See also show in window<%>.