1 Implementing Dr Scheme Tools
2 Adding Languages to Dr Scheme
3 Creating New Kinds of Dr Scheme Frames
4 Extending the Existing Dr Scheme Classes
5 Expanding the User’s Program Text and Breaking
6 Editor Modes
7 Language-specific capabilities
8 drscheme: get/ extend
9 drscheme: unit
10 drscheme: language
11 drscheme: language-configuration
12 drscheme: debug
13 drscheme: rep
14 drscheme: frame
15 drscheme: help-desk
16 drscheme: eval
17 drscheme: modes
Index
On this page:
drscheme: frame: name-message%
set-message
drscheme: frame: mixin
drscheme: frame: basics-mixin
edit-menu: between-find-and-preferences
file-menu: between-open-and-revert
file-menu: between-print-and-close
file-menu: new-callback
file-menu: new-string
file-menu: open-callback
file-menu: open-string
get-additional-important-urls
help-menu: about-callback
help-menu: about-string
help-menu: before-about
help-menu: create-about?
drscheme: frame: basics<%>
drscheme: frame: <%>
add-show-menu-items
get-show-menu
not-running
running
update-shown
Version: 4.0.2

 

14 drscheme:frame

drscheme:frame:name-message% : class?

  superclass: canvas%

This class implements the little filename button in the top-right hand side of drscheme’s frame.

(make-object drscheme:frame:name-message% parent)

  (is-a?/c drscheme:frame:name-message%)

  parent : (is-a?/c area-container<%>)

(send a-drscheme:frame:name-message set-message

 

name

 

 

 

short-name)

 

  void?

  name : (or/c string? false/c)

  short-name : string?

Specification: Sets the names that the button shows.

Default implementation: The string short-name is the name that is shown on the button and name is shown when the button is clicked on, in a separate window. If name is \#f, a message indicating that the file hasn’t been saved is shown.

drscheme:frame:mixin : (class? . -> . class?)

  argument extends/implements: 

drscheme:frame:basics<%>

 

frame:text-info<%>

 

frame:editor<%>

  result implements: 

drscheme:frame:<%>

Provides an implementation of drscheme:frame:<%>

drscheme:frame:basics-mixin : (class? . -> . class?)

  argument extends/implements: 

frame:standard-menus<%>

  result implements: 

drscheme:frame:basics<%>

Use this mixin to establish some common menu items across various DrScheme windows.

(send a-drscheme:frame:basics edit-menu:between-find-and-preferences)

  void?

Overrides edit-menu:between-find-and-preferences in frame:standard-menus<%>.

Adds a separator-menu-item%. Next, adds the "Keybindings" menu item to the edit menu. Finally, if the current-eventspace-has-standard-menus? procedure returns #f, creates another separator-menu-item%.

(send a-drscheme:frame:basics file-menu:between-open-and-revert file-menu)

  void?

  file-menu : (is-a?/c (scheme menu%))

Overrides file-menu:between-open-and-revert in frame:standard-menus<%>.

Adds an {\it Install .plt File...} menu item, which downloads and installs .plt files from the web, or installs them from the local disk. After that, calls the super method.

(send a-drscheme:frame:basics file-menu:between-print-and-close file-menu)

  void?

  file-menu : (is-a?/c (scheme menu%))

Overrides file-menu:between-print-and-close in frame:standard-menus<%>.

Calls the super method. Then, creates a menu item for multi-file searching. Finally, adds a separator-menu-item%.

(send a-drscheme:frame:basics file-menu:new-callback

 

item

 

 

 

evt)

 

  void?

  item : (is-a?/c menu-item%)

  evt : (is-a?/c control-event%)

Overrides file-menu:new-callback in frame:standard-menus<%>.

Opens a new, empty DrScheme window.

(send a-drscheme:frame:basics file-menu:new-string)  string?

Overrides file-menu:new-string in frame:standard-menus<%>.

Returns the empty string.

(send a-drscheme:frame:basics file-menu:open-callback

 

item

 

 

 

evt)

 

  void?

  item : (is-a?/c menu-item%)

  evt : (is-a?/c control-event%)

Overrides file-menu:open-callback in frame:standard-menus<%>.

Calls handler:edit-file.

(send a-drscheme:frame:basics file-menu:open-string)  string?

Overrides file-menu:open-string in frame:standard-menus<%>.

Returns the empty string.

(send a-drscheme:frame:basics get-additional-important-urls)

  (listof (list string string))

Specification: Each string in the result of this method is added as a menu item to DrScheme’s “Related Web Sites” menu item. The first string is the name of the menu item and the second string is a url that, when the menu item is chosen, is sent to the user’s browser.

Default implementation: Defaultly returns the empty list.

(send a-drscheme:frame:basics help-menu:about-callback

 

item

 

 

 

evt)

 

  void?

  item : (is-a?/c menu-item%)

  evt : (is-a?/c control-event%)

Overrides help-menu:about-callback in frame:standard-menus<%>.

Opens an about box for DrScheme.

(send a-drscheme:frame:basics help-menu:about-string)

  string?

Overrides help-menu:about-string in frame:standard-menus<%>.

Returns the string "DrScheme".

(send a-drscheme:frame:basics help-menu:before-about help-menu)

  void?

  help-menu : (is-a?/c menu%)

Overrides help-menu:before-about in frame:standard-menus<%>.

Adds the Help Desk menu item and the Welcome to DrScheme menu item.

(send a-drscheme:frame:basics help-menu:create-about?)

  boolean?

Overrides help-menu:create-about? in frame:standard-menus<%>.

Returns #t.

drscheme:frame:basics<%> : interface?

  implements: 

frame:standard-menus<%>

This interface is the result of the \iscmmixin{drscheme:frame:basics-mixin}

drscheme:frame:<%> : interface?

  implements: 

frame:editor<%>

 

frame:text-info<%>

 

drscheme:frame:basics<%>

(send a-drscheme:frame: add-show-menu-items show-menu)  void?

  show-menu : (is-a?/c (scheme menu%))

Specification: This method is called during the construction of the view menu. This method is intended to be overridden. It is expected to add other Show/Hide menu items to the show menu.

See also get-show-menu.

Default implementation: Does nothing.

(send a-drscheme:frame: get-show-menu)  (is-a?/c menu%)

\index{View menu}

returns the view menu, for use by the update-shown method.

See also add-show-menu-items.

The method (and others) uses the word show to preserve backwards compatibility from when the menu itself was named the Show menu.

(send a-drscheme:frame: not-running)  void?

updates the status pane at the bottom of the window to show that evaluation is not taking place in the user’s program.

(send a-drscheme:frame: running)  void?

updates the status pane at the bottom of the window to show that evaluation is taking place in the user’s program.

(send a-drscheme:frame: update-shown)  void?

Specification: This method is intended to be overridden. It’s job is to update the "View" menu to match the state of the visible windows. In the case of the standard DrScheme window, it change the menu items to reflect the visibility of the definitions and interaction editor-canvas%s.

Call this method whenever the state of the show menu might need to change.

See also get-show-menu.

Default implementation: Does nothing.