Commit graph

2430 commits

Author SHA1 Message Date
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
Alexander Malmberg
0b0e77ad82 ([NSMutableParagraphStyle -copyWithZone:]): Call GSDebugAllocation* when swizzling the class.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15966 72102866-910b-0410-8b05-ffd578937521
2003-02-15 17:15:50 +00:00
Alexander Malmberg
d59dd69fca (-_launchSpellCheckerForLanguage:): Don't printf-expand the error message twice.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15965 72102866-910b-0410-8b05-ffd578937521
2003-02-15 17:07:44 +00:00
Alexander Malmberg
c56d68453d When moving vertically, return the index of the character nearest the target horizontally.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15958 72102866-910b-0410-8b05-ffd578937521
2003-02-14 17:00:04 +00:00
Alexander Malmberg
6d1c78032a Fix an edge case in tab handling. Also, if tabs occure and the paragraph style has no more tab stops, act as if there were tabs every 100 points.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15957 72102866-910b-0410-8b05-ffd578937521
2003-02-14 16:59:38 +00:00
Alexander Malmberg
85ff161e72 Keep track of the original index of a sequence of moves in one dimension. Pass it to the layout manager when moving the insertion point to prevent drifting.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15956 72102866-910b-0410-8b05-ffd578937521
2003-02-14 16:58:59 +00:00
Alexander Malmberg
77950b1e66 Implement basic handling of tabs.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15950 72102866-910b-0410-8b05-ffd578937521
2003-02-12 23:53:29 +00:00
Fred Kiefer
a273e6156a Moved over from X11 backend.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15945 72102866-910b-0410-8b05-ffd578937521
2003-02-12 00:09:49 +00:00
Fred Kiefer
d22c80f5eb Added new file GSSlideView.m.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15943 72102866-910b-0410-8b05-ffd578937521
2003-02-12 00:05:27 +00:00
Fred Kiefer
534869106f Use GSSlideView to implement image sliding.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15942 72102866-910b-0410-8b05-ffd578937521
2003-02-12 00:05:09 +00:00
Alexander Malmberg
09c02037d7 (-_createColumn:): Set the border of the created scroll view explicitly.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15940 72102866-910b-0410-8b05-ffd578937521
2003-02-11 16:57:12 +00:00
Alexander Malmberg
abd4f0ca27 (-setBorderType:): Call -tile to make the change visible.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15939 72102866-910b-0410-8b05-ffd578937521
2003-02-11 16:56:54 +00:00
Alexander Malmberg
05d3343c45 (-setSelectedRange:affinity:stillSelecting:): Clamp the selected range to the text storage's length.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15937 72102866-910b-0410-8b05-ffd578937521
2003-02-11 15:40:21 +00:00
Alexander Malmberg
413dec23ee (-processEditing): Make sure we always give a valid range and delta to the layout managers.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15936 72102866-910b-0410-8b05-ffd578937521
2003-02-11 15:39:49 +00:00
Alexander Malmberg
ea14bf8170 (-fixAttachmentAttributesInRange:): Update end index when a character is deleted.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15935 72102866-910b-0410-8b05-ffd578937521
2003-02-11 15:39:20 +00:00
Richard Frith-Macdonald
e8ca345d45 Browser setPath: fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15929 72102866-910b-0410-8b05-ffd578937521
2003-02-11 06:43:05 +00:00
Alexander Malmberg
993c4431f4 Remove debugging code left in by mistake.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15926 72102866-910b-0410-8b05-ffd578937521
2003-02-10 15:06:57 +00:00
Alexander Malmberg
3b7c4e2a12 Minor changes and cleanups.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15925 72102866-910b-0410-8b05-ffd578937521
2003-02-10 14:29:31 +00:00
Alexander Malmberg
87a4e8d28d Many minor bug and behavior fixes to get the text system to work with several text containers attached to one layout manager.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15924 72102866-910b-0410-8b05-ffd578937521
2003-02-10 14:14:34 +00:00
Alexander Malmberg
f9fea1156d Cleanups of old debugging code, whitespace, and error handling. Fix handling of non-nominally spaced glyphs in some cases.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15918 72102866-910b-0410-8b05-ffd578937521
2003-02-09 20:13:16 +00:00