mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-25 05:01:00 +00:00
421 lines
13 KiB
Text
421 lines
13 KiB
Text
|
Status Report
|
||
|
*************
|
||
|
|
||
|
Last updated August 1996. The most up-to-date version of this status
|
||
|
report is available at:
|
||
|
|
||
|
`http://www.gnustep.org/Documentation/gnustep-gui/gnustep-gui_toc.html'
|
||
|
|
||
|
Please send corrections to <scottc@net-community.com>.
|
||
|
|
||
|
*Key:*
|
||
|
|
||
|
*[10]*
|
||
|
Complete and tested.
|
||
|
|
||
|
*[8]*
|
||
|
Missing a few non-core methods, definitely usable.
|
||
|
|
||
|
*[6]*
|
||
|
Missing several methods, but core is there, usable.
|
||
|
|
||
|
*[4]*
|
||
|
Begun, but missing core functionality, not usable.
|
||
|
|
||
|
*[2]*
|
||
|
Skeleton.
|
||
|
|
||
|
*[0]*
|
||
|
Nothing there.
|
||
|
|
||
|
*[?]*
|
||
|
Unknown status.
|
||
|
|
||
|
Classes
|
||
|
=======
|
||
|
|
||
|
Currently none of the classes raise exceptions; and notifications and
|
||
|
notifications centers are non-existent.
|
||
|
|
||
|
*NSActionCell:: [9]*
|
||
|
Should not require any implementation in the backend as it is an
|
||
|
abstract class which only defines behaviour. All methods are
|
||
|
implemented; the only thing lacking is a test, if needed.
|
||
|
|
||
|
*NSApplication:: [6]*
|
||
|
The event handling is pretty good though it does not take
|
||
|
advantage of the NSRunLoop class. Many of the minor methods are
|
||
|
implemented. No window ordering is being maintained, and a number
|
||
|
of the methods that perform operations on windows are empty.
|
||
|
Modal loops are not implemented.
|
||
|
|
||
|
*NSBitmapImageRep:: [4]*
|
||
|
Many of the methods have code, but the class has not been made to
|
||
|
work; though, some of this could be due to lack of backend
|
||
|
implementation. No compression nor generation of TIFF
|
||
|
representations.
|
||
|
|
||
|
*NSBox:: [8]*
|
||
|
Many of the methods have code, but whether the class is usable
|
||
|
depends upon how much implementation has been done in the backend.
|
||
|
|
||
|
*NSBrowser:: [2]*
|
||
|
*NSBrowserCell:: [2]*
|
||
|
*NSButton:: [8]*
|
||
|
Repeat intervals and key equivalents not implemented. There
|
||
|
should be little need for backend implementation as NSButton is
|
||
|
mainly behavior; its cell class does all drawing.
|
||
|
|
||
|
*NSButtonCell:: [8]*
|
||
|
Repeat intervals and key equivalents not implemented. Actual
|
||
|
ability to use will depend upon backend implementation.
|
||
|
|
||
|
*NSCachedImageRep:: [4]*
|
||
|
All methods are implemented but its unknown if the class works.
|
||
|
|
||
|
*NSCell:: [8]*
|
||
|
No determination of component sizes. Editting text, validating
|
||
|
input, represented object, and some other odd and end methods not
|
||
|
implemented.
|
||
|
|
||
|
*NSClipView:: [2]*
|
||
|
*NSColor:: [5]*
|
||
|
Doesn't know the difference between calibrated and device; only
|
||
|
supported colorspace is RGB. Maybe usable with backend
|
||
|
implementation for basic colors like white, black, red, etc.
|
||
|
|
||
|
*NSColorList:: [2]*
|
||
|
*NSColorPanel:: [2]*
|
||
|
*NSColorPicker:: [2]*
|
||
|
*NSColorWell:: [2]*
|
||
|
*NSControl:: [8]*
|
||
|
No field editor; doesn't know how to calculate its size.
|
||
|
|
||
|
*NSCursor:: [2]*
|
||
|
*NSCustomImageRep:: [4]*
|
||
|
All methods are implemented but it is unknown if the class works.
|
||
|
|
||
|
*NSDataLink:: [2]*
|
||
|
*NSDataLinkManager:: [2]*
|
||
|
*NSDataLinkPanel:: [2]*
|
||
|
*NSDPSContext:: [6]*
|
||
|
Enough implementation for the backend to do something useful; most
|
||
|
methods that deal specifically with Display Ghostscript are empty.
|
||
|
|
||
|
*NSEPSImageRep:: [2]*
|
||
|
*NSEvent:: [9]*
|
||
|
All methods implemented except periodic events.
|
||
|
|
||
|
*NSFont:: [4]*
|
||
|
Maintains no AFM or glyph information. Usability depends greatly
|
||
|
upon backend implementation.
|
||
|
|
||
|
*NSFontManager:: [4]*
|
||
|
Only primitive capability.
|
||
|
|
||
|
*NSFontPanel:: [2]*
|
||
|
May be usable with backend implementation.
|
||
|
|
||
|
*NSForm:: [2]*
|
||
|
*NSFormCell:: [2]*
|
||
|
*NSHelpPanel:: [2]*
|
||
|
*NSImage:: [4]*
|
||
|
All methods are implemented but it is unknown if the class works.
|
||
|
|
||
|
*NSImageRep:: [4]*
|
||
|
All methods are implemented but it is unknown if the class works.
|
||
|
|
||
|
*NSMatrix:: [6]*
|
||
|
Many methods are implemented but more thorough testing needs to be
|
||
|
done.
|
||
|
|
||
|
*NSMenu:: [4]*
|
||
|
Usability greatly depends upon backend implementation.
|
||
|
|
||
|
*NSMenuCell:: [4]*
|
||
|
Usability greatly depends upon backend implementation.
|
||
|
|
||
|
*NSOpenPanel:: [6]*
|
||
|
Usability greatly depends upon backend implementation.
|
||
|
|
||
|
*NSPageLayout:: [2]*
|
||
|
*NSPanel:: [2]*
|
||
|
*NSPasteboard:: [2]*
|
||
|
*NSPopUpButton:: [4]*
|
||
|
Usability greatly depends upon backend implementation.
|
||
|
|
||
|
*NSPrinter:: [2]*
|
||
|
*NSPrintinfo:: [2]*
|
||
|
*NSPrintOperation:: [2]*
|
||
|
*NSPrintPanel:: [2]*
|
||
|
*NSResponder:: [9]*
|
||
|
Shouldn't require any backend implementation; all methods are
|
||
|
implemented.
|
||
|
|
||
|
*NSSavePanel:: [6]*
|
||
|
Usability greatly depends upon backend implementation.
|
||
|
|
||
|
*NSScreen:: [6]*
|
||
|
Knows nothing about window depth, greatly depends upon backend
|
||
|
implementation.
|
||
|
|
||
|
*NSScroller:: [2]*
|
||
|
Most behaviour can probably be taken from NSSlider and
|
||
|
NSSliderCell.
|
||
|
|
||
|
*NSScrollView:: [2]*
|
||
|
*NSSelection:: [2]*
|
||
|
*NSSlider:: [4]*
|
||
|
Usability greatly depends upon backend implementation.
|
||
|
|
||
|
*NSSliderCell:: [6]*
|
||
|
No title or image capability implemented, greatly depends upon
|
||
|
backend.
|
||
|
|
||
|
*NSSpellChecker:: [2]*
|
||
|
*NSSpellServer:: [2]*
|
||
|
*NSSplitView:: [2]*
|
||
|
*NSText:: [2]*
|
||
|
Usability greatly depends upon backend implementation.
|
||
|
|
||
|
*NSTextField:: [8]*
|
||
|
Does not properly send text delegate messages.
|
||
|
|
||
|
*NSTextFieldCell:: [4]*
|
||
|
Usability greatly depends upon backend implementation.
|
||
|
|
||
|
*NSView:: [6]*
|
||
|
Maintains subview lists, notification of new window, send resizing
|
||
|
messages to subviews. No rotation, scaling, or translation of
|
||
|
user coordinate space; coordinate conversion doesn't take user
|
||
|
coordinate space into affect, so everything is based upon device
|
||
|
coordinate space. Event handling and tracking rectangles
|
||
|
implemented. No scrolling capability. No cursor management. No
|
||
|
printing, paging, or postscript.
|
||
|
|
||
|
*NSWindow:: [4]*
|
||
|
Most methods not implemented, but maybe usable with backend
|
||
|
implementation.
|
||
|
|
||
|
*NSWorkspace:: [2]*
|
||
|
Erich Boleyn has some initial ideas and design.
|
||
|
|
||
|
Protocols
|
||
|
=========
|
||
|
|
||
|
*NSChangeSpelling:: [0]*
|
||
|
*NSColorPickingCustom:: [0]*
|
||
|
*NSColorPickingDefault:: [0]*
|
||
|
*NSDraggingDestination:: [0]*
|
||
|
*NSDraggingInfo:: [0]*
|
||
|
*NSDraggingSource:: [0]*
|
||
|
*NSIgnoreMisspelledWords:: [0]*
|
||
|
*NSMenuActionResponder:: [0]*
|
||
|
*NSNibAwaking:: [0]*
|
||
|
*NSServicesRequests:: [0]*
|
||
|
Functions
|
||
|
=========
|
||
|
|
||
|
Very few if any of the functions are implemented; all the functions
|
||
|
dealing with drawing will probably be implemented in the backend. Most
|
||
|
other functions deal with classes that lack sufficient implementation.
|
||
|
|
||
|
Rectangle Drawing Functions
|
||
|
---------------------------
|
||
|
|
||
|
*Optimize Drawing. [2]*
|
||
|
- Function: void NSEraseRect (NSRect ARECT )
|
||
|
|
||
|
- Function: void NSHighlightRect (NSRect ARECT )
|
||
|
|
||
|
- Function: void NSRectClip (NSRect ARECT )
|
||
|
|
||
|
- Function: void NSRectClipList (const NSRect * RECTS, int COUNT )
|
||
|
|
||
|
- Function: void NSRectFill (NSRect ARECT )
|
||
|
|
||
|
- Function: void NSRectFillList (const NSRect * RECTS, int COUNT )
|
||
|
|
||
|
- Function: void NSRectFillListWithGrays (const NSRect * RECTS,
|
||
|
const float * GRAYS, int COUNT )
|
||
|
|
||
|
*Draw a Bordered Rectangle. [2]*
|
||
|
- Function: void NSDrawButton (NSRect ARECT, NSRect CLIPRECT )
|
||
|
|
||
|
- Function: void NSDrawGrayBezel (NSRect ARECT, NSRect CLIPRECT )
|
||
|
|
||
|
- Function: void NSDrawGroove (NSRect ARECT, NSRect CLIPRECT )
|
||
|
|
||
|
- Function: NSRect NSDrawTiledRects (NSRect BOUNDSRECT, NSRect
|
||
|
CLIPRECT, const NSRectEdge * SIDES, const float * GRAYS,
|
||
|
int COUNT )
|
||
|
|
||
|
- Function: void NSDrawWhiteBezel (NSRect ARECT, NSRect CLIPRECT )
|
||
|
|
||
|
- Function: void NSFrameRect (NSRect ARECT )
|
||
|
|
||
|
- Function: void NSFrameRectWithWidth (NSRect ARECT, float
|
||
|
FRAMEWIDTH )
|
||
|
|
||
|
Color Functions
|
||
|
---------------
|
||
|
|
||
|
*Get Information About Color Space and Window Depth. [2]*
|
||
|
- Function: void NSWindowDepth * NSAvailableWindowDepths ( void )
|
||
|
|
||
|
- Function: NSWindowDepth NSBestDepth (NSString * COLORSPACE, int
|
||
|
BITSPERSAMPLE, int BITSPERPIXEL, BOOL PLANAR, BOOL *
|
||
|
EXACTMATCH)
|
||
|
|
||
|
- Function: int NSBitsPerPixelFromDepth (NSWindowDepth DEPTH)
|
||
|
|
||
|
- Function: int NSBitsPerSampleFromDepth (NSWindowDepth DEPTH)
|
||
|
|
||
|
- Function: NSString * NSColorSpaceFromDepth (NSWindowDepth DEPTH)
|
||
|
|
||
|
- Function: int NSNumberOfColorComponents (NSString *
|
||
|
COLORSPACENAME)
|
||
|
|
||
|
- Function: BOOL NSPlanarFromDepth (NSWindowDepth DEPTH)
|
||
|
|
||
|
*Read the Color at a Screen Position. [2]*
|
||
|
- Function: NSColor * NSReadPixel (NSPoint LOCATION)
|
||
|
|
||
|
Text Functions
|
||
|
--------------
|
||
|
|
||
|
*Filter Characters Entered into a Text Object. [2]*
|
||
|
- Function: unsigned short NSEditorFilter (unsigned short
|
||
|
THECHAR, int FLAGS, NSStringEncoding THEENCODING)
|
||
|
|
||
|
- Function: unsigned short NSFieldFilter (unsigned short THECHAR,
|
||
|
int FLAGS, NSStringEncoding THEENCODING)
|
||
|
|
||
|
*Calculate or Draw a Line of Text (in Text Object). [2]*
|
||
|
- Function: int NSDrawALine (id SELF, NSLayInfo * LAYINFO)
|
||
|
|
||
|
- Function: int NSScanALine (id SELF, NSLayInfo * LAYINFO)
|
||
|
|
||
|
*Calculate Font Ascender, Descender, and Line Height (in Text Object). [?]*
|
||
|
- Function: void NSTextFontInfo (id FID, float * ASCENDER, float
|
||
|
* DESCENDER, float * LINEHEIGHT)
|
||
|
|
||
|
*Access Text Object's Word Tables. [2]*
|
||
|
- Function: NSData * NSDataWithWordTable (const unsigned char *
|
||
|
SMARTLEFT, const unsigned char * SMARTRIGHT, const
|
||
|
unsigned char * CHARCLASSES, const NSFSM * WRAPBREAKS,
|
||
|
int WRAPBREAKSCOUNT, const NSFSM * CLICKBREAKS, int
|
||
|
CLICKBREAKSCOUNT, BOOL CHARWRAP)
|
||
|
|
||
|
- Function: void NSReadWordTable (NSZone * ZONE, NSData * DATA,
|
||
|
unsigned char ** SMARTLEFT, unsigned char ** SMARTRIGHT,
|
||
|
unsigned char ** CHARCLASSES, NSFSM ** WRAPBREAKS, int *
|
||
|
WRAPBREAKSCOUNT, NSFSM ** CLICKBREAKS, int *
|
||
|
CLICKBREAKSCOUNT, BOOL * CHARWRAP)
|
||
|
|
||
|
Array Allocation Functions for Use by the NSText Class
|
||
|
------------------------------------------------------
|
||
|
|
||
|
- Function: NSTextChunk * NSChunkCopy (NSTextChunk * PC,
|
||
|
NSTextChunk * DPC)
|
||
|
|
||
|
- Function: NSTextChunk * NSChunkGrow (NSTextChunk * PC, int
|
||
|
NEWUSED)
|
||
|
|
||
|
- Function: NSTextChunk * NSChunkMalloc (int GROWBY, int INITUSED)
|
||
|
|
||
|
- Function: NSTextChunk * NSChunkRealloc (NSTextChunk * PC)
|
||
|
|
||
|
- Function: NSTextChunk * NSChunkZoneCopy (NSTextChunk * PC,
|
||
|
NSTextChunk * DPC, NSZone * ZONE)
|
||
|
|
||
|
- Function: NSTextChunk * NSChunkZoneGrow (NSTextChunk * PC, int
|
||
|
NEWUSED, NSZone * ZONE)
|
||
|
|
||
|
- Function: NSTextChunk * NSChunkZoneMalloc (int GROWBY, int
|
||
|
INITUSED, NSZone * ZONE)
|
||
|
|
||
|
- Function: NSTextChunk * NSChunkZoneRealloc (NSTextChunk * PC,
|
||
|
NSZone * ZONE)
|
||
|
|
||
|
Imaging Functions
|
||
|
-----------------
|
||
|
|
||
|
*Copy an Image. [2]*
|
||
|
- Function: void NSCopyBitmapFromGState (int SRCGSTATE, NSRect
|
||
|
SRCRECT, NSRect DESTRECT)
|
||
|
|
||
|
- Function: void NSCopyBits (int SRCGSTATE, NSRect SRCRECT,
|
||
|
NSPoint DESTPOINT)
|
||
|
|
||
|
*Render Bitmap Images. [2]*
|
||
|
- Function: void NSDrawBitmap (NSRect RECT, int PIXELSWIDE, int
|
||
|
PIXELSHIGH, int BITSPERSAMPLE, int SAMPLESPERPIXEL, int
|
||
|
BITSPERPIXEL, int BYTESPERROW, BOOL ISPLANAR, BOOL
|
||
|
HASALPHA, NSString * COLORSPACENAME, const unsigned char
|
||
|
* const DATA[5]);
|
||
|
|
||
|
Attention Panel Functions
|
||
|
-------------------------
|
||
|
|
||
|
*Create an Attention Panel without Running It Yet. [2]*
|
||
|
- Function: id NSGetAlertPanel (NSString * TITLE, NSString * MSG,
|
||
|
NSString * DEFAULTBUTTON, NSString * ALTERNATEBUTTON,
|
||
|
NSString * OTHERBUTTON, ...)
|
||
|
|
||
|
*Create and Run an Attention Panel. [2]*
|
||
|
- Function: int NSRunAlertPanel (NSString * TITLE, NSString *
|
||
|
MSG, NSString * DEFAULTBUTTON, NSString *
|
||
|
ALTERNATEBUTTON, NSString * OTHERBUTTON, ...)
|
||
|
|
||
|
- Function: int NSRunLocalizedAlertPanel (NSString * TABLE,
|
||
|
NSString * TITLE, NSString * MSG, NSString *
|
||
|
DEFAULTBUTTON, NSString * ALTERNATEBUTTON, NSString *
|
||
|
OTHERBUTTON, ...)
|
||
|
|
||
|
*Release an Attention Panel. [2]*
|
||
|
- Function: void NSReleaseAlertPanel (id PANEL)
|
||
|
|
||
|
Services Menu Functions
|
||
|
-----------------------
|
||
|
|
||
|
*Determine Whether an Item is Included in Services Menus. [2]*
|
||
|
- Function: int NSSetShowsServicesMenuItem (NSString * ITEM, BOOL
|
||
|
SHOWSERVICE)
|
||
|
|
||
|
- Function: BOOL NSShowsServicesMenuItem (NSString * ITEM)
|
||
|
|
||
|
*Programmatically Invoke a Service. [2]*
|
||
|
- Function: BOOL NSPerformService (NSString * ITEM, NSPasteboard
|
||
|
* PBOARD)
|
||
|
|
||
|
*Force Services Menu to Update Based on New Services. [2]*
|
||
|
- Function: void NSUpdateDynamicServices (void)
|
||
|
|
||
|
Miscellaneous Functions
|
||
|
-----------------------
|
||
|
|
||
|
*Play the System Beep. [2]*
|
||
|
- Function: void NSBeep (void)
|
||
|
|
||
|
*Return File-related Pasteboard Types. [2]*
|
||
|
- Function: NSString * NSCreateFileContentsPboardType (NSString *
|
||
|
FILETYPE)
|
||
|
|
||
|
- Function: NSString * NSCreateFilenamePboardType (NSString *
|
||
|
FILENAME)
|
||
|
|
||
|
- Function: NSString * NSGetFileType (NSString * PBOARDTYPE)
|
||
|
|
||
|
- Function: NSArray * NSGetFileTypes (NSArray * PBOARDTYPES)
|
||
|
|
||
|
*Draw a Distinctive Outline around Linked Data. [2]*
|
||
|
- Function: void NSFrameLinkRect (NSRect ARECT, BOOL
|
||
|
ISDESTINATION)
|
||
|
|
||
|
- Function: float NSLinkFrameThickness (void)
|
||
|
|
||
|
*Convert an Event Mask Type to a Mask. [2]*
|
||
|
- Function: unsigned int NSEventMaskFromType (NSEventType TYPE)
|
||
|
|