/[mcclim]/mcclim/recording.lisp
ViewVC logotype

Log of /mcclim/recording.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (annotate)
Sticky Tag:

Revision 1.145 - (view) (annotate) - [select for diffs]
Sat Aug 1 16:10:32 2009 UTC (4 years, 8 months ago) by gbaumann
Branch: MAIN
CVS Tags: HEAD
Changes since 1.144: +4 -4 lines
Diff to previous 1.144 , to selected 1.72
Use force-output instead of finish-output as the latter implies
waiting for an answer from the display server, which is something
we really do not want to do.

Revision 1.144 - (view) (annotate) - [select for diffs]
Sat Aug 1 05:23:47 2009 UTC (4 years, 8 months ago) by rstrandh
Branch: MAIN
Changes since 1.143: +1 -1 lines
Diff to previous 1.143 , to selected 1.72
Patch from Nikodemus Siivola fixing a problem with missing unquotes.

Revision 1.143 - (view) (annotate) - [select for diffs]
Tue Jun 16 05:15:35 2009 UTC (4 years, 10 months ago) by ahefner
Branch: MAIN
Changes since 1.142: +3 -4 lines
Diff to previous 1.142 , to selected 1.72
Fix bounding rectangle computation for open polygons.

Revision 1.142 - (view) (annotate) - [select for diffs]
Tue Aug 19 15:56:50 2008 UTC (5 years, 8 months ago) by ahefner
Branch: MAIN
Changes since 1.141: +27 -0 lines
Diff to previous 1.141 , to selected 1.72
Apparently, when rgb-designs were merged into the core of mcclim, the
output recording definitions got left out.

Revision 1.141 - (view) (annotate) - [select for diffs]
Sun Apr 13 07:32:40 2008 UTC (6 years ago) by ahefner
Branch: MAIN
CVS Tags: McCLIM-0-9-6
Changes since 1.140: +18 -17 lines
Diff to previous 1.140 , to selected 1.72
Fix the zero coordinate kludge in output-record-children in the case
where a a max coordinate is less than zero, which previously resulted
in an invalid rectangle.

Revision 1.140 - (view) (annotate) - [select for diffs]
Sun Feb 3 22:54:13 2008 UTC (6 years, 2 months ago) by ahefner
Branch: MAIN
Changes since 1.139: +60 -43 lines
Diff to previous 1.139 , to selected 1.72
Fix various bounding rectangle bugs.

1) After clear-output-record, recompute bounds of parent.
2) Fix bug in recompute-extent-for-new-child, which was noted
   in the source.
3) In %tree-recompute-extent*, don't include empty rectangles.

Also twiddled comments, add assertions, and remarked on
output-record-children for tree records.

Revision 1.139 - (view) (annotate) - [select for diffs]
Sun Feb 3 09:25:42 2008 UTC (6 years, 2 months ago) by ahefner
Branch: MAIN
Changes since 1.138: +1 -15 lines
Diff to previous 1.138 , to selected 1.72
Eliminate %handle-repaint and repaint-sheet hack. I don't think the
warnings about wholine infinite recursion are applicable anymore,
either.

Revision 1.138 - (view) (annotate) - [select for diffs]
Sat Feb 2 19:03:00 2008 UTC (6 years, 2 months ago) by thenriksen
Branch: MAIN
Changes since 1.137: +4 -2 lines
Diff to previous 1.137 , to selected 1.72
Output recording bandaids:

Use CLIM 2.2 region default for replay.

Don't assume every parent output record is a compound-output-record.

Revision 1.137 - (view) (annotate) - [select for diffs]
Mon Jan 21 22:24:32 2008 UTC (6 years, 3 months ago) by ahefner
Branch: MAIN
Changes since 1.136: +1 -1 lines
Diff to previous 1.136 , to selected 1.72
Patch from Nikodemus Siivola

Revision 1.136 - (view) (annotate) - [select for diffs]
Mon Jan 21 01:26:42 2008 UTC (6 years, 3 months ago) by ahefner
Branch: MAIN
Changes since 1.135: +26 -8 lines
Diff to previous 1.135 , to selected 1.72
Drawing optimizations, with a focus on eliminating clipping rectangle
changes and transformation cache invalidations (the latter generally
caused by the former). Shortcuts for special cases in d-g-w-o-internal,
merge-text-styles, regions. Further mcclim-freetype optimization -
minimize modification of picture-clip-rectangle and painting of the
foreground tile (this used to happen for every single draw-text call).
One or two optimizations in output record playback.

The mcclim-freetype changes require a fix to CLX, available in
Christophe's CLX in darcs, or from here:

http://vintage-digital.com/hefner/mcclim/xrender-clip-state.diff

Revision 1.135 - (view) (annotate) - [select for diffs]
Fri Sep 7 16:49:11 2007 UTC (6 years, 7 months ago) by rgoldman
Branch: MAIN
Changes since 1.134: +20 -11 lines
Diff to previous 1.134 , to selected 1.72
Two fixes to the output-record protocol implementation, per discussion
on #lisp in the week of 3 September 2007:

1.  The standard-tree-output-record did not implement an
output-record-count method.  antifuchs supplied one.

2.  There was a default method for output-record-count that masked the
bug in #1.  It returned zero for any object of any output-record
subclass that did not implement output-record-count.  Per hefner's
suggestion, this method has been moved down from basic-output-record
to displayed-output-record.  We hope that this will cause earlier
failure in cases where methods are missing.

Revision 1.134 - (view) (annotate) - [select for diffs]
Wed Jul 18 16:31:27 2007 UTC (6 years, 9 months ago) by rstrandh
Branch: MAIN
CVS Tags: McCLIM-0-9-5
Changes since 1.133: +4 -1 lines
Diff to previous 1.133 , to selected 1.72
Added IGNORE declarations to avoid warnings about unused variables.

Revision 1.133 - (view) (annotate) - [select for diffs]
Sun Jul 15 12:38:37 2007 UTC (6 years, 9 months ago) by dlichteblau
Branch: MAIN
Changes since 1.132: +11 -1 lines
Diff to previous 1.132 , to selected 1.72
Fixed bug reported by Fred Gilham, [mcclim-devel] Tooltip stuff

	* recording.lisp (erase-output-record): Lock the bounding
        rectangle to the pixel grid and add extra safety at the borders
        to avoid leaving fragments on the border.

Revision 1.132 - (view) (annotate) - [select for diffs]
Sun Jun 3 18:47:03 2007 UTC (6 years, 10 months ago) by ahefner
Branch: MAIN
Changes since 1.131: +59 -67 lines
Diff to previous 1.131 , to selected 1.72
Revert to Robert Strandh's version of recompute-extent-for-changed-child,
which I appear to have broken.

Revision 1.131 - (view) (annotate) - [select for diffs]
Tue Mar 20 01:48:38 2007 UTC (7 years, 1 month ago) by ahefner
Branch: MAIN
Changes since 1.130: +72 -57 lines
Diff to previous 1.130 , to selected 1.72
Optimize a few cases in recompute-extent-for-changed-child, generalizing
an optimization by Robert Strandh.

Revision 1.130 - (view) (annotate) - [select for diffs]
Mon Feb 5 03:06:14 2007 UTC (7 years, 2 months ago) by ahefner
Branch: MAIN
Changes since 1.129: +19 -6 lines
Diff to previous 1.129 , to selected 1.72
Introduce a new function, highlight-output-record-tree, so that records
can control how highlighting recurses into their children.

Revise definition of null output records to include any record whose
upper-left and lower-right coordinates are equal. This is necessary when
an empty record is transformed (such as by with-room-for-graphics).

