41 Commits

Author SHA1 Message Date
buster%netscape.com
0bda0d910f minor fixes and lots of comments
git-svn-id: svn://10.0.0.236/trunk@20730 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-15 18:25:30 +00:00
buster%netscape.com
72d2391591 merges text insertions again, based on new aggregate insert txn
git-svn-id: svn://10.0.0.236/trunk@20729 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-15 18:24:58 +00:00
sfraser%netscape.com
971ead2abc Cause the caret to become visible in the presentation shell when instantiating an editor.
git-svn-id: svn://10.0.0.236/trunk@20658 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-13 04:48:09 +00:00
buster%netscape.com
bd7d899204 changed deleteSelection back to not use the range
git-svn-id: svn://10.0.0.236/trunk@20608 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-12 19:36:18 +00:00
buster%netscape.com
34595f93fb changed DeleteSelection back to using nsIDOMRange directly.
git-svn-id: svn://10.0.0.236/trunk@20572 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-12 18:09:38 +00:00
kipp%netscape.com
9b917419dc COMized nsIPresShell and nsIPresContext
git-svn-id: svn://10.0.0.236/trunk@20570 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-12 17:45:58 +00:00
buster%netscape.com
6d04acb923 * 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.


git-svn-id: svn://10.0.0.236/trunk@20562 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-12 17:18:58 +00:00
akkana%netscape.com
0ebe0a4652 Rename nsISelection to nsIFrameSelection
git-svn-id: svn://10.0.0.236/trunk@20457 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-11 23:12:28 +00:00
akkana%netscape.com
52b18e6064 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


git-svn-id: svn://10.0.0.236/trunk@19029 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-29 18:57:56 +00:00
buster%netscape.com
9d27388bf5 fixed some UMR's due to mRefCnt being uninitialized. This fixes some memory leaks.
git-svn-id: svn://10.0.0.236/trunk@18934 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-28 19:45:23 +00:00
buster%netscape.com
956232ee80 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.


git-svn-id: svn://10.0.0.236/trunk@18931 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-28 19:00:14 +00:00
buster%netscape.com
f2aea9aa2d fixed a minor problem with merging type-in transactions.
git-svn-id: svn://10.0.0.236/trunk@18925 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-28 17:19:24 +00:00
buster%netscape.com
ea9a76f945 changed nsIEditor to enable undo separately from Init
work in progress API changes to nsIEditor and nsEditor


git-svn-id: svn://10.0.0.236/trunk@18914 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-28 06:02:53 +00:00
buster%netscape.com
652e32c887 better delete now that selection offsets are real.
git-svn-id: svn://10.0.0.236/trunk@18329 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-22 19:44:46 +00:00
buster%netscape.com
2c02dfaabf fixed debug asserts to allow for offset=count, since offsets represent
the slots between content.


git-svn-id: svn://10.0.0.236/trunk@18326 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-22 19:06:27 +00:00
buster%netscape.com
f1bacd2e07 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)


git-svn-id: svn://10.0.0.236/trunk@18304 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-22 15:40:31 +00:00
mjudge%netscape.com
bbddba9557 fixing build bustages
git-svn-id: svn://10.0.0.236/trunk@18259 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-22 03:50:22 +00:00
mjudge%netscape.com
da1cc58b72 fixing build bustage
git-svn-id: svn://10.0.0.236/trunk@18253 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-22 03:18:51 +00:00
akkana%netscape.com
826d1b136d Try a different form of casting to keep both Linux and the Mac happy
git-svn-id: svn://10.0.0.236/trunk@18197 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-21 21:10:12 +00:00
buster%netscape.com
902ec60ee1 factored editor so a request (public) is separate from building the txn for that request (private)
added some debug code to transactions


