Remove ancient trunk folder from svn repository
[synfig.git] / synfig-osx / trunk / launcher / quartz-server.c
diff --git a/synfig-osx/trunk/launcher/quartz-server.c b/synfig-osx/trunk/launcher/quartz-server.c
deleted file mode 100644 (file)
index 212dce8..0000000
+++ /dev/null
@@ -1,190 +0,0 @@
-//
-//  quartzServer.c
-//
-//  This class handles the interaction between CG and the X server thread
-//
-/*
- * Copyright (c) 2001 Andreas Monitzer. All Rights Reserved.
- * Copyright (c) 2002 Torrey T. Lyons. All Rights Reserved.
- * Copyright (c) 2002 Apple Software, Inc. All Rights Reserved.
- * Copyright (c) 2002 Apple Computer, Inc. All rights reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the
- * "Software"), to deal in the Software without restriction, including
- * without limitation the rights to use, copy, modify, merge, publish,
- * distribute, sublicense, and/or sell copies of the Software, and to
- * permit persons to whom the Software is furnished to do so, subject to
- * the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- * IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
- * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
- * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
- * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- *
- * Except as contained in this notice, the name(s) of the above copyright
- * holders shall not be used in advertising or otherwise to promote the
- * sale, use or other dealings in this Software without prior written
- * authorization.
- */
-/* $XFree86: xc/programs/Xserver/hw/darwin/quartz/XServer.m,v 1.3 2002/07/15 18:57:44 torrey Exp $ */
-
-#include "quartz.h"
-#include "Xplugin.h"
-#include "X11Controller.h"
-#define _APPLEDRI_SERVER_
-#include "appledri.h"
-#include "dri-surface.h"
-#include "opaque.h"
-#include "globals.h"
-#include <fcntl.h>
-#include <stdarg.h>
-#include <unistd.h>
-
-char **envpGlobal;      // argcGlobal and argvGlobal
-                        // are from dix/globals.c
-
-void
-QuartzMessageMainThread (int type, int argc, ...)
-{
-    xEvent xe;
-    INT32 *argv;
-    int i, max_args;
-    va_list args;
-
-    memset (&xe, 0, sizeof (xe));
-    xe.u.u.type = ClientMessage;
-    xe.u.clientMessage.u.l.type = type;
-
-    argv = &xe.u.clientMessage.u.l.longs0;
-    max_args = 4;
-
-    if (argc > 0 && argc <= max_args)
-    {
-       va_start (args, argc);
-       for (i = 0; i < argc; i++)
-           argv[i] = (int) va_arg (args, int);
-       va_end (args);
-    }
-
-    DarwinEnqueueEvent (&xe);
-}
-
-static void
-event_handler (unsigned int type, const void *arg,
-              unsigned int arg_size, void *data)
-{
-    switch (type)
-    {
-    case XP_EVENT_DISPLAY_CHANGED:
-       QuartzMessageMainThread (kXquartzDisplayChanged, 0);
-       break;
-
-    case XP_EVENT_WINDOW_STATE_CHANGED:
-       if (arg_size >= sizeof (xp_window_state_event))
-       {
-           const xp_window_state_event *ws_arg = arg;
-           QuartzMessageMainThread (kXquartzWindowState, 2,
-                                    ws_arg->id, ws_arg->state);
-       }
-       break;
-
-    case XP_EVENT_WINDOW_MOVED:
-       if (arg_size == sizeof (xp_window_id))
-       {
-           xp_window_id id = * (xp_window_id *) arg;
-
-           QuartzMessageMainThread (kXquartzWindowMoved, 1, id);
-       }
-       break;
-
-    case XP_EVENT_SURFACE_DESTROYED:
-    case XP_EVENT_SURFACE_CHANGED:
-       if (arg_size == sizeof (xp_surface_id))
-       {
-           int kind;
-
-           if (type == XP_EVENT_SURFACE_DESTROYED)
-               kind = AppleDRISurfaceNotifyDestroyed;
-           else
-               kind = AppleDRISurfaceNotifyChanged;
-
-           DRISurfaceNotify (*(xp_surface_id *) arg, kind);
-       }
-       break;
-    }
-}
-
-static void
-server_thread (void *arg)
-{
-    extern int main (int argc, char **argv, char **envp);
-
-    /* Xinerama defaults to enabled */
-    noPanoramiXExtension = FALSE;
-
-    if (xp_init (XP_BACKGROUND_EVENTS | quartzXpluginOptions) != Success)
-    {
-       fprintf (stderr, "can't initialize window system\n");
-       exit (1);
-    }
-
-    xp_select_events (XP_EVENT_DISPLAY_CHANGED
-                     | XP_EVENT_WINDOW_STATE_CHANGED
-                     | XP_EVENT_WINDOW_MOVED
-                     | XP_EVENT_SURFACE_CHANGED
-                     | XP_EVENT_SURFACE_DESTROYED,
-                     event_handler, NULL);
-
-    exit (main (argcGlobal, argvGlobal, envpGlobal));
-}
-
-/*
- * DarwinHandleGUI
- *  This function is called first from main(). We use it to connect to
- *  the cg window server and spawn the the thread that will listen for
- *  cg events
- */
-void DarwinHandleGUI(
-    int         argc,
-    char        *argv[],
-    char        *envp[] )
-{
-    static Bool here_before;
-
-    extern void _InitHLTB (void);
-
-    if (here_before)
-       return;
-
-    here_before = TRUE;
-
-    DarwinInputPreInit ();
-
-    // Store command line arguments to pass back to main()
-    argcGlobal = argc;
-    argvGlobal = argv;
-    envpGlobal = envp;
-
-    /* Initially I ran the X server on the main thread, and received
-       events on the second thread. But now we may be using Carbon,
-       that needs to run on the main thread. (Otherwise, when it's
-       prebound, it will initialize itself on the wrong thread)
-
-       grr.. but doing that means that if the X thread gets scheduled
-       before the main thread when we're _not_ prebound, things fail,
-       so initialize by hand. */
-
-    _InitHLTB ();
-
-    X11ControllerMain (argc, argv, server_thread, NULL);
-
-    /* not reached */
-    exit (1);
-}