2001-11-02 Adam Fedor * Source/NSSavePanel.m (-_resetDefaults): Set directory only if nil (otherwise keep the current directory). 2001-11-02 Fred Kiefer * Headers/gnustep/gui/NSSlider.h * Headers/gnustep/gui/NSSliderCell.h * Source/NSSlider.m * Source/NSSliderCell.m Added methods to handle ticks with a dummy implementation. * Source/NSTextView.m Added include for NSScrollView to avoid compiler warning. [_blink] don't call [NSApp updateWindows], just redisplay our window. [mouseDown:] replaces all [_window flushWindow] with [self displayIfNeeded]. * Headers/gnustep/gui/NSGraphicsContext.h Added APPKIT_DECLARE for GSCurrentContext(). * Headers/gnustep/gui/NSGraphics.h Replaced APPKIT_EXPORT with APPKIT_DECLARE for all functions and added some missing APPKIT_DECLARE. * Headers/gnustep/gui/NSPanel.h Added APPKIT_DECLARE for all functions. Wed Oct 31 01:23:16 2001 Nicola Pero Implemented blinking insertion point (Work done with Ludovic Marcotte ). * Headers/gnustep/gui/NSTextView.h (_drawInsertionPoint): New ivar. (_insertionPointTimer): New ivar. * Source/NSTextView.m ([-initWithFrame:textContainer:]): Set selected range to 0, 0. ([-initWithCoder:]): Set selected range to 0, 0. ([-_blink]): New method. ([-dealloc]): Invalidate then destroy the insertion point blinking timer. ([-shouldDrawInsertionPoint]): Don't draw the insertion point if we are not first responder. ([-setEditable:]): Start/stop insertion point blinking. ([-setSelectedRange:affinity:stillSelecting:]): Stop the insertion point blinking if the selected range is not of zero length. ([-updateInsertionPointStateAndRestartTimer:]): Start/stop blinking as appropriate. ([-becomeFirstResponder]): Start blinking if appropriate. ([-resignFirstResponder]): Stop blinking if appropriate. ([-drawRect:]): Only draw the insertion point if we are in the `on' phase of blinking. ([-becomeKeyWindow]), ([-resignKeyWindow]): Removed. ([-_illegalMovement:]): Stop blinking if appropriate. 2001-10-29 Pierre-Yves Rivaille * Headers/gnustep/gui/NSTableView.h: * Source/NSTableView.m: [-sizeLastColumnToFit], [-sizeToFit], [-setAutoresizesAllColumnToFit], [-autoresizesAllColumnsToFit] implementation sizeToFit now behaves like OS4.2 (it did not) Various changes for speed improvements ([-drawRect], [-updateCell]) New internal method ([-superviewFrameChanged:]) called by NSClipView (conforms to OS4.2) [-initWithCoder]: support for previously archived NSTableView * Source/NSClipView.m: [-dealloc] and [-setDocumentView:] Support for NSTableView superviewFrameChanged method 2001-10-28 Pierre-Yves Rivaille * Source/NSStepper.m: * Source/NSStepperCell.m: Major rewrite so that it behaves properly Now NSStepper does not contain a textfield anymore and can be linked to any control using the take*ValueFrom: methods Thu Oct 25 16:42:00 2001 Gregory John Casamento * Source/NSSelection.m implemented bodies of methods for NSSelection. The behaviour implemented is identical to that observed when testing NSSelection under OPENSTEP with the exception that I have replaced the word "NeXT" with "GNUstep" in the selection marker descriptions. * Source/NSOutlineView.m implelemented a skeletal version of this class to be filled in later. * Headers/NSOutlineView.h created a skeletal version of this header to be filled in later. * Headers/AppKit.h added #include for NSOutlineView.h. * Source/GNUmakefile added reference to NSOutlineView.h and NSOutlineView.m Wed Oct 24 11:01:33 2001 Nicola Pero * Source/NSBrowser.m ([NSBrowser -_getTitleOfColumn:]): Make sure we never return nil. (Suggestion by Ludovic Marcotte ) 2001-10-24 Pierre-Yves Rivaille * Source/NSButtonCell.m ([NSButtonCell -_init]): set the alternate title and the keyEquivalent to @"" (by default this was nil) Tue Oct 23 04:16:57 2001 Nicola Pero Patch by Ludovic Marcotte : * Source/NSTextView.m ([-mouseDown:]): Check if the click was on a text attachment cell only if the text storage contains text attachments, rather than only if the text view imports graphics. Tue Oct 23 15:06:57 2001 Nicola Pero Patch by Ludovic Marcotte : * Source/NSOpenPanel.m ([-_selectTextInColumn:]): Updated calls to setStringValue: for last change. * Source/NSSavePanel.m ([NSSavePanel -selectText:]): Idem. Tue Oct 23 10:32:18 2001 Nicola Pero * Source/NSCell.m ([-setStringValue:]): Check with an assertion that the string value is not nil - for Mac OS-X compatibility. (Suggested by Ludovic Marcotte ). Mon Oct 22 01:10:24 2001 Nicola Pero * Source/NSWindow.m ([NSWindow -dealloc]): Remove all subviews from this window before releasing them. This fixes crashes when some views were deallocated after the window. 2001-10-21 Fred Kiefer * Source/NSScrollView.m Implemented [setRulerViewClass:] and preset to NSRulerView. Cache the scrollerWidth in a class var, use this in all methods. Use _sizeForBorderType() from NSCell to determine the border size in all methods that handle borderType. Replaced all uses of AUTORELEASE with explicit RELEASE calls. In [setContentView:] don't RETAIN the content view, as this is handled by the normal subview mechanism. (Don't RELEASE it in [dealloc] and [removeSubview:]) Added dummy method [scrollWheel:]. Implemented the ruler methods, but this are still not handled in [tile] and [drawRect:]. * Header/gnustep/gui/NSScroller.h Added some MacOSX methods. * Source/NSScroller.m Dummy implementation for those methods. Thu Oct 18 16:21:37 2001 Nicola Pero * Source/NSClipView.m ([-dealloc]): Remove us from observing the document view notifications. (Suggestion by Ludovic Marcotte ) * Source/NSTextContainer.m ([-dealloc]): Remove us from observing the text view notifications. (Suggestion by Ludovic Marcotte ) 2001-10-17 Adam Fedor * Source/NSMenuItemCell.m (calcSize): Set size to 0 if image does not exist. Wed Oct 17 04:30:25 2001 Nicola Pero * Source/NSTabView.m ([NSTabView -dealloc]): Do not release the selected tab view item (Patch by Ludovic Marcotte ). Wed Oct 17 18:18:54 2001 Nicola Pero * Source/NSTableView.m ([-setDataSource:]): Do not release the old data source; do not retain the new one. ([-dealloc]): Do not release the data source. (Suggested by Ludovic Marcotte ) * Source/NSTableView.m ([-initWithCoder:]): Do not retain the data source when decoding it. 2001-10-16 Adam Fedor * GNUmakefile.postamble (before-install): Remove extra / * TextConverters/RTF/GNUmakefile: Add BUNDLE_LIBS on mingw32/cygwin (bug report from stephen@brandonitconsulting.co.uk). * Source/NSMenuItemCell.m (calcSize): Check that images exist before asking for their size (assigning structs from nil objects crashes Solaris). * Make sure classes are linked in when shared=no * Source/linking.m: New file. * Source/extern.m (__objc_gui_force_linking): Linking function. 2001-10-16 Pierre-Yves Rivaille * Source/NSTableView.m ([selectColumn:byExtendingSelection]): Do not send NSTableViewSelectionDidChangeNotification when selection is not changed (was not always working with flag=NO) * Source/NSTableView.m ([selectRow:byExtendingSelection]): Likewise 2001-10-15 Adam Fedor * Headers/gnustep/gui/DPSOperators.h: New functions DPSPrintf, DPSWriteData * Headers/gnustep/gui/GSMethodTable.h: Likewise. * Headers/gnustep/gui/NSGraphicsContext.h: Likewise. * Source/NSGraphicsContext.m: Implement. * Headers/gnustep/gui/NSPageLayout.h: Change some ivars. * Headers/gnustep/gui/NSPrintOperation.h: Add an ivar. * Headers/gnustep/gui/NSPrintPanel.h: Remove outlets, use tags instead. * Panels/GNUmakefile: Add GSPageLayout gorm files. * Source/NSPageLayout.m: Rewrite (set NSPrintInfo, use gorm files). * Source/NSPrintOperation.m (_print): Start of implementation. Use NSView to add PS headers, etc. * Source/NSPrintPanel.m: Rewrite using tags not outlets. Document. * Documentation/gsdoc/NSPrintPanel.gsdoc: Regenerate * Documentation/gsdoc/NSPageLayout.gsdoc: Likewise. * Model/GNUmakefile: Add OBJC_LIB to DEPENDS_UPON line. * Source/NSFontPanel.m (init): setBecomesKeyOnlyIfNeeded to YES. 2001-10-14 Fred Kiefer * Source/NSPopUpButtonCell.m Added methods [setAction:] and [setTarget:], which call the super implementation and also update the menu. Thu Oct 11 13:53:22 2001 Nicola Pero * Source/NSMatrix.m ([-setTarget:]): Do not retain the target (patch by Ludovic Marcotte ) * Source/NSMatrix.m ([-textShouldEndEditing:]): Access _target ivar directly. 2001-10-08 Adam Fedor * Source/NSPrintOperation (_runOperation): New internal method. (runOperation): Use it. (-runOperationModalForWindow:delegate:didRunSelector:contextInfo:): Implement. (-createContext): Use our context if already created. Set the path from the NSPrintInfo object if available. * Source/NSPrintPanel.m (beginSheetWithPrintInfo:modalForWindow:delegate:didEndSelector: contextInfo:): Implement. Remove coding methods. Mon Oct 8 14:50:44 2001 Nicola Pero * Tools/wgetopt.h: New file copied from base/Testing/wgetopt.h. * Tools/example.m: Include wgetopt.h. * Tools/gpbs.m: Include wgetopt.h. Mon Oct 8 15:05:34 2001 Nicola Pero * Source/NSWindowController.m ([-setDocument:]): Set the window to be released when closed if document is non nil, and not to be if document is nil. ([-loadWindow]): Idem after loading the nib. ([-initWithWindow:]): Call setDocument: nil. * Source/NSWindowController.m ([-_windowWillClose:]): Do nothing if the window is not to be released when closed (suggestion by Ludovic Marcotte ). 2001-10-08 Fred Kiefer * Source/NSPopUpButtonCell.m [insertItemWithTitle:atIndex:] don't set the action and target for the item, so it will use the action from the popup button. 2001-10-08 Fred Kiefer * Headers/gnustep/gui/NSMenu.h Replace ivar _isBeholden_byPopup with _popUpButtonCell. Change method [_setOwnedByPopUp:] to take an NSPopUpButtonCell instead of a Bool. * Source/NSMenu.m Adopted to changes in header. In [update] check for popup buttons also the action of the popup itself, if there is non for the item. In [performActionForItemAtIndex:] if we are owned by a popup button, send this action, if the menu item does not have an action. * Source/NSPopUpButtonCell.m Changed all calls to [NSMenu _setOwnedByPopUp:] and added missing one in [setMenu:]. 2001-10-08 Fred Kiefer * Headers/gnustep/gui/NSScreen.h Added method [resetScreens]. * Source/NSScreen.m Removed function _screenNumbers. Moved class method to front. Use [screens] in method [mainScreen]. Cache screens in mehtod [screens]. Use the context from NSApp instead of the current context in all calls. In [deepestScreen] replace NSScreen by self. Added method [resetScreens]. 2001-10-06 Adam Fedor * Headers/gnustep/gui/NSPrintPanel.h: Define ivars. * Panels/GNUmakefile: add GSPrintPanel.gorm * Source/NSPrintPanel.m: Implement. * Source/NSPopUpButtonCell.m (initWithCoder:): Make menu owned by popup. * Source/NSPrintOperation.m (-initWithView:insideRect:toData:printInfo:): set showPanel to YES. * Source/NSView.m (displayRectIgnoringOpacity:): Move unlockFocus after drawing subviews (fix from georg@vhf.de). * Source/libgnustep-gui.def: Remove NSMenuWindow. * Model/GNUmakefile (libgmodel_BUNDLE_LIBS): New var. (fix suggested by stephen@brandonitconsulting.co.uk). 2001-10-06 Fred Kiefer * Header/gnustep/gui/NSCell.h Added enumerator NSControlSize. * Header/gnustep/gui/NSProgressIndicator.h Prefixed all ivars with an underscore and added ivars for indeterminate progress. Added some constant definitions and control size and tint methods. * Source/NSProgressIndicator.m Adopted to changes in header and added some code for displaying indeterminate progress. * Header/gnustep/gui/NSRulerMarker.h * Header/gnustep/gui/NSRulerView.h Added copyright notice and defined some ivars. * Source/NSRulerMarker.m * Source/NSRulerView.m Some basic implementation of these classes. * Source/GNUmakefile Compile NSRulerMarker and NSRulerView. * Source/NSAttributedString.m Protected all initXXX methods so that for empty input nil will be returned. Sat Oct 6 17:23:49 2001 Nicola Pero * Source/NSWindowController.m ([-initWithWindowNibName:owner:]): Raise and exception on nil nib name or on nil owner. ([-init]): Call initWithWindow: rather than initWithWindowNibName: because the latter can't accept a nil argument. ([-initWithWindow:]): Assign to self the result of [super init]. 2001-10-03 Adam Fedor * Headers/gnustep/gui/NSNibLoading.h: New GSCustomView class. * Source/NSBundleAdditions.m: Implement it. 2001-10-02 Adam Fedor * Source/NSWindow.m (-orderWindow:relativeTo:): setFrame: to the new constrained rect (if changed). 2001-09-28 Fred Kiefer * Header/gnustep/gui/NSPopupButton.h Removed all ivars and cleaned up the rest. * Source/NSPopupButton.m Removed the specific coding code. [mouseDown:] and [keyDown:] don't send notification, as this is done by the cell. Also don't send our action, as the action of the menu item is already send. Changed call order of [dismissPopUp] and [synchronizeTitleAndSelectedItem]. In [keyDown:] send item action via [NSMenu performActionForItemAtIndex:] * Header/gnustep/gui/NSPopupButtonCell.h Removed unneeded ivars. * Source/NSPopupButtonCell.m In [encodeWithCoder:] and [initWithCoder:] also encode the menu. * Testing Removed this directory. * Tools/Functions.m Removed this file. * Tools/GNUmakefile Removed references to Functions.m Wed Sep 26 23:04:57 2001 Nicola Pero * Source/NSFileWrapper.m ([-writeToFile:atomically:updateFilenames:]): Use only the last part of the path when saving it into the filename (patch by Ludovic Marcotte ). 2001-09-25 Adam Fedor * Source/NSView.m: Add viewIsPrinting "class" variable. (-lockFocusInRect:): Add special code when printing (-unlockFocusNeedsFlush:): Likewise. (-dataWithEPSInsideRect:): Set/reset viewIsPrinting. 2001-09-16 Georg Fleischmann * Source/NSPrintOperation.m [NSPrintOperation -destroyContext:]: remove context from the context list. Otherwise we will never get dealloced. [NSPrintOperation -_print:]: use displayRectIgnoringOpacity to avoid drawing of our ancestors. [GSEPSPrintOperation -createContext:]: create a context. [GSEPSPrintOperation -deliverResult:]: add contents of written file to data object. 2001-09-24 Fred Kiefer * Header/gnustep/gui/NSWindow.h Added three BOOL flags for subclasses. * Header/gnustep/gui/NSPanel.h Defined additional window masks. Removed all unneeded ivars and replaced the others by the superclass additional flags. * Source/NSPanel.m Implemented coding for NSPanel. For GSAlertPanel reoranised the initXXX code. Moved the GModel methods into a separate category, removing [createObjectForModelUnarchiver:] as this was (incorrectly) duplication code from the super class. Implemented NSBeginAlertSheet(), NSBeginCriticalAlertSheet() and NSBeginInformationalAlertSheet(). 2001-09-23 Fred Kiefer * Source/NSMenu.m [insertItem:atIndex:] set the menu of the item after the insert notification has been send. [initWithCoder:] send change notifications as one block. 2001-09-23 Fred Kiefer * Source/GSSimpleLayoutManager.m [GSSimpleLayoutManager boundingRectForGlyphRange:inTextContainer:]: Use lineFragmentRect instead of usedRect, so that the full line gets cleared. This still is not correct for all cases. * Header/gnustep/gui/NSPageLayout.h Removed ivar _new added ivar _accessoryView. Added sheet method. * Source/NSPageLayout.m Small layout improvements. * Tools/.cvsignore Ignore all services. * Model/.cvsignore Ignore the bundle * TextConverter/RTF/.cvsignore New file to ingore all temporary files. 2001-09-20 Fred Kiefer * Source/NSMenu.m [initWithCoder:] make sure the supermenu of a submenu is nil before adding it to an item. This resolves drag problem for "format" menu in Gorm. Mon Sep 17 11:17:46 2001 Nicola Pero * Documentation/gnustep-gui.texi (Keyboard Modifiers): Updated for the change in xgps/xdps, where we now use Mode_switch as default for ALTERNATE if Alt_R is not on the keyboard. 2001-09-17 Fred Kiefer * Header/gnustep/gui/NSApplication.h Added some new MacOSX methods. * Source/NSApplication.m Dummy implementation for [hideOtherApplications:] and [unhideAllApplications:]. Simple implementation for [runModalForWindow:relativeToWindow:], [endSheet:] and [beginSheet:...]. Removed various uneeded [update] and [sizeToFit] calls for menu operations. * Header/gnustep/gui/NSSavePanel.h Added some new MacOSX methods. Removed ivar _selfHasShowExtensionFilter. * Source/NSSavePanel.m Implemented [URL]. New methods [_setupForDirectory:file:] and [_shouldShowExtension:isDir:]. Removed check for extension filter in [init]. Simplified [runModalForDirectory:file:]. Implemented [runModalForDirectory:...relativeToWindow:] and [beginSheetForDirectory:...]. In [browser:createRowsForColumn:inMatrix:] allways call [_shouldShowExtension:isDir:]. * Header/gnustep/gui/NSOpenPanel.h Added some new MacOSX methods. * Source/NSOpenPanel.m Implemented [URLs]. New method [_setupForDirectory:file:]. Simplified [runModalForDirectory:file:types:]. Implemented [runModalForDirectory:...relativeToWindow:] and [beginSheetForDirectory:...]. Declare all needed private methods from NSSavePanel. * Header/gnustep/gui/NSAttributedString.h Added method [NSMutableAttributedString readFromURL:options:documentAttributes:]. * Source/NSAttributedString.m Implemented [readFromURL:options:documentAttributes:]. In [applyFontTraits:range:] use [NSFontManager convertFont:toHaveTrait:] instead of explicit font creation. 2001-09-16 Adam Fedor * Source/NSImage.m (-initByReferencingFile:): set archiveByName. * Source/NSPopUpButtonCell.m (-encodeWithCoder:): Implement (-initWithCoder:): Likewise. 2001-09-15 Fred Kiefer * Source/NSMenuItemCell.m Added [dealloc]. In [setMenuView:], if the menu belongs to a popup set the ivar _mcell_belongs_to_popupbutton. * Source/NSPopupButtonCell.m Removed additional method on NSMenuItemCell. Removed code in [insertItemWithTitle:atIndex:] to set the NSMenuItemCell to belong to a popup. Simplified [attachPopUpWithFrame:inView:] and [selectItem:] * Header/gnustep/gui/NSMenuView.h Removed [_setCellSize:]. * Source/NSMenuView.m Added [dealloc]. [setWindowFrameForAttachingToRect:...] now expects the screenRect to be the frame of the cell to attach to. Removed [_setCellSize:]. 2001-09-12 Fred Kiefer * Source/NSMenu.m Remove function title_height(), replaced calls to it with [NSMenuView menuBarHeight]. [setSubmenu:forItem:] moved code to [NSMenuItem setSubmenu]. [update] use _changedMessagesEnabled to prevent recursion. [sizeToFit] call [setNeedsDisplay:] instead of [display]. [locationForSubmenu:] moved code to [NSMenuView locationForSubmenu:]. Added [NSMenuWindowTitleView rightMouseDown:], so the main menu is not shown in a menu. * Source/NSMenuItem.m Call [NSMenu itemChange:] in all setXX methods. [setSubmenu:] set the title of the submenu to our title. * Header/gnustep/gui/NSMenuView.h Removed ivar meunv_menu and reuse _menu from NSResponder. Renamed all the ivars. * Source/NSMenuView.m Adopted to changes in header. [menuBarHeight] use code from title_height(). Added dummy [initAsTearOff]. Added a lot of code to support horizontal menus, still unfinished. [setHighlightedItemIndex:] don't display items only mark them as needing display. [locationForSubmenu:] moved code from NSMenu to here. [mouseDown:] simplified code. 2001-09-09 Michael Hanni * Source/Functions.m (NSDrawButton): rearrange the order of coloring to take into account the nature of NSDrawTiledRects; fixes visual irregularities (most noticeably in NSMenu). 2001-09-08 Michael Hanni * Source/NSBrowser.m (-matrixInColumn:): Return nil if caller requests column '-1'. Allows NSSave/OpenPanel to function. Hacky though, why are we requesting column '-1' anyways? 2001-09-06 Adam Fedor * Source/NSView.m (-lockFocusInRect:): Switch back to gsave/grestore syntax, use rectclip instead of rectviewclip. (-unlockFocusWithFlush:): Likewise. 2001-09-03 Adam Fedor * Source/tiff.m (NSTiffWrite): Set EXTRASAMPLES even if 0. 2001-09-02 Adam Fedor * Source/NSView.m (-lockFocusInRect:) Properly mark the save object. Do a rectviewclip in (sortof) the right place. 2001-08-31 Georg Fleischmann * Source/NSView.m [NSView lockFocusInRect:]: DPSsave(ctxt) added [NSView unlockFocusWithFlush:]: DPSrestore(ctxt) added * Headers/gnustep/gui/DPSOperators.h DPSrestore() and DPSsave(): new * Headers/gnustep/gui/GSMethodTable.h DPSrestore and DPSsave added * Headers/gnustep/gui/NSGraphicsContext.h -DPSrestore and -DPSsave added * Source/NSGraphicsContext.m [NSGraphicContext _inittializeMethodTable]: DPSrestore and DPSsave added [NSGraphicsContext DPSrestore]: new [NSGraphicsContext DPSsave]: new 2001-09-01 Adam Fedor * Source/NSImage.m ([NSImage -initWithCoder:]): Create _reps array before adding representations. * Source/tiff.m (NSTiffWrite): Archive alpha info. 2001-09-01 Fred Kiefer * Headers/gnustep/gui/NSMenuItemCell.h Removed ivars mcell_highlighted and mcell_has_submenu. Renamed all ivars. * Source/NSMenuItemCell.m Replaced use of mcell_highlighted with _cell.is_highlighted. Removed this ivar and mcell_has_submenu from the coding methods. Removed method [highlight:withFrame:inView:]. in [drawBorderAndBackgroundWithFrame:inView:] moved duplicated out of if clause. in [calcSize] use cached arrow image for submenu sizing and changed image size code. Change all composite operators from NSCompositeCopy to NSCompositeSourceOver. Use the cached colour if it is computed otherwise ignore it. In [drawWithFrame:inView:] allways call [drawBorderAndBackgroundWithFrame:inView:] and check for border there. Moved lockfocus calls down one level. In [drawInteriorWithFrame:inView:] removed some of the checks already done in [drawWithFrame:inView:]. Replaced all the highlight/state logic with the one used in NSButtonCell. 2001-08-31 Adam Fedor * Source/NSBitmapImageRep.m (-encodeWithCoder:): Encode data correctly. * Source/tiff.m (NSTiffWrite): Fix type, use ==. Fri Aug 31 12:06:24 2001 Nicola Pero * Source/GSSimpleLayoutManager.m ([_GNULineLayoutInfo -description]): Print the usedRect. 2001-08-30 Adam Fedor * Source/NSImage.m (-initWithCoder:): Fix encode typo. * Source/tiff.m (NSTiffWrite): Don't set JPEG quality if not doing JPEG compression Thu Aug 30 18:23:08 2001 Nicola Pero * Source/NSBitmapImageRep.m ([+canInitWithData:]): Do not call NSTiffClose if the image is NULL (Suggested by Ludovic Marcotte ). Thu Aug 30 10:30:22 2001 Nicola Pero * Source/NSTableColumn.m ([-dataCellForRow:]): Return [self dataCell], rather than nothing. 2001-08-28 Fred Kiefer * Source/NSMenu.m [insertItemWithTitle:...atIndex:] autorelease the return value. [mouseDown:] when we create the location directory, autorelease it. In [_locationKey] and [display] remove unneeded checks for popup. In [copyWithZone:] set the autoenable property before adding items. * Source/NSPopUpButtonCell.m In [insertItemWithTitle:atIndex:] use action and target from the cell for menu item. 2001-08-27 Fred Kiefer * Headers/gnustep/gui/NSMenuItem.h Changed includes. Defined new method [userKeyEquivalentModifierMask]. Removed all the methods definitions from NSMenuItem. Dropped the mi prefix of the ivars. Removed ivar for backend. * Source/NSMenuItem.m Adopted to changes in header. Implemented class for separator. Exchanged role of the methods [init] and [initWithTitle:...]. Simplified [setTitle:] and [setKeyEquivalent:]. Implemented [userKeyEquivalentModifierMask] and [setTitleWithMnemonic]. Reimplemented [copyWithZone:] to use NSCopyObject(). * Source/NSMenu.m Cache the notification center. Simplified all the item handling methods, e.g [insertItem:atIndex:], [insertItemWithTitle:...], [removeItemAtIndex:], [indexOfItemWithSubmenu:]. Implemented [setMenuRepresentation:], [isEqual:] and [copyWithZone:]. Wed Aug 22 10:16:42 2001 Nicola Pero * Source/NSTableView.m ([-_autosaveTableColumns]): Use "NSTableView Columns %@" rather than "Table Columns %@" as key in the user defaults to be consistent with NSWindow, which uses "NSWindow Frame %@". ([-_autoloadTableColumns]): Idem. 2001-08-22 Fred Kiefer * Headers/gnustep/gui/NSMenu.h Made method [_rightMouseDisplay:] public. * Headers/gnustep/gui/NSResponder.h Added method [scrollWheel:]. * Source/NSResponder.m Added dummy implementation of [scrollWheel:]. Moved menu display code in [rightMouseDown:] to NSApplication. * Source/NSApplication.m Implemented [rightMouseDown:] with code from NSResponder. * Source/NSWindow.m Cache the default notification center. In [sendEvent:] handle case of NSScrollWheel event. * Source/NSMenu.m Removed class NSMenuWindow, use aconfigured NSPanel instead. New method [_createWindow] to create this. Removed unused ivars of NSMenuWindowTitleView and renamed the methods. Corrected the create/retain logic of the button handling methods, the old code kept on creating buttons which where never released. [NSMenu _setTornOff:] now calls addCloseButton or releaseCloseButton. Replaced [NSMenuWindowTitleView titleHeight] with inline function title_height(). * Headers/gnustep/gui/NSTableView.h Check in of this file was forgotten. Tue Aug 21 19:38:00 2001 Nicola Pero * Headers/gnustep/gui/NSTableView.h: Added ivars for autosaving of table columns. * Source/NSTableView.m ([-autosaveName]): Implemented. ([-autosaveTableColumns]): Implemented. ([-setAutosaveName:]): Implemented. ([-setAutosaveTableColumns:]): Implemented. ([-_autoloadTableColumns]): New method. ([-_autosaveTableColumns]): New method. ([-moveColumn:toColumn:]): Invoke _autosaveTableColumns. ([-dealloc]): Release _autosaveName if needed. Remove self from observing notifications about column resizings. (Patches by Marko Mikulicic mostly rewritten) Tue Aug 21 18:28:39 2001 Nicola Pero * Source/NSTableView.m ([-moveColumn:toColumn:]): Use the cached notification center. 2001-08-21 Adam Fedor * Source/NSAttributedString.m (converter_bundles): New function to find bundles that do text conversion. (converter_class): Use it. * Source/GNUmakefile: Update to remove Parsers files * TextConverters/RTF/*: New files moved from Source/Parsers. Builds bundle for RTF text conversion. 2001-08-21 Pierre-Yves * Source/NSTableColumn.m * Headers/gnustep/gui/NSTableColumn.h added MOSX method [NSTableColumn -dataCellForRow:] * Source/NSTableView.m : various change to take [-dataCellForRow] into account, including [NSTableView -updateCell:] redefined, now only redraw the part of the table that uses the updated cell. * Source/NSTableView.m : redefinition of [-setFrame:]: it now calls [self sizeToFit] 2001-08-20 Pierre-Yves Rivaille * Source/NSStepper.m * Headers/gnustep/gui/NSStepper.h new NSStepper class, basic implementation * Source/NSStepperCell.m * Headers/gnustep/gui/NSStepperCell.h new NSStepperCell class, basic implementation * Source/GNUmakefile : NSStepper and NSStepperCell addition * Headers/gnustep/gui/AppKit.h : NSStepper.h and NSStepperCell.h addition 2001-08-20 Pierre-Yves Rivaille * Source/NSBrowser.m ([NSBrowser -_performLoadOfColumn:]): improved performance when loading previously unloaded column with a passive delegate * Source/NSMatrix.m ([NSMatrix -sizeToFit]): This method now assumes that all cells have the same size (this is what specification says). If it is not the case, weird behaviour can happen ... Performance is better when loading large matrices. 2001-08-19 Adam Fedor * Source/NSTextView.m (-setSelectedRange:affinity:stillSelecting:): Prevent NSTextView from asking a text storage of zero length for attributes (Patch from georg@vhf.de). 2001-08-20 Fred Kiefer * Headers/gnustep/gui/NSMenu.h Moved the declaration of NSMenuWindow and NSMenuWindowTitleView into the file NSMenu.m, making this private classes. Removed unused ivars and renamed the remaining ivars to fit the GNUstep sheme of underscore prefixes. Added new method [popUpContextMenu:withEvent:forView:]. Made the methods [_ownedByPopUp] and [_setOwnedByPopUp:] public. * Source/NSMenu.m Adopted to changes in the header file. * Source/NSMenuView.m In [setWindowFrameForAttachingToRect:...popUpSelectedItem:] replaced reference to NSMenuWindow with NSWindow. 2001-08-18 Fred Kiefer * Headers/gnustep/gui/GSTextConverter.h New file with two protocols for text converters. * Source/GNUmake Install GSTextConverter.h. * Source/NSAttributedString.m Include GSTextConverter.h. New function converter_class() to load the class for a given text converter format. Use this function in the RTF methods and use new protocol there. * Source/Parser/RTFProducer.h Renamed RTFProducer into RTFDProducer, with new subclass RTFProducer. Both implement the protocol GSTextProducer. * Source/Parser/RTFProducer.m Renamed methods to fit the GSTextProducer protocol. Adopted to changes in header. Implementation for RTFProducer. * Source/Parser/rtfConsumer.h RTFConsumer implements the protocol GSTextConsumer. New subclass RTFDConsumer. * Source/Parsers/attributedStringConsumer.m Renamed methods to fit the GSTextConsumer protocol. Adopted to changes in header. Perliminary implementation for RTFDConsumer. 2001-08-18 Fred Kiefer * Headers/gnustep/gui/NSInputServer.h Declaration of this class and of the protocols NSInputServerMouseTracker and NSInputServiceProvider. * Headers/gnustep/gui/NSInputManager.h Declaration of this class and of the protocol NSTextInput. * Source/NSInputServer.m Dummy implementation. * Source/NSInputManager.m Dummy implementation. * Source/GNUmake Install NSInputServer.h + NSInputManager.h and compile NSInputServer.m + NSInputManager.m. 2001-08-15 Fred Kiefer * Source/NSImageRep.m [initialize] removed obsolete check for default setting of ImageComposition. In [copyWithZone:] copy the colour space, it might be mutable. * Source/Functions.m NSEventMaskFromType() added case of NSScrollWheel. Impelemented missing NSShowSystemInfoPanel(). * Source/GSServicesManager.m Implemented missing NSUpdateDynamicServices(). 2001-08-13 Pierre-Yves Rivaille * Source/NSTableView.m * Source/NSTableHeaderView.m * Headers/gnustep/gui/NSTableHeaderView.h New implementation of column resizing. Implementation of column reordering. 2001-08-13 Pierre-Yves Rivaille * Source/NSSavePanel.m ([-runModalForDirectory:file:]) * Source/NSOpenPanel.m ([-runModalForDirectory:file:types:]) Moved functionality from NSOpenPanel to NSSavePanel: the "ok" button is shown as enabled or not at the beginning depending on whether the given file is valid. * Source/NSPopUpButton.m ([-keyDown:]): send selected item related action when using the keyboard. * Source/Functions.m Esthetic corrections to NSDrawGrayBezel and NSDrawWhiteBezel Sun Aug 12 05:46:32 2001 Nicola Pero * Source/NSBezierPath.m ([-appendBezierPathWithArcWithCenter:radius:startAngle:endAngle: clockwise:]): If the bezier path had already some elements, draw a line from the current point to the start point of the arc. (Patch from Georg Fleischmann). Sun Aug 12 04:25:20 2001 Nicola Pero * Source/NSTextView.m ([-replaceCharactersInRange:withString:]): If the textview supports rich text and the text storage is empty, use the attributes from the typing attributes when inserting the new string. Sun Aug 12 03:42:30 2001 Nicola Pero * Source/NSImage.m ([NSImage -setName:]): Fixed bug in last change - btw change not documented in ChangeLog - make sure we don't accidentally release self when removing it from the dictionary of names. That was crashing apps with an icon on startup. 2001-08-12 Fred Kiefer * Headers/gnustep/gui/NSImageCell.h Removed already inherited protocols. * Source/NSImageCell.m Removed [initImageCell:], [dealloc], [cellSizeForBounds:] and [copyWithZone:], which where only super calls. In [drawWithFrame:inView:] lockFocus only around drawing code and check for invalid window. In [drawInteriorWithFrame:inView:] lockFocus only around drawing code, check for invalid window, use NSCompositeSourceOver instead of NSCompositeCopy and show first responder state. Sat Aug 11 07:41:45 2001 Nicola Pero * Source/NSMatrix.m ([NSMatrix -getRow:column:forPoint:]): Fixed case of no rows or no columns in the matrix; return NO and set row and column to -1 if needed. Sat Aug 11 07:41:44 2001 Nicola Pero * Source/NSMatrix.m ([NSMatrix -getRow:column:forPoint:]): Consider points on the boundaries of cells to be inside cells. (Patch from Georg Fleischmann ). 2001-08-11 Fred Kiefer * Headers/gnustep/gui/NSImage.h Added declaration of [compositeToPoint:fromRect:operation:fraction:], [compositeToPoint:operation:fraction:], [drawAtPoint:fromRect:operation:fraction:] and [drawInRect:fromRect:operation:fraction:] * Source/NSImage.m Dummy implementation of new methods. [dissolveToPoint:fromRect:fraction:] Move the drawing rectangle to the origin of the image rep before the intersection of the two rects. [TIFFRepresentationUsingCompression:factor:] and [TIFFRepresentation] call method on NSBitmapImageRep. List explicit flag settings in [init]. Moved background drawing to [drawRepresentation:inRect:]. Restructured [_doImageCache] and [_cacheForRep:]. * Source/NSBitmapImageRep.m Implemented [TIFFRepresentationOfImageRepsInArray] and [TIFFRepresentationOfImageRepsInArray:usingCompression:factor:] Fri Aug 10 11:00:00 2001 Nicola Pero * Source/Parsers/attributedStringConsumer.m (GSRTFcolorbg): set color to white if index is out of bounds. Fri Aug 10 10:59:00 2001 Georg Fleischmann * Source/Parsers/attributedStringConsumer.m (GSRTFcolorfg): set color to black if index is out of bounds. Tue Aug 7 05:08:01 2001 Nicola Pero * Testing/GNUmakefile: Simplified, removed unused bloat, removed all references to the test applications which are no longer there. * Testing/GNUmakefile.postamble (after-distclean): Do nothing. * Testing/README: New file saying that this directory is obsolete. 2001-08-06 Fred Kiefer * Headers/gnustep/gui/NSApplication.h Removed [showHelp:] and [activateContextHelpMode:] as they are declared in NSHelpManager.h * Source/NSApplication.m Removed [showHelp:] and [activateContextHelpMode:] as they are implemented in NSHelpManager.m. Use [showHelp:] in old method []. * Source/NSHelpManager.m In [NSApplication showHelp:] added a check for the existence of the help file. * Headers/gnustep/gui/GSHelpManagerPanel.h Added Header, changed includes and removed [init] method. * Source/GSHelpManagerPanel.m Added Header, changed includes, small restructuring of [init] and removed [isFloatingPanel]. 2001-08-04 Fred Kiefer * Headers/gnustep/gui/NSGraphicsContext.h Added new class methods [currentContextDrawingToScreen], [graphicsContextWithAttributes:], [graphicsContextWithWindow:], [restoreGraphicsState], [saveGraphicsState], [setGraphicsState:] and new instance methods [attributes], [flushGraphics] and [graphicsPort]. * Source/NSGraphicsContext.m Dumy implementations for new class methods and implementations for new instance methods. * Headers/gnustep/gui/NSFormCell.h Delcare the methods [attributedTitle], [setAttributedTitle:] and [setTitleWithMnemonic:]. Removed methods already declared for super classes. * Source/NSFormCell.m Implemented the new methods and [titleWidth:]. In method [titleWidth] use [cellSize] to compute the width. In [drawWithFrame:inView:] lock focus only if there is something to draw. 2001-08-03 Gregory John Casamento * Panels/SpellPanel.gmodel Made changes to nextKeyView so that the user can tab between the buttons * Source/NSBrowser.m [NSBrowser keyDown:] added check after call to [NSBrowser selectedColumn] so that the rest of the method is skipped if the value is -1 (no column selected). This was producing a segmentation fault. * Source/NSTextView.m [NSTextView checkSpelling:] to call [NSSpellChecker checkSpellingOfString: startingAt:language:wrap: inSpellDocumentWithTag:wordCount:] so that the spell document tag can easily be passed in. * Source/NSSpellChecker.m modified calls [NSSpellChecker _findNext:], [NSSpellChecker _ignore:] & [NSSpellChecker _correct] to get the first responder from the mainWindow instead of getting the text view directly. This is consistent with behavior observed under OPENSTEP4.2 and allows the document being checked to be anywhere on the responder chain. 2001-08-02 Adam Fedor * Headers/gnustep/gui/NSApplication.h: Remove duplicate NSOpenStepRoorDirectory decl. * Headers/gnustep/gui/nsimage-tiff.h: Use TIFF defined types for variables. * Source/tiff.m: Likewise. * Model/GNUmakefile: Add -lobjc to ...LIBRARIES_DEPEND. * Tools/example.m: Don't use certain signals and fork on MINGW. 2001-08-01 Fred Kiefer * Headers/gnustep/gui/NSEvent.h Decalre to support copying. Added event type NSScrollWheel and mask NSScrollWheelMask. Declare methods mouseLocation and deltaX...deltaZ. * Source/NSEvent.m Added [copyWithZone:], [mouseLocation] and dummy implemntation of [deltaX], [deltaY] and [deltaZ]. * Headers/gnustep/gui/NSFontPanel.h Declare method [reloadDefaultFontFamilies]. * Source/NSFontPanel.m Implement [reloadDefaultFontFamilies] and use it in [init]. 2001-07-31 Fred Kiefer * Headers/gnustep/gui/NSDrawer.h New header file for NSDrawer class. * Headers/gnustep/gui/AppKit.h Include NSDrawer.h. * Source/NSDrawer.m Dummy implementation of NSDrawer class. * Source/externs.m Notification strings for NSDrawer. * Source/GNUmake Install NSDrawer.h and compile NSDrawer.m. 2001-07-31 Adam Fedor * Convert libgmodel to a bundle to remove the semi-recursive gui<->gmodel dependancy * gui.make.in (GUI_LIBS): Remove -lgmodel * Model/GNUmakefile: Compile libgmodel as a bundle. * Source/NSBundleAdditions.m (gmodel_class): New function. ([NSBundle +loadNibFile:externalNameTable:withZone:]): Use it. * Source/NSSpellChecker.m (-init): Use NSBundle method to find model file. 2001-07-30 Adam Fedor * Fixes to compile shared (DLL) on Windows. * GNUmakefile.postamble (header-links): Add rules for MingW target. * configure.in: Check for rint. * Source/GNUmakefile: Add dll def file. * Source/GNUmakefile.postamble: Rule to make dll def file. * Source/GNUmakefile.preamble: Add libobjc depend for Windows targets. * Headers/gnustep/gui/AppKitDefines.h: New file. * Headers/gnustep/gui/*: Change extern to APPKIT_EXPORT. * Headers/gnustep/gui/config.h.in: Regenerate using autoheader. * Source/NSAffineTransform.m: Use pi consistantly. * Source/NSBrowser.m: Define rint if we don't have it. 2001-07-30 Georg Fleischmann * gui/Source/NSWindow.m [NSWindow orderWindow:relativeTo:]: constrain added [NSWindow initWithContentRect:styleMask:backing:defer:screen:] and [NSWindow setFrame:]: constrain removed 2001-07-28 Fred Kiefer * Headers/gnustep/gui/NSUserInterfaceValidation.h New header file with protocols NSValidatedUserInterfaceItem and NSUserInterfaceValidations. * Headers/gnustep/gui/AppKit.h Include NSUserInterfaceValidation.h. * Source/GNUmake Install NSUserInterfaceValidation.h. * Headers/gnustep/gui/NSDocument.h Added declarations for new methods in specification. Some of this where already present in the code. * Source/NSDocument.m Added dummy implementation for the new delegate operations. Corrected [initWithContentsOfURL:ofType:], the alert was shown un success. Implemented [removeWindowController:] and [validateUserInterfaceItem:]. * Headers/gnustep/gui/NSDocumentController.h Added declarations for new methods in specification ([noteNewRecentDocument:], [validateUserInterfaceItem:], [closeAllDocumentsWithDelegate:didCloseAllSelector:contextInfo:], [reviewUnsavedDocumentsWithAlertTitle:...contextInfo:]). * Source/NSDocumentController.m Commented out unused static variables. Dummy implementation of new methods. In [openDocumentWithContentsOfFile:display:] call [noteNewRecentDocument:]. In [openDocumentWithContentsOfURL:display:] only call [noteNewRecentDocumentURL:] when document is not nil. Implemented [noteNewRecentDocument:]. 2001-07-27 Georg Fleischmann * gui/Source/NSWindow.m [NSWindow initWithContentRect:styleMask:backing:defer:screen:]: constrain frame rect to screen 2001-07-24 Gregory John Casamento * Source/NSSpellChecker.m cleaned up some of the NSLog statements which were producing debug output. Corrected the behavior of [NSSpellChecker _correct:], [NSSpellChecker _learn:], & [NSSpellChecker _forget:]. * Source/NSSpellServer.m removed debugging statements. [NSSpellServer _isWord:inDictionary:caseSensitive:] added logic to search ignoredword list. [NSSpellServer _findMisspelledWordInString:language: ignoredWords:wordCount:countOnly:] Added logic to allow access to the ignored word list maintained by the spell checker. * Tools/GSspell.m implemented a working spell checker which depends on the ispell spell checker. 2001-07-23 Fred Kiefer * Headers/gnustep/gui/NSCursor.h Prefixed ivars with underscore. Added missing method [initWithImage:foregroundColorHint:backgroundColorHint:hotSpot]. * Source/NSCursor.m Adopted to changes in header. Extracted new method [_computeCid] from [setImage]. Use [set] in [pop] and [push]. Implemented coding protocol. Cache the class and use it for standard cursor and in [pop]. 2001-07-23 Pierre-Yves Rivaille * Source/NSPopUpItemCell.m (-drawInteriorWithFrame:inView:): updates to have a cuter displaying of NSPopUpButton * Source/NSMenuItemCell.m (-imageRectForBounds:): idem (-drawBorderAndBackgroundWithFrame:inView:): idem (-drawInteriorWithFrame:inView:): idem 2001-07-23 Pierre-Yves Rivaille * Source/NSFontPanel.m (_initWithoutGModel): call setMinColumnWidth on familyBrowser and on faceBrowser (they were not displayed) 2001-07-23 Pierre-Yves Rivaille * Source/NSBrowser.h: Add instance variables to support alphanumerical keys. Add GNUstepExtensions category with alpahnumerical-key-related methods (acceptsAlphaNumericalKeys, setAcceptsAlphaNumericalKeys:, sendsActionOnAlphaNumericalKeys, setSendsActionOnAlphaNumericalKeys:) * Source/NSBrowser.m: Add GNUstepExtensions category methods (-initWIthFrame:): initialization of the alphanumerical-key-related instance variables. (-dealloc): TEST_RELEASE a keyDown internal object (-keyDown): support for alphanumerical keys (-selectRow:inColumn:): when calling [matrix cellAtRow:column:], column should be 0 (not column) Fri Jul 20 10:18:58 2001 Nicola Pero * Source/NSWindowController.m ([-initWithWindowNibName:owner:]): Use ASSIGN. ([-initWithWindow:]): Idem. Fri Jul 20 09:57:38 2001 Nicola Pero * Source/NSWindow.m ([-setWindowController:]): Do not RETAIN the window controller. Reported by Jonathan B. Leffert . 2001-07-19 Georg Fleischmann * gui/Source/GSSimpleLayoutManager.m [GSSimpleLayoutManager boundingRectForGlyphRange:inTextContainer:]: no inversion of rect.width (width - rect.size.width) 2001-07-17 Adam Fedor * Source/NSTableView.m (-addTableColumn:): Remove redundant mallocs. (-dealloc): Release backgroundColor. (-encodeWithCoder:): Implement. (-initWithCoder:): Likewise. * Source/NSTableColumn.m (-encodeWithCoder:): New method. (-initWithCoder:): Likewise. 2001-07-17 Pierre-Yves Rivaille * Source/NSPanel.m ([GSAlertPanel -initWithContentRect:styleMask:backing;defer:screen]): remove previous key view chain implementation. * Source/NSPanel.m ([GSAlertPanel -setTitle:message:def:alt:other]): new key view chain initialization code. Mon Jul 16 11:19:28 2001 Nicola Pero * Source/NSView.m ([-adjustPageHeightNew:top:bottom:limit:]): Restructured code to work around internal bug in 2.91.66 GCC compiler. ([-adjustPageWidthNew:left:right:limit:]): Idem. 2001-07-11 Adam Fedor * configure.in: Add PROG_CC check 2001-07-08 Adam Fedor * Merge from 0.7.0. Tue Jul 3 18:46:38 2001 Nicola Pero * Source/NSMenu.m ([NSMenuWindowTitleView -drawRect:]): Cache the title attributes used when drawing. * Source/NSPopUpButton.m ([-mouseDown:]): Trivial rearrangement to spare two method calls. Fri Jun 29 11:18:44 2001 Nicola Pero * Headers/gnustep/gui/AppKit.h: Include NSWindowController.h (suggested by Jonathan B. Leffert ). Mon Jun 25 11:47:50 2001 Gregory John Casamento * Panels/SpellPanel.gmodel changed value of hidesOnDeactivate to YES so that the spell panel will hide itself when the app is no longer selected. This is consistent w/ behavior under OPENSTEP. Mon Jun 25 10:55:03 2001 Nicola Pero * Headers/gnustep/gui/AppKit.h: Removed useless @class directives. Mon Jun 25 10:35:32 2001 Nicola Pero * Headers/gnustep/gui/GSVersion.h.in: New file. * Headers/gnustep/gui/AppKit.h: Include GSVersion.h. * configure.in (AC_OUTPUT): Added Headers/gnustep/gui/GSVersion.h. * configure: Regenerated. * Source/GNUmakefile (libgnustep-gui_HEADER_FILES): Added GSVersion.h Mon Jun 25 09:59:43 2001 Nicola Pero * Headers/gnustep/gui/AppKit.h: Do not include NSLayoutManager.h, NSTextContainer.h and NSTextStorage.h if STRICT_OPENSTEP is defined (suggested by Pascal Bourguignon ). 2001-06-23 Gregory John Casamento * Source/NSSpellChecker.m updated to use the guesses browser. Delegate methods implemented to fill in the guesses for the current misspelled word. 2001-06-20 Gregory John Casamento * Source/NSSpellChecker.m implementation * Source/NSSpellServer.m implementation * Tools/GSspell.m for the GSspell.service. * Panel/SpellPanel.gmodel also added for the spell checker gui. Sat Jun 16 15:19:29 2001 Nicola Pero * Source/NSCell.m ([-performClick:]): Call setNextState: also when we have no control view. Sat Jun 16 14:53:05 2001 Nicola Pero Patches by Pierre-Yves Rivaille . * Source/NSBrowser.m ([-keyDown:]): Added missing return - in the case that TAB was pressed. * Source/NSCell.m ([-performClick:]): Call setNextState:. * Source/NSFontPanel.m ([-_initWithoutGModel]): Use defer=YES when initializing the panel. Set up the next key view chain. Set the initial first responder to be the Set button. ([-fieldEditor:forObject:]): New method. * Source/NSPanel.m ([GSAlertPanel -initWithContentRect:styleMask:backing:defer:screen:]): Set up the next key view chain. 2001-07-08 Adam Fedor * Version: 0.7.0 2001-07-08 Mirko Viviani * Source/NSSavePanel.m ([NSSavePanel -ok:]): do browser click after resetting the text field. * Source/NSOpenPanel.m ([NSOpenPanel -ok:]): do not allow selecting a non existent file. * Source/GSSimpleLayoutManager.m ([GSSimpleLayoutManager -lineFragmentRectForGlyphAtIndex:effectiveRange:]): check for zero line layout. ([GSSimpleLayoutManager -locationForGlyphAtIndex:]): likewise. ([GSSimpleLayoutManager -boundingRectForGlyphRange:inTextContainer:]): likewise. ([GSSimpleLayoutManager -rectForCharacterIndex:]): likewise. ([GSSimpleLayoutManager -lineLayoutIndexForGlyphIndex:]): likewise. * configure.in: Fixed FreeBSD library path. 2001-07-03 Adam Fedor * Documentation/*: Update. * configure.in: Check for tiff and jpeg and zlib with tiff * config.make.in: Add ADDTIONAL_DEPENDS for libs * Source/GNUmakefile.preamble: Use it. 2001-07-05 Mirko Viviani * Source/NSComboBoxCell.m ([NSComboBoxCell -initTextCell:]): use -1 for selectedItem. ([NSComboBoxCell -deselectItemAtIndex:]): likewise. ([NSComboBoxCell -objectValueOfSelectedItem]): likewise. ([NSComboBoxCell -selectItemWithObjectValue:]): likewise. ([NSComboBoxCell -selectItemAtIndex:]): likewise. Post the notification only if the item change. * Source/NSTextView.m ([NSTextView -becomeKeyWindow]): make sure that the cursor is not displayed when the window become key. ([NSTextView -resignKeyWindow]): likewise. ([NSTextView -shouldDrawInsertionPoint]): check for key window. * Source/NSWindow.m ([NSWindow -setDefaultButtonCell:]): set modifier mask to 0. * Source/NSMatrix.m ([NSMatrix -_selectCell:atRow:column:]): scroll the cell to visible when the matrix is inside a scrollView. ([NSMatrix -textDidEndEditing:]): for NSReturn, call performKeyEquivalent: on the window to perform the action of default button. * Source/NSSavePanel.m ([NSSavePanel -selectText:]): remove unused code (selectCellWithString:): execute a full search. ([NSSavePanel -ok:]): fixed the value of the form cell after clicking with a selected cell. * Source/NSOpenPanel.m ([NSOpenPanel -controlTextDidChange:]): execute a full search. ([NSOpenPanel -ok:]): fixed the value of the form cell after clicking with a selected cell. * Source/NSBrowser.m ([NSBrowser -setPath:]): fixed to work with local path name. * Source/NSButton.m ([NSButton -becomeFirstResponder]): disable window key equivalent for default button cell. ([NSButton -resignFirstResponder]): likewise but enable. 2001-06-26 Adam Fedor * Source/NSMatrix.m (-updateCell:): Revert last change. 2001-06-20 Adam Fedor * Source/NSMatrix.m (-_selectCell:atRow:column:): Don't drawCell if we have no window yet (suggestion from jan.trembulak@ales.as) * Source/NSWindow.m (-dealloc): Free our backend only if we're not still defered. (-miniaturize:): Make sure we're not deferred. (-setDocumentEdited:): Set only if we're not deferred. 2001-06-18 Adam Fedor * Source/NSMatrix.m (-updateCell:): Call abortEditing. 2001-06-16 Fred Kiefer * Source/NSImage.m [compositeToPoint:fromRect:operation:] Move the drawing rectangle to the origin of the image rep before the intersection of the two rects. Now drag&drop in Gorm should display the DragView again. 2001-06-15 Adam Fedor * Version: snapshot release 0.6.9 2001-06-14 Mirko Viviani * Source/NSWindow.m ([NSWindow -setDefaultButtonCell:]): set button key equivalent to '\r'. * Source/NSBrowser.m ([NSBrowser -initWithFrame:]): removed debug. Patches from Pierre-Yves Rivaille * Source/NSPanel.m ([GSAlertPanel -initWithContentRect:styleMask: backing:defer:screen:]): set key view chain. * Source/NSCell.m ([NSCell -performClick:]): set next cell state. * Source/NSBrowser.m ([NSBrowser -keyDown:]): fixed tab selection. Wed Jun 13 02:36:44 2001 Nicola Pero * Source/NSBitmapImageRep.m ([+imageRepsWithData:]): Replaced [self class] with self. ([+imageUnfilteredFileTypes]): add extensions directly rather than using a temporary array. ([+imageRepsWithFile:]): As a temporary bug fix, evaluate extension manually: if it is `tiff' or `tif', use libtiff; otherwise, try backend code. 2001-06-11 Mirko Viviani * Source/NSSavePanel.m ([NSSavePanel -_initWithoutGModel]): do not set the max number of columns for the browser. * Source/NSBrowser.m ([NSBrowser -tile]): control column width and recalculate number of visible columns. ([NSBrowser -setMaxVisibleColumns:]): moved code in -tile. ([NSBrowser -displayAllColumns]): removed redundant methods. ([NSBrowser -initWithFrame:]): set _minColumnWidth to 100.0 ([NSBrowser -numberOfVisibleColumns]): fixed. Return the number or _visible_ columns. (not number of all loaded columns) ([NSBrowser -scrollColumnToVisible:]): use -numberOfVisibleColumns instead of _maxVisibleColumns that could be 0. ([NSBrowser -updateScroller]): likewise. ([NSBrowser -scrollViaScroller:]): likewise. ([NSBrowser -_unloadFromColumn:]): likewise. Removed all the fprintf() debug. Sun Jun 10 21:54:10 2001 Nicola Pero * Source/NSBrowser.m ([-_unloadFromColumn:]): Remove the column from the superview when we destroy it. ([-resizeSubviewsWithOldSize:]): Do not invoke super's implementation. Sun Jun 10 20:29:08 2001 Nicola Pero * Source/NSCell.m ([-cellAttribute:]), ([-setCellAttribute:to:]): Readded default label with the action that if debugging is enabled, we print out a message saying the the attribute requested is not supported. 2001-06-10 Fred Kiefer * Source/NSComboBox.m Added [setDelegate:] method. * Headers/gnustep/gui/NSComboBoxCell.h * Source/NSComboBoxCell.m * Source/GSComboSupport.h * Source/GSComboSupport.m Reformated, simplified and corrected many methods. Sat Jun 9 05:51:48 2001 Nicola Pero * Source/NSCell.m ([-cellAttribute:]), ([-setCellAttribute:to:]): Removed unused default label at the end of statement. Sat Jun 9 04:04:46 2001 Nicola Pero * gui.make: Moved to gui.make.in. * gui.make.in: New file with code from gui.make; (GNUSTEP_GUI_VERSION, GNUSTEP_GUI_MAJOR_VERSION), (GNUSTEP_GUI_MINOR_VERSION, GNUSTEP_GUI_SUBMINOR_VERSION): New variables set up at configure time. * configure.in: Source ./Version and substitute the new version variables; generate gui.make from gui.make.in. * configure: Regenerated. Sat Jun 9 02:54:37 2001 Nicola Pero * Source/NSTextView.m (NSTEXTVIEW_SYNC): Use full selector as argument to the macro to prevent warning/problems with new compilers. Updated all calling code. 2001-06-08 Fred Kiefer * Source/NSBitmapImageRep.m Moved code to create the _imageData into [initWithBitmapDataPlanes:...] and corrected [copyWithZone:] * Source/NSEPSImageRep.m Implemented canInitWithData:, imageUnfilteredFileTypes and imageUnfilteredPasteboardTypes. 2001-06-07 Fred Kiefer * Source/NSImageRep.m Corrected some methods on this class so that subclasses may use them. Moved all the class methods to the front of the file. * Source/NSBitmapImageRep.m Removed methods implemented by superclass. * Headers/gnustep/gui/NSEPSImageRep.h: * Source/NSEPSImageRep.m Added some basic implementation for this class. 2001-06-07 Fred Kiefer * Source/NSTextAttachment.m Removed the copyWithZone: method as this has been fixed on GSTextStorage. Changed NSLeftMouseUp to the correct NSLeftMouseDown. (Fix by Ludovic Marcotte , who is the fist user of NSTextAttachment) 2001-06-07 Richard Frith-Macdonald * Source/GSAttributedString.m: When caching attribute dictionaries we make an immutable copy of the dictionary with shallow copy. 2001-06-06 Adam Fedor * Source/NSBox.m ([NSBox -minimumSize]): New method. * Headers/gnustep/gui/NSBox.h: Declare it. 2001-06-06 Fred Kiefer * Source/NSTextAttachment.m Added copyWithZone: to NSTextAttachment to let it work as a attribute in a NSAttributedString. This may be just a temporary work around. * Source/NSStringDrawing.m Corrected drawing code for text attachments. Wed Jun 6 05:38:28 2001 Nicola Pero * Source/NSPopUpButtonCell.m ([-stringValue]): Added - this method was missing (problem found by Gregory Casamento). 2001-06-05 Fred Kiefer * Headers/AppKit/NSTextAttachment.h * Source/NSTextAttachment.m Added missing methods. * Source/NSStringDrawing.m Added drawing code for text attachments (Still untested, as there is a problem with unicode characters in NSAttributedString) * Source/NSTextView.m Implemented some basic handling for mouse down on attachment cell. 2001-06-02 Mirko Viviani * Source/NSMatrix.m ([NSMatrix -mouseDown:]): set highlight in list mode matrix. Use _selectCell: to select the cell. ([NSMatrix -_setState:highlight:startIndex:endIndex:]): fixed cell selection/display. Check for selectionByRect. ([NSMatrix -setSelectionFrom:to:anchor:highlight:]): removed code for selectionByRect. Set dotted outline and last selected cell. ([NSMatrix -_shiftModifier:]): implement shift selection. ([NSMatrix -_altModifier:]): implement alt selection. ([NSMatrix -keyDown:]): use _shiftSelection: and _altSelection to implement full keyboard selection. ([NSMatrix -_selectCell:atRow:column:]): redisplay previous dotted cell. Set cell highlight in list mode matrix. 2001-05-25 Adam Fedor * Source/NSApplication.m (initialize_gnustep_backend): Use runtime (NSBundle) to find backend if not BACKEND_BUNDLE. 2001-05-24 Adam Fedor * Source/NSApplication.m (initialize_gnustep_backend): Check if bundle loading actually worked. * Source/NSBundleAdditions.m ([NSApplication -_deactivateVisibleWindow:]): New method. ([GSNibContainer -awakeWithContext:]): Use it when app is not active. 2001-05-21 Fred Kiefer * Source/NSFont.m Cache all the fonts so we can returend a cached on if the same font is required twice, this makes some of the caching in xdps obsolte. 2001-05-19 Fred Kiefer * Headers/gnustep/gui/NSBezierPath.h * Source/NSBezierPath.m Added ivars and implementation for dashes. * Source/GSTextStorage.h * Source/GSTextStorage.m Extracted the interface definition into a separate file. * Source/NSStringDrawing.m Integrated patches from Frederic to seed up drawing. 2001-05-13 Fred Kiefer * Headers/gnustep/gui/NSPasteboard.h * Source/externs.m Added some missing pasteboard types. * Headers/gnustep/gui/NSView.h * Source/NSView.m Added missing methods from MacOS X specification. * Source/NSStringDrawing.m Corrected bug in setupChunk() that showed formats for the wrong range of characters. 2001-05-13 Mirko Viviani * configure.in: added /usr/local/include and /usr/local/lib for FreeBSD. Use ADDITIONAL_LIB_DIRS instead of ADDITIONAL_LD_FLAGS. * config.make.in (ADDITIONAL_LIB_DIRS): renamed. * config.guess: new file. * config.sub: new file. * install-sh: new file. * Source/NSSavePanel.m ([NSSavePanel -setDelegate:]): check for -panel: userEnteredFilename:confirmed: ([NSSavePanel -ok:]): call delegate method -panel:userEnteredFilename: confirmed: (MacOS X). Run an alert panel if the filename already exists ([NSSavePanel -browser:selectCellWithString:inColumn:]): removed keyboard handling. * Headers/gnustep/gui/NSSavePanel.h: added ivar. * Source/NSBrowserCell.m ([NSBrowserCell -highlightColorInView:]): return the highlight color of the cell. (Mac OS X) ([NSBrowserCell -drawInteriorWithFrame:inView:]): use highlight color from previous method. * Headers/gnustep/gui/NSBrowserCell.h: added method. * Source/NSMatrix.m ([NSMatrix -_mouseDownNonListMode:]): when tracking the mouse use cell's +prefersTrackingUntilMouseUp ([NSMatrix -_move:]): new private method. Fixed deselection of cells in NSRadioModeMatrix and NSListModeMatrix. ([NSMatrix -moveUp:]): use _move: to reduce maintance. ([NSMatrix -moveDown:]): likewise. ([NSMatrix -moveLeft:]): likewise. ([NSMatrix -moveRight:]): likewise. ([NSMatrix -getRow:column:ofCell:]): if cell does not exist set row and column to -1. ([NSMatrix -mouseDown:]): does not select and highlight a cell at the same time. Ensure that only a cell at a time has the dotted outile. * Source/NSBrowser.m ([NSBrowser -addColumn]): load a column and scroll if necessary. ([NSBrowser -doClick:]): rearranged for the new -addColumn ([NSBrowser -setPath:]): likewise and removed additional redisplay. ([NSBrowser -_createColumn]): method to create a new NSBrowserColumn. ([NSBrowser -setMaxVisibleColumns:]): use _createColumn ([NSBrowser -initWithFrame:]): likewise. ([NSBrowser -doClick:]): fixed selection problems. ([NSBrowser -selectRow:inColumn:]): fixed cell selection and perform load of column if cell is not a leaf. ([NSBrowser -loadColumnZero]): use -addColumn to load column zero. ([NSBrowser -setLastColumn:]): check for min value of column. ([NSBrowser -reloadColumn:]): check with _lastColumnLoaded instead in the column browser. ([NSBrowser -moveLeft:]): fixed an index out of bound exception when it was selected the first column. ([NSBrowser -moveRight:]): does nothing if multiple cells are selected or if the cell is a leaf. 2001-05-12 Fred Kiefer * Headers/gnustep/gui/NSFont.h * Source/NSFontManager.m Made [NSFont fontInfo] a public method to use it in the backend. * Headers/gnustep/gui/NSGraphicsContext.h * Source/NSGraphicsContext.m New methods to set and use a font. * Source/NSFont.m New implementation of [useFont] and [set] which call methods on the context. 2001-05-11 Adam Fedor * configure.in: Check for tiffio.h. Add path to include dirs * config.make.in: New file * Source/GNUmakefile: Include config.make 2001-05-07 Adam Fedor * Source/NSApplication.m (_NSAppKitUncaughtExceptionHandler): Abort when debug buttons is pressed (so gdb can do a bt). 2001-05-06 Adam Fedor * Source/NSBundleAdditions.m ([NSNibOutletConnector -establishConnection]): Test for non-NULL sel (patch suggested by Raphael Sebbe ). 2001-05-08 Fred Kiefer * Headers/gnustep/gui/NSTabViewItem.h * Source/NSTabViewItem.m Adopted to programming standard. In [drawLabel:inRect:] use string drawing method instead of PSshow(). * Source/NSMenu.m For NSMenuWindowTitleView [drawRect:] use string drawing method instead of PSshow(). 2001-05-05 Mirko Viviani * Source/NSSavePanel.m ([NSSavePanel -browser:createRowsForColumn: inMatrix:]): do not treat a file package a directory with an empty extension. * Source/NSMatrix.m ([NSMatrix -_mouseDownNonListMode:]): retain the currentEvent. Fix to prevent theEvent to become nil. Do not allow empty selection in NSRadioModeMatrix. 2001-05-05 Fred Kiefer * Headers/AppKit/GSMethodTable.h: * Headers/gnustep/gui/NSGraphics.h * Headers/gnustep/gui/NSGraphicsContext.h * Source/Functions.m * Source/NSGraphicsContext.m Made all the button, bezel and groove methods functions again. 2001-05-04 Richard Frith-Macdonald * Source/NSCursor.m: Corrected illegal use of reserved word (id) as method argument ... gcc-3 doesn't allow it. * Source/GSServicesManager.m: GSContactApplication() fix to return our own listener if contacting self. NSPerformService() commented, tidied, and fixed to cope with case where the service provider is this app. 2001-05-03 Adam Fedor * Model/GMArchiver.m: Add defs for RETAIN, etc when not defined (i.e. for OPENSTEP). * Model/IMLoading.m (-loadIMFile:...): Comment out when compiling nib2gmodel. * gnustep-gui.spec.in: Fix source location * gnustep-gui-debug.spec.in: Likewise. * Documentation/gsdoc/NSWindow.gsdoc: Docs for [de]miniaturize. 2001-05-01 Fred Kiefer * Headers/gnustep/gui/NSFont.h * Source/NSFont.m Added some methods for font size and one function for glyphs from the MacOS X specification. * Headers/gnustep/gui/NSGraphics.h * Source/Functions.m Added missing functions and some dummy implementations. * Headers/gnustep/gui/NSPanel.h * Source/NSPanel.m Added missing functions and some dummy implementations. 2001-04-30 Fred Kiefer * Source/NSGraphicsContext.m Implemented the button, bezel and groove drawing with NSDrawTiledRects. The old implemention is still here. It should be deleted later on. 2001-04-30 Fred Kiefer * Headers/gnustep/gui/GSMethodTable.h * Headers/gnustep/gui/NSGraphics.h Added GSWViewIsFlipped and changed GSWSetViewIsFlipped_. * Headers/gnustep/gui/NSGraphicsContext.h Use same interface for optimisation methods, as in the subclasses. * Source/Functions.m Moved the old text functions from backend to here. * Source/NSView.m Call GSWSetViewIsFlipped instead of GSWViewIsFlipped. * Source/NSGraphicsContext.m Moved implementation of drawing functions from xgps backend to here. Corrected some of them. 2001-04-28 Fred Kiefer * Source/NSColor.m: Undid last change as this is now obsolete after Richards changes in base. Wed Apr 25 22:31:34 2001 Nicola Pero * Source/NSTableView.m ([-noteNumberOfRowsChanged]): Added code which checks that the old range of selected rows is still valid - ie, it still falls inside the table - and if not, the code rearranges it to fit into the table. 2001-04-23 Mirko Viviani * Source/NSMatrix.m ([NSMatrix -_mouseDownNonListMode:]): does not performSelector is the mouse goes up in cell. 2001-04-22 Georg Fleischmann * gui/Source/GSTextStorage.m: ([GSTextStorage.m replaceCharactersInRange:withString:]) recalculate effective range after removing attributes. 2001-04-23 Fred Kiefer * Source/NSColor.m: [initialize] call [NSUserDefaults standardUserDefaults] as a workaround for the setlocal() problem. Otherwise colorFromString: will fail later on for the system colours. * Source/NSColorPanel.m: Added an [init] method, use this in [sharedColorPanel]. Replaced reference to GMModel, with more general call on NSBundle. (This is commented out, but some time in the futur we might use NIB files) * Source/NSFontPanel.m: Also replaced GMModel with NSBundle in [init]. 2001-04-22 Richard Frith-Macdonald * Source/NSColorList.m: ([_loadAvailableColorLists]) Fixed bug causing system color list to not be loaded ... was using == for NSString comparison where isEqual was needed. Also reformatted to conform to coding standards. * Source/NSColor.m: ([defaultsDidChange:]) Fixed to record plist defaults values as strings ... so colorFromString works to set system colors. 2001-04-18 Richard Frith-Macdonald * Source/GSServicesManager.m: Save the name of the port on which we register services, and use it when we are looking for a service to see if we can handle it ourself. Should make it possible for an application to provide services to itsself. Also tidied to use memory management macros. Wed Apr 18 00:14:33 2001 Nicola Pero * Model/IMConnectors.m: Use #import rather than #include. ([IMControlConnector -establishConnection]): Do not retain target when setting it directly. 2001-04-18 Georg Fleischmann * Model/IMConnectors.m ([IMOutletConnector -establishConnection:]): Do not retain destination when setting it directly. 2001-04-16 Adam Fedor * Source/NSWindow.m (-miniaturize:): Set visible flag to NO. 2001-04-16 Mirko Viviani * Source/NSButtonCell.m ([NSButtonCell -drawInteriorWithFrame: inView:]): fix mask if cell is highlighted and it isn't in off state. * Source/NSCell.m ([NSCell -trackMouse:inRect:ofView:untilMouseUp:]): set next cell state and send action after -stopTracking: * Source/NSBrowser.m ([NSBrowser -keyDown:]): does nothing for arrow up and down. ([NSBrowser -moveUp:]): removed. ([NSBrowser -moveDown:]): removed. ([NSBrowser -_performLoadOfColumn:]): fix matrix creation, enable matrix autoscroll. ([NSBrowser -_performLoadOfColumn:]): implemented reusesColumns. * Source/NSMatrix.m ([NSMatrix -keyDown:]): implemented keyboard navigation. ([NSMatrix -moveUp:]): likewise. ([NSMatrix -moveDown:]): likewise. ([NSMatrix -moveLeft:]): likewise. ([NSMatrix -moveRight:]): likewise. ([NSMatrix -performClick:]): implemented. ([NSMatrix -mouseDown:]): scroll rect only if autoscroll is enabled, do not hightlight a cell directly but use the matrix method. Now it handles only NSListModeMatrix mode to reduce complexity introduced by other modes. ([NSMatrix -_mouseDownNonListMode:]): fixed. ([NSMatrix -highlightCell:atRow:column:]): enable the cell dotted outline. ([NSMatrix -drawCellAtRow:column:]): likewise. ([NSMatrix -drawRect:]): removed drawing of dotted outline. Rewritten due to changes in -getRow:column:forPoint: ([NSMatrix -getRow:column:forPoint:]): set row and column to -1 if point is not inside a cell. ([NSMatrix -_selectCell:atRow:column:]): use mnemonic value for cell state, does not enable dotted outline and check for nil aCell. ([NSMatrix -selectTextAtRow:column:]): likewise. ([NSMatrix -_setState:highlight:startIndex:endIndex:]): use matrix highlightCell: method and mnemonic for cell state. ([NSMatrix -deselectAllCells]): likewise. ([NSMatrix -selectAll:]): likewise. ([NSMatrix -setSelectionFrom:to:anchor:highlight:]): likewise. ([NSMatrix -performKeyEquivalent:]): select next cell state. 2001-04-15 Adam Fedor * Source/NSView.m (_invalidateCoordinates): release the gstate. (-releaseGState): Don't reset _allocate_gstate flag. (modified patch from Georg Fleischmann ). * Documentation/gsdoc/NSView.gsdoc: Document gstate methods. 2001-04-14 Adam Fedor * Source/NSImage.m ([NSImage -compositeToPoint:fromRect:operation:]): intersect fromRect with image rect to get proper composite rect. 2001-03-27 Frederic De Jaeger * Tools/Functions.m: remove some dummy functions that are useless now. * Source/NSWindow.m: remove GSWraps.h * Source/NSView.m: idem * Source/NSScreen.m: removed declaration of GSWindowDepthForScreen and GSAvailableDepthsForScreen. include AppKit/NSView.h * Source/NSGraphicsContext.m ([NSGraphicsContext +_initializeMethodTable]): fill the gsMethodTable with the address of the new methods Dummy implementation of all the following functions : NSEraseRect NSHighlightRect NSRectClip NSRectClipList NSRectFill NSRectFillList NSRectFillListWithGrays NSDrawButton NSDrawGrayBezel NSDrawBezel NSDrawGroove NSDrawTiledRects NSDrawWhiteBezel NSDottedFrameRect NSFrameRect NSFrameRectWithWidth NSReadPixel NSCopyBitmapFromGState NSCopyBits NSDrawBitmap NSBeep GSWDefineAsUserObj GSWViewIsFlipped GSWindowDepthForScreen GSAvailableDepthsForScreen +initializeBackend * Source/NSApplication.m: (initialize_gnustep_backend): load the backend bundle if it is compiled with -DBACKEND_BUNDLE and initialize it. By defaults, only loads libgnustep-xgps, can be overrident with the GSBackend default. Only initialize the backend otherwise. * Source/GNUmakefile.preamble (ADDITIONAL_CPPFLAGS): add -DBACKEND_BUNDLE=1 in case we want the backend as a bundle. * Source/GNUmakefile (libgnustep-gui_HEADER_FILES): remove GSWraps.h, add GStype.h * Headers/AppKit/NSGraphicsContext.h: NSGraphicsContext(Ops) add some methods that implements some functions of NSGraphics. declare +initializeBackend. * Headers/AppKit/NSGraphics.h (NSEraseRect): Replace declaration of a bunch of backend dependant functions by inline definition of stubs that call the new method define in NSGraphicsContext.m. The call is done with a cached address of the method. * Headers/AppKit/GSWraps.h: removed. * Headers/AppKit/GSMethodTable.h: include AppKit/GStype.h, add method that correspond to functions that are define in AppKit/NSGraphics.h Thu Apr 12 15:09:34 2001 Nicola Pero * Model/GMArchiver.m ([GMUnarchiver -initForReadingWithPropertyList:]): Retain the namesToObjects dictionary ([GMUnarchiver -dealloc]): Implemented. Thu Apr 12 15:07:19 2001 Nicola Pero * Model/IMCustomObject.m: Replaced #import with #include. 2001-04-10 Fred Kiefer * Headers/gnustep/gui/NSComboBox.h * Headers/gnustep/gui/NSComboBoxCell.h * Source/NSComboBox.m * Source/NSComboBoxCell.m Added aditional methods for text completion * Source/externs.m Added notifiaction strings from NSComboBox.m * Source/NSComboBox.m * Source/NSTextField.m * Source/NSImageView.m Corrected the handling of the cellClass so that every subclass of NSControl, that uses a cell, has its own implementaion of [cellClass] and [setCellClass]. * Source/NSSlider.m [initWithFrame:] removed superflous [setCell:] call, as this gets done in the super implementation. Fri Apr 6 23:39:52 2001 Nicola Pero * Source/NSSavePanel.m (createRowsForColumn:): Use the public NSFileManager API to enumerate the contents of a directory, rather than using private internals methods of the GNUstep base library. 2001-03-26 Jonathan Gapen * Model/IMLoading.m: Find system library path with NSSearchPathForDirectoriesInDomains() instead of env vars. 2001-03-23 Mirko Viviani * Source/NSCell.m ([NSCell -drawInteriorWithFrame:inView:]): do not check if the control that owns the cell is the first responder. Thu Mar 22 22:13:16 2001 Nicola Pero * Tools/Functions.m (NSDottedFrameRect): Added empty implementation to make the Tools compile. 2001-03-22 Adam Fedor * Version: 0.6.8 2001-03-22 Mirko Viviani * Source/NSBrowser.m ([NSBrowser -_unloadFromColumn:]): fix index out of bound (patch by Enrico Sersale ) 2001-03-22 Mirko Viviani * Source/NSButtonCell.m ([NSButtonCell -setCellAttribute:to:]): implemented. ([NSButtonCell -cellAttribute:]): implemented. * Source/NSPopUpButton.m ([NSPopUpButton -keyDown:]): implemented keyboard selection. ([NSPopUpButton -resignFirstResponder]): implemented. ([NSPopUpButton -resignKeyWindow]): implemented. * Source/NSPopUpButtonCell.m ([NSPopUpButtonCell -drawInteriorWithFrame:inView:]): from -drawWithFrame:inView: * Source/NSButton.m ([NSButton -becomeFirstResponder]): set cell first responder. ([NSButton -resignFirstResponder]): likewise. ([NSButton -becomeKeyWindow]): likewise. ([NSButton -resignKeyWindow]): likewise. * Source/NSBrowserCell.m ([NSBrowserCell -drawInteriorWithFrame: inView:]): draw correct dotted box. * Source/NSBrowser.m ([NSBrowser -becomeFirstResponder]): make first responder the latest column. ([NSBrowser -acceptsFirstResponder]): accepts first responder status. ([NSBrowser -keyDown:]): handle tabs to select next/previous key view. ([NSBrowser -moveRight:]): make browser column the first responder. ([NSBrowser -moveUp:]): likewise. ([NSBrowser -moveDown:]): likewise. ([NSBrowser -moveLeft:]): likewise. ([NSBrowser -_unloadFromColumn:]): remove columns from superview and array. ([NSBrowser -_remapColumnSubviews:]): set the correct first responder. * Source/NSWindow.m ([NSWindow -sendEvent:]): retain/release first responder for keyUp/keyDown events. Discard NSLeftMouseDown for closed windows. ([NSWindow -dealloc]): release _originalResponder * Source/NSView.m ([NSView -removeSubview:]): remove next responder. * Source/NSCell.m ([NSCell -setUpFieldEditorAttributes:]): clear selected range. ([NSCell -editWithFrame:inView:editor:delegate:event:]): redisplay textObject after invoking mouseDown: ([NSCell -drawInteriorWithFrame:inView:]): draw dotted-line outline when first responder. ([NSCell -setCellAttribute:to:]): implemented. * Source/NSTextView.m ([NSTextView -moveUp:]): don't call _illegalMovement: for the text field editor. ([NSTextView -moveDown:]): likewise. ([NSTextView -moveLeft:]): likewise. ([NSTextView -moveRight:]): likewise. * Source/NSTextField.m ([NSTextField -textDidEndEditing:]): fixed return/tab/backtab text movement code. * Headers/gnustep/gui/NSGraphics.h: added NSDottedFrameRect prototype. * Headers/gnustep/gui/NSMatrix.h: added ivars for dotted frame rect. * Source/NSMatrix.m ([NSMatrix -selectCell:]): implemented. ([NSMatrix -_selectCell:atRow:column:]): new method. ([NSMatrix -selectCellAtRow:column:]): call _selectCell:atRow:column: ([NSMatrix -selectCellWithTag:]): likewise. ([NSMatrix -selectAll:]): Do not select disabled or editable cells. ([NSMatrix -textDidEndEditing:]): fixed return/tab/backtab text movement code. ([NSMatrix -_selectNextSelectableCellAfterRow:column:]): don't select disabled cells. ([NSMatrix -_selectPreviousSelectableCellBeforeRow:column:]): likewise. ([NSMatrix -_privateFrame:mode:numberOfRows:numberOfColumns:]): set dottedRow and dottedColumn. ([NSMatrix -insertRow:withCells:]): likewise. ([NSMatrix -removeColumn:]): likewise. ([NSMatrix -removeRow:]): likewise. ([NSMatrix -mouseDown:]): likewise and discard disabled cells. ([NSMatrix -drawRect:]): set shows cell first responder. ([NSMatrix -becomeFirstResponder]): draw dotted box for cell. ([NSMatrix -resignFirstResponder]): likewise. ([NSMatrix -becomeKeyWindow]): likewise. ([NSMatrix -resignKeyWindow]): likewise. ([NSMatrix -_setNeedsDisplayDottedCell]): likewise. ([NSMatrix -selectTextAtRow:column:]): set shows cell first responder. ([NSMatrix -setState:atRow:column:]): likewise. Deselect previous selected cell in radio mode. * Source/NSSavePanel.m (createRowsForColumn:): use _gsSavePanelCompare: and check extension against _requiredFileType and not "app", "bundle", etc. ([NSString -_gsSavePanelCompare:]): filename compare. ([NSSavePanel -_initWithoutGModel]): set key view for keyboard interaction. ([NSSavePanel -keyDown:]): removed. ([NSSavePanel -controlTextDidEndEditing:]): removed. * Source/NSOpenPanel.m ([NSOpenPanel -_shouldShowExtension:isDir:]): added isDir argument. 2001-03-21 Richard Frith-Macdonald * Source/NSColor.m: Change archiving/unarchiving of colors to avoid storing private subclasses in archive. Fixed bug in unarchiving that caused crashes when retrieving old archives. Tidied source a little to ret rid of some contraventions of coding standards (long lines etc). 2001-03-21 Fred Kiefer * Headers/gnustep/gui/NSColor.h Made NSColor an abstract class, without ivars. * Source/NSColor.m Define concret subclasses of NSColor and moved code into this subclasses. * Source/NSColorList.m Corrected two errors in [writeToFile:] introduced by the last changes. * Source/NSBezierPath.m [containsPoint:] corrected and simplified a bit, but this still needs a complete rework. 2001-03-19 Jonathan Gapen * Headers/gnustep/gui/NSPrinter.h: Prefix instance vars w/underscore. * Source/NSPrinter.m: Remove (the now) extraneous cString usage, and prefix instance vars with underscore. Sun Mar 18 15:58:43 2001 Nicola Pero * Tools/GNUmakefile (GNUSTEP_MAKE_SERVICES): Define it to tell gnustep-make to use the local make_services. Fri Mar 16 23:41:10 2001 Nicola Pero * GNUmakefile.postamble ($(INSTALL_ROOT_DIR)/$(GNUSTEP_MAKEFILES)/Additional): New target; create the directory. (before-install): Do not create the directory but depend on the new target. * Images/GNUmakefile.postamble: Idem for $(imagedir). * PrinterTypes/GNUmakefile.postamble: Idem for $(INSTALL_DIR). * GNUmakefile: Removed `-' in front of include of GNUmakefile.postamble. * Images/GNUmakefile: Idem. * Model/GNUmakefile: Idem. * Panels/GNUmakefile: Idem. * PrinterTypes/GNUmakefile: Idem. * Tools/GNUmakefile: Idem for preamble and postamble. * Panels/GNUmakefile: Moved all targets, rules to Panels/GNUmakefile.postamble. Removed $(prefix). * Panels/GNUmakefile.postamble: Rewritten, simplified all rules. * PrinterTypes/GNUmakefile.postamble (before-install): Merged loop to create directories with the one in after-install; only create the directories if they do not exist. (after-install): Merged code from before-install; do installation in a single shell jump rather than two. Standardized installation of header files: * Source/GNUmakefile: (libgnustep-gui_HEADER_FILES_INSTALL_DIR): Change it from / to /AppKit. (libgnustep-gui_HEADER_FILES): Removed the AppKit in front of all of them. (libgnustep-gui_HEADER_FILES_DIR): Changed to ../Headers/AppKit * Source/GNUmakefile.preamble (ADDITIONAL_INSTALL_DIRS): Removed. * Source/GNUmakefile.postamble: Do not create ./$(GNUSTEP_OBJ_DIR)/Parsers if it alread exists. * Source/GNUmakefile.preamble: Commented out all empty code. * Tools/GNUmakefile.preamble: Idem. * Tools/GNUmakefile.postamble: Idem. Tue Mar 13 20:37:34 2001 Nicola Pero * Source/GSFontInfo.m ([+encodingForRegistry:encoding:]): Updated encoding names for change in the base library; for example, use NSISOArabic rather than NSArabic. 2001-03-09 Gregory John Casamento * Model/GMAppKit.m NSClipView ([-encodeWithModelArchiver:] and [-initWithModelUnarchiver:]): Added checks to make sure that the object responds to drawsBackground/setDrawsBackground to prevent nib2gmodel from crashing when running on OPENSTEP4.2. NSSecureTextFieldCell - Added methods to support archiving and unarchiving this class. * Source/GMAppKit.h Added category for archiving/unarchiving of NSSecureTextFieldCell * Source/AppKit.h Added #include and added forward declarations for both NSSecureTextFieldCell and NSSecureTextField. Wed Mar 7 16:11:19 2001 Nicola Pero * Source/NSBezierPath.m ([-appendBezierPathWithArcWithCenter: radius:startAngle:endAngle:clockwise:]): Rewritten and fixed the way angles are managed - should be consistent with postscript now (patch by Georg Fleischmann with little change of mine). 2001-03-05 Adam Fedor * Source/tiff.m (NSTiffError): Fix declaration. (NSTiffWarning, NSTiffHandleRead, NSTiffHandleWrite): Likewise. (Patch from Jeff Teunissen ). Thu Mar 1 04:15:53 2001 Nicola Pero * Source/NSBezierPath.m ([-appendBezierPathWithArcWithCenter: radius:startAngle:endAngle:clockwise:]): Little simplification in the computation of F. Thu Mar 1 04:10:54 2001 Georg Fleischmann * Source/NSBezierPath.m ([-appendBezierPathWithArcWithCenter: radius:startAngle:endAngle:clockwise:]): several fixes to make it work 2001-02-22 Adam Fedor * Documentation/news.texi: Update * Documentation/install.texi: Likewise. * INSTALL, NEWS, etc, regenerate. Wed Feb 21 11:30:48 2001 Nicola Pero * Headers/gnustep/gui/AppKit.h: Commented out extra token after the #endif directive. 2001-02-19 Fred Kiefer * Headers/gnustep/gui/NSDragging.h Corrected the values for NSDragOperation and all methods returning an operation mask. * Source/NSColorPanel.m [_initWithoutGModel] set target and action for the main colour well. 2001-02-19 Fred Kiefer * Source/NSWindow.m [_initBackendWindow:] corrected the registration of drag types, when a window gets realized. We have to use a copy here, as the original will get changed. 2001-02-18 Richard Frith-Macdonald * Source/NSColorWell.m: Tidied a little, and made changes to conform to macOS-X documentation and observed NeXTstep behavior. Of note - 1. colorwell should not deactivate when panel is closed. 2. setting color of an active well should set the color of the panel (though it should not raise it). * Source/NSColorPanel.m: Minor tidy. * Images/common_ColorSwatch.tiff: Updated to same size as NeXTstep color swatch. Sun Feb 18 13:35:55 2001 Nicola Pero * Source/NSClipView.m ([-setBoundsOrigin:]): Make rect to copy integral before copying. Sat Feb 17 19:07:33 2001 Nicola Pero * Source/NSClipView.m ([-acceptsFirstResponder]): Call the documentview's acceptsFirstResponder. ([-becomeFirstResponder]): Fixed. 2001-02-14 Fred Kiefer * Source/NSColorWell.m: Added methods to handle target and action. * Headers/gnustep/gui/NSColorWell.h: Added ivars for action and target. 2001-02-13 Adam Fedor * Version: 0.6.7 2001-02-11 Adam Fedor * Source/NSApplication.m ([NSApplication -init]): Don't set our uncaught exception handler until after the back-end is initialized (at least). 2001-02-09 Richard Frith-Macdonald * Source/NSApplication.m: NSAppIconView modified to support the opening of any documents dropped on the appicon using DnD. Fri Feb 9 18:07:13 2001 Nicola Pero * Source/NSTableView.m ([-noteNumberOfRowsChanged]): Fix for nil superview on Solaris, where you can't assign 0 to structs (solution suggested by Adam Fedor). 2001-02-08 Richard Frith-Macdonald * Headers/gnustep/gui/NSWindow.h: Added a GNUstep specific window level for the desktop (to work in conjunction with Window Maker) and changed the deprectated dock window level to match the value in MacOS-X beta. Thu Feb 8 19:17:25 2001 Nicola Pero * Headers/gnustep/gui/AppKit.h: Include NSSecureTextField.h. 2001-02-08 Richard Frith-Macdonald * Source/NSWindow.m: Center title in miniwindow view. Wed Feb 7 21:44:41 2001 Nicola Pero * Source/NSBrowser.m ([-reloadColumn:]): Save the selected cells in the column, then restore them after reloading the column. Wed Feb 7 20:21:36 2001 Nicola Pero * Source/NSSplitView.m ([-_adjustSubviews]): New method so that we avoid posting notifications if the delegate is doing the resizing. ([-adjustSubviews]): Do not post notifications so it can be called by the delegate method. ([-resizeWithOldSuperviewSize:]): Call _adjustSubviews: rather than adjustSubviews:. * Headers/gnustep/gui/NSSplitView.h (_never_displayed_before): New ivar. * Source/NSSplitView.m ([-initWithFrame:]): Set _never_displayed_before to YES. ([-displayRectIgnoringOpacity:]), ([-displayIfNeededInRectIgnoringOpacity:]): New methods. Adjust subviews the first time ever the split view is displayed. ([-addSubview:positioned:relativeTo:]), ([-addSubview:]): Removed. * Source/NSFontPanel.m ([-_initWithoutGModel]): Removed hack to set sizes of splitview's subviews right - no longer needed. 2001-02-07 Richard Frith-Macdonald * Source/NSWindow.m: Modified miniwindow view drawing to make titles in miniwindows look like NeXT ones. 2001-02-06 Richard Frith-Macdonald * Source/NSMenuView.m: ([-mouseDown:]) modified code for checking and repositioning of window to cope with situation where the window changes its size as a result of the mouse down action. 2001-02-04 Fred Kiefer * Source/NSColor.m In [supportMaxColorSpaces] added conversions from RGB to CMYK. In [colorUsingColorSpaceName:device:] added conversion from named colour. * Source/NSColorPanel.m Reimplemented without using a GModel file. * Headers/gnustep/gui/NSColor.h: Removed the color panel enumerators. * Headers/gnustep/gui/NSColorPanel.h: Added the color panel enumerators and corrected them. Adopted the ivars to the new implementation. Fri Feb 2 21:16:32 2001 Nicola Pero * Source/NSTableView.m ([-selectRow:byExtendingSelection:]): Fixed selecting the only row in a single row table (patch by Pierre-Yves Rivaille modified). * Source/NSTableView.m ([-selectColumn:byExtendingSelection:]): The same for columns. 2001-01-30 Adam Fedor * Tools/GNUmakefile: Don't make gbps since it conflicts with gpbs in the backend. * gnustep-gui.spec.in: Add requires gnustep-base 2001-01-29 Adam Fedor * Source/NSPrintOperation.m ([NSPrintOperation -runOperation]): Reset the locale to POSIX so numbers get printed correctly. Mon Jan 29 20:49:57 2001 Nicola Pero * Source/NSSplitView.m ([-mouseDown:]): Post the NSSplitViewDidResizeSubviewsNotification and the NSSplitViewWillResizeSubviewsNotification as appropriate. Mon Jan 29 20:19:59 2001 Nicola Pero * Source/NSTableView.m ([-mouseDown:]): Unselect an already selected row only when shift is pressed. ([-columnAtPoint:]): Fix for point precisely on the first column boundary. (Patches by Pierre-Yves Rivaille ). Mon Jan 29 19:04:53 2001 Nicola Pero * GNUmakefile.postamble (after-install): Install gui.make in $(GNUSTEP_MAKEFILES)/Additional/gui.make. * gui.make: New file extracted from gnustep make package. * GNUmakefile: Include local gui.make. * Documentation/GNUmakefile: Idem. * Documentation/gsdoc/GNUmakefile: Idem. * Images/GNUmakefile: Idem. * Model/GNUmakefile: Idem. * Panels/GNUmakefile: Idem. * PrinterTypes/GNUmakefile: Idem. * Source/GNUmakefile: Idem. * Testing/GNUmakefile: Idem. * Tools/GNUmakefile: Idem. * Source/GNUmakefile (libgnustep-gui_HEADER_FILES_INSTALL_DIR): Dont' install into xxx/Headers/gnustep/AppKit/ but simply into xxx/Headers/AppKit. * Source/GNUmakefile.preamble (ADDITIONAL_INSTALL_DIRS): Create zzz/Headers/AppKit rather than zzz/Headers/gnustep/AppKit. * Model/GNUmakefile.postamble (after-distclean): Remove GNUmakefile.local. * Panels/GNUmakefile.postamble: Idem. * Source/GNUmakefile.postamble: Idem. * Testing/GNUmakefile.postamble: Idem. * Tools/GNUmakefile.postamble: Idem. Sun Jan 28 21:30:39 2001 Nicola Pero * Source/NSClipView.m ([-setFrame:]), ([-setFrameOrigin:]), ([-setFrameSize:]): Update bounds origin. Sun Jan 28 20:20:42 2001 Nicola Pero * Source/NSClipView.m ([-viewFrameChanged:]): Invoke reflectScrolledClipView: to update the scrollers. Sun Jan 28 16:53:16 2001 Nicola Pero * Source/NSView.m ([-mouse:inRect:]): Use NSMouseInRect. Sun Jan 28 16:15:05 2001 Nicola Pero * Headers/gnustep/gui/NSSplitView.h: Added delegate method splitView:constrainSplitPosition:ofSubviewAt:. * Source/NSSplitView.m ([-mouseDown:]): Implemented asking delegate for splitView:constrainSplitPosition:ofSubviewAt:. 2001-01-28 Jonathan Gapen * Source/GSServicesManager.m: Standardized finding GNUstep paths by using NSSearchPathForDirectoriesInDomains() * Source/NSColorList.m: Ditto. * Source/NSPrinter.m: Ditto. * Source/NSWorkspace.m: Ditto. Sun Jan 28 01:37:53 2001 Nicola Pero * Source/NSClipView.m ([-setDocumentView:]): Bug fix: recompute flipped flag and invalidate coordinates immediately after setting the new document view. * Source/NSBrowser.m ([-_adjustMatrixOfColumn:]): As a consequence, removed hack introduced with last change: no longer needed. Sat Jan 27 13:46:44 2001 Nicola Pero * Source/NSBrowser.m ([-_adjustMatrixOfColumn:]): Fixed position of matrix (from a patch by Wim Oudshoorn ). Sat Jan 27 11:56:33 2001 Nicola Pero * Source/NSApplication.m (_NSAppKitUncaughtExceptionHandler): When aborting, simply reraise the exception which gets then managed by the base library exception handler. Sat Jan 27 11:33:35 2001 Nicola Pero * Source/NSColorWell.m ([-acceptsFirstMouse:]): Added. 2001-01-27 Richard Frith-Macdonald * Tools/gpbs.m: Cope better with nil pasteboard owners. Fri Jan 26 22:36:21 2001 Nicola Pero * Source/NSBrowser.m (NSBR_VOFFSET): Changed from 3 to 2. ([-titleHeight]): Return 21. * Source/NSFontPanel.m (_setFloatValue): New function to avoid displaying .00000 for floats. ([-browser:selectRow:inColumn:]), ([-setPanelFont:isMultiple:]): Use it. ([-_initWithoutGModel]): Completely rewritten sizes; fixed autoresizing masks; use a GSBrowserTitleCell to draw the size column title; added trick to make splitview sizes right; set min size. ([-browser:titleOfColumn:]), ([-browser:numberOfRowsInColumn:]), ([-browser:selectRow:inColumn:]): Tiny speed up. ([splitView:constrainMinCoordinate:maxCoordinate:ofSubviewAt:]): New method. * Source/NSSplitView.m ([-initWithFrame:]): Set _autoresizes_subviews to NO. ([-isFlipped]): Return YES as per spec. ([-adjustSubviews]), ([-drawRect:]), ([-mouseDown:]): Updated for flipped coordinates. ([-drawDividerInRect:]): Fixed bug in drawing dimple with flipped coordinates. 2001-01-26 Richard Frith-Macdonald * Source/NSLayoutManager.m: when doing conversions between glyph and character indices, support the index immediately beyond the end of the glyphs/characters without raising an exception. 2001-01-22 Richard Frith-Macdonald * Source/NSLayoutManager.m: loads of glyph changes - added some implementation notes. Implemented gaps in the glyphs stream. I think all glyph methods are implemented now (probably). Really needs someone elses eye casting over it, to try to catch any obvious bugs. 2001-01-20 Fred Kiefer * Source/NSBezierPath.m Corrected some bugs. Opimized the concret subclass to use a GSIArray. Sun Jan 21 14:10:52 2001 Nicola Pero * Source/NSClipView.m ([-setBoundsOrigin:]): Rewritten/fixed scrolling so that it only copies from visible bits. Sat Jan 20 23:38:03 2001 Nicola Pero Patches by Alexander Malmberg , modified: * Source/NSMenu.m ([NSMenuWindowTitleView -titleHeight]): New method. ([NSMenu -initWithTitle:]): Use the new method to compute menu title height. ([NSMenu -sizeToFit]): Idem. * Source/NSMenuView.m ([+menuBarHeight]): Compute from the font height. ([-initWithFrame:]): Compute cellSize from the font size. 2001-01-20 Fred Kiefer * Headers/gnustep/gui/NSBezierPath.h Added missing methods and changed the ivars. * Source/NSBezierPath.m 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. * Source/NSAffineTransform.m [transformBezierPath:] autorelease the returned object. 2001-01-20 Richard Frith-Macdonald * Source/NSLayoutManager.m: Reorganize and tidy up glyph code in preparation for handling gaps in the glyh stream. Fri Jan 19 17:22:24 2001 Nicola Pero * GNUmakefile: Added RPM_DISABLE_RELOCATABLE and PACKAGE_NEEDS_CONFIGURE. * gnustep-gui.spec.in, gnustep-gui-debug.spec.in: New files. * gnustep-gui.spec: Removed. Wed Jan 17 19:51:57 2001 Nicola Pero * Source/NSTableHeaderView.m ([-mouseDown:]): Fixed bug in resizing (patch by Pierre-Yves Rivaille slightly modified). Tue Jan 16 12:01:28 2001 Nicola Pero * Source/NSApplication.m (_NSAppKitUncaughtExceptionHandler): Fixed logging exception when no graphics context exist. Tue Jan 16 11:54:30 2001 Nicola Pero * Source/NSAffineTransform.m ([-takeMatrixFromTransform:]): New method to get quickly the matrix from another transform. * Headers/gnustep/gui/NSAffineTransform.h: Added corresponding declaration. * Source/NSView.m ([-_rebuildCoordinates]): Use it to spare a couple of method calls per invocation. * Source/NSBrowser.m ([-pathToColumn:]): Bug fix - stop computing path as soon as a column with no selected cells in it is found. * Headers/gnustep/gui/NSClipView.h: Added ivar to cache whether we are opaque or not. * Source/NSClipView.m ([-isOpaque]): Returne cached info. ([-setDrawsBackground:]), ([-setBackgroundColor:]): Update opaque cache info. * Source/NSClipView.m ([-setDocumentView:]): As a safety check, update _rFlags.flipped_view before setting the bounds. ([-setBoundsOrigin:]): Use [self documentVisibleRect] to get the document view area to be redrawn when redrawing everything. * Source/NSScrollView.m ([-tile]): Removed reflectScrolledClipView call in excess. * Source/NSView.m ([-_rebuildCoordinates]): Use _frame.height, not _bounds.height when flipping coordinates. * Source/NSView.m: Cache the default notification center for the whole class. * Source/NSView.m ([-resizeWithOldSuperviewSize:]): Bug fix - removed hackish code which manually attempted to `restore' bounds after setFrame: updated them. This fixes the rubbish drawn when resizing a textview inside a scrollview - a bug which escaped debugging attempts for more than one year I think. I am glad it's fixed now. Tue Jan 16 11:47:58 2001 Nicola Pero * Source/NSMenu.m ([NSMenuWindowTitleView -drawRect:]): Fixed bug - exposed rect being confused with bounds (patch by Malmberg ). 2001-01-15 Richard Frith-Macdonald * Headers/gnustep/gui/NSLayoutManager.h: New _endCharIndex ivar to keep track of last char converted to glyph. * Source/NSLayoutManager.m: More glyph handling code implemented. Sat Jan 13 22:16:45 2001 Nicola Pero * Source/GSSimpleLayoutManager.m ([-glyphIndexForPoint: inTextContainer:fractionOfDistanceThroughGlyph:]): Check that fraction pointer is non NULL before using it. * Source/GSSimpleLayoutManager.m ([-_charIndexForInsertionPointMovingFromY:bestX:up: textContainer:]): New method implemented. * Headers/gnustep/gui/NSLayoutManager.h: Added it. * Source/NSLayoutManger.m: Added it with void implementation. * Headers/gnustep/gui/NSTextView.h: New insertion point ivar which stores the insertion point rectangle. Ivar for stable cursor up/down changed to a float. * Source/NSTextView.m: Use everywhere the new ivar for the insertion point rect rather than computing it each time; use everywhere [_textStorage length] rather than [self textLength]. * Source/NSTextView.m ([-alignment]): Simplified for non rich text. * Source/NSTextView.m ([-updateInsertionPointStateAndRestartTimer:]): Implemented. ([-setSelectedRange:affinity:stillSelecting:]): Invoke [-updateInsertionPointStateAndRestartTimer:]. ([-insertText:insertString]), ([-deleteBackward:]), ([-deleteForward:]), ([-moveLeft:]), ([-moveRight:]): Removed code to remember position of cursor; now it is done automatically by [-updateInsertionPointStateAndRestartTimer:]. ([-moveDown:]), ([-moveUp:]): Fixed - rewritten to use the new private NSLayoutManager code. ([-rectForCharacterIndex:]), ([-rectForInsertionPointAtIndex:]): Removed. 2001-01-13 Richard Frith-Macdonald * Source/GSTextStorage.m: Fixed bug initialising from an empty attributed string, and fixed bug replacing characters in range, when an attribute range location is the same s the location of the replaced characters. Sat Jan 13 12:24:55 2001 Nicola Pero * Source/NSApplication.m (_NSAppKitUncaughtExceptionHandler): Attempt at making the meaning of the panel more clear for end users by adding the word `Error' to the message title. 2001-01-12 Fred Kiefer * Tools/Functions.m Undid last change and removed Function GSWSetMatrix(). Thu Jan 11 22:09:57 2001 Nicola Pero * Source/NSTextView.m ([-deleteBackward:]), ([-deleteForward:]): Completely rewritten. ([-deleteRange:backspace:]): Removed. ([-delete:]): wrap [-deleteForward:]. 2001-01-11 Richard Frith-Macdonald * Headers/gnustep/gui/NSLayoutManager.h: Remove some unused ivars. * Source/NSLayoutManager.m: Initial hacks for glyph management - should have no effect on execution so far. Wed Jan 10 21:19:23 2001 Nicola Pero * Source/NSApplication.m ([+initialize]): Save the default exception handler before setting a new one. (_NSAppKitUncaughtExceptionHandler): Reset the exception handler to the default exception handler during execution, to prevent very annoying recursive calls. Wed Jan 10 19:42:22 2001 Nicola Pero * Source/GSTextStorage.m ([-length]): Added for speed. * Source/GSTextStorage.m: Prefixed ivars with underscore. Tue Jan 9 11:24:32 2001 Nicola Pero * Tools/Functions.m: Include AppKit/DPSOperators.h so it compiles again. 2001-01-08 Richard Frith-Macdonald * Source/NSApplication.m: exception handler - check that graphics context exists and if it doesn't, simply log an error rather than trying to rujn an alert panel. 2001-01-08 Fred Kiefer * Source/NSColor.m In [supportMaxColorSpaces] corrected converions from RGB to HSB. * Source/NSFontPanel.m [_initWithoutGModel] make the size label non-selectable. * Headers/gnustep/gui/GSWraps.h: Removed function GSWSetMatrix(). 2001-01-08 Fred Kiefer * Headers/gnustep/gui/NSAffineTransform.h: * Source/NSAffineTransform.m Added new GS methods [concatenateWithMatrix:] and [deltaPointInMatrixSpace:] to avoid the creation of a new NSAffineTransform in the backend. * Source/NSScroller.m [setTarget:] don't retain target to avoid retain cycle in NSScrollView. [initWithCoder:] release target after decoding. * Source/NSColorWell.m In [dealloc] call [deactivate] for active colour wells. * Source/NSColorPanel.m Better interaction with the current colour picker. [setTarget:] don't retain target. In [sharedColorPanel] the picker mode is used only to create the panel, not each time the panel is shown. Show the alpha value multiplied by 100. * Source/NSPageLayout.m * Source/NSPrintOperation.m Small improvements. Sun Jan 7 03:28:14 2001 Nicola Pero * Source/GSSimpleLayoutManager.m ([-textStorage:edited:range:changeInLength:invalidatedRange:]), ([-invalidateLayoutForCharacterRange:isSoft:actualCharacterRange:]): Invoke [NSTextView -invalidateTextContainerOrigin]. * Source/NSLayoutManager.m ([-textContainerChangedTextView:]): Implemented. * Source/NSTextContainer.m ([-setTextView:]): Call [NSLayoutManager -textContainerChangedTextView:] if appropriate; do not remove frame change notifications for the old text view. * Source/NSTextView.m ([-initWithFrame:textContainer:]): Set min size to zero; do not modify existing text container flags; removed unused call to sizeToFit. ([-setHorizontallyResizable:]), ([-setVerticallyResizable:]): Removed most code. ([-setConstrainedFrameSize:]): Implemented. ([-sizeToFit]): Rewritten completely to use [-setConstrainedFrameSize:]. ([-setTextContainer:]): Do not set the text container size. ([-invalidateTextContainerOrigin]): Implemented. ([-setFieldEditor:]): Set non horizontally nor vertically resizable. 2001-01-03 Richard Frith-Macdonald * Source/NSFont.m: Minor optimisations - caching class and defaults. Copy font name rather than just retaining - to ensure that it's not a mutable string that gets changed. Ensure that fonts are encoded as the base class. * Source/NSTextView.m: ([-setTypingAttributes:]) update font panel and ruler ([-readSelectionFromPasteboard:type:]) update typing attributes. ([-updateFontPanel]) use font info from typing attributes. 2000-12-28 Fred Kiefer * Headers/gnustep/gui/NSButtonCell.h: Corrected definition of NSBezelStyle. * Source/NSButtonCell.m Simplified mask definition in [drawInteriorWithFrame:inView:] and [cellSize]. * Headers/gnustep/gui/NSColor.h: Prefixed all ivars with underscores, removed unneded ivars and added some missing methods and types. * Headers/gnustep/gui/NSColorPrivate.h: Removed * Source/GNUmakefile: Removed reference of NSColorPrivate.h * Source/externs.m Added notifiaction string from NSColor.m * Source/NSColor.m Added missing methods, restructured all the private methods, so there are no changing methods left. Made systemColorWithName() a function and optimized system color retrival. 2000-12-27 Richard Frith-Macdonald * Source/NSAttributedString.m: ([-doubleClickAtIndex:]), Fixed infinite loop. Added code to cope with double click on the space between words. * Source/GSSimpleLayoutManager.m: Implemented ([-glyphIndexForPoint:inTextContainer:fractionOfDistanceThroughGlyph:]) * Source/NSTextView.m: ([-selectionRangeForProposedRange:granularity]) Re-implemented word selection using ([-doubleClickAtIndex:]) ([-mouseDown:]) creatre proposed range for selection by merging old selection range with new location. Modified ([-characterIndexForPoint:]) to take into account where the character/glyph was clicked on. 2000-12-24 Fred Kiefer * Headers/gnustep/gui/NSButton.h: Added some missing methods. * Headers/gnustep/gui/NSButtonCell.h: Added some missing methods and some ivars. * Source/NSButton.m Delegate all the new methods to the cell. Replaced all calls to [display] with [setNeedsDisplay:] excuding those in [setState:] and [setNextState:]. Removed the initXXX methods, as they were doublicated code from super. * Source/NSButtonCell.m Dummy implementation for new methods. 2000-12-24 Fred Kiefer * Headers/gnustep/gui/NSImageRep.h: * Headers/gnustep/gui/NSBitmapImageRep.h: Added some missing methods. * Source/NSImage.m Implemented [initWithBitmapHandle:], [initWithIconHandle:] and [initWithContentsOfURL:]. [copyWithZone:] dont copy cached image reps. Allways use [self representations], so that the representation is loaded if needed. * Source/NSImageRep.m Implemented [imageRepWithContentsOfURL:] and [imageRepsWithContentsOfURL:]. In [imageRepsWithContentsOfFile:] get all possible reps. * Source/NSBitmapImageRep.m Dummy implementation for new methods. * Headers/gnustep/gui/NSControl.h: Added some missing methods. * Source/NSControl.m Implemented [refusesFirstResponder] and [setRefusesFirstResponder:]. Changed [setEnabled:], [setAlignment:], [setFont:] and all [setXXValue:] methods to conform to the spec. Removed the [copyWithZone:] method. * Headers/gnustep/gui/NSBox.h: Added some missing methods. * Source/NSBox.m Implemented [setTitleWithMnemonic:]. * Headers/gnustep/gui/NSApplication.h: Added ivar _default_context to store the graphic context used for events, which is not switched while printing. * Source/NSApplication.m Use the _default_context for all events and in dealloc. 2000-12-23 Fred Kiefer * Headers/gnustep/gui/NSImage.h: Prefixed all ivars with underscores, made fileName an ivar of NSImage and added some missing methods. * Headers/gnustep/gui/NSImageRep.h: * Headers/gnustep/gui/NSCachedImageRep.h: * Headers/gnustep/gui/NSBitmapImageRep.h: * Headers/gnustep/gui/NSCustomImageRep.h: Prefixed all ivars with underscores. * Source/NSImage.m Adopted to changes in header file. General cleanup. Removed obsolete backend declarations. Move ivar fileName from GSRepDate to NSImage, as it is used only once. This simplifies [_useFromFile:] and [_loadImageFilenames]. Implemented [compositeToPoint:fromRect:operation:] and [dissolveToPoint:fromRect:fraction:] by calling the corresponding function. Now the operator given to this methods is really used! * Source/NSImageRep.m * Source/NSCustomImageRep.m Adopted to changes in header file. * Source/NSCachedImageRep.m Adopted to changes in header file. Removed methods [drawAtPoint:] and [drawInRect:] so that the super implementation gets used. In method [initWithSize:depth:separate:alpha:] store alpha and bitspersample. * Source/NSBitmapImageRep.m Adopted to changes in header file. Moved code from [TIFFRepresentation] to [TIFFRepresentationUsingCompression:factor:] and call this. * Source/NSCell.m In [drawInteriorWithFrame:inView:] use NSCompositeSourceOver as the operator for imag composition not NSCompositeCopy. This replacement may be necessary in other parts of the GUI as well!!!! Sat Dec 23 15:43:24 2000 Nicola Pero * Source/NSTextView.m ([-setSelectedRange:affinity: stillSelecting:]): Rewritten setting typing attributes for insertion point. ([-updateFontPanel]): Rewritten case of insertion point. ([-alignment]), ([-insertText:insertString]): Access typing attributes to avoid copying the dictionary. 2000-12-23 Richard Frith-Macdonald * Source/NSAttributedString.m: ([-doubleClickAtIndex:]), ([-lineBreakBeforeIndex:withinRange:]), ([-nextWordFromIndex:forward:]) cope with apostrophes and hyphens within words. Fri Dec 22 21:40:58 2000 Nicola Pero * Headers/gnustep/gui/NSTextView.h: Added ivar to store the original selected range. * Source/NSTextView.m ([-initWithFrame:textContainer:]): Init original selected range. ([-setSelectedRange:affinity:stillSelecting:]): Rewritten, implemented delegate notifications etc. ([-mouseDown:]): Use setSelectedRange:affinity:stillSelecting: rather than setSelectedRange:, to produce delegate notifications etc. ([-setDelegate:]): Check if delegate reponds to textView:willChangeSelectionFromCharacterRange:toCharacterRange:. Fri Dec 22 20:05:13 2000 Nicola Pero * Source/NSTextView.m ([-setSelectedRange:]): Simply wrap [-setSelectedRange:affinity:stillSelecting:]; all code moved there. ([-mouseDown:]): Implemented shift click. Fri Dec 22 19:20:00 2000 Nicola Pero * Source/externs.m: Added NSOldSelectedCharacterRange. * Headers/gnustep/gui/NSTextView.h: Remove ivar for selection affinity; added ivar related to delegate. * Source/NSTextView.m ([-resignFirstResponder]): Rewritten deleting insertion point; do not flush the window. ([-drawRect:]): Don't flush the window when drawing insertion point. ([-drawInsertionPointInRect:color:turnedOn:]): Don't flush the window. ([-drawInsertionPointAtIndex:color:turnedOn:]): Removed. Code moved to the new method ([-rectForInsertionPointAtIndex:]). ([-selectionAffinity]): Return NSSelectionAffinityDownstream. Thu Dec 21 19:46:45 2000 Nicola Pero * Headers/gnustep/gui/NSWindow.h: New ivar _futureFirstResponder. * Source/NSWindow.m ([-makeFirstResponder:]): Set ivar _futureFirstResponder. ([-_futureFirstResponder]): New method. * Headers/gnustep/gui/NSLayoutManager.h: Added ivars for synchronization of textviews. Added ivar to mark when editing has began in the group of associated textviews. * Source/NSTextView.m: Use the synchronization ivars in the layout manager instead of the static ones used before. * Source/NSLayoutManager.m ([-addTextContainer:]), ([-insertTextContainer:atIndex:]), ([-removeTextContainerAtIndex:]): Set ivars for cache; call _updateMultipleTextViews for all our textviews. ([-layoutManagerOwnsFirstResponderInWindow:]): Implemented. * Source/NSTextView.m ([-_updateMultipleTextViews]), ([-setDelegate:]): Cache if delegate responds to shouldChangeTextInRange:replacementString:. ([-shouldChangeTextInRange:replacementString:]): Implemented. ([-resignFirstResponder]): Implemented check for multiple textviews using the new _futureFirstResponder: private API in NSWindow; clear editing flag. ([-becomeFirstResponder:]): Do not ask the delegate or post notifications. ([-mouseDown:]): No need to attempt to make us first responder - the window does it for us. * Source/NSCell.m ([-acceptsFirstResponder]): Access ivar refuses first responder. * Source/NSButton.m ([-acceptsFirstResponder]): Accept first responder iff we are enabled; key equivalents play no role here. Thu Dec 21 00:19:54 2000 Nicola Pero * Source/NSTextView.m ([-scrollRangeToVisible:]): Bug fix: use range argument, not selected range. * Source/NSTextView.m: Access some ivars directly. Wed Dec 20 19:39:21 2000 Nicola Pero * Source/NSText.m, Source/NSTextView.m: Most code from NSText was merged into NSTextView. * Source/NSText.h, Source/NSTextView.h: Moved many ivars from NSText to NSTextView. Wed Dec 20 15:23:22 2000 Nicola Pero * Source/NSText.m ([-setDelegate:]): Simplified. * Source/NSTextView.m ([-setDelegate:]), ([-_updateMultipleTextViews]): Set up NSText notifications too. Wed Dec 20 00:38:54 2000 Nicola Pero * Source/NSText.m ([-insertNewline:sender]): Do not call [+newlineString]. ([-didChangeText]), ([+newlineString]): Removed. ([-selectedRange]), ([-setSelectedRange:]): Moved to NSTextView.m; merged the two ([-setSelectedRange:]). Tue Dec 19 21:13:50 2000 Nicola Pero Committed first code for sharing attributes between NSTextViews with the same layout manager. Non tested yet - and not complete. * Headers/gnustep/gui/NSTextView.h: Added a flag to keep track of the case multiple text views. Added an ivar to cache the firstTextView object to use in notifications. * Source/NSTextView.m: ([-_updateMultipleTextViews]), ([-_syncTextViewsByCalling:withFlag:]): New methods. ([-replaceTextContainer:]), ([-setTextContainer:]): Call _updateMultipleTextViews:. ([-setEditable:]), ([-setRichText:]), ([-setImportsGraphics:]), ([-setSelectable:]), ([-setUsesFontPanel:]), ([-setFieldEditor:]), ([-setUsesRuler:]), ([-setRulerVisible:]): Rewritten to share attributes - if needed - with the other NSTextViews. ([-didChangeText]): Post the firstTextView as notif object if needed. ([-setDelegate:]): Rewritten completely to share the delegate if needed. * Source/NSTextView.m ([-string]): Moved from NSText.m. Tue Dec 19 17:53:35 2000 Nicola Pero * Headers/gnustep/gui/NSTextView.h: Moved some flags from NSText.h. * Source/NSTextView.m: Updated for the change in flag name. * Source/NSText.m ([-initWithCoder:]), ([-encodeWithCoder:]): Code for the flags moved to NSTextView.m. ([-initWithFrame:]), ([-textContainerInset]), ([-textContainerOrigin]), ([-textContainer]), ([-setTextContainer:]): Removed. ([-initWithFrame:textContainer:]): Code moved to NSTextView.m. * Source/NSTextView.m ([-backgroundColor]), ([-setBackgroundColor:]), ([-setDrawsBackground:]), ([-drawsBackground]), ([-isEditable]), ([-isSelectable]), ([-isFieldEditor]), ([-usesFontPanel]), ([-isRichText]), ([-importsGraphics]), ([-isRulerVisible]): Removed. Tue Dec 19 00:43:17 2000 Nicola Pero * Source/NSText.m: Made an abstract class always allocating instances of the NSTextView subclass. * Source/NSTextView.m ([-initWithFrame:]), ([-dealloc]), ([-initWithCoder:]), ([-buildUpTextNetwork:]), ([-replaceCharactersInRange:withString:]): Began to move code from superclass. 2000-11-18 Richard Frith-Macdonald * Source/GSTextStorage.m: ([-setAttributes:range:]) fix for the case where we set the same attributes in a range as already exist in a range that overlaps the start of the one we give. 2000-12-17 Georg Fleischmann * Source/NSView.m ([NSView -setFrameSize:]): scale bounds, if necessary * Source/NSView.m ([NSView -scaleUnitSquareSize:]): scale from bounds instead of frame (like OpenStep) Sun Dec 17 14:32:11 2000 Nicola Pero * Source/NSCell.m ([-_nonAutoreleasedTypingAttributes]): New method replacing ([-_typingAttributes]), to reduce the number of concurrent typing dictionaries allocated. ([-attributedStringValue]), ([-_sizeText:]), ([-_drawText:inFrame:]): Updated for the new method. Sat Dec 16 22:45:32 2000 Nicola Pero * Source/NSLayoutManager.m ([GSTextContainerLayoutInfo -dealloc]): Release the text container. ([NSLayoutManager -setTextStorage:]): Do not retain the text storage. * Source/NSTextContainer.m ([-dealloc]): Implemented. ([-setLayoutManager:]): Do not retain the layout manager. * Headers/gnustep/gui/NSText.h: Added flags owns_text_network and is_in_dealloc. * Source/NSText.m ([NSText -initWithFrame:]): Release self to break the retain cycle. ([NSText -dealloc]): Manage the very special case in which we own the text network. ([-encodeWithCoder:]): Do not encode the other text classes. ([-initWithCoder:]): Always build up the text network; added release self as in [-initWithFrame:]. ([-setTextContainer:]): Do not retain the text objects. ([-buildUpTextNetwork:]): Rewritten. * Source/NSTextView.m ([-replaceTextContainer:]): Do not retain the text container. 2000-12-16 Fred Kiefer * Headers/gnustep/gui/NSApplication.h: Prefixed all ivars with underscores, removed unneeded ivars and added some missing methods. * Source/NSApplication.m Adopted to changes in header file. [initialize] Cache the notification center and the NSAutoreleasePool class for the whole file. [finishLaunching] set the image before starting the icon view. Recognize file to open with flag @"NSOpen" beside @"GSFilePath". [dealloc] now also destoys the graphic context. [stop:] now stops the run loop, which may be restarted (but this will still reload the NIB file!). [setApplicationIconImage:] check if the _app_icon_window is there before setting its image. [orderFrontDataLinkPanel:] and [orderFrontHelpPanel:] moved the error message into the corresponding files. [terminate:] now directly stops the program with exit(0). Also did some general cleanup of code. * Source/NSDataLinkPanel.m * Source/NSHelpPanel.m Moved the "not implemented yet" Panel to the shared instance method of those two classes. Sat Dec 16 16:36:03 2000 Nicola Pero * Headers/gnustep/gui/NSCell.h: Modified ivars to reduce memory consumption. String attributes are now stored in a font ivar, three bits for alignment and wraps, and a bit to tell us if _contents is a simple string or an attributed string. Removed _typingAttributes. * Source/NSCell ([-initImageCell:]), ([-initTextCell:]), ([-dealloc]), ([-copyWithZone:]), ([-encodeWithCoder:]), ([-initWithCoder:]), ([-alignment]), ([-setAlignment:]), ([-font]), ([-setFont:]), ([-wraps]), ([-setWraps:]), ([-setUpFieldEditorAttribute:]): Updated for the new ivars. ([-doubleValue]), ([-intValue]), ([-floatValue]), ([-stringValue]), ([-mnemonic]), ([-cellSize]), ([-drawInteriorWithFrame:]), ([-editWithFrame:inView:editor:delegate:event]): Updated for the case when we keep an attributed string in _contents. ([-setObjectValue:]), ([-setStringValue:]), ([-setType:]): Set the _cell.contents_is_attributed_string flag. ([-setAttributedStringValue:]), ([-attributedStringValue]): Rewritten. ([-_typingAttributes]): Create from attributes stored in the cell. ([-_drawAttributedText:inFrame:]): New method. ([-_drawText:inFrame:]): Modified to avoid recomputing the dictionary. * Source/NSFormCell.m ([-cellSize]): Paranoia set of flag for attributed string to NO in tweaked case of computing size with no contents. * Source/NSCell.m ([-isEntryAcceptable:]): Call the formatter's [-getObjectValue:forString:errorDescription:] rather than [-isPartialStringValid:newEditingString:errorDescription:]. * Source/NSFormCell.m ([-copyWithZone:]): Implemented (from a suggestion by Georg Fleischmann). Fri Dec 15 21:40:49 2000 Nicola Pero * Headers/gnustep/gui/NSTextStorage.h: Prefixed all ivars with underscores. * Source/NSTextStorage.m: Updated for ivar name change. ([-processEditing]): Fixed invalidated range passed to NSLayoutManagers. Wed Dec 13 16:02:24 2000 Nicola Pero * Source/NSAttributedString.m: Optimizations: cache class pointers; replaced static functions wordBreakCSet (), wordCSet () and attachmentString () with static cached constants. ([-initWithPath:documentAttributes:]): Fixed little memory leak. Wed Dec 13 03:51:40 2000 Nicola Pero * Source/NSText.m ([-setAlignment:range:]): Fixed memory leak. Tue Dec 12 23:50:04 2000 Nicola Pero * Headers/gnustep/gui/NSParagraphStyle.h: Prefixed all ivars with underscores. * Source/NSParagraphStyle.m: Updated for ivar name change. Tue Dec 12 21:07:56 2000 Nicola Pero * Source/NSMenuItemCell.m ([-drawInteriorWithFrame:inView:]), ([-drawWithFrame:inView:]): Bug fix: do nothing in deferred windows. Tue Dec 12 19:18:08 2000 Nicola Pero * Source/NSButtonCell.m ([-copyWithZone:]): Do not deep-copy ivars, only retain them if not nil. * Source/NSCell.m ([-copyWithZone:]): Do not deep-copy ivars. * Source/NSTextFieldCell.m ([-copyWithZone:]): Do not deep-copy ivars. * Source/NSFormCell.m ([-initTextCell:]): Left align text. * Source/NSTextField.m ([-selectText:]): Bug fix for the recent change in [NSActionCell -stringValue]. * Source/NSMatrix.m ([-selectTextAtRow:column:]): Idem. 2000-12-07 Fred Kiefer * Headers/gnustep/gui/NSCell.h: Remove float formating ivars, as they were never used. * Headers/gnustep/gui/NSActionCell.h: Removed all methods, as they are defined for super class. * Headers/gnustep/gui/NSAffineTransform.h: Added NSCoding Protocol and moved extension methods into seperate interface. * Source/NSCell.m Moved the initialisation of the _typingAttributes from the init method to its first use. * Source/NSActionCell.m Remove initialisation and copy method, as this were mere super calls. Added getter methods with validation. * Source/NSAffineTransform.m Added coding methods. 2000-12-07 Fred Kiefer * Headers/gnustep/gui/NSCell.h: Added missing ivars and rearranged them all. * Headers/gnustep/gui/NSPopupButtonCell.h: Remove now unneeded ivar _menu. * Headers/gnustep/gui/NSImageCell.h: Moved typedefinitions to here from NSImageView.h * Headers/gnustep/gui/NSImageView.h: Removed type definitions. * Source/NSCell.m Implemented a load of missing methods and adopted all subclasses to this changes. (Including copying and coding) This breaks archived cells! * Source/NSActionCell.m * Source/NSBrowser.m * Source/NSBrowserCell.m * Source/NSButtonCell.m * Source/NSComboBoxCell.m * Source/NSFormCell.m * Source/NSImageCell.m * Source/NSMenuItemCell.m * Source/NSPopupButtonCell.m * Source/NSTableHeaderCell.m * Source/NSTextFieldCell.m Adopted to changes in NSCell. * Source/NSFont.m Made all predefined fonts redefinable and removed #ifdef. * Source/NSHelpManager.m [contextHelpForKey:] replaced nil by NULL to avoid compiler warning. * Source/NSParagraphStyle.m Removed super calls from coding methods to avoid compiler warning. Wed Dec 6 19:37:33 2000 Georg Fleischmann * Source/NSTabView.m ([NSTabView -drawRect:]): using aRect (bounds) instead of rect to draw Thu Nov 23 11:18:27 2000 Nicola Pero * Documentation/gsdoc/NSView.gsdoc: Documented drawRect:. * Documentation/gsdoc/NSView.html: Regenerated. Thu Nov 23 10:50:48 2000 Nicola Pero * Documentation/gsdoc/Introduction.gsdoc: Removed email tag which was causing gsdoc tool to abort. * Documentation/gsdoc/NSTableColumn.gsdoc: Added complete documentation about NSTableColumn. * Documentation/gsdoc/Introduction.html: Regenerated. * Documentation/gsdoc/NSTableColumn.html: Idem. Thu Nov 23 09:47:21 2000 Georg Fleischmann * Source/NSTabViewItem.m ([NSTabViewItem -setView:]): TEST_RELEASE() removed, since ASSIGN() manages retain/release. 2000-11-21 Fred Kiefer * Headers/gnustep/gui/NSPrintOperation.h: * Source/NSPrintOperation.m: Split up in three classes added primitiv printing in file * Source/NSPageLayout.m: Added more graphical elements, any functionality is still missing. * Source/GSInfoPanel.m: Use system fonts, not explicit names. Tue Nov 14 23:45:56 2000 Adam Fedor * Source/NSScrollView.m (reflectScrolledClipView:): Check for contentView before getting frame. 2000-11-13 Fred Kiefer * Headers/gnustep/gui/NSPrintInfo.h: Added NSCopying protocol. * Source/NSPrintInfo.m: Added method [copyWithZone:]. * Source/NSView.m: Implemented [print:], [fax:], [dataWithEPSInsideRect:] and [writeEPSInsideRect:toPasteboard:]. * Source/NSWindow.m: Implemented [print:], [fax:], [dataWithEPSInsideRect:]. * Headers/gnustep/gui/NSPrintOperation.h: Added ivars and PDF operations. * Source/NSPrintOperation.m: Started implementation of printing. 2000-11-13 Richard Frith-Macdonald * Source/GSTextStorage.m: partial rewrite to cache/unique dictionaries and to coalesce adjacent regions of string with the same attributes when setting attributes. 2000-11-12 Fred Kiefer * Headers/gnustep/gui/IMLoading.h: * Model/IMLoading.m: Removed NSBundle extension methods. * Source/NSApplication.m: [finishLaunching] removed uneeded call to loadGModel:owner: as this gets done in loadNibNamed:owner:. * Source/NSBundleAdditions.m: [loadNibNamed:owner:] removed unused local variable file. 2000-11-12 Fred Kiefer * Source/GSSimpleLayoutManager.m: Renamed the ivars of _GNULineLayoutInfo to correspond to those of GSLineLayoutInfo. Call a few more abstract methods. Added AutoreleasePool in [rebuildForRange:delta:inTextContainer:] to free up memory. Thu Nov 9 09:49:07 2000 Nicola Pero * Source/GSInfoPanel.m ([GSInfoPanel -initWithDictionary:]): Use Helvetica-Bold rather than Helvetica-BoldOblique for titles. 2000-11-06 Adam Fedor * Documentation: Move tmpl.texi files to texi and update GNUmakefile 2000-11-06 Fred Kiefer * Source/GSSimpleLayoutManager.m: Get the fragmentRect used for layout from the text container * Source/NSText.m: In [setVerticallyResizable:] and [setHorizontallyResizable:] set the size of the text conatainer. Mon Nov 6 17:02:27 2000 Nicola Pero * Documentation/GNUmakefile, Documentation/gsdoc/GNUmakefile: Install the documentation in the appropriate subdirectories of Documentation/Developers/Gui. 2000-11-05 Adam Fedor * Source/NSScreen.m (+mainScreen): Make the mainScreen a shared instance. * Source/NSClipView.m (-setBoundsOrigin:): If our documentView is focused, translate the PS context to the new bounds. 2000-11-05 Fred Kiefer * Headers/gnustep/gui/NSClipView.h: * Headers/gnustep/gui/NSScrollView.h: Added method to set backgound drawing. * Model/GMAppKit.m: Store new ivar for NSClipView * Source/NSScrollView.m: Hand on background drawing to content view. In [setContentView:] call setDocumentView:. * Source/NSClipView.m: Added dealloc method. Implemented [drawsBackground] and [setDrawsBackground:]. In [setDocumentView:] get the background drawing from the document view. [drawRect:] and [isOpaque] check the background drawing. Corrected [constrainScrollPoint:] to respect the documentFrame origin. Implemented [autoscroll:] * Source/NSTextContainer.m: In [setWidthTracksTextView:] and [setHeightTracksTextView:] make sure that the view post changes and that notifications are only send once. * Source/NSText.m: Moved all sizeToFit calls after text changes to the layout manager. * Source/GSSimpleLayoutManager.m: Call size to fit on view after layout changes. 2000-10-24 Fred Kiefer * Source/GSSimpleLayoutManager.m: Removed some 300 lines * Source/NSLayoutManager.m: Added simple glyph character mapping methods * Source/NSText.m: Set the TextConatainer to track its view again. But switch this of if the view is scrollable. 2000-10-31 Richard Frith-Macdonald * Source/GSServicesManager.m: Use new GSObjCClass() function from NSObjCRuntime.h * Source/GSTextStorage.m: Avoid static variable initialisation with @selector() as it doesn't work with Apple runtime. * Source/NSAttributedString.m: ditto * Source/NSMatrix.m: ditto * Source/NSStringDrawing.m: ditto * Source/NSView.m: ditto * Source/NSWindow.m: ditto 2000-10-24 Fred Kiefer * Source/GSSimpleLayoutManager.m: _GNULineLayoutInfo has new ivar usedRect. Simplified the code a bit. * Source/NSText.m: [buildUpTextNetwork:] The text container no longer tracks its view by default. [initWithFrame:textContainer:] the view is no longer resizable by default. * Source/NSTextContainer.m: [setContainerSize:] only informs layout manager if really changed. * Source/Parser/attributedStringConsumer.m Use NSASCIIStringEncoding instead of NSLatin1StringEncoding for RTF 2000-10-21 Michael Hanni * Source/NSTabView.m: ([-dealloc:]) updated. ([-removeTabViewItem:]) updated to not crash when a tabViewItem which had been the selected tab is dealloc'ed. * Source/NSTabViewItem.m: ([-dealloc:]) implemented. 2000-10-20 Richard Frith-Macdonald * Source/NSClipView.m: ([-viewFrameChanged:]) fix test for when to redraw entire area becaause document view is smaller than clipview. Suggested by benhur@inf.UFSM.br 2000-10-19 Michael Hanni * Source/NSTabView.m: a few bugfixes. * Source/NSTabViewItem.m: fixed a few memory leaks. 2000-10-17 Fred Kiefer * Headers/gnustep/gui/NSPageLayout.h: Added some ivars * Headers/gnustep/gui/NSPrintInfo.h: Prefixed ivar with underscore. * Source/NSPrintInfo.m: Change references to ivar info to _info. [initPrintInfoDefaults] now works if there is no PrinterAdmin resource. * Source/NSPageLayout.m: Some basic implementation * Source/NSApplication.m: [runPageLayout:] use real panel. 2000-10-15 Adam Fedor * Source/NSWindow.m (-orderWindow:relativeTo:): Set visible flag immediately. _didDeminiaturize: New method. (-sendEvent:): Handle GSAppKitWindowMiniaturize an GSAppKitWindowFocusIn events. 2000-10-12 Fred Kiefer * Source/Parser/attributedStringConsumer.m Improved the memory handling in diverse methods. Fri Oct 13 16:50:23 2000 Nicola Pero * Tools/GNUmakefile: Include GNUmakefile.local.service if present. Fri Oct 13 10:48:05 2000 Nicola Pero * Source/GSSimpleLayoutManager.m: Prefixed ivar lineLayoutInformation with underscore to keep the gui to compile. 2000-10-12 Fred Kiefer * Headers/gnustep/gui/NSLayoutManager.h: Added some missing methods and move comments to .m file. Other clean ups. * Headers/gnustep/gui/NSDocumentFrameworkPrivate.h: Removed unneeded method _removeDocument. * Source/NSDocument.m: In [close] use removeDocument instead of _removeDocument. [initWithContentsOfFile:ofType:] call [self init] instead of [super init]. * Source/NSDocumentController.m: Use explicit Private interface. * Source/NSLayoutManager.m: Added comments from .h file. Return a GSSimpleLayoutManager from [allocWithZone]. Removed all compiler warnings. * Source/NSText.m: Use NSLayoutManager instead of GSSimpleLayoutManager. * Source/NSStringDrawing.m: Started reorganising the code. Wed Oct 11 10:51:56 2000 Nicola Pero * Source/NSApplication.m ([-run]), ([-runModalSession:]): Reverted last changes in autorelease pool code. In particular, switched back to creating and releasing an autorelease pool at each loop for modal sessions. 2000-10-09 Richard Frith-Macdonald * Source/GSTextStorage.m: ([-setAttributes:range:]): Fixed obscure bug - use ASSIGNCOPY rather than ASSIGN to prevent mutable dictionaries being placed in attributed string. 2000-10-09 Fred Kiefer * Source/GSTextStorage.m: (_setup()): corrected a problem from the last change Removed obsolete super calls in GSTextInfo coding methods. * Source/NSAttributedString.m: Small correction in [fixParagraphStyleAttributeInRange] 2000-10-08 Richard Frith-Macdonald * Source/GSTextStorage.m: Removed some dependencies on private classes of base library. 2000-10-02 Fred Kiefer * Source/NSWindow.m: ([_initBackendWindow]): always redisplay _wv ([setFrame:display:]): set the frame of _wv directly if deferred. These changes make the save panel usable again. * Source/NSStringDrawing.m: Convert glyphs to font encoding in drawRun(). Removed unused code. 2000-10-01 Fred Kiefer * Header/gnustep/gui/NSText.h: Moved ivar _textContainer from NSTextView to here. * Header/gnustep/gui/NSTextView.h: Removed ivar _textContainer. Added some delegate messages. Two new NSTextView like methods for text container handling. * Source/NSText.m: Moved the text container handling from NSTextView to here and corrected it. * Source/NSTextView.m: Use text container implementation from super class. * Source/NSLayoutManager.m: Implemented [firstTextView]. * Source/GSSimpleLayoutManager.h: Removed additional method [setFirstTextView] * Source/GSSimpleLayoutManager.m: Switched to use the text container for size information. Implemented [textContainerChangedGeometry]. * Source/NSTextContainer.m: In [setTextView] let the text view send frame changed notifications. Check text view in [_textViewFrameChanged:]. Don't add observer if text view is nil in [setHeightTracksTextView:] and [setWidthTracksTextView:] * Source/NSView.m: In [display] check if the _visibleRect is still valid. 2000-09-28 Adam Fedor * Source/NSGraphicsContext.m (-_addDragTypes:toWindow:): Change to take window object, since window number may not exist for deferred win. (-_removeDragTypes:fromWindow:):Likewise. (-_dragTypesForWindow:): Likewise. * Source/NSView.m: Change calling of above methods. * Source/NSWindow.m (-_initBackendWindow:): Reset the drag types if the window was deferred. Also reset title, min/max size, etc. (-setTitle:): Set only if we have a windowNum (-setMinimumSize:): Likewise. (-setMaximumSize:): Likewise. 2000-09-27 Adam Fedor * Implementation of deferred windows (with the help of mirko.viviani@rccr.cremona.it) * Source/NSClipView.m (-setBoundsOrigin:): Make sure window is not deferred before attempting to draw. * Source/NSMenu.m (-init): Defer window. * Source/NSView.m (-lockFocusInRect:): Don't lock if window is deferred. (-unlockFocus): Likewise. * Source/NSWindow.m (_initBackendWindow:): New method. (-initWithContentRect:styleMask:backing:defer:screen:): Use it if not deferring. (-orderWindow:relativeTo:): Create window if deferred. * Source/tiff.m (NSTiffRead): For PHOTOMETRIC_PALETTE, don't free colormap tables, they are owned by libtiff. 2000-09-26 Lyndon Tremblay * Source/NSMenu.m ([NSMenu -itemWithTitle:]): Use -isEqualToString: instead of -isEqual: ([NSMenu -performKeyEquivalent:]): Likewise. ([NSMenu -performActionForItemAtIndex:]): Use NSApp instead of sharedApplication. ([NSMenu -display]): Avoids calling NSMakePoint() ([NSMenu -displayTransient]): Cache contentView. ([NSMenu -closeTransient]): Likewise. * Source/NSApplication.m ([NSAppIconView -mouseDown:]): Use NSApp instead of [NSApplication sharedApplication]. ([NSApplication -init]): Avoid variables getting set twice. ([NSApplication -sendEvent:]): Cache NSEvent type. * Source/NSMenu.m ([NSMenu -initWithTitle:]): Also removed a bunch of message calls. Also removed variables getting set twice. ([NSMenu -insertItemWithTitle:action:keyEquivalent:atIndex:]): Message cleanup. * Source/NSApplication.m ([NSApplication +initialize]): Override Foundation's uncaught exception handler. ([NSApplication -init]): Save a few objc message calls. ([NSApplication -run]): Likewise. Also cache [NSDate distantFuture]. Also using GC macros. ([NSApplication -runModalSession:]): Also save message calls, and GC support. Also eliminates creating an ARP each loop, only once. * Headers/AppKit/NSPanel.h (NSAlert*): #defines to comply with MacOS X [apparently]. * Source/NSApplication.m (_NSAppKitUncaughtExceptionHandler): Added to show unhandled exceptions to the user in a cleaner way, providing an option to ignore or debug [future use]. Tue Sep 26 09:36:07 2000 Nicola Pero * NSControl.m ([-copyWithZone:]): Fixed memory problem (found by Frederic De Jaeger). 2000-09-22 Lyndon Tremblay * Source/NSBundleAdditions.m ([+loadNibFile:externalNameTable:withZone:]): access NSOwner from infoDict only when necessary, notify of loading nib. * Model/GMAppKit.m: Removed silly emacs C++ mode tag. * Model/IMLoading.m: Likewise. 2000-09-19 Richard Frith-Macdonald * Source/GSTextStorage.m: ([-string]) fix to return autoreleased copy rather than internal data - pointed out by Fred. * Source/NSText.m: ([-string]) don't copy 2000-09-13 Fred Kiefer * Source/GSSimpleLayoutManager.m: * Source/GSSimpleLayoutManager.h: New file extracted from NSText.m. This class is now a subclass of NSLayoutManager and uses a similar interface. * Source/GNUmakefile: Include new file GSSimpleLayoutManager.m * Header/gnustep/gui/NSText.h: Two new NSTextView like methods. * Source/NSText.m: Removed GSSimpleLayoutManager code and use new interface to it. * Source/NSTextView.m: [initWithFrame:] switch of the creation of a NSLayoutManager. 2000-09-16 Adam Fedor * Headers/gnustep/gui/NSWindowController.h: Add copyright notice. Protect with #ifdef's. 2000-09-14 Mirko Viviani * Source/NSPanel.m ([GSAlertPanel -initWithContentRect:styleMask:backing:defer:screen:]): set alternate return image. * Source/NSOpenPanel.m ([NSOpenPanel -controlTextDidEndEditing:]): removed. * Source/NSSavePanel.m ([NSSavePanel -controlTextDidEndEditing:]): repost currentEvent. ([NSSavePanel -_initWithoutGModel]): removed form cell action, set _okButton image. ([NSSavePanel -_performReturn:]): removed. * Images/common_retH.tiff: new file. * Images/GNUmakefile (IMAGE_FILES): update. Thu Sep 14 14:01:10 2000 Nicola Pero * Source/NSMatrix.m ([-textDidBeginEditing:]), ([-textDidChange:]), ([-textDidEndEditing:]): : Fixed memory leak. 2000-09-13 Mirko Viviani * Source/NSBrowser.m ([NSBrowser -_performLoadOfColumn:]): fixed intercell space values. * Source/NSText.m ([NSText -keyDown:]): removed forward for illegal text field events. * Source/NSSavePanel.m ([NSSavePanel -controlTextDidEndEditing:]): implemented for text field movement. ([NSSavePanel -_performReturn:]): new private method. ([NSSavePanel -_initWithoutGModel]): set form cell action to _performReturn: * Source/NSOpenPanel.m ([NSOpenPanel -controlTextDidEndEditing:]): call super. ([NSOpenPanel -_selectCellName:]):, ([NSOpenPanel -controlTextDidChange:]): enable okButton if there is text in the text field. ([NSOpenPanel -ok:]): returns if nothing selected. * Tools/gpbs.m ([PasteboardEntry -lostOwnership]): removed workaround. 2000-09-13 Fred Kiefer * Source/GSFontInfo.m: [encodingForRegistry:encoding:] added more encodings Tue Sep 12 22:53:22 2000 Nicola Pero * Model/GMAppKit.m ([NSMenuItem -initWithModelUnarchiver:]): Updated, fixed code for the recent changes in NSMenu, NSMenuItem. ([NSMenu -initWithModelUnarchiver:]): Idem. 2000-09-11 Mirko Viviani * Source/NSText.m ([NSText -moveLeft:sender]): deselect text that starts at the beginning of the line. 2000-09-11 Mirko Viviani * Source/NSBrowser.m ([NSBrowser -_performLoadOfColumn:]): set intercell spacing to 0. * Source/NSMatrix.m ([NSMatrix -mouseDown:]): in NSRadioModeMatrix deselect the previous selected cell only if the cell is valid. 2000-09-10 Mirko Viviani * Tools/gpbs.m ([PasteboardEntry -lostOwnership]): workaround to avoid core dump due to NSConnection bug. * Source/NSWindow.m ([NSWindow -keyDown:]): discard and do not perform key equivalent for null character events. Triggered return key for default button cell. ([NSWindow -defaultButtonCell]), ([NSWindow -setDefaultButtonCell:]), ([NSWindow -disableKeyEquivalentForDefaultButtonCell]), ([NSWindow -enableKeyEquivalentForDefaultButtonCell]): implemented. ([NSWindow -dealloc]): release _defaultButtonCell * Headers/AppKit/NSWindow.h: added ivar and flag. * Source/NSOpenPanel.m ([NSOpenPanel -controlTextDidEndEditing:]), ([NSOpenPanel -controlTextDidChange:]), ([NSOpenPanel -ok:]): implemented keyboard navigation. ([NSOpenPanel -runModalForDirectory:file:types:]): do not allow branch selection if can't choose directories. ([NSOpenPanel -_selectTextInColumn:]), ([NSOpenPanel -_selectCellName:]): new private methods. ([NSOpenPanel -filenames]): change for choose dirs. * Source/NSText.m ([NSText -keyDown:]): forwards text field illegal events to the next responder. * Source/NSBrowser.m ([NSBrowser -moveUp:]), ([NSBrowser -moveDown:]), ([NSBrowser -moveLeft:]), ([NSBrowser -moveRight:]), ([NSBrowser -keyDown:]): implemented keyboard navigation ([NSBrowser -selectedCell]), ([NSBrowser -selectedCells]), ([NSBrowser -columnOfMatrix:]), ([NSBrowser -selectedColumn]): changed return value from NSNotFound to -1 to conforms to NSMatrix ([NSBrowser -doClick:]): fix for new return values, added support for multiple and branch selection. ([NSBrowser -setLastColumn:]): mark column titles need display ([NSBrowser -_getTitleOfColumn:]): fix for multiple selection. * Source/NSCell.m ([NSCell -setState:]): bug fix: set value to NSOnState if someone try to set NSMixedState in a two state cell. ([NSCell -performClick:]): do not perform click if the cell is disabled. * Source/NSMatrix.m ([NSMatrix -_privateFrame:mode:numberOfRows:numberOfColumns:]), ([NSMatrix -deselectAllCells]), ([NSMatrix -deselectSelectedCell]), ([NSMatrix -selectAll:]): bug fix: set _selectRow and _selectColumn to -1 when no cells are selected ([NSMatrix -performKeyEquivalent:]): saves _selectedRow and _selectedColumn. ([NSMatrix -getRow:column:ofCell:]): check for null values for row and column. ([NSMatrix -selectCellAtRow:column:]): deselect the current selection only in NSRadioModeMatrix mode. ([NSMatrix -mouseDown:]): use the new code also for NSRadioModeMatrix and fix for this mode. * Source/NSSavePanel.m ([NSSavePanel -selectCellWithString:]): select text of the cell and enable okButton. ([NSSavePanel -controlTextDidChange:]): implemented. ([NSSavePanel -controlTextDidEndEditing:]): removed. ([NSSavePanel -browser:createRowsForColumn:inMatrix:]): follows symbolic links. ([NSSavePanel -_initWithoutGModel]): set browser doubleAction to performClick: of the _okButton. Set _okButton as default window button. Disable _okButton. ([NSSavePanel -browser:selectCellWithString:inColumn:]), ([NSSavePanel -selectText:]), ([NSSavePanel -keyDown:]): implemented keyboard navigation. ([NSSavePanel -runModalForDirectory:file:]): enable _okButton if filename is valid. ([NSSavePanel -_selectTextInColumn:]), ([NSSavePanel -_selectText:]), ([NSSavePanel -_selectCellName:]): new private methods. Sun Sep 10 23:33:55 2000 Nicola Pero * Source/NSTextView.m ([-initWithFrame:textContainer:]): Fixed the setting of the text view as the text container's text view (patch prepared in cooperation with Georg Fleischman ). Sun Sep 10 23:07:45 2000 Nicola Pero * Source/NSMatrix.m ([-initWithCoder:]), ([-encodeWithCoder:]): Implemented. Sun Sep 10 16:49:50 2000 Nicola Pero * Headers/gnustep/gui/NSMatrix.h: Prefixed all ivars with underscore. * Source/NSMatrix.m: Updated for change in ivars. * Source/NSForm.m ([-calcSize]): Idem. Sun Sep 10 16:17:36 2000 Nicola Pero * Source/NSTableColumn.m ([-initWithIdentifier:]): Made column editable by default. * Source/NSTableHeaderView.m ([-mouseDown:]): Do not start resizing if the column is not resizable. * Source/NSTableView.m ([-mouseDown:]): Do not start editing if the column is not editable. Fri Sep 8 18:42:10 2000 Nicola Pero * Source/NSWindow.m ([-setFrame:display:]): Call [-constrainFrameRect:toScreen:] before resizing. ([-constrainFrameRect:toScreen:]): Rewritten to be compliant with specs. ([-initWithContentRect:styleMask:backing:defer:screen:]): Do not set maximum size as the size of the screen. 2000-09-08 Richard Frith-Macdonald * Source/NSMenu.m: ([-setSupermenu:]) don't retain supermenu. * Source/NSMenuItem.m: ([-setSubmenu:]) set target and action for handling submenu, and set supermenu for submenu. ([-setMenu:]) if item has a submenu, set supermenu for submenu of item, and set target to be the new menu, so clicking on this item will raise the submenu. 2000-09-08 Fred Kiefer * Source/NSText.m: Changed varius places to make more consistent. Thu Sep 7 21:46:33 2000 Nicola Pero * Source/NSTableColumn.m ([-setWidth:]): Post the old width in the notification user info. * Source/NSTableView.m ([-mouseDown:]): Fixed clicking on the table with shift pressed when multiple selection is not allowed. ([-_selectColumn:modifiers:]): Idem for clicks on the table header view. ([-removeTableColumn:]): Rearrange selection if needed. ([-moveColumn:toColumn:]): Implemented. ([-sizeLastColumnToFit]): Allow shrinking last column if needed. Thu Sep 7 17:47:46 2000 Nicola Pero * Source/NSStringDrawing.m ([NSAttributedString -drawInRect:]): Use NSRectClip as a temporary workaround for the fact that the string is to be drawn only inside rect. Thu Sep 7 17:01:58 2000 Nicola Pero * Headers/gnustep/gui/NSTableHeaderView.h: Added ivar for resized column. * Source/NSTableHeaderView.m ([-setTableView:]): Initialize resized column ivar. ([-resizedColumn:]): Implemented. ([-mouseDown:]): Implemented resizing of columns. * Headers/gnustep/gui/NSTableView.h: Added ivar for allowing column resizing. * Source/NSTableView.m ([-allowsColumnResizing]), ([-setAllowsColumnResizing:]): Implemented. ([-initWithFrame:]): Allow column resizing by default. ([-_userResizedTableColumn:leftWidth:rightWidth:]): New private method. Thu Sep 7 14:56:47 2000 Nicola Pero * Source/NSSplitView.m ([-mouseDown:]): Removed periodic events. Do not ask window to track mouse moved events. Only accept left mouse dragged and left mouse up events during dragging. Thu Sep 7 02:56:25 2000 Nicola Pero * Source/NSApplication.m ([-_windowWillClose:notification]): Use NSDebugLog instead of NSLog to log asking to delegate whether to terminate app. Wed Sep 6 16:44:30 2000 Nicola Pero * Source/NSBrowser.m: Cache scrollerWidth in the whole class; removed empty view from NSBrowserColumn. ([-_unloadFromColumn:]): Use nil instead of empty view. ([-setDelegate:]): Do not retain delegate. ([-pathToColumn:]): Fixed memory leak. Wed Sep 6 14:51:36 2000 Nicola Pero * Model/GMAppKit.m ([NSWindow -initWithModelUnarchiver:]): Updated code for the new NSWindow ivars. Tue Sep 5 23:13:21 2000 Nicola Pero * Source/NSControl.m ([-objectValue]), ([-takeObjectValueFrom:]), ([-setObjectValue:]): Implemented. * Headers/gnustep/gui/NSControl.h: Added declarations of the new methods. Tue Sep 5 18:52:57 2000 Nicola Pero * Headers/gnustep/gui/NSWindow.h, Source/NSWindow.m: Prefixed all ivars with underscores. * Source/NSApplication.m ([NSIconWindow -_initDefaults]): Updated for change in NSWindow's ivars. * Source/NSMenu.m ([NSMenuWindow -_initDefaults]), ([NSMenuWindow -moveToPoint:]): Idem. * Source/NSView.m ([-lockFocusInRect:]), ([-unlockFocusNeedsFlush:]): Idem. Tue Sep 5 17:55:17 2000 Nicola Pero * Source/NSTextContainer.m ([-setHeightTracksTextView:]), ([-setWidthTracksTextView:]): Register for notifications if we need. ([-setTextView:]): Only remove us from notifications regarding the old text view; register for notifications only if we need. ([-_textViewFrameChanged:]): Don't track height if we only need to track width and vice versa. Tue Sep 5 03:04:41 2000 Nicola Pero * Source/NSApplication.m ([-terminate:]): Post NSApplicationWillTerminateNotification. ([-setDelegate:]): Register the delegate for NSApplicationWillTerminateNotification. Tue Sep 5 00:31:50 2000 Nicola Pero * Source/NSClipView.m ([-encodeWithCoder:]), ([-initWithCoder:]): Implemented. * Source/NSScroller.m ([-encodeWithCoder:]), ([-initWithCoder:]): Implemented. * Source/NSScrollView.m ([-initWithCoder:]): Fixed typos; support headerview, cornerview; tile after decoding. 2000-09-03 Fred Kiefer * Headers/gnustep/gui/NSTypesetter.h: New file. * Source/NSSimpleHorizontalTypesetter.m: As above. Added some basic implementation. * Source/NSTextView.m Use more implementation from super to make this class temporary working Mon Sep 4 03:53:06 2000 Nicola Pero * Source/NSButton.m ([-keyDown:]): Updated for fix in generation of key events in the backend. * Source/NSMatrix.m ([-keyDown:]): Idem. * Source/NSResponder.m ([-interpretKeyEvents:]): Idem. * Source/NSWindow.m ([-keyDown:]): Idem. 2000-09-03 Fred Kiefer * Source/GSFontInfo.m: [weightForString:] added "black" * Source/NSAttributesString.m: Corrected bug in [nextWordFromIndex:forward:] Sun Sep 3 21:20:25 2000 Nicola Pero * Source/NSSliderCell.m ([-init]): Create titleCell. ([-drawKnob]), ([-drawKnob:]): Access control_view ivar. Sun Sep 3 20:57:32 2000 Nicola Pero * Source/NSBrowser.m ([-drawRect:]): Simplifications; do not lock focus before drawing scroller border. * Source/NSScroller.m Cache scrollBarColor. ([-drawRect:]): Only redraw the interested parts using a little cache. ([-drawKnobSlot]): Cache rect. ([-setFrameSize:]), ([-setFrame:]), ([-setArrowsPosition:]), ([-setEnabled:]): Invalidate little cache. * Headers/gnustep/gui/NSScroller.h: Added ivar for caching rects. * Source/NSSlider.m (_floatValueForMousePoint): New inline function replacing [-_floatValueForMousePointknobRect:]. ([-trackKnob:knobRect:]), ([-mouseDown:]): Use the new inline function. ([-trackKnob:knobRect:]): Tiny caching. ([-mouseDown:]): Use flag for flipped. * Source/NSTableView.m ([-drawRect:]): Only fill background in rect argument. * Source/NSBrowser.m ([-_performLoadOfColumn:]): Release matrix sooner. * Source/NSCell.m ([-dealloc]): Use NSDeallocateObject. * Source/NSSavePanel.m ([-browser:createRowsForColumn:inMatrix:]): Use an autorelease pool; avoid creating the column if it is void. * Source/NSTableHeaderCell.m ([-drawWithFrame:inView:]): Fixed typo: self, not super. 2000-09-02 Fred Kiefer * Source/GSFontInfo.m: Added missing RETAINs. * Source/NSBrowser.m * Source/NSFontPanel.m * Source/NSLayoutManager.m * Source/NSMenu.m * Source/NSMenuItemCell.m * Source/NSMenuView.m * Source/NSPanel.m * Source/NSStringDrawing.m * Source/NSTableHeaderCell.m * Source/NSTabView.m * Source/NSText.m: Changed system fonts of size 12 to 0. This will use Nicolas font cache and keep font sizes consistent when changed. 2000-09-01 Fred Kiefer * Headers/gnustep/gui/GSFontInfo.h: * Source/GSFontInfo.m: Added class methods [weightForString:], [stringForWeight:] and [encodingForRegistry:encoding:] to be used in subclasses. Sat Sep 2 01:34:19 2000 Nicola Pero * Source/NSFont.m ([+boldSystemFontOfSize:]), ([+systemFontOfSize:]), ([+userFixedPitchFontOfSize:]), ([+userFontOfSize:]): Cache font of size 0. (setNSFont): Mark caches as needing to be recomputed. Fri Sep 1 22:34:55 2000 Nicola Pero * Source/NSBrowser.m ([-_performLoadOfColumn:]): Fixed memory leak. Fri Sep 1 13:02:45 2000 Nicola Pero * Source/NSTableView.m ([-textDidEndEditing:]): Implemented Tab, Shift+Tab. ([-_editPreviousEditableCellBeforeRow:column:]), ([-_editPreviousEditableCellBeforeRow:column:]): New private methods. (_isCellSelectable): New private inline function. Fri Sep 1 12:01:36 2000 Georg Fleischmann * Source/NSTabView.m ([-drawRect:]): Redraw using bounds instead of rect. Fri Sep 1 00:56:05 2000 Nicola Pero * Source/NSColorPanel.m ([+dragColor:withEvent:fromView:]): Fixed event coordinate. 2000-08-31 Fred Kiefer * Headers/gnustep/gui/NSFont.h: Removed method -widths, as this is no longer needed. * Headers/gnustep/gui/GSFontInfo.h: Removed ivar and method widths. Changed ivar weigth to type int and added ivars traits and mostCompatibleStringEncoding. * Source/NSFont.m: Removed method -widths * Source/GSFontInfo.m: Removed method -widths. Changed [weigth], [mostCompatibleStringEncoding] and [traits] to return the ivars. Set those in [init] to the default values. Thu Aug 31 00:30:15 2000 Nicola Pero * Source/NSSavePanel.m ([-_initWithoutGModel]): Fixed setting of min size. ([-_getOriginalSize]): Fixed getting content size. ([-setAccessoryView:]): Updated, fixed. Wed Aug 30 19:36:19 2000 Nicola Pero * Source/NSForm.m ([-insertEntry:atIndex:]): Moved some code to ([putCell:atRow:column:]). ([-putCell:atRow:column:]): New method. (patch prepared in cooperation with Georg Fleischmann ) Wed Aug 30 13:07:06 2000 Nicola Pero * Headers/gnustep/gui/NSMatrix.h: Added ivar for key cell; added declaration of ([-setKeyCell:]). * Source/NSMatrix.m ([-keyCell]), ([-setKeyCell:]): Implemented. ([-selectText:]): Select keyCell if appropriate. ([-keyDown:]): Select text if the key is enter. Wed Aug 30 12:07:46 2000 Nicola Pero * Source/NSSavePanel.m ([-_initWithoutGModel]): Set browser's double action and target so that double clicking on an entry opens it. Tue Aug 29 20:07:23 2000 Nicola Pero Implemented object value and formatter support in NSCell and controls. * Headers/gnustep/gui/NSCell.h: Added ivars for formatter, object value and a new flag to cache whether the cell has a valid object value or not. * Source/NSCell.m ([-dealloc]), ([-copyWithZone:]): Added object value and formatter. ([-setFormatter:]), ([-formatter]): Implemented. ([-setIntValue:]), ([-setFloatValue:]), ([-setDoubleValue:]): Rewritten, updated. ([-setObjectValue:]): Rewritten, updated. ([-hasValidObjectValue]), ([-objectValue]): Implemented. ([-editWithFrame:inView:editor:delegate:event:]): Use string provided by formatter. ([-encodeWithCoder:]): Added formatter, object value. ([-initWithCoder:): Added formatter, object value; recompute has_valid_object_value flag. * Headers/gnustep/gui/NSControl.h: Added declaration of methods implemented by the delegate for validation using a formatter. * Source/NSTextField.m ([-validateEditing]): Added validation using NSFormatter. ([-textShouldEndEditing:]): Added validation of object value. ([-textDidChange:]): Skeleton and some code for validation while typing. * Source/NSMatrix.m ([-validateEditing]), ([-textShouldEndEditing:]), ([-textDidChange:]): Same changes as in Source/NSTextField.m. * Source/NSTableView.m ([-validateEditing]), ([-textShouldEndEditing:]): Idem. * Source/NSMatrix.m ([-drawCell:]): Implemented. * Source/NSMatrix.m, Source/NSTextField: Cache the default notification center for the whole class. * Source/NSTableView.m ([-mouseDown:]): Double clicking starts editing only if row is selected. 2000-08-26 Georg Fleischmann * gui/Source/NSApplication.m ([-NSApplication run]): Don't update menu for NSPeriodic and NSMouseMoved events. 2000-08-27 Fred Kiefer * Source/NSFontPanel.m: Changed to tags for all subviews to prepare for the switch to gmodel. ([-panelConvertFont:]): corrected to not return nil. * Header/gnustep/gui/NSFontPanel.h: Removed ivars for subviews. * Source/NSFontManager.m ([-convertWeight:ofFont:]): Better conversion. * Source/NSView.m: ([-viewWithTag:]): Corrected bug in optimisation for first sub-level. * Header/gnustep/gui/NSLayoutManager.h * Source/NSLayoutManager.m: Started cleanup of code. * Source/NSTextStorage.c ([-edited:range:changeInLength:]), ([-processEditing]): Corrected reported range. Sun Aug 27 19:11:59 2000 Nicola Pero * Source/NSTableView.m ([-initWithFrame:]): Bug fix in initialization of selecting/editing ivars. Sat Aug 26 22:55:55 2000 Nicola Pero * Source/NSText.m: Cache the default notification center for the whole class. Sat Aug 26 19:25:17 2000 Nicola Pero Implemented selection of rows and columns in NSTableView: * Headers/gnustep/gui/NSTableView.h: Added ivars for selection of rows and columns. * Source/NSTableView.m ([-initWithFrame:]): Initialize the selection ivars. ([-dealloc]): Release the selected row and column arrays. ([-setAllowsMultipleSelection:]), ([-allowsMultipleSelection]), ([-setAllowsEmptySelection:]), ([-allowsEmptySelection]), ([-setAllowsColumnSelection]), ([-allowsColumnSelection]), ([-numberOfSelectedColumns]), ([-numberOfSelectedRows]), ([-selectedRow]), ([-selectedColumn]), ([-isColumnSelected:]), ([-isRowSelected:]), ([-selectedColumnEnumerator]), ([-selectedRowEnumerator]): ([-selectRow:byExtendingSelection:]), ([-selectColumn:byExtendingSelection:]), ([-deselectColumn:]), ([-deselectRow:]), ([-deselectAll:sender]), ([-selectAll:]), ([-highlightSelectionInClipRect:]): Implemented. ([-mouseDown:]): Manage selection. ([-drawRect:]): Draw selection. (_deselectRowsInRange), (_selectionChange), (_selectRowsInRange), (_insertNumberInSelectionArray): New internal functions. ([-_selectColumn:modifiers:]): New method; ([-_setSelectingColumns:]): New internal method. * Source/NSTableHeaderView.m ([-mouseDown:]): Implemented simple selection of columns; some code for dragging. * Source/NSTableView.m: Cache the default notification center for the whole class. ([-isOpaque]): Added method. 2000-08-25 Adam Fedor * GMAppKit.m ([NSTextView -encodeWithModelArchiver:]): Test if object responds to allowsUndo. 2000-08-25 Fred Kiefer * Source/Parser/RTFProducer.m ([-runStringForString:attributes:paragraphStart:]): Improved output of bold/italic formating. * Source/Parser/rtfScanner.c Corrected function gethex(). 2000-08-19 Georg Fleischmann * gui/Source/NSView.m ([NSView -removeSubview:]): check if any superview of the first responder is the view to be removed 2000-08-15 Georg Fleischmann * gui/Source/NSText.m ([NSText -sizeToFit:]): 'else' removed to allow resize of height and width (scanRange()): line 1032: +1 to avoid infinite loop for single character line 1011, 1047: '>' instead of '>=' Thu Aug 17 08:51:45 2000 Adam Fedor * Headers/gnustep/gui/NSLayoutManager.h: Add hyphenation prototypes (patch from Jeff Teunissen ). 2000-08-07 Adam Fedor * Merge 0.6.6 branch into main. 2000-08-03 Richard Frith-Macdonald * Headers/gnustep/gui/NSEvent.h: Support middle mouse button * Headers/gnustep/gui/NSResponder.h: ditto * Source/Functions.m: ditto * Source/GSComboSupport.m: ditto * Source/NSApplication.m: ditto * Source/NSCell.m: ditto * Source/NSControl.m: ditto * Source/NSEvent.m: ditto * Source/NSGraphicsContext.m: ditto * Source/NSMenuView.m: ditto * Source/NSResponder.m: ditto * Source/NSWindow.m: ditto 2000-07-30 Richard Frith-Macdonald * Source/NSBundleAdditions.m: patch by borgheron@yahoo.com to simplify loading of gmodel files. 2000-08-06 Adam Fedor * Version 0.6.6 released. Sun Aug 6 18:43:13 2000 Nicola Pero * Source/NSBrowser.m ([NSBrowser -doClick:]): Removed safety check which was preventing subclasses of NSBrowserCell to work properly with a browser. Sat Aug 5 02:03:24 2000 Nicola Pero * Source/NSTextFieldCell.m ([NSTextFieldCell -initTextCell:]): Reverted last change - do not draw background by default. 2000-08-04 Adam Fedor * Source/NSWorkspace.m ([_GSWorkspaceCenter -postNotification:]): Add user default "GSLogWorkspaceTimeout" to log rather than raise an exception during remote notification. 2000-08-03 Adam Fedor * Source/NSWindow.m (-setFrameFromString:): Don't set display flag if window not visible. * Source/NSBezierPath.m (-initWithCoder): Don't call super. (encodeWithCoder:): Likewise. 2000-08-02 Adam Fedor * Version: Update version number * Documentation/announce.tmpl.texi: Update * Documentation/readme.tmpl.texi: Likewise. * Documentation/news.tmpl.texi: Likewise. * Documentation/todo.tmpl.texi: Likewise. * ANNOUNCE, BUGS, NEWS, README: Regenerate 2000-08-2 Fred Kiefer * Source/NSText.m Changed the handling of the selection. The selection now only gets drawn inside of drawRect: otherwise it is just flaged as needing a redraw. 2000-08-01 Adam Fedor * Source/NSWindow.m ([NSMiniWindow -mouseDown:]): Use NSWindow's -deminiaturize. 2000-07-31 Fred Kiefer * Source/NSBundleAdditions.m Removed super calls in coding for GSNibContainer and GSNibItem to remove compiler warnings * Source/NSTextFieldCell.m [initTextCell:] switch drawsBackground on. * Source/NSText.m [initWithFrame:] switch drawsBackground on. 2000-07-31 Richard Frith-Macdonald * Source/NSColor.m: ([-description]) corrected to remove quotes from string listing color components. problem reported by Benhur Stein 2000-07-31 Fred Kiefer * Source/NSTextView.m Use [drawRect:] from super. * Source/NSText.m Added method [undrawSelectionAsRange:], this only shows the cursor if [shouldDrawInsertionPoint] is YES. In [mouseDown:] only make first responder if editable. Also increase the proposed range to include the last character into the selection. 2000-07-30 Adam Fedor * Source/NSBundleAdditions.m (+loadNibFile:externalNameTable:withZone:): Read as gmodel if it has proper extension. (-loadNibFile:externalNameTable:withZone:): Fix a few bugs in determining proper extension. (patch from Gregory Casamento ). Sun Jul 30 01:33:15 2000 Nicola Pero * Source/NSText.m ([NSText -moveRight:]): ([NSText -moveLeft:]), ([NSText -moveUp:]), ([NSText -moveDown:]): Tidied; removed call to selectionRangeForProposedRange:granularity:. ([NSText -selectionRangeForProposedRange:granularity:]): Tidied, fixed some bugs showing upon selecting text by words and deleting text. 2000-07-01 Fred Kiefer * Source/NSFileWrapper.m [initWithPath:] always store full pathname in filename. This may be wrong but now it is consistent in this file. [writeToFile:atomically:updateFilenames:] set attributes for normal files. * Source/NSAttributedString.m [fixAttributesInRange:] added fix of attachments Thu Jul 20 16:00:14 2000 Nicola Pero * Source/NSApplication.m ([-init]): Enclosed all initialization into an autorelease pool as per specifications; moved initialize_gnustep_backend () here so it is enclosed in the autorelease pool too. 2000-07-19 Adam Fedor * Source/NSApplication.m (+sharedApplication): Initialize backend here instead of NSApplicationMain(). * Source/NSGraphicContext.m (+waitAllContexts): New method. * Documentation/news.tmpl.texi: Update. * Documentation/todo.tmpl.texi: Update. 2000-07-16 Adam Fedor * GNUmakefile: Make PrinterTypes subdir. * PrinterTypes/GNUmakefile: New file to install ppd files. * PrinterTypes/GNUmakefile.postamble: Likewise. * Source/NSPrinter.m (getFile): Use NSBundle methods. (+printerTypes): Simplify with use of NSBundle methods. 2000-07-14 Adam Fedor * Source/NSApplication.m (-run): Do appIconInit here so NSApp can be set-up without showing icon. 2000-07-06 Richard Frith-Macdonald * Source/GNUmakefile: Install GSFontInfo.h 2000-07-04 Richard Frith-Macdonald * Source/GSServicesManager.m: Update port name servr for revised API compatible with MacOS-X 2000-07-03 Richard Frith-Macdonald * Tools/gpbs.m: Fix for OPENSTEP complient DO 2000-07-01 Fred Kiefer * Source/NSFileWrapper.m Corrected decoding and added a RETAIN in [initWithSerializedRepresentation:] * Source/Parser/RTFProducer.m * Source/Parser/RTFProducer.h * Source/Parser/attributedStringConsumer.m * Source/Parser/rtfConsumer.h Added new methods to read/write RTFD and resturctured the methods for RTF. * Source/NSAttributedString.m Use new RTFD methods 2000-07-01 Fred Kiefer * Source/NSFileWrapper.m Implemented coding and replaced [initWithSerializedRepresentation:] and [serializedRepresentation] to use it. * Source/NSText.m Changed Font/Ruler pasting to use an Archiver * Source/NSTextView.m [setAllowsUndo:] and [allowsUndo] now use ivar 2000-06-29 Adam Fedor * Source/NSText.m (-setFont:): Return if font==nil. * Source/NSTextView.m (setAllowsUndo:, allowsUndo): Stub implementation. * Source/Functions.m (NSApplicationMain): Call NSProcessInfo initialization if GS_PASS_ARGUMENTS. * Tools/example.m: Likewise. * Tools/gpbs.m: Likewise. * Tools/make_services.m: Likewise. * Tools/set_show_services.m: Likewise. Tue Jun 27 19:35:54 2000 Nicola Pero * Source/NSButton.m ([-allowsMixedState]): Implemented. ([-setAllowsMixedState:]): Idem ([-setNextState]): Idem. * Headers/AppKit/NSButton.h: Added corresponding declarations. 2000-06-26 Fred Kiefer * Source/NSFileWrapper.m Added a crude implemention for [initWithSerializedRepresentation:] and [serializedRepresentation]. Also scattered some AUTORELEASE and RELEASE statements. * Source/NSPasteboard.m [readFileContentsType:toFile:] and [writeFileContents:] now use file wrappers to use the same format as the new methods. * Source/NSText.m Turn on NSFileContentsPboardType in [readablePasteboardTypes]. 2000-06-26 Richard Frith-Macdonald * Source/NSAttributedString.m: attachmentString() - retain newly created string. 2000-06-26 Fred Kiefer * Headers/AppKit/NSTextAttachment.h * Source/NSTextAttachment.m * Source/NSAttributedString.m Added a basic implementation for NSTextAttachment and NSTextAttachmentCell and use it in NSAttributedString. * Source/GNUmakefile Include new file NSTextAttachment.m * Source/NSText.m Changed the font and ruler pasting and removed some other FIXMEs * Headers/AppKit/NSPasteboard.h * Source/NSPasteboard.m Added two missing methods for file wrapper 2000-06-25 Fred Kiefer * Source/Parser/attributedStringConsumer.m * Source/Parser/rtfConsumerFunctions.h * Source/Parser/rtfScanner.c * Source/Parser/rtfGrammer.y Added support for RTF special characters and extra paragraph attributes * Source/Parser/RTFProducer.m * Source/Parser/RTFProducer.h New files for RTF output, code comes partly from Source/NSAttributedString * Source/GNUmakefile Include new file Parser/RTFProducer.m until it gets its own bundle * Source/NSAttributedString.m Moved RTF output code to Source/Parser/RTFProducer.m Corrected [fixParagraphStyleAttributeInRange:] and removed all the location < 0 checks as location is unsigned. * Source/NSFontManager.m Allow for a loosier conversion in [fontWithFamily:traits:weight:size:] Wed Jun 21 19:42:12 2000 Nicola Pero * NSCell.m ([-objectValue]): Placeholder implementation returning the same as stringValue. Alpha implementation of editing in NSTableView. * Source/NSTableView.m ([-setDelegate:]): Check whether delegate is editable. ([-drawRow:clipRect:]): Don't draw over the edited cell. ([-mouseDown:]): Added editing. ([-abortEditing]): Implemented. ([-currentEditor]): Idem. ([-validateEditing]): Idem. ([-editedRow]): Idem. ([-editedColumn]): Idem. ([-textDidBeginEditing:]): Idem. ([-textDidEndEditing:]): Idem. ([-textShouldBeginEditing:]): Idem. ([-textShouldEndEditing:]): Idem. ([-textDidChange:]): Idem. Tue Jun 20 20:22:34 2000 Nicola Pero * Headers/AppKit/NSTableView.h: Added editing related ivars. Mon Jun 19 19:16:15 2000 Nicola Pero * Source/NSText.m ([-selectionRangeForProposedRange:granularity:]): Fixed crash when moving past the end of text. 2000-06-16 Adam Fedor * Source/GSFontInfo.m (-mutableCopyWithZone:): New method. 2000-06-19 Fred Kiefer * Headers/gnustep/gui/GMAppKit.h * Model/GMAppKit.m Added archiving of NSText and NSTextView 2000-06-17 Fred Kiefer * Source/Parser/attributedStringConsumer.m * Source/Parser/rtfConsumer.h * Source/Parser/rtfConsumerFunctions.h * Source/Parser/rtfScanner.h * Source/Parser/rtfScanner.y * Source/Parser/rtfGrammer.y Extended support for RTF. Added underline, script, colour and tailindent. Fri Jun 16 21:05:49 2000 Nicola Pero * Source/NSText.m ([NSText -scrollRangeToVisible:aRange]): Don't try scrolling an ancestor clipview if we are field editors. Fri Jun 16 19:32:11 2000 Nicola Pero Implemented double-click on NSTableView header and not editable cells. * Headers/AppKit/NSTableView.h: Added ivars _clickedRow, _clickedColumn, _target; added declaration of private method below. * Source/NSTableView.m ([-setTarget:]): Implemented. ([-target]): Idem. ([-clickedColumn]): Idem. ([-clickedRow]): Idem. ([-mouseDown:]): Implemented double-click to send double action when cell is not editable. ([-_sendDoubleActionForColumn:]): New private method for use by NSTableHeaderView. * Source/NSTableHeaderView.m ([-mouseDown:]): Implemented double-click. * Source/NSTableView.m ([-scrollColumnToVisible:]): Tiny fix for coordinate change. ([-scrollRowToVisible:]): Idem. 2000-06-16 Fred Kiefer * Source/Parser/attributedStringConsumer.m * Source/Parser/rtfConsumer.h * Source/Parser/rtfConsumerFunctions.h * Source/Parser/rtfScanner.h * Source/Parser/rtfScanner.y * Source/Parser/rtfGrammer.y Extended support for RTF. It is possible to read in the OpenStep specification now! * Source/NSAttributedString.m Use new RTF interface in initWithRTF:documentAttributes: (Will change once more if we use a separat bundle) Implemented attributedStringWithAttachment: * Source/NSTextStorage.m Corrected problem in processEditing. The change range got to big after repeated adding at the end. * Source/NSText.m Made setAlignment:range: save against missing paragraph style Fri Jun 16 18:59:44 2000 Nicola Pero * Source/NSTableView.m ([NSTableView -scrollRowToVisible:]): Don't need to constrainScrollPoint before calling scrollToPoint. ([-scrollColumnToVisible:]): Idem. * Source/NSView.m ([-scrollPoint:]): Idem. ([-scrollRectToVisible:]): Idem. ([-scrollPoint:]): Don't send reflectScrolledClipView to the clipview's superview. Fri Jun 16 10:18:29 2000 Nicola Pero * Source/NSTableView.m ([-scrollColumnToVisible:]): Updated for last changes in scrollview code. Thu Jun 15 20:29:13 2000 Nicola Pero * Source/NSView.m ([-scrollRectToVisible:]): Don't need to send reflectScrolledClipView to the clipview's superview. This is done automatically by the clipview. Thu Jun 15 20:09:55 2000 Nicola Pero * Source/NSScrollView.m ([-reflectScrolledClipView:]): If needed, scroll the header view too. Thu Jun 15 15:25:32 2000 Nicola Pero * Source/NSTableView.m ([-columnAtPoint:]): Fixed fatal typo. Tue Jun 13 19:36:37 2000 Nicola Pero * Source/NSTableView.m ([-scrollRowToVisible:]): Implemented. ([-scrollColumnToVisible:]): Implemented. Tue Jun 13 17:22:24 2000 Nicola Pero * Source/NSCell.m ([-copyWithZone:]): Copy all cell's attributes [bug reported by Frederic De Jaeger]; simplified. 2000-06-11 Jonathan Gapen * Headers/gnustep/gui/NSTypesetter.h: New file. * Source/NSTypesetter.m: Skeleton implementation from Apple docs. * Source/NSSimpleHorizontalTypesetter.m: As above. 2000-06-11 Fred Kiefer * Headers/gnustep/gui/NSFont.h: * Headers/gnustep/gui/GSFontInfo.h: * Source/NSFont.m: * Source/GSFontInfo.m: Added some support for glyph layout * Source/NSText.m: updateFontPanel isMultiple was set wrong 2000-06-10 Fred Kiefer * Headers/gnustep/gui/NSDocument.h: * Headers/gnustep/gui/NSDocumentController.h: * Headers/gnustep/gui/NSDocumentFrameworkPrivate.h: Added header, replaced import with include * Source/NSDocument.m: Added header, replaced import, retain, release... Rewrote the saveXX methods Rename saveFileType to fileTypeFromLastRunSavePanel * Source/NSDocumentController.m: Added header, replaced import, retain, release... Added methods for handling of last recent documents. Made addDocument and removeDocument public. * Source/NSAttributedString.m: Added header. RTFHeaderStringWithContext: convert colour to RGB 2000-06-07 Adam Fedor * Model/IMLoading.m ([GMModel -_makeConnections]): Call awakeFromNib if object doesn't respond to awakeFromModel (patch from Gregory Casamento ). 2000-05-04 Georg Fleischmann * gui/Model/GMAppKit.m ([NSWindow -createObjectForModelUnarchiver:]): use self instead of NSWindow class to allow creation of subclasses of NSWindow 2000-06-03 Richard Frith-Macdonald * Source/NSAttributedString.m: ([-setAlignment:range:]) retain/release problem fixed. Thu Jun 1 21:50:34 2000 Nicola Pero * Source/NSScrollView.m ([NSScrollView -tile]): Fixed position of corner view when there is no horizontal scrollview; fixed position of parts when there is a header view but not a horizontal scrollview. 2000-05-24 Georg Fleischmann * gui/Model/GMAppKit.m ([NSScrollView(GMArchiverMethods) -initWithModelUnarchiver:]): select selected cells in matrix too 2000-05-20 Fred Kiefer * Headers/gnustep/gui/NSTextView.h: Corrected signature for [smartInsertForString:...] * Source/NSAttributedString.m: [setAlignment:range:] allwas use a mutableCopy * Headers/gnustep/gui/NSText.h: * Source/NSText.m: * Source/NSTextView.m: Reorganised all the Copy and Paste code. Added some implementation. 2000-05-23 Adam Fedor * Source/NSImage.m ([NSImage +imageNamed:]): Check for nil extension. 2000-05-12 Georg Fleischmann * Model/GMAppKit.m ([NSScrollView(GMArchiverMethods) -initWithModelUnarchiver:]): move unarchiving of backgroundColor behind documentView 2000-05-20 Fred Kiefer * Headers/gnustep/gui/NSText.h: * Source/NSAttributedString.m: * Source/NSText.m: * Source/NSTextView.m: Improved the handling of character and paragraph attributes on NSText and added basic implementations for these methods on NSTextView. Some ivars on NSText have been replaced by values in [ typingAttributes]. 2000-05-17 Jonathan Gapen * Model/GMAppKit.m: NSButton methods removed; all NSButton attributes are actually stored in an associated NSButtonCell. Eliminate (de)archiving of NSTextField attributes that duplicate attributes of its associated NSTextFieldCell. NSMenuItem [encodeWithModelArchiver:] Do not encode images when the item has a submenu. (Patch from Nicola Pero.) (De)archive autoresizing mask in NSPopUpButton. (De)archive border attribute of NSColorWell. 2000-05-13 Fred Kiefer * Headers/gnustep/gui/NSText.h: * Headers/gnustep/gui/NSTextView.h: * Source/NSText.m: * Source/NSTextView.m: Made NSTextView use the ivars of its super class and added some new ivars to NSText. Adopted both implementations to this. Added some missing method declarations to NSTextView. This is only the start of the rearangement of this classes. 2000-05-09 Richard Frith-Macdonald * gui/Source/NSTabView.m: General tidyup, minro fixes, and implemented ([-takeSelectedTabViewItemFromSender:]) 2000-05-09 Georg Fleischmann * gui/Source/NSTabView.m ([-initWithFram:]): retain tab_font ([-dealloc]): new method. 2000-05-07 Fred Kiefer * Source/NSAttributedString.m: RTFBodyStringWithContext: Corrected output of subscript * Source/Parsers/attributedStringConsumer.m: GSRTFsubscript, GSRTFsuperscript: Change interpretation of super/subscript parameter * Source/NSStringDrawing.m: Corrected baseline for font with different point size. Added primitiv support for super/subscript as baseline change of 3 points. The baseline correction is only done for the current chunk not for the whole line. 2000-05-06 James Dessart * Documentation/gsdoc/NSWindow.gsdoc : * Documentation/gsdoc/NSWindow.html : Added some very basic documentation. 2000-05-04 Fred Kiefer * Source/NSText.m: Always use the most appropriate RTF* method and other small internal improvements * Source/NSAttributedString.m: Corrected lineBreakBeforeIndex:withinRange: and reorganised the initWithRTF* methods. * Headers/gnustep/gui/NSAttributedString.h: Moved two methods from NSTextAttachment.h here * Headers/gnustep/gui/NSTextAttachment.h: Moved two methods into NSAttributedString.h Thu May 4 19:11:48 2000 Nicola Pero * Source/NSPanel.m ([GSAlertPanel -initWithContentRect:styleMask:backing:defer:screen:]): Fixed position of the panel title, so that it is displayed again. 2000-04-29 Richard Frith-Macdonald * Source/NSFont.m: ([-initWithCoder:]) corrected retain/release error. 2000-04-28 Richard Frith-Macdonald * Source/NSWorkspace.m: Fixed bug setting preferred application/icon. 2000-04-27 Jonathan Gapen * Headers/gnustep/gui/NSColorWell.h: Add ivar, prepend underscores. * Images/common_ColorSwatch.tiff: New file. * Images/GNUmakefile: Update. * Model/IMLoading.m: Bugfix in [+loadGModelNamed:owner:] to invoke [+bundleForClass:] with a class, not an object. * Panels/ColorPanel.gmodel: Add attributes to make a color panel become key only as needed, and make it a floating panel. * Source/NSColorPanel.m: Use above image for color dragging. * Source/NSColorWell.m: Updates for proper (de)activation. 2000-04-25 Adam Fedor * Source/NSScreen.m (-deviceDescription): Use autoreleased dictionary. (+mainScreen): Autorelease screen. (+screens): Likewise. (-isEqual:): Implement. 2000-04-25 Richard Frith-Macdonald Patch by Gregory John Casamento edited to conform to standards. Adds improved colorspace support. Files modified - Headers/gnustep/gui/NSGraphics.h, Headers/gnustep/gui/NSScreen.h, Source/Functions.m, Source/NSScreen.m, Source/externs.m, Tools/Functions.m 2000-04-25 Adam Fedor * Source/NSView.m (-_updateBoundsMatrix): New method from common code in other methods. (-setFrame:): Use it. Also check if frame actually changed before doing something. (-scaleUnitSquareToSize): Use it. (-setBounds): Likewise. (-setBoundsSize:): Likewise. (-resizeWithOldSuperviewSize:) Likewise. Also use setFrame to actually set the frame (This is apparently what OpenStep 4.2 does). 2000-04-24 Adam Fedor * Source/NSFont.m (-isEqual:): Implement. (hash): Likewise. * Documentation/gsdoc/DPSOperators.gsdoc: New file. 2000-04-24 Fred Kiefer * Parser/*: Updated the parser to support more of the RTF specification * NSAttributedString.m: Use new parser * NSText.m: Small improvements on formatting 2000-04-23 Fred Kiefer * GSTextStorage.m: Corrections in replaceCharactersInRange:withString: 2000-04-20 Adam Fedor * Headers/gnustep/gui/GSMethodTable.h: Added methods to get current server device (X display) and current window device (X window). * Headers/gnustep/gui/DPSOperators.h: Likewise * Headers/gnustep/gui/NSGraphicsContext.h: Likewise * Headers/gnustep/gui/PSOperators.h: Likewise * Source/NSGraphicsContext.m: Likewise * Source/NSBrowser.m (-setDelegate:): browser:willDisplayCell:atRow:column: is only required for a passive browser delegate. * Source/NSFont.m (-fontInfo): New private method. * Source/NSFontManager.m (-traitsOfFont): Use it. (-weightOfFont): Likewise. 2000-04-18 Adam Fedor * Hooks for using backend libraries to read images. * Source/NSBitmapImageRep.m (-_initFromWrasterFile:number:): New stub for backends. (+imageRepsWithFile:): New method. (+_wrasterFileTypes): New stub for backend. (+imageFileTypes): Include wraster file types. * Source/NSImageRep.m (+imageRepsWithContentsOfFile:): Check/use if rep implements +imageRepsWithFile. * Headers/gnustep/gui/nsimage-tiff.h: Add field for associated alpha. * Source/tiff.m: Set it. 2000-04-17 Jonathan Gapen * Headers/gnustep/gui/NSColorPanel.h: New ivars for panel objects. * Panels/ColorPanel.gmodel: New file. * Panels/GNUmakefile: Add above file. * Source/NSApplication.m: [-orderFrontColorPanel:] Implement. * Source/NSColorPanel.m: Rough draft implementation. * Source/NSColorWell.m: Add drag 'n drop methods. 2000-04-16 Adam Fedor * Source/tiff.m (NSTiffGetInfo): Getting alpha info requires two parameters! 2000-04-14 Richard Frith-Macdonald * Source/NSSliderCell.m: Fix stupid mistake in last mod. * Headers/AppKit/NSView.h: Fix incorrect comments about resize mask. 2000-04-13 Adam Fedor * Source/NSApplication.m ([NSAppIconView -setImage:]): Remove extra lock/unlock focus. ([NSApplication -finishLaunching]): More specific error information. * Source/NSWindow.m (-setFrameOrigin:): Don't re-display. (-setFrameTopLeftPoint): Likewise. (_initDefaults): Set needs_display flag. * Source/NSBitmapImageRep.m (-_initFromImage:number:): Use new Tiff routines, log message and return nil rather than raise exception. * Source/tiff.m (NSTiffGetInfo): Tidy, get alpha info correctly. (NSTiffRead): Bug fixes, particularly reading planar images. (NSTiffError): New function. (NSTiffWarning): Likewise. (NSTiffGetImageCount): Likewise. 2000-04-13 Richard Frith-Macdonald * Source/NSMenu.m: ([-_setOwnedBypopUp:]) set correct window level for popup menu windows. * Source/NSApplication.m: ([-beginModalSessionForWindow:]) set correct window level for panels now that WindowMaker supports it. * Source/NSSliderCell.m: Minor tidyups 2000-04-12 Jonathan Gapen * Model/GMAppKit.m: Added methods for NSSliderCell. * Model/IMLoading.m: Use [-pathExtension] rather than [-hasSuffix] to check for gmodel filename extension. * Source/NSSliderCell.m: Tweaked drawing code to account for border/bezel and to draw the title cell properly. 2000-04-10 Richard Frith-Macdonald * Documentation/gsdoc/GNUmakefile: New file to build documentation * AppKit.gsdoc: renamed to Gui.gsdoc to reflect GNUstep name for library rather than NeXT/Apple trademarked one. Updated links in the other documentation files. 2000-04-08 James Dessart * Documentation/gsdoc/NSSlider.gsdoc: Made corrections to class description * Documentation/gsdoc/NSSliderCell.gsdoc: Basic documentation (added in mid-March) * Documentation/gsdoc/NSView.gsdoc: Start of basic documentation * Documentation/gsdoc/NSSlider.html: For users who cannot compile gsdoc * Documentation/gsdoc/NSSliderCell.html: For users who cannot compile gsdoc * Documentation/gsdoc/NSView.html: For users who cannot compile gsdoc 2000-04-07 Jonathan Gapen * Source/NSWindow.m: Update [-performClose:] to check send [-windowWillClose:] message to window controller's document. * Source/NSWindowController.m: Add copyright notice, update to GC-compatible RETAIN/ASSIGN macros, re-format. * Source/NSWorkspace.m: [-getInfoForFile:application:type:] Implement. 2000-04-06 Adam Fedor * Source/GSFontInfo.m: allFonts returns GSFontInfo objects. [-pointSize]: Implement. 2000-04-02 15:00 Fred Kiefer * NSAttributedString.m: Improved RTF output and corrections in the formating methods 2000-04-01 18:00 Fred Kiefer * Source/NSText.m: Now really uses a text storage instead of an attributed string (old patch missed this) * Source/NSAttributedString: Use NSFileWrapper to write RTF 2000-03-31 Adam Fedor * Headers/gnustep/gui/NSFont.h: Conform to NSCopying. * Source/NSFont.m ([NSFont -copyWithZone:]): Implement. * Source/GSFontInfo.m: (-copyWithZone:): Likewise 2000-03-31 Jonathan Gapen * Model/GMAppKit.m: Re-organize NSCell's [-initWithModelUnarchiver:] to unarchive each cell type appropriately. Changed NSPanel [+createObjectForModelUnarchiver:] so that it correctly creates an object for NSPanel subclasses. 2000-03-27 Adam Fedor * Changes to use "helper" class for getting backend font information rather than poseAs classes. * Headers/gnustep/gui/NSFont.h: New ivar. * Headers/gnustep/gui/NSFontManager.h: New ivar. * Source/NSFont.m: Changes to use GSFontInfo classes for getting font information. * Source/NSFontManager.m: Likewise for GSFontEnumerator. * Source/GSFontInfo.m: New file. 2000-03-27 Nicola Pero * Source/NSTableView.m ([-tile]): Access ivar _frame. 2000-03-25 Jonathan Gapen * Headers/gnustep/gui/NSColorPicker.h: Added ivar. * Headers/gnustep/gui/NSImage.h: Added setFlipped/isFlipped methods. * Source/NSBundleAdditions.m: Fixed bug in checking filename extension. ([-pathForImageResource:]) * Source/NSColorPicker.m: Implement. ([-initWithPickerMask:colorPanel:] [-colorPanel] [-insertNewButtonImage:in:] [-provideNewButtonImage:]) * Source/NSImage.m: Initialize _flags.flipDraw in [-initWithSize:] 2000-03-24 Jonathan Gapen * Source/NSFileWrapper.m: First implementation of NSFileWrapper * Headers/gnustep/gui/NSFileWrapper.h: Added ivars and enum 2000-03-21 22:00 Fred Kiefer * Source/NSText.m: Changed to use a text storage instead of an attributed string. * Source/NSTextStorage.m: Removed unnecessary method, changes of the delegate now don't trigger processEditing * Source/GSTextStorage.m: The two basic operations call ([-edited:range:changeInLength:]) 2000-03-22 Richard Frith-Macdonald Patch from jagapen@whitewater.chem.wisc.edu * Model/IMLoading.m: new method ([+loadGModelNamed:owner:]) * Headers/AppKit/IMGmodel.h: ditto * Source/NSApplication.m: Use new method. Sun Mar 19 22:26:55 2000 Nicola Pero * Model/GMAppKit.m ([NSApplication -initWithModelUnarchiver:]): RETAIN the decoded windows. * Source/NSClipView.m ([-viewFrameChanged:]): If the document view does not cover all our area, fill the remaining space with background color. * Source/NSTableView.m ([-noteNumberOfRowsChanged]): Implemented. 2000-03-19 Richard Frith-Macdonald * Source/GSTextStorage.m: ([setAttributes:range:]) make sure attributes are set when old range starts at start of new range. 2000-03-19 Richard Frith-Macdonald Fixes fromFred Kiefer - * Headers/gnustep/gui/NSResponder.h: prefix ivars with underscore and add new _menu ivar. * Source/NSResponder.m: Change ivars and add support for Apples menu methods. * Source/NSWindow.m: update for change to responder ivar names. * Source/NSInterfaceStyle.m: ditto * Source/NSText.m: Establish cursor on starting edit. 2000-03-18 Richard Frith-Macdonald * Source/NSSplitView.m: ([-mouseDown:]) only highlight/unhighlight divider when actually necessary. Fri Mar 17 23:33:40 2000 Nicola Pero First alpha implementation of NSTableView. Mouse interaction not yet implemented, with the exception of scrolling. * Source/NSScrollView.m: Added NSTableView support. ([-_doScroll:]): If we have a header view, scroll the header view too. ([-tile]): Added code to tile header clip view and corner view if we have them. ([-drawRect:]): Added code for the case we have a header view and/or a corner view; fixed drawing of border. ([-setDocumentView:]): Added code to check if the document view responds to the methods cornerView and headerView, as per macosx NSTableView spec, and to manage the various cases. * Headers/AppKit/NSScrollView.h: New ivars _hasCornerView, _hasHeaderView, _headerClipView. * Source/NSTableColumn.m ([-setWidth:]): Invoke [-tile] in the table view. * Source/NSTableHeaderCell.m ([-initTextCell:]): Set bezeled as yes; set font. ([-drawWithFrame:inView:]): New method; draw a gray bezel border. * Source/NSTableHeaderView.m ([-columnAtPoint:]): Implemented. ([-headerRectOfColumn:]): Rewritten. ([-drawRect:]): Rewritten. * Source/NSTableView.m: [Re]Written from scratch. * Headers/AppKit/NSTableView.h: Idem. * Source/externs.m: Added NSTableView notifications. * Headers/AppKit/AppKit.h: Added NSTableView.h, NSTableHeaderView.h, NSTableHeaderCell.h. 2000-03-17 Richard Frith-Macdonald * Headers/gnustep/gui/NSGraphics.h: Removed the inclusion of PSOps that was messing up Functions.m in the Tools area. Thu Mar 16 13:15:00 2000 Richard Frith-Macdonald * Source/NSText.m: Fixes by Fred Kiefer for rich text display. * Source/NSTextView.m: ditto * Source/NSFontManager.m: bugfixes - check for nil fonts. * Headers/AppKit/NSResponder.h: additional macOS-X methods declared Wed Mar 15 02:41:04 2000 Nicola Pero * Source/GSUtil.m: Removed file; it was duplicating [NSString -sizeWithAttributes:]. * Source/GSUtil.h: Idem. * Source/GNUmakefile: Idem. * Source/NSButtonCell.m ([-drawInteriorWithFrame:inView:]): Invoke [NSString -sizeWithAttributes:] instead of GSUtil_sizeOfMultilineStringWithFont(); ([-cellSize]): Idem. * Source/NSCell.m ([-cellSize]): Idem; updated for the change so that the @"" string gets simply the height of the font. ([-_drawText:title:cellFrame]): Idem, plus rewritten vertical centering of text. * Source/NSCell.m ([-setObjectValue:]): Temporary implementation working only with strings, images, and numbers. This is needed by the forthcoming NSTableView. 2000-03-11 Adam Fedor * Headers/gnustep/gui/NSText.h: Add missing methods. * Source/NSCachedImageRep.m: Remove ImageCompositing dwrite and centralize in backend (Now use GraphicCompositing to turn on alpha drawing/compositing). * Source/NSSlider.m ([NSSlider -initWithFrame:]): set continuous as specified in OpenStep docs. * Source/NSWindow.m (-center): Remove modification already taken care of in backend. Sat Mar 11 06:32:00 2000 Richard Frith-Macdonald * Source/NSStringDrawing.m: Fix error in handling extent of paragraph styles. Sat Mar 11 05:54:00 2000 Richard Frith-Macdonald * Source/NSPanel.m: Completely reformatted and added some fixes for errors in positioning/sizing the panel. Fri Mar 10 17:42:00 2000 Richard Frith-Macdonald * Source/NSWindow.m: Reverted last change to NSWindow as they left it unable to compile and the intended modification to the center method seemed bogus - it would have left the window positioned 17.5 pixels below the center of the screen. and I don't think that that is what is desired. Fri Mar 10 13:36:00 2000 Richard Frith-Macdonald * Source/NSCell.m: fixed formatting to be consistent and conform to GNU standards. * Source/NSButtonCell.m: ditto. 2000-03-10 Pascal J. Bourguignon * Source/GSUtil.m: A new file where to put utility functions used by the classes. For now, only contains the GSUtil_sizeOfMultilineStringWithFont() function. * Source/NSCell.m: * Source/NSButtonCell.m : Updated -cellSize to process multiline string value. This should improve greately the behaviour of NSTextField and consequently of the NSPanel building functions. Updated -[NSCell _drawText:inFrame:] and -[NSButtonCell drawInteriorWithFrame:inView:] to handle properly multiline strings. * Source/NSPanel.m: Added the following features to GSAlertPanel private subclass of NSPanel: - fit the height of the panel according to the height of the message, in addition to the width. - when the final size for the panel is much too big respective to the screen, it is reduced, and the message is put in a scroll view. - made the attention panel stay visible when the application is deactivated as manded by the OpenStep specifications. - more than one attention panel can be run simultaneously, without the later invocation stealing the panel of the former one. * Source/NSWindow.m: Moved constant invocation of the method -[NSParagraphStyle attribute:atIndex:effectiveRange:] outside of loops and removed firstLine variable in -drawAtPoint: and in -size. Made -center take into account the title bar height so that windows as high as the screen would be centered at y=0 instead of y=title bar height/2. * Testing/NSPanelTest: Also, I've added a NSPanelTest application in core/Testing, that will show how nice have become the Alert panels... Fri Mar 10 12:42:44 2000 Nicola Pero * Source/NSSplitView.m ([-mouseDown:]): Fixed bug. Fri Mar 10 10:48:00 2000 Richard Frith-Macdonald * Documentation/gsdoc/NSView.gsdoc: Added a little documentation for methods for removing subviews from a view. Fri Mar 10 09:35:00 2000 Richard Frith-Macdonald * Source/NSView.m: Make ([removeSubview:]) public. * Headers/AppKit/NSView.h: ditto Fri Mar 10 06:46:00 2000 Richard Frith-Macdonald * Source/NSView.m: Added ([_removeSubview:]) and make all subview removals use it. Modify addition of subviews to invalidate the subview coordinates. * Source/NSScrollView.m: Use _removeSubview * Headers/AppKit/NSView.h: tidyup and add new method. Fri Mar 10 02:12:34 2000 Nicola Pero * Source/NSSplitView.m ([-mouseDown:]): Better management of the case a subview passed mouse down to next responder so the splitview got it - made log message milder and do not redraw the splitview. ([-mouseDown:]): Fixed bug causing hard misbehaviour when the mouse drags starting exactly on the borderline between the divider and a subview. Thu Mar 9 23:32:36 2000 Nicola Pero * Model/GMAppKit.m ([NSView -subviewsForModel]): Fixed fatal problem for encoding editable textfields in gmodels: do not encode Apple's private class _NSKeyboardFocusClipView. Thu Mar 9 19:42:17 2000 Nicola Pero * Source/NSSplitView.m ([-adjustSubviews]): Fixed bug in calculation of frames; patch by Björn Giesler . Wed Mar 8 23:19:08 2000 Nicola Pero * Source/NSPopUpButton.m ([-sizeToFit]): Invoke super's implementation. * Source/NSPopUpButton.m ([-synchronizeTitleAndSelectedItem]): Removed call to sizeToFit. * Source/NSPopUpButtonCell.m ([-cellSize]): Implemented. Wed Mar 08 20:56:00 2000 Richard Frith-Macdonald * Source/NSFontPanel.m: A few bug fixes and tidyups. Wed Mar 08 17:09:00 2000 Richard Frith-Macdonald * Source/NSWindow.m: ([-setLevel:]) implemented. Wed Mar 08 115:4500 2000 Richard Frith-Macdonald Removed a fixup that should no longer be needed now that the coordinate stuff is fixed - NB you need to update your copy of WindowMaker to the latest CVS code because that contains some coordinate handling bug fixes that we need. * Source/NSPopPupButton.m: Removed workaround for bad coordinates. * Source/NSPopPupButtonCell.m: ditto. Wed Mar 08 13:15:00 2000 Richard Frith-Macdonald * Source/NSWindow.m: Final (I hope) coordinate handling fixes to use proper frame coordinates and offsets now that support is in backend and WindowMaker bugs are fixed. Wed Mar 08 07:44:00 2000 Richard Frith-Macdonald * Source/NSText.m: Fixes by Fred Kiefer for rich text display. * Source/NSStringDrawing.m: ditto * Headers/AppKit/NSText.h: ditto * Headers/AppKit/NSStringDrawing.h: ditto Tue Mar 07 11:00:00 2000 Richard Frith-Macdonald * Source/NSWindow.m: Changes throughout to use correct offsets for differences between content rect and frame coordinates. Base coordinate system is that of the content rect, so conversions between screen and base coordinates are required except for borderless windows (where the frame rect is the same as the content rect). Tue Mar 07 06:24:00 2000 Richard Frith-Macdonald * Source/NSApplication.m: ([activateIgnoringOtherApps]) order key window to front when activating app. Tue Mar 7 03:23:55 2000 Nicola Pero Warning: the gmodel format was changed by this fix - and it is going to be changing for a while. If you are using CVS be sure to be always creating and running gmodels with the same CVS version. * Model/GMAppKit.m ([NSPopUpButton +createObjectForModelUnarchiver:]): Tidied. ([NSPopUpButton -encodeWithModelArchiver:]): Encode isEnabled, tag, target, action. Code untested. ([NSPopUpButton -initWithModelUnarchiver:]): Bug fix - do not invoke super's implementation. Removed useless call to synchronizeTitleAndSelectedItem. Decode isEnabled, tag, target, action. Tidied. Mon Mar 06 20:09:00 2000 Richard Frith-Macdonald * Headers/gnustep/gui/GSMethodTable.h: Added method to set titlebar. * Headers/gnustep/gui/DPSOperators.h: ditto * Headers/gnustep/gui/NSGraphicsContext.h: ditto * Headers/gnustep/gui/PSOperators.h: ditto * Source/NSGraphicsContext.m: ditto * Source/NSWindow.m: Make calls to DPSsetinputstate() to set the titlebar for the window on change of key/main/normal state. Mon Mar 06 10:36:00 2000 Richard Frith-Macdonald * Source/NSWindow.m: Various tidyups by Fred kiefer and myself. scrapped private class methods for querying window map in favour of more efficient function based lookup. * Source/NSApplication.m: ditto * Source/NSMenu.m: ditto * Source/NSText.m: Tidyups by Fred. * Headers/AppKit/NSText.h: ditto. * Headers/AppKit/NSWindow.h tidyup. * Headers/AppKit/NSGraphics.h new functions. Sun Mar 5 23:39:33 2000 Nicola Pero * Source/NSButtonCell.m ([-setPeriodicDelay:interval:]): Bug fix: do not set the cell as being continuous. This was also causing Model/GMAppKit.m to make all buttoncells continuous upon decoding. * Model/GMAppKit.m ([NSCell -initWithModelUnarchiver:]): Temporary commented out line setting cell's action mask so things go on working. Better solution coming soon. Sun Mar 5 01:51:52 2000 Nicola Pero * Model/GMAppKit.m ([NSPanel -encodeWithModelArchiver:]): Cleaned, simplified by invoking super's implementation; removed all code pertaining to super leaving only the part specific to this subclass. ([NSPanel -initWithModelUnarchiver:]): Idem. ([NSSavePanel -encodeWithModelArchiver:]): Idem. ([NSSavePanel -initWithModelUnarchiver:]): Idem. Sun Mar 5 01:19:21 2000 Nicola Pero * Source/NSMenu.m ([NSMenu -indexOfItem:]): Bug fix: return -1 if the item is not in the menu. This was crashing the popup button on selectItemWithTitle: nil. Sat Mar 4 20:39:02 2000 Nicola Pero * Model/GMAppKit.m ([NSWindow -initWithModelUnarchiver:]): OrderFrontRegardless the window if it is visible, so that visible windows from the main gmodel - which is loaded before the app is activated - are ordered front correctly. This is not yet a complete solution - see comment in the source. Sat Mar 4 18:34:47 2000 Nicola Pero Fixed major problem with creating gmodels from nibs on MACOSX. * Model/GMArchiver.m ([GMArchiver -encodeRect:withName:]): Force the string identifying the rect to be in the OPENSTEP format. MACOSX NSStringFromRect is - incredible - not OPENSTEP compliant, so we don't use NSStringFromRect at all and make it by hand. * Model/GMArchiver.m ([GMArchiver -encodeSize:withName:]): Idem. * Model/GMArchiver.m ([GMArchiver -encodePoint:withName:]): Idem. Sat Mar 04 06:57:00 2000 Richard Frith-Macdonald * Source/NSWindow.m: Patch be Fred Kiefer - switch miniaturize and performMiniatuize methods, make a few other methods conform to MacOS-X spec exactly. Fri Mar 03 05:36:00 2000 Richard Frith-Macdonald * Source/NSMenu.m:([NSMenuWindowTitleView -drawRect:]) fixed to draw contents in bounds rather than given rect. Fri Mar 3 02:25:24 2000 Nicola Pero * Source/NSWindow.m ([-performZoom:]), ([-zoom:]): Added methods with trivial implementation - so that code ported from macosx does not crash. Thu Mar 2 03:16:18 2000 Nicola Pero Added basic support to create and run gmodels from macosx nibs: * Model/GMAppKit.m ([NSApplication -encodeWithModelArchiver:]): Basic patch to allow creation of working gmodel from macosx nibs with menus: do not encode at all the apple specific NSMenuPanel objects. Thanks to raphael_sebbe@mac.com for testing this patch. * Model/GMAppKit.m ([NSImage +createObjectForModelUnarchiver:]): Bug fix: don't crash when decoding images with a nil name. * Source/NSApplication.m ([-setMainMenu:]): In gmodels created from macosx nibs, the windows submenu is called "Window", not "Windows". Patched code to recognize "Window" as identifying the windows submenu too. * Model/GMAppKit.m ([NSImage +createObjectForModelUnarchiver:]): When asked for anything which is not known, return GNUstepMenuImage [and not the radio button image as we did before]. * Images/nsmapping.strings: Added AppleMenuImage, NSMenuArrow, NSMenuCheckMark. * Images/GNUstepMenuImage.tiff: New file obtained by resizing GNUstep.tiff. Anybody with a better understanding of image manipulation feel free to replace GNUstepMenuImage.tiff with a better one. * Images/GNUmakefile: Added GNUstepMenuImage.tiff Wed Mar 01 16:21:00 2000 Richard Frith-Macdonald * Headers/gnustep/gui/NSWindow.h: New style values added for app iconwindow and miniwindows. New ivar added for miniwindow counterpart. New method ([-counterpart]) * Source/NSApplication.m: Create the iconwindow usig the new style. * Source/NSWindow.m: Many modifications to support miniwindow counterparts and create miniwindows when required (when a window is miniaturised). Tue Feb 29 16:34:49 2000 Nicola Pero * Documentation/gsdoc/Introduction.gsdoc: New file - beginning of a short overview/introduction of the GNUstep GUI API. Tue Feb 29 07:04:00 2000 Richard Frith-Macdonald * Source/NSFontManager.m: fixes and tiyups - mostly from Fred Keifer. Mon Feb 28 15:37:00 2000 Richard Frith-Macdonald * Documentation/gsdoc: Added skeleton documentation for the OpenStep/MacOS-X appkit classes in the gsdoc subdirectory. Mon Feb 28 06:42:00 2000 Richard Frith-Macdonald Font fixes - mostly from Fred Keifer. * Source/NSText.m: Use font manager. * Source/NSFontManager.m: some menu improvments. * Source/NSFontPanel.m: Correect setting of font and correct preview code for when there is no 'set' font Fri Feb 25 16:20:00 2000 Richard Frith-Macdonald * Headers/AppKit/NSWindow.h: added has_closed flag * Source/NSWindow.m: made close/deallocation sequence more robust * Source/NSApplication.m: improve removal of windows from menus on close. 2000-02-25 Adam Fedor * Source/NSCursor.m ([NSCursor -setImage:]): Implement. Fri Feb 25 07:07:00 2000 Richard Frith-Macdonald * Source/NSWorkspace.m: Removed a little unused code and fixed a minor portabilitym problem with path usage. Tue Feb 22 17:51:52 2000 Nicola Pero Still much to do in the font classes, but thanks to Fred Kiefer things are starting to work. Contributed by Fred Kiefer : * Headers/AppKit/NSFontManager.h: Fixed typo in ivar name. * Source/NSFontManager.m: More work on this class. * Source/NSFontPanel.m: Almost complete rewrite. * Headers/AppKit/NSFontPanel.h: Idem. Mon Feb 21 14:40:00 2000 Richard Frith-Macdonald * Source/NSWindow.m: ([-close]) remove spurious retain. * Source/NSApplication.m: ([-run]) do startup stuff inside an autorelease pool and release it before main loop. Tue Jan 25 14:52:27 2000 Nicola Pero Contributed by Fred Kiefer: * Source/NSFontManager.m: Almost complete rewrite. * Source/NSFontPanel.m: Begun work of fixing, rewriting. * Headers/AppKit/NSFontManager.h: Corresponding rewrite. * Headers/AppKit/NSFontPanel.h: Idem. 2000-02-17 Adam Fedor * Version: 0.6.5 released. 2000-02-16 Adam Fedor * gnustep-gui.spec: Newfile 2000-02-15 Adam Fedor * configure.in: Fix test for rintf 2000-02-14 Adam Fedor * Version: Update version number * Documentation/announce.tmpl.texi: Update * Documentation/readme.tmpl.texi: Likewise. * Documentation/news.tmpl.texi: Likewise. * Documentation/todo.tmpl.texi: Likewise. * ANNOUNCE, BUGS, NEWS, README: Regenerate Mon Feb 14 13:23:00 2000 Richard Frith-Macdonald * Source/NSLayoutManager.m: Tidied and simplified by removing inefficient scanner class and using NSScanner instead. * Source/NSText.m: ditto. * Source/NSTextView.m: fix a couple of bugs that were causing crash in text network demo - lets the demo run a while longer before crashing. 2000-02-13 Adam Fedor * Source/NSAffineTransform (-transformBezierPath:): Implement. (from Enrico Sersale ). Mon Feb 14 00:59:33 2000 Nicola Pero * Source/NSApplication.m ([-orderFrontStandardAboutPanel:]): Fixed typo/bug. Reported by Fred Kiefer Sun Feb 13 22:24:54 2000 Nicola Pero This fixes a bug; the same bug that produced those little white vertical lines at the bottom of windows with editable textfields when windows were ordered out then in after editing. * Source/NSView.m ([-removeFromSuperviewWithoutNeedingDisplay]), ([-removeFromSuperview]): Ask the window to take first responder status in our place if we are. Important: this is done *before* any other action is undertaken, because changing first responder invokes -resignFirstResponder:, which should be allowed to assume that the view is normally placed in the view hierarchy. Sun Feb 13 19:20:00 2000 Enrico Sersale * Source/NSBezierPath.m: ([-copyWithZone:]) implemented. Sat Feb 12 21:16:00 2000 Nicola Pero * Source/NSBrowser.m ([-loadColumnZero]), ([-reloadColumn:]): Adjust frame of column after loading it. Sat Feb 12 20:27:00 2000 Richard Frith-Macdonald * Source/NSView.m: ([setNeedsDisplayInRect:]) change to ensure that superviews are always marked as needing display when we are. * Source/NSPopUpButton.m: ([-encodeWithCoder:]) ([-initWithCoder:]) implemented for Gorm. Sat Feb 12 19:47:14 2000 Nicola Pero * Source/NSPopUpButton.m ([-selectItem:]): Bug fix: Update menu knowledge of the selected item. ([-selectItemWithTitle:]), ([-selectItemAtIndex:]), ([-selectItem:]): Bug fix: Invoke synchronizeTitleAndSelectedItem to update what is displayed. Sat Feb 12 18:11:32 2000 Nicola Pero * Source/NSWindow.m ([-setContentView:]): When expanding the new content view to cover the whole window, do it using the nice way, resizeWithOldSuperviewSize:, which allows the view to reorganize its subviews for the new size. Sat Feb 12 17:53:00 2000 Richard Frith-Macdonald * Source/NSMenu.m: Replace non-working archiving code with drastically simplified code that does work in the normal case, but doesn't deal with non-standard menu representations. This lets Gorm work with menus. * Source/NSMenuItem.m: Don't archive parent menu. Fri Feb 11 20:18:10 2000 Enrico Sersale * Source/NSBezierPath.m: ([-transformUsingAffineTransform:]) implement. 2000-02-09 Adam Fedor * Documentation/announce.tmpl.texi: Update. * Documentation/news.tmpl.texi: Likewise. * Documentation/readme.tmpl.texi: Likewise. Thu Feb 10 00:56:08 2000 Nicola Pero * Source/NSText.m ([-keyDown:]): Implemented NSDeleteFunctionKey, which was unimplemented - problem reported by Jory van Zessen. Simple superficial improvements to make NSText just a little faster: * Source/NSText.m: Changed everywhere [self selectedRange] simply to selected_range. ([-moveCursorUp:]), ([-moveCursorLeft:]): Return at once if cursor is already at the beginning of text. ([-moveCursorDown:]), ([-moveCursorRight:]): Return at once if cursor is already at the end of text. Wed Feb 09 18:59:02 2000 Enrico Sersale * Source/NSBezierPath.m Headers/gnustep/gui/NSBezierPath.h : Rewritten conforming to MacOS-X implementation details. Tue Feb 8 17:22:05 2000 Nicola Pero * Model/GMAppKit.m ([NSMenuItem -initWithModelUnarchiver:]): Fix for having GNUstep load gmodels created from OPENSTEP NIBs. NSMenu internals are slightly different in GNUstep and OPENSTEP; OPENSTEP stores an item submenu as the item target, while GNUstep stores it in a special mi_submenu ivar. This patch, for GNUstep only, sets the submenu ivar from the target for items which have a submenu. 2000-02-07 Adam Fedor * configure.in: Add check for rintf. * Source/NSBrowser.m: Use rint i no rintf. * Source/NSApplication.m: Convert NSDebugLog to NSDebugLLog for various NSEvent debugs. * Source/NSMenuItemCell.m ([NSMenuItemCell -calcSize]): Make sure anImage exists before getting size (methods with nil receivers returning structs segfaults on Solaris). Mon Feb 7 18:55:29 2000 Nicola Pero * Source/NSMatrix.m ([-mouseDown:]): Pass mouse down to super if we have no cells. Mon Feb 7 03:06:36 2000 Nicola Pero This bug was crashing GNUstep while I was doing experiments with the Save Panel's code. It wasn't easy to find. * Source/NSMatrix.m ([-putCell:atRow:column:]): Fixed bug. If we are putting a new cell precisely in _selectedRow, _selectedColumn, we have to update _selectedCell, otherwise it remains pointing to the released cell! ([-insertRow:withCells:]): Update _selectedRow if needed. ([-insertColumn:withCells:]): Update _selectedColumn if needed. Sun Feb 6 8:52:00 2000 Richard Frith-Macdonald * Source/GSInfoPanel.m: Make newly created panel appear in center of screen. Sun Feb 6 05:50:20 2000 Nicola Pero * Documentation/gnustep-gui.tmpl.texi (Window Manager): Added a tiny section recommending to set "Click Window To Focus" in the window manager configuration. Also, improved the section on the Standard Info Panel. Sat Feb 5 03:02:04 2000 Nicola Pero * Source/NSWindow.m ([-orderWindow:relativeTo:]): Fixed a quite serious bug appearing twice, in two for loops. It was messing window ordering, causing the app to freeze under certain circumstances. Fri Feb 4 18:35:59 2000 Nicola Pero * Source/GSInfoPanel.m ([-initWithDictionary:]): Use Helvetica-Bold instead of Helvetica-BoldOblique [for now]. Thu Feb 3 17:24:00 2000 Richard Frith-Macdonald * Source/NSMenu.m: ([NSMenuWindowTitleView -mouseDown:]) fix memory allocation error when setting new menu location frame info. Thu Feb 3 02:56:10 2000 Enrico Sersale * Source/NSBezierPath.m Partially rewritten, fixed, added a concrete class ([-setCachesBezierPath:]): Implemented using NSImage. Thu Feb 3 03:45:08 2000 Nicola Pero * Source/NSButtonCell.m ([-drawInteriorWithFrame:inView:]): NSImageAbove, NSImageBelow: Rewritten. In these cases now we determine the space taken by the text; then all the remaining space is given to the image, which is centered in it. Thu Feb 3 02:20:29 2000 Nicola Pero * Source/NSButtonCell.m ([-cellSize]): Bug fix: typo would prevent button with both image and text, image above/below text, to size correctly. Wed Feb 2 06:56:33 2000 Nicola Pero With a hack the library is now able to pop up popupbuttons in the right position, correcting at run time bugs in the window frame code. This was hard. * Source/NSPopUpButtonCell.m (_convertBaseToScreen_with_fix): Added private function to do the conversion right, automatically fixing window frame origin bugs. * Source/NSPopUpButtonCell.m ([-attachPopUpWithFrame:inView:]): Use the above mentioned function to perform the coordinate conversion right. * Source/NSPopUpButton.m ([-mouseDown:]): Idem. Tue Feb 1 00:46:42 2000 Nicola Pero * Headers/AppKit/NSMenuItem.h: Removed unused ivar mi_hasSubmenu. * Source/NSMenuItem.m ([-init]): Removed reference to the unused ivar. Mon Jan 31 00:24:17 2000 Nicola Pero Rewritten, fixed, NSPopUpButton appearance. NB: When the button popups in the wrong position, that is a bug elsewhere. * Headers/AppKit/NSMenuItemCell.h: Added ivar _mcell_belongs_to_popupbutton. * Source/NSMenuItemCell.m ([-imageRectForBounds:]): In the special case _mcell_belongs_to_popupbutton == YES and there is an image, draw it at the extreme right. * Source/NSPopUpButtonCell.m: Added private method [NSMenuItemCell -setBelongsToPopUpButton:]. ([+initialize]): Added method. We are now caching the two standard images. ([-addItemWithTitle:]): Simplified. ([-insertItemWithTitle:atIndex:]): Set image position to right, and set cell to belong to popup button. ([-selectItem:]): Invoke setChangesState: NO and set proper image after setting state of any item. ([-selectItemAtIndex:]): Made code readable. ([-drawWithFrame:inView:]): Set background of image. * Source/NSMenuItemCell.m ([-calcSize]): Bug fix: don't move the image to the left if a valid image position has been already set. * Source/NSMenuView.m ([-setMenuItemCell:forItemAtIndex:]): Bug fix: Connect new cell to menuItem and menu so that it works. * Source/NSApplication.m ([-orderFrontStandardAboutPanelWithOptions:]): Display 'Info' in the title. 2000-01-28 Adam Fedor * Source/NSBrowser.m ([NSBrowser -_performLoadOfColumn:]): Don't release columns's columnMatrix, the column will do it. 2000-01-26 Adam Fedor * Source/NSGraphicsContext.m ([NSGraphicsContext +setCurrentContext:]): Retain (assign) the new context (fix suggested by Jonathan Gapen ) * gui/Model/GMAppkit.m ([NSMenuItem -encodeWithModelArchiver:]): Check to see if object responds to various selectors before invoking them. Wed Jan 26 06:50:14 2000 Nicola Pero Fixed mixed state stuff so that it is exactly as in macosx [untested]: * Headers/AppKit/NSCell.h: Turned _cell.state into a normal int; changed NSMixedState to -1. * Source/NSCell.m ([-setState:]): Rewritten, mixed state support. Wed Jan 26 02:03:25 2000 Nicola Pero * Documentation/gnustep-gui.tmpl.texi (Standard Info Panel): Added documentation for [NSApplication -orderFrontInfoPanel:] and [NSApplication -orderFrontInfoPanelWithOptions:]. Mon Jan 24 23:45:30 2000 Nicola Pero Implemented a standard Info Panel for GNUstep. To make everyone happy, both -orderFrontStandardAboutPanel: and -orderFrontStandardInfoPanel: are available; one displays 'About' in the title, and the other displays 'Info'; they are otherwise identical. GNUstep recommends using the 'Info' version. * Source/GNUmakefile (libgnustep-gui_OBJC_FILES): Added GSInfoPanel. (libgnustep-gui_HEADER_FILES): Idem. * Source/GSInfoPanel.m: New class. * Headers/AppKit/GSInfoPanel.h: New class. * Headers/AppKit/NSApplication.h: Added ivar _infoPanel, declaration of new methods. * Source/NSApplication.m ([-orderFrontStandardInfoPanelWithOptions:]): New method, implemented. ([-orderFrontStandardInfoPanel:]): Idem. ([-orderFrontStandardAboutPanel:]): Idem. ([-orderFrontStandardAboutPanelWithOptions:]): Idem. ([-dealloc]): Added release of _infoPanel. Mon Jan 24 04:01:55 2000 Nicola Pero * Source/NSApplication.m ([-orderFrontHelpPanel:]), ([-orderFrontColorPanel:]), ([-orderFrontDataLinkPanel:]), ([-runPageLayout:]): Display an alert panel informing that the corresponding panel has not been implemented yet. 2000-01-21 Adam Fedor * Headers/gnustep/gui/NSGraphicsContext.m: Change NSCompositeData... to NSCompositeDestination... Sat Jan 22 00:23:31 2000 Nicola Pero * Source/NSButtonCell.m ([-_init]): Updated for change in superclass' defaults: set text align to center. Sat Jan 22 00:05:08 2000 Nicola Pero Contributed by Fred Kiefer, with changings of mine: * Source/NSCell.m: Reordered methods. ([+defaultMenu]): New method, void implementation. ([-initTextCell:]): Set default text alignment to NSNaturalTextAlignment. ([-cellSize]): Fixed returned size when cell is of type NSImageCellType but no image set. ([-cellSizeForBounds:]): Semi-implemented. ([-titleRectForBounds:]): Implemented. ([-setType:]): Set standard font and title if of type text, and nil image if of type image [macosx]. ([-allowsMixedState]): New method, implemented. ([-setAllowsMixedState]): New method, implemented. ([-nextState]): New method, implemented. ([-setNextState]): New method, implemented. ([-image]): Return nil if cell is not of type image. ([-hasValidObjectValue]), ([-objectValue]), ([-setObjectValue:]): Added methods but real implementation still to do. ([-takeObjectValueFrom:]): Added method. ([-wraps]), ([-setWraps:]): Implemented [though wrapping is not implemented at all]. ([-setImportsGraphics:]), ([-importsGraphics]), ([-setAllowsEditingTextAttributes:]), ([-attributedStringValue]), ([-setAttributedStringValue:]): Added methods with void implementation. ([-editWithFrame:inView:editor:delegate:event:]): Use titleRectForBounds. ([-selectWithFrame:inView:editor:delegate:event:]): Use titleRectForBounds. ([-setEntryType:]): Set also cell to text type. ([-menu]), ([-menuForEvent:inRect:ofView:]), ([-setMenu:]), ([-setSendsActionOnEndEditing:]), ([-sendsActionOnEndEditing]): ([-formatter]), ([-setFormatter:]): Added method with void implementation. ([-acceptsFirstResponder]): Refined. ([-setMnemonicLocation:]), ([-mnemonic]), ([-mnemonicLocation]), ([-setTitleWithMnemonic:]), ([-showsFirstResponder]), ([-setShowsFirstResponder:]), ([-acceptsFirstResponder]), ([-refusesFirstResponder]), ([-setRefusesFirstResponder:]): Added methods with more or less trivial or void implementations. ([-initWithCoder:]), ([-encodeWithCoder:]): Updated for new bits _cell.allows_mixed_state and _cell.wraps. * Headers/gnustep/gui/NSCell.h: Added wraps and allows_mixed_state bits to the _cell struct. Fri Jan 21 01:22:08 2000 Nicola Pero Contributed by Fred Kiefer, with changings of my own: * Source/NSMatrix.m ([-deselectAllCells]): Bug fix: set _selectedCell to nil and _selectedRow and _selectedColumn to 0. ([-deselectSelectedCell]): Deselect all cells but without redrawing, as in macosx. ([-selectAll:]): Make the selected cell the last cell in the matrix, not the first. ([-selectCellAtRow:column:]): Deselect all cells and redisplay if argument row or column is -1; select text of selected cell if cell selectable. ([-sendDoubleAction]): If the selected cell is disabled, do nothing [macosx]. ([-setSelectionFrom:to:anchor:highlight:]): Moved three lines of code for cleaness; initialize some variables to zero to stop compiler complaints. ([-textDidBeginEditing:]): Pass all the notification user info when posting the new notification. ([-textDidEndEditing:]): Idem. ([-textDidChange:]): Idem, plus send textDidChange: to the selected cell too [macosx]. ([-mouseDown:]): Simplified sending of actions. Fri Jan 21 01:22:08 2000 Nicola Pero * Headers/AppKit/NSCell.h: Added comment to deprecate use of the macosx methods -acceptsFirstResponder, -refusesFirstResponder, -setRefusesFirstResponder:, and to warn about the fact that GNUstep does not have mnemonics in its interface. Fri Jan 21 00:44:37 2000 Nicola Pero Contributed by Fred Kiefer: * Headers/AppKit/NSCell.h: Added the NSCellAttribute NSCellAllowsMixedState as in macosx; added declarations of the macosx methods not in the OpenStep specifications. 2000-01-18 Adam Fedor * Source/NSCachedImageRep.m: Make "ImageCompositing" on by default. * Souce/NSImageRep.m: Likewise. Mon Jan 17 21:15:00 2000 Enrico Sersale * Source/NSBezierPath.m (-elementTypeAtIndex:associatedPoints:]): Changed to set the associatedPoints correctly. Mon Jan 17 6:32:00 1999 Richard Frith-Macdonald * Source/NSBundleAdditions.m: Catch exceptions when loading nib so we simply return YES or NO. Fix suggested by karl@nfox.com Sun Jan 16 8:57:00 1999 Richard Frith-Macdonald * Source/NSWindow.m: Don't log DnD stuff unless NSDragging logging is requested using '--GNU-Debug=NSDragging' Sat Jan 15 11:55:00 1999 Richard Frith-Macdonald * Source/NSBrowser.m: Don't permit scrolling by negative values. Sat Jan 15 07:29:37 2000 Nicola Pero * Source/NSSavePanel.m ([-_initWithoutGModel]): Tidyup for readability; use a NSButton for the application icon. Fri Jan 14 07:03:14 2000 Nicola Pero * Source/NSSliderCell.m ([-isFlipped]): Fixed typo, this method was called 'isFliped'. Fri Jan 14 04:33:21 2000 Nicola Pero Work to improve appearance. * Source/NSBox.m ([-sizeToFit]): More space around title. ([-calcSizesAllowingNegative:]): idem. * Source/NSBrowserCell.m ([-drawInteriorWithFrame:inView:]): Skip 2 points from left border before drawing text. * Source/NSButtonCell.m ([-cellSize]): Changed space between borders and contents if needed; fixed font height. ([-drawInteriorWithFrame:inView:]): When drawing both image and text, add space between image and border. * Source/NSCell.m ([-cellSize]): Fixed font height; removed additional height; added space between border and contents if needed. ([NSCell -editWithFrame:inView:editor:delegate:event:]): Added spacing between border and contents. ([-selectWithFrame:inView:editor:delegate:start:length:]): idem. ([-drawInteriorWithFrame:inView:]): Added spacing between border and contents. * Source/NSFormCell.m ([-cellSize]): Use super's cellSize. ([-cellSize]), ([-drawingRectForBounds:]), ([-drawWithFrame:inView:]): Changed spacing between title and editable field to 3. * Source/NSForm.m ([-initWithFrame:mode:cellClass:numberOfRows:numberOfColumns:]), ([-initWithFrame:mode:prototype:numberOfRows:numberOfColumns:]): Added methods to set the standard interline spacing to 4 during initialization. * Source/NSPanel.m (GSAlertPanel): Added ivar originalSize, updated encoding/decoding methods. ([GSAlertPanel -initWithContentRect:styleMask:backing:defer:screen:]): Fixed autoresizingMask and position of messageField, changed autoresizingMask of titleField to suit our needs. ([GSAlertPanel -setTitle:message:def:alt:other:]): Implemented advanced automatic resizing of buttons and of the panel. All buttons are made of a same size computed to be comfortable for all, and panel is resized whenever needed to display long messages or big buttons. * Source/NSPopUpButtonCell.m ([-drawWithFrame:inView:]): Skip 5 points from left side before drawing text. * Source/NSSavePanel.m ([-_initWithoutGModel]): Fixed heights of buttons and of the form; fixed position of title. Code to have NSForm's editable fields aligned in a row. This was tricky. * Headers/AppKit/NSForm.h: Added ivar _title_width_needs_update. * core/gui/Source/NSForm.m ([-insertEntry:atIndex:]): We observe each added cell for messages _NSFormCellDidChangeTitleWidth. ([-removeEntryAtIndex:]): Remove notification for removed cell. ([-dealloc]): Added method to remove self from notification center. ([-_setTitleWidthNeedsUpdate:]): Added private method invoke by the notification center. ([-drawRect:]): Added method; needs to invoke calcSize if needed before drawing. ([-setValidateSize:]): Added method. ([-calcSize]): Added method. * Headers/AppKit/NSFormCell.h: Changed ivar name; added declaration of notification _NSFormCellDidChangeTitleWidthNotification. * Source/NSFormCell.m ([-initTextCell:]): Minor optimizations. ([-setTitleWidth:]): Fixed bug. ([-calcDrawInfo:]): New method. ([-setTitle:]), ([-setTitleFont:]), ([-setTitleWidth:]): Post notification _NSFormCellDidChangeTitleWidthNotification. ([-initWithCoder:]), ([-encodeWithCoder:]): Implemented. * Source/externs.m: Added _NSFormCellDidChangeTitleWidthNotification. Thu Jan 13 20:37:00 1999 Richard Frith-Macdonald * Source/NSMenu.m: minor tidyups and fixes for Gorm * Source/NSMenuView.m: minor coding fixes * Source/NSBundleAdditions.m: support for setting main menu from nib. Mon Jan 10 00:32:44 2000 Nicola Pero * Headers/AppKit/NSView.h: Prefixed all ivars with underscores; removed old unused ivar. * Source/NSApplication.m: Updated for ivar name change. * Source/NSBox.m: idem. * Source/NSBrowser.m: idem. * Source/NSButton.m: idem. * Source/NSClipView.m: idem. * Source/NSColorWell.m: idem. * Source/NSControl.m: idem. * Source/NSMatrix.m: idem. * Source/NSMenu.m: idem. * Source/NSMenuView.m: idem. * Source/NSPopUpButton.m: idem. * Source/NSProgressIndicator.m: idem. * Source/NSScroller.m: idem. * Source/NSScrollView.m: idem. * Source/NSSlider.m: idem. * Source/NSSplitView.m: idem. * Source/NSTabView.m: idem. * Source/NSTableHeaderView.m: idem. * Source/NSTableView.m: idem. * Source/NSTextField.m: idem. * Source/NSTextView.m: idem. * Source/NSView.m: idem. * Source/NSWindow.m: idem. * Model/GMAppKit.m: idem. * Source/NSApplication.m ([NSAppIconView -drawRect:]): Fixed bug in app icon images drawing. * Source/NSBrowser.m ([-_performLoadOfColumn:]): Tiny tidy ups. * Source/NSColor.m ([+colorFromString:]): Fixed typo. * Source/NSScroller.m ([-drawRect:]): Fixed bug: should fill _bounds, not _frame. * Source/NSTableView.m: Some code added. * Source/NSText.m: Access ivars _frame, _bounds, _window directly. * Source/NSWindow.m ([-sendEvent:]), ([-setFrame:display:]), ([-orderWindow:relativeTo:]), ([-becomeKeyWindow]): Access ivar window_num. * Source/GSTable.m ([-resizeWithOldSuperviewSize:]): Don't access ivar _frame directly, so that the class can be easily ported to other OpenStep implementations. Sun Jan 9 15:20:00 1999 Richard Frith-Macdonald * Source/GSTextStorage.m: ([-attributesAtIndex:effectiveRange:]) fixed illegal parameter - reported by jagapen@whitewater.chem.wisc.edu Sat Jan 8 23:50:38 2000 Nicola Pero * Source/NSColorList.m: Implemented reading available color lists from disk. ([+_loadAvailableColorLists]): New private method to defer scanning of standard directories and loading available color lists till really needed. Related changings and fixes in the whole class. Sat Jan 8 02:40:12 2000 Nicola Pero * Headers/AppKit/NSColorList.h: Prefixed ivars with underscores, changed names. * Source/NSColorList.m: Class rewritten; untested. Fri Jan 7 20:30:00 2000 Richard Frith-Macdonald * Source/NSResponder.m: Changed _rightMouseDisplay to take the event as a parameter. * Source/NSMenu.m: Implemented ([-_rightMouseDisplay:]) with various minor supporting changes. * Source/NSMenuView.m: Lots of messing with mouse tracking in support of right-mouse menu popup and somewhat smoother operation. Fri Jan 7 18:09:15 2000 Nicola Pero * Headers/AppKit/NSBrowser.h: Fixed typo. * Headers/AppKit/NSText.h: Tiny check in enum. * Source/NSCell.m ([-initImageCell:]), ([-initTextCell:]): Minor optimization: do not initialize variables already initialized by allocation. * Headers/AppKit/NSCell.h: Changed _cell.is_enabled to _cell.is_disabled, so that it does not need initialization. * Source/NSActionCell.m ([-setEnabled:]): Updated for the changing. * Source/NSButtonCell.m ([-textColor]): idem. * Source/NSCell.m: idem. * Source/NSComboBoxCell.m ([-_didClick:]): idem. * Source/NSMenuItemCell.m ([-drawTitleWithFrame:inView:]): idem. * Source/NSBrowserCell.m ([-initTextCell:]), ([-initImageCell:]): Further optimization: initialize everything directly without invoking super's initialization; do not initialize variables already initialized by allocation. * Source/NSButtonCell.m ([-_init]): Tiny optm. * Headers/AppKit/NSControl.h: Added ivar _ignoresMultiClick. * Source/NSControl.m ([-setIgnoresMultiClick:]), ([-ignoresMultiClick]): Implemented. ([-mouseDown:]): Added ignoresMultiClick support. * Source/NSCell.m ([-trackMouse:inRect:ofView:untilMouseUp:]): Bug fix: honour the argument of untilMouseUp:. * Source/NSControl.m ([-mouseDown:]): Invoke the cell's +prefersTrackingUntilMouseUp to decide if it's the case to track mouse until up. * Source/NSMatrix.m ([-_mouseDownNonListMode:]), ([-mouseDown:]): Invoke cell mouse tracking with untilMouseUp: NO. * Source/NSMatrix.m ([-sendDoubleAction]): Fixed. ([-sendAction]): Fixed. ([-sendAction:to:]): Use _action, _target. ([-mouseDown:]): Rewritten double/multi-click support. Fri Jan 7 16:40:00 2000 Richard Frith-Macdonald * Source/NSWindow.m: Removed spurious code for setting menu window locations. * Source/NSMenu.m: Implemented 'correct' save/restore of menu locations conforming to MacOS-X implementation details. Fri Jan 7 10:32:00 2000 Richard Frith-Macdonald * Source/Functions.m: NSApplicationMain() added suggestions from karl@nfox.com to destroy application before exit and log if the info file contains an invalid class. Fri Jan 7 8:37:00 2000 Richard Frith-Macdonald * Source/NSApplication.m: ([-finishLoading]) add support for loading main nib. * Source/Functions.m: NSApplicationMain() trivial update to make use of NSPrincipalClass info. Wed Jan 5 20:04:00 2000 Richard Frith-Macdonald * Source/NSMenuView.m: Changes to mouse tracking loop to provide more sophisticated handling of opening/closing of submenus in an attempt to mimic the behavior of NeXTstep. Wed Jan 5 16:27:00 2000 Richard Frith-Macdonald * Source/NSMenuItem.m: minor fixes and tidying. * Source/NSMenuView.m: reverted to previous version - last change broke much more than it fixed. Also tidied coding style a bit and fixed a couple of encode/decode bugs. Mon Jan 3 18:35:00 2000 Richard Frith-Macdonald * Source/NSBundleAdditions.m: Added ([-awakeWithContext:]) method for nib containers to wake up a newly unarchived nib. 2000-01-03 Adam Fedor * Source/NSBitmapImageRep.m ([NSBitmapImageRep -draw]): Use size of image when passing rect to NSDrawBitmap. Sun Jan 2 20:20:00 2000 Richard Frith-Macdonald * Source/NSApplication.m: Fixes for focusm handling. * Source/NSWindow.m: ditto Fri Dec 31 17:28:00 1999 Richard Frith-Macdonald * Source/NSSlider.m: ([drawRect:]) minor drawing fix to ensure that the slider knob is drawn in the correct place. Fri Dec 31 10:49:00 1999 Richard Frith-Macdonald * Source/NSBundleAdditions.m: When decoding nib container, check for a 'NSVisible' array, and order the windows it contains to the front. Wed Dec 29 7:11:00 1999 Richard Frith-Macdonald * Source/NSSliderCell.m: Fix so that setting and taking values from the cell work properly - removed unused ivar. * Headers/AppKit/NSSliderCell.h: removed unused ivar. 1999-12-29 David Lazaro Changed name of function so GNUstep GUI library can be linked again. * Source/tiff.m (NSTiffWrite): Changed name of NSWriteTiff to NSTiffWrite. * Source/libgnustep-gui.def: Same change here. 1999-12-28 Adam Fedor * Source/NSBitmapImageRep.m ([NSBitmapImageRep -initWithBitmapDataPlanes:...]): Move check for opaqueness to here from backend. * Headers/gnustep/gui/DPSOperators.h: New operators colorimage and alphaimage. * Headers/gnustep/gui/NSGraphicsContext.h: Likewise. * Source/NSGraphicsContex.m: Add stubs. * Source/NSBitmapImageRep.m (-draw): Implement using NSDrawBitmap. * Source/NSCachedImageRep.m: Conditional use of PScomposite functions for drawing methods (set user default "ImageCompositing" to YES for this to work). Tue Dec 28 15:58:00 1999 Richard Frith-Macdonald Initial hack of support for encoding/decoding images - untested. * Source/NSBitmapImageRep.m: Code for writing tiffs etc. * Source/NSImage.m: Archiving support and tifying. * Source/NSImageRep.m: Archiving support and tifying. * Source/tiff.m: modifications for compression and for writing. * Headers/gnustep/gui/NSBitmapImageRep.h: tidy and support writing. * Headers/gnustep/gui/NSImage.h: ditto * Headers/gnustep/gui/NSImageRep.h: ditto * Headers/gnustep/gui/nsimage-tiff.h: ditto 1999-12-24 David Lazaro * Source/NSMenuView.m ([NSMenuView -trackWithEvent:]): Added hysteresis to the item selection code. Wed Dec 22 12:04:00 1999 Richard Frith-Macdonald * Source/NSImage.m: When creating an off-screen cache, fill with the background color (so having multiple caches for different backgrounds will work). Set 'NSImageDoesCaching' to 'YES' by default - we do image caching as standard now. Wed Dec 22 10:08:00 1999 Richard Frith-Macdonald * Source/NSWindow.m: ([-sendEvent:]) reset _lastDragView on exit from a view or on completion of dragging operation. This ensures that if you do two drags into the same view, the view gets two draggingEntered messages (one for each session). Wed Dec 22 5:24:00 1999 Richard Frith-Macdonald * Source/NSPanel.m: Fixed image display in alert panel. Tue Dec 21 01:25:00 1999 Enrico Sersale * Added Source/NSBezierPath.m and Headers/AppKit/NSBezierPath.h Mon Dec 20 16:45:00 1999 Richard Frith-Macdonald * Source/NSView.m: Fix removal of view from window such that we reset the windows first responder if any of the removed views in first responder (avoid crash iv views subsequently deallocated). * Source/NSBundleAdditions.m: Removed excess release of bundle data. * Source/NSPanel.m: Call ([-sizeToFit]) for fields in alert panels so they are big enough for their contents. Mon Dec 20 11:00:00 1999 Richard Frith-Macdonald * Source/NSSavePanel.m: Use symbolic constants for resize mask. * Source/NSBrowser.m: size the matrix to fit when it is created. Sat Dec 18 16:05:46 1999 Nicola Pero * Headers/AppKit/NSSplitView.h: Prefixed ivars with underscores; changed widths' type from int to float; removed method -setDividerThickNess:. * Source/NSSplitView.m: Updated for ivar name change; access ivars directly. ([-dividerThickness]): Return 6, our default dividerThickness. ([-setDividerThickness:]): Removed method. Subclasses need to ovverride -dividerThickness to do this (or else use the GNUstep extension -setDimpleImage:resetDividerThickness:). ([-initWithFrame:]): invoke dividerThickness to set the ivar _dividerWidth, used everywhere else when needed. Changed things so that overriding dividerThickness should actually work; untested. ([-initWithCoder:]), ([-encodeWithCoder:]): Fixed. Tempor. commented out lines about encoding/decoding of dimple image (which is anyway a GNUstep extension) till encoding/decoding of images is implemented. Sat Dec 18 5:38:00 1999 Richard Frith-Macdonald * Source/NSView.m: ([-initWithCoder:]) small optimisation and consistency check when decoding and adding subviews. Fri Dec 17 23:44:53 1999 Nicola Pero * Headers/AppKit/NSBox.h: Prefixed ivars with underscores. * Source/NSBox.m: Updated for ivar name change. * Source/NSBox.m ([-initWithCoder:]): Set the first subview as the content view; make sure that _title_rect and _border_rect are automatically computed on decoding. ([-encodeWithCoder:]): Do not encode the content view, which is already encoded by NSView; do not encode title_rect and border_rect. ([-drawRect:]): Tiny semplification. ([-sizeToFit]): Access directly super_view ivar. ([-setFrameFromContentFrame:]): idem. * Source/NSMatrix.m ([-getRow:column:forPoint:]): Bug fix: manage the case of no rows, no columns. * Source/NSSavePanel.m ([-browser:selectCellWithString:inColumn:]): Now that setNeedsDisplay: works, use it instead of display. * Source/NSTextField.m ([-initWithCoder:]): Added setting of delegate. * Source/NSView.m ([-initWithCoder:]): Don't invoke self's -addSubview: to set the subviews, because NSBox overrides that method to do another job. Interesting bit to reflect upon btw. Fri Dec 17 12:03:00 1999 Richard Frith-Macdonald * Source/NSWindow.m: Remove some inefficient code that was calling ([content_view superview]) when we now have the _wv ivar. * Source/NSView.m: Fix another autodisplay problem - when an opaque subview was being set as needing display AND another non-overlapping subview was set for display, the opaque subview didn't get redrawn. * Source/NSPopUpButton.m: removed an NSLog 1999-12-16 Adam Fedor * New RTF parser from Stefan Bðhringer . May not work because of incomplete implementation of NSFontManager and others. * Source/Parsers/attributedStringConsumer.m New file. * Source/Parsers/rtfScanner.c: Likewise. * Source/Parsers/rtfGrammer.y: Likewise. * Source/NSFontManager.m: Stubs for some unimplemented functions. Thu Dec 16 04:09:20 1999 Nicola Pero * Headers/AppKit/NSControl.h: Prefixed ivars with underscore; added declaration of copyWithZone:. * Source/NSControl.m: Updated for change in ivar names; ([-drawCellInside:]): Fixed bug. * Source/NSButton.m: Updated for change in control ivar names. * Source/NSPopUpButton.m: idem. * Source/NSSecureTextField.m: idem. * Source/NSSlider.m: idem. * Source/NSTextField.m: idem. * Source/NSScroller.m ([-drawRect:]): Fill also the space between the knobslot and the frame. * Source/NSScrollView.m: Access ivars bounds, borderType directly. * Source/NSView.m ([-removeFromSuperview]): Access ivar frame directly. Wed Dec 15 17:15:00 1999 Richard Frith-Macdonald * Source/NSCell.m: encode/decode some missing ivars. * Source/NSButtonCell.m: encode/decode some missing ivars. Wed Dec 15 15:25:00 1999 Richard Frith-Macdonald * Source/NSWindow.m: ([-setFrameAutosaveName:]) bugfix for setting a nil name (and removing the old name). * Source/NSMenu.m: ([-close]) close attached menus too. ([-display]) display attached menus too. Wed Dec 15 11:13:00 1999 Richard Frith-Macdonald * Source/NSResponder.m: Don't try to encode/decode next responder - this info should be reconstructed by subclasses. * Source/NSWindow.m: Remove code to save/restore next responder in order to defeat NSResponder archiving. * Source/NSView.m: Rewrite encoding/decoding. Tue Dec 14 19:40:12 1999 Nicola Pero * Source/NSBrowserCell.m: Tiny tidings in initialization; ([-drawInteriorWithFrame:inView:]): Rewritten so that alternateImage is correctly supported. If the cell is of type NSImageCellType, and alternate image is set, it is drawn instead of the standard image when the cell is highlighted. Untested. * Source/NSCell.m ([-_init]): Removed method; code moved to ([-initTextCell:]),([-initImageCell:]); redundancies removed. Tue Dec 14 19:07:00 1999 Richard Frith-Macdonald * Source/NSApplication.m: modal session fixes (and tidying) suggested by georg@mondoshawan.unix.cslab.tuwien.ac.at Tue Dec 14 16:51:00 1999 Richard Frith-Macdonald * Source/NSWindow.m: ([-becomeKeyWindow]) Don't ask the backend to make us key unless we are visible. ([-orderWindow:relativeTo:]) ask backned to make us key when we order in (if we should be key that is). Tue Dec 14 11:15:00 1999 Richard Frith-Macdonald * Headers/AppKit/NSMenuitemCell.h: Removed implementation cache ivars and added an ivar for temporary storage of background color. * Source/NSMenuItemCell.m: Removed draw implementation caching to decrease memory footprint, but added color and image class caching which will more than compensate in performance. Also added use of highlight version of menu arrow. * Source/NSImage.m: minor image caching fixes and more debug statements. 1999-12-13 * Source/NSWindow.m (-_processResizeEvent): Add DPScurrentgstate so DPS server knows we updated the backing buffer. Mon Dec 13 20:00:29 1999 Nicola Pero * Headers/AppKit/NSBrowserCell.h: Removed two ivars. * Source/NSBrowserCell.m: Made allocation/deallocation faster; added untested alternateImage support. Mon Dec 13 16:06:36 1999 Nicola Pero * Headers/AppKit/NSActionCell.h: Added ivar _control_view. * Headers/AppKit/NSBrowserCell.h: Use two bits to store two BOOL. * Headers/AppKit/NSButtonCell.h: Use a bit to store a BOOL. * Headers/AppKit/NSCell.h: Moved ivar _control_view to NSActionCell. Packed more ivars into the bitfield. Added two bits in the bitfield for subclass use. Removed unused ivar _cell_size. * Headers/AppKit/NSFormCell.h: Use a bit to store a BOOL. * Headers/AppKit/NSTextFieldCell.h: Use two bits for two BOOL. * Source/NSActionCell.m ([-drawWithFrame:inView:]): Added method, per spec. * core/gui/Source/NSButtonCell.m: Updated. * Source/NSBrowser.m: Tiny optms in GSBrowserTitleCell. * Source/NSBrowserCell.m: Updated. * Source/NSButtonCell.m: Updated. * Source/NSCell.m ([NSCell -setControlView:]): Removed, this method should not exist. Moved actual implementation of ([-controlView]) to NSActionCell, as per spec. Moved any reference to _control_view to NSActionCell; in ([-performClick:]), invoke [self controlView]. * Source/NSControl.m ([-setCell:]): Updated. * Source/NSFormCell.m: Updated. * Source/NSImageCell.m: idem. * Source/NSMenuItemCell.m: idem. * Source/NSPopUpButtonCell.m: idem. * Source/NSTableHeaderCell.m: idem. * Source/NSTextFieldCell.m: idem. * Headers/AppKit/NSColorWell.h: Removed unused ivar. * Headers/AppKit/NSScroller.h: Removed unused ivar. * Headers/AppKit/NSView.h: Removed unused ivar needs_display. Mon Dec 13 03:51:30 1999 Nicola Pero Cell optimizations: use a bitfield in NSCell to reduce memory consumption; access cell ivars directly while drawing; minor speed tricks here and there for cells; browser cells do not create any longer an auxiliary cell each, thus hugely reducing time and memory required to create browser cells. To my great delight some things are much faster now. * Headers/AppKit/NSActionCell.h: Prefixed all ivars with underscores. * Headers/AppKit/NSBrowserCell.h: Removed unused ivar. * Headers/AppKit/NSButtonCell.h: Prefixed all ivars with underscores; removed unused ivar. * Headers/AppKit/NSCell.h: Introduced a bitfield; prefixed all ivars with underscores. * Headers/AppKit/NSSliderCell.h: Removed unused ivar. * Source/NSActionCell.m: Optimizations. * NSBrowserCell.m: Important optimizations, rewritten. ([-setTextFieldCell:]), ([-setBranchImageCell:]), ([-setHighlightBranchImageCell:]): Removed unused private methods. * Source/NSButtonCell.m: Updated. * Source/NSCell.m: Important optimizations. * Source/NSComboBoxCell.m: Updated. * Source/NSFormCell.m: Optimizations. * Source/NSImageCell.m: Optimizations. * Source/NSMenuItemCell.m: Updated. * Source/NSPopUpButtonCell.m: Updated; ([-dismissPopUp]): Use GNUstep close menu method. * Source/NSSliderCell.m: Tiny optimization. * Source/NSTableHeaderCell.m: Updated. * Source/NSTextFieldCell.m: Updated. * Source/NSBox.m: Updated for new way of getting border sizes. * Source/NSBrowser.m: idem. * Source/NSSlider.m: Minor optimization.