diff --git a/collects/mred/private/wx/gtk/frame.rkt b/collects/mred/private/wx/gtk/frame.rkt index 005dad551f..a1054c74a3 100644 --- a/collects/mred/private/wx/gtk/frame.rkt +++ b/collects/mred/private/wx/gtk/frame.rkt @@ -139,6 +139,8 @@ (when label (gtk_window_set_title gtk label)) + ;(gtk_window_add_accel_group (widget-window gtk) the-accelerator-group) + (define/override (set-child-size child-gtk x y w h) (gtk_fixed_move panel-gtk child-gtk x y) (gtk_widget_set_size_request child-gtk w h)) diff --git a/collects/mred/private/wx/gtk/menu-bar.rkt b/collects/mred/private/wx/gtk/menu-bar.rkt index 8a752538e7..183d99ae34 100644 --- a/collects/mred/private/wx/gtk/menu-bar.rkt +++ b/collects/mred/private/wx/gtk/menu-bar.rkt @@ -82,6 +82,8 @@ (connect-menu-key-press gtk) (connect-menu-button-press gtk) + ; (gtk_menu_set_accel_group gtk the-accelerator-group) + (define top-wx #f) (define/public (set-top-window top) diff --git a/collects/mred/private/wx/gtk/menu.rkt b/collects/mred/private/wx/gtk/menu.rkt index 4d145ec94f..504d8d9220 100644 --- a/collects/mred/private/wx/gtk/menu.rkt +++ b/collects/mred/private/wx/gtk/menu.rkt @@ -88,6 +88,8 @@ (connect-menu-deactivate gtk) + (gtk_menu_set_accel_group gtk the-accelerator-group) + (define items null) (define parent #f) @@ -168,7 +170,7 @@ (char->integer (string-ref (cadr m) 0)))]) (unless (zero? code) - (let ([accel-path (format "/Thing/~a" title)]) + (let ([accel-path (format "/Hardwired/~a" title)]) (gtk_accel_map_add_entry accel-path code GDK_CONTROL_MASK) diff --git a/collects/mred/private/wx/gtk/window.rkt b/collects/mred/private/wx/gtk/window.rkt index 07b0e93d29..65f881b270 100644 --- a/collects/mred/private/wx/gtk/window.rkt +++ b/collects/mred/private/wx/gtk/window.rkt @@ -36,7 +36,11 @@ (struct-out GtkRequisition) _GtkRequisition-pointer (struct-out GtkAllocation) _GtkAllocation-pointer - widget-window) + widget-window + + the-accelerator-group + gtk_window_add_accel_group + gtk_menu_set_accel_group) ;; ---------------------------------------- @@ -62,6 +66,13 @@ (define-gtk gtk_widget_is_focus (_fun _GtkWidget -> _gboolean)) (define-gtk gtk_widget_set_sensitive (_fun _GtkWidget _gboolean -> _void)) +(define _GtkAccelGroup (_cpointer 'GtkAccelGroup)) +(define-gtk gtk_accel_group_new (_fun -> _GtkAccelGroup)) +(define-gtk gtk_window_add_accel_group (_fun _GtkWindow _GtkAccelGroup -> _void)) +(define-gtk gtk_menu_set_accel_group (_fun _GtkWidget _GtkAccelGroup -> _void)) + +(define the-accelerator-group (gtk_accel_group_new)) + (define-cstruct _GtkWidgetT ([obj _GtkObject] [private_flags _uint16] [state _byte]