Commit graph

53 commits

Author SHA1 Message Date
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
Nicola Pero
93bcc21cfa When appending an arc to a bezier path, draw the line from the current
point to the arc start point - unless this is the first element of the path


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@10693 72102866-910b-0410-8b05-ffd578937521
2001-08-13 13:08:22 +00:00
Fred Kiefer
799b99fa0a Added implementation for dashes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@9967 72102866-910b-0410-8b05-ffd578937521
2001-05-18 20:58:27 +00:00
Fred Kiefer
1e529a1d34 [containsPoint:] corrected and simplified a bit, but this still
needs a complete rework.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@9464 72102866-910b-0410-8b05-ffd578937521
2001-03-21 00:09:29 +00:00
Nicola Pero
f7bc69d85c Fixed how angles are managed when drawing arcs: do it postscript-like
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@9308 72102866-910b-0410-8b05-ffd578937521
2001-03-07 13:09:22 +00:00
Nicola Pero
c76c32bc0f Fixes to appending an arc
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@9252 72102866-910b-0410-8b05-ffd578937521
2001-03-01 01:47:32 +00:00
Fred Kiefer
ffdddc1887 Corrected some bugs. Opimized the concret subclass to use a GSIArray.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@8731 72102866-910b-0410-8b05-ffd578937521
2001-01-21 22:32:35 +00:00
Fred Kiefer
5ff870120f Almost complete rewrite. The abstract class implements now most of
the methods leaving only 9 methods to the concrete class. (And
the hit test should also go into the abstract class) Simplified
and corrected most methods.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@8718 72102866-910b-0410-8b05-ffd578937521
2001-01-20 17:41:22 +00:00
Adam Fedor
8298410a10 Merge 0.6.6 branch into main.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@7188 72102866-910b-0410-8b05-ffd578937521
2000-08-07 22:06:04 +00:00
Adam Fedor
b33bb418f4 Merge from 0.6.5
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@6040 72102866-910b-0410-8b05-ffd578937521
2000-02-19 00:40:47 +00:00