Alexander Malmberg
e4329b4ff9
(-sizeToFit): Add the extra line frag rect. (-scrollRangeToVisible:): Reimplement using the new insertion point positioning methods.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16119 72102866-910b-0410-8b05-ffd578937521
2003-03-03 18:33:46 +00:00
Alexander Malmberg
df47a8fe60
(-usedRectForTextContainer:): Don't add the extra line frag rect.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16118 72102866-910b-0410-8b05-ffd578937521
2003-03-03 18:32:55 +00:00
Alexander Malmberg
017c2515c7
Change type of a variable holding a character index to int (was char, would overflow and break things.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16117 72102866-910b-0410-8b05-ffd578937521
2003-03-03 15:20:02 +00:00
Alexander Malmberg
f042ef5fcf
Removed old, broken-by-design interface for soft invalidation.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16116 72102866-910b-0410-8b05-ffd578937521
2003-03-03 13:58:17 +00:00
Alexander Malmberg
7c79dae556
Add and implement -typesetter and -setTypesetter:.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16115 72102866-910b-0410-8b05-ffd578937521
2003-03-03 13:57:53 +00:00
Alexander Malmberg
0af22dc954
(-setAttributes:range:): Handle zero-length attribute changes correctly.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16114 72102866-910b-0410-8b05-ffd578937521
2003-03-03 13:57:34 +00:00
Ludovic Marcotte
6f7cd1c96b
Fixed a memory leak. See the ChangeLog for the details.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16107 72102866-910b-0410-8b05-ffd578937521
2003-03-02 18:50:07 +00:00
Fred Kiefer
7c6c6de482
In [drawRect:]use the frame of the view, not the given rect.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16094 72102866-910b-0410-8b05-ffd578937521
2003-03-01 00:44:45 +00:00
Fred Kiefer
3e2ff7560b
Added support to print a file in [finishLaunching]. Use safer way
...
to call selector in [beginSheet:...contextInfo:].
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16093 72102866-910b-0410-8b05-ffd578937521
2003-03-01 00:44:27 +00:00
Fred Kiefer
df30e235c5
Use method calls instead of some of the direct references to
...
NSLayoutManager ivar. General clean up.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16092 72102866-910b-0410-8b05-ffd578937521
2003-03-01 00:43:54 +00:00
Alexander Malmberg
005bacbebb
(-glyphRangeForBoundingRect:inTextContainer:): Fix the horizontal intersection checks.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16075 72102866-910b-0410-8b05-ffd578937521
2003-02-26 16:11:55 +00:00
Alexander Malmberg
b48bf809c7
(-_generateRunsToCharacter:): Optimize the run structure by merging with an existing run instead of creating a new run under some circumstances.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16074 72102866-910b-0410-8b05-ffd578937521
2003-02-25 23:55:03 +00:00
Alexander Malmberg
7069b67123
Fix handling of trailing text containers when soft-invalidating.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16073 72102866-910b-0410-8b05-ffd578937521
2003-02-25 16:40:20 +00:00
Alexander Malmberg
466d7f8af7
Set the next character index correctly after the run-merge optimization.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16064 72102866-910b-0410-8b05-ffd578937521
2003-02-24 14:26:22 +00:00
Alexander Malmberg
5e1795f0b9
(-drawBackgroundForGlyphRange:atPoint:): Check that a range has a background color before checking that there are rectangles for it.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16061 72102866-910b-0410-8b05-ffd578937521
2003-02-24 02:54:32 +00:00
Alexander Malmberg
4c0d68496c
Fix handling of the case where the exact glyph is found during the binary search.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16060 72102866-910b-0410-8b05-ffd578937521
2003-02-24 02:53:20 +00:00
Alexander Malmberg
6397b61a2a
Implement -isEqual: and -hash.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16059 72102866-910b-0410-8b05-ffd578937521
2003-02-23 23:05:43 +00:00
Alexander Malmberg
5078562c49
(-update): Don't redisplay the window.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16056 72102866-910b-0410-8b05-ffd578937521
2003-02-23 12:32:27 +00:00
Adam Fedor
054a27b9ba
Move disable/enable flush code
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16053 72102866-910b-0410-8b05-ffd578937521
2003-02-23 04:38:49 +00:00
Alexander Malmberg
735e3bed5e
Don't track the started status for a text container separately. Use num_linefrags instead.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16048 72102866-910b-0410-8b05-ffd578937521
2003-02-23 01:01:13 +00:00
Alexander Malmberg
5be49b8ab4
Implement -menuForEvent: to always return nil to indicate that we don't have a context menu.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16047 72102866-910b-0410-8b05-ffd578937521
2003-02-22 11:33:41 +00:00
Alexander Malmberg
d78308a8e3
(-sendEvent:): Only bring up the main menu if there is no window for the event.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16046 72102866-910b-0410-8b05-ffd578937521
2003-02-22 11:33:16 +00:00
Alexander Malmberg
8712b50242
Make sure the extra line frag rect is always set when we reach the end.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16043 72102866-910b-0410-8b05-ffd578937521
2003-02-22 01:43:11 +00:00
Adam Fedor
cc9e0d4346
Menu display improvments
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16040 72102866-910b-0410-8b05-ffd578937521
2003-02-21 23:50:21 +00:00
Adam Fedor
1b0e112697
* Source/NSPrintOperation.m (-_print): Remove locale change (now
...
handled correctly in backend stream context.
* Source/NSScrollView.m (-initWithFrame:): Change default border
to none.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16020 72102866-910b-0410-8b05-ffd578937521
2003-02-20 03:12:29 +00:00
Alexander Malmberg
3abfc263a0
Fix clearing of soft-invalidated layout information if the invalidated range is beyond the last finished layout.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16011 72102866-910b-0410-8b05-ffd578937521
2003-02-19 14:12:55 +00:00
Alexander Malmberg
85c5580808
Optimizations.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16010 72102866-910b-0410-8b05-ffd578937521
2003-02-19 14:12:16 +00:00
Alexander Malmberg
6f8966e716
Optimize.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16007 72102866-910b-0410-8b05-ffd578937521
2003-02-19 02:18:41 +00:00
Alexander Malmberg
5faf6f6f1e
Optimize reuse of soft-invalidated layout a bit in a common case.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16006 72102866-910b-0410-8b05-ffd578937521
2003-02-18 23:34:51 +00:00
Alexander Malmberg
30e76ace40
Correct the condition for splitting the initial run.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16005 72102866-910b-0410-8b05-ffd578937521
2003-02-18 23:16:29 +00:00
Alexander Malmberg
f4a797f333
Use the soft-invalidated layout information to avoid rebuilding layout (when possible).
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16004 72102866-910b-0410-8b05-ffd578937521
2003-02-18 20:27:13 +00:00
Alexander Malmberg
5f2fd0477a
Add basic interface that lets the typesetter access soft-invalidated layout information.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16003 72102866-910b-0410-8b05-ffd578937521
2003-02-18 20:26:49 +00:00
Alexander Malmberg
6b01d08cb1
Fix edge case in soft invalidation.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16002 72102866-910b-0410-8b05-ffd578937521
2003-02-18 20:26:13 +00:00
Alexander Malmberg
db4c4957a3
Minor fix of previous commit: make sure layout is marked as incomplete even if no actual layout was invalidated.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15998 72102866-910b-0410-8b05-ffd578937521
2003-02-18 17:24:24 +00:00
Alexander Malmberg
0383d08f23
Implement handling of soft-invalidated line frags. Soft-invalidate layout information for glyphs after an edited range in NSLayoutManager.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15997 72102866-910b-0410-8b05-ffd578937521
2003-02-18 17:15:25 +00:00
Alexander Malmberg
32f6790d62
(-setAttributes:range:): Call -edited:range:changeInLength: with the range that was changed (and not the range attributes could be merged for).
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15994 72102866-910b-0410-8b05-ffd578937521
2003-02-18 00:35:28 +00:00
Alexander Malmberg
dffecc3043
(-textStorage:edited:range:changeInLength:invalidatedRange:): Don't invalidate all layout on each change. Now, all layout information for glyphs before the change will be reused. (Layout for glyphs after the change is still invalidated, until I finish the soft invalidation.)
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15993 72102866-910b-0410-8b05-ffd578937521
2003-02-18 00:35:23 +00:00
Alexander Malmberg
e262df5bbd
(-layoutGlyphsInLayoutManager:inTextContainer:startingAtGlyphIndex:previousLineFragmentRect:nextGlyphIndex:numberOfLineFragments:): Determine the initial value for newParagraph correctly.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15992 72102866-910b-0410-8b05-ffd578937521
2003-02-18 00:35:18 +00:00
Alexander Malmberg
7435220c32
Many minor cleanups and optimizations. Much commenting.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15991 72102866-910b-0410-8b05-ffd578937521
2003-02-18 00:35:13 +00:00
Alexander Malmberg
bdc3373174
Clean up layout invalidation. Set the prev pointer correctly when splitting a run during glyph invalidation.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15990 72102866-910b-0410-8b05-ffd578937521
2003-02-17 20:30:26 +00:00
Alexander Malmberg
1ba6d8c940
Add some framework support for caching the last accessed run.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15980 72102866-910b-0410-8b05-ffd578937521
2003-02-17 01:19:34 +00:00
Alexander Malmberg
d6239b2d59
Optimize some important cases by using a binary search for line frags instead of a linear search. Cleanups and comments.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15979 72102866-910b-0410-8b05-ffd578937521
2003-02-17 01:13:27 +00:00
Alexander Malmberg
3f51658781
(-glyphIndexForPoint:inTextContainer:fractionOfDistanceThroughGlyph:): Handle the case where the point is on a line, but not inside a line frag rect, better. Commenting and cleanups.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15978 72102866-910b-0410-8b05-ffd578937521
2003-02-16 21:40:47 +00:00
Alexander Malmberg
7e1801395c
Store the line frags array as an ivar instead of allocating and freeing it everytime -layoutLineNewParagraph: is called.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15977 72102866-910b-0410-8b05-ffd578937521
2003-02-16 16:54:45 +00:00
Alexander Malmberg
27e5baeab3
Bring back the old implementation of -rulerMarkersForTextView:paragraphStyle:ruler:.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15976 72102866-910b-0410-8b05-ffd578937521
2003-02-16 14:54:14 +00:00
Nicola Pero
913e8e34f4
Fixed offset used in delegate calls
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15974 72102866-910b-0410-8b05-ffd578937521
2003-02-16 14:04:10 +00:00
Richard Frith-Macdonald
4221f51f1a
Menu level fix
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15971 72102866-910b-0410-8b05-ffd578937521
2003-02-16 06:04:03 +00:00
Nicola Pero
2f0f4f1d0d
Fixed delegate constraining split position
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15969 72102866-910b-0410-8b05-ffd578937521
2003-02-16 03:19:11 +00:00
Alexander Malmberg
4dc81ab769
Implement extra line fragment handling.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15968 72102866-910b-0410-8b05-ffd578937521
2003-02-16 03:18:35 +00:00
Alexander Malmberg
6027271a4f
Change the way the text view is told about layout invalidation. Change NSTextView to update its state as late as possible before displaying, and make sure it's updated when it's resized.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15967 72102866-910b-0410-8b05-ffd578937521
2003-02-15 17:30:52 +00:00