Revision 1.129 - (view) (annotate) - [select for diffs]
Wed Nov 22 06:26:48 2006 UTC (7 years, 5 months ago) by ahefner
Branch: MAIN
CVS Tags: McCLIM-0-9-4, mcclim-0-9-4
Changes since 1.128: +43 -17 lines
Diff to previous 1.128 , to selected 1.72
Add checking for several cases where recompute-extent-for-changed-child
can avoid calling %tree-recompute-extent, and one case where it must do
so. Added copious comments explaining my reasoning, in hopes that it will
prevent these from getting commented out again in the future (or to
help fix them if I've made a mistake).

Revision 1.128 - (view) (annotate) - [select for diffs]
Tue Jun 13 02:26:46 2006 UTC (7 years, 10 months ago) by ahefner
Branch: MAIN
CVS Tags: McCLIM-0-9-3
Changes since 1.127: +18 -15 lines
Diff to previous 1.127 , to selected 1.72
Fix 'replay' to work on encapsulated streams.

Revision 1.127 - (view) (annotate) - [select for diffs]
Sun May 28 21:32:43 2006 UTC (7 years, 10 months ago) by crhodes
Branch: MAIN
Changes since 1.126: +27 -61 lines
Diff to previous 1.126 , to selected 1.72
Rework displayed-output-records.  Instead of setting the medium graphics
state, use with-drawing-options in :around methods (which resets the
graphics state after replaying an output record, which allows the CLIM
user to implement their own output record classes).  Note the potential
for changes in incremental-redisplay, as there's no need to capture the
entire medium state, just the stream cursor position.

(Fixes horizontal partial beams in gsharp)

Revision 1.126 - (view) (annotate) - [select for diffs]
Fri May 5 10:24:02 2006 UTC (7 years, 11 months ago) by crhodes
Branch: MAIN
Changes since 1.125: +0 -65 lines
Diff to previous 1.125 , to selected 1.72
Many more generic function defgenerics in decls.lisp
... moving some out from their individual files.
... one or two tiny code cleanups

I think the only substantive changes in this commit are:
* remove the workaround for sbcl-0.9.8 broken forward-referenced-class
  metacircularity;
* delete the unused uniform-design protocol-class;
* put the standard-sheet-input-mixin as a superclass of
  standard-extended-input-stream, not of the protocol class
  extended-input-stream.
If someone wants to tell me that these things are wrong, that's fine; at
least some things appear still to work.

Now we only emit 209 style warnings when loading mcclim under sbcl.
(When compiling and loading, it's closer to 500).

This commit cures all but a few redefinition style-warnings -- so now
almost all generic functions are defined before the first method
definition is seen.  It doesn't cure implicit definition of generic
function style warnings, so there are probably plenty of specified
generic functions which are not explicitly defined.  (Leaving aside the
issues with unspecified generic functions)

TODO:
* DEFGENERIC* forward declarations
* specified methods and macros
* specified special variables
* unification of protocol-classes and decls

Revision 1.125 - (view) (annotate) - [select for diffs]
Wed Mar 29 10:43:37 2006 UTC (8 years ago) by tmoore
Branch: MAIN
Changes since 1.124: +2 -2 lines
Diff to previous 1.124 , to selected 1.72

Take out dependencies on case in symbol names. This makes McCLIM sort
of work in ACL's so-called modern mode; there have been some CLX fixes
recently that may get it all the way there.

Clean up events.lisp.

Add a callback-event, which will be used in ports that get high-level
gadget notifications in the event process and need to deliver them to
applications.

Changed the implementation of scroll bars. When the drag callback is
called, just move the sheet; assume that the gadget itself has updated
the value and the graphic representation. add a scroll-bar-values
interface that gets and sets all scroll bar values and only updates
the bar once. This will break the Beagle back end momentarily.

Revision 1.124 - (view) (annotate) - [select for diffs]
Fri Mar 10 21:58:13 2006 UTC (8 years, 1 month ago) by tmoore
Branch: MAIN
CVS Tags: McCLIM-0-9-2
Changes since 1.123: +0 -13 lines
Diff to previous 1.123 , to selected 1.72
Move most protocol class definitions into protocol-classes.lisp, which
is compiled and loaded early. Some class definitions, which had slot
definitions that I didn't have the stomach to tease apart, stayed
behind.

Replace the presentation documentation state mechanism with
updating-output so that other functions / programs can write to the
pointer documentation area and not screw things up. We still use the
state to actually print the documentation.

Revision 1.123 - (view) (annotate) - [select for diffs]
Thu Mar 9 10:44:28 2006 UTC (8 years, 1 month ago) by afuchs
Branch: MAIN
Changes since 1.122: +5 -2 lines
Diff to previous 1.122 , to selected 1.72
"This is your brain on PHP". Actually remove deleted cached output
records from the cache hashtable, don't just set their value to NIL.

Revision 1.122 - (view) (annotate) - [select for diffs]
Fri Mar 3 21:10:21 2006 UTC (8 years, 1 month ago) by afuchs
Branch: MAIN
Changes since 1.121: +109 -5 lines
Diff to previous 1.121 , to selected 1.72
Implement standard-tree-output-records using spatial trees.

Also, document the updated installation process in INSTALL.ASDF.

Revision 1.121 - (view) (annotate) - [select for diffs]
Fri Jan 13 12:17:55 2006 UTC (8 years, 3 months ago) by cfruhwirth
Branch: MAIN
Changes since 1.120: +8 -5 lines
Diff to previous 1.120 , to selected 1.72
%handle-repaint derives the bounding rectangle for region. There are
two cases where region does not participate in the bounding rectangle
protocol: +everywhere+ and +nowhere+, the only two regions in the
unbound region class. For +everywhere+, fallback to the bounding
rectangle of sheet. For +nowhere+, ignore repaint.

Revision 1.120 - (view) (annotate) - [select for diffs]
Thu Dec 1 11:10:55 2005 UTC (8 years, 4 months ago) by gbaumann
Branch: MAIN
Changes since 1.119: +3 -5 lines
Diff to previous 1.119 , to selected 1.72
- added more DEFGENERICs
- fiddled with a few IGNORE declarations
- with CMUCL, macros no longer attempt to declare special variables
  IGNORABLE

Revision 1.119 - (view) (annotate) - [select for diffs]
Sat Aug 13 14:28:19 2005 UTC (8 years, 8 months ago) by crhodes
Branch: MAIN
Changes since 1.118: +66 -39 lines
Diff to previous 1.118 , to selected 1.72
Commit working version of text-bounding-rectangle* stuff, as trailed on
mcclim-devel 2005-08-12.  Basically, this is needed because the drawn
area for left-to-right text need not lie between (x,y-ascent) and
(x+width,y+descent).  (No doubt other text drawing directions suffer
from the same problem, but they're not yet implemented in McCLIM).

New per-medium function TEXT-BOUNDING-RECTANGLE* which actually returns
the bounding-rectangle* of what is drawn (cf. TEXT-WIDTH, which doesn't
do anything of the sort).  Use it in DEF-GRECORDING DRAW-TEXT, and in
add-{string,character}-to-output-record, to properly adjust the output
record coordinates.  While we're at it, fix the bounding box for
:y-align :center DRAW-TEXT.

Implement this per-medium function for the CLX backend, for the
experimental freetype text handling, and for postscript (tested using
Climacs, Tabcode and clim-demo::postscript-text).  This patch was mostly
motivated by the observation that incremental redisplay in climacs
windows using the freetype backend caused graphical artifacts to appear
over time, thanks to glyphs drawing outside the output record bounding
rectangles.

Breaks:
 * CLX backend with #+unicode (clisp?)
 * Beagle backend
 * OpenGL backend
(please fix!)

Revision 1.118 - (view) (annotate) - [select for diffs]
Tue Feb 15 11:28:11 2005 UTC (9 years, 2 months ago) by crhodes
Branch: MAIN
CVS Tags: McCLIM-0-9-1
Changes since 1.117: +2 -0 lines
Diff to previous 1.117 , to selected 1.72
Maybe fix circle/ellipse drawing in with-room-for-graphics and
with-first-quadrant-coordinates.

(Weirdest.  Coordinate.  System.  Ever.)

Revision 1.117 - (view) (annotate) - [select for diffs]
Fri Feb 11 09:10:36 2005 UTC (9 years, 2 months ago) by tmoore
Branch: MAIN
Changes since 1.116: +162 -127 lines
Diff to previous 1.116 , to selected 1.72
Changed the representation of STANDARD-RECTANGLE from slots for the
coordinates to an array of coordinates. This should enable
opportunities for hashing the coordinates in interesting, inexpensive
ways. Introduced the macros WITH-STANDARD-RECTANGLE and
WITH-STANDARD-RECTANGLE* to provide convenient access to the
coordinates. Added (SETF RECTANGLE-EDGES*).

This change may well break code that depends on the internal
representation of output records.

Revision 1.116 - (view) (annotate) - [select for diffs]
Wed Feb 2 11:33:58 2005 UTC (9 years, 2 months ago) by tmoore
Branch: MAIN
Changes since 1.115: +49 -30 lines
Diff to previous 1.115 , to selected 1.72
Hammered on with-room-for-graphics. It should now leave the cursor in
the right place and do the right thing with respect to recording
options.

Changed with-drawing-options to not rebind its medium argument at all.

Added :label and :scroll-bars arguments to with-menu which are
currently ignored.

Revision 1.115 - (view) (annotate) - [select for diffs]
Thu Oct 14 06:30:11 2004 UTC (9 years, 6 months ago) by hefner1
Branch: MAIN
Changes since 1.114: +6 -1 lines
Diff to previous 1.114 , to selected 1.72
Improved (fixed) support for keystroke accelerators
---------------------------------------------------

File commands.lisp:

add-command-to-command-table: When given a keystroke, call
add-keystroke-to-command-table.
%add-keystroke-item: Changed error handling logic, added support for
literal keystroke specifications
remove-keystroke-from-command-table: When searching keystroke
accelerators, use :test #'equal


New function partial-command-from-name, which given a command name
produces a command whose
requried args are *unsupplied-argument-marker*

lookup-keystroke-command-item: Add support for keystroke accelerators
which specify only a command name. A partial command is created via
partial-command-from-name.

Class command-parsers: Added slots required-args and keyword-args,
needed in order to construct a partial command.

%define-command: Init required/keyword arguments in command-parser
object

read-command-using-keystrokes: Invoke partial command parser if a
partial command is returned.


File events.lisp:

Add :wheel-up and :wheel-down to key-modifier-state-match-p button
mapping. (This has been sitting around my tree for months, but somehow
never got committed..)


File frames.lisp:

In read-frame-command, supply ':use-keystrokes t' by default.


File stream-input.lisp:

Factored the bulk of add-gesture-name out into a new function,
realize-gesture-spec, which converts modifier names to symbols and does
general massaging of the gesture specification. Added translations for
:wheel-up, :wheel-down device names, which have also been sitting around
my tree for months.

realize-gesture-spec: Don't signal an error if the device-name is not
found in +name-to-char+, doing so would preclude the use of
port-specific keyboard gestures.

%event-matches-gesture: In the method specialized on key-press-event and
gesture type :keyboard, compare against the key-name of the event when
there is no key-character available, so that we can match keys/gestures
outside the CL character set via device names.

event-matches-gesture-name-p: Added the ability to match against other
than defined gesture-names. Specifically, it can now match against a
'physical' gesture-spec of the form (type device-name modifier-state).
Matching against characters is also supported.

Fix random typo.


Misc changes
------------

recording.lisp: Comment on 'constructor' arg to
invoke-with-output-recording-options, use of untransform on rotation
angles.

table-formatting.lisp: Supply required 'constructor' arg, which was
missing.

Revision 1.114 - (view) (annotate) - [select for diffs]
Wed Oct 6 12:03:56 2004 UTC (9 years, 6 months ago) by moore
Branch: MAIN
Changes since 1.113: +2 -2 lines
Diff to previous 1.113 , to selected 1.72
Changed STREAM-DESIGNATOR-SYMBOL to take a default value
argument. The value corresponding to T isn't always *STANDARD-OUTPUT*.

Fixed a problem in the incremental redisplay code checked in
recently: the output record that holds an updating output record's
children wasn't always created.

Some tweaks (in progress) to ACCEPTING-VALUES.

Revision 1.113 - (view) (annotate) - [select for diffs]
Wed Oct 6 05:00:09 2004 UTC (9 years, 6 months ago) by hefner1
Branch: MAIN
Changes since 1.112: +11 -7 lines
Diff to previous 1.112 , to selected 1.72
In %handle-repaint, don't assume all children of an output recording stream
are also output recording streams. This fixes a problem breaking
WITH-OUTPUT-AS-GADGET.

Revision 1.112 - (view) (annotate) - [select for diffs]
Sun Sep 26 15:57:39 2004 UTC (9 years, 6 months ago) by moore
Branch: MAIN
Changes since 1.111: +38 -18 lines
Diff to previous 1.111 , to selected 1.72
Support for UPDATING-OUTPUT where the display records are moved around
during the course of redisplay. In particular, UPDATING-OUTPUT now
works inside of tables.

Get stream-clear-output from host CL.

Revision 1.111 - (view) (annotate) - [select for diffs]
Fri Aug 13 14:10:11 2004 UTC (9 years, 8 months ago) by moore
Branch: MAIN
Changes since 1.110: +11 -6 lines
Diff to previous 1.110 , to selected 1.72
Fixers for several bugs revealed by indented-lists.lisp from the CLIM
repository. The mechanism for establishing a current updating-output
record for the purposes of cache lookup was broken. There was a bug
in compute-difference-set, and also a problem with recording the
current stream state of an updating-output record during redisplay.

Added a bunch of debugging and tracing code to incremental redisplay.

Revision 1.110 - (view) (annotate) - [select for diffs]
Sun Jul 25 08:09:22 2004 UTC (9 years, 9 months ago) by moore
Branch: MAIN
Changes since 1.109: +1 -0 lines
Diff to previous 1.109 , to selected 1.72
Remove problematic (for CMUCL) use of (make-instance ... :allow-other-keys t)

Add a (declare (ignore ...)) to one of the new invoke-with-output-to-output
methods.

Revision 1.109 - (view) (annotate) - [select for diffs]
Sat Jul 24 15:07:50 2004 UTC (9 years, 9 months ago) by moore
Branch: MAIN
Changes since 1.108: +78 -51 lines
Diff to previous 1.108 , to selected 1.72
Change invoke-with-new-output-record and invoke-with-output-to-output-record
to take a constructor argument, as per the Franz CLIM user
manual. This permits one to call make-instance with a constant class
argument, which can be a big win in some
implementations. Change with-new-output-record and friends to use
this new form. This change requires a recompile of user code.

Change stream-write-output to take a width argument. If the width of
the string is already available (and it usually is), this saves an
extra call to the expensive function stream-string-width.

Revision 1.108 - (view) (annotate) - [select for diffs]
Fri Jul 23 12:36:44 2004 UTC (9 years, 9 months ago) by moore
Branch: MAIN
Changes since 1.107: +4 -3 lines
Diff to previous 1.107 , to selected 1.72
dragging-output and drag-output-record. I rewrote the tracking-pointer
implementation to follow a little protocol. Work is in progress on
presentation drag-and-drop translators.

The :incremental-redisplay option in a pane specification can be a
list of arguments that will be passed to the call to redisplay. This
change is described in the Franz user manual.

Added some checks of :check-overlapping in the incremental redisplay
code.

Changed funcall-presentation-generic-function to call the private
generic function directly, bypassing
%funcall-presentation-generic-function.

Added the :parent keyword to invoke-with-new-output-record.

Optimized the table layout code a bit. Avoid traversing the whole
table hierarchy: stop at the level of interest. Use arrays instead of
lists in adjust-table-cells.

Patch for SBCL package locks from Nikodemus Siivola
(tsiivola@cc.hut.fi).

Listener SBCL fixes from Christophe Rhodes (csr21@cam.ac.uk)

Revision 1.107 - (view) (annotate) - [select for diffs]
Wed May 5 10:12:49 2004 UTC (9 years, 11 months ago) by moore
Branch: MAIN
Changes since 1.106: +17 -9 lines
Diff to previous 1.106 , to selected 1.72
Rewrote the interaction between handle-repaint and repaint-sheet in
order to break infinite recursion in the listener who pane. I'm not
sure why the Listener has it's own method on handle-repaint...

Revision 1.106 - (view) (annotate) - [select for diffs]
Fri Apr 23 19:29:49 2004 UTC (10 years ago) by moore
Branch: MAIN
Changes since 1.105: +15 -8 lines
Diff to previous 1.105 , to selected 1.72
Changes to turn off, and then turn on again, presentation highlighting
when redrawing a pane, with the aim of fixing various screwups that
happen with tricky presentation highlighting that uses
+flipping-ink+. As part of this I removed redisplay-changed-panes and
rewrote the CLIM standard functions redisplay-frame-panes,
redisplay-frame-pane, and pane-redisplay-needed. I did various
refactoring among methods on panes, frames, and
updating-output-mixin too.

Moved a bunch of :initform forms to :default-initargs.

Random (declare (ignore ...)) to shut up compiler warnings.

Revision 1.105 - (view) (annotate) - [select for diffs]
Wed Mar 24 09:30:29 2004 UTC (10 years, 1 month ago) by moore
Branch: MAIN
Changes since 1.104: +3 -1 lines
Diff to previous 1.104 , to selected 1.72
2004-03-24  Timothy Moore  <moore@bricoworks.com>

	* INSTALL.OPENMCL: updated instructions.

	* builtin-commands.lisp (default-translator): Return the
	presentation type of the presentation as the second value.
	(document-form-translator): New function
	(%frob-constant-form, %frob-form): Use document-form-translator. Add
	translators from standard-object to expression and form.
	(expression-as-form): Add a menu entry for this translator.
	(ccl::%read-list-expression, (accept expression t textual-view),
	read, read-preserving-whitespace): Move the Lisp form reader
	stuff from the ptype 'form to the ptype 'expression. Disallow any
	activation or delimiter gestures while reading an expression.

	* commands.lisp (command-name-from-symbol): Don't strip leading
	subsequences of "COM-" from the command name.
	(keyword-arg-name-from-symbol): New function.
	(command-parsers): Add argument-unparser slot
	(make-keyword): New function
	(make-key-accessors): Use it. Accept keynames that begin with a
	#\: and have dashes replaced by spaces.
	(make-unprocessor-fun) New function to create an unprocessor
	function for each command.
	(%define-command): New macro preserving  old behavior. Use new
	unprocessor stuff.
	(output-destination, invoke-with-standard-output): New class and
	generic function for outputing the results of commands to an
	output stream.
	(define-command): Implement :provide-output-destination-keyword
	(command-line-unparser): Call new stuff instead.

	* dialog.lisp: Add (redundant):provide-output-destination-keyword
	keyword argument to some commands.

	* incremental-redisplay.lisp: Work in progress. Turn things
	inside-out.

	* input-editing.lisp (complete-input): Don't insert input when mode is
	:complete and we've failed.

	* presentation-defs.lisp (accept-1): Use multiple-value-list when
	looking at results of accept method.
	((present t completion t t)): Use the arguments to the type to drive
	the present method here.
	((accept sequence t textual-view)): Don't peek-char initially! It
	breaks accepting the first element via mouse click.
	(accept sequence-enumerated t textual-view): new method.

	* recording.lisp : Cosmetic fixups.

	* regions.lisp (ellipse-normal-radii*): Add Gilbert's English
	translation of the comment and clean up the function.

	* system.lisp: Add Goatee/presentation-history.

	* transforms.lisp (+identity-transformation+): Move earlier in the
	file to avoid a warning.

	* utils.lisp (delete-1, parse-lambda-list): new functions.

	* Apps/Listener/dev-commands.lisp : Add
	:provide-output-destination-keyword argument to many commands.
	((presentation-type generic-function)): Rewrite. Make it inherit from
	t, add accept method. The type of the object is generic-function, not
	the name or something.
	((presentation-type standard-generic-function), (presentation-type
	method), (presentation-type standard-method)): add.
	(Show Generic Function): All-singing all-dancing command for exploring
	generic functions and their methods.
	((presentation-type package)): New type with completing accept method.
	(Set Package): New command

	* Apps/Listener/listener.lisp (run-frame-top-level): Add bindings for
	all the Common Lisp reader and printer variables.

	* Apps/Scigraph/dwim/macros.lisp (define-command): Add
	:provide-output-destination-keyword support for McCLIM.

	* Goatee/goatee-command.lisp (lookup-gesture-command): Disable
	annoying debugging output.

	* Lisp-Dep/fix-openmcl.lisp (:clim-mop): In OpenMCL 0.14 use and
	export all symbols from :openmcl-mop.
	(compute-applicable-methods-using-classes): Hack for the listener.

Revision 1.104 - (view) (annotate) - [select for diffs]
Mon Mar 8 03:33:36 2004 UTC (10 years, 1 month ago) by hefner1
Branch: MAIN
Changes since 1.103: +86 -58 lines
Diff to previous 1.103 , to selected 1.72
Fix for output recording of rectangles, which drew correctly but did not
replay correctly. Added some extra keyword args to DEF-GRECORDING, to
control which methods it generates, so that I could override the
MEDIUM-DRAW-RECTANGLE* method with one that considered rotation (merely
rotating the corners is not enough).

Revision 1.103 - (view) (annotate) - [select for diffs]
Mon Mar 1 12:52:29 2004 UTC (10 years, 1 month ago) by hefner1
Branch: MAIN
Changes since 1.102: +5 -2 lines
Diff to previous 1.102 , to selected 1.72
Fixes to last commit - CLX ellipses were correct, undo change (oops).
In recording/regions code for ellipses, do untransform-angle rather than
transform-angle due to polarity mismatch. Modify angles in DRAW-OVAL* to
reflect this.

Revision 1.102 - (view) (annotate) - [select for diffs]
Mon Mar 1 04:23:43 2004 UTC (10 years, 1 month ago) by hefner1
Branch: MAIN
Changes since 1.101: +2 -0 lines
Diff to previous 1.101 , to selected 1.72
Fixes to DRAW-OVAL, DRAW-ELLIPSE, DRAW-CIRCLE

1) End cap angles for ovals were not correct (credit to Manuel Giraud for
   observing this)
2) DEF-GRECORDING form for DRAW-ELLIPSE did not transform start/end angles.
3) CLX backend MEDIUM-DRAW-ELIPSE interpreted angles backward

DRAW-OVAL now works correctly for filled ovals. Bugs in other drawing
functions prevent unfilled ovals from working quite right.

Revision 1.101 - (view) (annotate) - [select for diffs]
Wed Feb 11 11:08:07 2004 UTC (10 years, 2 months ago) by moore
Branch: MAIN
Changes since 1.100: +32 -15 lines
Diff to previous 1.100 , to selected 1.72
Added the missing transformations in def-grecording forms

Revision 1.100 - (view) (annotate) - [select for diffs]
Tue Jan 20 16:07:26 2004 UTC (10 years, 3 months ago) by moore
Branch: MAIN
Changes since 1.99: +1 -2 lines
Diff to previous 1.99 , to selected 1.72
Presentation histories. The new goatee command C-M y works reasonably
well in the listener demo. More testing and user documentation is needed.

Work in progress on the OpenGL backend.

Revision 1.99 - (view) (annotate) - [select for diffs]
Thu Jan 15 04:29:11 2004 UTC (10 years, 3 months ago) by moore
Branch: MAIN
Changes since 1.98: +78 -20 lines
Diff to previous 1.98 , to selected 1.72
Some efficiency fixes for table formatting and incremental redisplay. Don't update the parents of row cells until the adjust-table phase. Only consider records on the screen for updating-output (this breaks the got-sheet/lost-sheet stuff I did a few weeks ago; more on that soon). Fix tree-recompute-extent.

