Граф коммитов

995 Коммитов

Автор SHA1 Сообщение Дата
buster%netscape.com 061b766061 Highlights:
updated to new nsCOMPtr usage
nsTextEditor::InsertBreak() implemented
  splits the text node at the caret (deletes any extended selection to force a collapsed selection.)
  inserts a <BR> which I assume we'll convert to a CR when we write to a text stream.
  undo and redo work, except for the bug noted below

More stuff:
interface cleanup
strategic debugging code added
delete selection txn sets the collapses the selection...this is just a placeholder, but I needed it for undo/redo of InsertBreak.
join and split now work for text nodes as well as interior nodes
1999-02-17 19:42:29 +00:00
buster%netscape.com 2016d821ec private interface for editor, used for common editing operations that
we don't want to expose publically.
1999-02-17 18:34:41 +00:00
danm%netscape.com aa7476884e fixing compilation problems with new nsCOMPtr. part of the carpool. 1999-02-17 06:18:11 +00:00
mjudge%netscape.com 08f7bf0f9d new modifications to nsCOMPtr to explicitly change to QueryInterface 1999-02-17 01:59:56 +00:00
buster%netscape.com c947533db7 minor fixes and lots of comments 1999-02-15 18:25:30 +00:00
buster%netscape.com 667207f280 merges text insertions again, based on new aggregate insert txn 1999-02-15 18:24:58 +00:00
sfraser%netscape.com 2919502f3c Cause the caret to become visible in the presentation shell when instantiating an editor. 1999-02-13 04:48:09 +00:00
buster%netscape.com 7e68197c2c changed deleteSelection back to not use the range 1999-02-12 19:36:18 +00:00
buster%netscape.com 8a98ad654b changed DeleteSelection back to using nsIDOMRange directly. 1999-02-12 18:09:38 +00:00
kipp%netscape.com 5a554d526e COMized nsIPresShell and nsIPresContext 1999-02-12 17:45:58 +00:00
buster%netscape.com 6b1dd3a628 * the viewer test app now instantiates an nsITextEditor via nsRepository for "Editor mode"
* the TxnMgr is invoked by the editor via nsRepository
* editor.h|cpp have been renamed nsEditor.h|cpp for consistency
* editorInterfaces.h|cpp have been renamed nsEditorEventListeners.c|hpp
* added nsITextEditor.h, nsTextEditor.h|cpp.  The text editor is a placeholder for the rules unique to text
editing.  It invokes the nsIEditor to do core editing operations.
* reworked nsIEditor and related interfaces as per emerging design.
* nsEditor::BeginTransaction and EndTransaction call nsTransactionManager::BeginBatch and EndBatch.
1999-02-12 17:18:58 +00:00
akkana%netscape.com bf0baf8027 Rename nsISelection to nsIFrameSelection 1999-02-11 23:12:28 +00:00
akkana%netscape.com 00ab697624 Implement a new interface, nsIDOMSelection, intended to become the
external interface for selection (to be IDL-ified later).

