pjs/editor/base
kin%netscape.com 88c878f24c Fixes for bug #66308 ([embed] XPIDL'ize transaction manager)
sr=sfraser@netscape.com,mscott@netscape.com r=jfrancis@netscape.com

* nsITransaction, nsITransactionListenter, nsITransactionManager have
  been XPIDL'ized and moved into mozilla/editor/txmgr/idl. The versions
  of these interfaces in mozilla/editor/txmgr/public are being CVS removed.

* Renamed Do(), Undo(), and Redo() to DoTransaction(), UndoTransaction(),
  and RedoTransaction() to avoid reserved word problems in languages like
  JS. I did a sweep through editor and mailnews to remove these methods.

* PeekUndoStack() and PeekRedoStack() now return an AddRef'd pointer.

* Removed GetUndoString(), GetRedoString() and Write() from the
  nsITransaction interface. Neither editor or mailnews really made
  use of these methods.

* Removed Write() from the nsITransactionManager.cpp interface.

* The Transaction Manager now supports weak references.

* Added support for nsITransactionList to the TransactionManager
  to allow access to all transactions on the Undo and Redo stacks, as
  well as auto-aggregated transactions.

* Removed all references to nsITransactionDescription from txmgr and editor.

* Added nsPIEditorTransaction and made all Editor internal transactions
  inherit from it so we can distinguish between our transactions and
  ones from 3rd parties.

New files checked in:

  editor/txmgr/idl/nsITransaction.idl
  editor/txmgr/idl/nsITransactionList.idl
  editor/txmgr/idl/nsITransactionListener.idl
  editor/txmgr/idl/nsITransactionManager.idl
  editor/txmgr/src/nsITransactionList.cpp
  editor/txmgr/src/nsITransactionList.h
  editor/idl/nsPIEditorTransaction.idl

Files that were CVS removed:

  editor/txmgr/public/nsITransaction.h
  editor/txmgr/public/nsITransactionListener.h
  editor/txmgr/public/nsITransactionManager.h
  editor/txmgr/idl/nsITransactionDescription.h
  editor/base/IMECommitTxn.cpp
  editor/base/IMECommitTxn.h

Files modified:

  editor/Makefile.in
  editor/makefile.win
  editor/base/ChangeAttributeTxn.cpp
  editor/base/ChangeAttributeTxn.h
  editor/base/CreateElementTxn.cpp
  editor/base/CreateElementTxn.h
  editor/base/DeleteElementTxn.cpp
  editor/base/DeleteElementTxn.h
  editor/base/DeleteRangeTxn.cpp
  editor/base/DeleteRangeTxn.h
  editor/base/DeleteTextTxn.cpp
  editor/base/DeleteTextTxn.h
  editor/base/EditAggregateTxn.cpp
  editor/base/EditAggregateTxn.h
  editor/base/EditTxn.cpp
  editor/base/EditTxn.h
  editor/base/IMECommitTxn.cpp
  editor/base/IMECommitTxn.h
  editor/base/IMETextTxn.cpp
  editor/base/IMETextTxn.h
  editor/base/InsertElementTxn.cpp
  editor/base/InsertElementTxn.h
  editor/base/InsertTextTxn.cpp
  editor/base/InsertTextTxn.h
  editor/base/JoinElementTxn.cpp
  editor/base/JoinElementTxn.h
  editor/base/nsEditor.cpp
  editor/base/nsEditorShell.cpp
  editor/base/nsEditorShell.h
  editor/base/nsEditorTxnLog.cpp
  editor/base/nsStyleSheetTxns.cpp
  editor/base/nsStyleSheetTxns.h
  editor/base/PlaceholderTxn.cpp
  editor/base/PlaceholderTxn.h
  editor/base/SetDocTitleTxn.cpp
  editor/base/SetDocTitleTxn.h
  editor/base/SplitElementTxn.cpp
  editor/base/SplitElementTxn.h
  editor/idl/Makefile.in
  editor/idl/makefile.win
  editor/idl/MANIFEST
  editor/idl/nsIEditorShell.idl
  editor/macbuild/editor.mcp
  editor/macbuild/EditorIDL.mcp
  editor/txmgr/idl/Makefile.in
  editor/txmgr/idl/makefile.win
  editor/txmgr/idl/MANIFEST
  editor/txmgr/idl/nsITransactionManager.idl
  editor/txmgr/macbuild/txmgr.mcp
  editor/txmgr/macbuild/txmgrIDL.mcp
  editor/txmgr/public/Makefile.in
  editor/txmgr/public/makefile.win
  editor/txmgr/public/MANIFEST
  editor/txmgr/src/Makefile.in
  editor/txmgr/src/makefile.win
  editor/txmgr/src/nsTransactionItem.cpp
  editor/txmgr/src/nsTransactionItem.h
  editor/txmgr/src/nsTransactionList.cpp
  editor/txmgr/src/nsTransactionList.h
  editor/txmgr/src/nsTransactionManager.cpp
  editor/txmgr/src/nsTransactionManager.h
  editor/txmgr/src/nsTransactionManagerFactory.cpp
  editor/txmgr/src/nsTransactionStack.cpp
  editor/txmgr/src/nsTransactionStack.h
  editor/txmgr/tests/TestTXMgr.cpp
  editor/ui/composer/content/EditorCommandsDebug.js
  editor/ui/composer/content/editorOverlay.xul
  editor/ui/composer/locale/en-US/editorOverlay.dtd
  mailnews/base/src/nsMessenger.cpp
  mailnews/base/util/nsMsgTxn.cpp
  mailnews/base/util/nsMsgTxn.h
  mailnews/imap/src/nsImapMailFolder.cpp
  mailnews/imap/src/nsImapUndoTxn.cpp
  mailnews/imap/src/nsImapUndoTxn.h
  mailnews/local/src/nsLocalMailFolder.cpp
  mailnews/local/src/nsLocalUndoTxn.cpp
  mailnews/local/src/nsLocalUndoTxn.h