Revision 1.98 - (view) (annotate) - [select for diffs]
Sun Nov 30 00:05:28 2003 UTC (10 years, 4 months ago) by hefner1
Branch: MAIN
Changes since 1.97: +5 -5 lines
Diff to previous 1.97 , to selected 1.72
Fixes to make incremental redisplay and WITH-OUTPUT-AS-GADGET play nice
together.

* Replace instaces of (setf (output-record-parent foo) nil) with calls to
  DELETE-OUTPUT-RECORD so as to not undermine the got/lost sheet
  notifications. We could use something like REPARENT-OUTPUT-RECORD here,
  but I'm not going to implement it until there is some real use of gadget
  output records to demonstrate its necessity.

* Shuffle timing of how NOTE-OUTPUT-RECORD-GOT-SHEET gets called. Instead
  of invoking it on :before ADD-OUTPUT-RECORD, invoke it on the :after
  method, and only when the child record's parent really equals the record
  passed to A-O-R. This check prevents confusion from how updating-output
  records delegate the added record to some other record.

Revision 1.97 - (view) (annotate) - [select for diffs]
Wed Nov 19 13:51:17 2003 UTC (10 years, 5 months ago) by moore
Branch: MAIN
Changes since 1.96: +11 -9 lines
Diff to previous 1.96 , to selected 1.72
Plausable implementation of presentation-single-box

Some work-in-progress on window streams

"Fix" the Macintosh issue where the Delete key doesn't work

Make some changes suggested by Strandh to flexivector and refactor it
so flexivectors with general contents can be easily derived.

Add note about CMUCL and mp::*idle-process*

Add note about run-test

Revision 1.96 - (view) (annotate) - [select for diffs]
Mon Nov 3 15:53:36 2003 UTC (10 years, 5 months ago) by hefner1
Branch: MAIN
CVS Tags: McCLIM-0-9
Changes since 1.95: +4 -4 lines
Diff to previous 1.95 , to selected 1.72
Oops, default method for note-output-record-got/lost-sheet should be
defined on output-record.

Revision 1.95 - (view) (annotate) - [select for diffs]
Mon Nov 3 08:12:34 2003 UTC (10 years, 5 months ago) by strandh
Branch: MAIN
Changes since 1.94: +3 -0 lines
Diff to previous 1.94 , to selected 1.72
Added a few "ignore" declarations to avoid compiler notes.

Revision 1.94 - (view) (annotate) - [select for diffs]
Wed Oct 29 13:19:31 2003 UTC (10 years, 5 months ago) by moore
Branch: MAIN
Changes since 1.93: +1 -7 lines
Diff to previous 1.93 , to selected 1.72
Fix bug where commands would disappear after entering them. Among
other problems, there was a problem in redisplay-output-record, which
performed a transformation on pane-viewport-region. It seems to me
that pane-viewport-region is already in the right coordinate system,
but maybe someone else can verify this assertion.

Reordered files in system.lisp so that dialog.lisp comes before
builtin-commands.lisp; accepting-values is needed before any commands
are defined.

Revision 1.93 - (view) (annotate) - [select for diffs]
Mon Oct 20 01:29:05 2003 UTC (10 years, 6 months ago) by hefner1
Branch: MAIN
Changes since 1.92: +50 -7 lines
Diff to previous 1.92 , to selected 1.72
Various changes for WITH-OUTPUT-AS-GADGET.

Here's what works:
 * Embedding gadgets in stream panes.
 * Gadget panes will be moved if their containing output record is moved,
   either directly or by moving a parent.
 * Deleting the gadget-output-record or its parents will remove the gadget.
 * Adding the gadget-output-record back into a sheet will restore the gadget.

What needs to be done:
 * Figure out how to integrate gadgets with presentations

