2
#ifndef __CAIRO_DOCK_CONTAINER__
3
#define __CAIRO_DOCK_CONTAINER__
7
#include "cairo-dock-struct.h"
13
/** Cree une fenetre GTK adaptee a un CairoContainer (notamment transparente).
14
*@return la fenetre GTK nouvellement cree.
16
GtkWidget *cairo_dock_create_container_window (void);
18
GtkWidget *cairo_dock_create_container_window_no_opengl (void);
20
/** Applique la colormap de l'ecran a une fenetre GTK, lui ajoutant la transparence.
23
void cairo_dock_set_colormap_for_window (GtkWidget *pWidget);
24
/** Applique la colormap de l'ecran a un container, lui ajoutant la transparence, et active Glitz si possible.
25
* @param pContainer le container.
27
void cairo_dock_set_colormap (CairoContainer *pContainer);
32
/** Efface et programme le redessin d'une seule icone. Un ExposeEvent sera genere, qui appellera la fonction de trace optimise de la vue courante si cette derniere en possede une. Le trace ne se fait donc pas immediatement, mais est mis en attente et effectue lorsqu'on revient a la main loop.
33
*@param icon l'icone a retracer.
34
*@param pContainer le container de l'icone.
36
void cairo_dock_redraw_icon (Icon *icon, CairoContainer *pContainer);
37
#define cairo_dock_redraw_my_icon cairo_dock_redraw_icon
38
/** Efface et programme le redessin complet d'un container.
39
*@param pContainer le container a redessiner.
41
void cairo_dock_redraw_container (CairoContainer *pContainer);
42
/** Efface et programme le redessin d'une partie d'un container.
43
*@param pContainer le container a redessiner.
44
*@param pArea zone a redessiner.
46
void cairo_dock_redraw_container_area (CairoContainer *pContainer, GdkRectangle *pArea);
49
/** Cherche le container contenant l'icone donnee (dock ou desklet dans le cas d'une applet).
50
* @param icon l'icone.
51
* @return le container contenant cette icone, ou NULL si l'icone est un fantome.
53
CairoContainer *cairo_dock_search_container_from_icon (Icon *icon);
56
void cairo_dock_show_hide_container (CairoContainer *pContainer);
59
/** Autorise un widget a accepter les glisse-deposes.
60
* @param pWidget un widget.
61
* @param pCallBack la fonction qui sera appelee lors d'une reception de donnee.
62
* @param data donnees passees en entree de la callback.
64
void cairo_dock_allow_widget_to_receive_data (GtkWidget *pWidget, GCallback pCallBack, gpointer data);
66
/** Dis si une chaine est une addresse (file://xxx, http://xxx, ftp://xxx, etc).
67
* @param cString une chaine de caracteres.
69
gboolean cairo_dock_string_is_adress (const gchar *cString);
71
/** Notifie tout le monde qu'un drop vient d'avoir lieu.
72
* @param cReceivedData les donnees recues.
73
* @param pPointedIcon l'icone pointee lors du drop
74
* @param fOrder l'ordre, egal a l'ordre de l'icone si on a droppe dessus, ou LAST_ORDER si on a droppe entre 2 icones.
75
* @param pContainer le container de l'icone
77
void cairo_dock_notify_drop_data (gchar *cReceivedData, Icon *pPointedIcon, double fOrder, CairoContainer *pContainer);
80
/** Retourne le zoom max des icones contenues dans un conteneur donne.
81
* @param pContainer le container.
82
* @return le facteur d'echelle max.
84
#define cairo_dock_get_max_scale(pContainer) (CAIRO_DOCK_IS_DOCK (pContainer) ? (1 + myIcons.fAmplitude) : 1)