Commit Graph

161 Commits

Author SHA1 Message Date
Christopher Lloyd
1cf5a59e4c - Jason Pugsley's named sockets fix for NSFileHandle_posix.m 2007-11-21 02:39:46 +00:00
Christopher Lloyd
936f59811b - PDF generation of line dashes and font descriptor flags fixed 2007-11-20 21:01:42 +00:00
Christopher Lloyd
f1eadad4f3 - NSURL parser implemented and tested, most of non-deprecated NSURL working now
- Windows specific splash image code replaced with platform neutral code
- NSFont cache moved from NSDisplay to NSFont class
- Periodic timers moved from NSDisplay to NSEvent
- [NSMutableArray removeObjectsFromIndices:numIndices] implemented
2007-11-19 15:28:39 +00:00
Christopher Lloyd
ec80813506 Rolf Jansen's fixes:
-Panels and Drawers no longer appear in task bar
-[NSText(View) setFont:range:] implemented
-NSCell, NSButtonCell loading state from nib file
-NSCell,NSTextField sendsActionOnEndEditing implemented
-NSTabView layout adjustments
-NSComboBox improvements
2007-11-19 14:49:00 +00:00
Christopher Lloyd
6ba570c3fc - Johannes Fortmann's Nov 8, 2007 patch and NSControllerSelectionProxy.h/.m for binding and controllers
- Rolf Jansen's fixes for r56 regression
2007-11-11 02:21:42 +00:00
Christopher Lloyd
fcda3ab7d9 - Large number of missing AppKit constant/methods added, most of the simpler ones implemented. Cleanup and instance size changes.
- Some existing implementation updated for new methods, primarily NSDocument
- Removed legacy keyed encoding/decoding functionality in AppKit
2007-11-08 15:58:54 +00:00
Christopher Lloyd
c320e2d204 - Rolf Jansen's fix which makes font metrics closely match those under OS X. 2007-11-07 16:11:39 +00:00
Christopher Lloyd
df296b0fba - Precise font ascender and descender calculated using GetOutlineTextMetrics and emsquare reference font.
- typesetter and layout manager adjusted to deal with floating point metrics by rounding values up
- NSBezierPath sets stroke state before stroking
- minor fixes for PDF font dictionary generation
2007-10-31 02:17:00 +00:00
Christopher Lloyd
f4499ef96b - PDF output using the NSString/NSAttributedString drawing category (NSStringDrawer) fixed. NSLayoutManager now adjusts y coordinates for an unflipped view instead of NSStringDrawer modifying the CTM
- beginPageInRect: CTM calculation fixed for unflipped view
- KGShading PDF decoding regression fixed, encoding tested as functional
- KGColorSpace PDF encoding fixed
2007-10-26 20:23:52 +00:00
Christopher Lloyd
1f873233e1 -More PDF generation and related cleanup. Text output works. Font dictionaries need more work to get more accurate fonts on display. Shadings might work, untested.
-[NSFont set] generates flipped text matrix if view flipped
-NSPrintInfo NSCopying implemented
-focusStack moved from NSView to NSGraphicsContext
-more cleanup in Win32 and compartmentalization of GDI specific rendering
2007-10-22 19:00:18 +00:00
Christopher Lloyd
e5c2e1c5b5 - Issue 47 fix by Rolf Jansen, %f formatting bug fixes
- NSApplication*ActiveNotification's behavior implemented
- gcc 4.2.1 compiler warnings reduced
- First pass at PDF output, -[NSView dataWithPDFInsideRect:], and underlying NSPrintOperation, KGPDFContext and KGPDF* code functional but not complete (text, images and shadings not functional)
- Cleanup of KGContext,KGGraphicsState to be more general/abstract, moved KGRendering/DeviceContext into Win32
- NSCachedImageRep changed to use NSWindow instead of CGLayer
2007-10-15 18:08:57 +00:00
Christopher Lloyd
18bcbed5ad - First pass at PNG, JPEG and BMP image decoding support. Based on the public domain stb_image.c V1.00 by Sean Barrett. NSBitmapImageRep functional for these file types.
- TIFF decoding and KGRenderingContext_gdi fixed scanline order to top to bottom
- NSDocumentController fixed to compare file extensions case insensitively
- NSZoneRealloc fixed to support reallocating NULL on Windows
- NSData -initWithContentsOfURL:, +dataWithContentsofURL: implemented for file URL's
2007-09-19 18:01:20 +00:00
Christopher Lloyd
a02d2a3788 - Issue 45 fix by Rolf Jansen, -[NSWindow graphicsContext] returns an NSGraphicsContext, not a KGContext.
- Use of -(KGContext *)graphicsContext changed to -(KGContext *)cgContext
2007-09-12 01:25:56 +00:00
Christopher Lloyd
486f3d0e2c - assorted NSOpenGL* fixes
- borderless (e.g. popup/menu) windows created with a dropshadow if available (XP and above)
2007-09-10 14:53:47 +00:00
Christopher Lloyd
c626d0ba73 - Issue 41, NSDragOperationEvery added
- Issue 42, NSTableView drag&drop implemented
- Issue 43, NSMutableArray removeObjectsAtIndexes: and insertObjects: atIndexes: implemented
- NSData, NSOpenGLView, NSOpenGLPixelFormat -initWithCoder implemented for keyed unarchiver, i.e. nibs
- First pass at NSOpenGLView, NSOpenGLContext, NSOpenGLPixelFormat. NSOpenGLView functional
- Fixed dealloc/copy bugs in KGGraphicsState
2007-09-06 03:28:48 +00:00
Christopher Lloyd
6510258e28 - Issue 40 fix by Rolf Jansen, compile errors/warnings in NSButtonCell and NSFormCell 2007-08-27 16:02:57 +00:00
Christopher Lloyd
95a0d5cf32 - Issue 39 fix for NSDateFormatter, check for error being NULL in NSDateFormatter getObjectValue:
- Fixed bug in NSRunLoop which would cause a timer set up during an ASAP notification to not fire
- Removed text drag acceptance by non-key text fields, not the correct behavior
- Assortment of missing methods added, some implemented whole or partially, some not.
- Updated some of the Objective-C runtime structures to reflect Apple conventions (OBJCMethod -> struct objc_method, OBJCMethodList -> struct objc_method_list, etc)
2007-08-26 18:29:25 +00:00
Christopher Lloyd
dabc0d0a5f - Issue 21 patch by Johannes Fortmann, NSGetSizeAndAlignment fixes for arrays and unions 2007-08-14 18:21:28 +00:00
Christopher Lloyd
7cdf921e91 - Issue 34, Matteo Ceruti's Jul 15, 2007 Darwin_ppc patch added.
- Issue 37 fixed
2007-07-31 04:56:44 +00:00
Christopher Lloyd
b5a5dd53ec - C++ compatibility patch from Johannes Fortmann
- category method list patch from Johannes Fortmann
- Issue 36 fix by Johannes Fortmann
- new Windows targets for gcc 4.2.1
2007-07-30 13:30:20 +00:00
Christopher Lloyd
4fcf205313 - performance of -[NSString componentsSeparatedByString:] improved 2007-07-20 14:49:38 +00:00
Christopher Lloyd
a08967f04c - -[NSView print:] and -[NSDocument printDocument:] functional (if you implement printOperationWithSettings:error in NSDocument), brings up the print panel and paginates. Some NSView printing methods added, work on NSPrintOperation to autopaginate. There are a number of problems to sort out still.
- NSDocument initWithContentsOfURL,  printDocument:, printDocumentWithSettings:, printOperationWithSettings:error: implemented
- NSDocumentController recent document menu implemented, and some of the URL based methods.
-[NSURL isEqual:], -[NSURL isFileURL] implemented within the limits of the current capabilities
-[NSApplication windowsMenu] corrected (finds menu by name in nib)
+[NSMenuItem separatorItem] fixed (was returning broken separator)
- NSMenu loads special name (windows, font, recent doc.s, etc.) from nib and private API for locating by name
- Most NSPrintInfo getters/setters implemented.
- NSPrintPanel added
- Split KGRenderingContext into KGRenderingContext and KGDeviceContext and cleaned up around these classes
- Fixed page locating bug in KGPDFDocument
2007-07-19 16:16:41 +00:00
Christopher Lloyd
52fe77edb6 - path operators (clip, eoclip, stroke, fill) clear the path as they should 2007-07-11 23:27:46 +00:00
Christopher Lloyd
37c2f14e28 - Fixed never ending extend condition in particular radial gradients 2007-07-08 02:06:03 +00:00
Christopher Lloyd
8412c6fa15 - moved glyph metric information into KGFont so that KG can track the baseline between shows, made KGFont functional and used by NSFont
-[NSDocument readFromURL:ofType:error:] implemented
-[NSDocument readFromFileWrapper:ofType:error:] implemented
-[NSDocument readFromData:ofType:error:] implemented
-[NSDocument loadFileWrapperRepresentation:ofType:] implemented
- radial shader improvements, adjusting for scaling and optimizations
- NSImageRep, NSPDFImageRep, NSBitmapImageRep fixes for file extension registration
- simple NSURL support for files
- NSToolbar fix so that it defaults to visible and appears when added to a window
2007-07-07 03:23:36 +00:00
Christopher Lloyd
a286b26947 - Added Darwin-i386 and Darwin-ppc targets to Foundation and objc
- Added platform_darwin and appropriate classes
- Reduced compiler warnings for the Linux, Solaris, Darwin targets.
2007-07-05 19:06:44 +00:00
Christopher Lloyd
2a9040b273 - Added Rolf Jansen's fix for r33 regression
- Added halfactivist's fix for NSTabView resizing (moved to -resizeSubviewsWithOldSize:)
- Fixed NSOpenGL* typo's reported by halfactivist's
- Added -[NSEvent mouseLocation] reported by Dr_Set
- Fixed TIFF decoding of R8/G8/B8/A0 images reported by halfactivist
2007-06-29 18:00:36 +00:00
Christopher Lloyd
4ff27c7e74 - Fixed problem with lockFocus not setting the clip region properly when a non-parent view is already lockFocus'd.
- Fixed leaks in graphics state
2007-06-26 03:07:44 +00:00
Christopher Lloyd
c3579d244b - Issue 28 fix. unlockFocus was missing in NSMatrix 2007-06-25 00:41:51 +00:00
Christopher Lloyd
15df8db564 - Radial shader implemented in KoreGraphics
- Handful of KGPDF fixes/improvements
2007-06-23 04:08:45 +00:00
Christopher Lloyd
4c3a9a4a70 - Issue #28 fix by Rolf Jansen
- Issue #33 fix
- Dirk Theisen's NSIndexPath implementation added
- Dirk Theisen's NSThread and [NSColor colorWithAlphaComponent:] changes
-[NSObject methodForSelector:] and +[NSObject instanceMethodForSelector:] now return objc_msgForward instead of NULL if selector not present per behavior of Apple's Foundation but not documented (thanks to Mike Ash)
2007-06-18 16:22:20 +00:00
Christopher Lloyd
8ca1aa06f0 - Sean Barrett's bugfix for zlib decode in PDF filter 2007-06-03 17:42:09 +00:00
Christopher Lloyd
16961c2973 - Added Dirk Theisen's -[NSArray initWithContentsOfFile:]
- Roughed in NSTextAttachmentCell, NSTextList, NSPropertyListSerialization, NSHelpManager, NSViewAnimation, NSAnimation, more NSLayoutManager methods
- First pass at NSTextAttachment, NSGlyphGenerator
- NSParagraphStyle, NSMutableParagraphStyle, added all documented setters/getters
- Split NSTypesetter into NSTypesetter and NSTypesetter_concrete, roughed in NSTypesetter, updated NSTypesetter_concrete a littles
+[NSAttributedString attributedStringWithAttachment:] implemented
2007-05-29 04:00:51 +00:00
Christopher Lloyd
7cf13b835b - Fixed problem in -[NSScanner scanHexInt:] which was also breaking keybindings 2007-05-26 21:35:32 +00:00
Christopher Lloyd
7122f8c401 - NSValueTransformer implementation 2007-05-23 03:52:57 +00:00
Christopher Lloyd
257c7d9c28 - Rolf Jansen's NSTableView patch from 05/09/2007
- Added Rolf Jansen's merge sort in NSMutableArray and NSMutableArray_concrete

