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

45 Коммитов

Автор SHA1 Сообщение Дата
jfrancis%netscape.com 07fcb7e952 Fix for bug 21346. This is actually a major reworking of how the low level editor txns perturb selection. There is a mode now for telling the txns not to disturb the selection. There is also a fix for unlisting lists (sometimes list items got merged unintentionally when unlisting). 2000-01-04 03:09:41 +00:00
jfrancis%netscape.com 6b9ca53f07 fix for 20457: deletion in editor pretty darn screwy. Lots of changes to improve this. Document modifying entry points in editor now go thru a standard sandwich, which allows tracking of what changed in the doc, which allows proper post-processing of what changed. Also, all deletions now go thru the rules code, if applicable. Also some bugs in tracking the changed document portion have been fixed. Finally selection setting after a delete is improved. 1999-12-07 08:30:19 +00:00
dmose%mozilla.org 8535dda53e updated xPL license boilerplate to v1.1, a=chofmann@netscape.com,r=endico@mozilla.org 1999-11-06 03:43:54 +00:00
braddr%puremagic.com d92727dc68 Move all nsIEnumerator usage over to NS_ENUMERATOR_FALSE from NS_COMFALSE in anticipation of nixing NS_COMFALSE in the near future.
r=scc
1999-10-28 03:16:48 +00:00
braddr%puremagic.com b49b3dbdce Ooops.. tree closed, better back these out for now. Sorry. 1999-10-27 21:01:37 +00:00
braddr%puremagic.com b2ea5b4c45 Move all nsIEnumerator usage over to NS_ENUMERATOR_FALSE from NS_COMFALSE
in anticipation of nixing NS_COMFALSE in the near future.
r=scc (please contact him should there be any build issues)
1999-10-27 20:24:21 +00:00
brade%netscape.com 19ec219fb7 allow for txn to have id/string for get/set 1999-09-21 22:31:27 +00:00
buster%netscape.com d3b61f6c7b Fixed a ton of errors where we were not handling error results correctly.
Added some comments of the form "// XXX: ERROR_HANDLING <explanation>"
wherever I saw a potential error but wasn't 100% sure of the intention of the code.
Fixed a few bugs along the way.
1999-08-19 13:30:48 +00:00
jfrancis%netscape.com 9cd8e103a9 fix for 10584 1999-08-09 21:42:51 +00:00
sfraser%netscape.com 98818652df Landing editor API changes. Removed nsITextEditor and nsTextEditor, split interfaces into more, non-overlapping interfaces, and other general cleanup. 1999-08-09 01:37:50 +00:00
mjudge%netscape.com 7ddf8fee55 massive checkin for selection. adjusting nsIDOMSelection api and nsIFrameSelection. many "small" changes. this is not as bad as it looks. layout will not be affected other than "getter" calls for selection. and all consumers of selection should be in good shape. 1999-07-18 02:27:19 +00:00
buster%netscape.com 5c7a93503f replaced IID's with CID's where they were appropriate, and removed lots of
NS_DEFINE_IID macros in favor of GetCID() wherever I could.
plus some minor bug fixes.
1999-07-15 19:13:46 +00:00
mjudge%netscape.com 795cc26dd3 checkin for carpool for multiple seleciton/ime selection and api changes 1999-07-15 18:19:20 +00:00
sfraser%netscape.com 0b45173a06 Changed transactions not to have owning pointers to the Editor. 1999-05-28 00:13:02 +00:00
kin%netscape.com e667e633d4 Changed all occurrences of GetUndoString() and GetRedoString() to accept nsString *. 1999-05-27 20:50:52 +00:00
akkana%netscape.com 4123eec5cf - Rename iDirection enum to ECollapsedSelectionAction
- Initial implementation of Insert HTML
1999-05-05 23:27:17 +00:00
buster%netscape.com 1d5d5e333d vastly improved RemoveTextProperty
turned off debug output
1999-04-11 22:55:40 +00:00
buster%netscape.com 2246607975 implemented simple cases of RemoveTextProperty. other cases are no-op'd now.
added aFirst out param to GetTextProperty, so the caller can know if the first character has the property in the case of aAny=true and aAll=false.
fixed a bunch of places where result was being used incorrectly as a return val from do_QueryInterface
some minor undo/redo fixes to split and join of interior nodes.
1999-04-04 18:01:35 +00:00
buster%netscape.com 4c59bda1d7 As a reminder, we decided to do this based strictly content. Some support for style-based text properties is written, but not used
anywhere any more.

