Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Annotation of /sml/trunk/src/eXene/CHANGES
ViewVC logotype

Annotation of /sml/trunk/src/eXene/CHANGES

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1350 - (view) (download)

1 : jhr 704 eXene-1.0
2 : monnier 2 ------------------------
3 :    
4 :     GLOBAL CHANGES
5 : mblume 1350 - fixed code that broke because of Basis API changes (slices)
6 :     [2003-09-03]
7 :    
8 : jhr 1188 - compiles again under 110.33+ (library name is $/eXene.cm)
9 :     [2001-06-20]
10 :    
11 : monnier 2 - changed uses of System.Unsafe.
12 :     [07/11/97]
13 :    
14 :     - various minor changes to track basis clean-up in SML/NJ.
15 :     [06/11/97]
16 :    
17 :     - various minor changes to conform with SML'97 type sharing rules.
18 :     [05/22/97]
19 :    
20 :     - various minor changes to use Real.== instead of polymorphic equality
21 :     (which doesn't work anymore).
22 :     [12/10/96]
23 :    
24 :     - modified sources to compile against SML'96 and the latest version of CML.
25 :     [08/01/96]
26 :    
27 :     STYLES
28 : jhr 704 - fixed bug in parsing code (space between resource name and ":" was not
29 :     accepted.
30 :     [06/14/99]
31 :    
32 : monnier 2 - fixed bug in parsing code.
33 :     [04/07/97]
34 :    
35 :     GRAPHICS UTILITIES
36 : monnier 29 - created the GetDpy structure to provide support for getting the
37 :     display and authentication information for an application. This
38 :     code was taken from the RunEXene structure in the widget utilities.
39 :     [01/27/98]
40 :    
41 : monnier 2 - fixed alignment bug in X authorization code.
42 :     [04/07/97]
43 :    
44 :     LIBRARY CHANGES
45 : jhr 1188 - Fixed bug in XTime.toReal; it did not handle large time values.
46 :     [2001-10-24]
47 :    
48 : jhr 704 - Added code to make the leycode to keysym translation bulletproof (some
49 :     X servers seem to generate bogus keycodes in some situations).
50 :     [09/14/99]
51 :    
52 :     - Fixed some bugs in the implementation of selections and modified the
53 :     interface to support interaction with applications that use CurrentTime
54 :     in their selection requests (this goes against the ICCC spec).
55 :     [07/12/99]
56 :    
57 : monnier 289 - Fixed bug in ICCC signature, where the wrong type name was being used
58 :     for windows in some places.
59 :     [05/19/99]
60 :    
61 : monnier 2 - Fixed a bug introduced in SML/NJ 109.30, where the open connection
62 :     request had bogus data in it.
63 :     [08/11/97]
64 :    
65 :     - Fixed a bug in the encoding of PolyText8 requests.
66 :     [04/08/97]
67 :    
68 :     - One can now use symbolic host names when connecting to servers.
69 :     [08/01/96]
70 :    
71 :     WIDGET CHANGES
72 : jhr 1188 - New Scrollbar implementation from Allen Stoughton that fixes various
73 :     problems.
74 :     [2002-03-12]
75 :    
76 : monnier 139 - Removed old-style imperative type variables from signatures in 2D structured
77 :     graphics library.
78 :     [07/15/98]
79 :    
80 :     - Added 2D structured graphics canvas widget (widgets/fancy/2d-graphics).
81 : monnier 106 [05/22/98]
82 :    
83 : monnier 2 - Added RunEXene.parseDisplay.
84 :     [04/07/97]
85 :    
86 :     - RunEXene.run and RunEXene.runWArgs now look for the DISPLAY shell variable
87 :     instead of EXENE_DISPLAY.
88 :     [08/01/96]
89 :    
90 :    
91 : jhr 704 eXene-0.5
92 : monnier 2 ------------------------
93 :    
94 :     GLOBAL CHANGES
95 :     - modified sources to use the Char and String interfaces from the
96 :     new standard basis.
97 :     [11/15/94]
98 :    
99 :     LIBRARY CHANGES
100 :     - added partial fix to handle sequence numbers > 2^16; still need to synchronize
101 :     with server when # of requests greatly exceeds replies.
102 :     [02/01/95]
103 :    
104 :     - add clause to catch Fail exceptions in the wrapper code for XDebug.xspawn.
105 :     [12/06/94]
106 :    
107 :     - added charWidth to the Font structure, and cleaned up the various
108 :     width computing functions in lib/window/font-base.sml.
109 :     [11/26/94]
110 :    
111 :     - added withdrawWin to eXeneWin for ICCC-compliant unmapping of top-level
112 :     windows.
113 :     [11/09/94]
114 :    
115 :     - added rgbOfColor to eXeneBase for extracting the RGB of a color so that
116 :     the shading colors (for 3D) can be computed.
117 :     [09/21/94]
118 :    
119 :     - fixed a bug in protocol/xdisplay.sml, where the connection file descriptor
120 :     was not being closed when the server refuses the connection.
121 :     [08/26/94]
122 :    
123 :     - added the authentication datatype to EXeneBase and added an authentication
124 :     parameter to the openDisplay operation.
125 :     [06/08/94]
126 :    
127 :     - added position and time information to MOUSE_Enter and MOUSE_Leave
128 :     events. We may want to make mouse events carry more uniform information.
129 :     [06/03/94]
130 :    
131 :     - made a bunch of changes to better support properties. Renamed the type
132 :     XProtTypes.property to prop_val, and removed the name field. Added
133 :     a property server to monitor property changes.
134 :     [03/29/94]
135 :    
136 :     - added maxReqLen to allow applications to find out the maximum
137 :     request length supported by a display.
138 :     [03/29/94]
139 :    
140 :     - renamed Drawing.tileBlt to Drawing.textureBlt, and added a new function,
141 :     called tileBlt, which does a pixelBlt using the tile as a source.
142 :     [03/18/94]
143 :    
144 :     - created a per display connection server for managing communications
145 :     related to selections. This also required a couple of minor changes
146 :     to the protocol implementation.
147 :     [03/11/94]
148 :    
149 :     - created a per display connection atom table, for caching interned atoms.
150 :     The standard atom definitions moved from xatom.sml to std-atoms.sml.
151 :     [10/26/93]
152 :    
153 :     - fixed bug in Geometry.clipPt.
154 :     [07/12/93]
155 :    
156 :     - fixed bug in XDebug.xspawn that caused the trace-server's ID to be reported
157 :     instead of the spawned thread.
158 :     [04/12/93]
159 :    
160 :     - modified XDebug.xspawn to report thread exiting on the xspawn trace module,
161 :     and to unwatch normally exiting threads. Also, turn on the XDebug.errorTM
162 :     trace module.
163 :     [03/28/93]
164 :    
165 :     - added Font.substrWidth for computing the width of a substring.
166 :     [03/27/93]
167 :    
168 :     - added general function to change window attributes (EXeneWin.changeAttrs)
169 :     [03/26/93]
170 :    
171 :     - added EXeneWin.setBackground
172 :     [03/25/93]
173 :    
174 :     GRAPHICS UTILITIES
175 :     - added XAuth structure to provide support for getting authentication
176 :     data needed when opening a display.
177 :     [06/08/94]
178 :    
179 :     - added BitmapIO functor that supports reading and writing depth-1 images
180 :     in the X11 format.
181 :     [02/18/93]
182 :    
183 :     WIDGET CHANGES
184 :     - added openFont to the Widget structure.
185 :     [11/27/94]
186 :    
187 :     - created the EXeneRun utility structure for a higher-level way to invoke
188 :     eXene applications.
189 :     [07/16/94]
190 :    
191 :     - added an authentication parameter to the mkRoot operation.
192 :     [06/08/94]
193 :    
194 :     - added setCursor and setBackground to Canvas structure to allow those window
195 :     attributes of a canvas to be changed.
196 :     [03/28/94]
197 :    
198 :     - fixed a race condition in the canvas widget.
199 :     [04/12/93]
200 :    
201 :     - modified box_item datatype declaration in BoxLayout to allow use of
202 :     newconreps.
203 :     [03/28/93]
204 :    
205 :     - modified Background widget to use EXeneWin.setBackground.
206 :     [03/26/93]
207 :    
208 :     - added colorOf function to Widget structure; shorthand for
209 :     colorOfScr (screenOf root) colorspec (widget.sml).
210 :     [02/19/93]
211 :    
212 :     - changed default scrollbar cursor color to gray; correctly handles
213 :     monochrome displays (scrollbar.sml, scroll-view.sml).
214 :     [02/19/93]
215 :    
216 :    
217 :     eXene-0.4 (released 02/17/93)
218 :     -----------------------------
219 :    
220 :     GLOBAL CHANGES
221 :     - changed type naming convention to remove "_t" suffix.
222 :     [02/09/93]
223 :    
224 :     - modified source to use SML/NJ Library (v. 0.1). A couple of the interfaces
225 :     are different from the util-lib versions.
226 :     [02/03/93]
227 :    
228 :     LIBRARY CHANGES
229 :     - modified XDebug structure to use the trace modules provided by TraceCML.
230 :     Also modified various clients of XDebug.
231 :     [02/10/93]
232 :    
233 :     - exposed WindowNotFound exception in EXeneBase.
234 :     [02/10/93]
235 :    
236 :     - changed lib-level hashing functions to use SML/NJ Library hash tables.
237 :     [02/09/93]
238 :    
239 :     - added encodeSendEvent to XRequest, and send_evt_to_t type to XProtTypes.
240 :     Created the XSendEvent structure, which contains routines for encoding
241 :     SendEvent requests (currently only encodeSendSelectionNotify).
242 :     [11/20/92]
243 :    
244 :     - modified lib/protocol/xdisplay.sml to retry connection upto 5 times.
245 :     [11/17/92]
246 :    
247 :     - open EXene structure using explicit structure assignments, so as not to
248 :     confuse source groups.
249 :    
250 :     - Always create GC server for depth 1 pixmaps (patch for IBM X bug) (display.sml)
251 :    
252 :     - Fixed parity error in internAtom and lookupAtom (xatoms.sml)
253 :    
254 :     - Added black and white color_spec_t to EXeneBase (abstract.sml,exene-base.sml)
255 :     - Added createImageFromTile function to EXeneBase (exene-base.sml,image.sml)
256 :    
257 :     - Removed alloc-type window creation routines (window.sml,exene-win.sml)
258 :    
259 :     - Added function createTransientWin (window.sml,exene-win.sml,xprops.sml)
260 :    
261 :     - Added function setWMProtocols (window.sml,exene-win.sml,xprops.sml)
262 :    
263 :     (2 November 1992)
264 :    
265 :     - split lib/window/window.sml into window-sig.sml and window.sml.
266 :    
267 :     - added background and border color fields to representation of windows.
268 :     This is necessary to avoid premature deallocation of those color
269 :     cells, once color finalization is implemented.
270 :    
271 :     - changed "Drawing.autoflush" to "Drawing.feedback"
272 :    
273 :     - Implemented a new, more abstract, color model. Each screen has a color
274 :     server that maps abstract color specifications (color_spec_t) to
275 :     an abstract representation of colors (color_t). The pixel type is no
276 :     longer visible to the user level.
277 :    
278 :     - Added number of buffered messages count to mapped state of draw-master.
279 :    
280 :     - Added Font.charPositions to return per character positions of a string.
281 :    
282 :     - Fixed race condition by adding buffering to the top-level
283 :     window server.
284 :    
285 :     - XDisplay structure now contains a field for the X server's
286 :     maximum request size.
287 :    
288 :     - Image can now be more than 1 plane deep, using XY format.
289 :     Images and their ascii representations now require a list of
290 :     lists instead of a list.
291 :     bm2mlx-template.c modified to reflect the new format.
292 :    
293 :     - Function createImageFromPixmap added.
294 :    
295 :     - Bounding box function bbox added to Geometry.
296 :    
297 :     - Bugs in intersection and union in Geometry fixed.
298 :    
299 :     - Race condition between drawing on a pixmap and destroying the
300 :     pixmap eliminated.
301 :    
302 :     - Bug in createTileFromPixmap fixed.
303 :    
304 :     - MOUSE_Enter/MOUSE_Leave events now generated.
305 :    
306 :     - FirstDown & LastUp messages added to mouse_msg_t.
307 :    
308 :     - fixed bug in HashUtil.remove
309 :    
310 :     - added checks to guarantee that values constructed using concrete
311 :     datatypes lie in allowed ranges for the X protocol. Added related
312 :     exceptions BadRGB, BadDrawParameter, BadPenParameter, BadWindowGeometry
313 :     and BadPixmapParameter.
314 :    
315 :     - NoColorCell exception added to EXeneBase (and Color), for attempts to
316 :     allocate a new color cell when the color map is full.
317 :    
318 :     - Immutable tiles are now used where pixmaps used to be allowed.
319 :    
320 :     GRAPHICS UTILITIES
321 :     - Added routine for generating general ellipses.
322 :     [10/05/92]
323 :    
324 :     - Fixed bug in spline code concerning when line is flat enough.
325 :     [10/03/92]
326 :    
327 :     - Spline code has been moved into the graphics utility directory
328 :     (lib/graph_util).
329 :     [10/03/92]
330 :    
331 :     - Added routines for drawing/filling rounded rectangles.
332 :     [09/03/92]
333 :    
334 :     WIDGET CHANGES
335 :     - The BadArgument exceptions in Box, Pile and WidgetSet are
336 :     changed to BadIndex (box.sml, pile.sml, widget-set.sml).
337 :     [02/12/93]
338 :    
339 :     - The AlreadyRealized exception from Widget is now exposed (widget.sml).
340 :     [02/12/93]
341 :    
342 :     - The getChildEnv function in Router now raises a NotFound
343 :     exception if the environment is not in the table (router.sml).
344 :     [02/12/93]
345 :    
346 :     - A shell widget now deletes its own window and becomes a zombie
347 :     when it receives a KillReq from its child (shell.sml).
348 :     [02/12/93]
349 :    
350 :     - The bounds function for str_edit is more correctly and efficiently
351 :     handled. It is also no flexible in the x dimension (str-edit.sml).
352 :     [02/12/93]
353 :    
354 :     - Unnecessary case "013" removed from echo server (vtty.sml)
355 :     [02/12/93]
356 :    
357 :     - Field name "rad" changed to "radius" in mkToggleCircle (toggle.sml)
358 :     [02/12/93]
359 :    
360 :     - Many widget exceptions replaced by LibBase.BadArg (slider.sml,
361 :     scrollbar.sml, divider.sml, button-view.sml, str-edit.sml,
362 :     widget.sml, frame.sml, viewport-sig.sml, viewport.sml
363 :     [02/12/93]
364 :    
365 :     - Exceptions BadWidth and MultipleChoices exposed in text-list.sml
366 :     [02/11/93]
367 :    
368 :     - Unused exception BadWidth removed from color-rect.sml
369 :     [02/11/93]
370 :    
371 :     - setWMHints function added to Shell
372 :    
373 :     - type generators added for types defined by type abbreviation:
374 :     wm_args_t, hints_t (shell.sml), bounds_t (widget.sml),
375 :     list_item_t (text-list.sml), set_item_t (widget-set.sml),
376 :     whereFn_t (simple-menu.sml)
377 :    
378 :     - Added code to prevent possible deadlock dealing with child CO
379 :     events (widget.sml, shell.sml, box.sml, shape.sml, field-edit.sml)
380 :    
381 :     (11 November 1992)
382 :    
383 :     - Fixed bugs in vtty.sml, toggle-ctrl.sml
384 :    
385 :     (10 November 1992)
386 :    
387 :     - Added WidgetSet structure (widget-set.sml); new version of
388 :     TextList using WidgetSet
389 :    
390 :     (5 November 1992)
391 :     - The widget library assumes util-lib library loaded
392 :    
393 :     - Added mkTransientShell and removed setWMHints from Shell
394 :    
395 :     - Added wstate_t type to Widget; replaces button_state_t
396 :    
397 :     - Added sameRoot function to Widget
398 :    
399 :     - Made widgets abstract, with equality function.
400 :    
401 :     - Removed window attributes for widgets. The wrapCreate function
402 :     was changed accordingly. Also, removed setBackground function
403 :     from Widget; use new background widget instead
404 :    
405 :     - Added several utility functions to Widget: okaySize, compatibleDim,
406 :     compatibleSize
407 :    
408 :     - Added ignoreMouse, ignoreKey functions for widgets
409 :    
410 :     - Toggles now take an initial state; in addition, a toggle now
411 :     fires its action routine if its state is changed under program control
412 :    
413 :     - Sliders now take an initial state; in addition, there are now functions for
414 :     setting the state, plus querying the state and scale
415 :    
416 :     - The function mkSBLayout has been moved to its own structure ScrollLayout
417 :    
418 :     - TextList replaces the ListWidget structure. The user can now
419 :     specify an initial state for the items.
420 :    
421 :     - mkColorRect has been added to implement simple colored rectangular regions.
422 :    
423 :     - A background_t widget has been added to implement backgrounds for widgets
424 :    
425 :     - Where possible, composite widgets no longer need a root
426 :     argument (structures Frame, ScrollPort, Shape)
427 :    
428 :     - The Box structure now produces a box_layout_t, rather than a widget_t.
429 :     (There is the usual widgetOf function.) In addition, one can now
430 :     insert, delete, map, and unmap "boxes" in the top level of the box
431 :     hierarchy
432 :    
433 :     - A Pile structure has been added. This implements a pile_t type, which
434 :     maintains a collection of widgets, only one of which is visible at
435 :     a time. Widgets can be inserted and deleted from piles.
436 :    
437 :     (2 November 1992)
438 :    
439 :     - modified str-edit.sml to allow character values in the range
440 :     [0xa0-0xff].
441 :    
442 :     - Color type introduced to allow multiple representations; currently
443 :     supports RGB and pixel. [NOTE: this has been moved to the library
444 :     level]
445 :    
446 :     - New widgets : Divider, MenuButton, ViewPort, ScrollPort
447 :    
448 :     - Label views, text button views and list items
449 :     reimplemented to use common text glyph.
450 :    
451 :     - Frames provide dynamic control of frame color.
452 :    
453 :     - Labels provide a font option, and dynamic control of colors.
454 :    
455 :     - Bugs fixed in scrollbar widges.
456 :    
457 :     - Signature of Shape module changed, and two new functions mkRigid
458 :     and mkFlex added.
459 :    
460 :     - Character insertion and deletion added to TextWidget
461 :    
462 :     - The Widget module now provides filter functions for the input streams,
463 :     and a function to alter the background of a widget.
464 :    
465 :     - Toggle and button protocol has changed. Command and toggle buttons
466 :     register a change on button up, not on button down. If button up
467 :     occurs off the widget, no change is registered. Event streams for
468 :     general buttons now terminate with either button up or exit, the latter
469 :     indicating the mouse has left the widget. Buttons and toggles also now
470 :     provide active/inactive state.
471 :    
472 :    
473 :     eXene-0.3 (released 12/03/91)
474 :     -----------------------------
475 :    
476 :     GLOBAL CHANGES:
477 :     - eXene is now based on CML-0.9.4; this very required minor changes to
478 :     eXene (now using 0.9.6).
479 :    
480 :     - ported to SML/NJ 0.71. Most changes were a result of the Array structure
481 :     not being open by default, and by Array.sub no longer being an infix operator.
482 :     Changed the representation of pen_t values to use immutable vectors.
483 :    
484 :     LIBRARY CHANGES
485 :     - fixed typechecking problem in protocol/xdisplay.sml that was exposed
486 :     by SML/NJ 0.70.
487 :    
488 :     - replaced draw_dst_t datatype with abstract drawable_t type. This is
489 :     part of the support for rubber-banding.
490 :    
491 :     - fixed xio.sml bug caused by a faulty understanding of the sequencing
492 :     semantics of the protocol.
493 :    
494 :     - fixed bugs in gc-server.sml and draw-master.sml reported by Huimin Lin
495 :     (huimin@@cogs.susx.ac.uk).
496 :    
497 :     - fixed bug in HashUtil.mapList
498 :    
499 :     - changed remove function for hash tables to return the removed item. This
500 :     affected the hash tables defined in util/{hash-util.sml,hash-xid.sml},
501 :     window/hash-window.sml and user/eXene-base.sml.
502 :    
503 :     - added window-tree locking mechanism to the window registry.
504 :    
505 :     - modified asynchronous blt operations to use a promise-style implementation.
506 :    
507 :     - added updatePen operation for functional updates of pens.
508 :    
509 :     - added createOverlay to support rubber-banding.
510 :    
511 :     - new Spline module providing functions to compute Bezier cubic sections,
512 :     and open and closed B-splines.
513 :    
514 :     - added copyBlt and copyBltEvt.
515 :    
516 :     - fixed bug in decoding font info in xreply.sml (wrong offset)
517 :    
518 :     WIDGET CHANGES
519 :     - fixed possible deadlock arising from parent not always servicing a child's
520 :     CO event. This affected box.sml and field-edit.sml.
521 :    
522 :     - added new text list widget. The widget provides a vertical or horizontal
523 :     display of text items, and events associated with the user choosing items.
524 :    
525 :     - the ButtonView structure now provides a new view mkTextBtn, which
526 :     generalizes mkLabelBtn (rectangular buttons with string labels) by
527 :     allowing the programmer to specify the border width and text alignment
528 :     within the button.
529 :    
530 :     - fixed bug in Frame widget that was causing deadlock.
531 :    
532 :     - the SimpleMenu module has seen various bug fixes and style
533 :     changes, as well as the addition of a low-level menu routine
534 :     for providing pop-up menus within widgets.
535 :    
536 :     - there is now a working vtty widget (thanks to Thomas Yan for finishing
537 :     our code)
538 :    
539 :     - the Canvas widget now provides a drawable, so that the library drawing
540 :     routines can be used.
541 :    
542 :    
543 :     eXene-0.2 (released 4/27/91)
544 :     -----------------------------
545 :    
546 :     LIBRARY CHANGES
547 :     - added absolute screen coordinates to mouse event messages
548 :    
549 :     - added tileBlt operation to Drawing
550 :    
551 :     - fixed GraphicsExpose/NoExpose problem. Drawing.bitblt and Drawing.tileBlt
552 :     will raise the exception Exposures, if part of the source is unavailable.
553 :     Also, the PV_Exposures field for pens has been eliminated.
554 :    
555 :     - destroyWindow is now handled by the draw-master, which avoids a race
556 :     with any pending drawing requests on the window. This was a problem
557 :     with popup windows.
558 :    
559 :     - added Geometry.inside; test if a rectangle is inside another
560 :    
561 :     - fixed bug in encodePolyRects, etc.
562 :    
563 :     - changed DrawMaster to group adjacent drawing requests that use the same pen.
564 :    
565 :     - fixed the shutdown deadlock that was causing the "eXene-shutdown timeout"
566 :     message.
567 :    
568 :     WIDGET CHANGES
569 :     - fixed deadlock in widgets/router.sml
570 :    
571 :     - added tileBlt operation to Canvas widget
572 :    
573 :     - the menu widget is fixed
574 :    
575 :     - there is now a text widget
576 :    
577 :     - there is a text-field edit widget
578 :    
579 :     - the bounds_t type has been redefined; see the manual for details.
580 :    
581 :     - the box/glue layouts have been re-implemented. Also, the layout semantics
582 :     have changed; see the manual for details.
583 :    
584 :     - the type of Widget.wrapCreate has changed; point_t and size_t arguments were
585 :     bundled into a rect_t argument.
586 :    
587 :     - additional button views have been added.
588 :    
589 :     - the shell widget now provides application access to window manager
590 :     hints. In addition, the shell automatically registers size hints
591 :     with the window manager.
592 :    
593 :     EXAMPLES
594 :     - the examples have been updated to use some of the new library features
595 :    
596 :     - a simple example of the menu widget has been added
597 :    
598 :     - a calculator has been implemented using the widget set.
599 :    
600 :    
601 :     eXene-0.1 (released 3/19/91)
602 :     -----------------------------
603 :     This was the first release

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0