Commit Graph

156 Commits

Author SHA1 Message Date
mcafee%netscape.com
513b5954b8 newline at end of file
git-svn-id: svn://10.0.0.236/trunk@43025 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-10 21:29:49 +00:00
sfraser%netscape.com
4dd92661ce Landing editor API changes. Removed nsITextEditor and nsTextEditor, split interfaces into more, non-overlapping interfaces, and other general cleanup.
git-svn-id: svn://10.0.0.236/trunk@42725 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-09 01:37:50 +00:00
sfraser%netscape.com
f220b28ee3 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@42723 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-09 01:34:04 +00:00
tague%netscape.com
5f2b704a17 Added support for replies from private DOM text events. See bug #4826
git-svn-id: svn://10.0.0.236/trunk@42391 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-06 02:32:13 +00:00
cmanske%netscape.com
53fddb5ef6 Further table editing work
git-svn-id: svn://10.0.0.236/trunk@42324 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-05 20:04:58 +00:00
cmanske%netscape.com
59766ea19c Table editing implementation
git-svn-id: svn://10.0.0.236/trunk@42082 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-04 02:06:03 +00:00
sfraser%netscape.com
ad6fe30c67 Fix the document state listener mechanism so that you can install listeners after the editor has been created, and still get their 'document creation' notification called.
git-svn-id: svn://10.0.0.236/trunk@41954 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-03 06:53:45 +00:00
sfraser%netscape.com
bcb10f1034 nsIDocumentStateListener.h is now IDL-generated
git-svn-id: svn://10.0.0.236/trunk@41906 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-03 00:47:17 +00:00
sfraser%netscape.com
9dd58891af File Removed.
git-svn-id: svn://10.0.0.236/trunk@41905 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-03 00:46:44 +00:00
cmanske%netscape.com
e77114a04c Fixed lots of XUL (adjust for new titledbutton changes and XPMenus). Added initial table properties support and unit test for nsITableLayout methods. Removed unused InsertLink and InsertImage methods. Added lots of comments for interface methods.
git-svn-id: svn://10.0.0.236/trunk@41775 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-01 22:37:58 +00:00
sfraser%netscape.com
3e40d72a75 Added support for nsIDocumentStateListeners.
git-svn-id: svn://10.0.0.236/trunk@41409 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-28 02:56:33 +00:00
sfraser%netscape.com
fb3efb9d24 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@41397 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-28 02:49:12 +00:00
sfraser%netscape.com
53582e6726 Add nsIDocumentStateListener.h
git-svn-id: svn://10.0.0.236/trunk@41396 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-28 02:48:18 +00:00
sfraser%netscape.com
7e4adcde7a File Removed.
git-svn-id: svn://10.0.0.236/trunk@41395 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-28 02:47:47 +00:00
sfraser%netscape.com
9d0308a90f Remove nsIContextLoader
git-svn-id: svn://10.0.0.236/trunk@41394 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-28 02:45:05 +00:00
sfraser%netscape.com
1bf2e59e3e Remove nsIContextLoader, which is obsolete
git-svn-id: svn://10.0.0.236/trunk@41393 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-28 02:44:22 +00:00
cmanske%netscape.com
19ab0e4029 Initial table editing stuff. Removed table editing transactions (use basic node txns). Fixed TrimString JS methods. Fixed setting border in insert table.
git-svn-id: svn://10.0.0.236/trunk@41372 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-27 23:59:22 +00:00
buster%netscape.com
af08daa88b Clean-up
1) fixed unit tests
2) fixed a bunch of leaks having to do with using enumerators.  Thanks for noticing these, Simon.
3) fixed a tiny problem in nsTextEditRules::WillDoAction().
This method was overly aggressive in checking input args, sel can be null for some operations.


git-svn-id: svn://10.0.0.236/trunk@41056 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-25 18:14:44 +00:00
akkana%netscape.com
3f8e57acfe Add GetEmbeddedObjects API to editor shell
git-svn-id: svn://10.0.0.236/trunk@40174 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-19 22:36:12 +00:00
akkana%netscape.com
86b5825885 Add GetEmbeddedObjects API for mail/news
git-svn-id: svn://10.0.0.236/trunk@40122 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-19 19:06:39 +00:00
waterson%netscape.com
005a1179ef Use enum trick to get around VC++ braindead-ness wrt. 'const PRUin32'.
git-svn-id: svn://10.0.0.236/trunk@39352 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-14 19:42:55 +00:00
akkana%netscape.com
a878369d02 Restructure the editor output routines to allow passing in
a mime type and a flag argument.  Also fix the following bugs:
9746: get rid of bogus empty <style> in head.
8143: save wrap column in editor shell in case it's set before the
      editor is created.
9470, 9488: allow explicit specification of formatted output.


