delete dead file
authorreed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>
Thu, 28 Jul 2011 13:47:12 +0000 (13:47 +0000)
committerreed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>
Thu, 28 Jul 2011 13:47:12 +0000 (13:47 +0000)
git-svn-id: http://skia.googlecode.com/svn/trunk@1980 2bbb7eff-a529-9590-31e7-b0007b416f81

experimental/CiCarbonSampleMain.c [deleted file]

diff --git a/experimental/CiCarbonSampleMain.c b/experimental/CiCarbonSampleMain.c
deleted file mode 100644 (file)
index c1e1dc7..0000000
+++ /dev/null
@@ -1,469 +0,0 @@
-/*
-
-File: main.c
-
-Abstract:   Main event loop and app handling code is found in here.
-
-Version: 1.0
-
-� Copyright 2005 Apple Computer, Inc. All rights reserved.
-
-IMPORTANT:  This Apple software is supplied to 
-you by Apple Computer, Inc. ("Apple") in 
-consideration of your agreement to the following 
-terms, and your use, installation, modification 
-or redistribution of this Apple software 
-constitutes acceptance of these terms.  If you do 
-not agree with these terms, please do not use, 
-install, modify or redistribute this Apple 
-software.
-
-In consideration of your agreement to abide by 
-the following terms, and subject to these terms, 
-Apple grants you a personal, non-exclusive 
-license, under Apple's copyrights in this 
-original Apple software (the "Apple Software"), 
-to use, reproduce, modify and redistribute the 
-Apple Software, with or without modifications, in 
-source and/or binary forms; provided that if you 
-redistribute the Apple Software in its entirety 
-and without modifications, you must retain this 
-notice and the following text and disclaimers in 
-all such redistributions of the Apple Software. 
-Neither the name, trademarks, service marks or 
-logos of Apple Computer, Inc. may be used to 
-endorse or promote products derived from the 
-Apple Software without specific prior written 
-permission from Apple.  Except as expressly 
-stated in this notice, no other rights or 
-licenses, express or implied, are granted by 
-Apple herein, including but not limited to any 
-patent rights that may be infringed by your 
-derivative works or by other works in which the 
-Apple Software may be incorporated.
-
-The Apple Software is provided by Apple on an "AS 
-IS" basis.  APPLE MAKES NO WARRANTIES, EXPRESS OR 
-IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED 
-WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY 
-AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING 
-THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE 
-OR IN COMBINATION WITH YOUR PRODUCTS.
-
-IN NO EVENT SHALL APPLE BE LIABLE FOR ANY 
-SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL 
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, 
-PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS 
-OF USE, DATA, OR PROFITS; OR BUSINESS 
-INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE, 
-REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF 
-THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER 
-UNDER THEORY OF CONTRACT, TORT (INCLUDING 
-NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN 
-IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF 
-SUCH DAMAGE.
-
-*/ 
-
-
-#include <Carbon/Carbon.h>
-#include "CIDraw.h"
-
-/* Constants */
-#define kMyHIViewSignature 'ciHV'
-#define kMyHIViewFieldID    128
-#define kGammaSliderSignature 'gSLD'
-#define kGammaSliderFieldID    128
-#define        kAboutBoxStringKey              CFSTR("AboutString")    // these key the localizable strings
-
-/* Private Prototypes */
-static OSStatus MyDrawEventHandler(EventHandlerCallRef myHandler, EventRef event, void *userData);
-static void MyGammaSliderProc( ControlHandle control, SInt16 part );
-static pascal OSStatus DoAppCommandProcess(EventHandlerCallRef nextHandler, EventRef theEvent, void* userData);
-static PMPageFormat CreateDefaultPageFormat(void);
-static OSStatus DoPageSetup(PMPageFormat pageFormat);
-static OSStatus DoPrint(PMPageFormat pageFormat);
-static OSStatus MyDoPrintLoop(PMPrintSession printSession, PMPageFormat pageFormat, PMPrintSettings printSettings);
-static void DoAboutBox();
-
-/* Global Data */
-static HIViewRef    gMyHIView = NULL;
-static HIViewRef    gGammaSliderView = NULL;
-static PMPageFormat gPageFormat = NULL;
-
-int main(int argc, char* argv[])
-{
-    static const HIViewID      kMyViewID = {kMyHIViewSignature,  kMyHIViewFieldID };      
-    static const HIViewID      kGammaSliderID = {kGammaSliderSignature,  kGammaSliderFieldID };      
-
-    IBNibRef                   nibRef;
-    WindowRef                  window;
-    EventTargetRef             myEventTarget;
-    static const EventTypeSpec         kMyViewEvents[] = {kEventClassControl, kEventControlDraw };     
-    static const EventTypeSpec         kMyCommandEvents[] = {kEventClassCommand, kEventCommandProcess };       
-    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 );
-    
-    // Once the nib reference is created, set the menu bar. "MainMenu" is the name of the menu bar
-    // object. This name is set in InterfaceBuilder when the nib is created.
-    err = SetMenuBarFromNib(nibRef, CFSTR("MenuBar"));
-    require_noerr( err, CantSetMenuBar );
-    
-    // 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 );
-    // Get the HIView associated with the window.
-    HIViewFindByID( HIViewGetRoot( window ), kMyViewID, &gMyHIView );
-    
-    // make the view opaque
-    HIViewChangeFeatures(gMyHIView, kHIViewIsOpaque, 0);
-
-    // Get the event target for the view.
-    myEventTarget = GetControlEventTarget (gMyHIView);
-                            
-    // Install the event handler for the HIView.                               
-    err = InstallEventHandler (myEventTarget, 
-                                                   NewEventHandlerUPP (MyDrawEventHandler), 
-                                                   GetEventTypeCount(kMyViewEvents), 
-                                                   kMyViewEvents, 
-                                                   (void *) gMyHIView, 
-                                                   NULL); 
-
-
-    HIViewFindByID( HIViewGetRoot( window ), kGammaSliderID, &gGammaSliderView );
-    SetControlAction( gGammaSliderView, NewControlActionUPP(MyGammaSliderProc) );
-
-    // Install the handler for the menu commands.
-    InstallApplicationEventHandler(NewEventHandlerUPP(DoAppCommandProcess), GetEventTypeCount(kMyCommandEvents), 
-                                               kMyCommandEvents, NULL, NULL);
-
-
-    // We don't need the nib reference anymore.
-    DisposeNibReference(nibRef);
-    
-    // The window was created hidden so show it.
-    ShowWindow( window );
-    
-    // Call the event loop
-    RunApplicationEventLoop();
-
-CantCreateWindow:
-CantSetMenuBar:
-CantGetNibRef:
-       return err;
-}
-
-static const void* myGetBytesPointer(void* info) {
-    return info;
-}
-
-static void myReleaseBytePointer(void* info, const void* pointer) {
-    pointer = 0;
-}
-
-static size_t myGetBytesAtPosition(void* info, void* buffer, off_t pos, size_t count) {
-    memcpy(buffer, (const char*)info + pos, count);
-    return count;
-}
-
-static void myReleaseInfo(void* info) {
-}
-
-static void TestDraw(CGContextRef cg, CGRect bounds) {
-    const int w = 64;
-    const int h = 64;
-    uint32_t data[w*h];
-    int i;
-    for (i = 0; i < w*h; i++) {
-        data[i] = 0x00008888;
-    }
-    CGDataProviderDirectCallbacks procs;
-    procs.version = 0;
-    procs.getBytePointer = myGetBytesPointer;
-    procs.releaseBytePointer = myReleaseBytePointer;
-    procs.getBytesAtPosition = myGetBytesAtPosition;
-    procs.releaseInfo = myReleaseInfo;
-    
-    CGColorSpaceRef space = CGColorSpaceCreateWithName(kCGColorSpaceGenericRGB);
-    
-    size_t size = w * h * 4;
-    CGDataProviderRef dataRef = CGDataProviderCreateDirect(data, size, &procs);
-    CGImageRef ref = CGImageCreate(w, h, 8, 32, w*4,
-                                   space,
-                                   kCGBitmapByteOrder32Little | kCGImageAlphaPremultipliedLast,
-                                   dataRef,
-                                   NULL,
-                                   false,
-                                   kCGRenderingIntentDefault);
-
-    CGColorSpaceRelease(space);
-    CGDataProviderRelease(dataRef);
-    
-    CGRect r = CGRectMake(0, 0, w, h);
-    CGContextDrawImage(cg, r, ref);
-    CGImageRelease(ref);
-}
-
-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){
-               fprintf(stderr, "Got error %d getting the context!\n", status);
-               return status;
-       }               
-                                               
-       // Get the bounding rectangle
-       HIViewGetBounds ((HIViewRef) userData, &bounds);
-       
-       // Flip the coordinates by translating and scaling. This produces a
-       // coordinate system that matches the Quartz default coordinate system
-       // with the origin in the lower-left corner with the y axis pointing up.
-       
-//     CGContextTranslateCTM (context, 0, bounds.size.height);
-//     CGContextScaleCTM (context, 1.0, -1.0);
-
-//     DoDraw(context, bounds);
-       TestDraw(context, bounds);
-       return status;
-   
-}
-
-static void MyGammaSliderProc( ControlHandle control, SInt16 part )
-{      
-       gGammaValue = GetControl32BitValue(control);
-       HIViewSetNeedsDisplay(gMyHIView, true);
-       HIViewRender(gMyHIView);   
-}
-
-
-// Handle command-process events at the application level
-static pascal OSStatus DoAppCommandProcess(EventHandlerCallRef nextHandler, EventRef theEvent, void* userData)
-{
-#pragma unused (nextHandler, userData)
-    HICommand  aCommand;
-    OSStatus   result = eventNotHandledErr;
-
-    GetEventParameter(theEvent, kEventParamDirectObject, typeHICommand, NULL, sizeof(HICommand), NULL, &aCommand);
-    
-    switch (aCommand.commandID)
-    {
-
-       case kHICommandPageSetup:
-           if(gPageFormat == NULL)
-               gPageFormat = CreateDefaultPageFormat();
-               
-           if(gPageFormat)
-               (void)DoPageSetup(gPageFormat);
-               
-           result = noErr;
-           break;
-
-       case kHICommandPrint:
-           if(gPageFormat == NULL)
-               gPageFormat = CreateDefaultPageFormat();
-               
-           if(gPageFormat)
-               (void)DoPrint(gPageFormat);
-
-           result = noErr;
-           break;
-
-       case kHICommandAbout:
-           DoAboutBox();
-           result = noErr; 
-           break;
-
-       default:
-           break;
-
-       case kHICommandQuit:
-               QuitApplicationEventLoop();
-               result = noErr;
-               break;
-    }
-    HiliteMenu(0);
-    return result;
-}
-
-static void DoAboutBox()
-{      
-    CFStringRef outString = NULL;
-    SInt16      alertItemHit = 0;
-    Str255      stringBuf;
-
-    outString =  CFCopyLocalizedString(kAboutBoxStringKey, NULL);
-    if (outString != NULL)
-    {
-               if (CFStringGetPascalString (outString, stringBuf, sizeof(stringBuf), GetApplicationTextEncoding()))
-               {
-                       StandardAlert(kAlertStopAlert, stringBuf, NULL, NULL, &alertItemHit);
-               }
-               CFRelease (outString);                             
-    }
-}
-
-// -----------------------------------------------------------------------
-static PMPageFormat CreateDefaultPageFormat(void)
-{
-    OSStatus err = noErr, tempErr;
-    PMPageFormat pageFormat = NULL;
-    PMPrintSession printSession;
-    err = PMCreateSession(&printSession);
-    if(!err){
-       err = PMCreatePageFormat(&pageFormat);  // we own a reference to this page format
-       if(err == noErr)
-           err = PMSessionDefaultPageFormat(printSession, pageFormat);
-
-       tempErr = PMRelease(printSession);
-       if(!err)err = tempErr;
-    }
-    if(err){
-       fprintf(stderr, "got an error = %d creating the default page format\n", err);
-    }
-    return pageFormat;
-}
-
-// -----------------------------------------------------------------
-static OSStatus DoPageSetup(PMPageFormat pageFormat)
-{
-    OSStatus           err = noErr;
-    PMPrintSession printSession;
-    err = PMCreateSession(&printSession);
-    if(!err){
-       Boolean accepted;
-       if(!err)        // validate the page format we're going to pass to the dialog code
-           err = PMSessionValidatePageFormat(printSession, pageFormat, kPMDontWantBoolean);
-       if(!err){
-           err = PMSessionPageSetupDialog(printSession, pageFormat, &accepted);
-       }
-       (void)PMRelease(printSession);
-    }
-    
-    if(err && err != kPMCancel)
-       fprintf(stderr, "Got an error %d in Page Setup\n", err);
-
-    return err;
-} // DoPageSetup
-
-// -------------------------------------------------------------------------------
-static OSStatus DoPrint(PMPageFormat pageFormat)
-{
-    OSStatus err = noErr;
-    UInt32 minPage = 1, maxPage = 1;
-    PMPrintSession printSession;
-    err = PMCreateSession(&printSession);
-    if(err == noErr){
-       // validate the page format we're going to use
-       err = PMSessionValidatePageFormat(printSession, 
-                           pageFormat,
-                           kPMDontWantBoolean);
-        if (err == noErr)
-        {
-           PMPrintSettings printSettings = NULL;
-            err = PMCreatePrintSettings(&printSettings);
-            if(err == noErr)
-                err = PMSessionDefaultPrintSettings(printSession, printSettings);
-
-            if (err == noErr)
-               err = PMSetPageRange(printSettings, minPage, maxPage);
-
-            if (err == noErr)
-            {
-                Boolean accepted;
-               err = PMSessionPrintDialog(printSession, printSettings, 
-                               pageFormat,
-                               &accepted);
-               if(accepted){
-                   err = MyDoPrintLoop(printSession, pageFormat, printSettings);
-               }
-            }
-           if(printSettings)
-               (void)PMRelease(printSettings);
-        }
-
-        (void)PMRelease(printSession);   // ignoring error since we already have one 
-    }
-    
-    if(err && err != kPMCancel)
-       fprintf(stderr, "Got an error %d in Print\n", err);
-    return err;
-}
-
-// --------------------------------------------------------------------------------------
-static OSStatus MyDoPrintLoop(PMPrintSession printSession, PMPageFormat pageFormat, PMPrintSettings printSettings)
-{
-    OSStatus err = noErr;
-    OSStatus tempErr = noErr;
-    UInt32 firstPage, lastPage, totalDocPages = 1;
-    
-    if(!err)
-       err = PMGetFirstPage(printSettings, &firstPage);
-       
-    if (!err)
-        err = PMGetLastPage(printSettings, &lastPage);
-
-    if(!err && lastPage > totalDocPages){
-        // don't draw more than the number of pages in our document
-        lastPage = totalDocPages;
-    }
-
-    if (!err)          // tell the printing system the number of pages we are going to print
-        err = PMSetLastPage(printSettings, lastPage, false);
-
-    if (!err)
-    {
-        err = PMSessionBeginCGDocument(printSession, printSettings, pageFormat);
-        if (!err){
-           UInt32 pageNumber = firstPage;
-           // need to check errors from our print loop and errors from the session for each
-           // time around our print loop before calling our BeginPageProc
-            while(pageNumber <= lastPage && err == noErr && PMSessionError(printSession) == noErr)
-            {
-                err = PMSessionBeginPage(printSession, pageFormat, NULL);
-                if (!err){
-                    CGContextRef printingContext = NULL;
-                    err = PMSessionGetCGGraphicsContext(printSession, &printingContext);
-                    if(!err){
-                       PMRect       pageRect;
-                       
-                       PMGetAdjustedPaperRect(pageFormat, &pageRect);
-                       DoDraw(printingContext, CGRectMake(pageRect.left, pageRect.top, pageRect.right - pageRect.left, pageRect.bottom - pageRect.top));
-                    }
-                    // we must call EndPage if BeginPage returned noErr
-                   tempErr = PMSessionEndPage(printSession);
-                        
-                   if(!err)err = tempErr;
-                }
-               pageNumber++;
-            }  // end while loop
-            
-            // we must call EndDocument if BeginDocument returned noErr
-           tempErr = PMSessionEndDocument(printSession);
-
-           if(!err)err = tempErr;
-           if(!err)
-               err = PMSessionError(printSession);
-        }
-    }
-    return err;
-}
-
-
-