Difference between revisions of "AppKit"

From GNUstepWiki
Jump to navigation Jump to search
m
 
(14 intermediate revisions by 6 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. However the implementation has been written to take advantage of GNUstep enhancements wherever possible.
+
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.
  
The GNUstep GUI Library is divided into a front and back-end. The front-end contains the majority of 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 coverered 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)
+
* User interface elements: table views, browsers, matrices, scroll views, ...
* graphics (WYSIWYG, postscript-like graphics, bezier paths, image handling with multiple representations, graphical contextes)
+
* Graphics: WYSIWYG, Postscript-like graphics, Bezier paths, image handling with multiple representations, graphical contexts
* [[Colors|color management]] (calibrated vs. device colors; CMYK, RGB, HSB, gray and named color representations; alpha transparency)
+
* [[Color|Color management]]: calibrated vs. device colors, CMYK, RGB, HSB, gray and named color representations, alpha transparency
* [[Text]] system features: rich text format, text attachements, layout manager, typesetter, rules, paragraph styles, font management, [[Spell checking|spell checking]]
+
* [[Text]] system features: rich text format, text attachments, layout manager, typesetter, rules, paragraph styles, font management, [[Spell checking|spell checking]]
* [[Document architecture|document management]]
+
* [[Document architecture|Document management]]
* [[Printing|printing features]]: print operations, print panel and page layout
+
* [[Printing|Printing features]]: print operations, print panel and page layout
* help manager
+
* Help manager
* [[Pasteboard|pasteboard]] (aka clip board) services
+
* [[Pasteboard|Pasteboard]] (a.k.a. clip board) services
* [[Spell checking|spell checker]]
+
* [[Spelling|Spell checker]]
* [[Workspace|workspace]] bindings for applications
+
* [[Workspace|Workspace]] bindings for applications
 
* [[Drag and drop]] operations
 
* [[Drag and drop]] operations
* [[Application services|services]] sharing among applications
+
* [[Service|Services]] shared among applications
 +
* [[XIB]] WYSIWIG GUI definition language – To be implemented
 +
 
 +
== Notes and Snippets ==
  
 +
{| border="0" cellpadding="2"
 +
! Class Reference        !! Protocol Reference
 +
|-
 +
|
  
== Classes ==
+
* [[NSActionCell]]
 +
* [[NSAffineTransform]]
 +
* [[NSAlert]]
 +
* [[NSApplication]]
 +
* [[NSBezierPath]]
 +
* [[NSBitmapImageRep]]
 +
* [[NSBox]]
 +
* [[NSBrowser]]
 +
* [[NSBrowserCell]]
 +
* [[NSButton]]
 +
* [[NSButtonCell]]
 +
* [[NSCachedImageRep]]
 +
* [[NSCell]]
 +
* [[NSClipView]]
 +
* [[NSColor]]
 +
* [[NSColorList]]
 +
* [[NSColorPanel]]
 +
* [[NSColorPicker]]
 +
* [[NSColorWell]]
 +
* [[NSComboBox]]
 +
* [[NSComboBoxCell]]
 +
* [[NSControl]]
 +
* [[NSCursor]]
 +
* [[NSCustomImageRep]]
 +
* [[NSDataLink]]
 +
* [[NSDataLinkManager]]
 +
* [[NSDataLinkPanel]]
 
* [[NSDocument]]
 
* [[NSDocument]]
* [[NSTableView]]  
+
* [[NSDocumentController]]
 +
* [[NSDrawer]]
 +
* [[NSDrawerDelegate]]
 +
* [[NSEPSImageRep]]
 +
* [[NSEvent]]
 +
* [[NSFileWrapper]]
 +
* [[NSFont]]
 +
* [[NSFontManager]]
 +
* [[NSFontPanel]]
 +
* [[NSForm]]
 +
* [[NSFormCell]]
 +
* [[NSGraphicsContext]]
 +
* [[NSHelpManager]]
 +
* [[NSHelpPanel]]
 +
* [[NSImage]]
 +
* [[NSImageCell]]
 +
* [[NSImageRep]]
 +
* [[NSImageView]]
 +
* [[NSInputManager]]
 +
* [[NSInputServer]]
 +
* [[NSLayoutManager]]
 +
* [[NSMatrix]]
 +
* [[NSMenu]]
 +
* [[NSMenuItem]]
 +
* [[NSMenuItemCell]]
 +
* [[NSMenuView]]
 +
* [[NSMovie]]
 +
* [[NSMovieView]]
 +
* [[NSMutableParagraphStyle]]
 +
* [[NSNib]]
 +
* [[NSNibConnector]]
 +
* [[NSNibControlConnector]]
 +
* [[NSNibOutletConnector]]
 +
* [[NSOpenGLContext]]
 +
* [[NSOpenGLPixelFormat]]
 +
* [[NSOpenGLView]]
 +
* [[NSOpenPanel]]
 +
* [[NSOutlineView]]
 +
* [[NSPageLayout]]
 +
* [[NSPanel]]
 +
* [[NSParagraphStyle]]
 +
* [[NSPasteboard]]
 +
* [[NSPopUpButton]]
 +
* [[NSPopUpButtonCell]]
 +
* [[NSPrintInfo]]
 +
* [[NSPrintOperation]]
 +
* [[NSPrintPanel]]
 +
* [[NSPrinter]]
 +
* [[NSProgressIndicator]]
 +
* [[NSResponder]]
 +
* [[NSRulerMarker]]
 +
* [[NSRulerView]]
 +
* [[NSSavePanel]]
 +
* [[NSScreen]]
 +
* [[NSScrollView]]
 +
* [[NSScroller]]
 +
* [[NSSearchField]]
 +
* [[NSSearchFieldCell]]
 +
* [[NSSecureTextField]]
 +
* [[NSSecureTextFieldCell]]
 +
* [[NSSelection]]
 +
* [[NSSlider]]
 +
* [[NSSliderCell]]
 +
* [[NSSound]]
 +
* [[NSSpellChecker]]
 +
* [[NSSpellServer]]
 +
* [[NSSplitView]]
 +
* [[NSStepper]]
 +
* [[NSStepperCell]]
 +
* [[NSTabView]]
 +
* [[NSTabViewItem]]
 +
* [[NSTableColumn]]
 +
* [[NSTableHeaderCell]]
 +
* [[NSTableHeaderView]]
 +
* [[NSTableView]]
 +
* [[NSText]]
 +
* [[NSTextAttachment]]
 +
* [[NSTextAttachmentCell]]
 +
* [[NSTextContainer]]
 +
* [[NSTextField]]
 +
* [[NSTextFieldCell]]
 +
* [[NSTextStorage]]
 +
* [[NSTextTab]]
 +
* [[NSTextView]]
 +
* [[NSToolbar]]
 +
* [[NSToolbarItem]]
 
* [[NSView]]
 
* [[NSView]]
 +
* [[NSWindow]]
 +
* [[NSWindowController]]
 +
* [[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

Notes and Snippets

Class Reference Protocol Reference