Commit graph

62 commits

Author SHA1 Message Date
Gregory John Casamento
32a5712945 Fix address and license name in all files. 2019-12-09 18:45:15 -05:00
Ivan Vučica
0dd7fa30d1 Opted to undo the -[NSBezierPath setLineDash:] patch's check for
count > _dash_count, as NSZoneRealloc() should be allowed to
reduce the allocated block's size.

Additionally, updated ChangeLog.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39287 72102866-910b-0410-8b05-ffd578937521
2016-01-17 21:36:14 +00:00
Ivan Vučica
d2760ebc1f Fix setLineDash: NSZoneRealloc called without saving the return value
Cherrypicking mlytwyn's r39277 (Testplant branch).

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39286 72102866-910b-0410-8b05-ffd578937521
2016-01-17 21:36:12 +00:00
Fred Kiefer
86b587e9d7 * Source/NSBezierPath.m (-elementAtIndex:associatedPoints:): Fix
handling of close element.
Patch by Bluna Ratimonkey <object@gmail.com>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36304 72102866-910b-0410-8b05-ffd578937521
2013-03-08 08:59:18 +00:00
Fred Kiefer
2f6cc73444 * Source/NSBezierPath.m: Implement keyed coding and complete
keyed decoding.
Patch by Christopher Armstrong <carmstrong@fastmail.com.au>
* Source/NSBezierPath.m: Rewrote -elementAtIndex:associatedPoints:
to return a point for NSClosePathBezierPathElement. And adjust
all callers to make use of that point. Complete non-keyed coding and
decoding.
* Tests/gui/NSBezierPath/basic.m: Add basic tests for NSBezierPath.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36267 72102866-910b-0410-8b05-ffd578937521
2013-03-04 16:51:10 +00:00
Fred Kiefer
4d953a5122 * Source/NSBezierPath.m: More keyed decoding.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36157 72102866-910b-0410-8b05-ffd578937521
2013-02-17 13:02:46 +00:00
Fred Kiefer
27897b75e8 * Source/NSBezierPath.m: Started the implementation of keyed
encoding and decoding.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36059 72102866-910b-0410-8b05-ffd578937521
2013-02-03 22:40:14 +00:00
Fred Kiefer
e62fddeea0 Change NSBezierPath to use NSInteger and CGFloat and adjust uses to
this.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36054 72102866-910b-0410-8b05-ffd578937521
2013-02-01 14:03:08 +00:00
Fred Kiefer
93234fe0e2 Rewrote NSBezierPath to allow subclasses.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33942 72102866-910b-0410-8b05-ffd578937521
2011-10-04 13:32:50 +00:00
David Chisnall
2ccfbde833 Change direct references to the isa pointer to calls to object_getClass(). In
discussion with Steve Naroff (before he left Apple) it was decided that the isa
pointer should be regarded as an implementation detail and not part of the
language, so direct references to it are deprecated (on OS X).  This gives the
runtime a bit more freedom to do secret isa-swizzling tricks.

I've had these changes sitting in my copy for ages - no idea why they weren't
committed.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33111 72102866-910b-0410-8b05-ffd578937521
2011-05-25 11:19:09 +00:00
Fred Kiefer
2d01942e4b Replace #include -> #import
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32451 72102866-910b-0410-8b05-ffd578937521
2011-03-04 11:33:22 +00:00
Nicola Pero
f80e259048 Explicitly encode/decode enumerated types as 'int' which is what all
the existing archives use (even if it is incorrect as in many cases
the types are actually 'unsigned int')


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31785 72102866-910b-0410-8b05-ffd578937521
2010-12-27 11:57:04 +00:00
Fred Kiefer
00ab729bdd Next bit of #include -> #import replacement.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30029 72102866-910b-0410-8b05-ffd578937521
2010-03-24 09:18:14 +00:00
Richard Frith-MacDonald
08bcaee5e4 Use standard -zone method
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29824 72102866-910b-0410-8b05-ffd578937521
2010-03-03 17:33:29 +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
Eric Wasylishen
872717bde5 Cairo backend:
-DPSsetflat: and -DPScurrentflat should not have been transforming
the flatness value with the current transformation matrix.
The effect of this could be seen in the Apple BezierPathLab example;
zooming in on the circle caused it to look more and more like a
polygon.