2001-03-09 14:32:06 +00:00
..
.cvsignore Add cvsignore entries for makefiles generated bu autoconf. 1998-12-05 09:07:33 +00:00
ChangeAttributeTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
ChangeAttributeTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
CreateElementTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
CreateElementTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
DeleteElementTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
DeleteElementTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
DeleteRangeTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
DeleteRangeTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
DeleteTextTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
DeleteTextTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
EditAggregateTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
EditAggregateTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
EditTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
EditTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
IMETextTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
IMETextTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
InsertElementTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
InsertElementTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
InsertTextTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
InsertTextTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
JoinElementTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
JoinElementTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
Makefile.in Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
PlaceholderTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
PlaceholderTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
SetDocTitleTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
SetDocTitleTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
SplitElementTxn.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
SplitElementTxn.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
TextEditorTest.cpp Change implicit conversion from 2001-03-08 08:05:05 +00:00
TextEditorTest.h Split plaintext methods off into nsIPlaintextEditor API. sr=sfraser, r=jfrancis 2000-11-17 00:25:31 +00:00
TransactionFactory.cpp Make setting doc title undoable (add SetDocumentTitle transaction) b=60129, add export to text file, b=51798, some interface param changes to table editing methods as part of embedding work (b=66300). r=brade, sr=sfraser 2001-02-26 22:02:58 +00:00
TransactionFactory.h updated xPL license boilerplate to v1.1, a=chofmann@netscape.com,r=endico@mozilla.org 1999-11-06 03:43:54 +00:00
TypeInState.cpp small but pervasive change to make nsIDOMSelection an xpidl interface. also broke it into 2 interfaces, nsISelection and nsISelectionPrivate. moved nsIDOMSelectionListener also to xpidl. these new idl files live in layout/base/public. r=sfraser, r=anthonyd bug 48575 2000-09-14 11:45:01 +00:00
TypeInState.h small but pervasive change to make nsIDOMSelection an xpidl interface. also broke it into 2 interfaces, nsISelection and nsISelectionPrivate. moved nsIDOMSelectionListener also to xpidl. these new idl files live in layout/base/public. r=sfraser, r=anthonyd bug 48575 2000-09-14 11:45:01 +00:00
makefile.win Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
nsAOLCiter.cpp making string conversions explicit 2000-04-21 09:33:45 +00:00
nsAOLCiter.h 6276: Add wrapping support for mail. 2000-04-20 22:45:54 +00:00
nsComposerCommands.cpp small but pervasive change to make nsIDOMSelection an xpidl interface. also broke it into 2 interfaces, nsISelection and nsISelectionPrivate. moved nsIDOMSelectionListener also to xpidl. these new idl files live in layout/base/public. r=sfraser, r=anthonyd bug 48575 2000-09-14 11:45:01 +00:00
nsComposerCommands.h Fixes for 48474 (JS errors typing in plain text compose), 44684 (make align buttons reflect state), 49155 (UMR in editor code). r=anthonyd 2000-08-24 01:20:29 +00:00
nsEditProperty.cpp Fix a warning. 2000-04-20 03:58:10 +00:00
nsEditProperty.h updated xPL license boilerplate to v1.1, a=chofmann@netscape.com,r=endico@mozilla.org 1999-11-06 03:43:54 +00:00
nsEditRules.h bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsEditor.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
nsEditor.h bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsEditorCommands.cpp fix copy/paste error in code logic (2 cmd_scrollPage* and no cmd_movePage*); r=akkana, sr=kin 2001-02-26 15:37:25 +00:00
nsEditorCommands.h 25779: Add/improve alternate windows cut/copy/paste key bindings: r=brade sr=sfraser. 2001-02-15 21:51:25 +00:00
nsEditorController.cpp Bug 43121. Move XUL content model code from RDF DLL to content DLL. r=jst,hyatt; sr=brendan. 2001-02-22 03:01:34 +00:00
nsEditorController.h Big command tidyup. Make the distinction between editor and composer command clearer, and remove vestiges of the old singleton composer command manager. Also tidy up command node state attribute code. 2000-05-05 23:20:21 +00:00
nsEditorEventListeners.cpp stop propagation on drop over non-editable fields (unfortunately we have to additionally catch it in the drop since someone else might have accepted the drag for us); sr=kin 2001-03-02 14:11:55 +00:00
nsEditorEventListeners.h bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsEditorFactory.h updated xPL license boilerplate to v1.1, a=chofmann@netscape.com,r=endico@mozilla.org 1999-11-06 03:43:54 +00:00
nsEditorParserObserver.cpp Preparation of removing nsCString::GetBuffer. Landing everything but the actual commenting out of nsCString::GetBuffer. bug=64016, r=timeless, sr=scc 2001-03-02 09:26:57 +00:00
nsEditorParserObserver.h 62754 - Fix meta charset that was getting ignored. 2000-12-21 20:46:00 +00:00
nsEditorRegistration.cpp bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsEditorService.cpp Bug 37275, Changing value of all progids, and changing everywhere a progid 2000-09-13 23:57:52 +00:00
nsEditorService.h not part of the build, yet. 2000-02-16 02:21:30 +00:00
nsEditorShell.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
nsEditorShell.h Change implicit conversion from 2001-03-08 08:05:05 +00:00
nsEditorShellFactory.h Bug 37275, Changing value of all progids, and changing everywhere a progid 2000-09-13 23:57:52 +00:00
nsEditorShellMouseListener.cpp UIEvent button property is incorrect according to the DOM2 spec. Changing values to 0, 1, 2 (left, middle, right mouse buttons respectively) from 1, 2, 3. |event.which| continues to use the old values for backwards compatibility. This affects future xbl, js, and c++ event button checks so please see the newsgroups for more info (60703). r=timeless sr=jst 2001-03-02 03:07:53 +00:00
nsEditorShellMouseListener.h Fixed object properties bug 39649. r=sfraser 2000-05-25 03:34:20 +00:00
nsEditorTxnLog.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
nsEditorTxnLog.h TransactionManager fix for bug #11590: eliminate NS_COMFALSE 1999-11-11 19:35:40 +00:00
nsEditorUtils.cpp small but pervasive change to make nsIDOMSelection an xpidl interface. also broke it into 2 interfaces, nsISelection and nsISelectionPrivate. moved nsIDOMSelectionListener also to xpidl. these new idl files live in layout/base/public. r=sfraser, r=anthonyd bug 48575 2000-09-14 11:45:01 +00:00
nsEditorUtils.h bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsHTMLDataTransfer.cpp bug 57863: pasting multiple table cells outside of table doens't work. r=cmanske;sr=kin 2001-03-09 01:36:38 +00:00
nsHTMLEditRules.cpp Making editor's |dont_AddRef| usages easier on the eyes (56033). r=timeless sr=scc 2001-02-26 00:28:58 +00:00
nsHTMLEditRules.h bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsHTMLEditUtils.cpp bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsHTMLEditUtils.h bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsHTMLEditor.cpp Change implicit conversion from 2001-03-08 08:05:05 +00:00
nsHTMLEditor.h renaming variable to match coding guidelines; r=fm; sr=kin 2001-03-09 14:19:14 +00:00
nsHTMLEditorLog.cpp Make setting doc title undoable (add SetDocumentTitle transaction) b=60129, add export to text file, b=51798, some interface param changes to table editing methods as part of embedding work (b=66300). r=brade, sr=sfraser 2001-02-26 22:02:58 +00:00
nsHTMLEditorLog.h Make setting doc title undoable (add SetDocumentTitle transaction) b=60129, add export to text file, b=51798, some interface param changes to table editing methods as part of embedding work (b=66300). r=brade, sr=sfraser 2001-02-26 22:02:58 +00:00
nsHTMLEditorStyle.cpp Making editor's |dont_AddRef| usages easier on the eyes (56033). r=timeless sr=scc 2001-02-26 00:28:58 +00:00
nsIAbsorbingTransaction.h fix for undo in ender-lite (text fields, url bar, etc) 2000-06-30 04:58:34 +00:00
nsIEditProperty.h Lots and lots of bug fixes and XUL widget conversions. Work in progress, but must checkin to allow XPFE to fix bugs 2000-04-14 03:19:31 +00:00
nsIEditorSupport.h updated xPL license boilerplate to v1.1, a=chofmann@netscape.com,r=endico@mozilla.org 1999-11-06 03:43:54 +00:00
nsIHTMLEditRules.h bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsInterfaceState.cpp Removal of some crufty old code that used to do UI udpating, and was obsolete by XUL command nodes. r=akkana 2000-11-17 01:25:28 +00:00
nsInterfaceState.h Removal of some crufty old code that used to do UI udpating, and was obsolete by XUL command nodes. r=akkana 2000-11-17 01:25:28 +00:00
nsInternetCiter.cpp 66718: fix a signed/unsigned problem. r=cmanske, sr=kin 2001-01-31 22:55:15 +00:00
nsInternetCiter.h 6276: Add wrapping support for mail. 2000-04-20 22:45:54 +00:00
nsPlaintextDataTransfer.cpp Fix 66500 (plaintext editor case): paste is disabled for readonly textfields. r=timeless sr=sfraser 2001-01-31 02:50:16 +00:00
nsPlaintextEditor.cpp caret method renamed to GetCaretCoordinates; r=kin; sr=sfraser 2001-02-05 15:44:38 +00:00
nsPlaintextEditor.h bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsSelectionState.cpp bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsSelectionState.h fixing build bustage 2001-01-28 20:56:55 +00:00
nsStyleSheetTxns.cpp Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
nsStyleSheetTxns.h Fixes for bug #66308 ([embed] XPIDL'ize transaction manager) 2001-03-09 14:23:59 +00:00
nsTableEditor.cpp Fixed table editing bug 63439. r=brade,jfrancis, sr=kin 2001-02-26 22:02:06 +00:00
nsTextEditRules.cpp Making editor's |dont_AddRef| usages easier on the eyes (56033). r=timeless sr=scc 2001-02-26 00:28:58 +00:00
nsTextEditRules.h bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsTextEditorReg.cpp bug 66290: embedding work: refactor editor to allow smaller plaintext only library. Embedding clients may be interested inthis library if they want to embed a browser but not composer/mail-compose. Reduces library footprint for plaintext-only library by over 50% on all three platforms. r=fm; sr=kin 2001-01-28 20:13:07 +00:00
nsWrapUtils.cpp Bug 47207. Backing out logging/PRINTF changes until we can fix stopwatch.h, introduce double parens, etc. 2000-10-28 22:17:53 +00:00
nsWrapUtils.h Wrapping code, useful for citers and perhaps other code 2000-04-20 22:32:56 +00:00
win32.order # 65845 sr=waterson, new order files will greatly reduce the number of link warnings. 2001-02-27 04:38:19 +00:00