git-svn-id: svn://10.0.0.236/trunk@18190 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-21 19:44:26 +00:00
akkana%netscape.com
9f4dfbc49b Fix nsCOMPtr casting build bustage
git-svn-id: svn://10.0.0.236/trunk@18188 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-21 19:31:57 +00:00
buster%netscape.com
4490a6149a bug fixes to delete range, plus some debugging printf's
git-svn-id: svn://10.0.0.236/trunk@18126 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-21 02:29:52 +00:00
buster%netscape.com
b48e2caf7c * 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.


git-svn-id: svn://10.0.0.236/trunk@18122 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-21 01:51:09 +00:00
sfraser%netscape.com
42d6e74fbe Reinstate buster's changes, with a fix for the nsCOMPtr problem.
git-svn-id: svn://10.0.0.236/trunk@17796 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-15 00:03:41 +00:00
buster%netscape.com
045c82cdbf backed out Merge functionality because it doesn't compile on Mac.
git-svn-id: svn://10.0.0.236/trunk@17752 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-14 21:52:08 +00:00
buster%netscape.com
dceac9452d added DeleteElementTxn and DeleteRangeTxn, and added merging of text insertions.
added some better error checking on all transactions.


git-svn-id: svn://10.0.0.236/trunk@17740 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-14 18:02:45 +00:00
pinkerton%netscape.com
efa104cbfb fixes for SetDOMAttribute --> SetAttribute change.
git-svn-id: svn://10.0.0.236/trunk@17591 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-12 18:20:58 +00:00
buster%netscape.com
8a19fb26be 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.


git-svn-id: svn://10.0.0.236/trunk@17518 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-11 22:47:23 +00:00
buster%netscape.com
97e2d5d092 implemented joinNode. expect this and similar methods to move into editor.cpp
git-svn-id: svn://10.0.0.236/trunk@17495 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-11 19:06:37 +00:00
mcmullen%netscape.com
da1a7d5331 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.
git-svn-id: svn://10.0.0.236/trunk@17445 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-09 02:41:35 +00:00
buster%netscape.com
be4b7d375b better code factoring, so split and join base methods can be reused
git-svn-id: svn://10.0.0.236/trunk@17428 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-09 00:24:48 +00:00
buster%netscape.com
62f2a08600 SplitElementTxn implementation. Do only.
test with Control-S.


git-svn-id: svn://10.0.0.236/trunk@17391 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-08 22:16:22 +00:00
buster%netscape.com
29389f0fcd fixed an uninitialized pointer problem
ctrl-ins appends an HR to the BODY


git-svn-id: svn://10.0.0.236/trunk@17354 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-08 01:41:34 +00:00
buster%netscape.com
136be95fe1 implemented do and undo for CreateElement
the test is INS key, it adds an HR


git-svn-id: svn://10.0.0.236/trunk@17353 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-08 01:30:53 +00:00
buster%netscape.com
32c39f7e29 create element transaction WIP
git-svn-id: svn://10.0.0.236/trunk@17331 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-07 22:36:23 +00:00
buster%netscape.com
2659c27999 use base class Redo
git-svn-id: svn://10.0.0.236/trunk@17314 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-07 17:57:57 +00:00
buster%netscape.com
5bab9ec73f make Redo call Do by default
git-svn-id: svn://10.0.0.236/trunk@17313 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-07 17:57:16 +00:00
buster%netscape.com
7a9a74ed4f Delete Text Transaction initial implementation
git-svn-id: svn://10.0.0.236/trunk@17312 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-07 17:56:20 +00:00
buster%netscape.com
9ead1505eb support for inserting text
git-svn-id: svn://10.0.0.236/trunk@17280 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-07 01:02:32 +00:00
buster%netscape.com
e617861340 support for removing attributes
git-svn-id: svn://10.0.0.236/trunk@17279 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-07 01:02:16 +00:00
buster%netscape.com
418dc949ad ChangedAttributeTxn implementation
base class EditTxn implementation


git-svn-id: svn://10.0.0.236/trunk@17254 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-06 20:30:13 +00:00