diff options
-rw-r--r-- | include/core/SkAutoKern.h (renamed from src/core/SkAutoKern.h) | 0 | ||||
-rw-r--r-- | include/core/SkBlitter.h (renamed from src/core/SkBlitter.h) | 0 | ||||
-rw-r--r-- | include/core/SkDraw.h | 2 | ||||
-rw-r--r-- | include/core/SkGeometry.h (renamed from src/core/SkGeometry.h) | 0 | ||||
-rw-r--r-- | include/core/SkScan.h (renamed from src/core/SkScan.h) | 0 | ||||
-rw-r--r-- | include/views/SkOSWindow_Mac.h | 8 | ||||
-rw-r--r-- | samplecode/SampleApp.cpp | 16 | ||||
-rw-r--r-- | samplecode/SamplePatch.cpp | 1 | ||||
-rw-r--r-- | samplecode/SamplePath.cpp | 1 | ||||
-rw-r--r-- | samplecode/SamplePathEffects.cpp | 1 | ||||
-rw-r--r-- | src/ports/SkImageDecoder_empty.cpp | 110 | ||||
-rw-r--r-- | src/utils/mac/SkBitmap_Mac.cpp | 142 | ||||
-rw-r--r-- | src/utils/mac/SkOSWindow_Mac.cpp | 451 | ||||
-rw-r--r-- | src/utils/mac/skia_mac.cp | 43 | ||||
-rw-r--r-- | src/views/SkWindow.cpp | 4 | ||||
-rw-r--r-- | xcode/core/core.xcodeproj/project.pbxproj | 8 | ||||
-rw-r--r-- | xcode/effects/effects.xcodeproj/project.pbxproj | 337 | ||||
-rw-r--r-- | xcode/hostapp/CICarbonSample.xcodeproj/project.pbxproj | 12 | ||||
-rw-r--r-- | xcode/maccore/maccore.xcodeproj/project.pbxproj | 12 |
19 files changed, 1121 insertions, 27 deletions
diff --git a/src/core/SkAutoKern.h b/include/core/SkAutoKern.h index 023cb6b2fe..023cb6b2fe 100644 --- a/src/core/SkAutoKern.h +++ b/include/core/SkAutoKern.h diff --git a/src/core/SkBlitter.h b/include/core/SkBlitter.h index 11b84fdb37..11b84fdb37 100644 --- a/src/core/SkBlitter.h +++ b/include/core/SkBlitter.h diff --git a/include/core/SkDraw.h b/include/core/SkDraw.h index 2d775a4272..821485953b 100644 --- a/include/core/SkDraw.h +++ b/include/core/SkDraw.h @@ -92,7 +92,7 @@ public: #endif }; -#include "SkGlyphCache.h" +class SkGlyphCache; class SkTextToPathIter { public: diff --git a/src/core/SkGeometry.h b/include/core/SkGeometry.h index 571159fd07..571159fd07 100644 --- a/src/core/SkGeometry.h +++ b/include/core/SkGeometry.h diff --git a/src/core/SkScan.h b/include/core/SkScan.h index 379c016b41..379c016b41 100644 --- a/src/core/SkScan.h +++ b/include/core/SkScan.h diff --git a/include/views/SkOSWindow_Mac.h b/include/views/SkOSWindow_Mac.h index 1f6a1fa9b2..0d808e105b 100644 --- a/include/views/SkOSWindow_Mac.h +++ b/include/views/SkOSWindow_Mac.h @@ -24,13 +24,18 @@ public: SkOSWindow(void* hwnd); void* getHWND() const { return fHWND; } + void* getHVIEW() const { return fHVIEW; } void updateSize(); static bool PostEvent(SkEvent* evt, SkEventSinkID, SkMSec delay); static pascal OSStatus SkOSWindow::EventHandler( EventHandlerCallRef inHandler, EventRef inEvent, void* userData ); + void doPaint(void* ctx); + protected: + // overrides from SkEventSink + virtual bool onEvent(const SkEvent& evt); // overrides from SkWindow virtual void onHandleInval(const SkIRect&); // overrides from SkView @@ -39,8 +44,7 @@ protected: private: void* fHWND; - - void doPaint(void* ctx); + void* fHVIEW; typedef SkWindow INHERITED; }; diff --git a/samplecode/SampleApp.cpp b/samplecode/SampleApp.cpp index 5ff8362b0e..365f558345 100644 --- a/samplecode/SampleApp.cpp +++ b/samplecode/SampleApp.cpp @@ -9,8 +9,12 @@ #include "SampleCode.h" +//#define SK_SUPPORT_GL + +#ifdef SK_SUPPORT_GL #include <AGL/agl.h> #include <OpenGL/gl.h> +#endif #define ANIMATING_EVENTTYPE "nextSample" #define ANIMATING_DELAY 750 @@ -29,6 +33,7 @@ SkViewRegister::SkViewRegister(SkViewFactory fact) : fFact(fact) { gHead = this; } +#ifdef SK_SUPPORT_GL static AGLContext gAGLContext; static void init_gl(WindowRef wref) { @@ -85,6 +90,7 @@ static void setup_offscreen_gl(const SkBitmap& offscreen, WindowRef wref) { glClearColor(0, 0, 0, 0); glClear(GL_COLOR_BUFFER_BIT); } +#endif ////////////////////////////////////////////////////////////////////////////// @@ -187,8 +193,10 @@ SampleWindow::CanvasType SampleWindow::cycle_canvastype(CanvasType ct) { } SampleWindow::SampleWindow(void* hwnd) : INHERITED(hwnd) { +#ifdef SK_SUPPORT_GL init_gl((WindowRef)hwnd); - +#endif + fPicture = NULL; fGLCanvas = NULL; @@ -237,9 +245,11 @@ static void reverseRedAndBlue(const SkBitmap& bm) { } SkCanvas* SampleWindow::beforeChildren(SkCanvas* canvas) { +#ifdef SK_SUPPORT_GL #ifndef USE_OFFSCREEN aglSetWindowRef(gAGLContext, NULL); #endif +#endif switch (fCanvasType) { case kRaster_CanvasType: canvas = this->INHERITED::beforeChildren(canvas); @@ -248,6 +258,7 @@ SkCanvas* SampleWindow::beforeChildren(SkCanvas* canvas) { fPicture = new SkPicture; canvas = fPicture->beginRecording(9999, 9999); break; +#ifdef SK_SUPPORT_GL case kOpenGL_CanvasType: { //SkGLCanvas::DeleteAllTextures(); // just for testing SkDevice* device = canvas->getDevice(); @@ -261,6 +272,7 @@ SkCanvas* SampleWindow::beforeChildren(SkCanvas* canvas) { canvas = fGLCanvas; break; } +#endif } if (fUseClip) { @@ -305,6 +317,7 @@ void SampleWindow::afterChildren(SkCanvas* orig) { } fPicture = NULL; break; +#ifdef SK_SUPPORT_GL case kOpenGL_CanvasType: glFlush(); delete fGLCanvas; @@ -313,6 +326,7 @@ void SampleWindow::afterChildren(SkCanvas* orig) { reverseRedAndBlue(orig->getDevice()->accessBitmap(true)); #endif break; +#endif } // if ((fScrollTestX | fScrollTestY) != 0) diff --git a/samplecode/SamplePatch.cpp b/samplecode/SamplePatch.cpp index 2e55db2ed0..77bd3324b6 100644 --- a/samplecode/SamplePatch.cpp +++ b/samplecode/SamplePatch.cpp @@ -11,7 +11,6 @@ #include "SkShader.h" #include "SkUtils.h" #include "SkXfermode.h" -#include "SkShaderExtras.h" #include "SkColorPriv.h" #include "SkColorFilter.h" #include "SkTime.h" diff --git a/samplecode/SamplePath.cpp b/samplecode/SamplePath.cpp index 04d006aa50..98f1a5b7f9 100644 --- a/samplecode/SamplePath.cpp +++ b/samplecode/SamplePath.cpp @@ -10,7 +10,6 @@ #include "SkShader.h" #include "SkUtils.h" #include "SkXfermode.h" -#include "SkShaderExtras.h" #include "SkColorPriv.h" #include "SkColorFilter.h" #include "SkTime.h" diff --git a/samplecode/SamplePathEffects.cpp b/samplecode/SamplePathEffects.cpp index 40822884bd..4e964d776f 100644 --- a/samplecode/SamplePathEffects.cpp +++ b/samplecode/SamplePathEffects.cpp @@ -6,7 +6,6 @@ #include "SkRegion.h" #include "SkShader.h" #include "SkUtils.h" -#include "SkShaderExtras.h" #include "Sk1DPathEffect.h" #include "SkCornerPathEffect.h" #include "SkPathMeasure.h" diff --git a/src/ports/SkImageDecoder_empty.cpp b/src/ports/SkImageDecoder_empty.cpp new file mode 100644 index 0000000000..45eb346115 --- /dev/null +++ b/src/ports/SkImageDecoder_empty.cpp @@ -0,0 +1,110 @@ +/* libs/graphics/ports/SkImageDecoder_Factory.cpp +** +** Copyright 2006, The Android Open Source Project +** +** Licensed under the Apache License, Version 2.0 (the "License"); +** you may not use this file except in compliance with the License. +** You may obtain a copy of the License at +** +** http://www.apache.org/licenses/LICENSE-2.0 +** +** Unless required by applicable law or agreed to in writing, software +** distributed under the License is distributed on an "AS IS" BASIS, +** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +** See the License for the specific language governing permissions and +** limitations under the License. +*/ + +#include "SkImageDecoder.h" +#include "SkMovie.h" +#include "SkStream.h" + +extern SkImageDecoder* SkImageDecoder_GIF_Factory(SkStream*); +extern SkImageDecoder* SkImageDecoder_BMP_Factory(SkStream*); +extern SkImageDecoder* SkImageDecoder_ICO_Factory(SkStream*); +extern SkImageDecoder* SkImageDecoder_PNG_Factory(SkStream*); +extern SkImageDecoder* SkImageDecoder_WBMP_Factory(SkStream*); +extern SkImageDecoder* SkImageDecoder_JPEG_Factory(SkStream*); + +typedef SkImageDecoder* (*SkImageDecoderFactoryProc)(SkStream*); + +struct CodecFormat { + SkImageDecoderFactoryProc fProc; + SkImageDecoder::Format fFormat; +}; + +static const CodecFormat gPairs[] = { +#if 0 + { SkImageDecoder_GIF_Factory, SkImageDecoder::kGIF_Format }, + { SkImageDecoder_PNG_Factory, SkImageDecoder::kPNG_Format }, + { SkImageDecoder_ICO_Factory, SkImageDecoder::kICO_Format }, + { SkImageDecoder_WBMP_Factory, SkImageDecoder::kWBMP_Format }, + { SkImageDecoder_BMP_Factory, SkImageDecoder::kBMP_Format }, + { SkImageDecoder_JPEG_Factory, SkImageDecoder::kJPEG_Format } +#endif +}; + +SkImageDecoder* SkImageDecoder::Factory(SkStream* stream) { + for (size_t i = 0; i < SK_ARRAY_COUNT(gPairs); i++) { + SkImageDecoder* codec = gPairs[i].fProc(stream); + stream->rewind(); + if (NULL != codec) { + return codec; + } + } + return NULL; +} + +bool SkImageDecoder::SupportsFormat(Format format) { + for (size_t i = 0; i < SK_ARRAY_COUNT(gPairs); i++) { + if (gPairs[i].fFormat == format) { + return true; + } + } + return false; +} + +///////////////////////////////////////////////////////////////////////// + +typedef SkMovie* (*SkMovieFactoryProc)(SkStream*); + +extern SkMovie* SkMovie_GIF_Factory(SkStream*); + +static const SkMovieFactoryProc gMovieProcs[] = { +#if 0 + SkMovie_GIF_Factory +#endif +}; + +SkMovie* SkMovie::DecodeStream(SkStream* stream) { + for (unsigned i = 0; i < SK_ARRAY_COUNT(gMovieProcs); i++) { + SkMovie* movie = gMovieProcs[i](stream); + if (NULL != movie) { + return movie; + } + stream->rewind(); + } + return NULL; +} + +///////////////////////////////////////////////////////////////////////// + +#ifdef SK_SUPPORT_IMAGE_ENCODE + +extern SkImageEncoder* SkImageEncoder_JPEG_Factory(); +extern SkImageEncoder* SkImageEncoder_PNG_Factory(); + +SkImageEncoder* SkImageEncoder::Create(Type t) { + switch (t) { +#if 0 + case kJPEG_Type: + return SkImageEncoder_JPEG_Factory(); + case kPNG_Type: + return SkImageEncoder_PNG_Factory(); +#endif + default: + return NULL; + } +} + +#endif diff --git a/src/utils/mac/SkBitmap_Mac.cpp b/src/utils/mac/SkBitmap_Mac.cpp new file mode 100644 index 0000000000..06c2b2701a --- /dev/null +++ b/src/utils/mac/SkBitmap_Mac.cpp @@ -0,0 +1,142 @@ +#include "SkBitmap.h" +#include "SkColorPriv.h" +#include "SkMath.h" + +#if defined(SK_BUILD_FOR_MAC) && !defined(SK_USE_WXWIDGETS) + +#include <ApplicationServices/ApplicationServices.h> + +#ifndef __ppc__ + #define SWAP_16BIT +#endif + +static void convertGL32_to_Mac32(uint32_t dst[], const SkBitmap& bm) { + memcpy(dst, bm.getPixels(), bm.getSize()); + return; + + uint32_t* stop = dst + (bm.getSize() >> 2); + const uint8_t* src = (const uint8_t*)bm.getPixels(); + while (dst < stop) { + *dst++ = src[2] << 24 | src[1] << 16 | src[0] << 8 | src[3] << 0; + src += sizeof(uint32_t); + } +} + +static void convert565_to_32(uint32_t dst[], const SkBitmap& bm) { + for (int y = 0; y < bm.height(); y++) { + const uint16_t* src = bm.getAddr16(0, y); + const uint16_t* stop = src + bm.width(); + while (src < stop) { + unsigned c = *src++; + unsigned r = SkPacked16ToR32(c); + unsigned g = SkPacked16ToG32(c); + unsigned b = SkPacked16ToB32(c); + + *dst++ = (b << 24) | (g << 16) | (r << 8) | 0xFF; + } + } +} + +static void convert4444_to_555(uint16_t dst[], const uint16_t src[], int count) +{ + const uint16_t* stop = src + count; + + while (src < stop) + { + unsigned c = *src++; + + unsigned r = SkGetPackedR4444(c); + unsigned g = SkGetPackedG4444(c); + unsigned b = SkGetPackedB4444(c); + // convert to 5 bits + r = (r << 1) | (r >> 3); + g = (g << 1) | (g >> 3); + b = (b << 1) | (b >> 3); + // build the 555 + c = (r << 10) | (g << 5) | b; + +#ifdef SWAP_16BIT + c = (c >> 8) | (c << 8); +#endif + *dst++ = c; + } +} + +#include "SkTemplates.h" + +static CGImageRef bitmap2imageref(const SkBitmap& bm) { + size_t bitsPerComp; + size_t bitsPerPixel; + CGBitmapInfo info; + CGColorSpaceRef cs = CGColorSpaceCreateWithName(kCGColorSpaceGenericRGB); + CGDataProviderRef data = CGDataProviderCreateWithData(NULL, + bm.getPixels(), + bm.getSize(), + NULL); + SkAutoTCallVProc<CGDataProvider, CGDataProviderRelease> acp(data); + SkAutoTCallVProc<CGColorSpace, CGColorSpaceRelease> acp2(cs); + + switch (bm.config()) { + case SkBitmap::kARGB_8888_Config: + bitsPerComp = 8; + bitsPerPixel = 32; + info = kCGImageAlphaPremultipliedLast; + break; + case SkBitmap::kARGB_4444_Config: + bitsPerComp = 4; + bitsPerPixel = 16; + info = kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder16Little; + break; +#if 0 // not supported by quartz !!! + case SkBitmap::kRGB_565_Config: + bitsPerComp = 5; + bitsPerPixel = 16; + info = kCGImageAlphaNone | kCGBitmapByteOrder16Little; + break; +#endif + default: + return NULL; + } + + return CGImageCreate(bm.width(), bm.height(), bitsPerComp, bitsPerPixel, + bm.rowBytes(), cs, info, data, + NULL, false, kCGRenderingIntentDefault); +} + +void SkBitmap::drawToPort(WindowRef wind, CGContextRef cg) const { + if (fPixels == NULL || fWidth == 0 || fHeight == 0) { + return; + } + + bool useQD = false; + if (NULL == cg) { + SetPortWindowPort(wind); + QDBeginCGContext(GetWindowPort(wind), &cg); + useQD = true; + } + + SkBitmap bm; + if (this->config() == kRGB_565_Config) { + this->copyTo(&bm, kARGB_8888_Config); + } else { + bm = *this; + } + bm.lockPixels(); + + CGImageRef image = bitmap2imageref(bm); + if (image) { + CGRect rect; + rect.origin.x = rect.origin.y = 0; + rect.size.width = bm.width(); + rect.size.height = bm.height(); + + CGContextDrawImage(cg, rect, image); + CGImageRelease(image); + } + + if (useQD) { + QDEndCGContext(GetWindowPort(wind), &cg); + } +} + +#endif diff --git a/src/utils/mac/SkOSWindow_Mac.cpp b/src/utils/mac/SkOSWindow_Mac.cpp new file mode 100644 index 0000000000..2c937210c2 --- /dev/null +++ b/src/utils/mac/SkOSWindow_Mac.cpp @@ -0,0 +1,451 @@ +#include "SkTypes.h" + +#if defined(SK_BUILD_FOR_MAC) && !defined(SK_USE_WXWIDGETS) + +#include <Carbon/Carbon.h> +#include "SkCGUtils.h" + +#include "SkWindow.h" +#include "SkCanvas.h" +#include "SkOSMenu.h" +#include "SkTime.h" + +#include "SkGraphics.h" +#include <new.h> + +static void (*gPrevNewHandler)(); + +extern "C" { + static void sk_new_handler() + { + if (SkGraphics::SetFontCacheUsed(0)) + return; + if (gPrevNewHandler) + gPrevNewHandler(); + else + sk_throw(); + } +} + +static SkOSWindow* gCurrOSWin; +static EventTargetRef gEventTarget; +static EventQueueRef gCurrEventQ; + +static OSStatus MyDrawEventHandler(EventHandlerCallRef myHandler, + EventRef event, void *userData) { + // NOTE: GState is save/restored by the HIView system doing the callback, + // so the draw handler doesn't need to do it + + OSStatus status = noErr; + CGContextRef context; + HIRect bounds; + + // Get the CGContextRef + status = GetEventParameter (event, kEventParamCGContextRef, + typeCGContextRef, NULL, + sizeof (CGContextRef), + NULL, + &context); + + if (status != noErr) { + SkDebugf("Got error %d getting the context!\n", status); + return status; + } + + // Get the bounding rectangle + HIViewGetBounds ((HIViewRef) userData, &bounds); + + gCurrOSWin->doPaint(context); + return status; +} + +#define SK_MacEventClass FOUR_CHAR_CODE('SKec') +#define SK_MacEventKind FOUR_CHAR_CODE('SKek') +#define SK_MacEventParamName FOUR_CHAR_CODE('SKev') +#define SK_MacEventSinkIDParamName FOUR_CHAR_CODE('SKes') + +static void set_bindingside(HISideBinding* side, HIViewRef parent, HIBindingKind kind) { + side->toView = parent; + side->kind = kind; + side->offset = 0; +} + +static void set_axisscale(HIAxisScale* axis, HIViewRef parent) { + axis->toView = parent; + axis->kind = kHILayoutScaleAbsolute; + axis->ratio = 1; +} + +static void set_axisposition(HIAxisPosition* pos, HIViewRef parent, HIPositionKind kind) { + pos->toView = parent; + pos->kind = kind; + pos->offset = 0; +} + +SkOSWindow::SkOSWindow(void* hWnd) : fHWND(hWnd) +{ + OSStatus result; + WindowRef wr = (WindowRef)hWnd; + + HIViewRef imageView, parent; + HIViewRef rootView = HIViewGetRoot(wr); + HIViewFindByID(rootView, kHIViewWindowContentID, &parent); + result = HIImageViewCreate(NULL, &imageView); + SkASSERT(result == noErr); + + result = HIViewAddSubview(parent, imageView); + SkASSERT(result == noErr); + + fHVIEW = imageView; + + HIViewSetVisible(imageView, true); + HIViewPlaceInSuperviewAt(imageView, 0, 0); + + if (true) { + HILayoutInfo layout; + layout.version = kHILayoutInfoVersionZero; + set_bindingside(&layout.binding.left, parent, kHILayoutBindLeft); + set_bindingside(&layout.binding.top, parent, kHILayoutBindTop); + set_bindingside(&layout.binding.right, parent, kHILayoutBindRight); + set_bindingside(&layout.binding.bottom, parent, kHILayoutBindBottom); + set_axisscale(&layout.scale.x, parent); + set_axisscale(&layout.scale.y, parent); + set_axisposition(&layout.position.x, parent, kHILayoutPositionLeft); + set_axisposition(&layout.position.y, rootView, kHILayoutPositionTop); + HIViewSetLayoutInfo(imageView, &layout); + } + + HIImageViewSetOpaque(imageView, true); + HIImageViewSetScaleToFit(imageView, false); + + static const EventTypeSpec gTypes[] = { + { kEventClassKeyboard, kEventRawKeyDown }, + { kEventClassKeyboard, kEventRawKeyUp }, + { kEventClassMouse, kEventMouseDown }, + { kEventClassMouse, kEventMouseDragged }, + { kEventClassMouse, kEventMouseUp }, + { kEventClassTextInput, kEventTextInputUnicodeForKeyEvent }, + { kEventClassWindow, kEventWindowBoundsChanged }, +// { kEventClassWindow, kEventWindowDrawContent }, + { SK_MacEventClass, SK_MacEventKind } + }; + + EventHandlerUPP handlerUPP = NewEventHandlerUPP(SkOSWindow::EventHandler); + int count = SK_ARRAY_COUNT(gTypes); + + result = InstallEventHandler(GetWindowEventTarget(wr), handlerUPP, + count, gTypes, this, nil); + SkASSERT(result == noErr); + + gCurrOSWin = this; + gCurrEventQ = GetCurrentEventQueue(); + gEventTarget = GetWindowEventTarget(wr); + + static bool gOnce = true; + if (gOnce) { + gOnce = false; + gPrevNewHandler = set_new_handler(sk_new_handler); + } +} + +void SkOSWindow::doPaint(void* ctx) +{ +#if 0 + this->update(NULL); + + const SkBitmap& bm = this->getBitmap(); + CGImageRef img = SkCreateCGImageRef(bm); + + if (img) { + CGRect r = CGRectMake(0, 0, bm.width(), bm.height()); + + CGContextRef cg = reinterpret_cast<CGContextRef>(ctx); + + CGContextSaveGState(cg); + CGContextTranslateCTM(cg, 0, r.size.height); + CGContextScaleCTM(cg, 1, -1); + + CGContextDrawImage(cg, r, img); + + CGContextRestoreGState(cg); + + CGImageRelease(img); + } +#endif +} + +void SkOSWindow::updateSize() +{ + Rect r; + + GetWindowBounds((WindowRef)fHWND, kWindowContentRgn, &r); + this->resize(r.right - r.left, r.bottom - r.top); + +#if 0 + HIRect frame; + HIViewRef imageView = (HIViewRef)getHVIEW(); + HIViewRef parent = HIViewGetSuperview(imageView); + + HIViewGetBounds(imageView, &frame); + SkDebugf("------ %d bounds %g %g %g %g\n", r.right - r.left, + frame.origin.x, frame.origin.y, frame.size.width, frame.size.height); +#endif +} + +void SkOSWindow::onHandleInval(const SkIRect& r) +{ + SkEvent* evt = new SkEvent("inval-imageview"); + evt->post(this->getSinkID()); +} + +bool SkOSWindow::onEvent(const SkEvent& evt) { + if (evt.isType("inval-imageview")) { + this->update(NULL); + + const SkBitmap& bm = this->getBitmap(); + SkDebugf("------ bitmap %d %d\n", bm.width(), bm.height()); + + CGImageRef img = SkCreateCGImageRef(bm); + HIImageViewSetImage((HIViewRef)getHVIEW(), img); + CGImageRelease(img); + return true; + } + return INHERITED::onEvent(evt); +} + +void SkOSWindow::onSetTitle(const char title[]) +{ + CFStringRef str = CFStringCreateWithCString(NULL, title, kCFStringEncodingUTF8); + SetWindowTitleWithCFString((WindowRef)fHWND, str); + CFRelease(str); +} + +void SkOSWindow::onAddMenu(const SkOSMenu* sk_menu) +{ +} + +static void getparam(EventRef inEvent, OSType name, OSType type, UInt32 size, void* data) +{ + EventParamType actualType; + UInt32 actualSize; + OSStatus status; + + status = GetEventParameter(inEvent, name, type, &actualType, size, &actualSize, data); + SkASSERT(status == noErr); + SkASSERT(actualType == type); + SkASSERT(actualSize == size); +} + +enum { + SK_MacReturnKey = 36, + SK_MacDeleteKey = 51, + SK_MacEndKey = 119, + SK_MacLeftKey = 123, + SK_MacRightKey = 124, + SK_MacDownKey = 125, + SK_MacUpKey = 126, + + SK_Mac0Key = 0x52, + SK_Mac1Key = 0x53, + SK_Mac2Key = 0x54, + SK_Mac3Key = 0x55, + SK_Mac4Key = 0x56, + SK_Mac5Key = 0x57, + SK_Mac6Key = 0x58, + SK_Mac7Key = 0x59, + SK_Mac8Key = 0x5b, + SK_Mac9Key = 0x5c +}; + +static SkKey raw2key(UInt32 raw) +{ + static const struct { + UInt32 fRaw; + SkKey fKey; + } gKeys[] = { + { SK_MacUpKey, kUp_SkKey }, + { SK_MacDownKey, kDown_SkKey }, + { SK_MacLeftKey, kLeft_SkKey }, + { SK_MacRightKey, kRight_SkKey }, + { SK_MacReturnKey, kOK_SkKey }, + { SK_MacDeleteKey, kBack_SkKey }, + { SK_MacEndKey, kEnd_SkKey }, + { SK_Mac0Key, k0_SkKey }, + { SK_Mac1Key, k1_SkKey }, + { SK_Mac2Key, k2_SkKey }, + { SK_Mac3Key, k3_SkKey }, + { SK_Mac4Key, k4_SkKey }, + { SK_Mac5Key, k5_SkKey }, + { SK_Mac6Key, k6_SkKey }, + { SK_Mac7Key, k7_SkKey }, + { SK_Mac8Key, k8_SkKey }, + { SK_Mac9Key, k9_SkKey } + }; + + for (unsigned i = 0; i < SK_ARRAY_COUNT(gKeys); i++) + if (gKeys[i].fRaw == raw) + return gKeys[i].fKey; + return kNONE_SkKey; +} + +static void post_skmacevent() +{ + EventRef ref; + OSStatus status = CreateEvent(nil, SK_MacEventClass, SK_MacEventKind, 0, 0, &ref); + SkASSERT(status == noErr); + +#if 0 + status = SetEventParameter(ref, SK_MacEventParamName, SK_MacEventParamName, sizeof(evt), &evt); + SkASSERT(status == noErr); + status = SetEventParameter(ref, SK_MacEventSinkIDParamName, SK_MacEventSinkIDParamName, sizeof(sinkID), &sinkID); + SkASSERT(status == noErr); +#endif + + EventTargetRef target = gEventTarget; + SetEventParameter(ref, kEventParamPostTarget, typeEventTargetRef, sizeof(target), &target); + SkASSERT(status == noErr); + + status = PostEventToQueue(gCurrEventQ, ref, kEventPriorityStandard); + SkASSERT(status == noErr); + + ReleaseEvent(ref); +} + +pascal OSStatus SkOSWindow::EventHandler( EventHandlerCallRef inHandler, EventRef inEvent, void* userData ) +{ + SkOSWindow* win = (SkOSWindow*)userData; + OSStatus result = eventNotHandledErr; + UInt32 wClass = GetEventClass(inEvent); + UInt32 wKind = GetEventKind(inEvent); + + gCurrOSWin = win; // will need to be in TLS. Set this so PostEvent will work + + switch (wClass) { + case kEventClassMouse: { + Point pt; + getparam(inEvent, kEventParamMouseLocation, typeQDPoint, sizeof(pt), &pt); + SetPortWindowPort((WindowRef)win->getHWND()); + GlobalToLocal(&pt); + + switch (wKind) { + case kEventMouseDown: + (void)win->handleClick(pt.h, pt.v, Click::kDown_State); + break; + case kEventMouseDragged: + (void)win->handleClick(pt.h, pt.v, Click::kMoved_State); + break; + case kEventMouseUp: + (void)win->handleClick(pt.h, pt.v, Click::kUp_State); + break; + default: + break; + } + break; + } + case kEventClassKeyboard: + if (wKind == kEventRawKeyDown) { + UInt32 raw; + getparam(inEvent, kEventParamKeyCode, typeUInt32, sizeof(raw), &raw); + SkKey key = raw2key(raw); + if (key != kNONE_SkKey) + (void)win->handleKey(key); + } else if (wKind == kEventRawKeyUp) { + UInt32 raw; + getparam(inEvent, kEventParamKeyCode, typeUInt32, sizeof(raw), &raw); + SkKey key = raw2key(raw); + if (key != kNONE_SkKey) + (void)win->handleKeyUp(key); + } + break; + case kEventClassTextInput: + if (wKind == kEventTextInputUnicodeForKeyEvent) { + UInt16 uni; + getparam(inEvent, kEventParamTextInputSendText, typeUnicodeText, sizeof(uni), &uni); + win->handleChar(uni); + } + break; + case kEventClassWindow: + switch (wKind) { + case kEventWindowBoundsChanged: + win->updateSize(); + break; + case kEventWindowDrawContent: { + CGContextRef cg; + result = GetEventParameter(inEvent, + kEventParamCGContextRef, + typeCGContextRef, + NULL, + sizeof (CGContextRef), + NULL, + &cg); + if (result != 0) { + cg = NULL; + } + win->doPaint(cg); + break; + } + default: + break; + } + break; + case SK_MacEventClass: { + SkASSERT(wKind == SK_MacEventKind); + if (SkEvent::ProcessEvent()) { + post_skmacevent(); + } + #if 0 + SkEvent* evt; + SkEventSinkID sinkID; + getparam(inEvent, SK_MacEventParamName, SK_MacEventParamName, sizeof(evt), &evt); + getparam(inEvent, SK_MacEventSinkIDParamName, SK_MacEventSinkIDParamName, sizeof(sinkID), &sinkID); + #endif + result = noErr; + break; + } + default: + break; + } + if (result == eventNotHandledErr) { + result = CallNextEventHandler(inHandler, inEvent); + } + return result; +} + +/////////////////////////////////////////////////////////////////////////////////////// + +void SkEvent::SignalNonEmptyQueue() +{ + post_skmacevent(); +// SkDebugf("signal nonempty\n"); +} + +static TMTask gTMTaskRec; +static TMTask* gTMTaskPtr; + +static void sk_timer_proc(TMTask* rec) +{ + SkEvent::ServiceQueueTimer(); +// SkDebugf("timer task fired\n"); +} + +void SkEvent::SignalQueueTimer(SkMSec delay) +{ + if (gTMTaskPtr) + { + RemoveTimeTask((QElem*)gTMTaskPtr); + DisposeTimerUPP(gTMTaskPtr->tmAddr); + gTMTaskPtr = nil; + } + if (delay) + { + gTMTaskPtr = &gTMTaskRec; + memset(gTMTaskPtr, 0, sizeof(gTMTaskRec)); + gTMTaskPtr->tmAddr = NewTimerUPP(sk_timer_proc); + OSErr err = InstallTimeTask((QElem*)gTMTaskPtr); +// SkDebugf("installtimetask of %d returned %d\n", delay, err); + PrimeTimeTask((QElem*)gTMTaskPtr, delay); + } +} + +#endif + diff --git a/src/utils/mac/skia_mac.cp b/src/utils/mac/skia_mac.cp new file mode 100644 index 0000000000..f6be570366 --- /dev/null +++ b/src/utils/mac/skia_mac.cp @@ -0,0 +1,43 @@ +#include <Carbon/Carbon.h> +#include "SkApplication.h" +#include "SkWindow.h" + +int main(int argc, char* argv[]) +{ + IBNibRef nibRef; + WindowRef window; + OSStatus err = noErr; + + // Create a Nib reference passing the name of the nib file (without the .nib extension) + // CreateNibReference only searches into the application bundle. + err = CreateNibReference(CFSTR("main"), &nibRef); + require_noerr( err, CantGetNibRef ); + + // Then create a window. "MainWindow" is the name of the window object. This name is set in + // InterfaceBuilder when the nib is created. + err = CreateWindowFromNib(nibRef, CFSTR("MainWindow"), &window); + require_noerr( err, CantCreateWindow ); + + // We don't need the nib reference anymore. + DisposeNibReference(nibRef); + + // if we get here, we can start our normal Skia sequence + { + application_init(); + (void)create_sk_window(window); + SizeWindow(window, 640, 480, false); + } + + // The window was created hidden so show it. + ShowWindow( window ); + + // Call the event loop + RunApplicationEventLoop(); + + application_term(); + +CantCreateWindow: +CantGetNibRef: + return err; +} + diff --git a/src/views/SkWindow.cpp b/src/views/SkWindow.cpp index 5d00d4fb85..ae03b811c9 100644 --- a/src/views/SkWindow.cpp +++ b/src/views/SkWindow.cpp @@ -62,8 +62,6 @@ void SkWindow::setConfig(SkBitmap::Config config) this->resize(fBitmap.width(), fBitmap.height(), config); } -#include "SkImageDecoder.h" - void SkWindow::resize(int width, int height, SkBitmap::Config config) { if (config == SkBitmap::kNo_Config) @@ -78,8 +76,6 @@ void SkWindow::resize(int width, int height, SkBitmap::Config config) this->setSize(SkIntToScalar(width), SkIntToScalar(height)); this->inval(NULL); } - - SkImageDecoder::SetDeviceConfig(fConfig); } void SkWindow::eraseARGB(U8CPU a, U8CPU r, U8CPU g, U8CPU b) diff --git a/xcode/core/core.xcodeproj/project.pbxproj b/xcode/core/core.xcodeproj/project.pbxproj index 2ac8ec9790..ce3c6c697b 100644 --- a/xcode/core/core.xcodeproj/project.pbxproj +++ b/xcode/core/core.xcodeproj/project.pbxproj @@ -629,7 +629,12 @@ 1DEB91F008733DB70010E9CD /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + GCC_ENABLE_CPP_EXCEPTIONS = NO; + GCC_ENABLE_CPP_RTTI = NO; + GCC_MODEL_TUNING = ""; + GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = SK_DEBUG; + GCC_THREADSAFE_STATICS = NO; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; PREBINDING = NO; @@ -644,7 +649,10 @@ ppc, i386, ); + GCC_ENABLE_CPP_EXCEPTIONS = NO; + GCC_ENABLE_CPP_RTTI = NO; GCC_PREPROCESSOR_DEFINITIONS = SK_RELEASE; + GCC_THREADSAFE_STATICS = NO; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; PREBINDING = NO; diff --git a/xcode/effects/effects.xcodeproj/project.pbxproj b/xcode/effects/effects.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..5b3773a750 --- /dev/null +++ b/xcode/effects/effects.xcodeproj/project.pbxproj @@ -0,0 +1,337 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 44; + objects = { + +/* Begin PBXBuildFile section */ + 0028867A0EFAE7500083E387 /* Sk1DPathEffect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886620EFAE7500083E387 /* Sk1DPathEffect.cpp */; }; + 0028867B0EFAE7500083E387 /* Sk2DPathEffect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886630EFAE7500083E387 /* Sk2DPathEffect.cpp */; }; + 0028867C0EFAE7500083E387 /* SkAvoidXfermode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886640EFAE7500083E387 /* SkAvoidXfermode.cpp */; }; + 0028867D0EFAE7500083E387 /* SkBlurDrawLooper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886650EFAE7500083E387 /* SkBlurDrawLooper.cpp */; }; + 0028867E0EFAE7500083E387 /* SkBlurMask.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886660EFAE7500083E387 /* SkBlurMask.cpp */; }; + 0028867F0EFAE7500083E387 /* SkBlurMask.h in Headers */ = {isa = PBXBuildFile; fileRef = 002886670EFAE7500083E387 /* SkBlurMask.h */; }; + 002886800EFAE7500083E387 /* SkBlurMaskFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886680EFAE7500083E387 /* SkBlurMaskFilter.cpp */; }; + 002886810EFAE7500083E387 /* SkColorFilters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886690EFAE7500083E387 /* SkColorFilters.cpp */; }; + 002886820EFAE7500083E387 /* SkColorMatrixFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0028866A0EFAE7500083E387 /* SkColorMatrixFilter.cpp */; }; + 002886830EFAE7500083E387 /* SkCornerPathEffect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0028866B0EFAE7500083E387 /* SkCornerPathEffect.cpp */; }; + 002886840EFAE7500083E387 /* SkDashPathEffect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0028866C0EFAE7500083E387 /* SkDashPathEffect.cpp */; }; + 002886850EFAE7500083E387 /* SkDiscretePathEffect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0028866D0EFAE7500083E387 /* SkDiscretePathEffect.cpp */; }; + 002886860EFAE7500083E387 /* SkEmbossMask.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0028866E0EFAE7500083E387 /* SkEmbossMask.cpp */; }; + 002886870EFAE7500083E387 /* SkEmbossMask.h in Headers */ = {isa = PBXBuildFile; fileRef = 0028866F0EFAE7500083E387 /* SkEmbossMask.h */; }; + 002886880EFAE7500083E387 /* SkEmbossMask_Table.h in Headers */ = {isa = PBXBuildFile; fileRef = 002886700EFAE7500083E387 /* SkEmbossMask_Table.h */; }; + 002886890EFAE7500083E387 /* SkEmbossMaskFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886710EFAE7500083E387 /* SkEmbossMaskFilter.cpp */; }; + 0028868A0EFAE7500083E387 /* SkGradientShader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886720EFAE7500083E387 /* SkGradientShader.cpp */; }; + 0028868B0EFAE7500083E387 /* SkKernel33MaskFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886730EFAE7500083E387 /* SkKernel33MaskFilter.cpp */; }; + 0028868C0EFAE7500083E387 /* SkLayerDrawLooper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886740EFAE7500083E387 /* SkLayerDrawLooper.cpp */; }; + 0028868D0EFAE7500083E387 /* SkLayerRasterizer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886750EFAE7500083E387 /* SkLayerRasterizer.cpp */; }; + 0028868E0EFAE7500083E387 /* SkPaintFlagsDrawFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886760EFAE7500083E387 /* SkPaintFlagsDrawFilter.cpp */; }; + 0028868F0EFAE7500083E387 /* SkPixelXorXfermode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886770EFAE7500083E387 /* SkPixelXorXfermode.cpp */; }; + 002886900EFAE7500083E387 /* SkRadialGradient_Table.h in Headers */ = {isa = PBXBuildFile; fileRef = 002886780EFAE7500083E387 /* SkRadialGradient_Table.h */; }; + 002886910EFAE7500083E387 /* SkTransparentShader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886790EFAE7500083E387 /* SkTransparentShader.cpp */; }; + 002886CD0EFAEA260083E387 /* SkCamera.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886C50EFAEA260083E387 /* SkCamera.cpp */; }; + 002886CE0EFAEA260083E387 /* SkColorMatrix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886C60EFAEA260083E387 /* SkColorMatrix.cpp */; }; + 002886CF0EFAEA260083E387 /* SkCullPoints.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886C70EFAEA260083E387 /* SkCullPoints.cpp */; }; + 002886D00EFAEA260083E387 /* SkDumpCanvas.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886C80EFAEA260083E387 /* SkDumpCanvas.cpp */; }; + 002886D10EFAEA260083E387 /* SkInterpolator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886C90EFAEA260083E387 /* SkInterpolator.cpp */; }; + 002886D20EFAEA260083E387 /* SkNinePatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886CA0EFAEA260083E387 /* SkNinePatch.cpp */; }; + 002886D30EFAEA260083E387 /* SkProxyCanvas.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886CB0EFAEA260083E387 /* SkProxyCanvas.cpp */; }; + 002886D40EFAEA260083E387 /* SkUnitMappers.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002886CC0EFAEA260083E387 /* SkUnitMappers.cpp */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 002886620EFAE7500083E387 /* Sk1DPathEffect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Sk1DPathEffect.cpp; path = ../../src/effects/Sk1DPathEffect.cpp; sourceTree = SOURCE_ROOT; }; + 002886630EFAE7500083E387 /* Sk2DPathEffect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Sk2DPathEffect.cpp; path = ../../src/effects/Sk2DPathEffect.cpp; sourceTree = SOURCE_ROOT; }; + 002886640EFAE7500083E387 /* SkAvoidXfermode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkAvoidXfermode.cpp; path = ../../src/effects/SkAvoidXfermode.cpp; sourceTree = SOURCE_ROOT; }; + 002886650EFAE7500083E387 /* SkBlurDrawLooper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkBlurDrawLooper.cpp; path = ../../src/effects/SkBlurDrawLooper.cpp; sourceTree = SOURCE_ROOT; }; + 002886660EFAE7500083E387 /* SkBlurMask.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkBlurMask.cpp; path = ../../src/effects/SkBlurMask.cpp; sourceTree = SOURCE_ROOT; }; + 002886670EFAE7500083E387 /* SkBlurMask.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkBlurMask.h; path = ../../src/effects/SkBlurMask.h; sourceTree = SOURCE_ROOT; }; + 002886680EFAE7500083E387 /* SkBlurMaskFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkBlurMaskFilter.cpp; path = ../../src/effects/SkBlurMaskFilter.cpp; sourceTree = SOURCE_ROOT; }; + 002886690EFAE7500083E387 /* SkColorFilters.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkColorFilters.cpp; path = ../../src/effects/SkColorFilters.cpp; sourceTree = SOURCE_ROOT; }; + 0028866A0EFAE7500083E387 /* SkColorMatrixFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkColorMatrixFilter.cpp; path = ../../src/effects/SkColorMatrixFilter.cpp; sourceTree = SOURCE_ROOT; }; + 0028866B0EFAE7500083E387 /* SkCornerPathEffect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkCornerPathEffect.cpp; path = ../../src/effects/SkCornerPathEffect.cpp; sourceTree = SOURCE_ROOT; }; + 0028866C0EFAE7500083E387 /* SkDashPathEffect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkDashPathEffect.cpp; path = ../../src/effects/SkDashPathEffect.cpp; sourceTree = SOURCE_ROOT; }; + 0028866D0EFAE7500083E387 /* SkDiscretePathEffect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkDiscretePathEffect.cpp; path = ../../src/effects/SkDiscretePathEffect.cpp; sourceTree = SOURCE_ROOT; }; + 0028866E0EFAE7500083E387 /* SkEmbossMask.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkEmbossMask.cpp; path = ../../src/effects/SkEmbossMask.cpp; sourceTree = SOURCE_ROOT; }; + 0028866F0EFAE7500083E387 /* SkEmbossMask.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkEmbossMask.h; path = ../../src/effects/SkEmbossMask.h; sourceTree = SOURCE_ROOT; }; + 002886700EFAE7500083E387 /* SkEmbossMask_Table.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkEmbossMask_Table.h; path = ../../src/effects/SkEmbossMask_Table.h; sourceTree = SOURCE_ROOT; }; + 002886710EFAE7500083E387 /* SkEmbossMaskFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkEmbossMaskFilter.cpp; path = ../../src/effects/SkEmbossMaskFilter.cpp; sourceTree = SOURCE_ROOT; }; + 002886720EFAE7500083E387 /* SkGradientShader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkGradientShader.cpp; path = ../../src/effects/SkGradientShader.cpp; sourceTree = SOURCE_ROOT; }; + 002886730EFAE7500083E387 /* SkKernel33MaskFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkKernel33MaskFilter.cpp; path = ../../src/effects/SkKernel33MaskFilter.cpp; sourceTree = SOURCE_ROOT; }; + 002886740EFAE7500083E387 /* SkLayerDrawLooper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkLayerDrawLooper.cpp; path = ../../src/effects/SkLayerDrawLooper.cpp; sourceTree = SOURCE_ROOT; }; + 002886750EFAE7500083E387 /* SkLayerRasterizer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkLayerRasterizer.cpp; path = ../../src/effects/SkLayerRasterizer.cpp; sourceTree = SOURCE_ROOT; }; + 002886760EFAE7500083E387 /* SkPaintFlagsDrawFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkPaintFlagsDrawFilter.cpp; path = ../../src/effects/SkPaintFlagsDrawFilter.cpp; sourceTree = SOURCE_ROOT; }; + 002886770EFAE7500083E387 /* SkPixelXorXfermode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkPixelXorXfermode.cpp; path = ../../src/effects/SkPixelXorXfermode.cpp; sourceTree = SOURCE_ROOT; }; + 002886780EFAE7500083E387 /* SkRadialGradient_Table.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkRadialGradient_Table.h; path = ../../src/effects/SkRadialGradient_Table.h; sourceTree = SOURCE_ROOT; }; + 002886790EFAE7500083E387 /* SkTransparentShader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkTransparentShader.cpp; path = ../../src/effects/SkTransparentShader.cpp; sourceTree = SOURCE_ROOT; }; + 002886C50EFAEA260083E387 /* SkCamera.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkCamera.cpp; path = ../../src/utils/SkCamera.cpp; sourceTree = SOURCE_ROOT; }; + 002886C60EFAEA260083E387 /* SkColorMatrix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkColorMatrix.cpp; path = ../../src/utils/SkColorMatrix.cpp; sourceTree = SOURCE_ROOT; }; + 002886C70EFAEA260083E387 /* SkCullPoints.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkCullPoints.cpp; path = ../../src/utils/SkCullPoints.cpp; sourceTree = SOURCE_ROOT; }; + 002886C80EFAEA260083E387 /* SkDumpCanvas.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkDumpCanvas.cpp; path = ../../src/utils/SkDumpCanvas.cpp; sourceTree = SOURCE_ROOT; }; + 002886C90EFAEA260083E387 /* SkInterpolator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkInterpolator.cpp; path = ../../src/utils/SkInterpolator.cpp; sourceTree = SOURCE_ROOT; }; + 002886CA0EFAEA260083E387 /* SkNinePatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkNinePatch.cpp; path = ../../src/utils/SkNinePatch.cpp; sourceTree = SOURCE_ROOT; }; + 002886CB0EFAEA260083E387 /* SkProxyCanvas.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkProxyCanvas.cpp; path = ../../src/utils/SkProxyCanvas.cpp; sourceTree = SOURCE_ROOT; }; + 002886CC0EFAEA260083E387 /* SkUnitMappers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkUnitMappers.cpp; path = ../../src/utils/SkUnitMappers.cpp; sourceTree = SOURCE_ROOT; }; + D2AAC046055464E500DB518D /* libeffects.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libeffects.a; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + D289987405E68DCB004EDB86 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 002886D50EFAEA350083E387 /* utils */ = { + isa = PBXGroup; + children = ( + 002886C50EFAEA260083E387 /* SkCamera.cpp */, + 002886C60EFAEA260083E387 /* SkColorMatrix.cpp */, + 002886C70EFAEA260083E387 /* SkCullPoints.cpp */, + 002886C80EFAEA260083E387 /* SkDumpCanvas.cpp */, + 002886C90EFAEA260083E387 /* SkInterpolator.cpp */, + 002886CA0EFAEA260083E387 /* SkNinePatch.cpp */, + 002886CB0EFAEA260083E387 /* SkProxyCanvas.cpp */, + 002886CC0EFAEA260083E387 /* SkUnitMappers.cpp */, + ); + name = utils; + sourceTree = "<group>"; + }; + 08FB7794FE84155DC02AAC07 /* effects */ = { + isa = PBXGroup; + children = ( + 002886D50EFAEA350083E387 /* utils */, + 08FB7795FE84155DC02AAC07 /* effects */, + C6A0FF2B0290797F04C91782 /* Documentation */, + 1AB674ADFE9D54B511CA2CBB /* Products */, + ); + name = effects; + sourceTree = "<group>"; + }; + 08FB7795FE84155DC02AAC07 /* effects */ = { + isa = PBXGroup; + children = ( + 002886620EFAE7500083E387 /* Sk1DPathEffect.cpp */, + 002886630EFAE7500083E387 /* Sk2DPathEffect.cpp */, + 002886640EFAE7500083E387 /* SkAvoidXfermode.cpp */, + 002886650EFAE7500083E387 /* SkBlurDrawLooper.cpp */, + 002886660EFAE7500083E387 /* SkBlurMask.cpp */, + 002886670EFAE7500083E387 /* SkBlurMask.h */, + 002886680EFAE7500083E387 /* SkBlurMaskFilter.cpp */, + 002886690EFAE7500083E387 /* SkColorFilters.cpp */, + 0028866A0EFAE7500083E387 /* SkColorMatrixFilter.cpp */, + 0028866B0EFAE7500083E387 /* SkCornerPathEffect.cpp */, + 0028866C0EFAE7500083E387 /* SkDashPathEffect.cpp */, + 0028866D0EFAE7500083E387 /* SkDiscretePathEffect.cpp */, + 0028866E0EFAE7500083E387 /* SkEmbossMask.cpp */, + 0028866F0EFAE7500083E387 /* SkEmbossMask.h */, + 002886700EFAE7500083E387 /* SkEmbossMask_Table.h */, + 002886710EFAE7500083E387 /* SkEmbossMaskFilter.cpp */, + 002886720EFAE7500083E387 /* SkGradientShader.cpp */, + 002886730EFAE7500083E387 /* SkKernel33MaskFilter.cpp */, + 002886740EFAE7500083E387 /* SkLayerDrawLooper.cpp */, + 002886750EFAE7500083E387 /* SkLayerRasterizer.cpp */, + 002886760EFAE7500083E387 /* SkPaintFlagsDrawFilter.cpp */, + 002886770EFAE7500083E387 /* SkPixelXorXfermode.cpp */, + 002886780EFAE7500083E387 /* SkRadialGradient_Table.h */, + 002886790EFAE7500083E387 /* SkTransparentShader.cpp */, + ); + name = effects; + sourceTree = "<group>"; + }; + 1AB674ADFE9D54B511CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + D2AAC046055464E500DB518D /* libeffects.a */, + ); + name = Products; + sourceTree = "<group>"; + }; + C6A0FF2B0290797F04C91782 /* Documentation */ = { + isa = PBXGroup; + children = ( + ); + name = Documentation; + sourceTree = "<group>"; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + D2AAC043055464E500DB518D /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 0028867F0EFAE7500083E387 /* SkBlurMask.h in Headers */, + 002886870EFAE7500083E387 /* SkEmbossMask.h in Headers */, + 002886880EFAE7500083E387 /* SkEmbossMask_Table.h in Headers */, + 002886900EFAE7500083E387 /* SkRadialGradient_Table.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + D2AAC045055464E500DB518D /* effects */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1DEB91EB08733DB70010E9CD /* Build configuration list for PBXNativeTarget "effects" */; + buildPhases = ( + D2AAC043055464E500DB518D /* Headers */, + D2AAC044055464E500DB518D /* Sources */, + D289987405E68DCB004EDB86 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = effects; + productName = effects; + productReference = D2AAC046055464E500DB518D /* libeffects.a */; + productType = "com.apple.product-type.library.static"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 08FB7793FE84155DC02AAC07 /* Project object */ = { + isa = PBXProject; + buildConfigurationList = 1DEB91EF08733DB70010E9CD /* Build configuration list for PBXProject "effects" */; + compatibilityVersion = "Xcode 3.0"; + hasScannedForEncodings = 1; + mainGroup = 08FB7794FE84155DC02AAC07 /* effects */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + D2AAC045055464E500DB518D /* effects */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXSourcesBuildPhase section */ + D2AAC044055464E500DB518D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 0028867A0EFAE7500083E387 /* Sk1DPathEffect.cpp in Sources */, + 0028867B0EFAE7500083E387 /* Sk2DPathEffect.cpp in Sources */, + 0028867C0EFAE7500083E387 /* SkAvoidXfermode.cpp in Sources */, + 0028867D0EFAE7500083E387 /* SkBlurDrawLooper.cpp in Sources */, + 0028867E0EFAE7500083E387 /* SkBlurMask.cpp in Sources */, + 002886800EFAE7500083E387 /* SkBlurMaskFilter.cpp in Sources */, + 002886810EFAE7500083E387 /* SkColorFilters.cpp in Sources */, + 002886820EFAE7500083E387 /* SkColorMatrixFilter.cpp in Sources */, + 002886830EFAE7500083E387 /* SkCornerPathEffect.cpp in Sources */, + 002886840EFAE7500083E387 /* SkDashPathEffect.cpp in Sources */, + 002886850EFAE7500083E387 /* SkDiscretePathEffect.cpp in Sources */, + 002886860EFAE7500083E387 /* SkEmbossMask.cpp in Sources */, + 002886890EFAE7500083E387 /* SkEmbossMaskFilter.cpp in Sources */, + 0028868A0EFAE7500083E387 /* SkGradientShader.cpp in Sources */, + 0028868B0EFAE7500083E387 /* SkKernel33MaskFilter.cpp in Sources */, + 0028868C0EFAE7500083E387 /* SkLayerDrawLooper.cpp in Sources */, + 0028868D0EFAE7500083E387 /* SkLayerRasterizer.cpp in Sources */, + 0028868E0EFAE7500083E387 /* SkPaintFlagsDrawFilter.cpp in Sources */, + 0028868F0EFAE7500083E387 /* SkPixelXorXfermode.cpp in Sources */, + 002886910EFAE7500083E387 /* SkTransparentShader.cpp in Sources */, + 002886CD0EFAEA260083E387 /* SkCamera.cpp in Sources */, + 002886CE0EFAEA260083E387 /* SkColorMatrix.cpp in Sources */, + 002886CF0EFAEA260083E387 /* SkCullPoints.cpp in Sources */, + 002886D00EFAEA260083E387 /* SkDumpCanvas.cpp in Sources */, + 002886D10EFAEA260083E387 /* SkInterpolator.cpp in Sources */, + 002886D20EFAEA260083E387 /* SkNinePatch.cpp in Sources */, + 002886D30EFAEA260083E387 /* SkProxyCanvas.cpp in Sources */, + 002886D40EFAEA260083E387 /* SkUnitMappers.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 1DEB91EC08733DB70010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + INSTALL_PATH = /usr/local/lib; + PRODUCT_NAME = effects; + ZERO_LINK = YES; + }; + name = Debug; + }; + 1DEB91ED08733DB70010E9CD /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + GCC_MODEL_TUNING = G5; + INSTALL_PATH = /usr/local/lib; + PRODUCT_NAME = effects; + }; + name = Release; + }; + 1DEB91F008733DB70010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_ENABLE_CPP_EXCEPTIONS = NO; + GCC_ENABLE_CPP_RTTI = NO; + GCC_MODEL_TUNING = ""; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = SK_DEBUG; + GCC_THREADSAFE_STATICS = NO; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + PREBINDING = NO; + SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk"; + USER_HEADER_SEARCH_PATHS = "../../include/**"; + }; + name = Debug; + }; + 1DEB91F108733DB70010E9CD /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = ( + ppc, + i386, + ); + GCC_ENABLE_CPP_EXCEPTIONS = NO; + GCC_ENABLE_CPP_RTTI = NO; + GCC_PREPROCESSOR_DEFINITIONS = SK_RELEASE; + GCC_THREADSAFE_STATICS = NO; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + PREBINDING = NO; + SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk"; + USER_HEADER_SEARCH_PATHS = "../../include/**"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 1DEB91EB08733DB70010E9CD /* Build configuration list for PBXNativeTarget "effects" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB91EC08733DB70010E9CD /* Debug */, + 1DEB91ED08733DB70010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 1DEB91EF08733DB70010E9CD /* Build configuration list for PBXProject "effects" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB91F008733DB70010E9CD /* Debug */, + 1DEB91F108733DB70010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 08FB7793FE84155DC02AAC07 /* Project object */; +} diff --git a/xcode/hostapp/CICarbonSample.xcodeproj/project.pbxproj b/xcode/hostapp/CICarbonSample.xcodeproj/project.pbxproj index 3065934ef5..7c7c0cdb6d 100644 --- a/xcode/hostapp/CICarbonSample.xcodeproj/project.pbxproj +++ b/xcode/hostapp/CICarbonSample.xcodeproj/project.pbxproj @@ -11,6 +11,7 @@ 0028847B0EFAB46A0083E387 /* libcore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 002884510EFAA35C0083E387 /* libcore.a */; }; 002884BD0EFAB6A30083E387 /* libmaccore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 002884BC0EFAB69F0083E387 /* libmaccore.a */; }; 002884D90EFABFE60083E387 /* SkFontHost_none.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002884D80EFABFE60083E387 /* SkFontHost_none.cpp */; }; + 004447A20EFC1DB400116F7C /* SkCreateCGImageRef.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 004447A10EFC1DB400116F7C /* SkCreateCGImageRef.cpp */; }; 0156F80407C56A3000C6122B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0156F80307C56A3000C6122B /* Foundation.framework */; }; 01FC44D507BD3BB800D228F4 /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01FC44D407BD3BB800D228F4 /* Quartz.framework */; }; 8D0C4E8D0486CD37000505A6 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 0867D6AAFE840B52C02AAC07 /* InfoPlist.strings */; }; @@ -24,28 +25,28 @@ isa = PBXContainerItemProxy; containerPortal = 002884490EFAA35C0083E387 /* core.xcodeproj */; proxyType = 2; - remoteGlobalIDString = D2AAC046055464E500DB518D /* libcore.a */; + remoteGlobalIDString = D2AAC046055464E500DB518D; remoteInfo = core; }; 002884540EFAA3770083E387 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 002884490EFAA35C0083E387 /* core.xcodeproj */; proxyType = 1; - remoteGlobalIDString = D2AAC045055464E500DB518D /* core */; + remoteGlobalIDString = D2AAC045055464E500DB518D; remoteInfo = core; }; 002884BB0EFAB69F0083E387 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 002884B40EFAB69F0083E387 /* maccore.xcodeproj */; proxyType = 2; - remoteGlobalIDString = D2AAC046055464E500DB518D /* libmaccore.a */; + remoteGlobalIDString = D2AAC046055464E500DB518D; remoteInfo = maccore; }; 002884BE0EFAB6B00083E387 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 002884B40EFAB69F0083E387 /* maccore.xcodeproj */; proxyType = 1; - remoteGlobalIDString = D2AAC045055464E500DB518D /* maccore */; + remoteGlobalIDString = D2AAC045055464E500DB518D; remoteInfo = maccore; }; /* End PBXContainerItemProxy section */ @@ -55,6 +56,7 @@ 002884490EFAA35C0083E387 /* core.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = core.xcodeproj; path = ../core/core.xcodeproj; sourceTree = SOURCE_ROOT; }; 002884B40EFAB69F0083E387 /* maccore.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = maccore.xcodeproj; path = ../maccore/maccore.xcodeproj; sourceTree = SOURCE_ROOT; }; 002884D80EFABFE60083E387 /* SkFontHost_none.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkFontHost_none.cpp; path = ../../src/ports/SkFontHost_none.cpp; sourceTree = SOURCE_ROOT; }; + 004447A10EFC1DB400116F7C /* SkCreateCGImageRef.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkCreateCGImageRef.cpp; path = ../../src/utils/mac/SkCreateCGImageRef.cpp; sourceTree = SOURCE_ROOT; }; 0156F80307C56A3000C6122B /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; }; 01FC44D407BD3BB800D228F4 /* Quartz.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quartz.framework; path = /System/Library/Frameworks/Quartz.framework; sourceTree = "<absolute>"; }; 0867D6ABFE840B52C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; }; @@ -111,6 +113,7 @@ 20286C29FDCF999611CA2CEA /* CICarbonSample */ = { isa = PBXGroup; children = ( + 004447A10EFC1DB400116F7C /* SkCreateCGImageRef.cpp */, 002884D80EFABFE60083E387 /* SkFontHost_none.cpp */, 20286C2AFDCF999611CA2CEA /* Sources */, 20286C2CFDCF999611CA2CEA /* Resources */, @@ -241,6 +244,7 @@ 8D0C4E900486CD37000505A6 /* main.c in Sources */, 002884150EFA97F80083E387 /* test.cpp in Sources */, 002884D90EFABFE60083E387 /* SkFontHost_none.cpp in Sources */, + 004447A20EFC1DB400116F7C /* SkCreateCGImageRef.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/xcode/maccore/maccore.xcodeproj/project.pbxproj b/xcode/maccore/maccore.xcodeproj/project.pbxproj index 9068a70291..f5bba1b2ea 100644 --- a/xcode/maccore/maccore.xcodeproj/project.pbxproj +++ b/xcode/maccore/maccore.xcodeproj/project.pbxproj @@ -11,7 +11,6 @@ 002884A60EFAB5DE0083E387 /* SkThread_pthread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002884A30EFAB5DE0083E387 /* SkThread_pthread.cpp */; }; 002884A70EFAB5DE0083E387 /* SkTime_Unix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002884A40EFAB5DE0083E387 /* SkTime_Unix.cpp */; }; 002884E10EFABFFC0083E387 /* SkGlobals_global.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002884E00EFABFFC0083E387 /* SkGlobals_global.cpp */; }; - 002885130EFAD89B0083E387 /* SkCreateCGImageRef.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002885120EFAD89B0083E387 /* SkCreateCGImageRef.cpp */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -19,7 +18,6 @@ 002884A30EFAB5DE0083E387 /* SkThread_pthread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkThread_pthread.cpp; path = ../../src/ports/SkThread_pthread.cpp; sourceTree = SOURCE_ROOT; }; 002884A40EFAB5DE0083E387 /* SkTime_Unix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkTime_Unix.cpp; path = ../../src/ports/SkTime_Unix.cpp; sourceTree = SOURCE_ROOT; }; 002884E00EFABFFC0083E387 /* SkGlobals_global.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkGlobals_global.cpp; path = ../../src/ports/SkGlobals_global.cpp; sourceTree = SOURCE_ROOT; }; - 002885120EFAD89B0083E387 /* SkCreateCGImageRef.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkCreateCGImageRef.cpp; path = ../../src/utils/mac/SkCreateCGImageRef.cpp; sourceTree = SOURCE_ROOT; }; D2AAC046055464E500DB518D /* libmaccore.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libmaccore.a; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ @@ -34,18 +32,9 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 002885110EFAD8840083E387 /* utils */ = { - isa = PBXGroup; - children = ( - 002885120EFAD89B0083E387 /* SkCreateCGImageRef.cpp */, - ); - name = utils; - sourceTree = "<group>"; - }; 08FB7794FE84155DC02AAC07 /* maccore */ = { isa = PBXGroup; children = ( - 002885110EFAD8840083E387 /* utils */, 08FB7795FE84155DC02AAC07 /* Source */, C6A0FF2B0290797F04C91782 /* Documentation */, 1AB674ADFE9D54B511CA2CBB /* Products */, @@ -135,7 +124,6 @@ 002884A60EFAB5DE0083E387 /* SkThread_pthread.cpp in Sources */, 002884A70EFAB5DE0083E387 /* SkTime_Unix.cpp in Sources */, 002884E10EFABFFC0083E387 /* SkGlobals_global.cpp in Sources */, - 002885130EFAD89B0083E387 /* SkCreateCGImageRef.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; |