+ Johannes Fortmann's patch from 05/22/2007:
- NSArrayController:
 - renamed instance variables
 - use arrangeObjects:, rearrangeObjects methods
 - implement addObject:, removeObject: and friends
 - implement newObject
- some more binding options
- NSTableView bindings corresponding to columns now being established
if missing
- NSAffineTransform rotating
- NSBezierPath addClip, setClip fix; changed unimplemented methods to
throw
- some decoding on NSNumberFormatter; NSCell uses formatter
2007-05-22 17:16:17 +00:00
Christopher Lloyd
a368deb8d2 - Issue 22 fixed. -[NSSet description] crash. 2007-05-19 16:09:23 +00:00
Christopher Lloyd
4303498e18 + Johannes Fortmann's bindings patch:
- deep KVO is routed through public addObserver: function now, which
means that observing values on an array now throws the exception as it
should.
- NSArrayController now returns _NSObservableArray class, which allows
observing values on array objects. Observing operators is supported,
but will fire change notifications even though no change (i.e.
@max.value fires everytime a value changes, not only in case the
maximum changes)
- binding options are respected for a few values
- defaults for binding options can be specified on a per-class basis
through a plist
- multi-value bindings work (in an extremely limited way)
- binding a table column against an array not provided by the table's
NSArrayController works
- column bindings create suitable sort descriptor prototypes
- clicking a column header changes the table view's sort descriptors
2007-05-19 03:47:03 +00:00
Christopher Lloyd
cd3770ede4 + Johannes Fortmann's bindings patch:
- deep KVO is routed through public addObserver: function now, which
means that observing values on an array now throws the exception as it
should.
- NSArrayController now returns _NSObservableArray class, which allows
observing values on array objects. Observing operators is supported,
but will fire change notifications even though no change (i.e.
@max.value fires everytime a value changes, not only in case the
maximum changes)
- binding options are respected for a few values
- defaults for binding options can be specified on a per-class basis
through a plist
- multi-value bindings work (in an extremely limited way)
- binding a table column against an array not provided by the table's
NSArrayController works
- column bindings create suitable sort descriptor prototypes
- clicking a column header changes the table view's sort descriptors
2007-05-17 15:01:54 +00:00
Christopher Lloyd
e346fd856b + Johannes Fortmann's patch:
- table view editing
- fine-grained bindings for table columns
- NSArray objectsAtIndexes:
- some fixes for KVO

