src/cairo-dock-icons.h

Aller à la documentation de ce fichier.
00001 
00002 #ifndef __CAIRO_DOCK_ICONS__
00003 #define  __CAIRO_DOCK_ICONS__
00004 
00005 #include <glib.h>
00006 
00007 #include "cairo-dock-struct.h"
00008 
00013 #define CAIRO_DOCK_IS_APPLI(icon) (icon != NULL && icon->iType == CAIRO_DOCK_APPLI)
00014 
00018 #define CAIRO_DOCK_IS_LAUNCHER(icon) (icon != NULL && icon->iType == CAIRO_DOCK_LAUNCHER)
00019 
00023 #define CAIRO_DOCK_IS_SEPARATOR(icon) (icon != NULL && icon->iType & 1)
00024 
00028 #define CAIRO_DOCK_IS_APPLET(icon) (icon != NULL && icon->iType  == CAIRO_DOCK_APPLET)
00029 
00034 #define CAIRO_DOCK_IS_NORMAL_LAUNCHER(icon) (CAIRO_DOCK_IS_LAUNCHER (icon) && icon->acDesktopFileName != NULL)
00035 
00039 #define CAIRO_DOCK_IS_URI_LAUNCHER(icon) (CAIRO_DOCK_IS_LAUNCHER (icon) && icon->cBaseURI != NULL)
00040 
00044 #define CAIRO_DOCK_IS_VALID_APPLI(icon) (CAIRO_DOCK_IS_APPLI (icon) && icon->Xid != 0)
00045 
00049 #define CAIRO_DOCK_IS_VALID_APPLET(icon) (CAIRO_DOCK_IS_APPLET (icon) && icon->pModule != NULL)
00050 
00055 void cairo_dock_free_icon (Icon *icon);
00063 int cairo_dock_compare_icons_order (Icon *icon1, Icon *icon2);
00069 GList *cairo_dock_sort_icons_by_order (GList *pIconList);
00075 GList *cairo_dock_sort_icons_by_name (GList *pIconList);
00076 
00083 Icon *cairo_dock_get_first_icon (GList *pIconList);
00089 Icon *cairo_dock_get_last_icon (GList *pIconList);
00095 Icon *cairo_dock_get_first_drawn_icon (CairoDock *pDock);
00101 Icon *cairo_dock_get_last_drawn_icon (CairoDock *pDock);
00108 Icon *cairo_dock_get_first_icon_of_type (GList *pIconList, CairoDockIconType iType);
00115 Icon *cairo_dock_get_last_icon_of_type (GList *pIconList, CairoDockIconType iType);
00121 Icon *cairo_dock_get_pointed_icon (GList *pIconList);
00127 Icon *cairo_dock_get_bouncing_icon (GList *pIconList);
00133 Icon *cairo_dock_get_removing_or_inserting_icon (GList *pIconList);
00139 Icon *cairo_dock_get_animated_icon (GList *pIconList);
00140 Icon *cairo_dock_get_removing_or_inserting_icon (GList *pIconList);
00146 Icon *cairo_dock_get_next_icon (GList *pIconList, Icon *pIcon);
00152 Icon *cairo_dock_get_previous_icon (GList *pIconList, Icon *pIcon);
00159 #define cairo_dock_get_next_element(ic, list) (ic->next == NULL ? list : ic->next)
00160 
00166 #define cairo_dock_get_previous_element(ic, list) (ic->prev == NULL ? g_list_last (list) : ic->prev)
00167 
00173 Icon *cairo_dock_get_icon_with_command (GList *pIconList, gchar *cCommand);
00180 Icon *cairo_dock_get_icon_with_base_uri (GList *pIconList, gchar *cBaseURI);
00187 Icon *cairo_dock_get_icon_with_subdock (GList *pIconList, CairoDock *pSubDock);
00194 Icon *cairo_dock_get_icon_with_module (GList *pIconList, CairoDockModule *pModule);
00201 Icon *cairo_dock_get_icon_with_class (GList *pIconList, gchar *cClass);
00202 
00203 #define cairo_dock_none_clicked(pIconList) (cairo_dock_get_bouncing_icon (pIconList) == NULL)
00204 #define cairo_dock_none_removed_or_inserted(pIconList) (cairo_dock_get_removing_or_inserting_icon (pIconList) == NULL)
00205 #define cairo_dock_none_animated(pIconList) (cairo_dock_get_animated_icon (pIconList) == NULL)
00206 
00207 #define cairo_dock_get_first_launcher(pIconList) cairo_dock_get_first_icon_of_type (pIconList, CAIRO_DOCK_LAUNCHER)
00208 #define cairo_dock_get_last_launcher(pIconList) cairo_dock_get_last_icon_of_type (pIconList, CAIRO_DOCK_LAUNCHER)
00209 #define cairo_dock_get_first_appli(pIconList) cairo_dock_get_first_icon_of_type (pIconList, CAIRO_DOCK_APPLI)
00210 #define cairo_dock_get_last_appli(pIconList) cairo_dock_get_last_icon_of_type (pIconList, CAIRO_DOCK_APPLI)
00211 
00212 
00213 void cairo_dock_swap_icons (CairoDock *pDock, Icon *icon1, Icon *icon2);
00214 void cairo_dock_move_icon_after_icon (CairoDock *pDock, Icon *icon1, Icon *icon2);
00215 
00222 void cairo_dock_detach_icon_from_dock (Icon *icon, CairoDock *pDock, gboolean bCheckUnusedSeparator);
00228 void cairo_dock_remove_one_icon_from_dock (CairoDock *pDock, Icon *icon);
00234 void cairo_dock_remove_icon_from_dock (CairoDock *pDock, Icon *icon);
00240 void cairo_dock_remove_icons_of_type (CairoDock *pDock, CairoDockIconType iType);
00245 #define cairo_dock_remove_all_applis(pDock) cairo_dock_remove_icons_of_type (pDock, CAIRO_DOCK_APPLI)
00246 
00250 #define cairo_dock_remove_all_applets(pDock) cairo_dock_remove_icons_of_type (pDock, CAIRO_DOCK_APPLET)
00251 
00255 void cairo_dock_remove_all_separators (CairoDock *pDock);
00256 
00261 void cairo_dock_insert_separator_between_launchers_and_applis (CairoDock *pDock);
00262 
00263 
00264 GList * cairo_dock_calculate_icons_positions_at_rest_linear (GList *pIconList, int iMinDockWidth, int iXOffset);
00265 
00266 Icon * cairo_dock_calculate_wave_with_position_linear (GList *pIconList, GList *pFirstDrawnElement, int x_abs, gdouble fMagnitude, int iMinDockWidth, int iWidth, int iHeight, double fAlign, double fLateralFactor);
00267 
00268 Icon *cairo_dock_apply_wave_effect (CairoDock *pDock);
00269 
00270 CairoDockMousePositionType cairo_dock_check_if_mouse_inside_linear (CairoDock *pDock);
00271 
00272 void cairo_dock_manage_mouse_position (CairoDock *pDock, CairoDockMousePositionType iMousePositionType);
00273 
00274 
00275 double cairo_dock_calculate_max_dock_width (CairoDock *pDock, GList *pFirstDrawnElement, int iFlatDockWidth, double fWidthConstraintFactor, double fExtraWidth);
00276 
00277 
00278 void cairo_dock_mark_icons_as_avoiding_mouse (CairoDock *pDock, CairoDockIconType iType, double fMargin);
00279 void cairo_dock_mark_avoiding_mouse_icons_linear (CairoDock *pDock);
00280 void cairo_dock_stop_marking_icons (CairoDock *pDock);
00281 
00287 void cairo_dock_update_icon_s_container_name (Icon *icon, const gchar *cNewParentDockName);
00288 
00289 #endif
00290 

Généré le Tue Dec 11 02:26:43 2007 pour Cairo-Dock par  doxygen 1.5.3