git-svn-id: svn://10.0.0.236/trunk@39332 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-14 18:54:29 +00:00
cmanske%netscape.com
79fd9050ea Generic message dialog, fix insert element-related bugs, initial personal dictionary dialog, other editor bugs
git-svn-id: svn://10.0.0.236/trunk@39268 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-14 15:24:33 +00:00
sfraser%netscape.com
c474a7e978 Added transactions for applying and removing style sheets
git-svn-id: svn://10.0.0.236/trunk@37965 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-02 03:57:50 +00:00
kin%netscape.com
0d49f312e2 Added ApplyStyleSheet() method to the various editor interfaces.
git-svn-id: svn://10.0.0.236/trunk@37845 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-01 19:32:35 +00:00
akkana%netscape.com
2fb45d996c - New dialog and editor shell API for Insert HTML Source
- Add wrapcolumn setting to document encoders, and use it in the editor
- Fix numbered lists in the html to text sink stream.


git-svn-id: svn://10.0.0.236/trunk@37529 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-30 19:26:08 +00:00
tague%netscape.com
ea708a16a8 Added clause and selection support for Input Methods. Fixes bug #8639, #8459, #6989, #7824
git-svn-id: svn://10.0.0.236/trunk@37435 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-29 20:31:22 +00:00
sfraser%netscape.com
1cd4f8b45d Add new aSelectionOnly param to Output routines
git-svn-id: svn://10.0.0.236/trunk@37424 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-29 20:14:24 +00:00
buster%netscape.com
a0e007d087 Moved GetTextSelectionOffsets and GetDocumentLength from nsTextEditRules to
nsTextEditor.  Added GetDocumentLength to nsITextEditor public interface.


git-svn-id: svn://10.0.0.236/trunk@37177 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-28 13:36:38 +00:00
kin%netscape.com
38bb3e3ed2 * Added StartLogging() and StopLogging() methods to nsIEditor,
nsIHTMLEditor, nsITextEditor, and nsIEditorShell and enabled
  the "Start Log" and "End Log" menu items in the editor test bed.

* Modified makefiles for Unix and Win32 to turn on  Editor API Logging.

* Added action argument to the DeleteSelection() method in nsIEditorShell.

* Modified nsJSTxnLog to use nsJSEditorLog when writing it's output.


git-svn-id: svn://10.0.0.236/trunk@35149 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-14 20:02:46 +00:00
cmanske%netscape.com
11dac7bbef Horizontal Line dialog and setting/getting hline settings from prefs implemented. Masked effect of bug 8058 by removing popupanchor attribute.
git-svn-id: svn://10.0.0.236/trunk@35035 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-12 21:22:12 +00:00
buster%netscape.com
91f2070891 changed the way nsEditProperty is used. Right now, it's our placeholder
for HTML and CSS atoms, since we can't get these from layout yet.  The old
use assumed one editor, but as we know many editors can exist simultaneously.
Now, the editors share a singleton which is fetched from a factory method,
saving memory and allocation overhead.


git-svn-id: svn://10.0.0.236/trunk@35033 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-12 21:15:14 +00:00
sfraser%netscape.com
6d56b78e87 GetLocalFileURL has moved to the editorShell
git-svn-id: svn://10.0.0.236/trunk@34819 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-11 19:03:05 +00:00
akkana%netscape.com
91f72d1f82 Implement InsertHTML.
Also, some minor fixes, like warning removal and addition of error checking
in files which needed it.


git-svn-id: svn://10.0.0.236/trunk@34645 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-10 21:31:42 +00:00
buster%netscape.com
4bad1b96b8 * Added nsAutoSelectionReset, a tiny class that resets the selection to what it was before a block transformation.
* Added some code to restore selection after RemoveTextProperty.
* Made a tiny change to the way the editor holds onto the transaction manager, so client (like the ender text control) can
turn undo on and off effectively
* Fixed a bug in IsNodeInline that was causing GetBlockParent to return the wrong parent node (and who knows what
other mischief) where atom compares were being done on strings of different case, for <B>, "b" vs. "B".  The DOM
method nsIDOMElement::GetTagName forced the returned tag name to upper case.  I don't know how long that has
been true, but I assume it's a fairly recent change (or something on our side related to it changed recently) or this method
never would have worked.  I also found a few cases of nsString::Equals that I changed to EqualsIgnoreCase
* Made some general improvements to the interaction between editors and rules, so that the aCancel out param is always
intialized, and all rules with Will... are matched with a Did... call.  Added Will/DidSetTextProperty() and
Will/DidRemoveTextProperty().  This helps enable plain text mode.  Added a skeleton for max length support in text editor.
* fixed some warnings.


git-svn-id: svn://10.0.0.236/trunk@34183 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-08 06:04:51 +00:00
akkana%netscape.com
d0e25f4a05 Get rid of overloaded class names, to eliminate warnings
git-svn-id: svn://10.0.0.236/trunk@34069 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-07 21:12:01 +00:00
buster%netscape.com
9041cef161 Preparation for ender-based text control
* added focus listener.  Doesn't do much yet, but when focus notifications start appearing, we'll be ready for them.  The code is in
place to hide selection when we lose focus and paint selection when we get focus.  That's probably not quite right, but it's a start.
We will need to be able to determine the distinction between losing focus to another control within our app, and losing focus to
another app.
* added support for disabled and readonly states in the editor.  This is accomplished by having flags set by the client, and letting the
rules system deal with those flags.  The flags I added are:
     TEXT_EDITOR_FLAG_PLAINTEXT   0x01   // only plain text editing is allowed
     TEXT_EDITOR_FLAG_SINGLELINE  0x02   // enter key and CR-LF handled specially
     TEXT_EDITOR_FLAG_PASSWORD    0x04   // text is not entered into content, only a representative character
     TEXT_EDITOR_FLAG_READONLY    0x08   // editing events are disabled.  Editor may still accept focus.
     TEXT_EDITOR_FLAG_DISALBED    0x10   // all events are disabled (like scrolling).  Editor will not accept focus.
* added WillInsertBreak/DidInsertBreak into text rules, so flags could be checked.  This gets us readonly, disabled, and single line
behavior.
* cleaned up the code that allocates, registers, and destroys event listeners.  Thanks to Kin and Simon for cleaning up the
ownership model on the listeners, it was a big help.
* added support for a max text length.  You can now tell the text editor, be no bigger than n characters.


git-svn-id: svn://10.0.0.236/trunk@33153 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-28 21:24:18 +00:00
akkana%netscape.com
83e9e8100d Add paste/insert as quotation into editor app cores to be accessible from JS.
git-svn-id: svn://10.0.0.236/trunk@33062 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-28 00:46:34 +00:00
sfraser%netscape.com
580f23cfb4 Add unit test call to nsIEditor, and implement it in nsText- and nsHTMLEditors.
git-svn-id: svn://10.0.0.236/trunk@32880 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-27 04:10:04 +00:00
akkana%netscape.com
156d763247 Insert / Paste as Quotation.
git-svn-id: svn://10.0.0.236/trunk@32824 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-27 00:08:15 +00:00
akkana%netscape.com
b1ae4e654f Add nsICiter, for mail quoting
git-svn-id: svn://10.0.0.236/trunk@32777 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-26 23:13:03 +00:00
cmanske%netscape.com
eaea155fe6 Continued UI work: Spell checker fixes, toolbar improvements, popup menus implemented for paragraph style, font face and color, setting font color test UI, etc.
git-svn-id: svn://10.0.0.236/trunk@32726 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-26 21:40:51 +00:00
jfrancis%netscape.com
656494ed95 fixing bustage
git-svn-id: svn://10.0.0.236/trunk@31896 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-17 13:10:29 +00:00
jfrancis%netscape.com
2a700f7f7c insert list and indent work
git-svn-id: svn://10.0.0.236/trunk@31895 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-17 12:22:31 +00:00
sfraser%netscape.com
4f8836e58a Stub in the get/set column width calls for plain text editing.
git-svn-id: svn://10.0.0.236/trunk@31409 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-13 04:44:57 +00:00
cmanske%netscape.com
1dc89a2562 Implemented InsertLinkAroundSelection
git-svn-id: svn://10.0.0.236/trunk@30786 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-07 22:26:23 +00:00
sfraser%netscape.com
ebe41203f5 Implement Save, Save As in editor.
git-svn-id: svn://10.0.0.236/trunk@30665 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-07 05:02:35 +00:00
cmanske%netscape.com
0a9edc9d32 Added UI for paragraph style and preliminary versions of image and link dialogs
git-svn-id: svn://10.0.0.236/trunk@30437 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-05 23:29:18 +00:00
akkana%netscape.com
392f2f0298 - Rename iDirection enum to ECollapsedSelectionAction
- Initial implementation of Insert HTML


git-svn-id: svn://10.0.0.236/trunk@30432 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-05 23:27:17 +00:00
buster%netscape.com
9a004fa0f0 1. block transformation infrastructure is now in place. We can go ahead and implement interesting
features like set paragraph style, set list type, indent, etc.  I'm sure there's holes in my
implementation that these high level features will make obvious.

2. I've factored a lot of utility methods from several modules into nsEditor as public static methods.
This makes them easily accessable to all, and will help Joe and I remove redundant methods.

3. I changed the HTML tags to lower case, and made all string compares case-insensitive.  No, this
isn't quite the right thing to do, but we don't have atoms from layout yet.  The Right Thing is for us
to reuse those atoms.


git-svn-id: svn://10.0.0.236/trunk@30367 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-05 04:05:19 +00:00