2 * This file is part of Live Wallpaper (livewp)
4 * Copyright (C) 2010 Vlad Vasiliev
5 * Copyright (C) 2010 Tanya Makova
8 * This software is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License
10 * as published by the Free Software Foundation; either version 2 of
11 * the License, or (at your option) any later version.
13 * This software is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this software; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
23 /*******************************************************************************/
24 #ifndef Animation_Wallpaper_PLUGIN_H
25 #define Animation_Wallpaper_PLUGIN_H
27 #include <glib-object.h>
28 #include "livewp-actor.h"
29 #include "livewp-scene.h"
34 #define Animation_Wallpaper_TYPE_HOME_PLUGIN (animation_wallpaper_plugin_get_type ())
36 #define Animation_Wallpaper_HOME_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
37 Animation_Wallpaper_TYPE_HOME_PLUGIN, AWallpaperPlugin))
39 #define Animation_Wallpaper_HOME_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), \
40 Animation_Wallpaper_TYPE_HOME_PLUGIN, AWallpaperPluginClass))
42 #define Animation_Wallpaper_IS_HOME_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
43 Animation_Wallpaper_TYPE_HOME_PLUGIN))
45 #define Animation_Wallpaper_IS_HOME_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), \
46 Animation_Wallpaper_TYPE_HOME_PLUGIN))
48 #define Animation_Wallpaper_HOME_PLUGIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), \
49 Animation_Wallpaper_TYPE_HOME_PLUGIN, AWallpaperPluginClass))
58 void (*func_change)(GtkWidget *, double);
59 gint (*func_time)(gint);
63 GType animation_wallpaper_plugin_get_type(void);
65 Animation_WallpaperPrivate* animation_wallpaper_plugin_new (void);
67 void lw_settings(gpointer user_data, gpointer data);
68 //void run_long_timeout(AWallpaperPlugin *desktop_plugin);
69 void get_sun_screen_pos(double alt, double azm, gint * x, gint * y);
70 void show_settings(GtkWidget *widget, Animation_WallpaperPrivate *priv);
71 void livewp_initialize_dbus(Animation_WallpaperPrivate *priv);
72 void livewp_deinitialize_dbus(Animation_WallpaperPrivate *priv);
73 gint current_active_view(void);
74 //gboolean long_timeout (AWallpaperPlugin *desktop_plugin);
75 void desktop_plugin_visible_notify (GObject *object, GParamSpec *spec, AWallpaperPlugin *desktop_plugin);
76 void send_dbus_signal (Animation_WallpaperPrivate *priv, const gchar *interface, const gchar *path, const gchar *member);
77 gboolean get_one_in_all_views_from_config(void);