From cd923bb8f81c7c1e4019a490425283a1fbfcfa1b Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Thu, 14 Jun 2012 04:13:24 -0500 Subject: [PATCH] disable the preferences menu in paint-by-numbers (since it does nothing) so that other games can call preferences:set-default. closes PR 12851 --- collects/games/paint-by-numbers/gui.rkt | 6 ++--- .../paint-by-numbers/paint-by-numbers.rkt | 23 +++++++++++++++---- 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/collects/games/paint-by-numbers/gui.rkt b/collects/games/paint-by-numbers/gui.rkt index cf9069accd..c7cbda5dc4 100644 --- a/collects/games/paint-by-numbers/gui.rkt +++ b/collects/games/paint-by-numbers/gui.rkt @@ -1,3 +1,4 @@ +#lang racket/base #| The paint-by-numbers-canavas% class accepts two initalization @@ -35,7 +36,6 @@ paint by numbers. |# -(module gui mzscheme (require mred framework mzlib/etc @@ -863,6 +863,6 @@ paint by numbers. (set! update-row-col? #t) (update-all-rows-cols))] - (super-instantiate () (row-numbers null) (col-numbers null)) + (super-new (row-numbers null) (col-numbers null)) (set! row-numbers (vector->list (make-vector height null))) - (set! col-numbers (vector->list (make-vector width null)))))) + (set! col-numbers (vector->list (make-vector width null))))) diff --git a/collects/games/paint-by-numbers/paint-by-numbers.rkt b/collects/games/paint-by-numbers/paint-by-numbers.rkt index e148c88500..2dfc1b6fda 100644 --- a/collects/games/paint-by-numbers/paint-by-numbers.rkt +++ b/collects/games/paint-by-numbers/paint-by-numbers.rkt @@ -1,6 +1,7 @@ -(module paint-by-numbers mzscheme +#lang racket/base + (require "gui.rkt" - (prefix solve: "solve.rkt") + (prefix-in solve: "solve.rkt") "all-problems.rkt" "problem.rkt" "../show-scribbling.rkt" @@ -12,6 +13,13 @@ mred) (provide game@) + + (application-preferences-handler void) + ;; reset this after the framework sets it. + ;; we don't want to open the preferences window, + ;; because other games then cannot call + ;; preferences:set-default + (define default-font (send the-font-list find-or-create-font 10 'roman 'normal 'normal #f)) (preferences:set-default 'paint-by-numbers:font default-font (lambda (f) (is-a? f font%))) @@ -115,6 +123,13 @@ (class (frame:standard-menus-mixin frame:basic%) (inherit set-label get-label get-area-container) (define filename #f) + (define/override (edit-menu:create-preferences?) #f) + + ;; don't open the preferences window, + ;; because other games then cannot call + ;; preferences:set-default + (define/override (edit-menu:preferences-callback item control) (void)) + [define/public update-filename (lambda (new-name) (set! filename new-name) @@ -504,7 +519,7 @@ (let ([f (instantiate pbn-frame% () (problem problem))]) (send f show #t))] [(problem state) - (let ([f (make-object pbn-frame% () (problem problem))]) + (let ([f (instantiate pbn-frame% () (problem problem))]) (send (send f get-canvas) set-grid state) (send f show #t))])) @@ -514,4 +529,4 @@ (export) (player) ;(editor #f) - ))) + ))