Difference between revisions of "AppKit"
(Updated) |
m |
||
(9 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
+ | {{Dynamic List}} | ||
+ | |||
The GNUstep GUI Library is a library of objects useful for writing graphical applications. For example, it includes classes for drawing and manipulating graphics objects on the screen: [[NSWindow|windows]], [[NSMenu|menus]], [[NSButton|buttons]], [[NSSlider|sliders]], [[NSTextField|text fields]], and [[NSEvent|events]]. There are also many classes that offer operating-system-independent interfaces to [[NSImage|images]], [[NSCursor|cursors]], [[NSColor|colors]], [[NSFont|fonts]], [[NSPasteboard|pasteboards]], printing. There are also workspace support classes such as data links, open/save panels, context-dependent help, spell checking. | The GNUstep GUI Library is a library of objects useful for writing graphical applications. For example, it includes classes for drawing and manipulating graphics objects on the screen: [[NSWindow|windows]], [[NSMenu|menus]], [[NSButton|buttons]], [[NSSlider|sliders]], [[NSTextField|text fields]], and [[NSEvent|events]]. There are also many classes that offer operating-system-independent interfaces to [[NSImage|images]], [[NSCursor|cursors]], [[NSColor|colors]], [[NSFont|fonts]], [[NSPasteboard|pasteboards]], printing. There are also workspace support classes such as data links, open/save panels, context-dependent help, spell checking. | ||
− | It provides functionality that aims to implement the `AppKit' portion of the [[OpenStep]] standard | + | It provides functionality that aims to implement the `AppKit' portion of the [[Cocoa]] API (formerly [[OpenStep]] standard) however the implementation has been written to take advantage of GNUstep enhancements wherever possible. |
+ | |||
+ | The GNUstep GUI Library is divided into a front and back-end. The front-end contains the majority of the implementation, but leaves out the low-level drawing and event code. Different back-ends will make GNUstep available on various platforms. The default GNU back-end currently runs on top of the X Window System and uses only Xlib calls for graphics. Another backend uses a Display Postscript Server for graphics. Much work will be saved by this clean separation between front and back-end, because it allows different platforms to share the large amount of front-end code. Documentation for how the individual backends work is covered in a separate document. | ||
− | + | You can find the automatically generated API documentation [http://www.gnustep.org/resources/documentation/Developer/Gui/Reference/index.html here]. | |
== Features == | == Features == | ||
− | * | + | * User interface elements: table views, browsers, matrices, scroll views, ... |
− | * | + | * Graphics: WYSIWYG, Postscript-like graphics, Bezier paths, image handling with multiple representations, graphical contexts |
− | * [[ | + | * [[Color|Color management]]: calibrated vs. device colors, CMYK, RGB, HSB, gray and named color representations, alpha transparency |
− | * [[Text]] system features: rich text format, text | + | * [[Text]] system features: rich text format, text attachments, layout manager, typesetter, rules, paragraph styles, font management, [[Spell checking|spell checking]] |
− | * [[Document architecture| | + | * [[Document architecture|Document management]] |
− | * [[Printing| | + | * [[Printing|Printing features]]: print operations, print panel and page layout |
− | * | + | * Help manager |
− | * [[Pasteboard| | + | * [[Pasteboard|Pasteboard]] (a.k.a. clip board) services |
− | * [[Spell | + | * [[Spelling|Spell checker]] |
− | * [[Workspace| | + | * [[Workspace|Workspace]] bindings for applications |
* [[Drag and drop]] operations | * [[Drag and drop]] operations | ||
− | * [[ | + | * [[Service|Services]] shared among applications |
+ | * [[XIB]] WYSIWIG GUI definition language – To be implemented | ||
+ | == Notes and Snippets == | ||
− | == | + | {| border="0" cellpadding="2" |
+ | ! Class Reference !! Protocol Reference | ||
+ | |- | ||
+ | | | ||
* [[NSActionCell]] | * [[NSActionCell]] | ||
Line 141: | Line 150: | ||
* [[NSWindowController]] | * [[NSWindowController]] | ||
* [[NSWorkspace]] | * [[NSWorkspace]] | ||
+ | |||
+ | | valign="top" | | ||
+ | |||
+ | * [[NSChangeSpelling]] | ||
+ | * [[NSColorPickingCustom]] | ||
+ | * [[NSColorPickingDefault]] | ||
+ | * [[NSDraggingInfo]] | ||
+ | * [[NSIgnoreMisspelledWords]] | ||
+ | * [[NSInputServerMouseTracker]] | ||
+ | * [[NSInputServiceProvider]] | ||
+ | * [[NSMenuItem]] | ||
+ | * [[NSMenuValidation]] | ||
+ | * [[NSMenuView]] | ||
+ | * [[NSTextAttachmentCell]] | ||
+ | * [[NSTextInput]] | ||
+ | * [[NSUserInterfaceValidations]] | ||
+ | * [[NSValidatedUserInterfaceItem]] | ||
+ | |||
+ | |} | ||
[[Category:Frameworks]] | [[Category:Frameworks]] |
Latest revision as of 20:20, 19 September 2012
Dynamic List
This is a list which is constantly changing and may never be considered complete.
The GNUstep GUI Library is a library of objects useful for writing graphical applications. For example, it includes classes for drawing and manipulating graphics objects on the screen: windows, menus, buttons, sliders, text fields, and events. There are also many classes that offer operating-system-independent interfaces to images, cursors, colors, fonts, pasteboards, printing. There are also workspace support classes such as data links, open/save panels, context-dependent help, spell checking.
It provides functionality that aims to implement the `AppKit' portion of the Cocoa API (formerly OpenStep standard) however the implementation has been written to take advantage of GNUstep enhancements wherever possible.
The GNUstep GUI Library is divided into a front and back-end. The front-end contains the majority of the implementation, but leaves out the low-level drawing and event code. Different back-ends will make GNUstep available on various platforms. The default GNU back-end currently runs on top of the X Window System and uses only Xlib calls for graphics. Another backend uses a Display Postscript Server for graphics. Much work will be saved by this clean separation between front and back-end, because it allows different platforms to share the large amount of front-end code. Documentation for how the individual backends work is covered in a separate document.
You can find the automatically generated API documentation here.
Features
- User interface elements: table views, browsers, matrices, scroll views, ...
- Graphics: WYSIWYG, Postscript-like graphics, Bezier paths, image handling with multiple representations, graphical contexts
- Color management: calibrated vs. device colors, CMYK, RGB, HSB, gray and named color representations, alpha transparency
- Text system features: rich text format, text attachments, layout manager, typesetter, rules, paragraph styles, font management, spell checking
- Document management
- Printing features: print operations, print panel and page layout
- Help manager
- Pasteboard (a.k.a. clip board) services
- Spell checker
- Workspace bindings for applications
- Drag and drop operations
- Services shared among applications
- XIB WYSIWIG GUI definition language – To be implemented