mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-25 09:31:00 +00:00
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26619 72102866-910b-0410-8b05-ffd578937521
1095 lines
20 KiB
Objective-C
1095 lines
20 KiB
Objective-C
/** <title>GSFusedSilica</title>
|
|
|
|
<abstract>C Interface to graphics drawing library</abstract>
|
|
|
|
Copyright (C) 2002 Free Software Foundation, Inc.
|
|
|
|
Author: Adam Fedor <fedor@gnu.org>
|
|
Date: Sep 2002
|
|
|
|
This file is part of the GNUStep
|
|
|
|
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.
|
|
*/
|
|
|
|
#include "GSFusedSilicaContext.h"
|
|
#include "AppKit/NSAffineTransform.h"
|
|
#include <Foundation/NSDictionary.h>
|
|
|
|
/* Managing Graphics Contexts */
|
|
|
|
CGContextRef CGBitmapContextCreate(
|
|
void *data,
|
|
size_t width,
|
|
size_t height,
|
|
size_t bitsPerComponent,
|
|
size_t bytesPerRow,
|
|
CGColorSpaceRef colorspace,
|
|
CGImageAlphaInfo alphaInfo
|
|
)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
/*
|
|
CGContextRef CGPDFContextCreate(
|
|
CGDataConsumerRef consumer,
|
|
const CGRect *mediaBox,
|
|
CFDictionaryRef auxiliaryInfo
|
|
);
|
|
|
|
CGContextRef CGPDFContextCreateWithURL(
|
|
CFURLRef url,
|
|
const CGRect *mediaBox,
|
|
CFDictionaryRef auxiliaryInfo
|
|
);
|
|
*/
|
|
|
|
CGContextRef CGContextRetain(CGContextRef ctx)
|
|
{
|
|
return [(NSGraphicsContext *)ctx retain];
|
|
}
|
|
|
|
void CGContextRelease(CGContextRef ctx)
|
|
{
|
|
[(NSGraphicsContext *)ctx release];
|
|
}
|
|
|
|
void CGContextFlush(CGContextRef ctx)
|
|
{
|
|
[(NSGraphicsContext *)ctx flushGraphics];
|
|
}
|
|
|
|
void CGContextSynchronize(CGContextRef ctx)
|
|
{
|
|
}
|
|
|
|
/* Defining Pages */
|
|
|
|
void CGContextBeginPage(CGContextRef ctx, const CGRect *mediaBox)
|
|
{
|
|
}
|
|
|
|
void CGContextEndPage(CGContextRef ctx)
|
|
{
|
|
}
|
|
|
|
/* Transforming the Coordinate Space of the Page */
|
|
|
|
void CGContextScaleCTM(CGContextRef ctx, float sx, float sy)
|
|
{
|
|
NSAffineTransform *trans = [NSAffineTransform transform];
|
|
[trans scaleXBy: sx yBy: sy];
|
|
[(NSGraphicsContext *)ctx GSConcatCTM: trans];
|
|
}
|
|
|
|
void CGContextTranslateCTM(CGContextRef ctx, float tx, float ty)
|
|
{
|
|
NSAffineTransform *trans = [NSAffineTransform transform];
|
|
[trans translateXBy: tx yBy: ty];
|
|
[(NSGraphicsContext *)ctx GSConcatCTM: trans];
|
|
}
|
|
|
|
void CGContextRotateCTM(CGContextRef ctx, float angle)
|
|
{
|
|
NSAffineTransform *trans = [NSAffineTransform transform];
|
|
[trans rotateByDegrees: angle];
|
|
[(NSGraphicsContext *)ctx GSConcatCTM: trans];
|
|
}
|
|
|
|
void CGContextConcatCTM(CGContextRef ctx, CGAffineTransform transform)
|
|
{
|
|
#if 0
|
|
NSAffineTransform *trans = [NSAffineTransform transform];
|
|
[trans setTransformStruct: (NSAffineTransformStruct) transform];
|
|
[(NSGraphicsContext *)ctx GSConcatCTM: trans];
|
|
#endif
|
|
}
|
|
|
|
CGAffineTransform CGContextGetCTM(CGContextRef ctx)
|
|
{
|
|
//NSAffineTransform *trans = [(NSGraphicsContext *)ctx GSCurrentCTM];
|
|
return CGAffineTransformIdentity;
|
|
}
|
|
|
|
/* Saving and Restoring the Graphics State */
|
|
|
|
void CGContextSaveGState(CGContextRef ctx)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSgsave];
|
|
}
|
|
|
|
void CGContextRestoreGState(CGContextRef ctx)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSgrestore];
|
|
}
|
|
|
|
/* Setting Graphics State Attributes */
|
|
|
|
void CGContextSetShouldAntialias(CGContextRef ctx, int shouldAntialias)
|
|
{
|
|
[(NSGraphicsContext *)ctx setShouldAntialias: shouldAntialias];
|
|
}
|
|
|
|
void CGContextSetLineWidth(CGContextRef ctx, float width)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSsetlinewidth: width];
|
|
}
|
|
|
|
void CGContextSetLineJoin(CGContextRef ctx, CGLineJoin join)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSsetlinejoin: join];
|
|
}
|
|
|
|
void CGContextSetMiterLimit(CGContextRef ctx, float limit)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSsetmiterlimit: limit];
|
|
}
|
|
|
|
void CGContextSetLineCap(CGContextRef ctx, CGLineCap cap)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSsetlinecap: cap];
|
|
}
|
|
|
|
void CGContextSetLineDash(CGContextRef ctx, float phase, const float *lengths, size_t count)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSsetdash: lengths : count : phase];
|
|
}
|
|
|
|
void CGContextSetFlatness(CGContextRef ctx, float flatness)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSsetflat: flatness];
|
|
}
|
|
|
|
/* Constructing Paths */
|
|
|
|
void CGContextBeginPath(CGContextRef ctx)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSnewpath];
|
|
}
|
|
|
|
void CGContextMoveToPoint(CGContextRef ctx, float x, float y)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSmoveto: x : y];
|
|
}
|
|
|
|
void CGContextAddLineToPoint(CGContextRef ctx, float x, float y)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSlineto: x : y];
|
|
}
|
|
|
|
void CGContextAddLines(CGContextRef ctx, const CGPoint *points, size_t count)
|
|
{
|
|
// FIXME
|
|
}
|
|
|
|
void CGContextAddCurveToPoint(
|
|
CGContextRef ctx,
|
|
float cp1x,
|
|
float cp1y,
|
|
float cp2x,
|
|
float cp2y,
|
|
float x,
|
|
float y
|
|
)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPScurveto: cp1x : cp1y : cp2x : cp2y : x : y];
|
|
}
|
|
|
|
void CGContextAddQuadCurveToPoint(
|
|
CGContextRef ctx,
|
|
float cpx,
|
|
float cpy,
|
|
float x,
|
|
float y
|
|
)
|
|
{
|
|
// FIXME
|
|
}
|
|
|
|
void CGContextAddRect(CGContextRef ctx, CGRect rect)
|
|
{
|
|
// FIXME
|
|
}
|
|
|
|
void CGContextAddRects(CGContextRef ctx, const CGRect *rects, size_t count)
|
|
{
|
|
// FIXME
|
|
}
|
|
|
|
void CGContextAddArc(
|
|
CGContextRef ctx,
|
|
float x,
|
|
float y,
|
|
float radius,
|
|
float startAngle,
|
|
float endAngle,
|
|
int clockwise
|
|
)
|
|
{
|
|
// FIXME: clockwise...
|
|
[(NSGraphicsContext *)ctx DPSarc: x : y : radius : startAngle : endAngle];
|
|
}
|
|
|
|
void CGContextAddArcToPoint(
|
|
CGContextRef ctx,
|
|
float x1,
|
|
float y1,
|
|
float x2,
|
|
float y2,
|
|
float radius
|
|
)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSarct: x1 : y1 : x2 : y2 : radius];
|
|
}
|
|
|
|
void CGContextClosePath(CGContextRef ctx)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSclosepath];
|
|
}
|
|
|
|
/* Painting Paths */
|
|
|
|
void CGContextDrawPath(CGContextRef ctx, CGPathDrawingMode mode)
|
|
{
|
|
//FIXME
|
|
}
|
|
|
|
void CGContextStrokePath(CGContextRef ctx)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSstroke];
|
|
}
|
|
|
|
void CGContextFillPath(CGContextRef ctx)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSfill];
|
|
}
|
|
|
|
void CGContextEOFillPath(CGContextRef ctx)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSeofill];
|
|
}
|
|
|
|
void CGContextStrokeRect(CGContextRef ctx, CGRect rect)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSrectstroke: rect.origin.x : rect.origin.y
|
|
: rect.size.width : rect.size.height];
|
|
}
|
|
|
|
void CGContextStrokeRectWithWidth(CGContextRef ctx, CGRect rect, float width)
|
|
{
|
|
//FIXME
|
|
}
|
|
|
|
void CGContextFillRect(CGContextRef ctx, CGRect rect)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSrectfill: rect.origin.x : rect.origin.y
|
|
: rect.size.width : rect.size.height];
|
|
}
|
|
|
|
void CGContextFillRects(CGContextRef ctx, const CGRect *rects, size_t count)
|
|
{
|
|
[(NSGraphicsContext *)ctx GSRectFillList: (NSRect *)rects : count];
|
|
}
|
|
|
|
void CGContextClearRect(CGContextRef c, CGRect rect)
|
|
{
|
|
//FIXME
|
|
}
|
|
|
|
/* Obtaining Path Information */
|
|
|
|
int CGContextIsPathEmpty(CGContextRef ctx)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
CGPoint CGContextGetPathCurrentPoint(CGContextRef ctx)
|
|
{
|
|
CGPoint p;
|
|
[(NSGraphicsContext *)ctx DPScurrentpoint: &p.x : &p.y];
|
|
return p;
|
|
}
|
|
|
|
CGRect CGContextGetPathBoundingBox(CGContextRef ctx)
|
|
{
|
|
return CGRectZero;
|
|
}
|
|
|
|
/* Clipping Paths */
|
|
|
|
void CGContextClip(CGContextRef ctx)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSclip];
|
|
}
|
|
|
|
void CGContextEOClip(CGContextRef ctx)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSeoclip];
|
|
}
|
|
|
|
void CGContextClipToRect(CGContextRef ctx, CGRect rect)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSrectclip: rect.origin.x : rect.origin.y
|
|
: rect.size.width : rect.size.height];
|
|
}
|
|
|
|
void CGContextClipToRects(CGContextRef ctx, const CGRect *rects, size_t count)
|
|
{
|
|
[(NSGraphicsContext *)ctx GSRectClipList: (NSRect *)rects : count];
|
|
}
|
|
|
|
/* Setting the Color Space */
|
|
CGColorSpaceRef CGColorSpaceCreateDeviceGray(void)
|
|
{
|
|
return [NSGraphicsContext CGColorSpaceCreateDeviceGray];
|
|
}
|
|
|
|
CGColorSpaceRef CGColorSpaceCreateDeviceRGB(void)
|
|
{
|
|
return [NSGraphicsContext CGColorSpaceCreateDeviceRGB];
|
|
}
|
|
|
|
CGColorSpaceRef CGColorSpaceCreateDeviceCMYK(void)
|
|
{
|
|
return [NSGraphicsContext CGColorSpaceCreateDeviceCMYK];
|
|
}
|
|
|
|
CGColorSpaceRef CGColorSpaceCreateCalibratedGray(
|
|
const float *whitePoint,
|
|
const float *blackPoint,
|
|
float gamma
|
|
)
|
|
{
|
|
return [NSGraphicsContext CGColorSpaceCreateCalibratedGray: whitePoint
|
|
: blackPoint
|
|
: gamma];
|
|
}
|
|
|
|
CGColorSpaceRef CGColorSpaceCreateCalibratedRGB(
|
|
const float *whitePoint,
|
|
const float *blackPoint,
|
|
const float *gamma,
|
|
const float *matrix
|
|
)
|
|
{
|
|
return [NSGraphicsContext CGColorSpaceCreateCalibratedRGB: whitePoint
|
|
: blackPoint
|
|
: gamma
|
|
: matrix];
|
|
}
|
|
|
|
CGColorSpaceRef CGColorSpaceCreateLab(
|
|
const float *whitePoint,
|
|
const float *blackPoint,
|
|
const float *range
|
|
)
|
|
{
|
|
return [NSGraphicsContext CGColorSpaceCreateLab: whitePoint
|
|
: blackPoint
|
|
: range];
|
|
}
|
|
|
|
CGColorSpaceRef CGColorSpaceCreateICCBased(
|
|
size_t nComponents,
|
|
const float *range,
|
|
CGDataProviderRef profile,
|
|
CGColorSpaceRef alternateSpace
|
|
)
|
|
{
|
|
return [NSGraphicsContext CGColorSpaceCreateICCBased: nComponents
|
|
: range
|
|
: profile
|
|
: alternateSpace];
|
|
}
|
|
|
|
CGColorSpaceRef CGColorSpaceCreateIndexed(
|
|
CGColorSpaceRef baseSpace,
|
|
size_t lastIndex,
|
|
const /*UInt8*/ unsigned short int *colorTable
|
|
)
|
|
{
|
|
return [NSGraphicsContext CGColorSpaceCreateIndexed: baseSpace
|
|
: lastIndex
|
|
: colorTable];
|
|
}
|
|
|
|
size_t CGColorSpaceGetNumberOfComponents(CGColorSpaceRef cs)
|
|
{
|
|
return [NSGraphicsContext CGColorSpaceGetNumberOfComponents: cs];
|
|
}
|
|
|
|
CGColorSpaceRef CGColorSpaceRetain(CGColorSpaceRef cs)
|
|
{
|
|
return [NSGraphicsContext CGColorSpaceRetain: cs];
|
|
}
|
|
|
|
void CGColorSpaceRelease(CGColorSpaceRef cs)
|
|
{
|
|
[NSGraphicsContext CGColorSpaceRelease: cs];
|
|
}
|
|
|
|
void CGContextSetFillColorSpace(CGContextRef ctx, CGColorSpaceRef colorspace)
|
|
{
|
|
[(NSGraphicsContext *)ctx GSSetFillColorspace: colorspace];
|
|
}
|
|
|
|
void CGContextSetStrokeColorSpace(CGContextRef ctx, CGColorSpaceRef colorspace)
|
|
{
|
|
[(NSGraphicsContext *)ctx GSSetStrokeColorspace: colorspace];
|
|
}
|
|
|
|
|
|
void CGContextSetRenderingIntent(CGContextRef c, CGColorRenderingIntent intent)
|
|
{
|
|
//FIXME
|
|
}
|
|
|
|
|
|
/* Setting Colors */
|
|
|
|
void CGContextSetFillColor(CGContextRef ctx, const float *value)
|
|
{
|
|
[(NSGraphicsContext *)ctx GSSetFillColor: value];
|
|
}
|
|
|
|
void CGContextSetStrokeColor(CGContextRef ctx, const float *value)
|
|
{
|
|
[(NSGraphicsContext *)ctx GSSetStrokeColor: value];
|
|
}
|
|
|
|
void CGContextSetGrayFillColor(CGContextRef ctx, float gray, float alpha)
|
|
{
|
|
float values[2];
|
|
values[0] = gray;
|
|
values[1] = alpha;
|
|
CGContextSetFillColor(ctx, CGColorSpaceCreateDeviceGray());
|
|
return CGContextSetFillColor(ctx, values);
|
|
}
|
|
|
|
void CGContextSetGrayStrokeColor(CGContextRef ctx, float gray, float alpha)
|
|
{
|
|
float values[2];
|
|
values[0] = gray;
|
|
values[1] = alpha;
|
|
CGContextSetStrokeColor(ctx, CGColorSpaceCreateDeviceGray());
|
|
return CGContextSetStrokeColor(ctx, values);
|
|
}
|
|
|
|
void CGContextSetRGBFillColor(
|
|
CGContextRef ctx,
|
|
float r,
|
|
float g,
|
|
float b,
|
|
float alpha
|
|
)
|
|
{
|
|
float values[4];
|
|
values[0] = r; values[1] = g; values[2] = b;
|
|
values[3] = alpha;
|
|
CGContextSetFillColor(ctx, CGColorSpaceCreateDeviceRGB());
|
|
return CGContextSetFillColor(ctx, values);
|
|
}
|
|
|
|
void CGContextSetRGBStrokeColor(
|
|
CGContextRef ctx,
|
|
float r,
|
|
float g,
|
|
float b,
|
|
float alpha
|
|
)
|
|
{
|
|
float values[4];
|
|
values[0] = r; values[1] = g; values[2] = b;
|
|
values[3] = alpha;
|
|
CGContextSetStrokeColor(ctx, CGColorSpaceCreateDeviceRGB());
|
|
return CGContextSetStrokeColor(ctx, values);
|
|
}
|
|
|
|
void CGContextSetCMYKFillColor(
|
|
CGContextRef ctx,
|
|
float c,
|
|
float m,
|
|
float y,
|
|
float k,
|
|
float alpha
|
|
)
|
|
{
|
|
float values[5];
|
|
values[0] = c; values[1] = m; values[2] = y; values[3] = k;
|
|
values[4] = alpha;
|
|
CGContextSetFillColor(ctx, CGColorSpaceCreateDeviceCMYK());
|
|
return CGContextSetFillColor(ctx, values);
|
|
}
|
|
|
|
void CGContextSetCMYKStrokeColor(
|
|
CGContextRef ctx,
|
|
float c,
|
|
float m,
|
|
float y,
|
|
float k,
|
|
float alpha
|
|
)
|
|
{
|
|
float values[5];
|
|
values[0] = c; values[1] = m; values[2] = y; values[3] = k;
|
|
values[4] = alpha;
|
|
CGContextSetStrokeColor(ctx, CGColorSpaceCreateDeviceCMYK());
|
|
return CGContextSetStrokeColor(ctx, values);
|
|
}
|
|
|
|
void CGContextSetAlpha(CGContextRef ctx, float alpha)
|
|
{
|
|
[(NSGraphicsContext *)ctx DPSsetalpha: alpha];
|
|
}
|
|
|
|
/* Drawing Images */
|
|
|
|
CGImageRef CGImageCreate(
|
|
size_t width,
|
|
size_t height,
|
|
size_t bitsPerComponent,
|
|
size_t bitsPerPixel,
|
|
size_t bytesPerRow,
|
|
CGColorSpaceRef colorspace,
|
|
CGImageAlphaInfo alphaInfo,
|
|
CGDataProviderRef provider,
|
|
const float *decode,
|
|
int shouldInterpolate,
|
|
CGColorRenderingIntent intent
|
|
)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
CGImageRef CGImageMaskCreate(
|
|
size_t width,
|
|
size_t height,
|
|
size_t bitsPerComponent,
|
|
size_t bitsPerPixel,
|
|
size_t bytesPerRow,
|
|
CGDataProviderRef provider,
|
|
const float *decode,
|
|
int shouldInterpolate
|
|
)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
CGImageRef CGImageRetain(CGImageRef image)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
void CGImageRelease(CGImageRef image)
|
|
{
|
|
}
|
|
|
|
int CGImageIsMask(CGImageRef image)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
size_t CGImageGetWidth(CGImageRef image)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
size_t CGImageGetHeight(CGImageRef image)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
size_t CGImageGetBitsPerComponent(CGImageRef image)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
size_t CGImageGetBitsPerPixel(CGImageRef image)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
size_t CGImageGetBytesPerRow(CGImageRef image)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
CGColorSpaceRef CGImageGetColorSpace(CGImageRef image)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
CGImageAlphaInfo CGImageGetAlphaInfo(CGImageRef image)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
CGDataProviderRef CGImageGetDataProvider(CGImageRef image)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
const float *CGImageGetDecode(CGImageRef image)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
int CGImageGetShouldInterpolate(CGImageRef image)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
CGColorRenderingIntent CGImageGetRenderingIntent(CGImageRef image)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
void CGContextDrawImage(CGContextRef ctx, CGRect rect, CGImageRef image)
|
|
{
|
|
}
|
|
|
|
/* Drawing PDF Documents */
|
|
|
|
CGPDFDocumentRef CGPDFDocumentCreateWithProvider(CGDataProviderRef provider)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
/* CGPDFDocumentRef CGPDFDocumentCreateWithURL(CFURLRef url) */
|
|
|
|
CGPDFDocumentRef CGPDFDocumentRetain(CGPDFDocumentRef document)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
void CGPDFDocumentRelease(CGPDFDocumentRef document)
|
|
{
|
|
}
|
|
|
|
int CGPDFDocumentGetNumberOfPages(CGPDFDocumentRef document)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
CGRect CGPDFDocumentGetMediaBox(CGPDFDocumentRef document, int page)
|
|
{
|
|
return CGRectMake(0, 0, 0, 0);
|
|
}
|
|
|
|
CGRect CGPDFDocumentGetCropBox(CGPDFDocumentRef document, int page)
|
|
{
|
|
return CGRectMake(0, 0, 0, 0);
|
|
}
|
|
|
|
CGRect CGPDFDocumentGetBleedBox(CGPDFDocumentRef document, int page)
|
|
{
|
|
return CGRectMake(0, 0, 0, 0);
|
|
}
|
|
|
|
CGRect CGPDFDocumentGetTrimBox(CGPDFDocumentRef document, int page)
|
|
{
|
|
return CGRectMake(0, 0, 0, 0);
|
|
}
|
|
|
|
CGRect CGPDFDocumentGetArtBox(CGPDFDocumentRef document, int page)
|
|
{
|
|
return CGRectMake(0, 0, 0, 0);
|
|
}
|
|
|
|
int CGPDFDocumentGetRotationAngle(CGPDFDocumentRef document, int page)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
void CGContextDrawPDFDocument(
|
|
CGContextRef ctx,
|
|
CGRect rect,
|
|
CGPDFDocumentRef document,
|
|
int page
|
|
)
|
|
{
|
|
}
|
|
|
|
/* Drawing Text */
|
|
|
|
CGFontRef CGFontCreateWithPlatformFont(void *platformFontReference)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
void CGContextSelectFont(
|
|
CGContextRef ctx,
|
|
const char *name,
|
|
float size,
|
|
CGTextEncoding textEncoding
|
|
)
|
|
{
|
|
}
|
|
|
|
void CGContextSetFont(CGContextRef ctx, CGFontRef font)
|
|
{
|
|
[(NSGraphicsContext *)ctx GSSetFont: font];
|
|
}
|
|
|
|
void CGContextSetFontSize(CGContextRef ctx, float size)
|
|
{
|
|
}
|
|
|
|
CGFontRef CGFontRetain(CGFontRef font)
|
|
{
|
|
return [NSGraphicsContext CGFontRetain: font];
|
|
}
|
|
|
|
void CGFontRelease(CGFontRef font)
|
|
{
|
|
[NSGraphicsContext CGFontRelease: font];
|
|
}
|
|
|
|
void CGContextSetCharacterSpacing(CGContextRef ctx, float spacing)
|
|
{
|
|
}
|
|
|
|
void CGContextSetTextDrawingMode(CGContextRef ctx, CGTextDrawingMode mode)
|
|
{
|
|
}
|
|
|
|
void CGContextSetTextPosition(CGContextRef ctx, float x, float y)
|
|
{
|
|
}
|
|
|
|
CGPoint CGContextGetTextPosition(CGContextRef ctx)
|
|
{
|
|
//return [(NSGraphicsContext *)ctx GSGetTextPosition];
|
|
return CGPointZero;
|
|
}
|
|
|
|
void CGContextSetTextMatrix(CGContextRef ctx, CGAffineTransform transform)
|
|
{
|
|
}
|
|
|
|
CGAffineTransform CGContextGetTextMatrix(CGContextRef ctx)
|
|
{
|
|
//return [(NSGraphicsContext *)ctx GSGetTextCTM] transformStruct];
|
|
return CGAffineTransformIdentity;
|
|
}
|
|
|
|
void CGContextShowText(CGContextRef ctx, const char *cstring, size_t length)
|
|
{
|
|
}
|
|
|
|
void CGContextShowGlyphs(CGContextRef ctx, const CGGlyph *g, size_t count)
|
|
{
|
|
}
|
|
|
|
void CGContextShowTextAtPoint(
|
|
CGContextRef ctx,
|
|
float x,
|
|
float y,
|
|
const char *cstring,
|
|
size_t length
|
|
)
|
|
{
|
|
}
|
|
|
|
void CGContextShowGlyphsAtPoint(
|
|
CGContextRef ctx,
|
|
float x,
|
|
float y,
|
|
const CGGlyph *g,
|
|
size_t count
|
|
)
|
|
{
|
|
}
|
|
|
|
/* Passing Data */
|
|
|
|
CGDataConsumerRef CGDataConsumerCreate(
|
|
void *info,
|
|
const CGDataConsumerCallbacks *callbacks
|
|
)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
/* CGDataConsumerRef CGDataConsumerCreateWithURL(CFURLRef url) */
|
|
|
|
CGDataConsumerRef CGDataConsumerRetain(CGDataConsumerRef consumer)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
void CGDataConsumerRelease(CGDataConsumerRef consumer)
|
|
{
|
|
}
|
|
|
|
CGDataProviderRef CGDataProviderCreate(
|
|
void *info,
|
|
const CGDataProviderCallbacks *callbacks
|
|
)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
CGDataProviderRef CGDataProviderCreateDirectAccess(
|
|
void *info,
|
|
size_t size,
|
|
const CGDataProviderDirectAccessCallbacks *callbacks
|
|
)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
CGDataProviderRef CGDataProviderCreateWithData(
|
|
void *info,
|
|
const void *data,
|
|
size_t size,
|
|
int releaseData
|
|
)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
/* CGDataProviderRef CGDataProviderCreateWithURL(CFURLRef url) */
|
|
|
|
CGDataProviderRef CGDataProviderRetain(CGDataProviderRef provider)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
void CGDataProviderRelease(CGDataProviderRef provider)
|
|
{
|
|
}
|
|
|
|
/* Modifying Geometric Forms */
|
|
|
|
CGPoint CGPointMake(float x, float y)
|
|
{
|
|
return CGPointZero;
|
|
}
|
|
|
|
CGSize CGSizeMake(float width, float height)
|
|
{
|
|
return CGSizeZero;
|
|
}
|
|
|
|
CGRect CGRectMake(
|
|
float x,
|
|
float y,
|
|
float width,
|
|
float height
|
|
)
|
|
{
|
|
return CGRectZero;
|
|
}
|
|
|
|
CGRect CGRectStandardize(CGRect rect)
|
|
{
|
|
return CGRectZero;
|
|
}
|
|
|
|
CGRect CGRectInset(CGRect rect, float dx, float dy)
|
|
{
|
|
return CGRectZero;
|
|
}
|
|
|
|
CGRect CGRectOffset(CGRect rect, float dx, float dy)
|
|
{
|
|
return CGRectZero;
|
|
}
|
|
|
|
CGRect CGRectIntegral(CGRect rect)
|
|
{
|
|
return CGRectZero;
|
|
}
|
|
|
|
CGRect CGRectUnion(CGRect r1, CGRect r2)
|
|
{
|
|
return CGRectZero;
|
|
}
|
|
|
|
CGRect CGRectIntersection(CGRect r1, CGRect r2)
|
|
{
|
|
return CGRectZero;
|
|
}
|
|
|
|
void CGRectDivide(
|
|
CGRect rect,
|
|
CGRect *slice,
|
|
CGRect *remainder,
|
|
float amount,
|
|
CGRectEdge edge
|
|
)
|
|
{
|
|
}
|
|
|
|
/* Accessing Geometric Attributes */
|
|
|
|
float CGRectGetMinX(CGRect rect)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
float CGRectGetMidX(CGRect rect)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
float CGRectGetMaxX(CGRect rect)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
float CGRectGetMinY(CGRect rect)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
float CGRectGetMidY(CGRect rect)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
float CGRectGetMaxY(CGRect rect)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
float CGRectGetWidth(CGRect rect)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
float CGRectGetHeight(CGRect rect)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
int CGRectIsNull(CGRect rect)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
int CGRectIsEmpty(CGRect rect)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
int CGRectIntersectsRect(CGRect rect1, CGRect rect2)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
int CGRectContainsRect(CGRect rect1, CGRect rect2)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
int CGRectContainsPoint(CGRect rect, CGPoint point)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
int CGRectEqualToRect(CGRect rect1, CGRect rect2)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
int CGSizeEqualToSize(CGSize size1, CGSize size2)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
int CGPointEqualToPoint(CGPoint point1, CGPoint point2)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
/* Affine Transform Utility Functions */
|
|
|
|
CGAffineTransform CGAffineTransformMake(
|
|
float a,
|
|
float b,
|
|
float c,
|
|
float d,
|
|
float tx,
|
|
float ty
|
|
)
|
|
{
|
|
return CGAffineTransformIdentity;
|
|
}
|
|
|
|
CGAffineTransform CGAffineTransformMakeTranslation(float tx, float ty)
|
|
{
|
|
return CGAffineTransformIdentity;
|
|
}
|
|
|
|
CGAffineTransform CGAffineTransformMakeScale(float sx, float sy)
|
|
{
|
|
return CGAffineTransformIdentity;
|
|
}
|
|
|
|
CGAffineTransform CGAffineTransformMakeRotation(float angle)
|
|
{
|
|
return CGAffineTransformIdentity;
|
|
}
|
|
|
|
CGAffineTransform CGAffineTransformTranslate(
|
|
CGAffineTransform t,
|
|
float tx,
|
|
float ty
|
|
)
|
|
{
|
|
return CGAffineTransformIdentity;
|
|
}
|
|
|
|
CGAffineTransform CGAffineTransformScale(
|
|
CGAffineTransform t,
|
|
float sx,
|
|
float sy
|
|
)
|
|
{
|
|
return CGAffineTransformIdentity;
|
|
}
|
|
|
|
CGAffineTransform CGAffineTransformRotate(CGAffineTransform t, float angle)
|
|
{
|
|
return CGAffineTransformIdentity;
|
|
}
|
|
|
|
CGAffineTransform CGAffineTransformInvert(CGAffineTransform t)
|
|
{
|
|
return CGAffineTransformIdentity;
|
|
}
|
|
|
|
CGAffineTransform CGAffineTransformConcat(
|
|
CGAffineTransform t1,
|
|
CGAffineTransform t2
|
|
)
|
|
{
|
|
return CGAffineTransformIdentity;
|
|
}
|
|
|
|
CGPoint CGPointApplyAffineTransform(CGPoint point, CGAffineTransform t)
|
|
{
|
|
return point;
|
|
}
|
|
|
|
CGSize CGSizeApplyAffineTransform(CGSize size, CGAffineTransform t)
|
|
{
|
|
return size;
|
|
}
|