+ Rolf Jansen's NSSortDescriptor initWithCoder/encodeWithCoder
+ Rolf Jansen's NSCell/NSButtonCell controlSize patch
2007-05-14 13:15:31 +00:00
Christopher Lloyd
c21384fbed - Added Rolf Jansen's [NSMutableArray sortUsingDescriptors:] implementation 2007-05-12 20:08:14 +00:00
Christopher Lloyd
f365a502da - NSGeometry.m, Rolf Jansen's NSIntegralRect, NSOffsetRect implementation
- cleaned up warnings
2007-05-12 16:17:43 +00:00
Christopher Lloyd
ccf3b51e72 Johannes Fortmann's KVC/KVO/KVB patch:
- KVC now works for methods prefixed with '_'
- KVC works properly on NSDictionary, NSArray
- KVO on NSArray throws; addObserver:toObjectsAtIndexes implemented
- NSArrayController arrangedObjects property; probably many bugs,
incomplete
- NSArrayController selection property; dito. set and get work; merges
values to NSMultipleValuesMarker etc.
- NSBinder now has support for a replacement key path. e.g. on a color
well, you bind against "value", but the corresponding key is named
"color". The method -(NSString*)_replacementKeyPathForBinding:
(NSString*)binding should return "color" in this case if "value" is
passed in.
- helper methods to get all used bindings; moved
_binderClassForBinding: to class scope
- _NSTableColumnBinder as supporting class for bindings of the form
column -> arrangedObjects.name
- _NSTableViewContentBinder as supporting class for bindings of the
form tableView.content -> arrangedObjects
- changes for NSTableView to use NSIndexSet for row selection
- changes for NSTableView to utilize the support classes instead of
its data source if applicable
- NSNull copyWithZone implemented
2007-05-11 12:49:23 +00:00
Christopher Lloyd
bedc7810fe - Fixed issue #29, indexGreaterThanIndex: not working.
- Implemented sel_isMapped()
2007-05-09 00:22:51 +00:00
Christopher Lloyd
35d4c5b24f - Added Dirk Theisen's NSAssertionHandler.h
- First pass at functional NSIndexSet, NSMutableIndexSet
- Added hex identifiers in NSPredicate parser