Also set NSBezierPath default flatness to 0.6 to match OS X
(it was 1.0, which made circles look a bit rough)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29145 72102866-910b-0410-8b05-ffd578937521
2009-12-20 18:47:26 +00:00
Fred Kiefer
70fe7f2bb0 * Source/NSBezierPath.m (-appendBezierPathWithRoundedRect:xRadius:yRadius:):
Small rearangment of code.
Patch by Fred Morcos <fred.morcos@gmail.com>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28254 72102866-910b-0410-8b05-ffd578937521
2009-04-27 13:12:25 +00:00
Fred Kiefer
345f77f374 * Headers/AppKit/NSBezierPath.h,
* Source/NSBezierPath.m
* (+bezierPathWithRoundedRect:xRadius:yRadius:, -appendBezierPathWithRoundedRect:xRadius:yRadius:):
New 10.5 methods.
Patch by Fred Morcos <fred.morcos@gmail.com>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28247 72102866-910b-0410-8b05-ffd578937521
2009-04-25 12:38:15 +00:00
Fred Kiefer
6e3db9142d Return a winding count of 0 when the bezier path is empty.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27086 72102866-910b-0410-8b05-ffd578937521
2008-11-17 22:19:30 +00:00
Richard Frith-MacDonald
1894b2468e Fix some codee which was not 64bit clean.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26816 72102866-910b-0410-8b05-ffd578937521
2008-08-21 08:42:20 +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
3811a82a38 Use fill instead of stroke to draw the glyphs.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26440 72102866-910b-0410-8b05-ffd578937521
2008-04-08 07:57:11 +00:00
Fred Kiefer
e87446b5cb Implement basic appendBezierPathWithPackedGlyphs: handling to forward to
the backend.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26435 72102866-910b-0410-8b05-ffd578937521
2008-04-07 13:45:41 +00:00
Fred Kiefer
3cbe23c511 Patch for bezier path encoding.
Add support for new dragging methods in table view.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@25660 72102866-910b-0410-8b05-ffd578937521
2007-12-02 20:43:32 +00:00
Fred Kiefer
193e31e678 Change all files to use GPL 3 and LGPL 3.
Prepare for next release.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@25536 72102866-910b-0410-8b05-ffd578937521
2007-10-29 21:16:17 +00:00
Richard Frith-MacDonald
54847b2b13 Add some pointless initialisations to satisfy compiler warnings.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@23130 72102866-910b-0410-8b05-ffd578937521
2006-07-05 07:09:43 +00:00
Richard Frith-Macdonald
7971a89c72 Coding style fixups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@22019 72102866-910b-0410-8b05-ffd578937521
2005-11-16 11:34:25 +00:00
Adam Fedor
303dd1baf9 Update FSF Address.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@21259 72102866-910b-0410-8b05-ffd578937521
2005-05-26 02:52:46 +00:00
Alexander Malmberg
ad2419e484 2005-01-21 21:43 Alexander Malmberg <alexander@malmberg.org>
Various whitespace cleanups, comment type fixes, and changes
	to avoid warnings from recent versions of gcc.

	* Headers/Additions/GNUstepGUI/GSToolbar.h (-_toolbars): Declare.
	* Source/NSWindow+Toolbar.m: Remove conflicting declaration of
	[NSToolbar -_toolbars].

	* Headers/Additions/GNUstepGUI/GSServicesManager.h,
 	Source/GSServicesMananger.m (-item2title:, -validateMenuItem:):
	Adjust argument types.
	* Headers/AppKit/NSMenu.h (-validateMenuItem:): Adjust argument
	type.

	* Source/NSTextView.m (-sizeToFit): Don't use size uninitialized
	if neither resizable flags is set.
	(-insertText:): Adjust argument type.
	* Headers/AppKit/NSResponder.h, Source/NSResponder.m (-insertText:):
	Adjust argument type. Document.

	* Headers/AppKit/NSView.h: Change type of ivar _window to NSWindow *.

	* Source/GSTitleView.m (-mouseDown:): Always initialize
	startWindowOrigin.
	* Source/NSApplication.m (-setApplicationIconImage:): Add casts
	to avoid warnings.
	* Source/NSCell.m (-cellSize): Add default: case.
	* Source/NSPasteboard.m
	([GSFiltered -pasteboard:provideDataForType:]): Detect and warn if we
	can't find a filter that will get us the desired type.
	* Source/NSProgressIndicator.m: Comment out unused variable 'images'.
	* Source/NSBezierPath.m: Declare GSBezierPath fully before using it.
	(-bezierPathByFlatteningPath, -bezierPathByReversingPath): Make sure
	variables are always initialized.

	* Source/NSMenuView.m,
	* Source/NSPrintOperation.m,
	* Source/NSSplitView.m,
	* Source/NSTableHeaderView.m: Make sure variables are always
	initialized.

	* Source/NSBox.m,
	* Source/NSImageview.m,
	* Source/NSText.m,
	* Source/NSTextStorage.m: Add missing includes.

	* Source/GSKeyBindingTable.m,
	* Source/GSLayoutManager.m,
	* Source/NSBitmapImageRep+PNM.m,
	* Source/NSBundleAdditions.m,
	* Source/NSLayoutManager.m,
	* Source/nsimage-tiff.h,
	* Source/tiff.m,
	* Headers/Additions/GNUstepGUI/GSDisplayServer.h,
	* Source/GSDisplayServer.m: Change signedness of various variables.

	* Source/NSPanel.m (-sendEvent:): Remove.
	* Source/NSWindow.m (-becomesKeyOnlyIfNeeded): New method.
	(-_sendEvent:becomesKeyOnlyIfNeeded:): Remove. Move code ...
	(-sendEvent:): ... here. Use -becomesKeyOnlyIfNeeded instead
	of the argument.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@20590 72102866-910b-0410-8b05-ffd578937521
