Tomas By
2016-02-10 09:53:13 UTC
Hi all,
I'd be grateful if somebody could explain why this does not work.
I only see the "Left"/"Middle"/"Right" at the bottom, not the menu.
/Tomas
---------------------------------------------------------------------------
#! /bin/sh
# -*- scheme -*-
exec guile-gnome-2 -s $0 "$@"
!#
(use-modules (oop goops) (gnome gobject) (gnome glib) (gnome gtk)
(srfi srfi-13) (srfi srfi-1) (ice-9 rw) (ice-9 receive))
;; The main window
(define toplevel-window (make <gtk-window> #:title "Test" #:type
'toplevel))
(set-default-size toplevel-window 600 400)
(define toplevel-box (gtk-vbox-new #f 0))
(define menu-bar (make <gtk-menu-bar>))
(define file-menu (make <gtk-menu>))
(define file-item (gtk-menu-item-new-with-label "File"))
(define file-open-item (gtk-menu-item-new-with-label "Open"))
(define file-close-item (gtk-menu-item-new-with-label "Close"))
(define status-left (gtk-label-new "Left"))
(define status-middle (gtk-label-new "Middle"))
(define status-right (gtk-label-new "Right"))
(define status-line (gtk-hbox-new #f 0))
;; Pack the widgets
(gtk-container-add toplevel-window toplevel-box)
(pack-start toplevel-box menu-bar #f #t 0)
(pack-end toplevel-box status-line #f #t 0)
(define (add-menu-item menu item callback)
(gtk-menu-shell-append menu item)
(gtk-widget-show item)
(connect item 'activate callback))
(gtk-widget-show menu-bar)
(add-menu-item menu-bar file-item (lambda (w) #f))
(gtk-menu-item-set-submenu file-item file-menu)
(add-menu-item file-menu file-open-item (lambda (w) #f))
(add-menu-item file-menu file-close-item (lambda (w) #f))
(pack-start status-line status-left)
(pack-start status-line status-middle)
(pack-start status-line status-right)
;; Signals...
(connect toplevel-window 'delete-event (lambda (w e) (gtk-main-quit)
#f))
(show-all toplevel-window)
(gtk-main)
I'd be grateful if somebody could explain why this does not work.
I only see the "Left"/"Middle"/"Right" at the bottom, not the menu.
/Tomas
---------------------------------------------------------------------------
#! /bin/sh
# -*- scheme -*-
exec guile-gnome-2 -s $0 "$@"
!#
(use-modules (oop goops) (gnome gobject) (gnome glib) (gnome gtk)
(srfi srfi-13) (srfi srfi-1) (ice-9 rw) (ice-9 receive))
;; The main window
(define toplevel-window (make <gtk-window> #:title "Test" #:type
'toplevel))
(set-default-size toplevel-window 600 400)
(define toplevel-box (gtk-vbox-new #f 0))
(define menu-bar (make <gtk-menu-bar>))
(define file-menu (make <gtk-menu>))
(define file-item (gtk-menu-item-new-with-label "File"))
(define file-open-item (gtk-menu-item-new-with-label "Open"))
(define file-close-item (gtk-menu-item-new-with-label "Close"))
(define status-left (gtk-label-new "Left"))
(define status-middle (gtk-label-new "Middle"))
(define status-right (gtk-label-new "Right"))
(define status-line (gtk-hbox-new #f 0))
;; Pack the widgets
(gtk-container-add toplevel-window toplevel-box)
(pack-start toplevel-box menu-bar #f #t 0)
(pack-end toplevel-box status-line #f #t 0)
(define (add-menu-item menu item callback)
(gtk-menu-shell-append menu item)
(gtk-widget-show item)
(connect item 'activate callback))
(gtk-widget-show menu-bar)
(add-menu-item menu-bar file-item (lambda (w) #f))
(gtk-menu-item-set-submenu file-item file-menu)
(add-menu-item file-menu file-open-item (lambda (w) #f))
(add-menu-item file-menu file-close-item (lambda (w) #f))
(pack-start status-line status-left)
(pack-start status-line status-middle)
(pack-start status-line status-right)
;; Signals...
(connect toplevel-window 'delete-event (lambda (w e) (gtk-main-quit)
#f))
(show-all toplevel-window)
(gtk-main)