* Cleaned up split and join undo/redo.
* Added TypeInState, a data struct that remembers things about text properties for collapsed selections, so you can type
* Ctrl-B with an insertion point and the next character will be bold.
* Added all the logic to handle inline vs. block elements when setting text properties.
* Added some support for italic and underline as well.  Adding these things is pretty easy now.  Ctrl-B, Ctrl-I, Ctrl-U for testing bold, italic, underline.
* Added all the logic to make sure we only add style tags where they're needed, so you should never get the same style tag nested within itself, except as needed for block elements.
* Added methods for testing a node to see if a particular style is set.  This isn't 100% done yet, but with very little work we could have toolbar buttons that respond to selection changed notification that show the state of bold, italic, underline, etc. in real time.  Supports tri-state:  whole selection is bold, some of selection is bold, none of selection is bold, ...
* Fully undoable and redoable.
* Added some debug printfs to transactions and editors.  all controlled by a gNoisy static in each module.  helps me track down undo/redo problems.  if the output bugs people enough, I'll shut it off and re-enable it in my local tree.

Noticably missing:  make un-bold, make un-italic, etc.  This is coming soon.
1999-04-01 17:58:07 +00:00
buster%netscape.com 2b8c73f66e added PlaceholderTxn. This is an aggregate transaction that sits on the undo stack
and merges in subsequent transactions indiscriminately until it's told to stop.
It also gives the last transaction in its child list a chance to merge the
next transaction.
All this is in support of complex transactions that result in text insertion
being able to collapse into a single undoable event.
Also improved tracking of bogus content node used when document is empty.
1999-03-15 00:57:32 +00:00
buster%netscape.com cab053f693 small fix of an off-by-one error in an assertion 1999-03-10 19:50:17 +00:00
jfrancis%netscape.com 5f2a20fa5b catching up with nsComponentManager and getting rid of cout usage 1999-03-09 20:11:27 +00:00
jfrancis%netscape.com bcb97b8ac4 integrated with content iterator 1999-03-09 19:22:48 +00:00
cmanske%netscape.com 06356ad73a Changed editor classes to inherited model. Fixed lots of destructor warnings. 1999-03-05 21:05:35 +00:00
scc%netscape.com 31ff626ae9 rename |IID()| --> |GetIID()| 1999-03-03 19:48:57 +00:00
scc%netscape.com 00a29df078 fixed for nsCOMPtr: no construction or assignment from raw COM interface pointers 1999-03-02 22:27:46 +00:00
buster%netscape.com a1a725cf0e implemented GetTextProperty -- only works for bold and italic now,
trivial to add more properties
finished first cut at SetTextProperty.  This triggers lots of crashes in
range/selection code where we're holding onto a stale frame pointer (at
least, that's my best guess.)
synched with Charlie's change-o-rama
added an assert in DeleteTextTxn::Init() checking aNumCharsToDelete vs.
0
  NS_ASSERTION(0!=aNumCharsToDelete, "bad arg, numCharsToDelete");
if the number of chars to delete is 0, we shouldn't be creating a
transaction at all.  I had never seen this condition arise before
Charlie's checkin, I don't know if he introduced it or if it was a
latent bug I just never tripped over before.
1999-03-02 07:52:41 +00:00
cmanske%netscape.com 7aca17a8cb Implemented nsHTMLEditor. Changed prototypes to be use NS_IMETHOD and NS_IMETHODIMP. Started table editing transactions 1999-03-02 05:30:53 +00:00
buster%netscape.com b259f714c6 caught up to new ScrollIntoView changes.
most transactions now properly set selection after modifying content, for Do, Undo, Redo.
lots of cleanup and minor bug fixes.
1999-02-22 15:53:31 +00:00
mcafee%netscape.com 6fad4bf023 Solaris: adding do_QueryInterface() wrappers to finish scc's nsCOMPtr carpool. a=scc 1999-02-19 11:30:31 +00:00
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
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 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
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
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