fe9556d668
Changelog: All platforms: MAJOR CHANGE: All platforms now use a uniform graphical user interface, based on the wxWidgets library. A very simple editor is part of the package, no more external editor. This GUI is, so far, rather primitive, but provides a framework that should allow for many improvements relatively soon. There is a single Logo window that can be in fullscreen, splitscreen, or textscreen mode, like traditional Logo versions. INCOMPATIBLE CHANGE: RGB color lists, as used by PALETTE, SETPALETTE, etc., now take integer or non-integer values between 0 and 100 rather than integers between 0 and 65535. I don't like incompatible changes, but having now actually tried teaching kids with Berkeley Logo, I've learned that they have trouble understanding the old system; their colors all come out near-black. New commands PRINTPICT and PRINTTEXT to print the graphics and text screens, respectively. If called with an argument (in parentheses), they print preview instead. (wxWidgets only) New commands INCREASEFONT and DECREASEFONT to make the text window font one size bigger or smaller, SETTEXTSIZE to set the absolute size, SETLABELHEIGHT to adjust graphics-window text size, and SETFONT to set the font name for all windows. (wxWidgets only) SETTEXTCOLOR (SETTC) command, formerly just in DOS version, works on all platforms. It takes two color number or RGB lists as inputs, first the text color, then the text background color. (wxWidgets only) New command FILLED takes two arguments, a color and an instruction list. The instructions should draw a simple closed curve (but if not closed, FILLED will add a turtle move back to the starting point). The instructions are carried out, and then the area enclosed by the curve is filled using the given color, regardless of other lines that might intersect that area. (wxWidgets only) Special variable BUTTONACT, if defined and nonempty, is an instruction list to be run when the user presses a mouse button. Special variable KEYACT, if ditto, is to be run when the user presses a key on the keyboard. It is the responsibility of the user code to handle the problem of a second mouse/keypress during the running of these instructions. New operation CLICKPOS outputs the position of the mouse at the moment when the mouse button was pressed. BUTTON outputs which button was most recently pressed, or zero if no button was pressed since the last call to BUTTON. (BUTTONP still reflects the actual current button status.) (wxWidgets only) The workspace management procedures (PO, TEXT, HELP, etc.) look in the library before deciding whether the name you give exists as a procedure or not, just the way running the procedure does. This is an incompatible change! The procedure formerly named BACKSLASHEDP or BACKSLASHED? is now called VBARREDP or VBARRED?, to reflect a longstanding change in its meaning. The old names are retained in the Logo library for backward compatibility. A command line argument consisting of just a hyphen means that all following command line arguments should be collected in a list, instead of taken as filenames to load. The list can be seen in the buried variable :COMMAND.LINE Logo looks in its library directory (e.g., /usr/local/lib/logo/logolib) for a file startup.lg, and runs it if found, before looking in the user's current directory for startup.lg and running that. A vertical bar that comes after a semicolon doesn't require a matching vertical bar to end the line. Fixed a garbage collector bug (although I don't know why it was a bug, alas). The buffer for saving pictures (for SAVEPICT and EPSPICT and for restoring the graphics window after it's hidden) has no size limit. INVOKE is a macro, so (INVOKE [IF ? < 0 [OUTPUT "NEGATIVE]] :X) will output from the caller, rather than from INVOKE. Improved error message "Runlist %s has more than one expression" for the case of a macro seen where an expression (that outputs a value) is needed: PRINT RUN [PRINT "A PRINT "B]. One-pixel moves from drawing turtle aren't saved in SAVEPICT buffer. (1 2 3) gives error message instead of blowing up. PRINT [~] (bracket after tilde) works (no line continuation). The check for END inside a multi-line instruction is correctly internationalized. APPLY [[][]] [] no longer crashes. APPLY copies the arg list, so the original list can't be modified by changes to the inputs (e.g., after an error). Better error message (don't know how) for too much inside parens and also the first one isn't a procedure name. Better error message for STOP or OUTPUT during a PAUSE. Fixed bug crashing backquote (`) in case of `[[,[...] ...]] Fixed bug giving "out of bounds" message for line just on screen edge. Fixed bug that ignored TEST outside of a procedure. Turtle is invisible during drawing (to speed it up).
34 lines
1.4 KiB
Text
34 lines
1.4 KiB
Text
$NetBSD: patch-aa,v 1.5 2015/10/11 07:02:39 ryoon Exp $
|
|
|
|
--- makefile.in.orig 2008-09-13 23:27:17.000000000 +0000
|
|
+++ makefile.in
|
|
@@ -5,8 +5,9 @@ CXXFLAGS = -g @CXXFLAGS@
|
|
LDFLAGS = @LDFLAGS@
|
|
LIBS = @X_PRE_LIBS@ @X_LIBS@ @LIBS@ @X_EXTRA_LIBS@
|
|
prefix = @prefix@
|
|
+datadir = @datadir@
|
|
BINDIR = $(prefix)/bin
|
|
-LIBLOC = $(prefix)/lib/logo
|
|
+LIBLOC = $(datadir)/ucblogo
|
|
LINKER = @LINKER@
|
|
|
|
# LIBLOC = `pwd`
|
|
@@ -70,12 +71,12 @@ ship:
|
|
# cd emacs; $(MAKE) ship
|
|
cd docs; $(MAKE) ship
|
|
|
|
-install: all
|
|
- for d in $(BINDIR) $(LIBLOC) $(LIBLOC)/logolib $(LIBLOC)/helpfiles $(LIBLOC)/csls; do [ -d $$d ] || mkdir -p $$d || exit 1; done
|
|
- cp logo $(BINDIR)/.
|
|
- cp -f logolib/* $(LIBLOC)/logolib/.
|
|
- cp -f helpfiles/* $(LIBLOC)/helpfiles/.
|
|
- cp -f csls/* $(LIBLOC)/csls/.
|
|
+install:
|
|
+ for d in $(BINDIR) $(LIBLOC) $(LIBLOC)/logolib $(LIBLOC)/helpfiles $(LIBLOC)/csls; do [ -d $(DESTDIR)$$d ] || mkdir -p $(DESTDIR)$$d || exit 1; done
|
|
+ cp logo $(DESTDIR)$(BINDIR)/.
|
|
+ cp -f logolib/* $(DESTDIR)$(LIBLOC)/logolib/.
|
|
+ cp -f helpfiles/* $(DESTDIR)$(LIBLOC)/helpfiles/.
|
|
+ cp -f csls/* $(DESTDIR)$(LIBLOC)/csls/.
|
|
# (cd emacs; prefix=$(prefix) LIBLOC=$(LIBLOC) BINDIR=$(BINDIR) $(MAKE) install)
|
|
(cd docs; prefix=$(prefix) LIBLOC=$(LIBLOC) BINDIR=$(BINDIR) $(MAKE) install)
|
|
# prefix=$(prefix); LIBLOC=$(LIBLOC); BINDIR=$(BINDIR); export prefix LIBLOC BINDIR; cd emacs; $(MAKE) install
|