2 documentation corrections regarding default layout of frame and dialog
4 switchable look-and-feel with (gs:set-look-and-feel <str-spec>)
5 now on Windows the Windows look and feel is chosen correctly by default
10 suppressed nullpointer error when using gs:set-look-and-feel
12 supppress Java error messages on Windows when shuttng down program
14 gs:label now can take optional width height has last parameters
15 before ann extra gs:set-size statement was necessary
17 width and height specified in gs:button did not work, does now
18 (note that for all other buttons/check-box an extra gs:set-size
19 must still be used to change the size, it will not be added as
20 optional parameters, as it is almost never used)
22 now image-button can take pressed icon path after the normal path
23 (gs:image-button 'TheButton "/local/run32.png" "/local/run32p.png")
25 now gs:set-color working on frames and dialogs too
27 font-demo.lsp showing the fonts built-in on all platforms
29 new gs:text-pane for HTML and RTF (future version) formatted text
30 see html-demo.lsp for a demo.
33 allow multiple re-starts from same newlisp process, this works together
36 parenthesis matching in text-pane and tab-size working on text-pane,
37 will only work on "text/plain" flavore of text-pane
39 console.lsp now remembers last directory in file dialogs save/load
41 console.lsp now has list boxes for browsing contexts and variables
43 changed split-pane syntax adding divider size, leaving out width/height
44 which can be set with extra set-size if required
46 combo-box and list-box life update now works and updates the screen
49 new gs:clear-list empties out a combo-box or list-box
50 eliminated redundant 'action' parameter on message-dialog
52 new confirm-dialog similar to message-dialog but 'yes', 'no' and optional
53 'cancel' button and fires an event.
56 gs:set-size now works on frames
58 new gs:remove-from removes one or more components from a container
60 new gs:select-text, gs:cut-text, gs:copy-text and gs:paste-text
61 with suport for system clipboard, new gs:insert-text
63 gs:set-background/set-color now can take a list for the r g b
66 list-box now also fires event on key-entering a selection, previously only
69 avoid Java "index out of bound messages" in parenthesis matching
71 restructured text-area and text-pane event:
72 (define (action-handler id code dot mark) ...)
74 id = name of text widget
75 code = code of character
77 mark = selection position
79 if there is no selection then dot and mark are equal
80 if only the caret was moved then code is 65535 (16bit -1)
82 working logic for highlighting of cut/copy save/saveAs buttons and
83 related menu items in console.lsp
85 working logic of maintaining directories and filenames in commonly
86 established fashion between file operations
88 NOTE, console.lsp has been little tested, do not use in production,
89 no confirmation dialogs yet for overwiting files, save before new, etc.
91 NOTE that console.lsp is broken on Windwos because iof filepath issues
92 and CR-LF issues in parenhesis matching
94 many documentain fixes
97 gs:set-font working on combo-box and list-box
99 parenthesis matching in text-pane working now on Windows too
101 file operations working in console.lsp on Windows
103 confirm dialog for new button in console when edit buffer is touched
105 eliminated crashes with bigger results in output area of console
107 context stays selected in console
109 console new button action will not reset current directory for file operations
111 request-focus now works on text-area and text-pane
113 eliminate Java error messages on listboxes
115 new gs:select-list-item selects a list box or combo box item
117 documentation changes for border-layout and others
118 fixed many documantatin formatting problems
121 because of a change in gs:listen in v. 0.6 all error messages from
122 guiserver where suppresses, which made debugging difficult. Some applications
123 running in guiserver v.0.6 may fail now because error messages are enabled
124 again. E.g. misspelled or missing action handlers would cause no harm
125 in v.0.6, but will let exit an application with an error message in v.0.7.
127 gs:window creates a wimndow without any border and system bar. On MacOX X
128 when setting the background in such a window to
129 (gs:set-background 'thewindow 0 0 0 0)
130 totally transparent, the window will be invisible and widgets ppaced on it
131 seem to float on the desktop (e.g. text from labels)
133 the second to- parameter in gs:select-text is now optional and the function
134 will select all text from the from- position to the end of the text.
137 text-panes and text-areas did not scroll after ading to tab, fixed
138 added action event to gs:tabbed-pane
139 (gs:tabbed-pane <sym-id> <sym-action> <str-orientation>
140 [<sym-widget> <sym-tab-title> ...])
141 the event reports: tabbed-pane-id tab-id tab-title.
143 console.lsp project renamed to newlisp-console.lsp instead, which is a
144 multi tab lisp editor with run button and console window
146 in scrollable text-pane and text-area after gs:set-text will scroll
147 to the beginning, after gs:append-text will scroll to end
149 can use gs:set-text in the tabs of a gs:tabbed-pane
151 can use gs:set-icon in the tabs of a gs:tabbed-pane
153 more demos: frameless-demo.lsp and clipboard-demo.lsp
156 Several functions to retrieve system properties:
157 gs:get-version - gets the GUI server version number
158 gs:get-screen - gets width, height and resolution of the screen
159 gs:get-fonts - gets all fonts on the current system
161 The following system variables can be used after a property function has
163 gs:version - the version number
164 gs:screen - list of screen parameters
165 gs:fonts - list of all fonts
166 Once a function has been callled onlyt the variables should be used
169 two new demos: properties-demo.lsp, allfonts-demo.lsp
171 increased possible text size for events from 100K to 1000M
174 for do-nothing buttons or or other widgets specify 'gs:no-action as
177 0.93 First 2D canvas and mouse stuff
178 gs:set-select now working for toggle-button, radio-butoon, check-box
180 gs:mouse-clicked, gs:mouse-dragged, gs:mouse-moved, gs:mouse-pressed
181 and gs:mouse-released
183 new demos mouse-demo.lsp shapes-demo.lsp animation-demo.lsp
185 gs:draw-line, gs:draw-rect, gs:draw-circle
186 gs:fill-rect, gs:fill-circle (raound-rect and ellipse in next version)
188 gs:paint (gs:stroke for line width in next version)
190 gs:delete-tag to delete a tagged group of shapes
191 gs:moce-tag to move a tagged group of shapes
194 fixed message box in newlisp-edit.lsp when no c:\temp on Windows
196 gs:paint renamed to gs:set-paint
198 last gs:set-paint now gets correctly taken when now color is specified in
201 now different fonts on same canvas don't overwrite previous
203 documentation for draw-text had syntax in reverse
204 all graphics functions now sorted into all other Functions
205 spellchecked documentation
207 lines are now movable too
209 gs:set-canvas - onlye used for switching between muliple canvases
210 gs:set-translation - move coordinate origin
211 gs:set-scale - scales up or down
212 gs:set-stroke - sets drawing line width and optional cap, join and miter limit
213 gs:draw-arc - draw an arc outline
214 gs:fill-arc - paints a filled arc
216 new stroke-demo.lsp - shows lines and outlimes with different strokes and round
219 GUI-server signon message now contains version number. Note that in the future
220 newLISP binary installers for Mac OS X and Win32 icons will be placed in the
221 Mac OX X application folder and Win32 desktop for the newlisp-edit.lsp application.
222 Then the signon and connection messages will be unvisible. They are more thought
223 as a debugging aid duwing development.
225 On Mac OS X and UNIX applications can be started this way to close the terminal/shell
227 newlisp newlisp-edit.lsp & exit
228 this places the GUI-server process into the background and closes the termonal/shell
231 fixed newlisp-edit.lsp temporal directory detection (again, thanks Sleeper)
233 gs:move-tag did not distinguish between tags, fixed
235 gs:set-select can take multiple id, flag pairs, fixed
237 gs:split-pane divider width in split-pane did not work, fixed
239 new gs:draw-ellipse - draws an elllipse outline
240 new gs:fill-ellipse - fills an elllipse
242 new gs:set-translation of the canvas origin coordinates
243 new gs:set-rotation set the rotation of the canvas
245 all tag transforms below add to the affine transform matrix
246 already in the canvas
248 new gs:hide-tag - hides objects of a tag group
249 new gs:scale-tag - scales an object up or down
250 new gs:translate-tag - translates the coordinate origin of a tag group
251 new gs:show-tag - shows objects of a tag group
252 new gs:rotate-tag - function for rotating objects
253 new gs:shear-tag - function for shearing objects
255 like gs:move-tag all other functions work on any shape, text
258 shaped-demo.lsp modified to show funtioning of gs:hide-tag and gs:show-tag
259 via selecting or de-selecting shapes with check boxes
261 gs:mouse-wheel - register mouse wheel events
263 mouse-demo.lsp - modified to show mouse wheel events
265 animaton-demo.lsp - modified to show the mouse wheel move text up/down
267 new rotation-demo.lsp to show rotating objects
268 new image-demo - shows image zzomin, turning and squashing
269 new textrot-demo - shows text rotation
271 gs:draw-text has optional angle parameter (but can also be titled
272 using gs:rotate-tag, see sample program text-rotation.lsp)
274 all tag operations have optional flag to turn of screen update
275 this is recommended when using several tag commands in a batch
276 to do only one screen update at the end using gs:update
277 the default for this flag is 'true' for doing the update.
279 On all other systems except Mac OS X, double buffering is tried for
280 flicker free performance when animating graphics on systems other than
281 the Mac. The performance of this depends on the graphics cards used.
282 Performance was execellent on 2 Windows system I tried, one of them
286 gs:scale-tag, gs:translate-tag and gs:rotate-tag add to the affine transform matrix
287 already in the canvas (it was wrongly stated before that gs:translate-tag
288 if not accumulative, but it is like all others)
290 Corrections in the doc about the behaviour of gs:set-translation, gs:set-scale
291 and gs:set-rotation. Again: they are all absolute, while tag operations are
294 rotation-demo.lsp and image-demo.lsp have been changed using gs:translate-tag
295 instead the global canvas gs:set-translation. This makes it possible to
296 rotate or scale several tags at the same time, using gs:translate-tag
297 to supply each tag group its own center (set to 0,0). This leads also
298 to better readable code. All object cooridnates to rotate or zoom are
299 best defined in reference to a 0,0 center point and then moved to their
300 pace with gs:translate-tag. See also description of gs:scale-tag in documentation.
302 net gs:get-font-metrics - returns width and height of a string to display
303 new gs:draw-round-rect - draw a rectangle with round corners
304 new gs:full-round-rect - fill a rectangle with round corners
305 new gs:draw-polygon - draws a polygon with 3 to N points
306 new gs:fill-polygon - fill a polygon with 3 to N points
307 new gs:set-cursor - set one of 14 cursor shapes
309 new cursor-demo.lsp tot show different cursor shapes
312 gs:mouse-dragged fired invalid events when not defined but gs:mouse-clicked
315 gs:mouse-pressed, gs:mouse-released and gs:mouse-clicked now take an optional
316 'true' parameter. This makes events carry a list of tags, which have been
317 affected by one of the above mouse actions. This can be used to implement
318 object dragging (see the new drag-demo.lsp) it also opens the possibility
319 of creating self-drawn custom controls on a canvas because clicks can be
320 detected on tags. The code mouse-demo.lsp has been simplified to detect
321 tags to delete by using the tag list in the mouse-clicked event.
323 events generated by gs:mouse-pressed, gs:mouse-released, gs:mouse-clicked
324 and gs:mouse-dragged besides the new tags spec also carry a number for
325 modifier keys, e.g. pressing ctrl or shift while clicking the mouse.
326 See the modified moused-demo.lsp.
328 gs:text-pane and gs:text-area now can register gs:mous-clicked events
329 in the newlisp-edit.lsp app a popup has been implemented as a right click
330 (or ctrl-click for one-button mouse) to popup an edit menu.
334 Point detection is implemented for closed shapes, images and text. Precise
335 deletection is done for images, text, polygons and rectangles, but for
336 circles and ellipses the whole rectangle enclosing the shape is used
337 for calculations. A precise point detection limited only to the inside
338 of the circle or ellipse will be implemented at a later time.
340 Images must carry width and height parameters in the gs:draw-image statement.
341 Drawn text is detected by calculating the enclosing rectangle.
343 new gs:draw-path - similar to polygon but the path may stay unclosed.
344 new gs:export - exports to an image file in png in RGB + alpha channel
347 Note that detection will fail if scaling or translation has been used to
348 for the canvas or drawn objects involved, because mouse coordinates do
349 not sync to object coordinates in a scaled or translated coordinate
352 new gs:menu-pop and gs:show-popup implements popup menus for gs:text-area,
353 gs:text-pane and gs:canvas. For a demo see newlisp-edit.lsp and
356 bug fixes in newlisp-edit.lsp when closing other but the last tab.
359 popup menus on canvas now also working on Win32
361 gs:open-file had problems with file masks (changed parameter format)
363 new gs:frame-closed - registers an event for a closing frame or dialog
365 new gs:find-text - finds and selects text in a text rea or text panel widget
367 new gs:mouse-event - registers a general mouse-event for any component
368 see allfonts-demo.lsp, button-demo.lsp and the Fontbook button in
369 newlisp-edit.lsp for demo
371 changed some shortcut keys in newlisp-edit.lsp to be more standard conform
373 newlisp-edit.lsp has now text search and replace implemented
375 newlisp-edit.lsp now has fontselection implemented
377 splash screen working, see doc for new gs:dispose-splash
380 gs:find-text selection now positions and highlights correctly on Win32
382 now showing directories on Win32 even when file view is constrained to text files:
383 .lsp .c .h .txt .java .htm .html .css .php .pl .py .rb .lisp .el .cl .cpp
384 what are other essential text formats on Win32?
386 graceful error recovery on most errors in GUI-server: after the error
387 message box is closed, the app will try continue and not exit as before.
389 better parenthesis matching performance on larger files
390 (but minor flicker on Win32)
392 gs:get-font-metrics got stuck on last queried value
394 gs:set-tab-size when used on gs:text-pane, sets the tabsize in points
396 added ctrl-M to clear monitor area in newlisp-edit.lsp
398 find previous, undo and redo in newlisp-edit.lsp
400 new gs:undo-text and gs:redo-text, if no menus or code is used
401 ctrl-z and ctrl-shift-z and meta-z meta-shift-z (MacOS X) are
402 still hardwired into gs:text-pane
404 text widgets now also respond to the general gs:mouse-event
407 Text selection was still broken on Win32 when starting out with a file containing
408 carriage returns or when entering new text. It only worked on files loded without
409 CRs even when etering new text. Now it seems to work in all situations, setting
410 a Java system property to LF only and converting text when it goes in/out.
412 Changed run button to auxiliary stateful newLISP process as used
413 previously in console.lsp. Now evaluation via the newLISP run button
414 is stateful unless the restart button is hit to restart the
415 other newLISP process. If the process exits, e.g. when closing a GUI-server
416 applications the small LED turns red. When hitting the run-newLISP button
417 and the newLISP process is down, it will get restarted automatically.
419 Only one GUI applocation should be started at the time from newlisp-edit.lsp
420 starting more than one is unreliable and blocked on MacOX X.
422 There are som unreliabilities running GUI-Server apps from newlisp-edit.lsp
423 on Win32, which have not been worked out. Text in the edit area should be saved
424 before running a GUI-server app, to be safe.
428 File dialog file mask selection was broken again
432 Eliminated flicker when matching parenthesis in bigger files.
434 A canvas now can be treated like any other container adding other
435 widgets to it (see demo textrot-demo.lsp).
437 Custom control for font coolors and size in newlisp-edit.lsp
439 Now newlisp-editor.lsp stays functional while a lengthy evaluation
440 process is running and outputing to the monitor area. In another tab
441 files can be edite/saved etc.
443 Auxiary newLISP process in newlisp-edit.lsp now starts with home directory as
446 Trying to start a second evaluation or trying to restart the newLISP process
447 will make the led blink in yellow for a second and output "busy" in the monitor
450 Trying to quit newlisp-edit.lsp while an evaluating process is running will
451 leave the newlisp-edit.lsp application unfunctional on the screen until the
452 evaluating process finishes. On MacOS X the Quit option of the top screen menu
453 can be used to exit newlisp-edit.lsp in this case but on Win32 the task manager
454 must be used to shut down newlisp-edit.lsp or the other evaluating process.
457 Many fixes for running programs from the editor. There should be no possibility
458 now to hang the editor, even if a pending newLISP evaluation cannot be finished,
459 the editor should be still functional to edit and save files.
461 The yellow led will now stay on when a newLISP evaluation is pending to exit and
462 an attempt has been make to start a second process. When the process has finished
463 the led goes red. Attempting to start another app will do a restart automatically.
465 Running GUI-Server apps from newlisp-edit.lsp seems to be reliable now on MacOX X
468 new menu 'File/Save Settings' saves all font, color and current directory when
469 loading file. The settimgs file contains many more settings, which can be changed
470 to give the editor a complete diferent appearance:
472 - The toolbar can be hidden completely or made floatable.
473 - The tabs can be relocated to the bottom, left or right side of the editor.
474 - The window size can be set to a desired X,Y width and height.
476 When newlisp-edit.lsp starts the first time and does not encounter a config file
477 it gets created in the current home directory.
479 File and settings saving is announced in the monitor area.
481 Note, the directory remembered when open the file dialog is the directory of
482 the currently open tab.
484 An optional icon can be added to gs:message-dialog when defining the type as "plain".
485 In this case a user supplied icon will be shown.
490 - Font size did not get saved by 'File/Save Settings'.
492 - settings file ion Win32 gets now written to APPDATA/newLISP/newlisp-edit.conf
493 where APPDATA is the Win32 environment variable for the applications data
494 directory. If APPDATA is not defined USERPOFILE or DOCUMENT_ROOT is assumed
495 On all other OS .newlisp-edit.conf is written to the users home directory
496 in UNIX like fashion. This may change in the future for the Mac OX X to:
497 ~/Libarary/Application Support/newLISP/newlisp-edit.conf
499 - The toolbar can now be detached/reattached from the View menu
501 - The Tool menu as a 'Save Settings' option.
503 - The Help menu has options to access newLISP and GUI-Server docs.
505 - When editing the settings file and leaving an error, the next startup
506 of newlisp-edit will give an error message box with the error.
508 - Ctrl-F (Win32) or meta-F (OS X) reenter the find dialog if not already
509 open (this was already in 0.994, but not mentioned).
511 - Pressing ESC while in find dialog text field will close the find dialog
512 this is consisten with behaviour of other Java-Swing built-in dialogs.
513 When in the edit area ctrl-D / meta-D, will still work to dispose of the
516 - on Mac OS X ctrl-up will select the tab, then keys left or right will
517 let select other tabs. This is Java-Swing built-in behaviour and assumed
518 to work like this on all platforms.
520 New gs:menu-item-check for checked menu items (behaves like a check box)
522 A new chapter about writing and debugging event handlers was added in the
523 guiserver.lsp.html documentation.
528 - settings will now remember loaction and size of newlisp-edit.lsp on the screen
530 - Edit/Find marked edit buffer as dirty, which was not correct (icon and red dot)
532 - new menu option Edit/Goto Line
534 - mew menu option Files/Recent Files remembers a list of recently saved files
535 the list is automatically updated each time a file is saved and maintained in
536 the file $APPDATA/newlisp-edit-recent on Win32 or in $HOME/.newlisp-edit-recent
539 popup menus now displayed in correct position on scrollable content
541 gs:get-bounds was broken, now displayes on-scrren coordinates for top level windows
543 new gs:goto-text - positions cursor in text at row columns position
545 new gs:load-text, gs:save-text to directlty load/save docs in to/from gs:text-pane
546 these should not be used from Win32 because they don't work correctly with
547 CR/LF line terminated files when using Edit/Find
549 documentation links in the Help menu have been taken out, because browser
550 blocks guiserver.jar from exiting on Win32
553 When using gs:load-text it now correctly filters carriage returns when
554 loading files on Win32 or any other platforms. gs:save-text will always
555 write LF line terminations. If this is not desirable, gs:get-text should
558 ESC in find dialog also works when cursor in replace text field. ESC will close
559 the dialog without initiaiting search action, as it did wrongly before.
561 demo directory accessible from the Help menu
563 Many additions and corrections to the documentaion.
566 new gs:set-syntax-selected for enabling newLISP syntax highlighting in gs:text-pane
568 new gs:set-caret-color for setting a caret color in in all text widgets
570 new gs:set-selection-color for setting a text selection color
572 new gs:set-syntax-colors for setting syntax colors for keywords, comments etc.
574 new gs:key-event to register key events for any component (except text widgets,
575 which already register keyevents by default)
577 syntax highlighting in newlisp-edit.lsp:
578 - 3 preconfigured themes to choose from for medium, low and high contrast
579 - alt-Y (Win32) or meta-Y (Mac OS X) toggle syntax highlighting on/off
580 - by default all files ending in .lsp are highlighted
585 - any number of syntax profiles can now be configured in the settings file and
586 loaded automatically into the View menu on startup.
588 - for the Tool menu scripts can be registered using the settings file. The
589 scripts are run over the content of the current edit tab. The contents of the
590 current edit tab is saved to a tmporary file, and the name of this file is passed
591 as an argument to the script. The output of the script is shown in the monitor
594 - added tabulator size (in points) to settings file
596 - syntax on/off is remembered when switching tabs
598 - Edit/Get Position tells line and column positin of text cursor
600 - undo/redo was broken when in syntax highlighting mode. Undo/redo is now reset
601 whenever switching syntax highligthing on/off. Loading a file is not part of an
602 undoable operation anymore.
604 - eliminated foreground/background color options which are set as part of
605 the color theme. When syntax highlighting is tirned off, foreground and background
606 are still defined by the colors of the current theme.
608 - non-existing files in the recent files list are eliminated automatically
610 - now remembers correctly screen positions in settings file on all platforms
612 - eliminated black flash before splash screen display
614 - startup on Win32 w/o run.exe now shows hour glass cursor
616 - Clear Monitor disable/enable was faulty
618 - now highlights search text when returning to find/replace dialog
620 - message box when saving failed, e.g. becuase of wromg permissions
622 gs:set-cursor now works correctly in text widgets.
624 gs:get-bonds now works correctly for on-screen widgets
626 1.0 feature complete for release August 15th
628 fixed unreliable gs:layout
630 fixed occasional text blur in monitor area of newlisp-edit.lsp
632 new gs:get-selected-text, works like gs:get-text but retrieves selected text only
634 added C, C++, Java and PHP syntax highlighting, automatically selected for .c, .cpp, .h,
635 .java and .php files. When a file does not have a known extension when loading, then no
636 syntax highlighing is selected. But when switching highlighting on via View/Syntax
637 or meta-Y (OS X) or alt-Y (Win32), a menu pops up for selecting a highlighting mode.
639 some small fixes for newLISP syntax highlighting
641 now 2 types of scripts in Tool menu and registered in currentScripts in settings file:
643 - Type "content" takes the contens of the edutor and passes it as a file to the script.
644 Anything printed in the script goes to the monitor area in the editor. See the
645 program word-count.lsp for an example
647 - Type "selection" takes the selection of the editor and passes it as a file to the
648 script. Anyting printed from thr script replaces the selectin. If nothing
649 was selected the output og the script gets inserted at the text caret.
651 The selection replace/insert type of script operation can be undone using Edit/Undo.
652 In the settings file: the menu string, the script path name, the type and an
653 optional shortcut key are specified. See the settings file for an example.
655 The settings file gets automatically created when not present on startup
656 and registers the two scripts word-count.lsp and uppercase.lsp. The settings file
657 can be edited using the option in the Tools menu.
659 before installing this version remove old settingfile on Win32:
660 $HOME/Application Data/newLISP/newlisp-edit.conf or on Mac OS X and Unix:
663 1.01 August 15th release
665 In newlis-edit.lsp: changed key assignments for fonts smaller/bigger:
666 meta-minus and shift-meta-equals on Mac OS X and ctrl-minus ctrl-equals on Win32.
667 For Mac OS X this is standard, for Win32 it mimics FireFox behaviour.
669 The items in gs:list-box and gs:combo-box can be either given individually
670 or in a list: (gs:list-box 'TheListBox 'list-action '("a" "b" "c))
672 New gs:play-sound plays/streams .wav and .aif sound files.
676 The monitor area now works also as a newLISP shell, where expressions can
677 be typed in directly and evaluated. The red/green led is not necessary
678 anymore. The shell can be restarted at any time, even if a process is running.
679 The run button will only work if the shell is present. If the shell is exited
680 by a program, hit the restart button to restart. When restarting the shell
681 while a program in it is running, the program will quit and the shell restart.
683 When the monitor/shell area has focus:
684 Ctrl-l clears monitor and gives shell prompt (like Meta-m/Alt-m)
685 Ctrl-p copies previous command
686 Other common readline/editing commands usual in UNIX shells may be implemented
689 On Win32 Ctrl-l used to be "goto line" now: Alt-l
690 On Win32 Ctrl-Shift-l used to "show current line/column" now: shift-Alt-l
692 newLISP-edit can be exited at any time, if a process is still running in the
693 shell window it keeps on running after newLISP-edit closed.
695 New gs:run-shell installs a shell process in the monitor area
696 New gs:eval-shell send a string for evaluation in the shell
697 New gs:destroy-shell destroys the shell
699 Note that newlis-edit.lsp uses newISP as a shell process, but other shells
700 can be started using gs:run-shell.
702 New gs:reorder-tags reorders the stacking order of tagged images.
703 See the file drag-demo.lsp for usage (comment in gs:reorder-tags statement
707 Monitor background and foreground colors are now configuable in settings file
708 do a File/Save Settings first to have the new config variables registered, then
709 Tools/Edit Settings for editing: currentMonitorBackground and currentMonitorForeground.
711 Fix when evaluating in shell area after Ctrl-L, Meta-M (Alt-M).
713 Eliminated some quirks when copying/pasting between editor and monitor/shell area, and
714 when hitting enter in the middle of an edited command.
716 Now full commandline history in shell-commandline when using arrow-up/down.
718 meta-1, meta-2 (alt-1, alt-2 on Win32) for switching between editor and shell/monitor.
720 More bash-shell like key bindings on UNIX: Ctrl-A beginnining of line after the
721 shell prompt , Ctrl-E end of line (in gs:text-area with shell attached).
723 new gs:color-tag colors all shapes with the same tag
726 gs:get-text now can be called without an action handler to return the text
727 immedeately. This new synchronous mnode of gs:get-text is not recommended when
728 receiving larger text areas, as the call is blocking until all text is returned,
729 but makes coding simple data forms a lot shorter.
731 gs:mouse-move now can take an additional boolean parameter to indicate that
732 a list of tags are to be returned in the mouse-move event handler. The flag
733 should not be used when large amount of tags are present as it can slow down
734 performance significantly calculating and transmitting tag lists on every
737 gs:key-event now also can be registered as a second key listener on text widgets.
738 This is espacially interesting on gs:text-field, where individual key action
739 could not be captured before, as the normal handler registered with gs:text-area
740 only handles the ENTER and ESC key.
742 fix in gs:run-shell for shells without prompts
744 now uses patform independent:
745 (load (append (env "NEWLISPDIR") "/guiserver.lsp"))
746 in all demo files to load guiserver.lsp
749 edit buffer did not get marked as dirty when cutting/pasting into clean buffer
751 when file-recent-loading->saving->file-recent-reloading the same file editor crashed
753 make sure shell proccesses in monitor window are destroyed when closing newlisp-edit
755 because of new 'process' in newlisp core full java path is needed in process statement
756 in gs:init function. Assumes /usr/bin/java
759 Tcp/Ip connection between Guiserver and newLISP now goes via 127.0.0.1, not localhost
760 to avoid loss of connection when computer sleeps, while an GS application was
763 when runniung editor contents and shell is dow, the shell will be restarted
766 the editor now loads, saves and displays UTF-8 correctly
769 Guiserver now adjusts automatically to set UTF-8 on/off depending on newLISP version
771 The Win32 is again shipped as not UTF-8 by default.
773 new gs:window-moved and gs:window-resized. See new demo file move-resize-demo.lsp
776 reverse "meta N" and "shift meta N" on OS X to be standard with "meta N" new window/tab
779 gs:mouse-event now can also be used on list boxes made with gs:list-box, this makes
780 it possible to process single clicks.
783 the gs:list-box event now responds on any click-count, previously only on 2 for
784 double click. Addtionally the click-count is transmitted in the event as the last
788 replace all can now be redone, double undo not required any more for replace
790 new gs:undo-enable undo is currently disabled in newlisp-edit for find/replace
791 because of instabilities
794 newlisp-edit "Undo Previous" button in find dialog, this is used to undo replacements.
795 Replacements cannot be undone with normal undo when the find dialog is closed again,
796 but can only be undone from inside the find dialog
799 in guiserver.lsp now checking JAVA_HOME when not Win32 or OS X
802 fixed highlighing for 'pop-assoc'