compositor-private.h

Go to the documentation of this file.
00001 /* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
00002 
00003 /*
00004  * Copyright (C) 2008 Iain Holmes
00005  *
00006  * This program is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU General Public License as
00008  * published by the Free Software Foundation; either version 2 of the
00009  * License, or (at your option) any later version.
00010  *
00011  * This program is distributed in the hope that it will be useful, but
00012  * WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014  * General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU General Public License
00017  * along with this program; if not, write to the Free Software
00018  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
00019  * 02111-1307, USA.
00020  */
00021 
00022 #ifndef META_COMPOSITOR_PRIVATE_H
00023 #define META_COMPOSITOR_PRIVATE_H
00024 
00025 #include "compositor.h"
00026 
00027 struct _MetaCompositor
00028 {
00029   void (* destroy) (MetaCompositor *compositor);
00030 
00031   void (*manage_screen) (MetaCompositor *compositor,
00032                          MetaScreen     *screen);
00033   void (*unmanage_screen) (MetaCompositor *compositor,
00034                            MetaScreen     *screen);
00035   void (*add_window) (MetaCompositor    *compositor,
00036                       MetaWindow        *window,
00037                       Window             xwindow,
00038                       XWindowAttributes *attrs);
00039   void (*remove_window) (MetaCompositor *compositor,
00040                          Window          xwindow);
00041   void (*set_updates) (MetaCompositor *compositor,
00042                        MetaWindow     *window,
00043                        gboolean        update);
00044   void (*process_event) (MetaCompositor *compositor,
00045                          XEvent         *event,
00046                          MetaWindow     *window);
00047   Pixmap (*get_window_pixmap) (MetaCompositor *compositor,
00048                                MetaWindow     *window);
00049   void (*set_active_window) (MetaCompositor *compositor,
00050                              MetaScreen     *screen,
00051                              MetaWindow     *window);
00052 };
00053 
00054 #endif

Generated on Sat Aug 23 22:04:16 2008 for metacity by  doxygen 1.5.5