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 git-svn-id: svn://10.0.0.236/trunk@89126 18797224-902f-48f8-a5cc-f745e15eee43
200 lines
6.5 KiB
Plaintext
200 lines
6.5 KiB
Plaintext
#!nmake
|
|
#
|
|
# The contents of this file are subject to the Netscape Public
|
|
# License Version 1.1 (the "License"); you may not use this file
|
|
# except in compliance with the License. You may obtain a copy of
|
|
# the License at http://www.mozilla.org/NPL/
|
|
#
|
|
# Software distributed under the License is distributed on an "AS
|
|
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
|
# implied. See the License for the specific language governing
|
|
# rights and limitations under the License.
|
|
#
|
|
# The Original Code is mozilla.org code.
|
|
#
|
|
# The Initial Developer of the Original Code is Netscape
|
|
# Communications Corporation. Portions created by Netscape are
|
|
# Copyright (C) 1998 Netscape Communications Corporation. All
|
|
# Rights Reserved.
|
|
#
|
|
# Contributor(s):
|
|
|
|
DEPTH=..\..
|
|
|
|
include <$(DEPTH)/config/config.mak>
|
|
|
|
LIBRARY_NAME=editor
|
|
|
|
# Uncomment the line below, or define MOZ_BUILD_PLAINTEXT_EDITOR_CORE_ONLY
|
|
# in your environment, to build only the plain text editor core files:
|
|
# MOZ_BUILD_PLAINTEXT_EDITOR_CORE_ONLY=1
|
|
|
|
# Editor Core Source Files and Objects:
|
|
|
|
CPPSRCS = \
|
|
ChangeAttributeTxn.cpp \
|
|
CreateElementTxn.cpp \
|
|
DeleteElementTxn.cpp \
|
|
DeleteRangeTxn.cpp \
|
|
DeleteTextTxn.cpp \
|
|
EditAggregateTxn.cpp \
|
|
EditTxn.cpp \
|
|
IMETextTxn.cpp \
|
|
InsertElementTxn.cpp \
|
|
InsertTextTxn.cpp \
|
|
JoinElementTxn.cpp \
|
|
nsComposerCommands.cpp \
|
|
nsEditorCommands.cpp \
|
|
nsEditorController.cpp \
|
|
nsEditor.cpp \
|
|
nsEditorEventListeners.cpp \
|
|
nsEditorUtils.cpp \
|
|
nsEditProperty.cpp \
|
|
nsHTMLEditUtils.cpp \
|
|
nsPlaintextDataTransfer.cpp \
|
|
nsPlaintextEditor.cpp \
|
|
nsSelectionState.cpp \
|
|
nsStyleSheetTxns.cpp \
|
|
nsTextEditRules.cpp \
|
|
PlaceholderTxn.cpp \
|
|
SplitElementTxn.cpp \
|
|
TransactionFactory.cpp \
|
|
$(NULL)
|
|
|
|
CPP_OBJS = \
|
|
.\$(OBJDIR)\ChangeAttributeTxn.obj \
|
|
.\$(OBJDIR)\CreateElementTxn.obj \
|
|
.\$(OBJDIR)\DeleteElementTxn.obj \
|
|
.\$(OBJDIR)\DeleteRangeTxn.obj \
|
|
.\$(OBJDIR)\DeleteTextTxn.obj \
|
|
.\$(OBJDIR)\EditAggregateTxn.obj \
|
|
.\$(OBJDIR)\EditTxn.obj \
|
|
.\$(OBJDIR)\IMETextTxn.obj \
|
|
.\$(OBJDIR)\InsertElementTxn.obj \
|
|
.\$(OBJDIR)\InsertTextTxn.obj \
|
|
.\$(OBJDIR)\JoinElementTxn.obj \
|
|
.\$(OBJDIR)\nsComposerCommands.obj \
|
|
.\$(OBJDIR)\nsEditorCommands.obj \
|
|
.\$(OBJDIR)\nsEditorController.obj \
|
|
.\$(OBJDIR)\nsEditorEventListeners.obj \
|
|
.\$(OBJDIR)\nsEditor.obj \
|
|
.\$(OBJDIR)\nsEditorUtils.obj \
|
|
.\$(OBJDIR)\nsEditProperty.obj \
|
|
.\$(OBJDIR)\nsHTMLEditUtils.obj \
|
|
.\$(OBJDIR)\nsPlaintextDataTransfer.obj \
|
|
.\$(OBJDIR)\nsPlaintextEditor.obj \
|
|
.\$(OBJDIR)\nsSelectionState.obj \
|
|
.\$(OBJDIR)\nsStyleSheetTxns.obj \
|
|
.\$(OBJDIR)\nsTextEditRules.obj \
|
|
.\$(OBJDIR)\PlaceholderTxn.obj \
|
|
.\$(OBJDIR)\SplitElementTxn.obj \
|
|
.\$(OBJDIR)\TransactionFactory.obj \
|
|
$(NULL)
|
|
|
|
!if defined(MOZ_BUILD_PLAINTEXT_EDITOR_CORE_ONLY)
|
|
|
|
# We're only building the Core PlainText Editor Source so just include
|
|
# the plain text registration file.
|
|
|
|
CPPSRCS = $(CPPSRCS) \
|
|
nsTextEditorReg.cpp \
|
|
$(NULL)
|
|
|
|
CPP_OBJS = $(CPP_OBJS) \
|
|
.\$(OBJDIR)\nsTextEditorReg.obj \
|
|
$(NULL)
|
|
!else
|
|
|
|
# Building the full blown HTML Editor so add it's source files and objects:
|
|
|
|
CPPSRCS = $(CPPSRCS) \
|
|
nsAOLCiter.cpp \
|
|
nsEditorParserObserver.cpp \
|
|
nsEditorRegistration.cpp \
|
|
nsEditorService.cpp \
|
|
nsEditorShell.cpp \
|
|
nsEditorShellMouseListener.cpp \
|
|
nsHTMLDataTransfer.cpp \
|
|
nsHTMLEditor.cpp \
|
|
nsHTMLEditorStyle.cpp \
|
|
nsHTMLEditRules.cpp \
|
|
nsInterfaceState.cpp \
|
|
nsInternetCiter.cpp \
|
|
nsTableEditor.cpp \
|
|
nsWrapUtils.cpp \
|
|
TextEditorTest.cpp \
|
|
TypeInState.cpp \
|
|
SetDocTitleTxn.cpp \
|
|
$(NULL)
|
|
|
|
CPP_OBJS = $(CPP_OBJS) \
|
|
.\$(OBJDIR)\nsAOLCiter.obj \
|
|
.\$(OBJDIR)\nsEditorParserObserver.obj \
|
|
.\$(OBJDIR)\nsEditorRegistration.obj \
|
|
.\$(OBJDIR)\nsEditorService.obj \
|
|
.\$(OBJDIR)\nsEditorShellMouseListener.obj \
|
|
.\$(OBJDIR)\nsEditorShell.obj \
|
|
.\$(OBJDIR)\nsHTMLDataTransfer.obj \
|
|
.\$(OBJDIR)\nsHTMLEditor.obj \
|
|
.\$(OBJDIR)\nsHTMLEditorStyle.obj \
|
|
.\$(OBJDIR)\nsHTMLEditRules.obj \
|
|
.\$(OBJDIR)\nsInterfaceState.obj \
|
|
.\$(OBJDIR)\nsInternetCiter.obj \
|
|
.\$(OBJDIR)\nsTableEditor.obj \
|
|
.\$(OBJDIR)\nsWrapUtils.obj \
|
|
.\$(OBJDIR)\TextEditorTest.obj \
|
|
.\$(OBJDIR)\TypeInState.obj \
|
|
.\$(OBJDIR)\SetDocTitleTxn.obj \
|
|
$(NULL)
|
|
|
|
# Enable Editor API Logging!
|
|
ENABLE_EDITOR_API_LOG=1
|
|
|
|
!if defined(ENABLE_EDITOR_API_LOG)
|
|
CPPSRCS = $(CPPSRCS) \
|
|
nsHTMLEditorLog.cpp \
|
|
nsEditorTxnLog.cpp \
|
|
$(NULL)
|
|
|
|
CPP_OBJS = $(CPP_OBJS) \
|
|
.\$(OBJDIR)\nsHTMLEditorLog.obj \
|
|
.\$(OBJDIR)\nsEditorTxnLog.obj \
|
|
$(NULL)
|
|
|
|
DEFINES = -DENABLE_EDITOR_API_LOG $(DEFINES)
|
|
|
|
!endif
|
|
|
|
!endif
|
|
|
|
MODULE=editor
|
|
|
|
MAKE_OBJ_TYPE = DLL
|
|
DLLNAME = editor
|
|
DLL=.\$(OBJDIR)\$(DLLNAME).dll
|
|
|
|
|
|
LCFLAGS = \
|
|
$(LCFLAGS) \
|
|
$(DEFINES) \
|
|
$(NULL)
|
|
|
|
# These are the libraries we need to link with to create the dll
|
|
LLIBS= \
|
|
$(DIST)\lib\xpcom.lib \
|
|
$(DIST)\lib\js3250.lib \
|
|
$(DIST)\lib\gkparser.lib \
|
|
$(DIST)\lib\raptorwidget_s.lib \
|
|
$(DIST)\lib\timer_s.lib \
|
|
$(LIBNSPR)
|
|
|
|
include <$(DEPTH)\config\rules.mak>
|
|
|
|
install:: $(DLL)
|
|
$(MAKE_INSTALL) .\$(OBJDIR)\$(DLLNAME).dll $(DIST)\bin\components
|
|
$(MAKE_INSTALL) .\$(OBJDIR)\$(DLLNAME).lib $(DIST)\lib
|
|
|
|
clobber::
|
|
rm -f $(DIST)\bin\components\$(DLLNAME).dll
|
|
rm -f $(DIST)\lib\$(DLLNAME).lib
|