- Roughed in NSSegmented*, NSSearchField*, NSLevelIndicatorCell*, NSAnimation, NSViewAnimation, NSTokenField*, NSTextTable*, NSTextBlock*

Implemented:
-[NSArray sortedArrayUsingDescriptors:]
-[NSMutableArray  replaceObjectsInRange:withObjectsFromArray:range:]
-[NSTask_win32 processIdentifier]
-[NSTextView firstRectForCharacterRange:]
-[NSView addSubview:positioned:relativeTo:]
2007-05-08 18:00:25 +00:00
Christopher Lloyd
edddfd8e94 - Issue #27, integrated cacaodev's NSComparisonPredicate changes (regex comparisons not added as we have no regex yet)
- NSPredicate scanner/parser completed
- Another pass at the NSExpression* and NS*Predicate classes

- added template for NSGlyphInfo, NSGlyphGenerator
- setters/getters in NSDatePicker, NSDatePickerCell implemented
- setters/getting for NSAlert implemented
-[NSString compare:options:range:] implemented
2007-04-29 13:45:20 +00:00
Christopher Lloyd
ab72409ef1 - Fixed issue #24, NSImage now retains self for NSCopying
- Fixed issue #25, %C should work now in NSString format strings
- Initial pass at issue #26, partial implementation of NSKeyedArchiver

