# This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # sml_tk # sml_tk/pkg-descr # sml_tk/Makefile # sml_tk/pkg-plist # sml_tk/distinfo # sml_tk/files # sml_tk/files/patch-src-tests+examples-sources.cm # sml_tk/files/patch-src-toolkit-regExp-sources.cm # sml_tk/files/patch-src-toolkit-tests+examples-simpleinst.sml # sml_tk/files/patch-src-toolkit-tests+examples-tsimpleinst.sml # sml_tk/files/patch-src-poly.sml # sml_tk/files/patch-src-toolkit-icons.sml # sml_tk/files/patch-src-toolkit-markup.sml # sml_tk/files/patch-src-toolkit-sources.cm # sml_tk/files/patch-src-Makefile # sml_tk/files/patch-src-ann_texts.sml # sml_tk/files/patch-src-basic_util.sml # sml_tk/files/patch-src-fonts.sml # sml_tk/files/patch-src-com_state_pipe.sml # sml_tk/files/patch-src-njml.sml # sml_tk/files/patch-src-paths.sml # sml_tk/files/patch-src-sources.cm # sml_tk/files/patch-src-smltk.cm # sml_tk/files/patch-src-config.sig # sml_tk/files/patch-src-config.sml # sml_tk/files/patch-src-export.sml # sml_tk/files/patch-src-widget_tree.sml # sml_tk/files/patch-src-widget_tree.sig # sml_tk/files/patch-Makefile # sml_tk/files/patch-README # sml_tk/files/src-sys_conf.sml # sml_tk/files/patch-src-std_lib-sources.cm # sml_tk/files/patch-src-toolkit-tests+examples-sources.cm # sml_tk/files/sml_tk.1.in # sml_tk/files/patch-src-toolkit-njfiler.sml # sml_tk/files/src-mlton.sml # sml_tk/files/src-std_lib-std_lib.mlb # sml_tk/files/src-toolkit-toolkit.mlb # sml_tk/files/src-toolkit-regExp-regexp.mlb # sml_tk/files/src-sml_tk.mlb # echo c - sml_tk mkdir -p sml_tk > /dev/null 2>&1 echo x - sml_tk/pkg-descr sed 's/^X//' >sml_tk/pkg-descr << 'END-of-sml_tk/pkg-descr' Xsml_tk is a Standard ML package providing a portable, typed and abstract Xinterface to the user interface description and command language Tcl/Tk. It Xallows the implementation of graphical user interfaces in a structured and Xreusable way, supported by the powerful module system of Standard ML. X XWWW: http://www.informatik.uni-bremen.de/~cxl/sml_tk END-of-sml_tk/pkg-descr echo x - sml_tk/Makefile sed 's/^X//' >sml_tk/Makefile << 'END-of-sml_tk/Makefile' X# New ports collection makefile for: sml_tk X# Date created: 2008-01-13 X# Whom: Timothy Bourke X# X# $FreeBSD$ X# X XPORTNAME= sml_tk XPORTVERSION= 3.0 XCATEGORIES= devel XMASTER_SITES= http://www.informatik.uni-bremen.de/~cxl/sml_tk/ XDISTNAME= smltk X XMAINTAINER= timbob@bigpond.com XCOMMENT= Typed and abstract Standard ML interface to Tcl/Tk X XUSE_TK_WRAPPER= yes XWRKSRC= ${WRKDIR}/${PORTNAME} X XOPTIONS= SMLNJDEVEL "Build with and stabilize for SML/NJ." on \ X POLYML "Build and save state for Poly/ML" on X XALL_TARGET= smltk XSUB_FILES= sml_tk.1 XMAN1= sml_tk.1 X X.include X X.if defined(WITH_SMLNJDEVEL) XBUILD_DEPENDS+= smlnj-devel>=65:${PORTSDIR}/lang/sml-nj-devel X.endif X.if defined(WITH_POLYML) XBUILD_DEPENDS+= poly:${PORTSDIR}/lang/polyml X.endif X XMAKE_ENV+= WRKSRC=${WRKSRC} WISH=${WISH} X X.if defined(WITH_SMLNJDEVEL) XMAKE_ENV+= STABILIZE=yes SMLNJDEVEL=yes XPLIST_SUB+= STABLE="" SMLNJBIN="" X.else XMAKE_ENV+= STABILIZE=no SMLNJDEVEL=no XPLIST_SUB+= STABLE="@comment " SMLNJBIN="@comment " X.endif X X.if defined(WITH_POLYML) XMAKE_ENV+= POLYML=yes XPLIST_SUB+= POLYSTATE="" X.else XMAKE_ENV+= POLYML=no XPLIST_SUB+= POLYSTATE="@comment " X.endif X Xpost-extract: X @${CP} ${WRKSRC}/src/toolkit/filer.sml ${WRKSRC}/src/toolkit/njfiler.sml X @${SED} -e 's|%%WISH%%|${WISH}|' \ X -e 's|%%SMLTKLIB%%|${DATADIR}|' \ X ${FILESDIR}/src-sys_conf.sml > ${WRKSRC}/src/sys_conf.sml X @${CP} ${FILESDIR}/src-mlton.sml ${WRKSRC}/src/mlton.sml X @${CP} ${FILESDIR}/src-sml_tk.mlb ${WRKSRC}/src/sml_tk.mlb X @${CP} ${FILESDIR}/src-toolkit-toolkit.mlb ${WRKSRC}/src/toolkit/toolkit.mlb X @${CP} ${FILESDIR}/src-toolkit-regExp-regexp.mlb \ X ${WRKSRC}/src/toolkit/regExp/regexp.mlb X @${CP} ${FILESDIR}/src-std_lib-std_lib.mlb ${WRKSRC}/src/std_lib/std_lib.mlb X @${CHMOD} 0644 ${WRKSRC}/lib/images/info.gif X Xpost-build: X.if defined(WITH_SMLNJDEVEL) X SMLNJ_DEVEL=yes heap2exec \ X ${WRKSRC}/bin/sml_tk.heap.x86-bsd ${WRKSRC}/bin/sml_tk X.endif X Xdo-install: X @(cd ${WRKSRC}/lib; for d in `find . -type d`; do \ X ${MKDIR} ${DATADIR}/$$d; \ X done) X @(cd ${WRKSRC}/lib; for f in `find . -type f -perm 0755`; do \ X ${INSTALL_SCRIPT} $$f ${DATADIR}/$$f; \ X done) X @(cd ${WRKSRC}/lib; for f in `find . -type f -perm 0644 `; do \ X ${INSTALL_DATA} $$f ${DATADIR}/$$f; \ X done) X @(cd ${WRKSRC}/src; \ X for d in `find . -name .cm \! -prune -o \( -type d \! -name .cm \)`;\ X do ${MKDIR} ${PREFIX}/lib/${PORTNAME}/$$d; \ X done) X @(cd ${WRKSRC}/src; \ X for f in `find . -name .cm \! -prune -o -type f \! \( -regex '.*\.orig' -o -name .cvsignore \)`;\ X do ${INSTALL_DATA} $$f ${PREFIX}/lib/${PORTNAME}/$$f; \ X done) X @${INSTALL_DATA} ${WRKSRC}/src/smltk.cm ${PREFIX}/lib/${PORTNAME}/sml_tk.cm X.if defined(WITH_SMLNJDEVEL) X @${INSTALL_PROGRAM} ${WRKSRC}/bin/sml_tk ${PREFIX}/bin X @${MKDIR} ${PREFIX}/lib/${PORTNAME}/.cm X @${MKDIR} ${PREFIX}/lib/${PORTNAME}/.cm/x86-unix X @${INSTALL_DATA} ${WRKSRC}/src/.cm/x86-unix/sources.cm \ X ${PREFIX}/lib/${PORTNAME}/.cm/x86-unix/sources.cm X.endif X.if defined(WITH_POLYML) X @${INSTALL_DATA} ${WRKSRC}/bin/sml_tk.poly \ X ${PREFIX}/lib/${PORTNAME}/sml_tk.poly X.endif X.if !defined(NOPORTDOCS) X @${MKDIR} ${DOCSDIR} X @${INSTALL_MAN} ${WRKSRC}/doc/manual.html ${DOCSDIR}/manual.html X @${MKDIR} ${DOCSDIR}/images X @for f in `ls ${WRKSRC}/doc/images/`; do \ X ${INSTALL_DATA} ${WRKSRC}/doc/images/$$f ${DOCSDIR}/images/$$f;\ X done X.endif X @${INSTALL_MAN} ${WRKDIR}/sml_tk.1 ${MANPREFIX}/man/man1/sml_tk.1 X X.include END-of-sml_tk/Makefile echo x - sml_tk/pkg-plist sed 's/^X//' >sml_tk/pkg-plist << 'END-of-sml_tk/pkg-plist' X%%SMLNJBIN%%bin/sml_tk X%%POLYSTATE%%lib/sml_tk/sml_tk.poly X%%DATADIR%%/icons/filer/example/default_Icon.gif X%%DATADIR%%/icons/filer/example/gif_Icon.gif X%%DATADIR%%/icons/filer/example/html_Icon.gif X%%DATADIR%%/icons/filer/example/ps_Icon.gif X%%DATADIR%%/icons/filer/example/sml_Icon.gif X%%DATADIR%%/icons/filer/acc_Icon.gif X%%DATADIR%%/icons/filer/back_Icon.gif X%%DATADIR%%/icons/filer/back_highlighted_Icon.gif X%%DATADIR%%/icons/filer/back_outlined_Icon.gif X%%DATADIR%%/icons/filer/delfold_Icon.gif X%%DATADIR%%/icons/filer/filedel_Icon.gif X%%DATADIR%%/icons/filer/filedel_highlighted_Icon.gif X%%DATADIR%%/icons/filer/filedel_outlined_Icon.gif X%%DATADIR%%/icons/filer/forward_Icon.gif X%%DATADIR%%/icons/filer/forward_highlighted_Icon.gif X%%DATADIR%%/icons/filer/forward_outlined_Icon.gif X%%DATADIR%%/icons/filer/homedir_Icon.gif X%%DATADIR%%/icons/filer/homedir_highlighted_Icon.gif X%%DATADIR%%/icons/filer/homedir_outlined_Icon.gif X%%DATADIR%%/icons/filer/mkDir_Icon.gif X%%DATADIR%%/icons/filer/mkDir_highlighted_Icon.gif X%%DATADIR%%/icons/filer/mkDir_outlined_Icon.gif X%%DATADIR%%/icons/filer/noacc_Icon.gif X%%DATADIR%%/icons/filer/open_Icon.gif X%%DATADIR%%/icons/filer/reload_Icon.gif X%%DATADIR%%/icons/filer/reload_highlighted_Icon.gif X%%DATADIR%%/icons/filer/reload_outlined_Icon.gif X%%DATADIR%%/icons/filer/unknown_Icon.gif X%%DATADIR%%/icons/filer/updir_Icon.gif X%%DATADIR%%/icons/filer/updir_highlighted_Icon.gif X%%DATADIR%%/icons/filer/updir_outlined_Icon.gif X%%DATADIR%%/icons/gengui/folder-hi.gif X%%DATADIR%%/icons/gengui/folder-mic.gif X%%DATADIR%%/icons/gengui/folder-out.gif X%%DATADIR%%/icons/gengui/folder.data X%%DATADIR%%/icons/gengui/folder.gif X%%DATADIR%%/icons/numeric_chooser/down.gif X%%DATADIR%%/icons/numeric_chooser/down_highlighted.gif X%%DATADIR%%/icons/numeric_chooser/left.gif X%%DATADIR%%/icons/numeric_chooser/left_highlighted.gif X%%DATADIR%%/icons/numeric_chooser/right.gif X%%DATADIR%%/icons/numeric_chooser/right_highlighted.gif X%%DATADIR%%/icons/numeric_chooser/up.gif X%%DATADIR%%/icons/numeric_chooser/up_highlighted.gif X%%DATADIR%%/icons/treelist/micro/data-folder.gif X%%DATADIR%%/icons/treelist/micro/data-text.gif X%%DATADIR%%/icons/treelist/micro/folder-hi.gif X%%DATADIR%%/icons/treelist/micro/folder-out.gif X%%DATADIR%%/icons/treelist/micro/folder.data X%%DATADIR%%/icons/treelist/micro/folder.gif X%%DATADIR%%/icons/treelist/micro/text.gif X%%DATADIR%%/icons/mini-folder-hi.gif X%%DATADIR%%/icons/mini-folder-mic.gif X%%DATADIR%%/icons/mini-folder-out.gif X%%DATADIR%%/icons/mini-folder.data X%%DATADIR%%/icons/mini-folder.gif X%%DATADIR%%/icons/mini-text.gif X%%DATADIR%%/icons/trashcan-hi.gif X%%DATADIR%%/icons/trashcan-mic.gif X%%DATADIR%%/icons/trashcan-out.gif X%%DATADIR%%/icons/trashcan.data X%%DATADIR%%/icons/trashcan.gif X%%DATADIR%%/images/info.gif X%%DATADIR%%/images/large_warning.gif X%%DATADIR%%/images/q.gif X%%DATADIR%%/images/q.gif87 X%%DATADIR%%/images/smltk.gif X%%DATADIR%%/images/stop.gif X%%DATADIR%%/images/stop.gif87 X%%DATADIR%%/images/warning.gif X%%DATADIR%%/images/warning.gif87 X%%DATADIR%%/tests+examples/filemanager/file-hi.gif X%%DATADIR%%/tests+examples/filemanager/file-out.gif X%%DATADIR%%/tests+examples/filemanager/file.data X%%DATADIR%%/tests+examples/filemanager/file.gif X%%DATADIR%%/tests+examples/filemanager/fold-hi.gif X%%DATADIR%%/tests+examples/filemanager/fold-out.gif X%%DATADIR%%/tests+examples/filemanager/fold.data X%%DATADIR%%/tests+examples/filemanager/fold.gif X%%DATADIR%%/tests+examples/icons/note-hi.gif X%%DATADIR%%/tests+examples/icons/note-mic.gif X%%DATADIR%%/tests+examples/icons/note-out.gif X%%DATADIR%%/tests+examples/icons/note.data X%%DATADIR%%/tests+examples/icons/note.gif X%%DATADIR%%/tests+examples/icons/number-hi.gif X%%DATADIR%%/tests+examples/icons/number-mic.gif X%%DATADIR%%/tests+examples/icons/number-out.gif X%%DATADIR%%/tests+examples/icons/number.data X%%DATADIR%%/tests+examples/icons/number.gif X%%DATADIR%%/tests+examples/icons/numdiv-hi.gif X%%DATADIR%%/tests+examples/icons/numdiv-out.gif X%%DATADIR%%/tests+examples/icons/numdiv.data X%%DATADIR%%/tests+examples/icons/numdiv.gif X%%DATADIR%%/tests+examples/icons/nummin-hi.gif X%%DATADIR%%/tests+examples/icons/nummin-out.gif X%%DATADIR%%/tests+examples/icons/nummin.data X%%DATADIR%%/tests+examples/icons/nummin.gif X%%DATADIR%%/tests+examples/icons/numtim-hi.gif X%%DATADIR%%/tests+examples/icons/numtim-out.gif X%%DATADIR%%/tests+examples/icons/numtim.data X%%DATADIR%%/tests+examples/icons/numtim.gif X%%DATADIR%%/tests+examples/images/teapot.gif X%%DATADIR%%/tests+examples/verbose X%%DATADIR%%/tests+examples/myex.bmp X%%DATADIR%%/tests+examples/myex.cursor X%%DATADIR%%/tests+examples/myex.cursor_mask X%%DATADIR%%/lsfonts X%%DATADIR%%/testfont Xlib/sml_tk/std_lib/README Xlib/sml_tk/std_lib/binary-map-fn.sml Xlib/sml_tk/std_lib/int-binary-set.sml Xlib/sml_tk/std_lib/lib-base-sig.sml Xlib/sml_tk/std_lib/lib-base.sml Xlib/sml_tk/std_lib/ord-key-sig.sml Xlib/sml_tk/std_lib/ord-map-sig.sml Xlib/sml_tk/std_lib/ord-set-sig.sml Xlib/sml_tk/std_lib/sources.cm Xlib/sml_tk/std_lib/std_lib.mlb Xlib/sml_tk/tests+examples/Makefile Xlib/sml_tk/tests+examples/big_ex.sml Xlib/sml_tk/tests+examples/canvas_ex.sml Xlib/sml_tk/tests+examples/ex1.sml Xlib/sml_tk/tests+examples/ex2.sml Xlib/sml_tk/tests+examples/grid_ex.sml Xlib/sml_tk/tests+examples/list_box_ex.sml Xlib/sml_tk/tests+examples/popup_ex.sml Xlib/sml_tk/tests+examples/scale_ex.sml Xlib/sml_tk/tests+examples/small_ex.sml Xlib/sml_tk/tests+examples/sources.cm Xlib/sml_tk/tests+examples/tag_ex.sml Xlib/sml_tk/tests+examples/wbind_ex.sml Xlib/sml_tk/toolkit/regExp/globber.sml Xlib/sml_tk/toolkit/regExp/match.sig Xlib/sml_tk/toolkit/regExp/rex.sml Xlib/sml_tk/toolkit/regExp/sources.cm Xlib/sml_tk/toolkit/regExp/regexp.mlb Xlib/sml_tk/toolkit/tests+examples/Makefile Xlib/sml_tk/toolkit/tests+examples/boxes.sml Xlib/sml_tk/toolkit/tests+examples/filemanager.sml Xlib/sml_tk/toolkit/tests+examples/filer_ex.sml Xlib/sml_tk/toolkit/tests+examples/markup_ex.sml Xlib/sml_tk/toolkit/tests+examples/simpleinst.sml Xlib/sml_tk/toolkit/tests+examples/sources.cm Xlib/sml_tk/toolkit/tests+examples/stdmark_ex.sml Xlib/sml_tk/toolkit/tests+examples/table_ex.sml Xlib/sml_tk/toolkit/tests+examples/tabs_ex.sml Xlib/sml_tk/toolkit/tests+examples/tree_list_ex.sml Xlib/sml_tk/toolkit/tests+examples/tsimpleinst.sml Xlib/sml_tk/toolkit/tests+examples/uw_ex.sml Xlib/sml_tk/toolkit/Makefile Xlib/sml_tk/toolkit/appl.sig Xlib/sml_tk/toolkit/clipboard.sml Xlib/sml_tk/toolkit/drag_and_drop.sig Xlib/sml_tk/toolkit/drag_and_drop.sml Xlib/sml_tk/toolkit/enter_windows.sml Xlib/sml_tk/toolkit/err_warn_windows.sml Xlib/sml_tk/toolkit/filer.sig Xlib/sml_tk/toolkit/filer.sml Xlib/sml_tk/toolkit/njfiler.sml Xlib/sml_tk/toolkit/filer_default_config.sml Xlib/sml_tk/toolkit/gen_gui.sig Xlib/sml_tk/toolkit/gen_gui.sml Xlib/sml_tk/toolkit/icons.sml Xlib/sml_tk/toolkit/lazy_tree_objects.sig Xlib/sml_tk/toolkit/lazy_trees.sml Xlib/sml_tk/toolkit/markup.sig Xlib/sml_tk/toolkit/markup.sml Xlib/sml_tk/toolkit/notepad.sml Xlib/sml_tk/toolkit/numeric_chooser.sig Xlib/sml_tk/toolkit/numeric_chooser.sml Xlib/sml_tk/toolkit/obj2tree_obj-fun.sml Xlib/sml_tk/toolkit/object_class.sig Xlib/sml_tk/toolkit/print.sml Xlib/sml_tk/toolkit/sources.cm Xlib/sml_tk/toolkit/std_markup.sml Xlib/sml_tk/toolkit/table.sig Xlib/sml_tk/toolkit/table.sml Xlib/sml_tk/toolkit/tabs.sig Xlib/sml_tk/toolkit/tabs.sml Xlib/sml_tk/toolkit/toolkit.mlb Xlib/sml_tk/toolkit/tgen_gui.sml Xlib/sml_tk/toolkit/tree_list.sml Xlib/sml_tk/toolkit/tree_object_class.sig Xlib/sml_tk/toolkit/util_win.sig Xlib/sml_tk/toolkit/util_win.sml Xlib/sml_tk/toolkit/widget_box.sig Xlib/sml_tk/toolkit/widget_box.sml Xlib/sml_tk/Makefile Xlib/sml_tk/ann_texts.sig Xlib/sml_tk/ann_texts.sml Xlib/sml_tk/annotation.sig Xlib/sml_tk/annotation.sml Xlib/sml_tk/annotation_tree.sig Xlib/sml_tk/annotation_tree.sml Xlib/sml_tk/basic_types.sml Xlib/sml_tk/basic_util.sig Xlib/sml_tk/basic_util.sml Xlib/sml_tk/bind.sig Xlib/sml_tk/bind.sml Xlib/sml_tk/c_item.sig Xlib/sml_tk/c_item.sml Xlib/sml_tk/c_item_tree.sig Xlib/sml_tk/c_item_tree.sml Xlib/sml_tk/com.sig Xlib/sml_tk/com.sml Xlib/sml_tk/com_state.sig Xlib/sml_tk/com_state_clib.sml Xlib/sml_tk/com_state_pipe.sml Xlib/sml_tk/config.sig Xlib/sml_tk/config.sml Xlib/sml_tk/coord.sig Xlib/sml_tk/coord.sml Xlib/sml_tk/debug.sig Xlib/sml_tk/debug.sml Xlib/sml_tk/eventloop.sig Xlib/sml_tk/eventloop.sml Xlib/sml_tk/export.sml Xlib/sml_tk/fonts.sig Xlib/sml_tk/fonts.sml Xlib/sml_tk/global_config.sml Xlib/sml_tk/gui_state.sig Xlib/sml_tk/gui_state.sml Xlib/sml_tk/mark.sig Xlib/sml_tk/mark.sml Xlib/sml_tk/mosml.sml Xlib/sml_tk/mlton.sml Xlib/sml_tk/njml.sml Xlib/sml_tk/paths.sig Xlib/sml_tk/paths.sml Xlib/sml_tk/poly.sml Xlib/sml_tk/poly_fix.sml Xlib/sml_tk/root.sml Xlib/sml_tk/root_mosml.sml Xlib/sml_tk/root_njml.sml Xlib/sml_tk/root_poly.sml Xlib/sml_tk/smltk.cm Xlib/sml_tk/sml_tk.cm Xlib/sml_tk/sml_tk.mlb Xlib/sml_tk/smltk21.sml Xlib/sml_tk/sources.cm Xlib/sml_tk/sys_conf.sml Xlib/sml_tk/sys_dep.sig Xlib/sml_tk/sys_init.sml Xlib/sml_tk/tk_access.sig Xlib/sml_tk/tk_access.sml Xlib/sml_tk/tk_event.sig Xlib/sml_tk/tk_event.sml Xlib/sml_tk/tk_types.sml Xlib/sml_tk/widget_ops.sig Xlib/sml_tk/widget_ops.sml Xlib/sml_tk/widget_tree.sig Xlib/sml_tk/widget_tree.sml Xlib/sml_tk/windows.sig Xlib/sml_tk/windows.sml X%%STABLE%%lib/sml_tk/.cm/x86-unix/sources.cm X%%PORTDOCS%%%%DOCSDIR%%/images/alu-logo.gif X%%PORTDOCS%%%%DOCSDIR%%/images/confirm.gif X%%PORTDOCS%%%%DOCSDIR%%/images/enterline.gif X%%PORTDOCS%%%%DOCSDIR%%/images/error.gif X%%PORTDOCS%%%%DOCSDIR%%/images/filer.gif X%%PORTDOCS%%%%DOCSDIR%%/images/info.gif X%%PORTDOCS%%%%DOCSDIR%%/images/isawin.gif X%%PORTDOCS%%%%DOCSDIR%%/images/lazy_tree_lists.gif X%%PORTDOCS%%%%DOCSDIR%%/images/numeric_choosers.gif X%%PORTDOCS%%%%DOCSDIR%%/images/simpleinst.gif X%%PORTDOCS%%%%DOCSDIR%%/images/small_ex.1.gif X%%PORTDOCS%%%%DOCSDIR%%/images/small_ex.2.gif X%%PORTDOCS%%%%DOCSDIR%%/images/tables.gif X%%PORTDOCS%%%%DOCSDIR%%/images/tabs.gif X%%PORTDOCS%%%%DOCSDIR%%/images/treelist.gif X%%PORTDOCS%%%%DOCSDIR%%/images/uni-hb-logo.gif X%%PORTDOCS%%%%DOCSDIR%%/images/warning.gif X%%PORTDOCS%%%%DOCSDIR%%/manual.html X@dirrm %%DATADIR%%/icons/filer/example X@dirrm %%DATADIR%%/icons/filer X@dirrm %%DATADIR%%/icons/gengui X@dirrm %%DATADIR%%/icons/numeric_chooser X@dirrm %%DATADIR%%/icons/treelist/micro X@dirrm %%DATADIR%%/icons/treelist X@dirrm %%DATADIR%%/icons X@dirrm %%DATADIR%%/images X@dirrm %%DATADIR%%/tests+examples/filemanager X@dirrm %%DATADIR%%/tests+examples/icons X@dirrm %%DATADIR%%/tests+examples/images X@dirrm %%DATADIR%%/tests+examples X@dirrm %%DATADIR%% X@dirrm lib/sml_tk/toolkit/tests+examples X@dirrm lib/sml_tk/toolkit/regExp X@dirrm lib/sml_tk/toolkit X@dirrm lib/sml_tk/std_lib X@dirrm lib/sml_tk/tests+examples X%%STABLE%%@dirrm lib/sml_tk/.cm/x86-unix X%%STABLE%%@dirrm lib/sml_tk/.cm X@dirrm lib/sml_tk X%%PORTDOCS%%@dirrm %%DOCSDIR%%/images X%%PORTDOCS%%@dirrm %%DOCSDIR%% END-of-sml_tk/pkg-plist echo x - sml_tk/distinfo sed 's/^X//' >sml_tk/distinfo << 'END-of-sml_tk/distinfo' XMD5 (smltk.tar.gz) = 7597da68a430a993589b563bffdf2933 XSHA256 (smltk.tar.gz) = 6dccd8a3345b9e8686a87e52773ba3787bf952d0db5bd4a51702734f6ab0c74e XSIZE (smltk.tar.gz) = 440736 END-of-sml_tk/distinfo echo c - sml_tk/files mkdir -p sml_tk/files > /dev/null 2>&1 echo x - sml_tk/files/patch-src-tests+examples-sources.cm sed 's/^X//' >sml_tk/files/patch-src-tests+examples-sources.cm << 'END-of-sml_tk/files/patch-src-tests+examples-sources.cm' X--- src/tests+examples/sources.cm.orig Fri Mar 30 23:39:35 2001 X+++ src/tests+examples/sources.cm Sun Jan 13 17:06:20 2008 X@@ -1,15 +1,28 @@ X-Group is X+Group X+ structure BigEx X+ structure CanvasEx X+ structure Ex1 X+ structure Ex2 X+ structure GridEx X+ structure ListBoxEx X+ structure PopUpEx X+ structure ScaleEx X+ structure TagEx X+ structure WBindEx X+is X+ ../smltk.cm X X-../smltk.cm X+ ex1.sml X+ ex2.sml X X-ex1.sml X-ex2.sml X+ big_ex.sml X+ canvas_ex.sml X+ list_box_ex.sml X+ popup_ex.sml X+ tag_ex.sml X+ wbind_ex.sml X+ grid_ex.sml X+ scale_ex.sml X+ X+ $/basis.cm X X-big_ex.sml X-canvas_ex.sml X-list_box_ex.sml X-popup_ex.sml X-tag_ex.sml X-wbind_ex.sml X-grid_ex.sml X-scale_ex.sml END-of-sml_tk/files/patch-src-tests+examples-sources.cm echo x - sml_tk/files/patch-src-toolkit-regExp-sources.cm sed 's/^X//' >sml_tk/files/patch-src-toolkit-regExp-sources.cm << 'END-of-sml_tk/files/patch-src-toolkit-regExp-sources.cm' X--- src/toolkit/regExp/sources.cm.orig Fri Mar 30 23:39:59 2001 X+++ src/toolkit/regExp/sources.cm Sun Jan 13 17:24:07 2008 X@@ -1,9 +1,13 @@ X-Group is X- X-../../std_lib/sources.cm X- X-match.sig rex.sml X- globber.sml X+Group X+ signature MATCH X+ structure Globber X+ structure Rex X+is X X+ match.sig X+ rex.sml X+ globber.sml X X+ $/basis.cm X+ $/smlnj-lib.cm X END-of-sml_tk/files/patch-src-toolkit-regExp-sources.cm echo x - sml_tk/files/patch-src-toolkit-tests+examples-simpleinst.sml sed 's/^X//' >sml_tk/files/patch-src-toolkit-tests+examples-simpleinst.sml << 'END-of-sml_tk/files/patch-src-toolkit-tests+examples-simpleinst.sml' X--- ./src/toolkit/tests+examples/simpleinst.sml.orig Fri Mar 30 23:40:03 2001 X+++ src/toolkit/tests+examples/simpleinst.sml Sun Jan 13 11:03:51 2008 X@@ -346,7 +346,7 @@ X let X fun read_file si = X if TextIO.endOfStream si then "" X- else (TextIO.inputLine si)^(read_file si) X+ else (valOf (TextIO.inputLine si))^(read_file si) X val is = TextIO.openIn filenm X val txt = read_file is X val _ = TextIO.closeIn is END-of-sml_tk/files/patch-src-toolkit-tests+examples-simpleinst.sml echo x - sml_tk/files/patch-src-toolkit-tests+examples-tsimpleinst.sml sed 's/^X//' >sml_tk/files/patch-src-toolkit-tests+examples-tsimpleinst.sml << 'END-of-sml_tk/files/patch-src-toolkit-tests+examples-tsimpleinst.sml' X--- ./src/toolkit/tests+examples/tsimpleinst.sml.orig Fri Mar 30 23:40:06 2001 X+++ src/toolkit/tests+examples/tsimpleinst.sml Sun Jan 13 11:03:51 2008 X@@ -344,7 +344,7 @@ X let X fun read_file si = X if TextIO.endOfStream si then "" X- else (TextIO.inputLine si)^(read_file si) X+ else (valOf (TextIO.inputLine si))^(read_file si) X val is = TextIO.openIn filenm X val txt = read_file is X val _ = TextIO.closeIn is END-of-sml_tk/files/patch-src-toolkit-tests+examples-tsimpleinst.sml echo x - sml_tk/files/patch-src-poly.sml sed 's/^X//' >sml_tk/files/patch-src-poly.sml << 'END-of-sml_tk/files/patch-src-poly.sml' X--- src/poly.sml.orig Sun Jan 13 18:42:52 2008 X+++ src/poly.sml Sun Jan 13 18:42:35 2008 X@@ -20,7 +20,7 @@ X (* from Isabelle --- to be used in Makefiles *) X fun exportML{init:unit->unit, X banner:string, X- imagefile:string} = (PolyML.commit();()) X+ imagefile:string} = (PolyML.SaveState.saveState imagefile) X (* runs only very rudimentarily . . . *) X X fun setPrintDepth x = (); END-of-sml_tk/files/patch-src-poly.sml echo x - sml_tk/files/patch-src-toolkit-icons.sml sed 's/^X//' >sml_tk/files/patch-src-toolkit-icons.sml << 'END-of-sml_tk/files/patch-src-toolkit-icons.sml' X--- ./src/toolkit/icons.sml.orig Fri Mar 30 23:39:44 2001 X+++ src/toolkit/icons.sml Sun Jan 13 11:03:51 2008 X@@ -95,8 +95,8 @@ X fun getIconData (dir, file) = X let val i = openFile(joinDirFile{dir=dir, X file=dataFileNm file}) X- val w = StringUtil.toInt (TextIO.inputLine i) X- val h = StringUtil.toInt (TextIO.inputLine i) X+ val w = StringUtil.toInt (valOf (TextIO.inputLine i)) X+ val h = StringUtil.toInt (valOf (TextIO.inputLine i)) X val _ = TextIO.closeIn i X in (w, h) X end END-of-sml_tk/files/patch-src-toolkit-icons.sml echo x - sml_tk/files/patch-src-toolkit-markup.sml sed 's/^X//' >sml_tk/files/patch-src-toolkit-markup.sml << 'END-of-sml_tk/files/patch-src-toolkit-markup.sml' X--- ./src/toolkit/markup.sml.orig Fri Mar 30 23:39:46 2001 X+++ src/toolkit/markup.sml Sun Jan 13 11:03:51 2008 X@@ -199,7 +199,7 @@ X rest X end X X- fun parse t = parseMain (all t) 0 X+ fun parse t = parseMain (full t) 0 X X end X X@@ -239,7 +239,7 @@ X (case Tags.escape e of X SOME esc => X let val estr= Tags.textForEsc esc X- val nuc = addpos c (Substring.all estr) X+ val nuc = addpos c (Substring.full estr) X val ean = Tags.annotationForEsc esc (Mark c, X Mark nuc) X in (oe, nuc, s^estr, X@@ -255,7 +255,7 @@ X (Tags.warning ("Unknown escape sequence '"^e^ X "' (left untouched)."); X "&"^e^";") X- in (oe, addpos c (Substring.all estr), s^estr, al) X+ in (oe, addpos c (Substring.full estr), s^estr, al) X end) X | consEl wid (elemStart els, (oe, c, s, al)) = X ((els, c):: oe, c, s, al) END-of-sml_tk/files/patch-src-toolkit-markup.sml echo x - sml_tk/files/patch-src-toolkit-sources.cm sed 's/^X//' >sml_tk/files/patch-src-toolkit-sources.cm << 'END-of-sml_tk/files/patch-src-toolkit-sources.cm' X--- src/toolkit/sources.cm.orig Fri Mar 30 23:39:49 2001 X+++ src/toolkit/sources.cm Sun Jan 13 18:41:12 2008 X@@ -1,40 +1,125 @@ X-Group is X- X-../smltk.cm X- X-../std_lib/sources.cm X-./regExp/sources.cm X- X-markup.sig markup.sml X- std_markup.sml X- X-util_win.sig util_win.sml X- enter_windows.sml X- clipboard.sml X-widget_box.sig widget_box.sml X- X-lazy_tree_objects.sig lazy_trees.sml X- X-filer.sig filer_default_config.sml X- filer.sml X- X- icons.sml X- X-table.sig table.sml X-tabs.sig tabs.sml X-numeric_chooser.sig numeric_chooser.sml X- X-drag_and_drop.sig drag_and_drop.sml X- X-appl.sig X- X- notepad.sml X-gen_gui.sig gen_gui.sml X- tgen_gui.sml X- X-print.sml X-object_class.sig X-tree_object_class.sig X-obj2tree_obj-fun.sml X-tree_list.sml X-(* test.sml *) X+Group X+ signature APPL_SIG X+ signature NP_APPL_SIG X+ X+ signature DDITEMS X+ signature DRAG_DROP_SIG X+ functor DragAndDrop X+ X+ signature GENGUI0_CONF X+ signature GENGUI_CONF X+ signature GENGUI_SIG X+ functor GenGUI X+ X+ signature LAZY_TREE_OBJECTS X+ functor LazyTree X+ X+ signature NUMERIC_CHOOSER_SIG X+ signature OBJECT_CLASS X+ X+ signature FOLDERINFO X+ functor obj2tree_obj X+ X+ signature TREE_OBJECT_CLASS X+ signature PTREE_OBJECT_CLASS X+ X+ signature CLIPBOARD X+ signature CLIPBOARD_R X+ signature CLIPBOARD_W X+ functor Clipboard X+ structure DummyCB X+ X+ signature SUBSTWIN X+ structure SubstWin X+ X+ signature FILER_SIG X+ signature FILER_CONFIG X+ functor Filer X+ functor SimpleFiler X+ structure FilerDefaultConfig X+ X+ signature ICON_SIG X+ structure Icons X+ X+ functor Notepad X+ structure NumericChooser X+ structure Print X+ X+ signature TAGS X+ signature SMLTK_MARKUP X+ signature BINDTAGS X+ functor SmlTkMarkup X+ functor StdTags X+ structure StdMarkup X+ X+ signature TABLE_SIG X+ signature TABSSIG X+ structure Table X+ structure Tabs X+ X+ signature TGENGUI_SIG X+ functor TGenGUI X+ X+ signature TL_ACTION X+ functor TreeList X+ X+ signature UTIL_WIN X+ signature WIDGET_BOX X+ structure UW X+ structure WidgetBox X+ X+ group(../smltk.cm) X+is X+ X+ ../smltk.cm X+ ./regExp/sources.cm X+ X+ markup.sig X+ markup.sml X+ std_markup.sml X+ X+ util_win.sig X+ util_win.sml X+ X+ enter_windows.sml X+ clipboard.sml X+ X+ widget_box.sig X+ widget_box.sml X+ X+ lazy_tree_objects.sig X+ lazy_trees.sml X+ X+ filer.sig X+ filer_default_config.sml X+ njfiler.sml X+ X+ icons.sml X+ X+ table.sig X+ table.sml X+ X+ tabs.sig X+ tabs.sml X+ X+ numeric_chooser.sig X+ numeric_chooser.sml X+ X+ drag_and_drop.sig X+ drag_and_drop.sml X+ X+ appl.sig X+ notepad.sml X+ X+ gen_gui.sig X+ gen_gui.sml X+ tgen_gui.sml X+ X+ print.sml X+ object_class.sig X+ tree_object_class.sig X+ obj2tree_obj-fun.sml X+ tree_list.sml X+ (* test.sml *) X+ X+ $/basis.cm END-of-sml_tk/files/patch-src-toolkit-sources.cm echo x - sml_tk/files/patch-src-Makefile sed 's/^X//' >sml_tk/files/patch-src-Makefile << 'END-of-sml_tk/files/patch-src-Makefile' X--- src/Makefile.orig Fri Mar 30 23:38:56 2001 X+++ src/Makefile Sun Jan 13 21:53:55 2008 X@@ -12,10 +12,18 @@ X ## X X all : X+.if ${SMLTK_STABILIZE} == "yes" X+ echo "CM.stabilize true \"sources.cm\"; \ X+ CM.make \"sources.cm\"; \ X+ SmlTk.init(); \ X+ SmlTk.xSmlTk {imagefile=\"$(SMLTK_BINARY)\", banner=\"$(SMLTK_BANNER)\"};" | \ X+ $(SMLTK_COMP) X+.else X echo "use \"$(SMLTK_ROOT)\"; \ X SmlTk.init(); \ X SmlTk.xSmlTk {imagefile=\"$(SMLTK_BINARY)\", banner=\"$(SMLTK_BANNER)\"};" | \ X $(SMLTK_COMP) X+.endif X X allI : X echo "CM.SymVal.define(\"TK_INSIDE\", 1); \ X@@ -27,4 +35,4 @@ X clean : X cd toolkit; $(MAKE) clean X cd tests+examples; $(MAKE) clean X- rm -r -f CM .depend .x86 .sparc X+ rm -r -f .cm .depend .x86 .sparc END-of-sml_tk/files/patch-src-Makefile echo x - sml_tk/files/patch-src-ann_texts.sml sed 's/^X//' >sml_tk/files/patch-src-ann_texts.sml << 'END-of-sml_tk/files/patch-src-ann_texts.sml' X--- ./src/ann_texts.sml.orig Fri Mar 30 23:38:57 2001 X+++ src/ann_texts.sml Sun Jan 13 11:03:51 2008 X@@ -69,7 +69,7 @@ X if (StringUtil.isLinefeed thischar) X then (line+1, 0) X else (line, char+1) X- val (rows, cols) = Substring.foldl cnt (1, 0) (Substring.all t) X+ val (rows, cols) = Substring.foldl cnt (1, 0) (Substring.full t) X in (Int.max(rows, 1), cols) X end X END-of-sml_tk/files/patch-src-ann_texts.sml echo x - sml_tk/files/patch-src-basic_util.sml sed 's/^X//' >sml_tk/files/patch-src-basic_util.sml << 'END-of-sml_tk/files/patch-src-basic_util.sml' X--- src/basic_util.sml.orig Sun Jan 13 18:28:51 2008 X+++ src/basic_util.sml Sun Jan 13 18:28:13 2008 X@@ -132,7 +132,7 @@ X open Substring X in X fun breakAtDot s = X- let val (hd, tl) = splitl (not o isDot) (all s) X+ let val (hd, tl) = splitl (not o isDot) (full s) X in (string hd, string (triml 1 tl)) X end X end X@@ -150,7 +150,7 @@ X else Int.toString s X X fun all p str = Substring.foldl (fn (c, r)=> (p c) andalso r) X- true (Substring.all str) X+ true (Substring.full str) X X (* Adaptstring converts double quotes and other special characters X * into properly escaped sequences, to insure the string is to END-of-sml_tk/files/patch-src-basic_util.sml echo x - sml_tk/files/patch-src-fonts.sml sed 's/^X//' >sml_tk/files/patch-src-fonts.sml << 'END-of-sml_tk/files/patch-src-fonts.sml' X--- ./src/fonts.sml.orig Fri Mar 30 23:39:12 2001 X+++ src/fonts.sml Sun Jan 13 11:03:51 2008 X@@ -109,8 +109,8 @@ X fun read_em si = if TextIO.endOfStream si X then [] before (TextIO.closeIn si; X TextIO.closeOut so) X- else (splitFields X- (TextIO.inputLine si))::(read_em si) X+ else (splitFields (valOf X+ (TextIO.inputLine si)))::(read_em si) X in read_em si X end X END-of-sml_tk/files/patch-src-fonts.sml echo x - sml_tk/files/patch-src-com_state_pipe.sml sed 's/^X//' >sml_tk/files/patch-src-com_state_pipe.sml << 'END-of-sml_tk/files/patch-src-com_state_pipe.sml' X--- src/com_state_pipe.sml.orig Fri Mar 30 23:39:06 2001 X+++ src/com_state_pipe.sml Sun Jan 13 13:40:19 2008 X@@ -145,7 +143,7 @@ X X X fun getEvent () = X- TextIO.inputLine(getWishIn()) X+ valOf (TextIO.inputLine(getWishIn())) X handle Option.Option => "" (* wish has been closed in the meantime *) X X fun eval ps = END-of-sml_tk/files/patch-src-com_state_pipe.sml echo x - sml_tk/files/patch-src-njml.sml sed 's/^X//' >sml_tk/files/patch-src-njml.sml << 'END-of-sml_tk/files/patch-src-njml.sml' X--- src/njml.sml.orig Fri Mar 30 23:39:14 2001 X+++ src/njml.sml Sun Jan 13 12:35:29 2008 X@@ -44,8 +44,8 @@ X X end X X- fun setPrintDepth n = (Compiler.Control.Print.printDepth := n div 2; X- Compiler.Control.Print.printLength := n) X+ fun setPrintDepth n = (Control.Print.printDepth := n div 2; X+ Control.Print.printLength := n) X X (* Set the terminal to a state suitable for sml_tk. Disables INTR X * s.t. we can use it to abort functions called from bindings, and X@@ -60,11 +60,11 @@ X if Posix.ProcEnv.isatty (Posix.FileSys.stdin) then X let (* configure TTY driver to have ^\ generate sigQUIT *) X val {iflag, oflag, cflag, lflag, cc, ispeed, ospeed} = X- fieldsOf (getattr Posix.FileSys.stdin) X+ fieldsOf (Posix.TTY.TC.getattr Posix.FileSys.stdin) X val nuattr= termios {iflag=iflag, oflag=oflag, cflag=cflag, X lflag=lflag, ispeed=ispeed, ospeed=ospeed, X cc=V.update(cc, [(V.quit, Char.chr 28)])} X- in setattr(Posix.FileSys.stdin, TC.sanow, nuattr); X+ in Posix.TTY.TC.setattr(Posix.FileSys.stdin, TC.sanow, nuattr); X (* install the top level continuation as QUIT signal handler *) X setHandler(UnixSignals.sigQUIT, X HANDLER (fn _ => (abort(); X@@ -106,7 +106,7 @@ X fun exec (s,sl) = X let X val pr = Unix.execute (s,sl) X- in case (Unix.reap pr) of X+ in case Posix.Process.fromStatus (Unix.reap pr) of X Posix.Process.W_EXITED => true X | _ => false X end END-of-sml_tk/files/patch-src-njml.sml echo x - sml_tk/files/patch-src-paths.sml sed 's/^X//' >sml_tk/files/patch-src-paths.sml << 'END-of-sml_tk/files/patch-src-paths.sml' X--- ./src/paths.sml.orig Fri Mar 30 23:39:15 2001 X+++ src/paths.sml Sun Jan 13 11:03:51 2008 X@@ -29,13 +29,13 @@ X X fun fstWidPath s = X let val (m1, m2) = Substring.splitl (not o StringUtil.isDot) X- (Substring.triml 1 (Substring.all s)) X+ (Substring.triml 1 (Substring.full s)) X in (Substring.string m1, Substring.string m2) X end X X fun lastWidPath p = X let val (rp, rw) = Substring.splitr (not o StringUtil.isDot) X- (Substring.all p) X+ (Substring.full p) X in X if (Substring.size rp)= 0 then X ("", Substring.string rw) END-of-sml_tk/files/patch-src-paths.sml echo x - sml_tk/files/patch-src-sources.cm sed 's/^X//' >sml_tk/files/patch-src-sources.cm << 'END-of-sml_tk/files/patch-src-sources.cm' X--- src/sources.cm.orig Fri Mar 30 23:39:18 2001 X+++ src/sources.cm Sun Jan 13 17:47:56 2008 X@@ -13,11 +13,115 @@ X (C) 1997, Bremen Institute for Safe Systems, Universitaet Bremen X X ************************************************************************** *) X+Library X+ (* smltk.cm *) X+ signature BASIC_UTIL X+ structure BasicUtil X X-Group is X+ signature SML_TK X+ structure SmlTk X+ structure SmlTk21 X X- ./std_lib/sources.cm X+ structure GlobalConfig X+ X+ (* toolkit/sources.cm *) X+ signature APPL_SIG X+ signature NP_APPL_SIG X+ X+ signature DDITEMS X+ signature DRAG_DROP_SIG X+ functor DragAndDrop X+ X+ signature GENGUI0_CONF X+ signature GENGUI_CONF X+ signature GENGUI_SIG X+ functor GenGUI X+ X+ signature LAZY_TREE_OBJECTS X+ functor LazyTree X+ X+ signature NUMERIC_CHOOSER_SIG X+ signature OBJECT_CLASS X+ X+ signature FOLDERINFO X+ functor obj2tree_obj X+ X+ signature TREE_OBJECT_CLASS X+ signature PTREE_OBJECT_CLASS X+ signature CLIPBOARD X+ signature CLIPBOARD_R X+ signature CLIPBOARD_W X+ structure DummyCB X+ X+ signature SUBSTWIN X+ structure SubstWin X+ X+ signature FILER_SIG X+ signature FILER_CONFIG X+ functor Filer X+ functor SimpleFiler X+ structure FilerDefaultConfig X+ X+ signature ICON_SIG X+ structure Icons X+ X+ functor Notepad X+ structure NumericChooser X+ structure Print X+ X+ signature TAGS X+ signature SMLTK_MARKUP X+ signature BINDTAGS X+ functor SmlTkMarkup X+ functor StdTags X+ structure StdMarkup X+ X+ signature TABLE_SIG X+ signature TABSSIG X+ structure Table X+ structure Tabs X+ X+ signature TGENGUI_SIG X+ functor TGenGUI X+ X+ signature TL_ACTION X+ functor TreeList X+ X+ signature UTIL_WIN X+ signature WIDGET_BOX X+ structure UW X+ structure WidgetBox X+ X+ (* tests+examples/sources.cm *) X+ structure BigEx X+ structure CanvasEx X+ structure Ex1 X+ structure Ex2 X+ structure GridEx X+ structure ListBoxEx X+ structure PopUpEx X+ structure ScaleEx X+ structure TagEx X+ structure WBindEx X+ X+ (* toolkit/tests+examples/sources.cm *) X+ structure WeeBoxes X+ structure FilerEx X+ structure MarkupEx X+ structure SimpleInstAppl X+ structure SimpleInst X+ structure StdMarkEx X+ structure TableEx X+ structure TabsEx X+ structure LittleTreeList X+ structure TSimpleInstAppl X+ structure UW_Ex X+is X ./smltk.cm X ./toolkit/sources.cm X ./tests+examples/sources.cm X ./toolkit/tests+examples/sources.cm X+ X+ $/basis.cm X+ $/smlnj-lib.cm X+ END-of-sml_tk/files/patch-src-sources.cm echo x - sml_tk/files/patch-src-smltk.cm sed 's/^X//' >sml_tk/files/patch-src-smltk.cm << 'END-of-sml_tk/files/patch-src-smltk.cm' X--- src/smltk.cm.orig Fri Mar 30 23:39:17 2001 X+++ src/smltk.cm Sun Jan 13 17:40:24 2008 X@@ -1,8 +1,5 @@ X (* -*-Mode: sml-*- *) X- X-Group X- X- X+Group X signature BASIC_UTIL X structure BasicUtil X X@@ -11,46 +8,93 @@ X structure SmlTk21 X X structure GlobalConfig X- X is X- X- ./std_lib/sources.cm X- X- sys_conf.sml X-debug.sig debug.sml X-sys_dep.sig njml.sml X-basic_util.sig basic_util.sml X+ sys_conf.sml X+ X+ debug.sig X+ debug.sml X+ X+ sys_dep.sig X+ njml.sml X+ X+ basic_util.sig X+ basic_util.sml X+ X #if defined (TK_INSIDE) X-tk_access.sig tk_access.sml X+ tk_access.sig X+ tk_access.sml X #endif X-fonts.sig fonts.sml X- basic_types.sml X-gui_state.sig gui_state.sml X-com_state.sig X+ X+ fonts.sig X+ fonts.sml X+ X+ basic_types.sml X+ X+ gui_state.sig X+ gui_state.sml X+ com_state.sig X+ X #if defined (TK_INSIDE) X- com_state_clib.sml X+ com_state_clib.sml X #else X- com_state_pipe.sml X+ com_state_pipe.sml X #endif X-com.sig com.sml X-paths.sig paths.sml X-config.sig config.sml X-tk_event.sig tk_event.sml X-bind.sig bind.sml X-coord.sig coord.sml X-mark.sig mark.sml X-c_item.sig c_item.sml X-ann_texts.sig ann_texts.sml X-annotation.sig annotation.sml X-widget_tree.sig widget_tree.sml X-c_item_tree.sig c_item_tree.sml X-annotation_tree.sig annotation_tree.sml X-windows.sig windows.sml X-eventloop.sig eventloop.sml X-widget_ops.sig widget_ops.sml X- X-sys_init.sml X-tk_types.sml X-export.sml X-smltk21.sml X-global_config.sml X+ X+ com.sig X+ com.sml X+ X+ paths.sig X+ paths.sml X+ X+ config.sig X+ config.sml X+ X+ tk_event.sig X+ tk_event.sml X+ X+ bind.sig X+ bind.sml X+ X+ coord.sig X+ coord.sml X+ X+ mark.sig X+ mark.sml X+ X+ c_item.sig X+ c_item.sml X+ X+ ann_texts.sig X+ ann_texts.sml X+ X+ annotation.sig X+ annotation.sml X+ X+ widget_tree.sig X+ widget_tree.sml X+ X+ c_item_tree.sig X+ c_item_tree.sml X+ X+ annotation_tree.sig X+ annotation_tree.sml X+ X+ windows.sig X+ windows.sml X+ X+ eventloop.sig X+ eventloop.sml X+ X+ widget_ops.sig X+ widget_ops.sml X+ X+ sys_init.sml X+ tk_types.sml X+ export.sml X+ smltk21.sml X+ global_config.sml X+ X+ $/basis.cm X+ $/smlnj-lib.cm X+ $smlnj/compiler.cm X+ END-of-sml_tk/files/patch-src-smltk.cm echo x - sml_tk/files/patch-src-config.sig sed 's/^X//' >sml_tk/files/patch-src-config.sig << 'END-of-sml_tk/files/patch-src-config.sig' X--- ./src/config.sig.orig Fri Mar 30 23:39:07 2001 X+++ src/config.sig Sun Jan 13 11:10:08 2008 X@@ -50,6 +50,8 @@ X X val showReal : real -> string X X+ val showColor : BasicTypes.Color -> string X+ X val winConfEq : BasicTypes.WinConfigure -> X BasicTypes.WinConfigure -> bool X END-of-sml_tk/files/patch-src-config.sig echo x - sml_tk/files/patch-src-config.sml sed 's/^X//' >sml_tk/files/patch-src-config.sml << 'END-of-sml_tk/files/patch-src-config.sml' X--- ./src/config.sml.orig Fri Mar 30 23:39:07 2001 X+++ src/config.sml Sun Jan 13 11:10:08 2008 X@@ -339,22 +339,22 @@ X local X fun round n = X if n < 0 then 0 else if n > 255 then 255 else n X+ val toStr = X+ (StringCvt.padLeft #"0" 2) o Word.toString o Word.fromInt o round X in X- fun showCol NoColor= "{}" X- | showCol Black = "black" X- | showCol White = "white" X- | showCol Grey = "grey" X- | showCol Blue = "blue" X- | showCol Green = "green" X- | showCol Red = "red" X- | showCol Brown = "brown" X- | showCol Yellow = "yellow" X- | showCol Purple = "purple" X- | showCol Orange = "orange" X- | showCol (Mix {red, blue, green}) = X- "\"#"^Word.toString(Word.fromInt(round red)) ^ X- Word.toString(Word.fromInt(round green)) ^ X- Word.toString(Word.fromInt(round blue)) ^ "\"" X+ fun showColor NoColor= "{}" X+ | showColor Black = "black" X+ | showColor White = "white" X+ | showColor Grey = "grey" X+ | showColor Blue = "blue" X+ | showColor Green = "green" X+ | showColor Red = "red" X+ | showColor Brown = "brown" X+ | showColor Yellow = "yellow" X+ | showColor Purple = "purple" X+ | showColor Orange = "orange" X+ | showColor (Mix {red, blue, green}) = X+ "\"#"^ toStr red ^ toStr green ^ toStr blue ^ "\"" X end X X fun showAnchorKind North = "n" X@@ -384,13 +384,13 @@ X X fun showCursorKind (NoCursor) = "{}" X | showCursorKind (XCursor(cn,NONE)) = cn X- | showCursorKind (XCursor(cn,SOME(fg,NONE))) = cn ^ " " ^ (showCol fg) X+ | showCursorKind (XCursor(cn,SOME(fg,NONE))) = cn ^ " " ^ (showColor fg) X | showCursorKind (XCursor(cn,SOME(fg,SOME(bg)))) = X- cn ^ " " ^ (showCol fg)^ " " ^ (showCol bg) X+ cn ^ " " ^ (showColor fg)^ " " ^ (showColor bg) X | showCursorKind (FileCursor(cf,fg,NONE)) = X- "{@" ^ cf ^ " " ^ (showCol fg) ^ "}" X+ "{@" ^ cf ^ " " ^ (showColor fg) ^ "}" X | showCursorKind (FileCursor(cf,fg,SOME(mf,bg))) = X- "{@" ^ cf ^ " " ^ mf ^ " " ^ (showCol fg) ^ " " ^ (showCol bg) ^ "}" X+ "{@" ^ cf ^ " " ^ mf ^ " " ^ (showColor fg) ^ " " ^ (showColor bg) ^ "}" X X (* Added by E.L.Gunter 14 July 1998 *) X fun showArrowPos NoneAP = "none" X@@ -429,8 +429,8 @@ X | showConf _ (Height n) = " -height " ^ StringUtil.fromInt n X | showConf _ (Borderwidth n) = " -borderwidth " ^ StringUtil.fromInt n X | showConf _ (Relief r) = " -relief " ^ showRel r X- | showConf _ (Foreground r) = " -foreground " ^ showCol r X- | showConf _ (Background r) = " -background " ^ showCol r X+ | showConf _ (Foreground r) = " -foreground " ^ showColor r X+ | showConf _ (Background r) = " -background " ^ showColor r X | showConf _ (Text t) = X " -text \"" ^ StringUtil.adaptString t ^ "\"" X | showConf _ (Font r) = " -font " ^ Fonts.fontDescr r X@@ -441,8 +441,8 @@ X | showConf (w, p) (Command c) = X " -command {" ^ Com.commToTcl ^ " \"Command " ^ w ^ " " ^ p ^ "\"}" X | showConf _ (Anchor a) = " -anchor " ^ showAnchorKind a X- | showConf _ (FillColor r) = " -fill " ^ showCol r X- | showConf _ (Outline r) = " -outline " ^ showCol r X+ | showConf _ (FillColor r) = " -fill " ^ showColor r X+ | showConf _ (Outline r) = " -outline " ^ showColor r X | showConf _ (OutlineWidth n) = " -width " ^ StringUtil.fromInt n X (*| showconf _ (Stipple) = ...*) X | showConf _ (Smooth true) = " -smooth true" X@@ -490,7 +490,7 @@ X " -command {" ^ Com.commToTcl' ^ " \"SCommand " ^ w ^ " " ^ p ^ "\"}" X | showConf _ (RepeatDelay i) = " -repeatdelay " ^ StringUtil.fromInt i X | showConf _ (RepeatInterval i) = " -repeatinterval " ^ StringUtil.fromInt i X- | showConf _ (ThroughColor c) = " -throughcolor " ^ showCol c X+ | showConf _ (ThroughColor c) = " -throughcolor " ^ showColor c X | showConf _ (InnerPadX i) = " -padx " ^ StringUtil.fromInt i X | showConf _ (InnerPadY i) = " -pady " ^ StringUtil.fromInt i X | showConf _ (Show c) = " -show " ^ Char.toString c X@@ -555,8 +555,8 @@ X " -command {" ^ Com.commToTcl ^" \"MCommand " ^ w ^ " " ^ p ^ " " X ^ (packCascPath m) ^ "\"}" X | showMConf _ _ (Font f) = " -font " ^ Fonts.fontDescr f X- | showMConf _ _ (Foreground r) = " -foreground " ^ showCol r X- | showMConf _ _ (Background r) = " -background " ^ showCol r X+ | showMConf _ _ (Foreground r) = " -foreground " ^ showColor r X+ | showMConf _ _ (Background r) = " -background " ^ showColor r X | showMConf _ _ _ = X raise CONFIG ("Config.showMConf: got wrong Config") X END-of-sml_tk/files/patch-src-config.sml echo x - sml_tk/files/patch-src-export.sml sed 's/^X//' >sml_tk/files/patch-src-export.sml << 'END-of-sml_tk/files/patch-src-export.sml' X--- src/export.sml.orig Fri Mar 30 23:39:11 2001 X+++ src/export.sml Sun Jan 13 13:45:28 2008 X@@ -198,6 +198,10 @@ X val moveCItem : WidId -> CItemId -> Coord -> unit X val setCItemCoords : WidId -> CItemId -> Coord list -> unit X X+(* 4.? List Items *) X+ val addLItemConf : WidId -> Configure list -> Mark -> unit X+ val clearLItemConf : WidId -> Mark -> unit X+ X (* 4.7 Menues *) X val popUpMenu : WidId -> int Option.option -> Coord -> unit X X@@ -433,6 +437,8 @@ X val newWinId = newWidgetId (* dodgy *) X val newImageId = newWidgetId (* me too *) X X+ val addLItemConf = WidgetTree.configureLItem X+ val clearLItemConf = WidgetTree.clearLItemConfig X X (* these also have to check their arguments for non-alphanumerical X * characters etc. *) X@@ -478,8 +484,10 @@ X fun setFontBasesize x= (#BaseSize(Fonts.Config) := x; initFonts()) X X fun xSmlTk{imagefile, banner} X- = SysDep.exportML {init= SysInit.initSmlTk, X- banner= banner, imagefile=imagefile} X+ = (updTclPath (#default SysConf.wishVar); X+ updLibPath (#default SysConf.libVar); X+ SysDep.exportML {init= SysInit.initSmlTk, X+ banner= banner, imagefile=imagefile}) X X val getEnvSetting = SysInit.getEnvSetting X END-of-sml_tk/files/patch-src-export.sml echo x - sml_tk/files/patch-src-widget_tree.sml sed 's/^X//' >sml_tk/files/patch-src-widget_tree.sml << 'END-of-sml_tk/files/patch-src-widget_tree.sml' X--- src/widget_tree.sml.orig Sun Jan 13 12:42:32 2008 X+++ src/widget_tree.sml Sun Jan 13 12:44:14 2008 X@@ -1171,9 +1171,9 @@ X if (List.exists (Config.confEq fdef) nc) then nc else fdef::nc X in X (packWid doP "frame" tp ip wid p [] [] grid ^ X+ packWid true "scrollbar" sctp scip wid [si,Fill Y] [] [] false ^ X packWid true "text" btp bip wid [siquer,Fill Both,Expand true] nc' X b false ^ X- packWid true "scrollbar" sctp scip wid [si,Fill Y] [] [] false ^ X btp ^ " configure -yscrollcommand \"" ^ sctp ^ " set \" " ^ "\n" ^ X sctp^" configure -command \""^ btp ^ " yview\"" ^ "\n" ^ X tt ^ stt ^ X@@ -1547,6 +1547,49 @@ X end X X fun clearText wid = deleteText wid (Mark(0, 0), MarkEnd) X+ X+fun configureLItem wid cf m = X+ let X+ fun litempack [] = "" X+ | litempack ((Foreground c)::xs) = let X+ val coltext = Config.showColor c X+ in X+ " -foreground " ^ coltext ^ X+ " -selectforeground " ^ coltext ^ litempack xs X+ end X+ | litempack ((Background c)::xs) = X+ " -background " ^ (Config.showColor c) ^ litempack xs X+ | litempack (_::xs) = litempack xs X+ val ip = Paths.getIntPathGUI wid X+ val tp = Paths.getTclPathGUI ip X+ val w = getWidgetGUIPath ip X+ val (m1, _)= StringUtil.breakAtDot (Mark.show m) X+ in X+ case w of X+ Listbox _ => X+ Com.putTclCmd (tp ^ ".box itemconfigure " ^ m1 ^ " " ^ X+ litempack cf) X+ | _ => X+ raise WIDGET "text insertion in illegal window" X+ end X+ X+fun clearLItemConfig wid m = X+ let X+ val ip = Paths.getIntPathGUI wid X+ val tp = Paths.getTclPathGUI ip X+ val tp = Paths.getTclPathGUI (Paths.getIntPathGUI wid) X+ val w = getWidgetGUIPath ip X+ val (m1,_)= StringUtil.breakAtDot (Mark.show m) X+ in X+ case w of X+ Listbox _ => X+ Com.putTclCmd (tp ^ ".box itemconfigure " ^ m1 ^ X+ " -foreground \"\" -selectforeground \"\" " ^ X+ " -background \"\" -selectbackground \"\"") X+ | _ => X+ raise WIDGET "text insertion in illegal window" X+ end X+ X X fun focus win = X if ( win = "main" orelse win = "." ) then END-of-sml_tk/files/patch-src-widget_tree.sml echo x - sml_tk/files/patch-src-widget_tree.sig sed 's/^X//' >sml_tk/files/patch-src-widget_tree.sig << 'END-of-sml_tk/files/patch-src-widget_tree.sig' X--- ./src/widget_tree.sig.orig Fri Mar 30 23:39:23 2001 X+++ src/widget_tree.sig Sun Jan 13 11:10:20 2008 X@@ -196,6 +196,10 @@ X BasicTypes.Mark * BasicTypes.Mark -> unit X val clearText : BasicTypes.WidId -> unit X X+ val configureLItem : BasicTypes.WidId -> TkTypes.Configure list -> X+ BasicTypes.Mark -> unit X+ val clearLItemConfig : BasicTypes.WidId -> BasicTypes.Mark -> unit X+ X X val focus : BasicTypes.WinId -> unit X val deFocus : BasicTypes.WinId -> unit END-of-sml_tk/files/patch-src-widget_tree.sig echo x - sml_tk/files/patch-Makefile sed 's/^X//' >sml_tk/files/patch-Makefile << 'END-of-sml_tk/files/patch-Makefile' X--- Makefile.orig Fri Mar 30 23:37:57 2001 X+++ Makefile Sun Jan 13 21:51:20 2008 X@@ -28,19 +28,18 @@ X ## start of configuration section X ## X X-SMLTK_LIB = /home/cxl/src/sml_tk/lib X-SMLTK_TCL = /usr/local/X11/bin/wish X+SMLTK_LIB = ${WRKSRC}/lib X+SMLTK_TCL = ${WISH} X ## SMLTK_LOGFILE not set, hence by default no logging X X # Produce the following heap image: X-SMLTK_BINARY = /home/cxl/src/bin/sml_tk X- X+SMLTK_BINARY = ${WRKSRC}/bin/sml_tk X X # SML compiler. X ## SML/NJ X-COMP = njml X-COMP_BIN = sml-cm X-COMP_NAME = SML/NJ 110 X+#COMP = njml X+#COMP_BIN = sml X+#COMP_NAME = SML/NJ 110 X ## PolyML X #COMP = poly X #COMP_BIN = /usr/local/PolyML/bin/polyml /home/wolff/ML_dbase X@@ -64,14 +63,29 @@ X # Invoke the make in src with the right parameters set. X X smltk: X+.if ${SMLNJDEVEL} == "yes" X cd src; \ X $(MAKE) "SMLTK_BINARY=$(SMLTK_BINARY)" \ X- "SMLTK_COMP=$(COMP_BIN)" \ X- "SMLTK_ROOT=root_$(COMP).sml" \ X- "SMLTK_BANNER=\"SmlTk 3.0 for $(COMP_NAME)\"" \ X+ "SMLTK_COMP=sml" \ X+ "SMLTK_ROOT=root_njml.sml" \ X+ "SMLTK_BANNER=\"SmlTk 3.0 for SML/NJ 110 devel\"" \ X+ "SMLTK_LIB=$(SMLTK_LIB)" \ X+ "SMLTK_TCL=$(SMLTK_TCL)" \ X+ "SMLTK_STABILIZE=$(STABILIZE)" \ X+ all X+.endif X+.if ${POLYML} == "yes" X+ cd src; \ X+ $(MAKE) "SMLTK_BINARY=$(SMLTK_BINARY).poly" \ X+ "SMLTK_COMP=poly" \ X+ "SMLTK_ROOT=root_poly.sml" \ X+ "SMLTK_BANNER=\"SmlTk 3.0 for PolyML 5.1\"" \ X "SMLTK_LIB=$(SMLTK_LIB)" \ X "SMLTK_TCL=$(SMLTK_TCL)" \ X+ "SMLTK_STABILIZE=no" \ X all X+.endif X+ X X smltkI: X cd src; \ X@@ -82,7 +96,6 @@ X "SMLTK_LIB=$(SMLTK_LIB)" \ X "SMLTK_TCL=$(SMLTK_TCL)" \ X allI X- X X # cleaning up: X END-of-sml_tk/files/patch-Makefile echo x - sml_tk/files/patch-README sed 's/^X//' >sml_tk/files/patch-README << 'END-of-sml_tk/files/patch-README' X--- ./README.orig Sat Mar 31 01:43:03 2001 X+++ README Sun Jan 13 11:03:51 2008 X@@ -25,7 +25,7 @@ X - Set environment variable SMLTK_LIB to the full path of directory lib; X - chdir to src and start SML compiler; X - case you SML-compiler of X- SML/NJ => CM.make(); X+ SML/NJ => CM.make "sources.cm"; X | PolyML => use "root_poly.sml"; X | MoscowML => use "root_mosml.sml"; X - After successful compilation: END-of-sml_tk/files/patch-README echo x - sml_tk/files/src-sys_conf.sml sed 's/^X//' >sml_tk/files/src-sys_conf.sml << 'END-of-sml_tk/files/src-sys_conf.sml' X(* *************************************************************************** X X $Source: /repository/sml/sml_tk/src/sys_conf.sml,v $ X X System configuration. X X The environment variables controlling the configuration of sml_tk, X and more importantly, their default values. X X These values can, and are meant to be changed (in particular the X default values). X X $Date: 2001/03/30 13:39:18 $ X $Revision: 3.0 $ X Author: cxl/stefan (Last modification by $Author: 2cxl $) X X (C) 1996, Bremen Institute for Safe Systems (BISS), University of Bremen. X X ************************************************************************** *) X X Xsignature SYS_CONF = Xsig X type envVar = {name: string, default: string} X X val logfileVar : envVar X val libVar : envVar X val wishVar : envVar Xend; X X Xstructure SysConf : SYS_CONF = Xstruct X type envVar = {name: string, default: string} X X (* Probably the most important setting: the correct path to the X * wish at your site *) X val wishVar = {name= "SMLTK_TCL", X default= "%%WISH%%"} X X (* This default value for SMLTK_LIB assumes the curent directory X * is the sml_tk source directory. You may want to replace this X * with the actual path at your installation. *) X val libVar = {name= "SMLTK_LIB", X default= "%%SMLTKLIB%%"} X X X (* the logfile doesn't need a default; if it is not set, X * the logging is turned off X *) X val logfileVar = {name= "SMLTK_LOGFILE", X default= ""} X Xend END-of-sml_tk/files/src-sys_conf.sml echo x - sml_tk/files/patch-src-std_lib-sources.cm sed 's/^X//' >sml_tk/files/patch-src-std_lib-sources.cm << 'END-of-sml_tk/files/patch-src-std_lib-sources.cm' X--- src/std_lib/sources.cm.orig Sun Jan 13 17:28:30 2008 X+++ src/std_lib/sources.cm Sun Jan 13 17:30:44 2008 X@@ -1,7 +1,17 @@ X-Group is X- X-lib-base-sig.sml lib-base.sml X-ord-key-sig.sml X-ord-set-sig.sml int-binary-set.sml X-ord-map-sig.sml binary-map-fn.sml X+Group X+ functor BinaryMapFn X+ structure IntBinarySet X+ signature LIB_BASE X+ structure LibBase X+ signature ORD_KEY X+ signature ORD_MAP X+ signature ORD_SET X+is X+ lib-base-sig.sml X+ lib-base.sml X+ ord-key-sig.sml X+ ord-set-sig.sml X+ int-binary-set.sml X+ ord-map-sig.sml X+ binary-map-fn.sml X END-of-sml_tk/files/patch-src-std_lib-sources.cm echo x - sml_tk/files/patch-src-toolkit-tests+examples-sources.cm sed 's/^X//' >sml_tk/files/patch-src-toolkit-tests+examples-sources.cm << 'END-of-sml_tk/files/patch-src-toolkit-tests+examples-sources.cm' X--- src/toolkit/tests+examples/sources.cm.orig Fri Mar 30 23:40:04 2001 X+++ src/toolkit/tests+examples/sources.cm Sun Jan 13 17:50:07 2008 X@@ -1,15 +1,29 @@ X-Group is X+Group X+ structure WeeBoxes X+ structure FilerEx X+ structure MarkupEx X+ structure SimpleInstAppl X+ structure SimpleInst X+ structure StdMarkEx X+ structure TableEx X+ structure TabsEx X+ structure LittleTreeList X+ structure TSimpleInstAppl X+ structure UW_Ex X+is X+ ../sources.cm X X-../sources.cm X+ uw_ex.sml X+ boxes.sml X+ simpleinst.sml X+ tsimpleinst.sml X+ (* filemanager.sml *) X+ markup_ex.sml X+ stdmark_ex.sml X+ tree_list_ex.sml X+ filer_ex.sml X+ table_ex.sml X+ tabs_ex.sml X+ X+ $/basis.cm X X-uw_ex.sml X-boxes.sml X-simpleinst.sml X-tsimpleinst.sml X-(* filemanager.sml *) X-markup_ex.sml X-stdmark_ex.sml X-tree_list_ex.sml X-filer_ex.sml X-table_ex.sml X-tabs_ex.sml END-of-sml_tk/files/patch-src-toolkit-tests+examples-sources.cm echo x - sml_tk/files/sml_tk.1.in sed 's/^X//' >sml_tk/files/sml_tk.1.in << 'END-of-sml_tk/files/sml_tk.1.in' X.Dd January 13, 2008 X.Dt sml_tk 1 X.Os X.Sh NAME X.Nm sml_tk X.Nd Typed and abstract Standard ML interface to Tcl/Tk X.Sh DESCRIPTION X.Nm Xis a Standard ML package providing a portable, typed and abstract Xinterface to the user interface description and command language Tcl/Tk. XIt allows the implementation of graphical user interfaces in a structured Xand reusable way, supported by the powerful module system of Standard ML. X.Pp XSML programs construct windows as sml_tk datatypes, which are then Xtransformed into Tcl/Tk commands and sent over a pipe to a child wish Xprocess. XPrograms register event handlers with sml_tk, and then execute an event Xloop function which receives and dispatches events from the child process. X.Pp XThe FreeBSD port supports working versions of SML/NJ (110.65 or greater). XPoly/ML 5.1 is supported, but there appears to be a problem with long Xcommunications to the child process as evidenced in the BigEx example, Xpossibly because the SysDep structure is largely unimplemented. XLikewise for MLton. XFurther investigation is required. X.Pp XMoscow/ML and the blessed version of SML/NJ are not supported by the FreeBSD Xport, although they are in the standard distribution. XThese compilers use a deprecated version of the SML Basis Library: patches Xfor the newer compilers cause errors. X.Pp X.\" X.Ss Using the library XThe sml_tk library can be used in several different ways: X.Bl -tag -width "MMM" X.It Sy SML/NJ Executable XThe SML/NJ build installs an executable X.Nm sml_tk , Xwhich gives an interactive loop with the sml_tk bindings. XOne could type, for example: X.Dl BigEx.go (); X.\" X.It Sy SML/NJ Library XThe library may be imported into an interactive session: X.Bd -literal -compact -offset indent XCM.make "%%PREFIX%%/lib/sml_tk/sources.cm"; X.Ed Xor included in another X.Li .cm Xfile. XPossibly by adding a line to X.Pa $HOME/.smlnj-pathconfig : X.Dl sml_tk.cm %%PREFIX%%/lib/sml_tk Xand then including the library with X.Dl $/sml_tk.cm . X.\" X.It Sy Poly/ML Saved State XThe Poly/ML build saves the compiled bindings, they can be loaded with the Xcommand: X.Bd -literal -compact -offset indent XPolyML.SaveState.loadState "%%PREFIX%%/lib/sml_tk/sml_tk.poly"; X.Ed XOne could then type, for example: X.Dl CanvasEx.go (); X.It Sy Poly/ML Compile XTo compile the bindings into Poly/ML, run: X.Bd -literal -compact -offset indent Xuse "%%PREFIX%%/lib/sml_tk/root_poly.sml"; X.Ed X.\" X.It Sy MLton Compile XInclude one or both of the basis files X.Pa %%PREFIX%%/lib/sml_tk/sml_tk.mlb , X.Pa %%PREFIX%%/lib/sml_tk/toolkit/toolkit.mlb . X.Pp XFor example, to run the ScaleEx example, create a file X.Pa scaleex.sml : X.Bd -literal -offset indent Xval _ = ScaleEx.go (); X.Ed X.Pp Xand a file X.Pa scaleex.mlb : X.Bd -literal -offset indent X$(SML_LIB)/basis/basis.mlb X%%PREFIX%%/lib/sml_tk/sml_tk.mlb X"%%%PREFIX%%/lib/sml_tk/tests+examples/scale_ex.sml" Xscaleex.sml X.Ed X.Pp XThen build X.Pa scalex Xby typing: X.Li mlton scaleex.mlb X.El X.\" X.Sh ENVIRONMENT XThree sml_tk environment variables can be used to override the installed Xdefaults: X.Bl -column -compact .Ev SMLTK_LOGFILE X.It Ev SMLTK_TCL Ta Path to the wish executable X.It Ev SMLTK_LIB Ta Path to the sml_tk library files (default: %%PREFIX%%/share/sml_tk) X.It Ev SMLTK_LOGFILE Ta Set to log communications between the library and Xwish. X.El X.Sh EXAMPLES XThe main library comes with several example structures, each contains a X.Li go Xfunction of type X.Li unit -> string : X.Bl -column -offset indent "ListBoxEx" "ListBoxEx" "ListBoxEx" X.It ListBoxEx Ta GridEx Ta BigEx X.It CanvasEx Ta PopUpEx Ta ScaleEx X.It TagEx Ta WBindEx X.El X.Pp XThe toolbox library also comes with several example structures, each with a X.Li go Xfunction: X.Bl -column -offset indent "TSimpleInstApp" "SimpleInst" "TSimpleInstApp" X.It WeeBoxes Ta FilerEx Ta MarkupEx X.It SimpleInstAppl Ta SimpleInst Ta StdMarkEx X.It TableEx Ta TabsEx Ta LittleTreeList X.It TSimpleInstAppl Ta UW_Ex X.El X.Sh COMPATIBILITY XThe port adds two non-standard features: X.Bl -tag X.It Li Config.showColor XExposes a function mapping colors to their names. X.It Li WidgetTree.addLItemConf, WidgetTree.clearLItemConf XAllow formatting of list items. X.El X.Sh SEE ALSO XThe website: X.Pa http://www.informatik.uni-bremen.de/~cxl/sml_tk/ X.Pp XLocal documentation: %%PREFIX%%/share/doc/sml_tk/manual.html X.Pp X.Xr wish 1 , Xand the rest of the Tcl/Tk documentation. X.\" X.Sh AUTHORS X.An Christoph L\[:u]th and Burkhart Wolff Xwrote X.Nm Xand the first paragraph of this man page. X.Pp X.An Timothy Bourke Aq timbob@bigpond.com Xwrote the rest of the man page and some of the patches for the FreeBSD port. X.Sh BUGS XMore work is required for Poly/ML and MLton. X.\" END-of-sml_tk/files/sml_tk.1.in echo x - sml_tk/files/patch-src-toolkit-njfiler.sml sed 's/^X//' >sml_tk/files/patch-src-toolkit-njfiler.sml << 'END-of-sml_tk/files/patch-src-toolkit-njfiler.sml' X--- ./src/toolkit/njfiler.sml.orig Fri Mar 30 23:39:40 2001 X+++ src/toolkit/njfiler.sml Sun Jan 13 11:03:51 2008 X@@ -335,11 +335,12 @@ X handle NoAcc => false) then X if (!SHOW_HIDDEN orelse X not(hd(explode new) = #".")) then X- new :: read (OS.FileSys.readDir dirstream) X- else read (OS.FileSys.readDir dirstream) X- else read (OS.FileSys.readDir dirstream) X+ new :: read (valOf (OS.FileSys.readDir X+ dirstream)) X+ else read (valOf (OS.FileSys.readDir dirstream)) X+ else read (valOf (OS.FileSys.readDir dirstream)) X in X- (sort (read (OS.FileSys.readDir dirstream)) X+ (sort (read (valOf (OS.FileSys.readDir dirstream))) X (fn x => fn y => String.<(x, y)) before X OS.FileSys.closeDir dirstream) X end X@@ -618,7 +619,7 @@ X if (OS.FileSys.isDir(OS.Path.concat(!CURRENT_DIRECTORY, X new)) X handle NoAcc => false) then X- read (OS.FileSys.readDir dirstream) X+ read (valOf (OS.FileSys.readDir dirstream)) X else X if (!SHOW_HIDDEN orelse X not(hd(explode new) = #".")) then X@@ -628,10 +629,10 @@ X in X if isSome dtp then X (new, valOf dtp) :: X- read (OS.FileSys.readDir dirstream) X- else read (OS.FileSys.readDir dirstream) X+ read (valOf (OS.FileSys.readDir dirstream)) X+ else read (valOf (OS.FileSys.readDir dirstream)) X end X- else read (OS.FileSys.readDir dirstream) X+ else read (valOf (OS.FileSys.readDir dirstream)) X X fun type_ord e1 e2 ((ft : Filetype) :: fts) = X if (not(e1 = "") andalso X@@ -659,7 +660,7 @@ X else if !SORT_NAMES then String.<(#1 e1, #1 e2) X else true X in X- sort (read (OS.FileSys.readDir dirstream)) ord before X+ sort (read (valOf (OS.FileSys.readDir dirstream))) ord before X OS.FileSys.closeDir dirstream X end X X@@ -755,8 +756,8 @@ X !CURRENT_DIRECTORY X else X OS.Path.mkRelative X- (!CURRENT_DIRECTORY, X- root_dir()), X+ {path = !CURRENT_DIRECTORY, X+ relativeTo = root_dir()}, X file = nm}) ev (fn () => ()) X else () X end X@@ -770,8 +771,8 @@ X !CURRENT_DIRECTORY X else X OS.Path.mkRelative X- (!CURRENT_DIRECTORY, X- root_dir()), X+ {path = !CURRENT_DIRECTORY, X+ relativeTo = root_dir()}, X file = #1 f} X else X addConf file_statusID END-of-sml_tk/files/patch-src-toolkit-njfiler.sml echo x - sml_tk/files/src-mlton.sml sed 's/^X//' >sml_tk/files/src-mlton.sml << 'END-of-sml_tk/files/src-mlton.sml' X(* *************************************************************************** X X $Source$ X X Implementation of system-dependend functions for MLton 20070826 X X Based on version for SMLNJ 109/110. X Author: stefan X (C) 1996, Bremen Institute for Safe Systems, Universitaet Bremen X X ************************************************************************** *) X Xstructure SysDep : SYS_DEP X= Xstruct X (* from Isabelle --- to be used in Makefiles *) X fun exportML{init:unit->unit, X banner:string, X imagefile:string} = (TextIO.output (TextIO.stdErr, X "export is not supported.\n")) X X fun setPrintDepth n = () X X (* Set the terminal to a state suitable for sml_tk. Disables INTR X * s.t. we can use it to abort functions called from bindings, and X * sets up QUIT (CTRL-\) to terminate sml_tk instead. Bits of the X * following are system-independent, but unfortunately the basis library X * merely allows you to specfiy signals but not install a handler for them X * which is bloody useless if you ask me :-) *) X X local open Posix.TTY in X X fun initTTY abort = X if Posix.ProcEnv.isatty (Posix.FileSys.stdin) then X let (* configure TTY driver to have ^\ generate sigQUIT *) X val {iflag, oflag, cflag, lflag, cc, ispeed, ospeed} = X fieldsOf (Posix.TTY.TC.getattr Posix.FileSys.stdin) X val nuattr= termios {iflag=iflag, oflag=oflag, cflag=cflag, X lflag=lflag, ispeed=ispeed, ospeed=ospeed, X cc=V.update(cc, [(V.quit, Char.chr 28)])} X in Posix.TTY.TC.setattr(Posix.FileSys.stdin, TC.sanow, nuattr) X (* no signal handlers: MLton only has vtalrm and prof. *) X end X else X () (* stdin is not a tty *) X end X X fun resetTTY () = () X X (* Wrap an interrupt handler around a function f *) X (* Not implemented as we are limited in the signals we can catch. *) X fun interruptable f i a = f a X X X (* This shouldn't be here, but SML/NJ implements Unix.reap incorrectly-- X * it returns Posix.Process.status whereas it should return X * OS.Process.Process.status *) X X fun exec (s,sl) = X let X val pr = Unix.execute (s,sl) X in case Posix.Process.fromStatus (Unix.reap pr) of X Posix.Process.W_EXITED => true X | _ => false X end X Xend X END-of-sml_tk/files/src-mlton.sml echo x - sml_tk/files/src-std_lib-std_lib.mlb sed 's/^X//' >sml_tk/files/src-std_lib-std_lib.mlb << 'END-of-sml_tk/files/src-std_lib-std_lib.mlb' Xlocal X $(SML_LIB)/basis/basis.mlb X lib-base-sig.sml X lib-base.sml X ord-key-sig.sml X ord-map-sig.sml X ord-set-sig.sml X binary-map-fn.sml X int-binary-set.sml Xin X functor BinaryMapFn X structure IntBinarySet X signature LIB_BASE X structure LibBase X signature ORD_KEY X signature ORD_MAP X signature ORD_SET Xend END-of-sml_tk/files/src-std_lib-std_lib.mlb echo x - sml_tk/files/src-toolkit-toolkit.mlb sed 's/^X//' >sml_tk/files/src-toolkit-toolkit.mlb << 'END-of-sml_tk/files/src-toolkit-toolkit.mlb' Xann X "nonexhaustiveMatch ignore" Xin X local X $(SML_LIB)/basis/basis.mlb X ../smltk.mlb X ./regExp/regexp.mlb X X markup.sig X markup.sml X std_markup.sml X X util_win.sig X util_win.sml X X enter_windows.sml X clipboard.sml X X widget_box.sig X widget_box.sml X X lazy_tree_objects.sig X lazy_trees.sml X X filer.sig X filer_default_config.sml X njfiler.sml X X icons.sml X X table.sig X table.sml X X tabs.sig X tabs.sml X X numeric_chooser.sig X numeric_chooser.sml X X drag_and_drop.sig X drag_and_drop.sml X X print.sml X object_class.sig X tree_object_class.sig X obj2tree_obj-fun.sml X X gen_gui.sig X X tree_list.sml X (* test.sml *) X X appl.sig X notepad.sml X gen_gui.sml X tgen_gui.sml X in X signature APPL_SIG X signature NP_APPL_SIG X X signature DDITEMS X signature DRAG_DROP_SIG X functor DragAndDrop X X signature GENGUI0_CONF X signature GENGUI_CONF X signature GENGUI_SIG X functor GenGUI X X signature LAZY_TREE_OBJECTS X functor LazyTree X X signature NUMERIC_CHOOSER_SIG X signature OBJECT_CLASS X X signature FOLDERINFO X functor obj2tree_obj X X signature TREE_OBJECT_CLASS X signature PTREE_OBJECT_CLASS X X signature CLIPBOARD X signature CLIPBOARD_R X signature CLIPBOARD_W X functor Clipboard X structure DummyCB X X signature SUBSTWIN X structure SubstWin X X signature FILER_SIG X signature FILER_CONFIG X functor Filer X functor SimpleFiler X structure FilerDefaultConfig X X signature ICON_SIG X structure Icons X X functor Notepad X structure NumericChooser X structure Print X X signature TAGS X signature SMLTK_MARKUP X signature BINDTAGS X functor SmlTkMarkup X functor StdTags X structure StdMarkup X X signature TABLE_SIG X signature TABSSIG X structure Table X structure Tabs X X signature TGENGUI_SIG X functor TGenGUI X X signature TL_ACTION X functor TreeList X X signature UTIL_WIN X signature WIDGET_BOX X structure UW X structure WidgetBox X end Xend X END-of-sml_tk/files/src-toolkit-toolkit.mlb echo x - sml_tk/files/src-toolkit-regExp-regexp.mlb sed 's/^X//' >sml_tk/files/src-toolkit-regExp-regexp.mlb << 'END-of-sml_tk/files/src-toolkit-regExp-regexp.mlb' Xlocal X $(SML_LIB)/basis/basis.mlb X ../../std_lib/std_lib.mlb X X match.sig X rex.sml X globber.sml Xin X signature MATCH X structure Globber X structure Rex Xend END-of-sml_tk/files/src-toolkit-regExp-regexp.mlb echo x - sml_tk/files/src-sml_tk.mlb sed 's/^X//' >sml_tk/files/src-sml_tk.mlb << 'END-of-sml_tk/files/src-sml_tk.mlb' Xann X "nonexhaustiveMatch ignore" Xin X local X $(SML_LIB)/basis/basis.mlb X ./std_lib/std_lib.mlb X X sys_conf.sml X X sys_dep.sig X mlton.sml X X basic_util.sig X basic_util.sml X X debug.sig X debug.sml X X fonts.sig X fonts.sml X X basic_types.sml X X gui_state.sig X gui_state.sml X com_state.sig X X com_state_pipe.sml X X com.sig X com.sml X X paths.sig X paths.sml X X config.sig X config.sml X X tk_event.sig X tk_event.sml X X bind.sig X bind.sml X X coord.sig X coord.sml X X mark.sig X mark.sml X X c_item.sig X c_item.sml X X ann_texts.sig X ann_texts.sml X X annotation.sig X annotation.sml X X tk_types.sml X X widget_tree.sig X widget_tree.sml X X c_item_tree.sig X c_item_tree.sml X X annotation_tree.sig X annotation_tree.sml X X windows.sig X windows.sml X X eventloop.sig X eventloop.sml X X widget_ops.sig X widget_ops.sml X X sys_init.sml X export.sml X smltk21.sml X global_config.sml X X in X signature BASIC_UTIL X structure BasicUtil X X signature SML_TK X structure SmlTk X structure SmlTk21 X X structure GlobalConfig X end Xend END-of-sml_tk/files/src-sml_tk.mlb exit