/usr/include/GNUstep/AppKit/NSGraphics.h is in libgnustep-gui-dev 0.25.0-4+b1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 | /*
NSGraphics.h
Copyright (C) 1996, 2005 Free Software Foundation, Inc.
Author: Ovidiu Predescu <ovidiu@net-community.com>
Date: February 1997
This file is part of the GNUstep GUI Library.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; see the file COPYING.LIB.
If not, see <http://www.gnu.org/licenses/> or write to the
Free Software Foundation, 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
#ifndef __NSGraphics_h__
#define __NSGraphics_h__
#import <GNUstepBase/GSVersionMacros.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSGeometry.h>
#import <AppKit/NSGraphicsContext.h>
#import <AppKit/AppKitDefines.h>
#if defined(__cplusplus)
extern "C" {
#endif
@class NSString;
@class NSColor;
@class NSGraphicsContext;
/*
* Colorspace Names
*/
APPKIT_EXPORT NSString *NSCalibratedWhiteColorSpace;
APPKIT_EXPORT NSString *NSCalibratedBlackColorSpace;
APPKIT_EXPORT NSString *NSCalibratedRGBColorSpace;
APPKIT_EXPORT NSString *NSDeviceWhiteColorSpace;
APPKIT_EXPORT NSString *NSDeviceBlackColorSpace;
APPKIT_EXPORT NSString *NSDeviceRGBColorSpace;
APPKIT_EXPORT NSString *NSDeviceCMYKColorSpace;
APPKIT_EXPORT NSString *NSNamedColorSpace;
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
APPKIT_EXPORT NSString *NSPatternColorSpace;
#endif
APPKIT_EXPORT NSString *NSCustomColorSpace;
/*
* Color function APPKIT_EXPORTs
*/
APPKIT_EXPORT const NSWindowDepth _GSGrayBitValue;
APPKIT_EXPORT const NSWindowDepth _GSRGBBitValue;
APPKIT_EXPORT const NSWindowDepth _GSCMYKBitValue;
APPKIT_EXPORT const NSWindowDepth _GSCustomBitValue;
APPKIT_EXPORT const NSWindowDepth _GSNamedBitValue;
APPKIT_EXPORT const NSWindowDepth *_GSWindowDepths[7];
APPKIT_EXPORT const NSWindowDepth NSDefaultDepth;
APPKIT_EXPORT const NSWindowDepth NSTwoBitGrayDepth;
APPKIT_EXPORT const NSWindowDepth NSEightBitGrayDepth;
APPKIT_EXPORT const NSWindowDepth NSEightBitRGBDepth;
APPKIT_EXPORT const NSWindowDepth NSTwelveBitRGBDepth;
APPKIT_EXPORT const NSWindowDepth GSSixteenBitRGBDepth;
APPKIT_EXPORT const NSWindowDepth NSTwentyFourBitRGBDepth;
/*
* Gray Values
*/
APPKIT_EXPORT const CGFloat NSBlack;
APPKIT_EXPORT const CGFloat NSDarkGray;
APPKIT_EXPORT const CGFloat NSWhite;
APPKIT_EXPORT const CGFloat NSLightGray;
APPKIT_EXPORT const CGFloat NSGray;
/*
* Device Dictionary Keys
*/
APPKIT_EXPORT NSString *NSDeviceResolution;
APPKIT_EXPORT NSString *NSDeviceColorSpaceName;
APPKIT_EXPORT NSString *NSDeviceBitsPerSample;
APPKIT_EXPORT NSString *NSDeviceIsScreen;
APPKIT_EXPORT NSString *NSDeviceIsPrinter;
APPKIT_EXPORT NSString *NSDeviceSize;
/*
* Get Information About Color Space and Window Depth
*/
APPKIT_EXPORT const NSWindowDepth *NSAvailableWindowDepths(void);
APPKIT_EXPORT NSWindowDepth NSBestDepth(NSString *colorSpace,
NSInteger bitsPerSample, NSInteger bitsPerPixel,
BOOL planar, BOOL *exactMatch);
APPKIT_EXPORT NSInteger NSBitsPerPixelFromDepth(NSWindowDepth depth);
APPKIT_EXPORT NSInteger NSBitsPerSampleFromDepth(NSWindowDepth depth);
APPKIT_EXPORT NSString *NSColorSpaceFromDepth(NSWindowDepth depth);
APPKIT_EXPORT NSInteger NSNumberOfColorComponents(NSString *colorSpaceName);
APPKIT_EXPORT BOOL NSPlanarFromDepth(NSWindowDepth depth);
/*
* Functions for getting information about windows.
*/
APPKIT_EXPORT void NSCountWindows(NSInteger *count);
APPKIT_EXPORT void NSWindowList(NSInteger size, NSInteger list[]);
APPKIT_EXPORT void NSEraseRect(NSRect aRect);
APPKIT_EXPORT void NSHighlightRect(NSRect aRect);
APPKIT_EXPORT void NSRectClip(NSRect aRect);
APPKIT_EXPORT void NSRectClipList(const NSRect *rects, NSInteger count);
APPKIT_EXPORT void NSRectFill(NSRect aRect);
APPKIT_EXPORT void NSRectFillList(const NSRect *rects, NSInteger count);
APPKIT_EXPORT void NSRectFillListWithGrays(const NSRect *rects,
const CGFloat *grays,
NSInteger count);
/** Draws a set of edges of aRect. The sides array should contain
count edges, and grays the corresponding color. Edges are drawn
in the order given in the array, and subsequent edges are drawn
inside previous edges (thus, they will never overlap). */
APPKIT_EXPORT NSRect NSDrawTiledRects(NSRect aRect, const NSRect clipRect,
const NSRectEdge *sides,
const CGFloat *grays,
NSInteger count);
APPKIT_EXPORT void NSDrawButton(const NSRect aRect, const NSRect clipRect);
APPKIT_EXPORT void NSDrawGrayBezel(const NSRect aRect, const NSRect clipRect);
APPKIT_EXPORT void NSDrawGroove(const NSRect aRect, const NSRect clipRect);
APPKIT_EXPORT void NSDrawWhiteBezel(const NSRect aRect, const NSRect clipRect);
APPKIT_EXPORT void NSDrawFramePhoto(const NSRect aRect, const NSRect clipRect);
// This is from an old version of the specification
static inline void
NSDrawBezel(const NSRect aRect, const NSRect clipRect)
{
NSDrawGrayBezel(aRect, clipRect);
}
/** Draws a rectangle along the inside of aRect. The rectangle will be
black, dotted (using 1 point dashes), and will have a line width
of 1 point. */
APPKIT_EXPORT void NSDottedFrameRect(NSRect aRect);
/** <p>Draws a rectangle using the current color along the inside of aRect.
NSFrameRectWithWidth uses the frameWidth as the line width, while
NSFrameRect always uses 1 point wide lines. The functions do not
change the line width of the current graphics context.
</p><p>
'Inside' here means that no part of the stroked rectangle will extend
outside the given rectangle.
</p> */
APPKIT_EXPORT void NSFrameRect(const NSRect aRect);
APPKIT_EXPORT void NSFrameRectWithWidth(const NSRect aRect, CGFloat frameWidth);
APPKIT_EXPORT void NSFrameRectWithWidthUsingOperation(const NSRect aRect, CGFloat frameWidth,
NSCompositingOperation op);
APPKIT_EXPORT NSColor* NSReadPixel(NSPoint location);
APPKIT_EXPORT void NSCopyBitmapFromGState(int srcGstate, NSRect srcRect,
NSRect destRect);
APPKIT_EXPORT void NSCopyBits(NSInteger srcGstate, NSRect srcRect,
NSPoint destPoint);
APPKIT_EXPORT void NSDrawBitmap(NSRect rect,
NSInteger pixelsWide,
NSInteger pixelsHigh,
NSInteger bitsPerSample,
NSInteger samplesPerPixel,
NSInteger bitsPerPixel,
NSInteger bytesPerRow,
BOOL isPlanar,
BOOL hasAlpha,
NSString *colorSpaceName,
const unsigned char *const data[5]);
APPKIT_EXPORT void
NSDrawThreePartImage(NSRect aRect, NSImage *start, NSImage *middle,
NSImage *end, BOOL isVertical, NSCompositingOperation op,
CGFloat fraction, BOOL flipped);
APPKIT_EXPORT void
NSDrawNinePartImage(NSRect aRect, NSImage *topLeft, NSImage *topMiddle,
NSImage *topRight, NSImage *centerLeft,
NSImage *centerMiddle, NSImage *centerRight,
NSImage *bottomLeft, NSImage *bottomMiddle,
NSImage *bottomRight, NSCompositingOperation op,
CGFloat fraction, BOOL flipped);
static inline void
NSBeep(void)
{
NSGraphicsContext *ctxt = GSCurrentContext();
if (ctxt != nil) {
(ctxt->methods->NSBeep)
(ctxt, @selector(NSBeep));
}
}
static inline void
GSWSetViewIsFlipped(NSGraphicsContext *ctxt, BOOL flipped)
{
(ctxt->methods->GSWSetViewIsFlipped_)
(ctxt, @selector(GSWSetViewIsFlipped:), flipped);
}
static inline BOOL
GSWViewIsFlipped(NSGraphicsContext *ctxt)
{
return (ctxt->methods->GSWViewIsFlipped)
(ctxt, @selector(GSWViewIsFlipped));
}
#if OS_API_VERSION(GS_API_NONE, GS_API_NONE)
@class NSArray;
@class NSWindow;
APPKIT_EXPORT NSArray* GSOrderedWindows(void);
APPKIT_EXPORT NSArray* GSAllWindows(void);
APPKIT_EXPORT NSWindow* GSWindowWithNumber(NSInteger num);
#endif
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
// Window operations
APPKIT_EXPORT void NSConvertGlobalToWindowNumber(int globalNum, unsigned int *winNum);
APPKIT_EXPORT void NSConvertWindowNumberToGlobal(int winNum, unsigned int *globalNum);
// Rectangle drawing
APPKIT_EXPORT NSRect NSDrawColorTiledRects(NSRect boundsRect, NSRect clipRect,
const NSRectEdge *sides,
NSColor **colors,
NSInteger count);
APPKIT_EXPORT void NSDrawDarkBezel(NSRect aRect, NSRect clipRect);
APPKIT_EXPORT void NSDrawLightBezel(NSRect aRect, NSRect clipRect);
APPKIT_EXPORT void NSRectFillListWithColors(const NSRect *rects,
NSColor **colors, NSInteger count);
APPKIT_EXPORT void NSRectFillUsingOperation(NSRect aRect,
NSCompositingOperation op);
APPKIT_EXPORT void NSRectFillListUsingOperation(const NSRect *rects,
NSInteger count,
NSCompositingOperation op);
APPKIT_EXPORT void NSRectFillListWithColorsUsingOperation(const NSRect *rects,
NSColor **colors,
NSInteger num,
NSCompositingOperation op);
APPKIT_EXPORT void NSDrawWindowBackground(NSRect aRect);
// Context information
APPKIT_EXPORT void NSCountWindowsForContext(NSInteger context, NSInteger *count);
APPKIT_EXPORT void NSWindowListForContext(NSInteger context, NSInteger size, NSInteger **list);
APPKIT_EXPORT int NSGetWindowServerMemory(int context, int *virtualMemory,
int *windowBackingMemory,
NSString **windowDumpStream);
#endif
#if OS_API_VERSION(MAC_OS_X_VERSION_10_1, GS_API_LATEST)
typedef enum _NSFocusRingPlacement
{
NSFocusRingOnly=0,
NSFocusRingBelow,
NSFocusRingAbove
} NSFocusRingPlacement;
void NSSetFocusRingStyle(NSFocusRingPlacement placement);
#endif
#if defined(__cplusplus)
}
#endif
#endif /* __NSGraphics_h__ */
|