Fix some editor bugs:
- Advance the cursor on text insert (so text is inserted in the right order)
- Make DeleteSelection in the editor call the actual selection
- Make DeleteSelection update the frames' notion of the selection
1999-01-29 18:57:56 +00:00
buster%netscape.com d8eb6653e0 fixed some UMR's due to mRefCnt being uninitialized. This fixes some memory leaks. 1999-01-28 19:45:23 +00:00
buster%netscape.com 6e0d130b21 put in crude support for aggregating type-ins across selection changes.
this needs to get beefed up to handle offsets within elements, which we'll
do as soon as selection is set properly following an insertion.
1999-01-28 19:00:14 +00:00
buster%netscape.com 767f802955 fixed a minor problem with merging type-in transactions. 1999-01-28 17:19:24 +00:00
buster%netscape.com 78762557be changed nsIEditor to enable undo separately from Init
work in progress API changes to nsIEditor and nsEditor
1999-01-28 06:02:53 +00:00
buster%netscape.com d02fe11982 better delete now that selection offsets are real. 1999-01-22 19:44:46 +00:00
buster%netscape.com 6c76015d98 fixed debug asserts to allow for offset=count, since offsets represent
the slots between content.
1999-01-22 19:06:27 +00:00
buster%netscape.com c80b396ad6 made GetIsTransient return false by default, so most transactions don't need to implement GetIsTransient
made delete and backspace do the right thing (testing hacks removed)
1999-01-22 15:40:31 +00:00
mjudge%netscape.com a4d3df9954 fixing build bustages 1999-01-22 03:50:22 +00:00
mjudge%netscape.com 43cd2feb1c fixing build bustage 1999-01-22 03:18:51 +00:00
akkana%netscape.com 457d727d35 Try a different form of casting to keep both Linux and the Mac happy 1999-01-21 21:10:12 +00:00
buster%netscape.com 81b9e6ea02 factored editor so a request (public) is separate from building the txn for that request (private)
added some debug code to transactions
1999-01-21 19:44:26 +00:00
akkana%netscape.com 02a60fb54d Fix nsCOMPtr casting build bustage 1999-01-21 19:31:57 +00:00
buster%netscape.com 4b9ed57147 bug fixes to delete range, plus some debugging printf's 1999-01-21 02:29:52 +00:00
buster%netscape.com 83a4e325ce * added TransactionFactory. Editor no longer allocates its own transactions. This gives us an oppurtunity for a recycler.
* added DeleteSelection to editor.  Doesn't work very well yet because selection is giving me random offsets into text content.
* lots of work in the various transactions.
1999-01-21 01:51:09 +00:00
sfraser%netscape.com 658863e31c Reinstate buster's changes, with a fix for the nsCOMPtr problem. 1999-01-15 00:03:41 +00:00
buster%netscape.com db9c7ea60d backed out Merge functionality because it doesn't compile on Mac. 1999-01-14 21:52:08 +00:00
buster%netscape.com 92705ab193 added DeleteElementTxn and DeleteRangeTxn, and added merging of text insertions.
added some better error checking on all transactions.
1999-01-14 18:02:45 +00:00
pinkerton%netscape.com c3e3bb6ba5 fixes for SetDOMAttribute --> SetAttribute change. 1999-01-12 18:20:58 +00:00
buster%netscape.com 10b3eb6bea shuffled around the responsibilities of core editing objects.
The key listener is now mostly a mapper of key events to editor actions.  Soon, this should be 100% true.
The editor builds transactions that are themselves intelligent. The editor makes very few DOM calls itself.
It relies on the transactions to do most of the actual editing.
1999-01-11 22:47:23 +00:00
buster%netscape.com 1b2e5489c6 implemented joinNode. expect this and similar methods to move into editor.cpp 1999-01-11 19:06:37 +00:00
mcmullen%netscape.com afeda6e4cc Remove illegal TextTxn:: within TextTxn class (this is illegal in C++ unless you have a nested class with the same name). This fixes Macintosh build bustage. 1999-01-09 02:41:35 +00:00
buster%netscape.com 42fac746ab better code factoring, so split and join base methods can be reused 1999-01-09 00:24:48 +00:00
buster%netscape.com c84d2b5d7c SplitElementTxn implementation. Do only.
test with Control-S.
1999-01-08 22:16:22 +00:00
buster%netscape.com b3c9b491bf fixed an uninitialized pointer problem
ctrl-ins appends an HR to the BODY
1999-01-08 01:41:34 +00:00
buster%netscape.com cdabceb9ac implemented do and undo for CreateElement
the test is INS key, it adds an HR
1999-01-08 01:30:53 +00:00
buster%netscape.com 3534fc762a create element transaction WIP 1999-01-07 22:36:23 +00:00
buster%netscape.com 3c29071bac use base class Redo 1999-01-07 17:57:57 +00:00
buster%netscape.com fbbc2960c9 make Redo call Do by default 1999-01-07 17:57:16 +00:00
buster%netscape.com 4da006f744 Delete Text Transaction initial implementation 1999-01-07 17:56:20 +00:00
buster%netscape.com 4fa62cf3f9 support for inserting text 1999-01-07 01:02:32 +00:00
buster%netscape.com 8dc326f5c0 support for removing attributes 1999-01-07 01:02:16 +00:00
buster%netscape.com 2a75ddbb5c ChangedAttributeTxn implementation
base class EditTxn implementation
1999-01-06 20:30:13 +00:00