Summary of changes:
 * Two new methods, NOTE-OUTPUT-RECORD-[GOT,LOST]-SHEET, needed to make adding
   and deleting of gadget-output-records work. They could use better names =)
 * Changes to ADD-OUTPUT-RECORD, DELETE-OUTPUT-RECORD, and CLEAR-OUTPUT-RECORD
   to support above methods.
 * Output histories now have a slot to keep track of their sheet.
 * Removed some code that had snuck into panes.lisp related to input focus and
   changable cursor shapes (which I've never comitted).
 * Made clim-stream-pane inherit sheet-multiple-child-mixin.
 * Removed redundant definition of the OUTPUT-HISTORY slot from stream panes,
   and the two uses of the PANE-OUTPUT-HISTORY accessor it defines (which
   isn't in the spec nor the vendor CLIMs AFAIK).

Also changes to the slider gadget, which I was using in my test case:
 * Wrote a COMPOSE-SPACE method to request a more appropriate size depending
   on gadget orientation.
 * Merged code in the repaint method that was duplicated for horizontal and
   verical orientations.
 * Fill the background with PANE-BACKGROUND instead of GADGET-CURRENT-COLOR.
 * Commented out slot definition in basic-gadget which caused it to get a white
   background instead of the default frmo basic-pane. There was a comment there
   about Lispworks compatibility... but hopefully no one misses this.

Revision 1.92 - (view) (annotate) - [select for diffs]
Tue Oct 7 17:12:14 2003 UTC (10 years, 6 months ago) by hefner1
Branch: MAIN
Changes since 1.91: +3 -3 lines
Diff to previous 1.91 , to selected 1.72
Fixed coord-seq breakage, in several places TRANSFORM-POSITIONS was being
called with with one arg instead of two (missing the transformation argument).

Revision 1.91 - (view) (annotate) - [select for diffs]
Wed Oct 1 21:35:27 2003 UTC (10 years, 6 months ago) by moore
Branch: MAIN
Changes since 1.90: +18 -13 lines
Diff to previous 1.90 , to selected 1.72

Support (in OpenMCL) for accepting the subforms of a form, as opposed
to blowing away the entire form in progress. Put the transform for
coord-seqs in the recording methods, not the def-grecording
macro. Fake MOP functions for OpenMCL in order to support the listener
application.

Revision 1.90 - (view) (annotate) - [select for diffs]
Fri Sep 12 20:25:14 2003 UTC (10 years, 7 months ago) by hefner1
Branch: MAIN
Changes since 1.89: +25 -16 lines
Diff to previous 1.89 , to selected 1.72
stream-output.lisp:

* When moving the cursor as part of normal stream output, modify the cursor
  X/Y slots directly, rather than using the SETF method. This prevents the
  open output record from being needlessly broken.

recording.lisp:

* TEXT-DISPLAYED-OUTPUT-RECORD-STRING seems to have rotted, fixed it up.

* Fixed bug in RECOMPUTE-EXTENT-FOR-CHANGED-CHILD, bounding rectangles are
  now correctly recomputed when a child is deleted.

Revision 1.89 - (view) (annotate) - [select for diffs]
Wed Sep 3 12:05:59 2003 UTC (10 years, 7 months ago) by hefner1
Branch: MAIN
Changes since 1.88: +5 -4 lines
Diff to previous 1.88 , to selected 1.72
In DEF-GRECORDING, call TRANSFORM-POSITIONS on the coord-seq.

Revision 1.88 - (view) (annotate) - [select for diffs]
Fri Aug 15 07:05:44 2003 UTC (10 years, 8 months ago) by gilbert
Branch: MAIN
Changes since 1.87: +29 -0 lines
Diff to previous 1.87 , to selected 1.72
New output record class for DRAW-PATTERN*.

Revision 1.87 - (view) (annotate) - [select for diffs]
Fri Aug 15 02:14:29 2003 UTC (10 years, 8 months ago) by strandh
Branch: MAIN
Changes since 1.86: +4 -4 lines
Diff to previous 1.86 , to selected 1.72
The default methods (the ones that do nothing) on the generic
functions map-over-output-records-mumble now dispatch on the class
displayed-output-record instead of on basic-output-record.

Revision 1.86 - (view) (annotate) - [select for diffs]
Sat Aug 9 01:34:01 2003 UTC (10 years, 8 months ago) by hefner1
Branch: MAIN
Changes since 1.85: +48 -39 lines
Diff to previous 1.85 , to selected 1.72
Optimizations for text output...

frames.lisp:
   Leave the stream text cursor invisible by default.

graphics.lisp:
   Make DO-GRAPHICS-WITH-OPTIONS-INTERNAL smarter about not changing the
   medium's ink, clipping region, text style, and line style, unless they've
   really changed.

panes.lisp:
   Removed some dead code (of my own).

recording.lisp:
   Rewrote RECOMPUTE-EXTENT-FOR-CHANGED-CHILD. For the most common case of
   the child growing while fully containing its original bounding rectangle,
   it is possible to compute the parent's new bounding rect without
   recomputing the extent of all the children. This is a significant
   improvement.

Revision 1.85 - (view) (annotate) - [select for diffs]
Wed Jul 30 15:10:31 2003 UTC (10 years, 8 months ago) by strandh
Branch: MAIN
Changes since 1.84: +3 -1 lines
Diff to previous 1.84 , to selected 1.72
Restore medium transformation after replay.

Revision 1.84 - (view) (annotate) - [select for diffs]
Thu Jun 26 21:34:51 2003 UTC (10 years, 10 months ago) by hefner1
Branch: MAIN
Changes since 1.83: +55 -44 lines
Diff to previous 1.83 , to selected 1.72
Christophe Rhodes' SBCL cleanups.

Revision 1.83 - (view) (annotate) - [select for diffs]
Sun Jun 8 07:14:56 2003 UTC (10 years, 10 months ago) by adejneka
Branch: MAIN
Changes since 1.82: +6 -5 lines
Diff to previous 1.82 , to selected 1.72
MEDIUM-DRAW-... around method does not reset medium coordinate
system. One of two postscript tests works again.

Revision 1.82 - (view) (annotate) - [select for diffs]
Sun Jun 8 00:34:47 2003 UTC (10 years, 10 months ago) by gilbert
Branch: MAIN
Changes since 1.81: +73 -5 lines
Diff to previous 1.81 , to selected 1.72
OUTPUT-RECORD-BASELINE
    New generic function.

COPY-TEXTUAL-OUTPUT-HISTORY
    This has a humble implementation now.

Revision 1.81 - (view) (annotate) - [select for diffs]
Sat Jun 7 21:57:12 2003 UTC (10 years, 10 months ago) by gilbert
Branch: MAIN
Changes since 1.80: +12 -3 lines
Diff to previous 1.80 , to selected 1.72
DEF-GRECORDING
    What a coord-seq-mixin is not a coord-seq but a coord-vector.
    Therefore we now convert coord-lists into coord-vectors before
    consing the output record.

Revision 1.80 - (view) (annotate) - [select for diffs]
Sat Jun 7 19:30:43 2003 UTC (10 years, 10 months ago) by hefner1
Branch: MAIN
Changes since 1.79: +2 -2 lines
Diff to previous 1.79 , to selected 1.72
Back by popular demand, traditional McCLIM presentation highlighting.

Revision 1.79 - (view) (annotate) - [select for diffs]
Thu Jun 5 04:41:51 2003 UTC (10 years, 10 months ago) by hefner1
Branch: MAIN
Changes since 1.78: +0 -3 lines
Diff to previous 1.78 , to selected 1.72
Fix to (setf CURSOR-POSITION) - if the cursor's sheet is a recording stream,
call STREAM-CLOSE-TEXT-OUTPUT-RECORD. The cursor movement functions defined
on sheets already do this, but grabbing the cursor directly and acting on it,
which a few things (named STREAM-INCREMENT-CURSOR-POSITION) do, caused things
to misbehave.

Removed an obsolete comment from recording.lisp.

Revision 1.78 - (view) (annotate) - [select for diffs]
Wed Jun 4 22:53:04 2003 UTC (10 years, 10 months ago) by hefner1
Branch: MAIN
Changes since 1.77: +1 -1 lines
Diff to previous 1.77 , to selected 1.72
Changed invoke-with-new-output-record to add the output record before invoking
the continuation. Needed this for a problem I was having with the debugger and nonlocal exits, and Gilbert needs it to fix formatting-table.

This is probably a performance hit right now, but this can change..

Revision 1.77 - (view) (annotate) - [select for diffs]
Fri May 30 19:06:36 2003 UTC (10 years, 10 months ago) by gilbert
Branch: MAIN
Changes since 1.76: +3 -1 lines
Diff to previous 1.76 , to selected 1.72
HANDLE-REPAINT (OUTPUT-RECORDING-STREAM T)
    Bug fix: When clearing the bounding rectangle of the damaged
    region als repaint it.

Revision 1.76 - (view) (annotate) - [select for diffs]
Fri May 30 04:24:16 2003 UTC (10 years, 10 months ago) by hefner1
Branch: MAIN
Changes since 1.75: +3 -3 lines
Diff to previous 1.75 , to selected 1.72
Fixed a silly bug that interfered with the address book

If the style of highlighting going on presently really annoys anyone,
I'm happy to revert it back to how it was, rather than piss anyone off. =)

Revision 1.75 - (view) (annotate) - [select for diffs]
Fri May 30 03:33:22 2003 UTC (10 years, 10 months ago) by hefner1
Branch: MAIN
Changes since 1.74: +4 -4 lines
Diff to previous 1.74 , to selected 1.72
Pedantic tweaks.

Revision 1.74 - (view) (annotate) - [select for diffs]
Fri May 30 02:23:45 2003 UTC (10 years, 10 months ago) by hefner1
Branch: MAIN
Changes since 1.73: +16 -4 lines
Diff to previous 1.73 , to selected 1.72
 * Presentation output records now ask their children to highlight
   themselves. This makes user-defined highlight methods work, and leads
   to slightly saner behavior for objects that span multiple lines.
 * Unhighlighting now works by triggering a repaint on the appropriate
   area of the sheet. This allows proper highlighting over things other
   than the background color, without using flipping ink.
 * HANDLE-REPAINT modified to restore the background color. Some work
   needs to be done here to prevent unneeded clearing of the background
   in response to expose events.

Revision 1.73 - (view) (annotate) - [select for diffs]
Wed May 28 18:59:52 2003 UTC (10 years, 10 months ago) by gilbert
Branch: MAIN
Changes since 1.72: +10 -15 lines
Diff to previous 1.72
HIGHLIGHT-OUTPUT-RECORD (OUTPUT-RECORD T T)
    We use WITH-IDENTITY-TRANSFORMATION now

COORD-SEQ-BOUNDS
    We deliberately round the coordinates to integers.

INITIALIZE-INSTANCE :AFTER (COORD-SEQ-MIXIN &KEY)
    Gone, as it was transformating the coordinates.

DEF-GRECORDING
    Before calling the next method we bind the transformation to
    +identity-transformation+ which shouldn't be neccessary and is
    probably the wrong thing to do. This is done because somebody
    further down the route transforms the coordinates again. Work in
    progress ...

Revision 1.72 - (view) (annotate) - [selected]
Sun May 25 10:37:30 2003 UTC (10 years, 11 months ago) by gilbert
Branch: MAIN
Changes since 1.71: +37 -0 lines
Diff to previous 1.71
Added INVOKE-WITH-ROOM-FOR-GRAPHICS.

Revision 1.71 - (view) (annotate) - [select for diffs]
Mon Apr 28 21:12:20 2003 UTC (10 years, 11 months ago) by mikemac
Branch: MAIN
Changes since 1.70: +3 -3 lines
Diff to previous 1.70 , to selected 1.72
CMUCL wants 0.0d0 instead of 0.0 for double-float

Revision 1.70 - (view) (annotate) - [select for diffs]
Mon Apr 28 20:29:29 2003 UTC (10 years, 11 months ago) by mikemac
Branch: MAIN
Changes since 1.69: +3 -3 lines
Diff to previous 1.69 , to selected 1.72
changed basic-output-record's x/y-position initial value to float 0.0

Revision 1.69 - (view) (annotate) - [select for diffs]
Wed Apr 16 06:01:19 2003 UTC (11 years ago) by hefner1
Branch: MAIN
Changes since 1.68: +7 -6 lines
Diff to previous 1.68 , to selected 1.72
Reworked stream functions to make string output the basic mode of operation.
The old stream-write-char has been extended to handle linewrapping of strings
and renamed seos-write-string. Line breaking logic has been extracted into
seos-write-newline. stream-write-* functions are rewritten to use these.
stream-write-output is extended. Minor fix to recording.lisp.

Revision 1.68 - (view) (annotate) - [select for diffs]
Sun Apr 13 07:53:25 2003 UTC (11 years ago) by moore
Branch: MAIN
Changes since 1.67: +1 -2 lines
Diff to previous 1.67 , to selected 1.72
Straggler from last checkin.

Revision 1.67 - (view) (annotate) - [select for diffs]
Sun Apr 13 07:15:57 2003 UTC (11 years ago) by moore
Branch: MAIN
Changes since 1.66: +21 -11 lines
Diff to previous 1.66 , to selected 1.72
Back out Andy's fix; accomplish the same thing by calling (setf
cursor-position) instead of (setf stream-cursor-position).

Replace stream-write-line with stream-write-output and remove some
gratuitous calls to make-string when outputing single characters.  For
the moment I've probably just forced them down to the medium level.
Oh well.

Start of exploration of accepting-output.

Revision 1.66 - (view) (annotate) - [select for diffs]
Sat Apr 12 06:26:02 2003 UTC (11 years ago) by hefner1
Branch: MAIN
Changes since 1.65: +3 -2 lines
Diff to previous 1.65 , to selected 1.72
Added a special *INHIBIT-RECORD-CLOSING* which is used by STREAM-WRITE-CHAR
to hint that a change in cursor position is part of normal text output and
therefore the current output record should not be closed. This fixes the
problem where every character ended up in a seperate output record, and
speeds up text redisplay noticably.

Revision 1.65 - (view) (annotate) - [select for diffs]
Thu Apr 3 14:41:42 2003 UTC (11 years ago) by mikemac
Branch: MAIN
Changes since 1.64: +1 -1 lines
Diff to previous 1.64 , to selected 1.72
extra paren removed

Revision 1.64 - (view) (annotate) - [select for diffs]
Wed Apr 2 07:48:59 2003 UTC (11 years ago) by moore
Branch: MAIN
Changes since 1.63: +176 -112 lines
Diff to previous 1.63 , to selected 1.72
Incremental redisplay lurches forward. It kind of works, though
deleted records leave holes.  I've left *enable-updating-output* false
because performance is pretty awful.  There's a couple of reasons for
this: our standard-tree-output-record isn't a tree, so scanning the
output record history for matching records is O(n^2).  Also, every
character is its own output record (gotta fix this!), so there are a
lot of records to consider.

Revision 1.63 - (view) (annotate) - [select for diffs]
Fri Mar 21 22:07:06 2003 UTC (11 years, 1 month ago) by mikemac
Branch: MAIN
Changes since 1.62: +1 -1 lines
Diff to previous 1.62 , to selected 1.72
make all code lowercase for ACL's java mode - leave gensyms alone

Revision 1.62 - (view) (annotate) - [select for diffs]
Fri Mar 21 21:36:59 2003 UTC (11 years, 1 month ago) by mikemac
Branch: MAIN
Changes since 1.61: +1 -1 lines
Diff to previous 1.61 , to selected 1.72
make all of the package names passed to in-package be lowercase keywords for ACL's java mode

Revision 1.61 - (view) (annotate) - [select for diffs]
Fri Mar 21 15:15:08 2003 UTC (11 years, 1 month ago) by mikemac
Branch: MAIN
Changes since 1.60: +2 -2 lines
Diff to previous 1.60 , to selected 1.72
make all #+/#- conditionals lowercase for ACLs java mode

Revision 1.60 - (view) (annotate) - [select for diffs]
Tue Mar 18 16:52:33 2003 UTC (11 years, 1 month ago) by gilbert
Branch: MAIN
Changes since 1.59: +21 -0 lines
Diff to previous 1.59 , to selected 1.72
A workaround to keep CMUCL's PCL happy with COMPLETE-MEDIUM-STATE.

I chose not to move DEFCLASS forms this time, because I hate to be
censored by random implementation bugs.

Question: Should we more aggressively patch DEFCLASS to just define
forward reference classes to be redefined?

Revision 1.59 - (view) (annotate) - [select for diffs]
Fri Mar 14 13:47:46 2003 UTC (11 years, 1 month ago) by gilbert
Branch: MAIN
Changes since 1.58: +33 -5 lines
Diff to previous 1.58 , to selected 1.72
REPLAY-OUTPUT-RECORD compound-output-record
    - we setup the medium's clipping region to the region replayed
    - the default region is the visible region of the stream

SET-MEDIUM-GRAPHICS-STATE :after ((state gs-clip-mixin) medium)
    - disabled, please see comment.

(setf output-record-position) :around nx ny (record coord-seq-mixin)
    - bug fix: moved a paren

Revision 1.58 - (view) (annotate) - [select for diffs]
Thu Mar 13 06:55:27 2003 UTC (11 years, 1 month ago) by strandh
Branch: MAIN
Changes since 1.57: +1 -5 lines
Diff to previous 1.57 , to selected 1.72
Removed border calculation from the :after method of initialize instance for
output records.  That calculation used a line style not always present in
the output record.  Verified that no @body uses this border calculation.

Revision 1.57 - (view) (annotate) - [select for diffs]
Tue Jan 28 08:17:41 2003 UTC (11 years, 2 months ago) by moore
Branch: MAIN
Changes since 1.56: +662 -298 lines
Diff to previous 1.56 , to selected 1.72
Output record values are stored in stream coordinates, not user (post
medium transformation) coordinates.

All medium state values are stored in output records by individual
mixin classes that are assembled for each output record type.

Medium parameters are only set in replay-output-record, not set and
restored.  Medium values are set/restored in replay.

Checkpoint of incremental redisplay, currently disabled.

Implement match-output-record.

Revision 1.56 - (view) (annotate) - [select for diffs]
Wed Nov 20 16:27:43 2002 UTC (11 years, 5 months ago) by gilbert
Branch: MAIN
Changes since 1.55: +2 -2 lines
Diff to previous 1.55 , to selected 1.72
Fix of _some_ instances of symbol name creation via FORMAT.
Further I deleted the "nifty" version of EVENT-TYPE.

Revision 1.55 - (view) (annotate) - [select for diffs]
Mon Nov 11 01:02:22 2002 UTC (11 years, 5 months ago) by moore
Branch: MAIN
Changes since 1.54: +8 -0 lines
Diff to previous 1.54 , to selected 1.72
3 sets of additions/changes/fixes:
presentation-replace-input

Bugs I fixed while at ILC, including implementing accept-from-string.

Fixes made in the course of getting cl-reversi to work (it mostly does
modulo display timing issues).  This includes a revamping of command
tables, menus and keystrokes.

Revision 1.54 - (view) (annotate) - [select for diffs]
Tue Sep 24 01:56:30 2002 UTC (11 years, 7 months ago) by moore
Branch: MAIN
Changes since 1.53: +105 -97 lines
Diff to previous 1.53 , to selected 1.72
Fixed bug reported by Paul Werkowski; coordinate sequences can now be
lists or vectors.  Introduced a do-sequence macro that has similar
semantics to dotimes and dolist as well as features of map-sequence.

Implemented frame-state (except for :shrunk).  Changed timing of when
frames are generated, adopted and enabled to follow the spec.  Fixed
clim-fig to adapt to this new world order.  Disable the frame when the
top level function exits.

Remove erroring methods for copy-to-pixmap (stream ...) and friends.

Wrote a with-keywords-removed macro that attempts to be efficient
about about removing arguments from argument lists.

Revision 1.53 - (view) (annotate) - [select for diffs]
Sat Jul 20 06:47:26 2002 UTC (11 years, 9 months ago) by adejneka
Branch: MAIN
Changes since 1.52: +58 -33 lines
Diff to previous 1.52 , to selected 1.72
* Bounding rectangle size for :BEVEL line joint shape.

Revision 1.52 - (view) (annotate) - [select for diffs]
Fri Jul 19 06:42:49 2002 UTC (11 years, 9 months ago) by adejneka
Branch: MAIN
Changes since 1.51: +51 -34 lines
Diff to previous 1.51 , to selected 1.72
Computation of size of standard polygon output records takes into
account MEDIUM-MITER-LIMIT.

Revision 1.51 - (view) (annotate) - [select for diffs]
Tue Jul 2 05:18:06 2002 UTC (11 years, 9 months ago) by adejneka
Branch: MAIN
Changes since 1.50: +44 -6 lines
Diff to previous 1.50 , to selected 1.72
* Partially fixed computation of a bounding rectangle of a polygon.

Revision 1.50 - (view) (annotate) - [select for diffs]
Fri Jun 21 03:24:53 2002 UTC (11 years, 10 months ago) by adejneka
Branch: MAIN
Changes since 1.49: +6 -2 lines
Diff to previous 1.49 , to selected 1.72
Minor cleanup.

Revision 1.49 - (view) (annotate) - [select for diffs]
Sun Jun 16 06:52:08 2002 UTC (11 years, 10 months ago) by adejneka
Branch: MAIN
Changes since 1.48: +83 -70 lines
Diff to previous 1.48 , to selected 1.72
* WITH-NEW-OUTPUT-RECORD, WITH-OUTPUT-TO-OUTPUT-RECORD: RECORD
  argument is evaluated.

* ERASE-OUTPUT-RECORD: Do not record cleaning of the background.

Revision 1.48 - (view) (annotate) - [select for diffs]
Sun Jun 16 03:28:30 2002 UTC (11 years, 10 months ago) by adejneka
Branch: MAIN
Changes since 1.47: +29 -39 lines
Diff to previous 1.47 , to selected 1.72
Used new LETF.

Revision 1.47 - (view) (annotate) - [select for diffs]
Sat Jun 15 11:35:29 2002 UTC (11 years, 10 months ago) by adejneka
Branch: MAIN
Changes since 1.46: +198 -155 lines
Diff to previous 1.46 , to selected 1.72
* Removed bogus (DEFGENERIC COPY-TEXTUAL-OUTPUT-HISTORY).

* More accurate treating of O-R-PARENT.

* Functions modifying O-R extents now return the record argument.

* ...-RECOMPUTE-EXTENT-... copy mutable regions.

* STANDARD-TEXT-D-O-R saves ink and clipping region.

* INVOKE-WITH-{NEW,OUTPUT-TO}-O-R: Removed :PARENT argument.

Revision 1.46 - (view) (annotate) - [select for diffs]
Fri Jun 14 06:15:49 2002 UTC (11 years, 10 months ago) by adejneka
Branch: MAIN
Changes since 1.45: +694 -602 lines
Diff to previous 1.45 , to selected 1.72
* Cleanup.

Revision 1.45 - (view) (annotate) - [select for diffs]
Sun Jun 9 15:37:51 2002 UTC (11 years, 10 months ago) by adejneka
Branch: MAIN
Changes since 1.44: +3 -0 lines
Diff to previous 1.44 , to selected 1.72
* Added some comments

Revision 1.44 - (view) (annotate) - [select for diffs]
Tue Jun 4 07:49:03 2002 UTC (11 years, 10 months ago) by adejneka
Branch: MAIN
Changes since 1.43: +53 -21 lines
Diff to previous 1.43 , to selected 1.72
* DEF-GRECORDING: in the computation of output record sizes
  distinguish between areas and paths; use
  LINE-STYLE-EFFECTIVE-LINE-THICKNESS.

Revision 1.43 - (view) (annotate) - [select for diffs]
Mon Jun 3 02:15:59 2002 UTC (11 years, 10 months ago) by adejneka
Branch: MAIN
Changes since 1.42: +53 -1 lines
Diff to previous 1.42 , to selected 1.72
* [INVOKE-]WITH-OUTPUT-TO-OUTPUT-RECORD: implemented.

Revision 1.42 - (view) (annotate) - [select for diffs]
Sat May 25 06:26:53 2002 UTC (11 years, 11 months ago) by adejneka
Branch: MAIN
Changes since 1.41: +1 -1 lines
Diff to previous 1.41 , to selected 1.72
* WITH-NEW-OUTPUT-RECORD: In continuation declare all argument as ignorable.

Revision 1.41 - (view) (annotate) - [select for diffs]
Thu May 23 04:12:04 2002 UTC (11 years, 11 months ago) by adejneka
Branch: MAIN
Changes since 1.40: +44 -45 lines
Diff to previous 1.40 , to selected 1.72
* Reformatted.

* MAKE-MERGED-MEDIUM: Deleted.

* DEF-GRECORDING/REPLAY-OUTPUT-RECORD: Reuse medium.

Revision 1.40 - (view) (annotate) - [select for diffs]
Mon May 20 20:18:04 2002 UTC (11 years, 11 months ago) by mikemac
Branch: MAIN
Changes since 1.39: +2 -0 lines
Diff to previous 1.39 , to selected 1.72
clean up a bunch of ACL compiler warnings

Revision 1.39 - (view) (annotate) - [select for diffs]
Sat May 18 07:05:51 2002 UTC (11 years, 11 months ago) by moore
Branch: MAIN
Changes since 1.38: +53 -78 lines
Diff to previous 1.38 , to selected 1.72
The most visible change is that argument prompts are displayed in
line.  Input editing on the prompt strings is a bit shaky (it should
be disallowed).  Commands for \C-u and \C-k are now implemented.

	* Goatee/buffer.lisp: Implement extents.
	* input-editing.lisp (noise-string-property,
	noise-string-start-property, *noise-string*,
	*noise-string-start*): Markers in the input buffer for noise
	strings.
	(stream-read-gesture): Skip over noise strings.
	* Goatee/editable-buffer.lisp (editable-buffer): subclass
	extent-buffer-mixin.
	(line-last-point): Move into buffer.lisp.
	(forward-char*): Fix bugs.
	(map-over-region, delete-region, clear-buffer): New functions.
	* Goatee/editing-stream.lisp (noise-extent). New class.
	(make-input-editing-stream-snapshot): Record noise extents in
	input buffer.
	(offset-location*, replace-input): Various bugs.
	(input-editor-format): Write to Goatee buffer inside a noise
	extent.

	* presentations.lisp (default-describe-presentation-type):  Don't
	prepend an article when plural count is nil.
	(presentation method accept (string)): Handle default.

	* recording.lisp : Reimplement standard-sequence-output-record as
	an array so we can support the proper orders of
	map-over-records-containing-position and
	map-over-records-overlapping-region.
	* Examples/clim-fig.lisp: (com-undo, com-clear): Fix assumptions
	about output record being a list.
	* Goatee/clim-area.lisp (add-output-record, delete-output-record,
	clear-output-record, map-over-records-containing-position,
	map-over-records-overlapping-region): Implement functions that
	used to be defaulted by superclass.

	* Goatee/goatee-command.lisp (clear-input-buffer, kill-line): New
	commands.

Revision 1.38 - (view) (annotate) - [select for diffs]
Sun Apr 28 11:17:07 2002 UTC (11 years, 11 months ago) by gilbert
Branch: MAIN
Changes since 1.37: +1 -4 lines
Diff to previous 1.37 , to selected 1.72
Besides some support for enabled/disabled sheets in panes.lisp and removal
of some unused code, the most notable change is:

- removal of all method defintions like
  (defmethod handle-event ((foo foo-pane) (event window-repaint-event))
    (repaint-sheet foo (event-region event))

- Switched last remaining REPAINT-SHEET methods into HANDLE-REPAINT, since
  HANDLE-REPAINT is where you define repainting. REPAINT-SHEET is for forcing
  a repaint not for implementing a repaint. [Although I am German my reading
  comprehension should be just good enough to understand the relevant chapter
  of the specification].
  This breaks CLIM-FIG again, refer to my posting to the mailing list.

Revision 1.37 - (view) (annotate) - [select for diffs]
Sun Apr 28 05:13:57 2002 UTC (11 years, 11 months ago) by strandh
Branch: MAIN
Changes since 1.36: +1 -4 lines
Diff to previous 1.36 , to selected 1.72
Removed superfluous use of (with-bounding-rectangle* (min-x min-y
max-x max-y) child in :before method of add-output-record.  This
generated a compiler warning that min-x, min-y, max-x, and max-y were
defined but not used.

Removed IGNORE declaration of STREAM in :around methods of
scroll-vertical and scroll-horizontal.  CMUCL considers specialized
variables to be used, so the compiler generated a warning that a
variable declared IGNORE was used anyway.

Three warnings (about setf-fbound) still remain, but Tim said he would
look into those.

Revision 1.36 - (view) (annotate) - [select for diffs]
Fri Apr 26 17:54:37 2002 UTC (12 years ago) by moore
Branch: MAIN
Changes since 1.35: +8 -11 lines
Diff to previous 1.35 , to selected 1.72
Fix various problems found by Robert.

Repair and/or eliminate a bunch of dynamic-extent declarations that I
screwed up.

Revision 1.35 - (view) (annotate) - [select for diffs]
Fri Apr 19 22:27:09 2002 UTC (12 years ago) by moore
Branch: MAIN
Changes since 1.34: +41 -13 lines
Diff to previous 1.34 , to selected 1.72
Make a global choice, based on multiprocessing or not, whether events
should be handled immediately or queued up to be serviced by another
process.  The choice is implemented by the classes
clim-sheet-input-mixin and clim-repainting-mixin, from which all panes
inherit.  These classes' superclasses are conditionalized on whether or
not the implementation is capable of multiprocessing.

When multiprocessing there is a single event queue per frame.  This is
implemented by queue-event on pane classes.

The event loop is implemented in stream-input-wait.  In single
processing mode, stream-input-wait calls process-next-event and
handles events immediately.  When multiprocessing, stream-input-wait
reads events from the frame event queue and handles them.  The
function clim-extensions:simple-event-loop is supplied for
applications which do not loop reading from a stream; various examples
have been changed to use it.

In stream-read-gesture/stream-input-wait the input-wait-test function
is not expected to block anymore; nor is the input-wait-handler
expected to dispatch events.  input-wait-handler is responsible for
consuming events that should not be seen by anyone
else. input-context-wait-test and highlight-applicable-presentation
have been rewritten to reflect this.

The adjustable-array buffer for extended-input-streams has been added
back in.  A typo in %event-matches-gesture has been fixed.

Default methods for map-over-output-records-containing-position and
map-over-output-records-overlapping-region have been added.

The cursor implementation has been broken out into a cursor-mixin so I
can snarf it for Goatee :)

Revision 1.34 - (view) (annotate) - [select for diffs]
Wed Apr 3 02:36:59 2002 UTC (12 years ago) by moore
Branch: MAIN
Changes since 1.33: +242 -146 lines
Diff to previous 1.33 , to selected 1.72
Fix to updating-output macro to make it work with CMUCL.
New maxf and minf modify macros.
Overhaul of recording.lisp:
fix typo of map-over-overlaping-region -> map-over-overlapping-region
Suppress recompute-extent-for-changed-child when setffing
output-record-position
Strictly separate class structure into protocol classes and implementation
classes

Revision 1.33 - (view) (annotate) - [select for diffs]
Mon Feb 11 21:47:49 2002 UTC (12 years, 2 months ago) by gilbert
Branch: MAIN
Changes since 1.32: +6 -6 lines
Diff to previous 1.32 , to selected 1.72
%SHEET-MEDIUM instead of SHEET-MEDIUM.
%MEDIUM-SHEET instead of MEDIUM-SHEET.

Revision 1.32 - (view) (annotate) - [select for diffs]
Sat Jan 5 05:38:48 2002 UTC (12 years, 3 months ago) by moore
Branch: MAIN
Changes since 1.31: +3 -1 lines
Diff to previous 1.31 , to selected 1.72
Context-sensitive presentations (sans translators) and highlighting.
Fix pointer-event-[xy] to use the sheet native transformation correctly.
Check out the presentation-test demo; not much, but I think it's cool :)

Revision 1.31 - (view) (annotate) - [select for diffs]
Tue Jan 1 20:14:12 2002 UTC (12 years, 3 months ago) by moore
Branch: MAIN
Changes since 1.30: +2 -1 lines
Diff to previous 1.30 , to selected 1.72
Rudimentary implementation of accept, with one accept method (for reals) and
an example.  Split views out into another file so that +textual-view+ can be
referenced in the streams code.

Revision 1.30 - (view) (annotate) - [select for diffs]
Tue Dec 4 16:19:19 2001 UTC (12 years, 4 months ago) by mikemac
Branch: MAIN
Changes since 1.29: +12 -7 lines
Diff to previous 1.29 , to selected 1.72
remove compiler warnings for ACL

Revision 1.29 - (view) (annotate) - [select for diffs]
Wed Nov 14 22:25:51 2001 UTC (12 years, 5 months ago) by mikemac
Branch: MAIN
Changes since 1.28: +1 -1 lines
Diff to previous 1.28 , to selected 1.72
updated copyright dates for me

Revision 1.28 - (view) (annotate) - [select for diffs]
Wed Nov 14 15:19:22 2001 UTC (12 years, 5 months ago) by mikemac
Branch: MAIN
Changes since 1.27: +24 -14 lines
Diff to previous 1.27 , to selected 1.72
add-string-... should append the string to the existing text-record. MAJOR speed improvement

Revision 1.27 - (view) (annotate) - [select for diffs]
Thu Oct 25 19:34:26 2001 UTC (12 years, 6 months ago) by mikemac
Branch: MAIN
Changes since 1.26: +3 -1 lines
Diff to previous 1.26 , to selected 1.72
displaced arrays need the same element type as the original array

Revision 1.26 - (view) (annotate) - [select for diffs]
Thu Aug 23 05:33:33 2001 UTC (12 years, 8 months ago) by strandh
Branch: MAIN
Changes since 1.25: +11 -14 lines
Diff to previous 1.25 , to selected 1.72
Redefined text-style-{ascent,descent,height,width} to conform to
specification and changed all invocations.  Removed local variable
`port' in :around functions for stream-write-xxx in recording.lisp as
it is no longer necessary with the new definition of these functions.

There were two methods port-character-width on a clx-port used by
stream-character-width and character-width on a generic port (a
fall-through method) which was never used.  I renamed character-width
to port-character-width and made its signature identical to that of
port-character-width.

To be consistent with port-character-width above, I renamed the
generic function line-height, which is now called port-line-height.
There is currently only one method on it, the fall-through method on a
generic port, which is OK I guess since it is currently never called.

Revision 1.25 - (view) (annotate) - [select for diffs]
Wed Aug 1 12:52:01 2001 UTC (12 years, 8 months ago) by rouanet
Branch: MAIN
Changes since 1.24: +0 -41 lines
Diff to previous 1.24 , to selected 1.72
Moved the LETF macro from recording.lisp to utils.lisp

Revision 1.24 - (view) (annotate) - [select for diffs]
Tue Jul 31 04:49:52 2001 UTC (12 years, 8 months ago) by adejneka
Branch: MAIN
Changes since 1.23: +1 -4 lines
Diff to previous 1.23 , to selected 1.72
* Undone previous erroneous change of REPLAY to be a generic function.

Revision 1.23 - (view) (annotate) - [select for diffs]
Mon Jul 30 14:08:41 2001 UTC (12 years, 8 months ago) by rouanet
Branch: MAIN
Changes since 1.22: +24 -23 lines
Diff to previous 1.22 , to selected 1.72
Modified the code to make use of the newly implemented setf* facility.

Revision 1.22 - (view) (annotate) - [select for diffs]
Mon Jul 30 05:44:26 2001 UTC (12 years, 8 months ago) by adejneka
Branch: MAIN
Changes since 1.21: +237 -115 lines
Diff to previous 1.21 , to selected 1.72
* UNWIND-PROTECT replaced with LETF.

* Some documentation, type declarations added.

* REPLAY: Become a method; switches off cursor; remembers and restores
  cursor position.

* TREE-RECOMPUTE-EXTENT: Updating of parent is implemented in :AROUND method.

* TEXT-DISPLAYED-OUTPUT-RECORD class: Fixed computation of bounding
  rectangle (it does not coincide with a rectangle given by text
  cursor positions).

* REPLAY-OUTPUT-RECORD (TEXT-DISPLAYED-OUTPUT-RECORD): Use stream
  operations instead of direct medium manipulation.

* Text related stream methods are now specialized for
  STANDARD-OUTPUT-RECORDING-STREAM instead of OUTPUT-RECORDING-STREAM.

* Now calls of STREAM-WRITE-LINE are recorded instead of
  STREAM-WRITE-CHAR and STREAM-WRITE-STRING.

Revision 1.21 - (view) (annotate) - [select for diffs]
Sat Jul 28 09:03:37 2001 UTC (12 years, 8 months ago) by adejneka
Branch: MAIN
Changes since 1.20: +115 -26 lines
Diff to previous 1.20 , to selected 1.72
* Added declarations of generic functions.

* REPLAY, SETF*-STREAM-CURSOR-POSITION: Added call of
  STREAM-CLOSE-TEXT-OUTPUT-RECORD.

* ERASE-OUTPUT-RECORD: Missing argument ERRORP added.

* SETF*-OUTPUT-RECORD-POSITION (T T STANDARD-SEQUENCE-OUTPUT): Don't
  explicitly move bounding box.

* When setting coordinates, use coercion.

* TREE-RECOMPUTE-EXTENT (TEXT-DISPLAYED-OUTPUT-RECORD): Fixed
  computation of string length.

* STREAM-TEXT-OUTPUT-RECORD: Fixed type.

* STREAM-WRITE-STRING: Temporarily disabled.

* Extra ) deleted.

Revision 1.20 - (view) (annotate) - [select for diffs]
Fri Jul 27 09:20:58 2001 UTC (12 years, 9 months ago) by adejneka
Branch: MAIN
Changes since 1.19: +129 -56 lines
Diff to previous 1.19 , to selected 1.72
* INVOKE-WITH-OUTPUT-RECORDING-OPTIONS, INVOKE-WITH-NEW-OUTPUT-RECORD,
  STREAM-FINISH-OUTPUT, STREAM-FORCE-OUTPUT, STREAM-TERPRI: Added call
  to STREAM-CLOSE-TEXT-OUTPUT-RECORD.

* TREE-RECOMPUTE-EXTENT (TEXT-DISPLAYED-OUTPUT-RECORD ...): Added
  checking of existance of parent.

* TEXT-DISPLAYED-OUTPUT-RECORD: Added positioning.

* ADD-STRING-OUTPUT-TO-TEXT-RECORD: Fixed computation of bounding rectangle.

* GET-TEXT-RECORD: Removed.

* STREAM-TEXT-OUTPUT-RECORD, STREAM-CLOSE-TEXT-OUTPUT-RECORD,
  STREAM-ADD-CHARACTER-OUTPUT, STREAM-ADD-STRING-OUTPUT,
  STREAM-WRITE-STRING: Implemented methods for OUTPUT-RECORDING-STREAM.

* STREAM-WRITE-CHAR (OUTPUT-RECORDING-STREAM): Use STREAM-ADD-CHARACTER-OUTPUT.

Revision 1.19 - (view) (annotate) - [select for diffs]
Thu Jul 26 03:32:48 2001 UTC (12 years, 9 months ago) by adejneka
Branch: MAIN
Changes since 1.18: +1 -2 lines
Diff to previous 1.18 , to selected 1.72
* WITH-NEW-OUTPUT-RECORD: Declaration fixed.

Revision 1.18 - (view) (annotate) - [select for diffs]
Wed Jul 25 13:01:26 2001 UTC (12 years, 9 months ago) by rouanet
Branch: MAIN
Changes since 1.17: +52 -44 lines
Diff to previous 1.17 , to selected 1.72
The position of an output record is now defined as the position of the
upper-left corner of its bounding rectangle.

Revision 1.17 - (view) (annotate) - [select for diffs]
Tue Jul 24 02:25:18 2001 UTC (12 years, 9 months ago) by adejneka
Branch: MAIN
Changes since 1.16: +9 -5 lines
Diff to previous 1.16 , to selected 1.72
* DRAW-RECTANGLE*-OUTPUT-RECORD, DRAW-ELLIPSE-OUTPUT-RECORD: Fixed
  computation of bounding rectangles

Revision 1.16 - (view) (annotate) - [select for diffs]
Sun Jul 22 07:52:33 2001 UTC (12 years, 9 months ago) by adejneka
Branch: MAIN
Changes since 1.15: +100 -30 lines
Diff to previous 1.15 , to selected 1.72
* SETF*-OUTPUT-RECORD-POSITION :AROUND: Call
  RECOMPUTE-EXTENT-FOR-CHANGED-CHILD only if record has a parent

* STREAM-ADD-OUTPUT-RECORD: Add to the current record, not to the history

* WITH-OUTPUT-RECORDING-OPTIONS: Reimplemented through
  INVOKE-WITH-OUTPUT-RECORDING-OPTIONS

* INVOKE-WITH-OUTPUT-RECORDING-OPTIONS: New method

* WITH-NEW-OUTPUT-RECORD: New macro

* INVOKE-WITH-NEW-OUTPUT-RECORD: New method

* Added support of OUTPUT-RECORD-POSITION in replaying, computations of
  bounding boxes

Revision 1.15 - (view) (annotate) - [select for diffs]
Sat Jul 21 05:17:48 2001 UTC (12 years, 9 months ago) by adejneka
Branch: MAIN
Changes since 1.14: +5 -7 lines
Diff to previous 1.14 , to selected 1.72
* DRAW-RECTANGLE*-OUTPUT-RECORD, DRAW-ELLIPSE*-OUTPUT-RECORD: Fixed
  computation of the boinding box

Revision 1.14 - (view) (annotate) - [select for diffs]
Sat Jul 21 03:53:12 2001 UTC (12 years, 9 months ago) by adejneka
Branch: MAIN
Changes since 1.13: +38 -25 lines
Diff to previous 1.13 , to selected 1.72
* MAKE-MERGED-MEDIUM: Fixed clipping region setting

* DEF-GRECORDING: Fixed clipping region computation

* DRAW-...-OUTPUT-RECORD: Calculating bounding boxes, take into
  account transformation (partially done)

Revision 1.13 - (view) (annotate) - [select for diffs]
Mon Jul 16 14:19:34 2001 UTC (12 years, 9 months ago) by rouanet
Branch: MAIN
Changes since 1.12: +10 -4 lines
Diff to previous 1.12 , to selected 1.72
Fixed a bug in map-over-output-records-overlaping-region and
output-record-refined-sensitivity-test.

Revision 1.12 - (view) (annotate) - [select for diffs]
Mon Jul 9 17:18:13 2001 UTC (12 years, 9 months ago) by rouanet
Branch: MAIN
Changes since 1.11: +9 -7 lines
Diff to previous 1.11 , to selected 1.72
- Extended the bounding-box of graphics-displayed-output-records to
  take line-thickness into account;

- Transmitted exposed region to repaint-sheet in order to replay only
  relevants output-records (possibly clipped).

Revision 1.11 - (view) (annotate) - [select for diffs]
Sat Jul 7 13:06:04 2001 UTC (12 years, 9 months ago) by rouanet
Branch: MAIN
Changes since 1.10: +227 -141 lines
Diff to previous 1.10 , to selected 1.72
Partially rewrote Output Recording to conform to specification.

Changes include:
  - output-record and displayed-output-record are now separated classes
    (only instances of output-record have children);
  - Computing of bounding box extent is now handled correctly;
  - replay doesn't `replay' when drawing-p is nil;
  - All graphics-displayed-output-record now seems to work (including
    output recording of draw-text);
  - Removed a bug in recording of draw-point, draw-text and draw-line:
    slots x1, y1, x2 and y2 used to store line coordinates used to be
    overwritten by bounding box. Same problem for x and y which are used
    to store position.

Remaining things to do:
  - standard-tree-output-record is currently the same as
    standard-sequence-output-record;
  - Positions of output records are not handled yet.
  - ...
----------------------------------------------------------------------
stream-output.lisp CVS:
----------------------------------------------------------------------

Revision 1.10 - (view) (annotate) - [select for diffs]
Sat Jan 20 22:34:39 2001 UTC (13 years, 3 months ago) by cvs
Branch: MAIN
Changes since 1.9: +16 -16 lines
Diff to previous 1.9 , to selected 1.72
bug fixes by Paul Werkowski

Revision 1.9 - (view) (annotate) - [select for diffs]
Sat Dec 2 07:56:07 2000 UTC (13 years, 4 months ago) by cvs
Branch: MAIN
Changes since 1.8: +25 -8 lines
Diff to previous 1.8 , to selected 1.72
update bounding region of output-records

Revision 1.8 - (view) (annotate) - [select for diffs]
Fri Dec 1 00:31:28 2000 UTC (13 years, 4 months ago) by cvs
Branch: MAIN
Changes since 1.7: +54 -50 lines
Diff to previous 1.7 , to selected 1.72
  Rewrote stream-write-char and output recording of text. It seems to work now!!!
(What's displayed originally and what's rdisplayed match. Wrapping and vertical
scrolling also appear correct.)

Revision 1.7 - (view) (annotate) - [select for diffs]
Wed Nov 29 19:47:42 2000 UTC (13 years, 4 months ago) by cvs
Branch: MAIN
Changes since 1.6: +41 -19 lines
Diff to previous 1.6 , to selected 1.72
more output history work -- still not right but closer

Revision 1.6 - (view) (annotate) - [select for diffs]
Mon Nov 6 23:50:29 2000 UTC (13 years, 5 months ago) by cvs
Branch: MAIN
Changes since 1.5: +39 -22 lines
Diff to previous 1.5 , to selected 1.72
more work on text-output-record's. stream-write-char is close to correct.
stream-write-string doesn't handle #\newline's in the middle of string yet.

Revision 1.5 - (view) (annotate) - [select for diffs]
Thu Nov 2 00:12:13 2000 UTC (13 years, 5 months ago) by cvs
Branch: MAIN
Changes since 1.4: +74 -39 lines
Diff to previous 1.4 , to selected 1.72
reworking output history - doesn't handle CR correct yet

Revision 1.4 - (view) (annotate) - [select for diffs]
Fri Aug 25 16:10:45 2000 UTC (13 years, 8 months ago) by cvs
Branch: MAIN
Changes since 1.3: +2 -0 lines
Diff to previous 1.3 , to selected 1.72
Added copyright notice to reflect modifications.

Revision 1.3 - (view) (annotate) - [select for diffs]
Thu Jul 13 14:28:19 2000 UTC (13 years, 9 months ago) by cvs
Branch: MAIN
Changes since 1.2: +20 -20 lines
Diff to previous 1.2 , to selected 1.72
Changed slot names x-min, x-max, y-min, y-max to x1, x2, y1, y2 to
correspond to those of Gilbert's bounding rectangle.

Revision 1.2 - (view) (annotate) - [select for diffs]
Mon Jun 12 12:33:15 2000 UTC (13 years, 10 months ago) by cvs
Branch: MAIN
Changes since 1.1: +4 -5 lines
Diff to previous 1.1 , to selected 1.72
Change order of arguments to text-style- functions to conform to
specification.

Convert first argument to `intern' using `symbol-name' to conform to
ANSI Common Lisp.

Revision 1.1.1.1 - (view) (annotate) - [select for diffs] (vendor branch)
Thu Jun 8 22:01:12 2000 UTC (13 years, 10 months ago) by mikemac
Branch: initial
CVS Tags: start
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 , to next main 1.145 , to selected 1.72
Initial check-in

Revision 1.1 - (view) (annotate) - [select for diffs]
Thu Jun 8 22:01:12 2000 UTC (13 years, 10 months ago) by mikemac
Branch: MAIN
Branch point for: initial
Diff to selected 1.72
Initial revision

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

  ViewVC Help
Powered by ViewVC 1.1.5