- Initial pass at recursive descent parser for NSPredicate format strings.
- A few CoreFoundation headers added to Foundation
- NSConditionLock template added.
-[NSBundle objectForInfoDictionaryKey:] implemented
-[NSCharacterSet isSupersetOfSet:] implemented (poorly)
-[NSMutableData replaceBytesInRange:withBytes:length:] implemented
-[NSData dataWithBytesNoCopy:length:freeWhenDone:] implemented
-[NSString UTF8String] implemented
-[NSString stringByStandardizingPath] added by not implemented correctly
-[NSError localizedDescription] implemented
+[NSSet setWithObjects:count:] implemented
- AppKit/binders renamed AppKit/NSKeyValueBinding
- Initial pass at NSFontDescriptor added
-[NSView convertSize:to/fromView:] implemented
-[NSFont getAdvancements:forGlyphs:count:] implemented
-A few NSAnimation/NSViewAnimation definitions added
2007-04-22 18:58:47 +00:00
Christopher Lloyd
1ceab3e309 - Added Johannes Fortmann's NSNibBindingConnector, Binders.zip changes into AppKit/binders/ and KVO fixes
- Added Rolf Jansen's color and font panel nibs which fix layout issues with the new button frame adjustment

- Moved nib loading functionality to NSNib, NSNibLoading now uses NSNib
- Fixed NSFileHandle_posix.m not importing NSRaise.h
- NS*Controller header templates
- First pass at NSSortDescriptor
- Preliminary work on NSPredicate et al
2007-04-10 16:31:07 +00:00
Christopher Lloyd
d170ea9a3c - Fixed build warnings in NSTextView and KVO 2007-04-06 02:39:50 +00:00
Christopher Lloyd
1e6d2bb42a - Added Rolf Jansen's NSCell, NSButtonCell, NSButton patches for more button types and mixed state
- Implemented NSDisclosureBezelStyle in NSButtonCell in default theme

- Improved layout and more drawing with UxTheme

- Added Johannes Fortmann's KVO fixes from April 5th

- Fixed Linux/Unix header, linking and runtime problems reported by Anthony Beurivé
2007-04-06 01:43:26 +00:00