effects.h

Go to the documentation of this file.
00001 /* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
00002 
00026 /* 
00027  * Copyright (C) 2001 Anders Carlsson, Havoc Pennington
00028  * 
00029  * This program is free software; you can redistribute it and/or
00030  * modify it under the terms of the GNU General Public License as
00031  * published by the Free Software Foundation; either version 2 of the
00032  * License, or (at your option) any later version.
00033  *
00034  * This program is distributed in the hope that it will be useful, but
00035  * WITHOUT ANY WARRANTY; without even the implied warranty of
00036  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00037  * General Public License for more details.
00038  * 
00039  * You should have received a copy of the GNU General Public License
00040  * along with this program; if not, write to the Free Software
00041  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
00042  * 02111-1307, USA.
00043  */
00044 
00045 #ifndef META_EFFECTS_H
00046 #define META_EFFECTS_H
00047 
00048 #include "util.h"
00049 #include "screen-private.h"
00050 
00051 typedef enum
00052 {
00053   META_EFFECT_MINIMIZE,
00054   META_EFFECT_UNMINIMIZE,
00055   META_EFFECT_FOCUS,
00056   META_EFFECT_CLOSE,
00057   META_NUM_EFFECTS
00058 } MetaEffectType;
00059 
00063 typedef void (* MetaEffectFinished) (gpointer    data);
00064 
00074 void        meta_effect_run_minimize     (MetaWindow         *window,
00075                                           MetaRectangle      *window_rect,
00076                                           MetaRectangle      *target,
00077                                           MetaEffectFinished  finished,
00078                                           gpointer            data);
00079 
00090 void        meta_effect_run_unminimize (MetaWindow         *window,
00091                                           MetaRectangle      *window_rect,
00092                                           MetaRectangle      *icon_rect,
00093                                           MetaEffectFinished  finished,
00094                                           gpointer            data);
00095 
00104 void        meta_effect_run_close        (MetaWindow         *window,
00105                                           MetaEffectFinished  finished,
00106                                           gpointer            data);
00107 
00116 void        meta_effect_run_focus        (MetaWindow         *window,
00117                                           MetaEffectFinished  finished,
00118                                           gpointer            data);
00119 
00132 void meta_effects_begin_wireframe  (MetaScreen          *screen,
00133                                     const MetaRectangle *rect,
00134                                     int                  width,
00135                                     int                  height);
00136 
00149 void meta_effects_update_wireframe (MetaScreen          *screen,
00150                                     const MetaRectangle *old_rect,
00151                                     int                  old_width,
00152                                     int                  old_height,
00153                                     const MetaRectangle *new_rect,
00154                                     int                  new_width,
00155                                     int                  new_height);
00156 
00165 void meta_effects_end_wireframe    (MetaScreen          *screen,
00166                                     const MetaRectangle *old_rect,
00167                                     int                  width,
00168                                     int                  height);
00169 
00170 #endif /* META_EFFECTS_H */

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