hn-wm-watched-window.h

00001 /* -*- mode:C; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
00002 
00003 /*
00004  * This file is part of maemo-af-desktop
00005  *
00006  * Copyright (C) 2005 Nokia Corporation.
00007  *
00008  * Contact: Karoliina Salminen <karoliina.t.salminen@nokia.com>
00009  *
00010  * This library is free software; you can redistribute it and/or
00011  * modify it under the terms of the GNU Lesser General Public License
00012  * as published by the Free Software Foundation; either version 2.1 of
00013  * the License, or (at your option) any later version.
00014  *
00015  * This library is distributed in the hope that it will be useful, but
00016  * WITHOUT ANY WARRANTY; without even the implied warranty of
00017  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00018  * Lesser General Public License for more details.
00019  *
00020  * You should have received a copy of the GNU Lesser General Public
00021  * License along with this library; if not, write to the Free Software
00022  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
00023  * 02110-1301 USA
00024  *
00025  */
00026 
00031 #ifndef HAVE_HN_WM_WATCHED_WINDOW_H
00032 #define HAVE_HN_WM_WATCHED_WINDOW_H
00033 
00034 #include "hn-wm.h"
00035 #include "hn-wm-util.h"
00036 #include "hn-wm-watchable-app.h"
00037 
00038 /* For watched_window_sync(), should go in enum */
00039 
00040 #define HN_WM_SYNC_NAME                (1<<1)
00041 #define HN_WM_SYNC_BIN_NAME            (1<<2)
00042 #define HN_WM_SYNC_WMHINTS             (1<<3)
00043 #define HN_WM_SYNC_TRANSIANT           (1<<4)
00044 #define HN_WM_SYNC_HILDON_APP_KILLABLE (1<<5)
00045 #define HN_WM_SYNC_WM_STATE            (1<<6)
00046 #define HN_WM_SYNC_HILDON_VIEW_LIST    (1<<7)
00047 #define HN_WM_SYNC_HILDON_VIEW_ACTIVE  (1<<8)
00048 #define HN_WM_SYNC_ICON                (1<<9)
00049 #define HN_WM_SYNC_USER_TIME           (1<<10)
00050 #define HN_WM_SYNC_WINDOW_ROLE         (1<<11)
00051 #define HN_WM_SYNC_ALL                 (G_MAXULONG)
00052 
00053 HNWMWatchedWindow*
00054 hn_wm_watched_window_new (Window            xid,
00055               HNWMWatchableApp *app);
00056 gboolean
00057 hn_wm_watched_window_props_sync (HNWMWatchedWindow *win, gulong props);
00058 
00059 HNWMWatchableApp*
00060 hn_wm_watched_window_get_app (HNWMWatchedWindow *win);
00061 
00062 Window
00063 hn_wm_watched_window_get_x_win (HNWMWatchedWindow *win);
00064 
00065 gboolean
00066 hn_wm_watched_window_is_urgent (HNWMWatchedWindow *win);
00067 
00068 gboolean
00069 hn_wm_watched_window_wants_no_initial_focus (HNWMWatchedWindow *win);
00070 
00071 const gchar*
00072 hn_wm_watched_window_get_name (HNWMWatchedWindow *win);
00073 
00074 const gchar*
00075 hn_wm_watched_window_get_sub_name (HNWMWatchedWindow *win);
00076 
00077 void
00078 hn_wm_watched_window_set_name (HNWMWatchedWindow *win,
00079                    gchar             *name);
00080 
00081 const gchar*
00082 hn_wm_watched_window_get_hibernation_key (HNWMWatchedWindow *win);
00083 
00084 
00085 GtkWidget*
00086 hn_wm_watched_window_get_menu (HNWMWatchedWindow *win);
00087 
00088 void
00089 hn_wm_watched_window_set_menu (HNWMWatchedWindow *win,
00090                    GtkWidget         *menu);
00091 
00092 /* Note, returns a copy of pixbuf will need freeing */
00093 GdkPixbuf*
00094 hn_wm_watched_window_get_custom_icon (HNWMWatchedWindow *win);
00095 
00096 GList*
00097 hn_wm_watched_window_get_views (HNWMWatchedWindow *win);
00098 
00099 void
00100 hn_wm_watched_window_add_view (HNWMWatchedWindow     *win,
00101                    HNWMWatchedWindowView *view);
00102 
00103 void
00104 hn_wm_watched_window_remove_view (HNWMWatchedWindow     *win,
00105                   HNWMWatchedWindowView *view);
00106 void
00107 hn_wm_watched_window_set_active_view (HNWMWatchedWindow     *win,
00108                       HNWMWatchedWindowView *view);
00109 
00110 HNWMWatchedWindowView*
00111 hn_wm_watched_window_get_active_view (HNWMWatchedWindow     *win);
00112 
00113 gboolean
00114 hn_wm_watched_window_attempt_signal_kill (HNWMWatchedWindow *win, int sig);
00115 
00116 gboolean
00117 hn_wm_watched_window_is_hibernating (HNWMWatchedWindow *win);
00118 
00119 void
00120 hn_wm_watched_window_awake (HNWMWatchedWindow *win);
00121 
00122 void
00123 hn_wm_watched_window_destroy (HNWMWatchedWindow *win);
00124 
00125 
00126 gboolean hn_wm_watched_window_hibernate_func(gpointer key,
00127                                              gpointer value,
00128                                              gpointer user_data);
00129 
00130 void hn_wm_ping_timeout( HNWMWatchedWindow *win );
00131 
00132 void hn_wm_ping_timeout_cancel( HNWMWatchedWindow *win );
00133 
00134 
00135 #endif

Generated on Fri Jun 9 16:23:08 2006 for maemo-af-desktop-documentation by  doxygen 1.4.6