2005-01-21 20:39:18 +00:00
Alexander Malmberg
ff7516df4b 2005-01-11 23:50 Alexander Malmberg <alexander@malmberg.org>
* Headers/AppKit/NSBezierPath.h (NSWindingRule)
 	(-containsPoint): Document.
	(-windingCountAtPoint:): New method.
	* Source/NSBezierPath.m: Remove some trailing whitespace.
	(PI): Correct rounding.
	(contribution, -contributionToContains:): Remove.
	(winding_line, winding_curve): New functions.
	(-windingCountAtPoint:): New method.
	(-containsPoint:): Use -windingCountAtPoint: instead of
	-contributionToContains:. Don't flatten the path.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@20538 72102866-910b-0410-8b05-ffd578937521
2005-01-11 22:53:08 +00:00
Alexander Malmberg
5c5d7bb400 (-_recalculateBounds): Rewrite.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@19734 72102866-910b-0410-8b05-ffd578937521
2004-07-15 00:32:01 +00:00
Fred Kiefer
0df92e1637 Some unrelated bug fixes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@18672 72102866-910b-0410-8b05-ffd578937521
2004-02-25 23:27:46 +00:00
Fred Kiefer
88925a9160 New implementation of [NSBezierPath containsPoint].
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@18220 72102866-910b-0410-8b05-ffd578937521
2003-11-28 22:20:19 +00:00
Fred Kiefer
8d1eac79f9 Undid accidental last commit of this file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@18104 72102866-910b-0410-8b05-ffd578937521
2003-11-22 16:17:11 +00:00
Fred Kiefer
1a92dfe9bb Small graphics cleanups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@18103 72102866-910b-0410-8b05-ffd578937521
2003-11-22 16:14:01 +00:00
Fred Kiefer
4a0281b9c4 Removed new GCC 3.4 warnings from Alexander Malmbergs list.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17601 72102866-910b-0410-8b05-ffd578937521
2003-09-01 18:17:52 +00:00
David Ayers
b18f1c4ac4 Header reorganization - Please refer to ChangeLog
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17408 72102866-910b-0410-8b05-ffd578937521
2003-07-31 23:52:10 +00:00
Richard Frith-Macdonald
56b238da25 More doc fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17303 72102866-910b-0410-8b05-ffd578937521
2003-07-22 17:03:50 +00:00
Adam Fedor
6be9174933 Include <> -> ""
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16917 72102866-910b-0410-8b05-ffd578937521
2003-06-13 15:01:12 +00:00
Alexander Malmberg
a55cd8adda Add [GSFontInfo -appendBezierPathWithGlyphs:count:toBezierPath:] and use it to implement NSBezierPath's glyph methods.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16903 72102866-910b-0410-8b05-ffd578937521
2003-06-11 13:36:59 +00:00
Fred Kiefer
294b552583 Moved code from [bezierPathWithOvalInRect:] and
[bezierPathWithRect:] to [appendBezierPathWithOvalInRect:] and
[appendBezierPathWithRect:] and implemented the former with a call
to the later.
Preliminary implemetation for [appendBezierPathWithGlyph:inFont:]
and [appendBezierPathWithGlyphs:count:inFont:].


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16615 72102866-910b-0410-8b05-ffd578937521
2003-05-02 19:00:43 +00:00
Fred Kiefer
961e797c53 Corrected [GSBezierPath appendBezierPath:] to check the class of
the parameter and to keep the isFlat flag in sync.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15065 72102866-910b-0410-8b05-ffd578937521
2002-11-24 01:05:20 +00:00
Fred Kiefer
15e791f6a5 Replaces [_doPath] with calls to [NSGraphicsContext
GSSendBezierPath:].
Added optimisation methods [appendBezierPath:] and
[transformUsingAffineTransform:] on GSBezierPath.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15038 72102866-910b-0410-8b05-ffd578937521
2002-11-21 20:28:42 +00:00
Fred Kiefer
7a9a8d54a6 Corrected includes to speed up compilation.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14972 72102866-910b-0410-8b05-ffd578937521
2002-11-11 00:15:29 +00:00
Fred Kiefer
480b90b2b8 Handle seting of an empty dash in [setLineDash:count:phase:].
[_doPath] now always sends the dash pattern, even when empty.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14699 72102866-910b-0410-8b05-ffd578937521
2002-10-10 09:47:48 +00:00
Alexander Malmberg
b52d785f08 Handle curves correctly when appending a path. Fix numerical stability issue in appendBezierPathWithArcFromPoint:toPoint:radius:.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14369 72102866-910b-0410-8b05-ffd578937521
2002-08-29 22:14:48 +00:00
Fred Kiefer
8e9fb492a7 Implemented [appendBezierPathWithArcFromPoint:toPoint:radius:]
with code from Alexander Malmberg <alexander@malmberg.org>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14363 72102866-910b-0410-8b05-ffd578937521
2002-08-28 22:02:42 +00:00
Nicola Pero
50d0d924aa Autorelease the path returned by +bezierPath; indentation changes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@12708 72102866-910b-0410-8b05-ffd578937521
2002-02-23 21:56:48 +00:00
Richard Frith-Macdonald
25010783ce Fix missed file for GIS api change
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@12374 72102866-910b-0410-8b05-ffd578937521
2002-02-01 18:19:04 +00:00
Adam Fedor
d47e202fbe Markup for autogsdoc
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@11788 72102866-910b-0410-8b05-ffd578937521
2001-12-17 16:51:51 +00:00