Main Page | Namespace List | Data Structures | Directories | File List | Namespace Members | Data Fields | Globals

zoom-region.h

Go to the documentation of this file.
00001 /*
00002  * AT-SPI - Assistive Technology Service Provider Interface
00003  * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
00004  *
00005  * Copyright 2001 Sun Microsystems Inc.
00006  *
00007  * This library is free software; you can redistribute it and/or
00008  * modify it under the terms of the GNU Library General Public
00009  * License as published by the Free Software Foundation; either
00010  * version 2 of the License, or (at your option) any later version.
00011  *
00012  * This library is distributed in the hope that it will be useful,
00013  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00014  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00015  * Library General Public License for more details.
00016  *
00017  * You should have received a copy of the GNU Library General Public
00018  * License along with this library; if not, write to the
00019  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
00020  * Boston, MA 02111-1307, USA.
00021  */
00022 
00023 #ifndef ZOOM_REGION_H_
00024 #define ZOOM_REGION_H_
00025 
00026 
00027 #ifdef __cplusplus
00028 extern "C" {
00029 #endif /* __cplusplus */
00030 
00031 #include <bonobo/bonobo-object.h>
00032 #include "GNOME_Magnifier.h"
00033 
00034 #define ZOOM_REGION_TYPE         (zoom_region_get_type ())
00035 #define ZOOM_REGION(o)           (G_TYPE_CHECK_INSTANCE_CAST ((o), ZOOM_REGION_TYPE, ZoomRegion))
00036 #define ZOOM_REGION_CLASS(k)     (G_TYPE_CHECK_CLASS_CAST((k), ZOOM_REGION_TYPE, ZoomRegionClass))
00037 #define IS_ZOOM_REGION(o)       (G_TYPE_CHECK__INSTANCE_TYPE ((o), ZOOM_REGION_TYPE))
00038 #define IS_ZOOM_REGION_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), ZOOM_REGION_TYPE))
00039 
00040 typedef GList * (*CoalesceFunc)(GList *, int);
00041 
00042 typedef struct _ZoomRegionPrivate ZoomRegionPrivate;
00043 
00044 typedef struct {
00045         BonoboObject parent;
00046         BonoboPropertyBag *properties;
00047         gboolean invert;
00048         gboolean is_managed;
00049         gboolean cache_source;
00050         gchar *smoothing;
00051         gfloat contrast;
00052         gfloat xscale;
00053         gfloat yscale;
00054         gint border_size;
00055         guint32 border_color; /* A-RGB, 8 bits each, MSB==alpha */
00056         gint x_align_policy;  /* TODO: enums here */
00057         gint y_align_policy;
00058         GNOME_Magnifier_ZoomRegion_ScrollingPolicy smooth_scroll_policy;
00059         /* bounds of viewport, in target magnifier window coords */
00060         GNOME_Magnifier_RectBounds roi;
00061         GNOME_Magnifier_RectBounds viewport; 
00062         ZoomRegionPrivate *priv;
00063         CoalesceFunc coalesce_func;
00064         gint timing_iterations;
00065         gboolean timing_output;
00066         gint timing_pan_rate;
00067         gboolean exit_magnifier;
00068 #ifdef ZOOM_REGION_DEBUG
00069         gboolean alive;
00070 #endif
00071 } ZoomRegion;
00072 
00073 typedef struct {
00074         BonoboObjectClass parent_class;
00075         POA_GNOME_Magnifier_ZoomRegion__epv epv;
00076 } ZoomRegionClass;
00077 
00078 GType     zoom_region_get_type (void);
00079 ZoomRegion *zoom_region_new     (void);
00080 
00081 #ifdef __cplusplus
00082 }
00083 #endif /* __cplusplus */
00084 
00085 #endif /* ZOOM_REGION_H_ */

Generated on Wed Oct 26 12:55:29 2005 for gnome-mag by  doxygen 1.4.3