#!/bin/zsh # # Demonstration on how to use the GTK-server with zShell by STDIN. # Tested with ZSH 4.0.6 on Slackware Linux 10.0. # Also works with ZSH 3.0.5-nt-sniff-4.1.1p2 on Windows2000 (http://unxutils.sourceforge.net/) # # September 27, 2003 by Peter van Eerten. # Revised for GTK-server 1.2 October 7, 2004 # Revised for GTK-server 1.3 December 6, 2004 #------------------------------------------------ export LC_ALL=nl_NL export LD_LIBRARY_PATH=/usr/X11R6/lib coproc gtk-server -stdin print -p "gtk_init NULL NULL"; read -p TMP print -p "gtk_window_new 0"; read -p WINDOW print -p "gtk_window_set_title " $WINDOW " \"This is a title\""; read -p TMP print -p "gtk_window_set_position " $WINDOW " 1"; read -p TMP print -p "gtk_table_new 10 10 1"; read -p TABLE print -p "gtk_container_add " $WINDOW " " $TABLE; read -p TMP print -p "gtk_button_new_with_label \"Click here\""; read -p BUTTON print -p "gtk_table_attach_defaults " $TABLE " " $BUTTON " 5 9 7 9"; read -p TMP print -p "gtk_check_button_new_with_label \"Check this out!\""; read -p CHECK print -p "gtk_table_attach_defaults " $TABLE " " $CHECK " 1 6 1 2"; read -p TMP print -p "gtk_entry_new"; read -p ENTRY print -p "gtk_table_attach_defaults " $TABLE " " $ENTRY " 1 6 3 4"; read -p TMP print -p "gtk_widget_show_all" $WINDOW; read -p TMP EVENT=0 while [ $EVENT -ne $BUTTON ] do print -p "gtk_server_callback wait"; read -p EVENT if [ $EVENT -eq $ENTRY ] then print -p "gtk_entry_get_text " $ENTRY; read -p TMP print $TMP fi done print -p "gtk_server_exit"