1@c -*-texinfo-*- 2@ifset TEXT-ONLY 3@include version.texi 4@end ifset 5 6@ifclear ANNOUNCE-ONLY 7@chapter NEWS 8 9The currently released version of the library is @samp{@value{GNUSTEP-GUI-VERSION}}. 10@end ifclear 11 12@section Noteworthy changes in version @samp{0.28.0} 13 14This version adds support for modern XIB files and many new 15classes. Plus the usual bunch of bug fixes. 16 17@itemize @bullet 18@item Support loading of document XIB files. 19@item Improve Key Value Binding for NSArrayController and add more bindings. 20@item Better support for multi monitor usage and other improvement in 21the backend integration. 22@item Add classes NSFontCollection, NSColorSampler, NSSpeechRecognizer, 23NSAppearance, NSPDFInfo, NSPICTImageRep, NSCIImageRep, NSPDFImageRep, 24NSPDFPanel, NSDataAsset, 25NSDatePicker, NSDatePickerCell, NSPredicateEditor, 26NSPredicateEditorRowTemplate, NSRuleEditor, NSGestureRecognizer, 27NSButtonTouchBarItem, NSCandidateListTouchBarItem, 28NSClickGestureRecognizer, NSColorPickerTouchBarItem, 29NSCustomTouchBarItem, NSGroupTouchBarItem, 30NSMagnificationGestureRecognizer, NSPanGestureRecognizer, 31NSPickerTouchBarItem, NSPopoverTouchBarItem, NSPressGestureRecognizer, 32NSRotationGestureRecognizer, NSSharingServicePickerTouchBarItem, 33NSSliderTouchBarItem, NSStepperTouchBarItem, NSTouchBarItem, NSTouchBar, 34NSTouch, NSDockTile. 35@item Implement NSEPSImageRep. 36@item Better encoding handling in RTF files. 37@item Theming and drawing improvements. 38@item Increase small font size to 10. 39@item New cursor and stepper images. 40@item Move NSFileWrapper to Foundation. 41@item Fixed build on Debian GNU/kFreeBSD. 42@item With command line argument -autolaunch YES, do not activate the 43application when -activateIgnoringOtherApps: is invoked. 44@item Improvements to WindowMaker compatibility (e.g. WMFHideApplication 45support). 46@item Lowered NSFloatingWindowLevel by one to distinguish floating panels from 47menus. 48@end itemize 49 50@ifclear ANNOUNCE-ONLY 51@section Noteworthy changes in version @samp{0.27.0} 52 53This version includes numerous bugfixes, compatibility 54improvements and other changes accumulated over the last year. 55It also enables work to be done on integrating NSViews with a Core 56Animation renderer. 57 58@itemize @bullet 59@item Make targetForAction safer. 60@item Speed up menu updates. 61@item Clean up speech tool compilation and switch to newer interface. 62@item Fix bug in CUPS subclassing introduced in last release. 63@item Minor improvements to typesetting. 64@item Add NSIsControllerMarker. 65@item Fix tracking on segmented cell. 66@item Bring slider cell closer to Cocoa implementation. 67@item Add ivar for Core Animation in NSView. 68@item Improve border calculation on printing. 69@item Lazy load app icon. 70@item Better detection of removable volumes. 71@item Polish translations. 72@item Japanese translations. 73@item Lots of bug fixes. 74@end itemize 75 76@section Noteworthy changes in version @samp{0.26.2} 77 78This version is a small, but important bugfix release. 79 80@itemize @bullet 81@item printing: Fix allocation of the CUPS printing classes. 82@item installation: Fix the configure script. 83@end itemize 84 85@section Noteworthy changes in version @samp{0.26.1} 86 87This version is released to conincide with version 1.25.1 of 88gnustep-base, which contains changes required for this version of 89gnustep-gui and gnustep-back. 90 91It includes an important workaround for users of GNUstep 92Objective-C Runtime (libobjc2) and non-fragile ABI to avoid a bug 93in interaction between the clang compiler and the runtime 94when non-fragile ABI is in use. Specifically, Clang and the 95runtime may disagree on what is the offset of an ivar 96in a class's RAM. This manifested in a crash at application 97startup due to misalignment of _gcontext inside NSThread. See 98the 99@uref{http://lists.gnu.org/archive/html/discuss-gnustep/2017-12/msg00129.html, mailing list discussion} 100for more information. 101 102It also contains the following changes: 103 104@itemize @bullet 105@item tests: Cleanup of warnings. 106@item tests: Fix text system deallocation test. 107@item printing: Undefine __BLOCKS__ before including cups.h, as some versions of the header expect that libdispatch is present and used if __BLOCKS__ is defined. 108@item graphics context: Workaround for Clang+libobjc2+nonfragile ABI issue. 109@end itemize 110 111@section Noteworthy changes in version @samp{0.26.0} 112 113This version was bumped due to previous binary incompatibilities 114between 0.25.0 and 0.25.1. This version also includes numerous 115compatibility improvements from the Summer of Code 116project, and a wide variety of other fixes. Notably, it fixes the 117use of cupsGetPPD() in the printing system. 118 119@itemize @bullet 120@item printing: Add an include to get deprecated function cupsGetPPD() on newer CUPS systems. 121@item chore: Bump required base version. 122@item tiff: Support for writing resolution. 123@item jpeg: Save resolution information if it is different from 72 dpi. 124@item save panel: Fix return type of sorting function. 125@item events: Add some newer Cocoa enums and one method with dummy implementation. 126@item speech synthesis: NSSpeechSynthesizerDelegate is now a @@protocol on runtimes that support it. 127@item pasteboard: New type identifiers. 128@item translations: Some work on Polish, Russian and German translations 129@item cell: Improvements to mouse tracking logic on NSCell. 130@item image: If an unknown named image is unarchived with a coder or keyed coder, keep the name. 131@item screen: Add -backingScaleFactor and return 1.0. 132@item window: Return 1.0 from -backingScaleFactor. 133 134@item compatibility: Numerous stub implementations of constants, classes and methods to improve source-level compatibility. 135@item other bugfixes 136@end itemize 137 138@section Noteworthy changes in version @samp{0.25.1} 139 140@itemize @bullet 141@item JPEG (saving) alpha channel fixes and size with resolution != 72 142@item JPEG resolution read support 143@item TIFF saving fixes 144@item Improved volumes mounting and support 145@item Portability improvements in volume mounting and support 146@item Corrected layout of empty strings 147@item Only update visible menus 148@end itemize 149 150@section Noteworthy changes in version @samp{0.25.0} 151 152@itemize @bullet 153@item Fixes for new GIF library versions 154@item Theming of named images for specific applications by the use of the CFBundleIdentifier in the theme 155@item New icons and corresponding constants for special folders, recycler and others 156@item Improvements in NSWorkspace icon lookup 157@item Improvements in removable media commands, imported and cleaned from GWorkspace 158@item Numerous bug fixes and improvements in Cocoa compatibility 159@item Numerous theme tweaks 160@item Spanish locale 161@end itemize 162 163@section Noteworthy changes in version @samp{0.24.1} 164 165From a look through ChangeLog, we can see a lot of bugfixes for this release, 166with the main focus on avoiding display glitches and improving OSX 167compatibility. 168 169@section Noteworthy changes in version @samp{0.24.0} 170 171New features include: 172@itemize @bullet 173@item Require newer base release as we moved the 174-replaceObject:withObject: of NSKeyedUnarchiver there. 175@item Support for newer releases of the gif library. 176@item NSTabView is now flipped. 177@item Theme improvements and changes to image mapping. 178@end itemize 179 180Many bugfixes. 181 182@section Noteworthy changes in version @samp{0.23.1} 183 184This is a bugfix release, primarily to deal with coding/archiving issues. 185 186 187@section Noteworthy changes in version @samp{0.22.0} 188 189New features include: 190@itemize @bullet 191@item This version is binary incompatible with previous versions due to the change of NSNotFound in GNUstep base. 192@item Support for drawing the GUI with a scale factor, for high-DPI monitors. 193@item Character panel 194@item Color picker ``Magnifier'' tool, for grabbing the color of arbitrary parts of the screen 195@end itemize 196 197Many NSImage improvements (Mac OS X 10.6 drawing methods, better selection of image reps, better support for icons). Many bugfixes, including in Xib loading, printing, and NSView geometry. 198 199@section Noteworthy changes in version @samp{0.20.0} 200 201A new stable release. Many improvments with Nib loading, documents and 202document controllers. Fixed many drawing issues, particularly 203ones related to flipping. Much improved theming. 204 205@section Noteworthy changes in version @samp{0.19.0} 206 207This is an (unstable) copy of the 0.18.0 release 208 209@section Noteworthy changes in version @samp{0.18.0} 210 211A new stable release that has had many improvements. Many new 212Mac OS X methods (10.5 and newer) were added. Many Windows specific 213improvements were made (particularly with the use of the Windows theme). 214There is also better compatibility with Mac OS X in terms of usage of NSInteger 215and other definitions. 216 217@section Noteworthy changes in version @samp{0.17.1} 218 219@itemize @bullet 220@item New Mac OS X 10.5 methods in NSFont 221@item Add live resize in NSSplitView 222@end itemize 223 224@section Noteworthy changes in version @samp{0.17.0} 225 226@itemize @bullet 227@item New Mac OS X 10.5 methods in many classes 228@item Toolbars have been completely rewritten and improved. 229@item Several improvements for Garbage Collection 230@end itemize 231 232@section Noteworthy changes in version @samp{0.16.0} 233 234@itemize @bullet 235@item Nib loading refractored and improved. 236@item Added support for autosaving in NSDocuments 237@item NSWindowController made a subclass of NSResponder 238@item NSTokenField and netokenFiledCell classes added. 239@end itemize 240 241@section Noteworthy changes in version @samp{0.14.0} 242 243@itemize @bullet 244@item New class NSGlyphGenerator for glyph generation 245@item NSSplitView implemented setAutosaveName: 246@item NSOpenGLView added some Mac OS X 10.3 methods 247@item Manu bug fixes. 248@end itemize 249 250@section Noteworthy changes in version @samp{0.13.2} 251 252@itemize @bullet 253@item Printing works a little better now. 254@item NSPopUpButtonCell - object encoding was changed 255@item NSTextView - several updates and Mac OS X methods added 256@item NSWindow - devince interaction was changed. You need to use 257gnustep-back 0.13.2 with this version 258@item New class NSSegmentedCell. 259@item NSDrawer was implemented. 260@end itemize 261 262@section Noteworthy changes in version @samp{0.13.1} 263 264@itemize @bullet 265@item NSMenu - Added more MacOS X methods and an ivar. 266@item Added support for hiding views. 267@item Added Key-Value bindings implementation (NSKeyValueBinding) 268with support in several classes (NSControl, NSTextField, NSView, etc). 269@item Added some MacOS X 10.4 methods to NSTableView. 270@item Changed the NSCursor hot point to 0,0 for MacOS X compatibility. 271@end itemize 272 273@section Noteworthy changes in version @samp{0.13.0} 274 275This is an unstable release. There may be backward compatibility issues 276with previous releases of the gui library. 277 278@itemize @bullet 279@item Switched to use LGPL 3 and GPL 3. 280@item Added new methods from Mac OS X 10.4 for NSDragging, NSFontDescriptor, 281NSAttributedString, NSImageView, NSStringDrawing, NSParagraphStyle, 282NSView, NSCell, NSActionCell, NSAlert, NSApplication, NSBitmapImageRep, 283NSBox, NSColor, NSColorSpace, NSComboBox, NSComboBoxCell, 284NSDocumentController, NSEvent, NSScreen, NSFont, NSFontManager, 285NSFormCell, NSForm, NSWindow, NSTextField, NSTextFieldCell. Some ivar 286names were changed also. 287@item Moved Postscript printing methods from NSView to NSGraphicsContext. 288@item Rewrote the NSView drawing mechanism to always use 289[displayRectIgnoringOpacity:inContext]. 290@item Report more controls as being flipped. (NSTextField, NSTableHeaderView, 291NSSlider, NSProgressIndicator, NSButton) NSTabView is still missing. 292@item In NSAffineTransform use optimized primitive methods from base. 293@item Add font attribute fixing to NSAttributedString. To allow for the output 294of glyphs not present in the current font. 295@item Optimized the validation of edited cells. 296@item Implementation of special connectors for Key-Value binding. 297@item Base library version 1.15.1 is required for this release 298@end itemize 299 300@section Noteworthy changes in version @samp{0.12.0} 301 302It has been a long time since the last release and many things have been 303added and changed, including new classes, new ivars, and new methods. 304 305@itemize @bullet 306@item Lots of improvements to the NSBitmapImage subclasses thanks to Mark Tracy 307@item GSTheme and other classes were added to improve support of theming. 308@item Added new methods from Mac OS X 10.4 for NSControl, NSResponder, 309NSDocument, NSPrintOperation, NSWindowController, NSCell, 310NSMenuItem, NSView. Some ivar names were changed also. 311@item Added new ivars for NSMenuItem, NSPrintOperation, NSTableView, 312NSDrawer, NSScrollView. 313@item New classes from Mac OS X 10.4 and earlier were added including 314NSLevelIndicator, NSObjectController, NSUserDefaultsController, 315NSKeyValueBinding, NSArrayController, NSController. 316@item NSSpellServer and NSAffineTransform was moved to GNUstep base 317for Mac OS X compatibility. 318@end itemize 319 320@section Noteworthy changes in version @samp{0.11.0} 321 322@itemize @bullet 323@item Added support for keyed encoding in all gui classes. 324@item Added mechanism to allow for dynamic extension of 325model loading mechanism 326@item Implemented glue code in GSNibCompatibility for 327classes such as NSIBObjectData, NSClassSwapper, etc. to 328facilitate nib loading. 329@end itemize 330 331@section Noteworthy changes in version @samp{0.10.3} 332 333@itemize @bullet 334@item Horizontal menus now work 335@item Better support for tracking active applications. 336@end itemize 337 338@section Noteworthy changes in version @samp{0.10.2} 339 340Mostly bug fixes. 341 342@section Noteworthy changes in version @samp{0.10.1} 343 344GNUstep now uses v19 of portaudio for the sound daemon. Version v19 345hasn't been officially released, but it is still used in several 346distributions (SuSE, etc) as v18 is very old. 347 348@section Noteworthy changes in version @samp{0.10.0} 349 350This release is binary incompatible with previous releases. 351The interface version of the library has changed so that apps, tools 352and libraries that use the base library need to be recompiled to use 353this new version. 354 355@itemize @bullet 356@item Model loading supports window auto-positioning 357@item Keyed encoding is supported in many classes. 358@end itemize 359 360@section Noteworthy changes in version @samp{0.9.5} 361 362@itemize @bullet 363@item Beginnings of CUPS interface were added. 364@item Added new control colors and methods from 10.3 version of Cocoa. 365@item Added new font methods from 10.3 version of Cocoa. 366@item NSApplication -runModalSession behavior changed. 367@item You can find the GUI library's version using the Info.plist 368@end itemize 369 370@section Noteworthy changes in version @samp{0.9.4} 371 372@itemize @bullet 373@item The printing classes have been completely reorganized to 374accommodate different native printing systems (Thanks to Chad Hardin). 375@item PPD files have been moved to a separate package. 376@item NSToolbar now allows rearranging items. 377@item NSScroller, NSScrollView has a new ivar. 378@item Some improvement of NSDataLink classes. 379@end itemize 380 381@section Noteworthy changes in version @samp{0.9.3} 382 383@itemize @bullet 384@item Spell checker reimplemented using libaspell 385@item New NSComboBox implementation 386@item NSToolbar much improved 387@item Binary incompatibilites from ivar additions in NSView and subclasses. 388@end itemize 389 390@section Noteworthy changes in version @samp{0.9.2} 391 392@itemize @bullet 393@item Working NSToolbar implementation 394@item New Mac OS X methods in NSView and other classes 395@item Fixed some sheet handling problems. 396@item Integrated gif, jpg, and png handling in front-end. 397@item Added overridable button and frame drawing functions 398@item Add some keyed decode/encoding to some classes 399@item NSStringDrawing redesigned. 400@item Much improved loading of gorm files 401@end itemize 402 403@section Noteworthy changes in version @samp{0.9.1} 404 405@itemize @bullet 406@item NSWindow - DnD works on whole window and events are propogated up to 407first DnD aware view. 408@item Absolute paths and DnD works in OpenPanels. 409@end itemize 410 411@section Noteworthy changes in version @samp{0.9.0} 412 413Improvements in various classes, include NSPopUpButton, NSBitmapImageRep, 414NSMenu, NSToolbar. Added support for thumbnail images in NSWorkspace. 415 416@section Noteworthy changes in version @samp{0.8.9} 417 418Note that many headers have moved to new locations (both in the package and 419when installed), so it is possible, although not likely that some 420applications may not compile because they cannot find the right header. 421 422@itemize @bullet 423@item New Language Setup documentation. 424@end itemize 425 426@section Noteworthy changes in version @samp{0.8.8} 427 428@itemize @bullet 429@item Updated LanguageSetup documentation 430@item Improved RTF reader (unicode support, etc). 431@end itemize 432 433@section Noteworthy changes in version @samp{0.8.7} 434 435@itemize @bullet 436@item NSBezierPath glyph methods implemented (depends on backend). 437@item NSDataLink[Panel/Manager] - some implementation 438@item Added default to load user-defined bundles (GSAppKitUserBundles default). 439@end itemize 440 441@section Noteworthy changes in version @samp{0.8.6} 442 443Updated to install in new locations based on changes in gnustep-make 1.7.0. 444 445@itemize @bullet 446@item New implementation of RTF producer (from Axel "Mikesch" Katerbau) 447@item Speed improvements, especially in tracking mouses movements. 448@item Lots of menu improvements. 449@end itemize 450 451@section Noteworthy changes in version @samp{0.8.5} 452 453Bug fixes. NSStringDrawing now uses text system implementation. 454 455@section Noteworthy changes in version @samp{0.8.4} 456 457This release features a brand new text and layout system thanks 458to Alexander Malmberg. Other improvements include: 459 460@itemize @bullet 461@item Various display optimizations. 462@item Default border to NSScrollView changed 463@item Printing fixes. 464@item NSToolbar partially implemented. 465@end itemize 466 467@section Noteworthy changes in version @samp{0.8.3} 468 469@itemize @bullet 470@item Additions for Gorm support. 471@item Alpha support for OpenGL 472@item Better ruler support - dragging of tab markers. 473@item Document support, recent files, etc. 474@item Simple printing to printer and print previewing. 475@item Window focus fixes 476@item Key view handling rewritten. 477@end itemize 478 479@section Noteworthy changes in version @samp{0.8.2} 480 481@itemize @bullet 482@item Handle fonts that aren't found better. 483@item Implement pageUp/Down. 484@item Some window focusing problems fixed. 485@item Quartz-like interface partially implemented. 486@item NSSecureTextField partially rewritten. More secure. 487@item NSBrowser: implement non-separate columns 488@item Fix firstResponder status in text fields. 489@end itemize 490 491@section Noteworthy changes in version @samp{0.8.1} 492 493@itemize @bullet 494@item Handle scaled curves correctly. 495@item Handle alpha channel with images correctly 496@item NSWindow frame string save without flipping coordinates. 497@item NSSound implemented. gssnd sound server. 498@item Spell checker starts correctly now. 499@end itemize 500 501@section Noteworthy changes in version @samp{0.8.0} 502 503@section Noteworthy changes in version @samp{0.7.9} 504 505@itemize @bullet 506@item NSTableView, NSOutlineView improvements. 507@item Menus no longer work in modal loop. 508@item Skeleton implementation of NSToolBar 509@end itemize 510 511@section Noteworthy changes in version @samp{0.7.8} 512 513@itemize @bullet 514@item Wheel color picker, standard color picker (bundles) added. 515@item System colors now use named colors. Easier configuration 516@end itemize 517 518@section Noteworthy changes in version @samp{0.7.7} 519 520The graphics/window interface was completely revamped. Window functions 521were split into a separate class, GSDisplayServer, and many PS and DPS 522functions were removed that were never implemented. However, new functionality 523was added to make things faster and eventually implement Quartz compatibility. 524 525In addition, the old backends, xgps and xdps were depreciated in favor of 526a new backend, simply named back, which can be configured for a 527variety of window server and graphics implementations, and also allow 528for improved code sharing. 529 530In addition there is now a window server backend for Windows computers, 531although it is in a very alpha state. 532 533Other improvements: 534@itemize @bullet 535@item Mutliple screens are now handled properly (untested) 536@item Better autolayout with GSTable and subclasses. 537@item NSOutlineView much improved. 538@end itemize 539 540@section Noteworthy changes in version @samp{0.7.6} 541 542@itemize @bullet 543@item NSOutlineView implemented. 544@item Improvements to NSTableView, NSPopUpButton, NSTextView, NSFontPanel 545@item Scroll wheel support. 546@item Fully-functional keybindings, including multi-stroke keybindings. 547@item Memory panel available from Info Panel. 548@end itemize 549 550@section Noteworthy changes in version @samp{0.7.5} 551 552@itemize @bullet 553@item Drag and drop and image sliding much improved. 554@item Better handling of remote startup/display. 555@item Some localization. 556@item Keybinding support. 557@item Text handling improvements. 558@item New gopen command (like MacOSX open command). 559@item Implemented simple pagination and printing of views. 560@item Support for rulers. 561@item Spell checking support. 562@item Blinking insertion point. 563@item New NSStepper class. 564@item Implemented NSOutlineView, NSSelection, NSInputManager. 565@item Near rewrite of Menu handling code. 566@item Gmodel code compiled as a separate bundle. 567@end itemize 568 569@section Noteworthy changes in version @samp{0.7.0} 570 571@itemize @bullet 572@item Much improvement in NSBrowser, NSMatrix, NSPopUpButton, combo boxes. 573@item NSTextAttachement implemented, many other text improvements. 574@item Fonts cached in the frontend. 575@item Changes so that backend can be loaded as a bundle at runtime. 576@item simpler, faster compilation and installation. 577@item NSColorWell works. 578@end itemize 579 580@section Noteworthy changes in version @samp{0.6.7} 581 582@itemize @bullet 583@item App Icons can support documents dropped using DnD. 584@item Added color conversions, working color picker and panel. 585@item Almost complete rewrite of NSBezierPath 586@item Loads of improvements to Text classes. 587@item NSImage, NSButton, NSCell, etc, implemented many missing methods. 588@item ...and even more changes to the Text classes. 589@item Starting implementation of printing. 590@item Scrollview fixes. 591@item Implemented deferred windows. 592@item NSTableView implemented. 593@item Implemented object value and formatter support in NSCell 594@item Support middle mouse button. 595@end itemize 596 597@section Noteworthy changes in version @samp{0.6.6} 598 599@itemize @bullet 600@item Window hints for motif and generic window managers. 601@item Major improvements to the text handling classes (NSText, NSTextView, etc) 602@item Pasting of fonts and rulers. 603@item Much better RTF handling 604@item DnD for NSColorWell 605@item Much improved NSSplitView 606@item New classes - NSColorPanel, NSTableView 607@item NSScreen rewritten with full support for all methods and functions. 608@item Can use image reading routines from WindowMaker if available to read 609a variety of image formats besides TIFF. 610@item Many fixes to get the AppKit to work better with WindowMaker. 611@item Much better gmodel support (particularly with nibs translated from 612NeXT or OPENSTEP 4.2). 613@item Muh improved font classes and font support. 614@end itemize 615 616In addition both the xgps and xdps backends have seen some large efficiency 617improvements. Much better font support. The xdps backend itself has seen 618speed improvements by at least a factor of 4. Note however, that the xdps 619backend is still considered experimental and you may have to deal with 620many problems in order to get it working. We recommend sticking with the 621xgps backend (the default) for now. 622 623@section Noteworthy changes in version @samp{0.6.5} 624 625Many of the basic GUI classes have been vastly improved or rewritten, thanks 626to Nicola Pero @email{n.pero@@mi.flashnet.it} and many others. 627 628@itemize @bullet 629@item New Info Panel support 630@item New NSBezierPath 631@item Rewrite of several classes including Cell and Button classes. 632@item Rewrite of NSBrowser, NSSavePanel, menus, text classes, NSTableHeader. 633@item RTF Parser 634@item Implemented image caching. 635@item Implemented editing in Forms, Matricies. 636@item New autolayout classes GSHBox, GSTable, and GSVBox. 637@item Almost all back-end classes have been removed and code incorporated 638in a DPS-like graphics context structure. 639@item Better keyboard handling. 640@item NSHelpManager, NSComboBox, ProgressIndicator written. 641@end itemize 642 643In addition a preliminary version of an Interface Builder (Gorm) has 644been written, thanks to Richard Frith-Macdonald @email{richard@@brainstorm.co.uk} 645 646@section Noteworthy changes in version @samp{0.6.0} 647 648A Huge amount of progress, although a lot still needs to be done. It's 649usable for a large base of moderately simple apps. Several NeXT/OpenStep 650apps and libraries have been ported with little changes. 651 652@itemize @bullet 653@item Drag and Drop support fleshed out but not completed. 654@item NSText and related classes rewritten. Basic functionality but 655much needs to be done to finish them off. 656@item nib2gmodel app works with MacOS-X 657@item Work done in minimizing the backend which allowed a lot 658of functionality to move to the GNU library. 659@item Menu code rewritten. 660@item PopupButtons now work. 661@item Many new images 662@item Basic functionality for NSTabView 663@item Much better lockFocus support in NSView. Flipped views handled. 664@item Rewrite of NSSavePanel and NSOpenPanel 665@item Several fixes that at least double the speed of the gui. 666@end itemize 667 668@section Noteworthy changes in version @samp{0.5.5} 669 670Too extensive to list. 671 672@itemize @bullet 673 674@item A lot of rewritting has been done to the classes, with general 675cleanup of coordinate conversion code, etc. 676 677@end itemize 678 679@section Noteworthy changes in version @samp{0.5.0} 680 681@itemize @bullet 682 683@item 684NSBrowser and NSBrowserCell have been implemented. There is one odd 685display artifact; lists which are smaller than the browser column area 686have the list justified to the bottom of the column versus the top of 687the column. This is actually an issue with NSMatrix and will be 688remedied when flip views are implemented. 689 690@item 691Two important optimizations that speed up the displaying of views and flushing 692of windows have been implemented. Only the views that need display and those 693that produce visible effects on the screen receive the -drawRect: message. 694Flushing of windows occurs only in rectangles that get displayed not in the 695whole window. 696 697@item 698Rotation and scaling of views have been finally implemented. The code 699requires backend support for changing the state of the graphics context 700accordingly. 701 702@item 703NSScrollView and NSClipView have been implemented. The current implemented 704behavior is to call the document view to display the exposed region. Copying on 705scroll will be supported soon, at least on Solaris DPS, where it seems the 706Postscript language has provisions for copying drawn regions of screen. 707Hopefully DGS will also have this facility by the end of the year. 708 709@item 710NSScroller has been completely reworked to gain speed by using timer events. 711 712@item 713NSSlider has been implemented. Thanks to Frank Knobloch for supporting this 714and the NSScrollView implementation. 715 716@item 717NSBox has been implemented. 718 719@item 720The library has been ported to work under Solaris with the native DPS and the 721NeXT/Apple's Portable Distributed Objects (PDO) environment. 722 723@item 724The library has been integrated with the makefile package so we now benefit 725from all of the features the makefile package gives us, especially the 726possibility to build shared libraries on various systems and having different 727types (debug and profile) of the library compiled at the same time. 728 729@item 730NSCell is able to continuosly send the action to the target while the user is 731tracking the mouse. 732 733@item 734Several cleanups and as usual, many bug fixes. 735 736@end itemize 737 738@section Noteworthy changes in version @samp{0.3.0} 739 740@itemize @bullet 741 742@item 743Completely reworked the menu class. The NSMenu class is now inherited from 744NSObject and using the new implementation menus have been implemented for the 745XDPS backend (they have the look and feel of the NeXTStep menus!). 746 747@item 748NSRunLoop has been integrated with NSApplication. Using this capability time 749events have been implemented to NSEvent class. These events allow several 750improvements in the interaction between user and the graphic interface. 751 752@item 753NSMatrix has been reworked, it is now conforming to the OpenStep specification 754and it knows all the selection modes. It uses time events to enhance the 755drawing speed during mouse drags. 756 757@item 758The initial implementation of NSForm has been made although it has not been 759tested yet. 760 761@item 762NSPrinter has been implemented though it was not throughly tested; thanks to 763Simon Frankau. 764 765@item 766Configure script has been changed to detect the underlaying Foundation library. 767The currently supported libraries are gnustep-base and libFoundation. 768 769@item 770Several cleanups have been made in a lot of classes: the retain/release policy 771has been fixed, the cell classes correctly implement the NSCopying protocol 772and many others. 773 774@end itemize 775 776@section Noteworthy changes in version @samp{0.2.0} 777 778@itemize @bullet 779 780@item 781Additional NSImage and NSImageRep class work. Incorporated common 782images for use with controls that were designed by Andrew Lindesay. 783 784@item 785Fill out implementation of NSColorWell class. 786 787@item 788Fill out implementation of NSColorList class. 789 790@item 791Cleaned up the header files and added missing headers, methods, 792categories, and protocols; thanks to Simon Frankau for much of this 793work. Major reorganization of header files. Types and constants were 794moved in the files they belong. Each header file includes only the 795headers it really needs. Use @samp{@@class} to forward class definitions 796instead of including the corresponding class file. 797 798@item 799Completely reworked the NSFont and NSFontManager classes so that 800NSUserDefaults is used for getting defaults and list of known fonts are 801maintained. 802 803@item 804Initial implementation of NSCursor class. 805 806@item 807Almost complete implementation of NSButton and NSButtonCell class. 808Buttons can now display images and/or text, handles all of the OpenStep 809button types and styles. 810 811@item 812Fill out implementation of NSScroller class. 813 814@item 815Put in underlying support for optimizing drawing; flushing of windows, 816backing store, and only display when needed. 817 818@item 819Many bug fixes and minor enhancements. 820 821@end itemize 822 823@section Noteworthy changes in version @samp{0.1.1} 824 825@itemize @bullet 826 827@item 828Almost complete implementation of the PXKMenu and PXKMenuCell classes. 829 830@item 831Fill out implementation of NSFont and NSFontManager. 832 833@item 834Fill out implementation of NSColor including color spaces other than 835RGB. Now maintains the common colors as global variables. 836 837@item 838Integration with the Display Ghostscript System. This is mainly related 839to using the header files in the DPSclient library for defining the 840PostScript operator functions. 841 842@item 843Initial documentation set. 844 845@item 846Initial implementation of NSImage, NSImageRep, and NSImageRep subclass 847classes based upon work by Adam Fedor. 848 849@item 850Now requires the TIFF library for reading, writing, and manipulating 851tiff files and images. 852 853@end itemize 854 855@section Noteworthy changes in version @samp{0.1.0} 856 857@itemize @bullet 858 859@item 860Integration of the GNUstep X/DPS GUI Backend. This has finally 861produced a set of core code with can display on X/Windows. 862Much of the X/Windows code has been written by Pascal Forget 863@email{pascal@@wsc.com} and integration efforts have been lead by Scott 864Christley @email{scottc@@net-community.com}. 865 866@item 867Some major directory reorganization for the new naming guidelines. 868Headers previously in AppKit and DPSClient directories have been moved 869to gnustep/gui and gnustep/dps directores and symbol links are 870created for the AppKit and DPSClient directories. This should allow 871both GNUstep and other OpenStep implementations to reside on the 872same machine without conflicts. 873@end itemize 874 875Also see the @samp{ChangeLog} file for more detail. 876 877@end ifclear 878@c end ifclear ANNOUNCE-ONLY 879