1 2014-05-15 Norbert Koch <viteno@xemacs.org>
3 * Makefile (VERSION): XEmacs package 1.09 released.
5 2014-05-15 Norbert Koch <viteno@xemacs.org>
7 * Makefile (VERSION): XEmacs package 1.08 released.
9 2014-05-13 Jerry James <james@xemacs.org>
12 * .hgignore: New file.
13 * *.el: Restore CVS keyword expansions.
16 2010-03-30 Norbert Koch <viteno@xemacs.org>
18 * Makefile (VERSION): XEmacs package 1.07 released.
20 2010-03-28 Aidan Kehoe <kehoea@parhasard.net>
23 Give byte-compile-compiled-obj-to-list a sane definition, if it's
24 not bound, now that it's no longer always available in bytecomp.el.
26 2008-02-19 Norbert Koch <viteno@xemacs.org>
28 * Makefile (VERSION): XEmacs package 1.06 released.
30 2007-11-18 Mike Sperber <mike@xemacs.org>
32 * eieio.el (eieio-defclass): Add autoload.
34 * Makefile (AUTHOR_VERSION): Updated to CEDET 1.0pre4.
36 2003-10-31 Norbert Koch <viteno@xemacs.org>
38 * Makefile (VERSION): XEmacs package 1.05 released.
40 2003-03-09 Ben Wing <ben@xemacs.org>
43 Delete explicit compile:: and binkit: rules.
44 Don't add custom-load.elc to the list of generated elc's.
45 Use STANDARD_DOCS instead of explicitly giving the targets
48 2002-11-29 Ben Wing <ben@xemacs.org>
50 * .cvsignore: Remove files now handled automatically by CVS.
51 * Makefile: Use `compile' instead of hard-coded `all'.
53 2002-12-06 Rendhalver [Peter Brown] <rendhalver@xemacs.org>
55 * Makefile (VERSION): XEmacs package 1.04 released.
57 2002-11-28 Ville Skyttä <scop@xemacs.org>
59 * Makefile (REQUIRES): Add edebug.
61 * eieio-opt.el (eieio-help-mode-augmentation-maybee):
62 Add a dummy optional argument for `run-hook-with-args'.
65 2002-10-15 Ville Skyttä <scop@xemacs.org>
67 * Makefile (srckit): Remove.
69 2002-10-14 Ville Skyttä <scop@xemacs.org>
71 * Makefile (MANUALS): Removed (unused).
73 2002-08-12 Rendhalver [Peter Brown] <rendhalver@xemacs.org>
75 * Makefile (VERSION): XEmacs package 1.03 released.
77 2002-08-10 Steve Youngs <youngs@xemacs.org>
79 * Sync to Upstream version 0.17
81 2002-08-08 Steve Youngs <youngs@xemacs.org>
83 * Makefile (EXTRA_SOURCES): Add eieio-tests.el
85 * package-info.in (provides): Update.
87 * Makefile (AUTHOR_VERSION): Update to 0.17
88 (ELCS): Add missing .elc files.
90 2002-08-07 Eric M. Ludlam <eric@siege-engine.com>
92 * eieio-base.el: No longer include `compare-strings.el'
94 * eieio.texi (Base Classes): Added `eieio-singleton' and `eieio-named'
95 (eieio-singleton): New section
96 (eieio-named): New section
97 (Writing Methods): Added information about :STATIC methods.
99 * Project.ede: Updated version number.
101 2002-07-16 Adrian Aichner <adrian@xemacs.org>
103 * .cvsignore: Add generated .info* and .html files.
105 2002-07-15 Adrian Aichner <adrian@xemacs.org>
107 * compare-strings.el: It's XEmacs, not Xemacs.
108 * eieio-comp.el (eieio-byte-compile-princ-code): Ditto.
110 2002-07-11 Eric M. Ludlam <eric@siege-engine.com>
112 * linemark.el (linemark-next-in-buffer):
113 Correctly start search when going backward.
114 (linemark-end): Fix doc.
116 2002-06-27 Eric M. Ludlam <eric@siege-engine.com>
118 * eieio.el ("cl-macs"): Load silently.
119 (eieio-defclass): Removed old bootstrapping messages.
121 * eieio-base.el (eieio-singleton): New class.
122 (constructor::eieio-singleton): New method.
124 * linemark.el (linemark-next-in-buffer):
125 Accounts for extra embedded overlays.
126 (linemark-begin, linemark-end): New methods.
128 * eieio-tests.el: Added messages to method dispatch test.
129 Added test for static methods.
130 Added test for the singleton.
132 * eieio-comp.el (byte-compile-file-form-defmethod):
133 Account for STATIC methods.
135 * eieio.el (method-static): New constant.
136 (eieio-defclass): Constructor now uses `constructor'.
137 (defmethod): doc fix.
138 (eieio-defmethod): Account for :STATIC descriptor.
139 (eieio-generic-call): Call STATIC methods on a class.
140 (eieiomt-add): Add STATIC methods into the dispatch tables.
141 (eieiomt-get): Renamed `tag' as `key'.
142 (eieio-generic-form): Renamed tag to key.
143 (constructor): New static method.
145 2002-06-25 Eric M. Ludlam <eric@siege-engine.com>
147 * linemark.el (linemark-add-entry): Revamped to now take a prop list.
148 (linemark-new-entry): Use :filename.
150 * linemark.el (linemark-new-entry): Use &rest args
152 * linemark.el (linemark-entry): Made the overlay protected
153 (linemark-at-point, linemark-kill-buffer-hook): Use `linemark-entry-child-p'.
154 (linemark-add-entry): Call new method on group for new entries.
155 (linemark-new-entry): New function
157 2002-03-23 Eric M. Ludlam <eric@siege-engine.com>
159 * eieio.el (eieio-version): Update version.
161 * eieio-opt.el (eieio-class-speedbar): Prevent repeated refreshes.
162 (eieio-class-button): Do not put a empty folder on classes w/ no subclasses..
164 2002-03-13 Eric M. Ludlam <eric@siege-engine.com>
166 * eieio-speedbar.el (eieio-speedbar-make-tag-line):
167 Better support for tag buttons
168 (eieio-speedbar-child-make-tag-lines): Fix error text.
169 (eieio-speedbar-expand): Only do child lines if there are children.
171 2002-02-23 Eric M. Ludlam <eric@siege-engine.com>
173 * Project.ede: Version change
175 * eieio.el (eieio-version): Update to beta4
177 * eieio.texi (Predicates): Updated slot-boundp.
180 Added test for `eieio-build-class-alist' & new instantiable flag.
183 (eieio-build-class-alist, eieio-read-class, eieio-read-subclass):
184 Added INSTANTIABLE-ONLY flag.
186 * eieio.el (class-abstract-p): New function
187 (eieio-default-superclass): Made abstract.
189 * eieio-opt.el (eieio-describe-class):
190 If a class is abstract, display so.
192 * eieio-speedbar.el: (eieio-speedbar, eieio-speedbar-directory-button)
193 (eieio-speedbar-file-button): made abstract.
195 * eieio-base.el: (eieio-instance-inheritor, eieio-instance-tracker)
196 (eieio-persistent, eieio-named): Made abstract.
198 2002-02-22 Eric M. Ludlam <eric@siege-engine.com>
200 * eieio-tests.el: Test passing a CLASS into slot-boundp.
202 * eieio.el (eieio-oref-default): Fix bugs when a class is passed in.
203 (slot-boundp): Allow a class to be passed in w/ a static slot.
205 2002-02-21 Eric M. Ludlam <eric@siege-engine.com>
207 * eieio.texi (Building Classes): Added :abstract option to doc.
210 Fix test so it can be run multiple times in one session.
211 Added :class allocated slot `slot-boundp' tests.
212 Added :abstract class instantiation tests.
214 * eieio.el (defclass): Allow, and enable :abstract class keyword.
215 (eieio-defclass): Obey :abstract class keyword. Do not allow instantiation.
217 2002-02-09 Eric M. Ludlam <eric@siege-engine.com>
219 * eieio.el (eieio-require-version): New function.
221 2002-01-13 Steve Youngs <youngs@xemacs.org>
223 * package-info.in (provides): Update to include all provides.
225 2002-01-07 Adrian Aichner <adrian@xemacs.org>
227 * Makefile (HTML_FILES): New.
228 * Makefile (HTML_DEP): New.
230 2001-12-05 Eric M. Ludlam <eric@siege-engine.com>
232 * INSTALL: Added more complex make instructions for including SPEEDBAR.
234 * eieio-tests.el (class-alloc-initarg): New test class
235 (class-c): Fixed spelling error.
237 2001-12-04 Eric M. Ludlam <eric@siege-engine.com>
239 * eieio-base.el (eieio-persistent): Added extension field.
240 (eieio-persistent-save-interactive): New method.
242 2001-10-03 Eric M. Ludlam <eric@siege-engine.com>
244 * chart.el (chart-face-color-list): Fix to be ok on terminals.
245 (chart-face-pixmap-list): Allow to be disabled on terminals.
246 (chart-face-use-pixmaps): New option
247 (chart-axis-draw): For Y axis labels, push into the bar if they are
250 * eieio.el (eieio-defclass):
251 Warn if class allocated slot has an initarg.
253 2001-09-14 Eric M. Ludlam <eric@siege-engine.com>
255 * Project.ede: Updated version.
257 * eieio.el: Update version.
259 * chart.el (chart-translate-namezone):
260 Fixed up math to handle small cases.
261 (chart-axis-draw): Fixed up some math for very small cases, and
262 to fix some odd rounding problems.
263 (chart-goto-xy): Do not allow x or y < 0
265 * eieio-tests.el: Fixed protection typos.
266 Fixed and added protection test methods.
268 2001-09-14 Eric M. Ludlam <eric@siege-engine.com>
270 * eieio.el (eieio-version): Update version.
272 * chart.el (chart-translate-namezone):
273 Fixed up math to handle small cases.
274 (chart-axis-draw): Fixed up some math for very small cases, and
275 to fix some odd rounding problems.
276 (chart-goto-xy): Do not allow x or y < 0
278 * eieio-tests.el: Fixed protection typos.
279 Fixed and added protection test methods.
281 2001-08-31 Eric M. Ludlam <eric@siege-engine.com>
283 * chart.el (chart-axis-draw):
284 If limits are too small, force increment to 1.
286 2001-08-21 Eric M. Ludlam <eric@siege-engine.com>
288 * eieio.el (eieio-initializing-object):
290 (eieio-field-originating-class-p): New predicate.
291 (eieio-field-name-index): Use `eieio-field-originating-class-p' for
292 private slots to see if access is allowed. Initialization of a new
293 object is exempt from this test.
294 (eieio-set-defaults): Set `eieio-initializing-object' to true.
296 2001-08-17 Eric M. Ludlam <eric@siege-engine.com>
298 * eieio-custom.el (eieio-object-value-get):
299 When calculating the new name, make sure the
300 class feature :eieio-show-name is used.
301 (eieio-object-value-get): Only set the new name to an edited object if
302 there is a new name. (nil is thrown out.)
304 2001-08-08 Eric M. Ludlam <eric@siege-engine.com>
306 * linemark.el (linemark-funny-face):
307 Reverse light/dark colors.
308 (linemark-next-in-buffer): Reverse argument direction for getting a fcn.
311 Add linemark to the documentation.
313 2001-08-03 Eric M. Ludlam <eric@siege-engine.com>
316 First revision of Line Mark as a part of the EIEIO package.
318 2001-08-03 Eric M. Ludlam <eric@siege-engine.com>
321 First revision of Line Mark as a part of the EIEIO package.
323 2001-08-01 Eric M. Ludlam <eric@siege-engine.com>
325 * eieio.texi: Fixed main menu.
326 Added doc about generic reflected in eieio CVS 1.111.
329 Changed the method order test to reflect changes in eieio 1.111.
331 * eieio.el (eieio-generic-call-key):
333 (eieio-generic-call): Only pull up generics if there is no specific.
334 Save the current key in `eieio-generic-call-key'.
335 (next-method-p): Use `eieio-generic-call-key'.
336 (call-next-method): Use `eieio-generic-call-key'.
337 If no next method is found, search for a generic, and call that.
339 2001-07-17 Eric M. Ludlam <eric@siege-engine.com>
342 Added tests for :protection.
344 * eieio.el (eieio-defclass):
345 Support :private, :protected, :public keywords.
346 Store the actual type of protection in the protection slot instead of
348 (eieio-field-name-index): Support private and protected differences.
351 Added naming conventions chapter.
352 Fixed example that has :protection use to use proper values.
354 2001-07-13 Eric M. Ludlam <eric@siege-engine.com>
357 Added setf method for oref by Arnd Kohrs.
359 2001-07-12 Eric M. Ludlam <eric@siege-engine.com>
362 Use :class instead of class for allocation of slots.
363 Added tests for lambda actually running at instantiation time.
365 * eieio.el (defclass): Doc fix.
366 (eieio-defclass): Throw error if :allocation is not :class or :instance.
367 Added :public and :private possible protection values.
368 Convert new class initializer to use backquote.
369 (eieio-add-new-field): For class allocated slots, eval the initform if
370 needed when type checking, and for storage.
371 (initialize-instance): Check default args, and eval any lambdas in the
375 Use `:class' instead of `class' for class allocated slots.
378 Use `:class' instead of `class' for class allocated slots.
379 More description for `eieio-persistent'
381 2001-07-05 Eric M. Ludlam <eric@siege-engine.com>
384 Added test to make sure new objects get changes from oset-default.
386 * eieio.el (eieio-oset-default):
387 When setting a default, be sure to change the object cache.
389 2001-06-03 Eric M. Ludlam <eric@siege-engine.com>
392 Changed all `obj-of-class' calls to `object-of-class' calls.
394 2001-05-31 Eric M. Ludlam <eric@siege-engine.com>
396 * eieio.el (object-of-class):
397 new name from obj-of-class. Alias of old name.
398 (object-slots): Was obj-fields.
401 Changed `obj-slots' to `object-slots'.
402 Changed `obj-of-class-p' to `object-of-class-p'.
404 * eieio-comp.el (eieio-byte-compile-princ-code):
405 Replace an XEmacs string match with featurep.
407 2001-05-20 Eric M. Ludlam <eric@siege-engine.com>
409 * Project.ede: Update version.
412 * eieio.texi (slot-exists-p):
413 Fixed to match source (takes class now.)
415 * eieio.el (eieio-defmethod):
416 Fixed typeo w/ writer creation.
417 (slot-exists-p): Can now take an object, or a class.
419 2001-05-19 Eric M. Ludlam <eric@siege-engine.com>
422 By Daniel Pittman <daniel@rimspace.net>
423 (eieio-defmethod): Tried to fix `writer', fixed `reader'.
424 (with-slots): Assignment to slots will set values in the objects now.
426 2001-05-14 Eric M. Ludlam <eric@siege-engine.com>
429 Let the test run multiple times in a row.
430 Added test for :type testing on children of classes defining the :type
432 2001-05-12 Eric M. Ludlam <eric@siege-engine.com>
435 Added a type for typep for new classes.
436 Funny inclusion of certain cl scripts.
438 2001-05-09 Eric M. Ludlam <eric@siege-engine.com>
440 * eieio.el (eieio-version): 0.17beta1
442 * eieio-base.el (slot-missing:eieio-named):
443 Added :object-name as another slot-name.
445 2001-05-07 Eric M. Ludlam <eric@siege-engine.com>
447 * eieio.el (eieio-set-name-string): New fcn.
450 Added tests for eieio-named class.
452 * eieio-base.el (eieio-named): New class
453 (slot-missing:eieio-named): New method.
455 2001-04-29 Eric M. Ludlam <eric@siege-engine.com>
457 * eieio-base.el (eieio-instance-inheritor):
458 Set :type of parent-instance to be
459 `eieio-instance-inheritor-child'
461 2001-04-27 Eric M. Ludlam <eric@siege-engine.com>
464 Removed complex relative file generator in place of the built in function.
466 * eieio.el (class-p): Updated doc.
467 (eieio-defclass): When extracting slot description flags, use
468 `plist-get' instead of `member' (suggested by Richard Kim)
469 (make-instance): Updated doc about the use of class symbols.
470 (eieio-perform-slot-validation): Removed special class cases.
471 By using `CLASSNAME-child' instead of `CLASSNAME' for a :type
472 specifier, the same effect can be achieved.
475 Added `eieio-read-subclass' function.
477 * eieio-doc.el (eieiodoc-one-node):
478 Fixed texification of the doc string for the class.
480 2001-04-24 emacsman <emacsman@choochoo>
483 Added autoload cookies for the three top level comands.
484 Also set `truncate-lines' to `t' in `tree-mode' function to prevent line-wrapping.
486 2001-04-21 Eric M. Ludlam <eric@siege-engine.com>
489 If a persistent write fails, make sure the user isn't asked about
490 killing the buffer that was temporarilly created for writing.
492 2001-04-17 emacsman <emacsman@choochoo>
495 Added `;;;###autoload' for `call-tree'.
497 2001-02-19 Eric M. Ludlam <eric@siege-engine.com>
500 Fix so that the chart-emacs-* commands work with XEmacs.
503 Add a require for eieio-base.
506 Rearranged some features in the feature list.
507 Removed invalid section about executing code at instantiation time
508 in a slot init form. (Use initialize-instance method overload
512 * Project.ede: Rearranged the project file.
515 * eieio-tests.el: Header comment update.
516 Fixed persistent test to save the file to the current directory.
518 * eieio-speedbar.el, eieio.el, eieio-opt.el:
519 Header comment update.
521 2001-02-17 Eric M. Ludlam <eric@siege-engine.com>
523 * eieio-doc.el, eieio-custom.el, eieio-comp.el:
524 Removed ftp site information.
526 * INSTALL: Added web page link.
527 Removed explicit version from load path explaination.
530 Fixed cross reference (xref) nodes to speedbar.
532 Removed unwanted node from main menu.
535 Fixed eieio-oref-default to correctly accept a class symbol again.
537 * chart.el: Removed ftp location.
538 Added spaces to the commentary
539 Fixed the base chart to recalc width/height at object creation time,
540 not class creation time.
542 * tree.el, call-tree.el:
543 Removed FTP location from comments.
546 (defclass) If the class already exists, recover child list for the new
547 class. This preserves existing class hierarchies, and protects the
548 user from the simple act of re compiling.
550 2001-02-16 Eric M. Ludlam <eric@siege-engine.com>
553 Added tests for `make-instance'.
555 2001-02-16 ponced <ponced@choochoo>
557 * compare-strings.el:
558 Added a `provide' statement.
559 Fixed a nasty bug in the `let' statement which reinitialized the local
560 variables i1 an i2 to nil!
562 2001-02-15 Eric M. Ludlam <eric@siege-engine.com>
565 Fixed `object-add-to-list' to force the value of a slot to a list if
566 it is not currently a list or nil.
568 2001-02-04 Eric M. Ludlam <eric@siege-engine.com>
571 `initialize-instance:eieio-instance-tracker' append new items to the
574 2001-01-31 Eric M. Ludlam <eric@siege-engine.com>
576 * compare-strings.el:
577 Compatibility code for compare-strings.
579 * Project.ede: Project file for EIEIO
581 2001-01-25 Eric M. Ludlam <eric@siege-engine.com>
584 Fixed doc for eieio-perform-slot-validation.
586 2001-01-24 Eric M. Ludlam <eric@siege-engine.com>
589 In eieio-defclass, move the creation of the test fn before
590 initializing slots. This lets slots accept objects of the same type.
591 Fixed `make-instance' to take the correct arguments.
594 Test self-referencing classes.
597 Compare Strings backwards compatible bit.
599 2001-01-11 Eric M. Ludlam <eric@siege-engine.com>
602 Beginnings of conversion to pg.el postgres library.
604 * dbif.el: Various hacks I don't remember.
606 2001-01-10 Eric M. Ludlam <eric@siege-engine.com>
609 Added docs on some new base classes.
612 Added tests for some new base classes.
615 Removed incompatible add-to-list call.
617 2000-12-16 Eric M. Ludlam <eric@siege-engine.com>
620 Added additional highlighting to classes and methods in *Help* buffers.
622 2000-12-15 Eric M. Ludlam <eric@siege-engine.com>
625 eieio-persistent-save. Locally bind `default-directory' to the
626 directory part of the object being saved.
628 2000-12-09 Eric M. Ludlam <eric@siege-engine.com>
630 * eieio-base.el: Comment updates.
632 * eieio.el: Removed the base classes.
634 2000-12-07 Eric M. Ludlam <eric@siege-engine.com>
636 * eieio-base.el: New file.
639 Fixed a bug in the eieio-persistent relative path generator.
640 Made lists of objects output in `write-object' prettier.
642 2000-12-05 Eric M. Ludlam <eric@siege-engine.com>
645 Added the class `eieio-instance-tracker'.
646 For this class, added `initialize-instance', `delete-instance', and
647 the function `eieio-instance-tracker-find'.
649 * eieio.texi: Added eieio-instance-tracker.
652 Fixed some documentation.
654 2000-12-04 Eric M. Ludlam <eric@siege-engine.com>
657 Added eieio-persistent object documentation.
660 Added eieio-persistent-read function for reading eieio-persistent objects.
663 Added eieio-persistent as a new base class.
665 2000-12-02 Eric M. Ludlam <eric@siege-engine.com>
668 Added new Base Classes chapter.
669 Added sections for eieio-instance-inheritor, and eieio-speedbar.
672 Enable an initform to be a function symbol without evaling it.
673 Enable field tests to "eval" a function if needed.
674 Enable oref default, and field tests to convert `lambda-default'.
675 New function `eieio-default-eval-maybe'.
677 * eieio-tests.el: Added function type test.
678 Added instance inheritor test.
680 2000-12-01 Eric M. Ludlam <eric@siege-engine.com>
683 Added `eieio-instance-inheritor', plus `slot-unbound', and `clone' methods.
685 2000-11-30 Eric M. Ludlam <eric@siege-engine.com>
688 unbound-slot was using the wrong symbol for error conditions.
689 added `error' as a condition for invalid-slot-type and unbound-slot.
691 2000-10-21 Eric M. Ludlam <eric@siege-engine.com>
694 Implement slot widget type for objects.
695 Fixed `eieio-object-value-get' which had bugs from the last check in.
697 2000-10-14 Eric M. Ludlam <eric@siege-engine.com>
700 Enabled :slotofchoice specifier for custom types.
702 2000-10-11 Eric M. Ludlam <eric@siege-engine.com>
705 Fixed recent functions to use slot-boundp properly.
708 Added discussion about class use in oref.
709 Added doc for `object-add-to-list' and `object-remove-from-list'.
712 Added `quotation' around generic method name in doc.
713 Oref now can take a class for referencing class allocating slot values.
714 Added new functions `object-add-to-list' and `object-remove-from-list'.
715 Added some doc to `object-unbound' discussing `slot-boundp'.
717 2000-10-09 Eric M. Ludlam <eric@siege-engine.com>
720 Added doc for the new class specifiers.
722 2000-10-04 Eric M. Ludlam <eric@siege-engine.com>
725 Added support for :objectcreatefcn as part of the widget.
726 Fixed `eieio-object-value-to-abstract' for insert into list case.
729 Added an `accept' button to `apply' and `bury' the buffer.
730 Fixed the widget-get-value thingy so that it also handled the
734 Added `eieio-read-customization-group' function.
735 In `eieio-object-value-create', allow null master-group for all slots,
736 Show list of groups, with buttons to switch groups.
737 In `eieio-customize-object', put group name into the customization buffer.
738 Add a cancel button attached to bury-buffer.
740 2000-10-03 Eric M. Ludlam <eric@siege-engine.com>
743 Fixed some custom-group settings.
744 Added custom-label to all areas of slots.
747 Added support for specifying a group when customizing.
748 Fixed up display to not print "Slot", to show the group
749 being edited, and to use new custom labels.
750 Added new fn `eieio-customize-object-group' for use
751 with easymenu :filters.
753 2000-09-30 Eric M. Ludlam <eric@siege-engine.com>
755 * eieio.el: Fixed another customgroup bug.
758 Fixed bug with info lines at the end of the display.
761 Added :group :custom-group, and `class-option' documentation.
764 Fixed `class-option' macro. Must not have been using it.
766 * eieio.el: Removed class slot `class-doc'.
767 Added class slots for `class-public-custom-group' and
768 `class-class-allocation-custom-group'.
769 Added :group slot specifier. This groups slots in a class.
770 Added :custom-groups class option. Lists all groups in this class.
771 This is created automatically from :group specifiers.
772 Normal doc is now stored in the :documentation class specifier.
773 All support work for slot groups.
775 2000-09-28 Eric M. Ludlam <eric@siege-engine.com>
777 * eieio-doc.el: Require eieio-opt.
780 Comment test for functions in classes.
783 Added `customize-object' shortcut.
785 * eieio.el: Update version number.
786 Fixed doc of `generic-p'.
787 When cloning, allow passing in of a new name, and replacement arguments.
788 In `write-object', do not try to access unbound slots.
789 In `eieio-edebug-prin1-to-string', handle lists of objects.
790 Fixed edebug spec for with-slots.
792 2000-09-25 Eric M. Ludlam <eric@siege-engine.com>
795 Added `eieio-class-nuke' which calls `eieio-class', but deletes all
796 text following the cursor. Useful in ede doc files.
797 Updated `eieiodoc-one-node' to display methods belonging to each
799 Added `eieio-insert-and-massage-docstring-with-args' for method
800 documentation strings, and @var ing arguments when they are in
802 Force line break after Type: label in slot docs.
803 Fixed up `texify-string' regular expressions a little.
806 Updated `eieio-method-documentation' to return the arg lists also.
807 Updated `eieio-describe-class' to show method arguments.
808 Added `eieio-lambda-arglist' for fetching args from a symbol.
810 2000-08-20 Eric M. Ludlam <eric@siege-engine.com>
813 Removed some customize autoloads.
816 Fixed creating of generic methods from byte-code.
818 * eieio.texi: Added @end table.
820 * eieio.texi: Replaced intro text.
821 Added scheduling details for defmethod.
823 Updated info about describing classes and generics.
826 Added support for the :PRIMART tag, and fixed bug when parsing args.
829 Defvared all the variables.
830 Added test for the :BEFORE/:AFTER tags for methods, plus generics.
833 Updated comment to specify the needed version of speedbar.
836 Added :PRIMARY to defmethod docs, and interpretation.
837 Track the class for the first arg when making methods.
838 If there is no class for the first arg, then it is a generic.
839 Fixed error checking in `eieiomt-add'.
840 In `eieio-generic-form' return generics correctly.
841 Added autoloads for describe-generic.
843 * eieio-opt.el: Augment the help keymap.
845 * eieio.el: Fixed autoload.
848 Eval and compile compatibility code.
850 * eieio-comp.el: Comments
853 Removed `eieio-rebuild-generic-doc-string'.
854 Don't call this function either.
857 Describe-class returns the text created.
858 eieio-read-class now takes a history variable, or uses a default one.
859 Added eieieo-describe-generic, and several aliases. Copied from
860 the eieio-rebuild-doc-string for functions.
861 Added eieio-read-generic-p, and eieio-read-generic
862 The help system augmenter will now find generics, and reset
863 the function apropriatly.
866 Build slot definitions in `describe-class'. This is no longer handled
867 by defclass. (Faster load times.)
870 Do not rebuild doc string for class. Handle in `describe-class'.
871 Rebuilt all macros using backquote.
874 Added `eieio-help-mode-augmentation-maybee'.
875 Fixed up `describe-class' to contain a list of parents, children.
876 Fixed up `eieio-all-generic-functions' to only include functions
877 defined specifically for the given class.
878 Fixed up `eieio-method-documentation' to not throw errors for
879 pass-through memoized method symbols.
882 Added `class-children', and `class-children-fast' functions.
883 Added autoload for `eieio-help-mode-augmentation-maybee', and added
884 it to the hooks for help.
885 Added advice to `describe-variable'
888 Move version number up near the Version keyword.
891 Added apply-reset button creating function.
892 Put them at the top and bottom of a direct-edit custom buffer.
893 Removed additional indentation of SLOT tag.
894 You can direct-customize the same object twice.
896 2000-08-02 Eric M. Ludlam <eric@siege-engine.com>
899 Fixed a slot-missing setting when initializing an object.
900 Changed the signal output from the `slot-missing' method.
902 2000-08-01 Eric M. Ludlam <eric@siege-engine.com>
905 Moved eval and compile beginning part to after some variables.
906 Updated some comments.
907 Updated `eieio-validate-*slot-value' to take the field being checked.
908 This is only used when signaling an error.
910 2000-07-19 Eric M. Ludlam <eric@siege-engine.com>
913 Added in compatibility section for `compiled-function-arglist'.
914 Used `eieio-compiled-function-arglist' in `eieio-rebuild-generic-doc-string'.
917 Do not print bootstrap message if byte compiling, and verbosity is nil.
918 Added eieio-defgeneric-form, and used it in eieio-defgeneric from
919 whence it was pulled. (Needed by the byte compiler.)
920 Eval and compile all of eieio (bootstrap itself w/ the byte compiler.)
923 Use byte-compile-function-environment to quiet the byte compiler for methods.
924 Remove if statement around above.
925 Make sure this function returns nil!
927 * eieio-speedbar.el, eieio-opt.el:
928 Byte compilation fixes.
930 2000-07-16 Eric M. Ludlam <eric@siege-engine.com>
933 Added new unbound slot to test object.
934 Add protection from unbound slots. (ei, skip them)
935 Add purty cullers to slot titles, and object name.
938 Added doc about eieio-error-unsupported-class-tags
941 Convert old -engines to eieio- fns.
944 Call eieio-defmethod instead of defmethod-engine.
945 In `byte-compile-file-form-defmethod', if meth is not bound, call
946 eieio-defgeneric to create the function definition so that warnings
947 aren't thrown. Next, remove the new method from the byte-compiler's
948 list of unresolved functions.
950 2000-07-14 Eric M. Ludlam <eric@siege-engine.com>
952 * eieio-custom.el, eieio-doc.el:
953 Updated to have -engine calls switched to eieio- calls.
956 Added invalid slot tag testing.
959 Added `eieio-error-unsupported-class-tags', then used it in
960 eieio-defclass to wrap a block that throws an error if a bad
963 2000-04-13 Eric M. Ludlam <eric@siege-engine.com>
966 Added needed autoload for typep (needed in Emacs21 CVS).
969 Renamed all occurances of *-engine to eieio-* to tidy up the namespace.
971 1999-12-04 Eric M. Ludlam <eric@siege-engine.com>
973 * eieio.el: Updated version number.
976 Added methods with errors for eieio-speedbar objects which don't
977 implement non-object children.
980 Moved eieio-done-customizing
982 1999-12-01 Eric M. Ludlam <eric@siege-engine.com>
985 Changed all eieio-speedbar functions to eieio-class-speedbar to be
988 * eieio.texi: Removed references to dbiff.
990 * eieio.el: Updated version number.
993 buttonface's type is now (or symbol face). That way it will pass even
994 if speedbar hasn't been loaded yet.
995 Fixed comments at beginning.
997 * eieio.texi: Spell checked.
1000 Added eieio-version variable and test function.
1001 Ran through checkdoc.
1003 * eieio.texi: Various MI updates to slots.
1004 Doc class-parents* functions which are new with MI. Note that
1005 class-parent is depricated.
1007 * eieio.el: Update version number
1009 * eieio-speedbar.el:
1010 Tweeked the default keymap and menu.
1013 When building the test function for new classes, make sure it is an
1014 object before calling the `same-class-p' primitive. Also add new
1015 primitive `-child-p' to test of an object inherits anything from a
1019 Added tests for auto-generated predicates for class objects.
1021 * eieio-speedbar.el:
1022 Line info for children is now derived from the parent object.
1023 nearest-object will now calc depth if it is not provided.
1025 1999-11-27 Eric M. Ludlam <eric@siege-engine.com>
1027 * eieio-tests.el: New file.
1029 1999-11-24 Eric M. Ludlam <eric@siege-engine.com>
1032 Fixed oset for class-slots w/ type validation.
1033 Fixed call-next-method to only call the first method found.
1035 1999-11-23 Eric M. Ludlam <eric@siege-engine.com>
1037 * eieio-speedbar.el:
1038 Fixed random crufty bugs.
1040 * eieio-speedbar.el: New file.
1042 1999-11-19 Eric M. Ludlam <eric@siege-engine.com>
1045 Changed no-method-definition method to no-applicable-method.
1047 * chart.el: Added initargs to some slots.
1050 changed no-method-definition to no-applicable-method as per hyperspec.
1053 Removed anti-multi-inheritance documentation.
1054 Added docs on no-method-definition and no-next-method methods
1058 If a method is not available for a given object, call the method
1059 `no-method-definition' instead of signaling it. This method calls the
1060 signal. Call signal directly iff there is no object to call on.
1062 New function next-method-p If there is no next method, call the method
1063 `no-next-method' which is a new primitive method which signals that
1064 there is no next method.
1066 Make sure `call-next-method' returns the value of the last lambda
1069 Add new signal `no-next-method'
1071 1999-11-15 Eric M. Ludlam <eric@siege-engine.com>
1073 * eieio.el: Fixed doc of slot-unboundp
1074 eieiomt-next now returns a list of parents.
1075 call-next-method, and the sym-optimizer now can handle the
1076 list of parents when searching for methods.
1079 Fixed defmethod-engine to keep parent classes in the same order.
1080 Fixed child-of-class-p to work properly with MI.
1082 1999-09-16 Eric M. Ludlam <eric@siege-engine.com>
1084 * eieio.texi: Fixed compile errors
1087 Removed "execessive info" in a doc string for find-class.
1089 1999-09-15 Eric M. Ludlam <eric@siege-engine.com>
1092 Updated to the latest version. Changed all "field" words to "slot" to
1093 be compatible with CLOS.
1095 1999-09-10 Eric M. Ludlam <eric@siege-engine.com>
1097 * eieio-opt.el: Removed thing-to-string
1099 * eieio-doc.el: Fixed checkdoc stuff.
1102 eieio-describe-class): Completely revamped to use
1103 the documentation (pre-built), and new generic apropoing functions.
1104 (eieio-read-class): New function
1105 (eieio-all-generic-functions): New functions
1106 (eieio-method-documentation): New function
1107 (eieio-describe-slots): Deleted
1109 1999-09-08 Eric M. Ludlam <eric@siege-engine.com>
1112 Do not add a default to doc strings if it is unbound.
1115 Be careful about unbound slots when creating doc. Just leave off the
1118 * eieio.texi: Added set-slot-value details.
1119 Fixed a slot-value example.
1121 * eieio.el: Added `set-slot-value'
1124 Added doc about unbound slots, and `slot-makeunbound' and
1128 Added slot-makeunbound, and implemented slot-boundp
1131 Implemented unbound slots. New variable eieio-unbound.
1132 New function eieio-barf-if-slot-unbound.
1133 New method slot-unbound.
1134 Initialize uninitialized slits to the uninterned symbol unbound.
1135 Call eieio-barf-if-slot-unbound when returning a slot value.
1138 Fixed type check when identifying specific classes or object.
1139 Fixed Doc to -of-class-p functions.
1141 1999-09-06 Eric M. Ludlam <eric@siege-engine.com>
1144 Added documentation about class-options.
1145 Fixed typo about standard-object.
1148 Added class-options, including :documentation, and :allow-nil-initform.
1149 Make it possible to disable typechecking of initializers completely.
1152 Fixed up compiler warnings (the xref followed by , or . in RH 6.0)
1154 1999-09-05 Eric M. Ludlam <eric@siege-engine.com>
1157 Fixed to work with new eieio forms.
1159 * eieio-doc.el: Fixed a compiler warning.
1161 * eieio-opt.el: Fixed compiler warnings.
1163 * eieio.el: Fixed some compiler warnings.
1166 Added the Type specifier into the documentation.
1169 Added a few more details on differnces.
1170 Added xref for :type specifier.
1172 * eieio.el: Added find-class, and boolean-p.
1173 Added in a few section break comments.
1175 * eieio.el (eieio-rebuild-doc-string):
1179 Convert TYPE slot in class into a vector for faster access.
1180 Do type checking in oset and oset-default.
1181 Do type checking when building a class's default values.
1183 1999-09-04 Eric M. Ludlam <eric@siege-engine.com>
1185 * eieio.el: Updated the version number.
1188 Fixed to handle the new class structure. Add doc for class allocated
1189 slots. Private is a slot attribute.
1192 Fixed `describe' to handle the new class structure.
1195 Removed several old defconsts, (all with PRIVATE in them) and added
1196 several new ones (class-protection, and all with `allocation' in
1198 (defclass-engine): Updated to handle multiple parents. Removed all
1199 ref to private parts. Extract class init from parent to function, and
1200 loop over it. Reverse end results of public attributes. Store
1201 private status in a list. Store class allocated vector information.
1202 (eieio-add-new-field, eieio-copy-parents-into-subclass):New functions.
1203 (oref-engine, oref-default-engine, oset-engine, oset-default-engine):
1204 Handle class allocated field referencing.
1205 (class-parents, class-parents-fast): New functions.
1206 (class-parent, class-parent-fast): Update to call plural version.
1207 (child-of-class-p): Update to handle multiple parents.
1208 (eieio-class-field-name-index): New function.
1209 (eieio-rebuild-doc-string): Removed private field docing. Added
1210 private as a property of regular slots. Doc class allocated slots.
1212 1999-07-12 Eric M. Ludlam <eric@siege-engine.com>
1215 Fixed for use under XEmacs 20. Upgraded version number.
1217 1999-06-19 Eric M. Ludlam <eric@siege-engine.com>
1220 Added the function object-assoc-list-safe.
1222 1999-03-18 Eric M. Ludlam <eric@siege-engine.com>
1225 Patch from Dave Love to create a function index.
1227 1999-03-09 Eric M. Ludlam <eric@siege-engine.com>
1229 * Makefile.old: Fixed make of doc rule.
1231 * eieio.el: Updated the version number.
1233 1999-02-25 Eric M. Ludlam <eric@siege-engine.com>
1235 * eieio.el: Updated the list print routine.
1238 Updated the slottype filter to find augmented repeating object types.
1239 When a widget's value is nil, but it's type is object, create a new object
1240 of type :objecttype.
1241 Turn the object name into an editable field which works.
1243 1999-02-18 Eric M. Ludlam <eric@siege-engine.com>
1245 * eieio.texi: Fixed build problem.
1247 * eieio.texi: Fixed up some rough edges.
1250 Added lisp examples into the dist.
1252 * psql.el, dbif-browse.el:
1253 Ran through checkdoc.
1256 Ran through checkdoc. Enabled runing on terminals.
1258 * eieio-custom.el: Tweak the display.
1261 constructor -> initialize-instance changes.
1263 * dbif-browse.el: Ran through checkdoc.
1266 Updated for custom, and better VERSION setting
1268 1999-02-13 Eric M. Ludlam <eric@siege-engine.com>
1270 * eieio.el: Removed history party.
1272 1999-02-03 Eric M. Ludlam <eric@siege-engine.com>
1274 * eieio.texi: More on customizing objects.
1276 * widget-d.el: :docstring -> :documentation
1279 Added new generic method for when an object is 'applyd'
1280 Added object-edit custom type filter so sub-objects are not cloned
1281 in edit-in-place mode.
1282 Added :clone-object-children widget tag for above.
1283 Added some buffer-local variable defvars to hack compiler warnings.
1285 1999-02-02 Eric M. Ludlam <eric@siege-engine.com>
1287 * eieio.el, eieio-custom.el:
1288 Ran through checkdoc.
1290 1999-01-28 Eric M. Ludlam <eric@siege-engine.com>
1292 * eieio.texi: Fixed up lots of doc bugs.
1293 Added customizing node
1294 Changed :docstring to :documentation
1295 Lots of tweeks, and added lots of new slot specifiers.
1297 * eieio.el: :docstring to :documentation
1298 Added :documentation to the help on defclass.
1299 Changed slot validation to cl-macs `typep' function.
1300 Added symbols to the eieio code printer
1301 Added eieio-custom autoloads.
1304 Fixed up the two way customization.
1305 Added `eieio-customize-object' and `eieio-custom-widget-insert'
1306 functions as conveniences which are also methods for editing an object
1307 `in place'. fixed up the 'object widget to clone the object before
1308 storage, so the in-place editor is safe.
1309 Tweeked the display.
1311 1999-01-21 Eric M. Ludlam <eric@siege-engine.com>
1313 * tree.el: Updated to use with-slots
1316 Added introspection chapter. @defuns for obj-fields, and class-slot-initarg.
1317 Removed comments about adding more built ins for wishlist.
1318 Removed constructor/destructor doc, and all quoted functions, and
1319 descriptions with @defun text describing the new initialize-instance,
1320 shared-initialize, clone, and print-object methods.
1321 Added @defun for with-slots
1322 Added @defun for slot-exists-p, and slot-boundp.
1323 Added @defun class-of
1325 * eieio-custom.el: New file.
1328 Added indentation style for `with-slots'
1329 Added `condition-case' protection in object-assoc.
1330 Return nil if no initarg is available in initarg-to-attribute
1331 Fixed `slot-missing' standard method.
1332 Added `clone' standard method.
1334 Added space between list elements when outputting.
1336 1999-01-15 Eric M. Ludlam <eric@siege-engine.com>
1339 Fixed compile warning in slot-missing generic fn.
1342 Rearranged class slot positions to add allocation, type, and custom.
1343 Updated docs for new slot types.
1344 Use const instead of a number when checking for a parent.
1345 When creating a class, handle the new types of reader, writer, alloc,
1347 Implement generation of generic functions for the reader/writer slot.
1348 Rebane `constructor' to `initialize-instance'
1349 Change all applicable calls of (signale 'invalid-slot-name ...) to
1350 (slot-missing) generic method.
1351 Added `eieio-perform-slot-validation' and `eieio-validate-slot-value'
1352 for use with the :type slot specifier. Used it in oset.
1353 Added `with-slots' (thanks Kevin Rodgers)
1354 Added comment that class-name is wrong.
1355 Added `obj-fields', `class-slot-initarg', `slot-boundp', and `slot-exists-p'
1356 Removed `eieio-set-fields'. It became the method `shared-initialize'.
1357 Added signal `invalid-slot-type' when generating errors for
1358 the :type slot parameter.
1359 Create an alias for `standard-class' to eieio-default-superclass.
1360 Implemented `object-write' to write out an object in such a way that
1361 it can be read in. This require the fns `eieio-override-prin1', and
1363 Added function `change-class' with no implementation but an error.
1364 Added edebug spec for with-slots
1365 Added eieio-custom autoload.
1367 1998-12-16 Eric M. Ludlam <eric@siege-engine.com>
1369 * eieio.el: Removed a typo.
1372 When describing a class, do not print the PRIVATE section if there are
1374 Added a speedbar mode for showing the current EIEIO class state.
1376 1998-10-27 Eric M. Ludlam <eric@siege-engine.com>
1379 Added Makefile and info rules.
1381 * tree.el, eieio.el, eieio-opt.el, eieio-doc.el, eieio-comp.el, dbif.el:
1382 Ran through checkdoc.
1384 * dbif-edit.el: New file.
1386 * chart.el: Ran through checkdoc.
1388 * call-tree.el: Removed stray provide
1390 * call-tree.el: Ran through checkdoc.
1392 * Makefile.old: New file.
1395 Fixed for lack of widget stuff.
1398 Fixed documentation for defclass.
1399 Fixed creation of object predicate.
1400 Added object-assoc, object-assoc-list.
1403 Removed all the widget references.
1406 Added association list stuff (object-assoc, object-assoc-list)
1407 Fixed some spelling.
1409 1998-09-11 Eric M. Ludlam <eric@siege-engine.com>
1411 * psql.el: Got it to work again
1413 1998-03-12 Eric M. Ludlam <eric@siege-engine.com>
1415 * eieio.el: Doc fixes.
1417 1997-10-17 Eric M. Ludlam <eric@siege-engine.com>
1420 Added an object-write method to the super class.
1422 1997-10-10 Eric M. Ludlam <eric@siege-engine.com>
1424 * dialog.texi: Added disclaimer
1426 1997-08-09 Eric M. Ludlam <eric@siege-engine.com>
1428 * eieio.el: Made checkdoc compliant
1430 1997-03-01 Eric M. Ludlam <eric@siege-engine.com>
1433 Fixed char-space-usage to use generic du, not at a specific path.
1436 Text widgets now have handle-motion set to 'traditional for optimizations.
1439 Added maybe key optimization. Widgets can now specify thier handle-motion
1440 field as 'traditional. Traditional movement is handled by dialog-mode unless
1441 the motions exceeds the bounds of the widget.
1444 Text field widgets no longer put their object on the < and > buttons
1446 1997-02-23 Eric M. Ludlam <eric@siege-engine.com>
1449 A boundp should have been fboundp in data-valid-color-p
1451 1997-01-29 Eric M. Ludlam <eric@siege-engine.com>
1454 changed "Dialog" to "Dialog Mode" in title
1456 * dlg-class.el, dlg-config.el:
1457 changed the name of dialog.el to dialog-mode.el
1459 * eieiocomp.el: New file.
1462 Renamed this file. Added some comments, and fixed xemacs color loader
1464 1997-01-26 Eric M. Ludlam <eric@siege-engine.com>
1466 * dlg-class.el, dialog-mode.el:
1469 * dialog.texi: fixed the includes
1472 Fixed @includes to new file names
1474 1997-01-24 Eric M. Ludlam <eric@siege-engine.com>
1476 * tree.el: Updated some documentation
1478 * dialog-mode.el: Fixed up documentation.
1480 * dlg-config.el: changed doc strings
1482 * eieio-doc.el: fixed documentation strings
1484 1997-01-23 Eric M. Ludlam <eric@siege-engine.com>
1487 Modified all doc strings to conform to standards.
1488 Modified all cl things to be more robust when loading.
1489 Added eieio-hook run whenever defmethod is called.
1491 1997-01-21 Eric M. Ludlam <eric@siege-engine.com>
1493 * d-config.texi: Re ran doc generator
1495 * d-widget.texi: Re-ran with new hierarchy
1497 * dialog.texi, eieio.texi:
1500 1997-01-19 Eric M. Ludlam <eric@siege-engine.com>
1502 * eieio.el: Iffed out imenu for XEmacs
1505 Added XEmacs specific checks, including completely disableing those
1506 dialogs which make no sense there.
1509 Added XEmacs specific fixes, particularly around face/font management.
1510 Make dlg-bunch-of-simple-toggles smart enough to throw out variables
1511 which are not bound.
1514 Added XEmacs specific fixes, particularly around face/font management
1515 and lack of working replace-match
1517 1997-01-18 Eric M. Ludlam <eric@siege-engine.com>
1520 Added help button to config frame. Added new info button. Added help
1521 functions to all buttons which didn't already have help. Updated
1522 string-to-list functions to be more configurable.
1525 Fixed bugs with data-object-symbol's edit-config-file method when
1526 dealing with `nil' as a list
1529 Updated to fix bugs found when testing the auto-edit feature.
1532 Added new menu items for ange-ftp, dired, citation, bookmarks, and
1533 ispell. Added the autoload calls. Made submenu for mail related
1537 Turned all blocks of toggles into dlg-bunch-of-simple-toggles calls,
1538 and added many new dialog boxes including ange-ftp, dired, citation,
1539 bookmarks, and ispell. Added calls to the new dlg-info-button, took
1540 advantage of the new widget-help system in many places.
1542 1997-01-16 Eric M. Ludlam <eric@siege-engine.com>
1545 Added mode line modifications for dialog mode
1547 1997-01-10 Eric M. Ludlam <eric@siege-engine.com>
1549 * widget-i.el, widget-d.el:
1550 Added support for widget level help
1553 Specialized routines to help build configuration dialog boxes.
1556 Specialized classes for editing configuration items in.
1559 Added support for widget-level help
1561 1997-01-07 Eric M. Ludlam <eric@siege-engine.com>
1564 Fixed compile bugs by moving some things around, and adding some
1565 parameters or comments
1567 * e-config.el: Fixed bug in postscript
1569 * dlg-config.el: Changes to string-to-list
1572 Added new translated version of data-object-symbol (user defined
1575 1997-01-04 Eric M. Ludlam <eric@siege-engine.com>
1577 * dialog-mode.el, chart.el:
1578 Added check so this file can be byte-compiled in batch mode
1580 1996-12-20 Eric M. Ludlam <eric@siege-engine.com>
1583 Added special command to update the lisp keywords to include
1586 1996-12-19 Eric M. Ludlam <eric@siege-engine.com>
1589 Added a couple utility functions for use with the specialized data
1593 Fixed up option-text widget to be more reliable
1596 Fixed a few bugs, added lots of ps-print stuff
1598 1996-12-12 Eric M. Ludlam <eric@siege-engine.com>
1601 More XEmacs support, and fewer byte-compiler errors. XEmacs now finds
1602 background mode more reliably.
1604 * eieio-doc.el: comment change
1606 * eieio-opt.el: doc change
1609 Fixed XEmacs but when printing code with reference byte-code in it.
1612 Added some speed optimizations. Fixed geometry management for groups
1613 with no children. Mouse yank in text fixed. Title added to popup
1614 menus on option buttons. Fixed spelling.
1617 Spelling fixes. Added :title to option button to customize menu title
1621 Fixed spelling all over. Fixed some compiler warnings. Added hack to
1622 make edebug print objects and classes nicely.
1624 1996-12-05 Eric M. Ludlam <eric@siege-engine.com>
1627 Added new constants for inicies into classes and objects which were
1629 Fixed problems with lambda-default. It behaves like lambda, except it
1630 has `lambda-default' as the first symbol instead.
1632 1996-11-27 Eric M. Ludlam <eric@siege-engine.com>
1635 Fixed string to tex function and some comments
1638 Added updated information about call-next-method's new parameter
1641 Modified widget-text-field to maintain 2D scrolling info.
1642 Added widget-text-box, widget-scrolled-text, widget-combo-box,
1643 widget-arrow-button.
1644 Updated widget-scale and widget-scrollbar so they worked.
1647 Added `replacement-args' to call-next-method
1648 Added new method off default superclass for printing objects with a
1652 Added some keyboard bindings
1653 Made dialog-refresh smarter
1656 * eieio-opt.el: New file.
1659 Added giant text-widget speedups (redraw-smarts, value-cache)
1660 Added multi-line text widgets
1661 Added data-object `object-print' method
1662 Finished Scrollbars & scales, added arrow-button
1663 Created combo-box (text and option button combo)
1664 Created scrolled text (scrollbar/multi-line text combination)
1666 1996-11-22 Eric M. Ludlam <eric@siege-engine.com>
1669 Fixed up comments describing the object.
1670 Added new default-object cache. (Major speedup)
1671 Fixed object-p to be faster
1672 Fixed the signal for no method
1673 Fixed lambda-default to work as documented under newer default scheme
1674 When printing, the method tree is reversed so that they appear as
1677 1996-11-18 Eric M. Ludlam <eric@siege-engine.com>
1680 Updated some key bindings, and fixed up the demo some.
1681 dialog-build-group can now accept a string as the group, and it will
1682 auto make a frame with that label
1685 fixed docstrings so they could be used in the manual.
1686 Fixed data-object-command-option which was broken. (Was evaluating a
1687 string, not actually reading the string into a list first)
1689 * eieio-comp.el: Fixed the comments
1692 Moved all browsing commands into eieio-opt.el
1693 Added the eieio-attribute-to-initarg command
1694 Changed oref-default-engine to accept a class as well as an object.
1697 Updated all the documentation so it was good enough for the texinfo
1701 Added notes about the new eieiodoc-class command for creating
1702 documentation about classes in texinfo cross-referenced format
1704 * d-widget.texi, d-dataobj.texi, d-config.texi:
1707 1996-11-17 Eric M. Ludlam <eric@siege-engine.com>
1709 * d-config.texi, d-dataobj.texi, eieio-doc.el, dialog.texi, d-widget.texi:
1712 1996-11-14 Eric M. Ludlam <eric@siege-engine.com>
1715 Added documentation referring to the 0.8 upgrade (see eieio.el)
1717 1996-11-13 Eric M. Ludlam <eric@siege-engine.com>
1720 Added a new warning message when there is no method implementations,
1721 and created new signal symbols no-method-definition and
1725 Translated several things into macros, and fixed a bug in (call-next-method)
1726 which ignored the superclass
1729 Created more smart defaults to use the object name as the symbol or
1730 command if needed. Added feature to string-to-int to protect against
1731 floating point numbers if needed.
1734 Updated all widget and data-object initializers to use the new smart
1737 * ecfg-menu.el: mail and rmail were split
1739 1996-11-10 Eric M. Ludlam <eric@siege-engine.com>
1742 changed the dlg-init box to handle a new parameter, and take up less
1743 space (4 lines minimum now.)
1746 Added use of new dlg-init parameterer, and made radio-box in rmail
1749 1996-11-09 Eric M. Ludlam <eric@siege-engine.com>
1752 Upgraded box-drawing, and added some smarter geometry management
1755 Added a bunch of xemacs support
1758 Fixed some xemacs specific bugs and/or errors
1761 Moved byte-compiler specific stuff into a different file.
1762 Added more edebug specs for all the different macros, and fixed the
1765 * eieio-comp.el: New file.
1767 1996-11-07 Eric M. Ludlam <eric@siege-engine.com>
1770 Fixed how classes are created so that defmethod can be called when
1774 Added or updated constructors of different types. Fixed -list-index
1775 section replacemet routine.
1778 Added widget-gadget-translator type
1780 * widget-i.el: Added gadget-translator type.
1781 Added optimization for getting values from previous widget.
1782 Added checks in resizers to avoid non-visual widgets
1783 Labeled text now defaults it's label to it's name if none is given
1784 Labels reverse-reference their data objects
1787 Updated to use the new widget smart defaults
1789 1996-11-01 Eric M. Ludlam <eric@siege-engine.com>
1792 Created new dialog-current-parent for use with dialog-build-group.
1793 Fixed color maker. Adjusted top-level-shell's init paramters
1794 Added neat indent properties to -width-writeable macro
1795 Added dialog-last-maybe-command variable to make maybe command
1796 frieldlier to commands that like to know when they are repeating themselves.
1797 Made create-widget not take a parameter, but be backward compatible still.
1798 Deleted widget-bunch-o-chars.
1799 changed dialog-test.
1801 * dlg-class.el: New file.
1804 Removed all class definitions to dlg-class.el
1805 Updated widget-creators to use new defaults from dialog set.
1808 Removed all old `get-*' routines, and made the accessors in widget-d
1809 Created new heuristic defaults for x and y.
1810 negative offsets are now `box' smart.
1811 Boxed widgets can now have selected sides turned on or off.
1812 Group size calculator is now box smart.
1813 Gave new smart defaults to frame's label, and label's label.
1814 Added widget-labeled-text implementation (verify only)
1815 Added widget-push-button implementation (verify only)
1816 Fixed radio box button init bug
1817 Replaced occurances of `widget-bunch-o-chars' with make-string
1820 Added load hooks for widget-d file. Started using accessors.
1821 Changed initforms of x, y. Added resizeable flag to visuals
1822 Changed protection of boxed. Added box-sides.
1823 Created new widget-labeled-text group for text fields with labels.
1824 Created new widget-push-button, to be used instead of widget-button
1825 which now acts as a basic type from which other buttons inherit.
1826 Added justification default for option button.
1829 Fixed :accessor part in class declaration to use methods.
1830 Fixed some doc strings. Added lisp indenting and compiling tags to
1831 some symbols. Created oset-default to set default values in existing
1832 classes. Added object-name-string function.
1834 1996-10-28 Eric M. Ludlam <eric@siege-engine.com>
1837 Removed all reference to classmethods
1839 1996-10-19 Eric M. Ludlam <eric@siege-engine.com>
1842 Added use of normalized coordinates to visuals. Added handle-motion
1843 for widgets which want to use motion keystrokes (up, down, etc)
1846 Fixed repetitive geometry management call (ick). Fixed frame label
1847 positioning. Fixed mouse-color over option & toggle button types.
1848 Fixed cursor positioning over clicked buttons. Removed recursive
1849 input dispatching. Added ability to create children at the beginning
1853 Moved geometry management to after construction phase
1855 1996-10-17 Eric M. Ludlam <eric@siege-engine.com>
1858 Implemented a new keyboard scheme with `maybe' keys, which will
1859 execute commands from global map unless a widget is requireing those
1860 keys. At this time, the text widget grabs arrow keys for motion, but
1861 otherwise they are used to navigate around the dialog box.
1864 Upgraded some widget input to handle new keyboard scheme
1867 Fixed XEmacs related byte compilation errors
1870 Fixed byte compilation errors associated with XEmacs
1872 1996-10-12 Eric M. Ludlam <eric@siege-engine.com>
1875 Added the ability to byte compile methods using moder emacs lisp
1878 * dlg-config.el, e-config.el, chart.el, dbif-browse.el, widget-i.el:
1879 Fixed byte-compile warnings
1881 1996-09-27 Eric M. Ludlam <eric@siege-engine.com>
1884 Text widget now attaches itself into a text property for faster access
1888 Added a way to make input bypass the recursive pass-in using nifty
1891 1996-09-24 Eric M. Ludlam <eric@siege-engine.com>
1894 Tried to add some xemacs support, and started using some features of
1898 fixed some event management, and added a little xemacs support
1900 1996-09-21 Eric M. Ludlam <eric@siege-engine.com>
1902 * e-config.el, ecfg-menu.el:
1906 Added navigation list to toplevel shell, and added label list to labes
1907 for multi-line labels
1910 Added ability in all widgets to handle symbol input events. Labels
1911 can now display multi-line strings. (thus, buttons can do multiline
1912 strings.) toplevel shell now creates a navigation list so TAB and
1913 M-TAB now navigate widgets forwards and backwards quickly, without
1914 complex tree searches. This also speeds up general group input
1918 Dialog can now load if the current font does not support bold or
1919 italic. Added smarter keymap handlers for symbols as well as
1920 characters and event. Added meta map, so all meta commands now work
1921 in text fields. Fixed dialog-test to not quit whenever alternate
1922 buffer is shown, and to use positioning deltas
1925 Added many new data objects which know how to save themselves as
1926 symbols, hooks, disabled-commands, string-numbers, packages etc. Also
1927 added the ability to save themselves into a file, either the
1928 .Xdefaults, or .emacs file.
1930 1996-08-19 Eric M. Ludlam <eric@siege-engine.com>
1933 Added verification speedups for rectangles, and relational positioning
1934 updates. Added option buttons, and help clicks for all buttons.
1937 Added documentation strings to every field as apropriate
1940 Added additional documentation support, and speedups using obarrays
1941 instead of association lists.
1943 1996-08-17 Eric M. Ludlam <eric@siege-engine.com>
1946 Added commands needed to display the automatic edits in a
1950 Added many keymap upgrades, some in the hope of getting xemacs to
1951 work. Also added many color loaders.
1953 1996-08-15 Eric M. Ludlam <eric@siege-engine.com>
1956 Added new node describing the sample programs.
1958 1996-08-11 Eric M. Ludlam <eric@siege-engine.com>
1960 * dlg-config.el: New file.
1962 1996-07-28 Eric M. Ludlam <eric@siege-engine.com>
1965 Made a better keymap, added specialized color loader for specialized
1966 faces, and updated the test case
1969 Updated many behaviors, new faces, and added some methods to some
1973 Updated some classes, and added a few new ones.
1976 Added big speedup to method execution by using a more intelligent
1979 1996-06-17 Eric M. Ludlam <eric@siege-engine.com>
1982 Udated for newer version of eieio
1985 Moved some items out of private hands so that they can be worked with
1988 Fixed insert-overwrite-face so it uses text properties and not overlays
1989 Fixed dialog-test so some of the faces really exist.
1992 Fixed groups so that TAB navigates
1993 Fixed buttons to use mouse face to make it more efficient
1995 1996-06-16 Eric M. Ludlam <eric@siege-engine.com>
1997 * call-tree.el: New file.
1999 1996-06-01 Eric M. Ludlam <eric@siege-engine.com>
2002 Fixed comments in beginning, and added accessors, and attempts at
2003 using setf with cl.el
2006 Updated many parts to manage the problems created with \\ in lisp
2009 1996-04-11 Eric M. Ludlam <eric@siege-engine.com>
2012 Added changes allowing a field to be blank.
2014 1996-04-10 Eric M. Ludlam <eric@siege-engine.com>
2017 Added ability to change where a parent node appears (top. bottom,
2018 middle) of children nodes.
2021 Added speedup by attaching symbols to class names with values being
2022 indexes into an object.
2024 1996-03-28 Eric M. Ludlam <eric@siege-engine.com>
2026 * dbif-browse.el: Removed errant function
2028 * eieio.texi: Updated documentation
2031 Added more comments, plus eieio-class-tree
2033 * widget-i.el, widget-d.el, dialog-mode.el, dialog-tree.el:
2036 * eieio.el: *** empty log message ***
2038 * psql.el, dbif.el, dbif-browse.el:
2041 1996-03-27 Eric M. Ludlam <eric@siege-engine.com>
2043 * chart.el: New file.
2045 1996-03-23 Eric M. Ludlam <eric@siege-engine.com>
2047 * eieio.el: *** empty log message ***
2049 1996-03-10 Eric M. Ludlam <eric@siege-engine.com>
2051 * tree.el: Forgot to update version
2054 Added some more useful functions, converted classmethods to CLOS
2055 methods, and discovered "make-string" which speeds up drawing
2058 Added defgeneric, defmethod and support routines
2061 Added details surrounding defgeneric and defmethod. Updated wish list
2064 1996-02-25 Eric M. Ludlam <eric@siege-engine.com>
2066 * eieio.texi, tree.el, eieio.el: