Commit graph

239 commits

Author SHA1 Message Date
Wolfgang Lux
f3b6c1fe6f Usability improvements: When setting the cursor to the beginning of a
line, set the typing attributes to the attributes of the first character
of that line rather than the preceding newline. When deleting text, set
the typing attributes to those of the first deleted character rather
than those of the character preceding the deleted range.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30055 72102866-910b-0410-8b05-ffd578937521
2010-03-27 21:41:29 +00:00
Wolfgang Lux
ca3261653b Allow shift-clicking in a text view to shrink the current selection.
Comes handy when you accidentally selected a few characters too much.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30054 72102866-910b-0410-8b05-ffd578937521
2010-03-27 21:29:02 +00:00
Wolfgang Lux
79ef3c7045 Select pasted text in a text view after a DnD operation.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30053 72102866-910b-0410-8b05-ffd578937521
2010-03-27 21:17:00 +00:00
Fred Kiefer
6483053f29 Yet another bit of #include -> #import replacement. Replace includes of Foundation.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30034 72102866-910b-0410-8b05-ffd578937521
2010-03-25 09:11:50 +00:00
Fred Kiefer
42b91d0695 Small improvements on XIB loading.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30023 72102866-910b-0410-8b05-ffd578937521
2010-03-23 07:15:17 +00:00
Fred Kiefer
05beafea2e Small improvements to NIB loading.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30010 72102866-910b-0410-8b05-ffd578937521
2010-03-20 17:23:10 +00:00
Fred Kiefer
8f43eb6c4e * Source/NSTextView.m (-readSelectionFromPasteboard:type:): Fix
potential memory leak for colour pasting.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29992 72102866-910b-0410-8b05-ffd578937521
2010-03-17 09:36:19 +00:00
Fred Kiefer
58afda1e08 Small keyed decoing improvements.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29963 72102866-910b-0410-8b05-ffd578937521
2010-03-15 12:55:12 +00:00
Fred Kiefer
a798a9bcc1 Retain teh text view not the layout manager during container replacement.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29960 72102866-910b-0410-8b05-ffd578937521
2010-03-15 11:23:09 +00:00
Doug Simons
cdf59d5e96 Set insertion point _after_ pasted text, don't select it.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29916 72102866-910b-0410-8b05-ffd578937521
2010-03-12 23:38:30 +00:00
Doug Simons
9b229c81f5 fix behavior of simple click within selected text; optimize setNeedsDisplayInRect: when called with empty rect
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29914 72102866-910b-0410-8b05-ffd578937521
2010-03-12 22:50:42 +00:00
Fred Kiefer
c05581a005 Fix up teh includes to compile again after latest changes to base. Still
plenty of warnings and the result isn't working at least on 64 bit
machines :-(


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29685 72102866-910b-0410-8b05-ffd578937521
2010-02-20 10:40:44 +00:00
Wolfgang Lux
61187ead14 Usability improvement: Make color and font panels key only when
necessary. Avoids annoying and unnecessary focus shifts when changing
colors or fonts.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29681 72102866-910b-0410-8b05-ffd578937521
2010-02-20 00:20:30 +00:00
Wolfgang Lux
d10e0c49e5 Add forgotten test to apply smart insert and delete during drag and
drop in a text view only when selection granularity is select by word.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29679 72102866-910b-0410-8b05-ffd578937521
2010-02-19 23:15:13 +00:00
Fred Kiefer
c9d1292563 Small improvements to allow changing of the text container for a text
view.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29648 72102866-910b-0410-8b05-ffd578937521
2010-02-15 17:04:17 +00:00
Wolfgang Lux
2de8153b43 Update the typing attributes of a rich text view also if the selected
range has a non-zero length. Fixes a problem where, e.g., corrections
from the spell panel could use wrong attributes.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29635 72102866-910b-0410-8b05-ffd578937521
2010-02-15 07:57:11 +00:00
Wolfgang Lux
c076dbd009 Fix issue where the insertion point was not placed in an empty last
line of a text view when clicking with the mouse.
Fix issue where the insertion point was not placed in an empty last
line when using the down arrow key (bug #15893).
Fix issue where the insertion point was placed incorrectly if the last
line of a text view ends in an invisible character (e.g., a tab).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29584 72102866-910b-0410-8b05-ffd578937521
2010-02-12 15:27:02 +00:00
Wolfgang Lux
fc16eea0dd Implement smart insert and delete and use it when cutting, copying,
pasting, and deleting full words in a text view or text field.

Note: I have changed NSTextView initialization to enable smart insert
and delete by default, since this is the default on OS X. (It is even
documented, though in a maybe obscure place, cf. "Text Editing
Programming Guide for Cocoa: Subclassing NSTextView".)  However, this
means that support for this feature will be somewhat inconsistent.
Smart insert and delete is enabled for text views created
programmatically (including the field editor), but not for text views
loaded from existing nib files.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29426 72102866-910b-0410-8b05-ffd578937521
2010-01-27 23:26:09 +00:00
Wolfgang Lux
db53bb1c7f Fix a bug that prevented changing the color of the selected text of a
text view via drag and drop.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29250 72102866-910b-0410-8b05-ffd578937521
2010-01-09 09:09:57 +00:00
Riccardo Mottola
d831e0a199 corrected multi-line string constant
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29167 72102866-910b-0410-8b05-ffd578937521
2009-12-26 21:14:50 +00:00
Wolfgang Lux
425e51363c Prevent a crash when -selectedRange is called for an NSTextView
without a layout manager.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29165 72102866-910b-0410-8b05-ffd578937521
2009-12-23 01:01:57 +00:00
Wolfgang Lux
395f9a293b Implement coalescing of undo actions for typing events in NSTextView.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29164 72102866-910b-0410-8b05-ffd578937521
2009-12-23 00:39:18 +00:00
Fred Kiefer
8bd9424ef9 Move the validateUserIntefaceItem back to NSTextView.m
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29019 72102866-910b-0410-8b05-ffd578937521
2009-11-16 11:17:20 +00:00
Fred Kiefer
0e3632608f Remove validateUserIntefaceItem:.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29018 72102866-910b-0410-8b05-ffd578937521
2009-11-15 18:20:57 +00:00
Gregory John Casamento
5b293ad771 * Source/NSTextView.m: Don't add the text storage if it's nil
in initWithCoder:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28470 72102866-910b-0410-8b05-ffd578937521
2009-08-19 04:58:31 +00:00
Gregory John Casamento
3a969af071 * Source/NSTextView.m: initWithCoder: change to use text storage
more directly to allow the handling of attributed strings.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28445 72102866-910b-0410-8b05-ffd578937521
2009-08-08 17:07:07 +00:00
Gregory John Casamento
acc0597c97 * Source/GSTextStorage.m: In initWithCoder: don't overwrite the
contents of the text storage by attempting to unarchive when the
	unarchiver is keyed.
	* Source/NSTextView.m: In initWithCoder: retrieve the contents
	of the text storage for display in the text view.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28443 72102866-910b-0410-8b05-ffd578937521
2009-08-08 07:08:23 +00:00
Gregory John Casamento
1aa9c676ce * Source/NSTextView.m: initWithCoder: temporarily remove decoding
of NSTextContainer since it is causing a crash when editing a text
	view's that was loaded from a nib file. 


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28442 72102866-910b-0410-8b05-ffd578937521
2009-08-08 04:43:41 +00:00
Fred Kiefer
2ed61072dd * Source/NSTextView.m (-initWithCoder:, -setTextContainer:):
Attempt to resolve the memory issues when coding a text container.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28405 72102866-910b-0410-8b05-ffd578937521
2009-07-24 07:35:38 +00:00
Gregory John Casamento
a145faad11 Added fix suggested by George.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28375 72102866-910b-0410-8b05-ffd578937521
2009-06-29 03:47:10 +00:00
Gregory John Casamento
4991a29743 * Source/GSStandardWindowDecorationView.m: Live window resize changes
for when using GNUstep decorations in resizeWindowStartingWithEvent:.
	* Source/NSLayoutManager.m: Unarchive the text containers into an 
	array in initWithCoder:.
	* Source/NSTextContainer.m: Get the layout manager in initWithCoder:.
	* Source/NSTextView.m: Changes to include text container from nib
	file into the nib loading process in initWithCoder:.   


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28296 72102866-910b-0410-8b05-ffd578937521
2009-05-23 15:50:51 +00:00
Gregory John Casamento
343999460b * Headers/AppKit/NSSpeechSynthesizer.h: Added _module ivar.
* Source/NSDrawer.m: Don't set the timer since it eats a lot of CPU.
	* Source/NSPasteboard.m: Retain the path since it's autoreleased.
	* Source/NSTextView.m: Set the textview to allow undos by default.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28186 72102866-910b-0410-8b05-ffd578937521
2009-04-07 22:52:52 +00:00
Fred Kiefer
48f6a535ad Set values for minSize, maxSize, horizontallyResizable and verticallyResizable
in the initializers consistently.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28132 72102866-910b-0410-8b05-ffd578937521
2009-03-25 08:14:30 +00:00
Fred Kiefer
7c2e8efcd8 Replace nil with [NSDate distantFuture] in calls to nextEventMatchingMask:...dequeue:.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28025 72102866-910b-0410-8b05-ffd578937521
2009-03-02 16:26:23 +00:00
Fred Kiefer
a815330b26 Correct computation of attachment cell frame.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27750 72102866-910b-0410-8b05-ffd578937521
2009-02-01 14:07:30 +00:00
Fred Kiefer
ddf1b1a269 Improvement of attributed string loading and attachment display in text
view.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27705 72102866-910b-0410-8b05-ffd578937521
2009-01-27 19:16:04 +00:00
Fred Kiefer
326aaadef2 Add type casts to keep compiler happy.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27481 72102866-910b-0410-8b05-ffd578937521
2008-12-31 16:49:46 +00:00
Wolfgang Lux
daedd434bb Minor NSTextView fixes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27364 72102866-910b-0410-8b05-ffd578937521
2008-12-21 11:24:19 +00:00
Wolfgang Lux
232de18e5e Fix a crash during undo/redo when a text storage is shared among
multiple text views and some of these views are closed.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27360 72102866-910b-0410-8b05-ffd578937521
2008-12-19 23:51:25 +00:00
Wolfgang Lux
37cb9d46b0 Scroll NSTextView during dragging if the mouse pointer is close to the
border of the view's visible rectangle.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27313 72102866-910b-0410-8b05-ffd578937521
2008-12-16 21:13:21 +00:00
Wolfgang Lux
aeec5f704c Start drag operation in NSTextView only after a single click into the
selected range.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27244 72102866-910b-0410-8b05-ffd578937521
2008-12-07 09:38:15 +00:00
Wolfgang Lux
c6e08b897c Improve implementation of undo and register redo operations for
NSTextView.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27138 72102866-910b-0410-8b05-ffd578937521
2008-11-26 22:56:03 +00:00
Wolfgang Lux
d1514c3ce1 Simplify the new drag and drop implementation for NSTextView and fix
some corner cases.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27129 72102866-910b-0410-8b05-ffd578937521
2008-11-24 21:58:42 +00:00
Wolfgang Lux
7e739d6fa3 Fix an oversight in the previous check-in that was causing a crash
when moving text via drag and drop to the end of a text view.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27126 72102866-910b-0410-8b05-ffd578937521
2008-11-24 10:27:10 +00:00
Wolfgang Lux
30fb47d4bb Improve drag and drop implementation for NSTextView so that an ongoing
drag operation no longer changes the current selection of the target
view. Also fix an issue with dropping text into an empty text view.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27125 72102866-910b-0410-8b05-ffd578937521
2008-11-24 08:24:19 +00:00
Wolfgang Lux
2f2292f703 Complete drag and drop support for NSTextView by making them dragging
sources, too. In addition, support dragging text to non-rich text
NSTextViews.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27117 72102866-910b-0410-8b05-ffd578937521
2008-11-23 10:02:16 +00:00
Adam Fedor
7afdd32ac1 Revert library license version to 2 until applications can be converted
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26619 72102866-910b-0410-8b05-ffd578937521
2008-06-10 04:01:49 +00:00
Fred Kiefer
df859abbe6 Add new X secondary selection behaviour.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26004 72102866-910b-0410-8b05-ffd578937521
2008-01-26 17:17:04 +00:00
Fred Kiefer
30c6bccd90 Add MacOSX methods and ivars.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@25882 72102866-910b-0410-8b05-ffd578937521
2008-01-07 11:26:13 +00:00
Fred Kiefer
3dc7f6d74c Set the text container to max size, when the text view is resizable.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@25863 72102866-910b-0410-8b05-ffd578937521
2008-01-04 21:02:29 +00:00