1 /* 2 * Copyright (c) 2002 Anders Carlsson <andersca@gnu.org> 3 * Copyright (c) 2003-2004 Benedikt Meurer <benny@xfce.org> 4 * Copyright (c) 2003-2004 Olivier Fourdan <fourdan@xfce.org> 5 * Copyright (c) 2003-2006 Vincent Untz 6 * Copyright (c) 2007-2010 Nick Schermer <nick@xfce.org> 7 * 8 * This library is free software; you can redistribute it and/or modify it 9 * under the terms of the GNU General Public License as published by the Free 10 * Software Foundation; either version 2 of the License, or (at your option) 11 * any later version. 12 * 13 * This library is distributed in the hope that it will be useful, but WITHOUT 14 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 15 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 16 * more details. 17 * 18 * You should have received a copy of the GNU Lesser General Public 19 * License along with this library; if not, write to the Free Software 20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 21 */ 22 23 #ifndef __SYSTRAY_MANAGER_H__ 24 #define __SYSTRAY_MANAGER_H__ 25 26 #include <gtk/gtk.h> 27 28 typedef struct _SystrayManagerClass SystrayManagerClass; 29 typedef struct _SystrayManager SystrayManager; 30 typedef struct _SystrayMessage SystrayMessage; 31 32 #define XFCE_TYPE_SYSTRAY_MANAGER (systray_manager_get_type ()) 33 #define XFCE_SYSTRAY_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), XFCE_TYPE_SYSTRAY_MANAGER, SystrayManager)) 34 #define XFCE_SYSTRAY_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), XFCE_TYPE_SYSTRAY_MANAGER, SystrayManagerClass)) 35 #define XFCE_IS_SYSTRAY_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XFCE_TYPE_SYSTRAY_MANAGER)) 36 #define XFCE_IS_SYSTRAY_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), XFCE_TYPE_SYSTRAY_MANAGER)) 37 #define XFCE_SYSTRAY_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), XFCE_TYPE_SYSTRAY_MANAGER, SystrayManagerClass)) 38 #define XFCE_SYSTRAY_MANAGER_ERROR (systray_manager_error_quark()) 39 40 41 42 enum 43 { 44 XFCE_SYSTRAY_MANAGER_ERROR_SELECTION_FAILED 45 }; 46 47 48 49 GType systray_manager_get_type (void) G_GNUC_CONST; 50 51 void systray_manager_register_type (XfcePanelTypeModule *type_module); 52 53 GQuark systray_manager_error_quark (void); 54 55 SystrayManager *systray_manager_new (void) G_GNUC_MALLOC; 56 57 #if 0 58 gboolean systray_manager_check_running (GdkScreen *screen); 59 #endif 60 61 gboolean systray_manager_register (SystrayManager *manager, 62 GdkScreen *screen, 63 GError **error); 64 65 void systray_manager_unregister (SystrayManager *manager); 66 67 void systray_manager_set_colors (SystrayManager *manager, 68 GdkColor *fg, 69 GdkColor *error, 70 GdkColor *warning, 71 GdkColor *success); 72 73 void systray_manager_set_orientation (SystrayManager *manager, 74 GtkOrientation orientation); 75 76 77 #endif /* !__SYSTRAY_MANAGER_H__ */ 78